记一次修改fstab挂载参数

前几天,在与一名大佬的交流中,我说我打算把Manjaro装到U盘里,大佬建议我打开zlib压缩,可以显著提升性能。“大多数GUI安装向导都没法自定义挂载参数,那在安装后再修改fstab会有效果吗?”我如是问道。大佬告诉我“那样只对后续增加的新文件有效”,并反手甩给我了一条命令。

sudo btrfs filesystem defragment -r -v -czstd /

我买的CZ880还在路上,我打算在虚拟机里先预先实践一下。我照着平常的步骤,在虚拟机里安装了Manjaro KDE,安装好之后打开终端执行了大佬给的命令。经过了漫长的两分钟,执行完成了。我给Manjaro分配了20GB的虚拟磁盘,一看剩余空间,15.x GiB,nice。右键/usr查看属性,有6.x GiB,说明透明压缩是实际有效的。

我打算整个大文件测试一下压缩,于是我在修改了fstab,重启了之后,随便口胡了一段命令。

yes sb > ~/sb.txt

多么优雅的指令。我等到sb.txt大约有5GiB大小后Curl+C终止了命令。一看剩余空间,竟然只有10.x GiB了,难道我的操作有问题?我把一个16GB,MINISO的U盘接入虚拟机,格式化成btrfs,用compress参数挂载,将sb.txt复制入U盘。这U盘速度不快,日常读写只有10MiB/s左右。但是复制sb.txt的速度极快,半分钟后就复制完了,我终于体会到了BTRFS的魅力所在。

经过我长达5分钟的研究,我发现我是把compress参数写到swap分区上去了。我在两个BTRFS子卷后分别加上了ssd和compress参数,透明压缩终于可以用了。我把sb.txt从复制到/文档,虚拟机内显示的速度是100余MiB/s,实体机上任务管理器显示的速度是10余MiB/s,大成功。

以下是我改的fstab,供参考,坐等CZ880到货。

UUID=71f9b324-d57c-4d47-a7d6-daf8b3d00bcb / btrfs subvol=@,defaults,noatime,space_cache,ssd,compress=zlib 0 1
UUID=71f9b324-d57c-4d47-a7d6-daf8b3d00bcb /home btrfs subvol=@home,defaults,noatime,space_cache,ssd,compress=zlib 0 2
UUID=1032ae28-fbfc-431f-9c9e-dc36e1b55f5f swap swap defaults,noatime 0 2

以上。

posted @ 2020-04-18 22:37  徐艺扬  阅读(1177)  评论(0编辑  收藏  举报