usr目录下都是一些小的文件,因此当时du -ms /usr 的时候就可以看到花的时间非常得长,我们可以把usr目录压缩成一个squashfs只读文件系统,可以大大降低在usr目录下频繁读取小文件时耗的时间
pm@debian:~$ time du -ms /usr
3231 /usr
real 0m38.376s
user 0m0.124s
sys 0m0.892
这个是我du一下usr目录花的时间,当把/usr目录换成压缩的squashfs的时候大概只需要1秒多。具体的操作可以参考这里。
mksquashfs /usr /path/readusr 这样就可以压缩好usr目录了。然后修改一下fstab
/path/readusr /usr squashfs ro,defaults 0 0
mount -a就可以直接挂载上了,需要说明的是这个时候/usr分区不能写入的,即系统不能升级等,只有特定的场景才能用上。