几种压缩算法对全0数据的压缩效率比较

昨天从京东买了一支USB 3.0的U盘,Sandisk CZ48 32G。U盘上预装了闪迪保险箱™软件。新买的U盘总要测试一下,那就用dd命令做读取测试,同时用压缩工具做文件备份吧!我用的第一个压缩工具是bzip2,发现平均吞吐率只有53MB/s,跟U盘标称的100MB/s相差很远,估计瓶颈在压缩算法。于是,我用gzip再做了一次压缩备份,这次平均吞吐率达到了76.3MB/秒。最后用的xz的吞吐率就很差了,只有12.1MB/s,而且生成的压缩文件竟然反而比用bzip2压缩的大28%左右。
Continue reading 几种压缩算法对全0数据的压缩效率比较

扩大VirtualBox虚拟硬盘

重要提示:由于调整虚拟硬盘大小牵涉到修改分区结构,建议在关闭虚拟机之前先备份好虚拟机里的重要文件。

首先,必须先关闭须调整虚拟硬盘大小的VirtualBox虚拟机。

然后,用VBoxManage modifyhd命令,修改虚拟硬盘vdi/vhd文件里的虚拟硬盘的大小。

> cd "\Program Files\Oracle\VirtualBox"
> VBoxManage modifyhd \path\to\file.vdi --resize <newsize>

注意:虚拟硬盘只能扩大,不能缩小。

最后,从一个系统拯救光盘镜像,如我个人经常使用的SystemRescueCD,启动虚拟机。光盘镜像启动完成后,用类似GParted的分区管理软件无损地调整虚拟硬盘的分区结构。

KVM系统的网络管理

KVM虚拟机的网卡有两种方式:桥接和NAT转发。在桥接方式下,虚拟机的虚拟网卡和主机网卡组成虚拟交换机(bridging),桥接网卡配置外部IP地址;外部网络可直接访问到虚拟机。在NAT转发方式下,主机创建一个虚拟桥接网卡专供采用NAT方式的虚拟机使用,该桥接网卡配置内部网地址,通过主机netfilter网络地址翻译(NAT),跟外部网络连通,就像一般家庭和公司内部网通过NAT路由器上网一样。
Continue reading KVM系统的网络管理

在nginx日志中记录SSL/TLS协议信息

nginx预定义了"combined"日志格式:

log_format combined '$remote_addr - $remote_user [$time_local] '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent"';

如果想让nginx记录SSL/TLS协议信息,可在nginx配置文件nginx.conf的http{}区块中定义以下日志格式:

log_format combined_ssl '$remote_addr - $remote_user [$time_local] '
                        '$ssl_protocol/$ssl_cipher '
                        '"$request" $status $body_bytes_sent '
                        '"$http_referer" "$http_user_agent"';

然后,在需要记录SSL/TLS协议信息的HTTPS服务器配置区块中指定使用combined_ssl日志格式就行了。

server {
        listen 443;

        ssl on;
        ssl_certificate cert.pem;
        ssl_certificate_key key.pem;

        access_log /var/log/nginx/access.log combined_ssl;
        ...
}

CentOS 7系统引导程序Grub2的配置

CentOS 7的系统引导程序已由较老版本一直采用的Grub升级到Grub2。Grub2增加了许多功能,配置方法也有很大变化。

在BIOS启动的机器上,Grub2直接读取的配置文件是/boot/grub2/grub.cfg。这个文件由grub2-mkconfig命令生成,不建议直接修改。grub2-mkconfig根据配置文件/etc/default/grub和模板目录/etc/grub.d生成/boot/grub2/grub.cfg。

对于多系统启动的电脑,如果你希望Grub2能缺省启动上一次启动的操作系统,并且给你留稍微长一点的时间选择操作系统,可以在/etc/default/grub中修改或增加以下几个参数:

GRUB_TIMEOUT=10
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

然后,以root用户身份执行以下命令:

# grub2-mkconfig -o /boot/grub2/grub.cfg

详见System Administrator's Guide.

在国内打开WordPress网页慢的解决方法

刚安装好WordPress后,如果你在国内,你可能就会发现打开页面速度很慢。浏览器上表示页面正在加载的图标一直在转动,久久停不下来。这是由于从国内的Internet访问不到WordPress调用的Google字体资源和Gravatar.com上的头像图片,导致浏览器连接超时造成的。安装以下两个插件可以使打开WordPress页面的速度恢复正常:

  1. Remove Google Fonts References
  2. WP User Avatar

Remove Google Fonts References无须配置,安装后启用就可以了。WP User Avatar则需要在它的设置页面勾选“Disable Gravatar and use only local avatars”,然后保存设置更改。