发布时间:2012-12-10 15:45:54
今天成功尝试了在线给虚拟机增加额外的磁盘 以前也试验过 但是每次都失败了 当时还以为是qemu或者libvirtd kvm版本最够高才支持 但是升级到最新版本后还是不能现在拔插磁盘 今天无意间发现了一篇文章 这篇文章一直都保存在我的evernote上 但是没有仔细去看 算是巧合吧要让虚拟机在线识别到先增加的磁盘 必须加载acpiphp这个模块 在kvm的官方网站上有这样一篇文章 关于hot plug pci设备的 为了避免之后虚拟机重启后还得在重新加载这个模块 可以设置成开机自动load这个模块 在/etc/sysconfig/modules/ 目录下新增加一个文件 起一个合适的名字 加入mo......【阅读全文】
发布时间:2012-12-27 12:26:30
git bare/development repogit仓库根据角色来分 可以划分为两类 bare 和 development bare仓库没有working directory 可以通过git init --bare来建立bare仓库 bare仓库的名字通常情况下是xxx.git 下图是bare仓库的目录结构 这个仓库目测和我们平时使用的working directory目录下的.git目录类似 可以简单把bare仓库看成是黑盒 里面存的就是git的一些元数据 从bare仓库pull 或者向它push我们的commits development仓......【阅读全文】
发布时间:2012-12-25 18:04:06
同事的一个项目做build 做完后发现working dir里 原先的文件全没了 生成一堆为tar包准备的文件 目录等等 杂七杂八的玩意儿 在没有了解到git reset 还有checkout之前 我都是直接把working dir掉 然后重新clone一个出来 呵呵 现在想想还是蛮无聊的 git reset可以让repo, working dir重置为一个特定的 已知的状态 大多数情况下是想要重置到之前的某个commit的点上 当然也可以用revert什么的 但是reve......【阅读全文】
发布时间:2012-12-20 23:59:00
git merge操作的时候免不了会遇到conflict的状况 找出什么地方出现conflict很简单 git给我们很多的提示 查看conflict的文件 git加入的提示和cvs或者其它的版本控制工具类似 但是git在处理这些conflict的时候给我们提供更多的提示 我们可以利用多种方法来定位conflict的来源 对比不同branch之间的不同等等首先,找到包含conflict的文件 一般的命令包括git diff git statusgit ls-files -u (这个命令的结果比较奇葩)找到文件后 cat一下 就可以找到conflict具体的地方找到了conflict的......【阅读全文】
发布时间:2012-12-20 12:22:41
在做rpm的时候 突然出现了一个错误 很奇怪的错误 line 1: $'\r': command not found 按照提示查看了temp文件 发现这个command其实是一个MS的换行符 我简直要晕倒 在vim下set list查看换行符是$ 没啥问题 但就是一直过不去 明明不是^M啊 怎么会出现这种问题 继续排查吧 用了file命令查看了一下 是一个ascii文件 换行符却是CRLF 总算找到原因了 之后dos2unix把文件转换一下 之后rpmbuild很顺利......【阅读全文】