svnserve 是一个轻量级的服务, 使用自定义的协议通过TCP/IP与客户端通讯。
客户端通过由 svn:// 或者 svn+ssh:// 开始的URL访问svnserve服务器。
继续阅读 »
Subversion svnserve服务启动与配置
钻石继承与虚继承
首先,何为钻石继承,顾名思义,在类的继承过程中,继承结构是一个类似菱形(钻石)的结构就属于钻石继承,如下:
这是一个最简单的钻石继承。实际上,在复杂的继承表中,只要子类按不同的继承路径回溯到基类有菱形结构,均属钻石继承。下面先看一个例子,钻石继承在C++程序设计中带来的问题。
继续阅读 »
Linux抓包和分析
Linux抓包和分析
实践中,通常在 Linux 里用tcpdump命令抓包,然后在Windows 里用wireshark软件分析包。
较通用的tcpdump命令:tcpdump -i eth0 -s 0 -w package.cap
注[对eth0进行完整数据包抓取,数据包输入保存到当前目录package.cap中,因为没有-c参数限制,须按Ctrl+C停止抓包]
继续阅读 »
虚拟机VMWare及VirtualBox虚拟硬盘文件的压缩
在创建虚拟机时,如果选择了动态增长的方式,那么该虚拟机文件其实是“只增不减”,比如你COPY了一个5G的文件进去,那么即使将此文件删除,此虚拟机文件依然不会减小。好在VMware Tools可以在虚拟机中执行Shrink,从而减小其文件大小。
a,进入linux系统,终端下输入:
b,sudo dd if=/dev/zero of=/0bits bs=20971520 # bs=20m
c,sudo rm /0bits
d,然后关闭虚拟机;
e,在windows环境下打开cmd,输入:
f,cd “C:\Program Files\VMware\VMware Workstation” //进入到虚拟机的安装目录
g,vmware-vdiskmanager -k path\to\your\VirtualDisk.vmdkh,//虚拟硬盘压缩完成。
===================================================================
虚拟机使用久了就会发现虚拟硬盘越来越大,但是进入虚拟机里的系统用命令看了下,实际占用的空间远没有虚拟硬盘大小那么大,这个让人很不爽,而且在分享虚拟机镜像的时候也很不方便。VirtualBox似乎没有提供图形界面的方式可以让我们来压缩虚拟硬盘大小,但是可以通过命令行来实现。经过实际测试,我的一个30多G的虚拟硬盘可以压缩到13G大小,可见效果还是非常显著的,这个可以压缩的空间取决于你虚拟机内真实的空间占用大小。
VirtualBox同时支持自己的虚拟硬盘格式VDI和Vmware的VMDK格式,两种格式的压缩略有不同。
1. 碎片整理
第一步要做的是碎片整理,打开虚拟机,执行下面的命令:
Linux系统:
1 2 |
sudo dd if=/dev/zero of=/EMPTY bs=1M sudo rm -f /EMPTY |
Windows系统需要下载Sysinternals Suite并执行:
1 |
sdelete –z |
2. 压缩磁盘
关闭虚拟机,现在可以开始压缩虚拟硬盘了
如果你的虚拟硬盘是VirtualBox自己的VDI格式,找到你的虚拟硬盘文件,执行命令:
1 |
VBoxManage modifyhd mydisk.vdi --compact |
如果你的虚拟硬盘是Vmware的VMDK格式,那就要麻烦点,因为VirtualBox不支持直接压缩VMDK格式,但是可以变通下:先转换成VDI并压缩,再转回VMDK。执行命令:
1 2 3 |
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi VBoxManage modifyhd cloned.vdi --compact VBoxManage clonehd "cloned.vdi" "compressed.vmdk" --format vmdk |
事实上,执行命令的过程中可以发现:在从VMDK转换到VDI的过程中似乎已经做了压缩,文件大小已经减少了很多,第二条命令反而没见到文件大小有什么变化,所以这里第二条命令应该可以省略了。
CentOS安装SVN服务器并配置HTTPS连接
在CentOS6.3 64位机器上配置SVN服务器,并设置只允许HTTPS连接,可以配置多个repos源,每个源都拥有自己的组和成员,用于权限控制。
继续阅读 »
codeblocks 使用汇总
享受Code::Blocks编辑快感的几个关键
说明:
1)以下需要设置的地方均在Settings->Editor…弹出的对话框中。
2)不少命令都可针对当前行或选中的代码块,下文简称当前行或选中块。
继续阅读 »
近期评论