Tent
deepin
2026-03-17 11:01 建议也改一下/boot/efi/EFI/deepin/grub.cfg,把里面的“/boot/grub.cfg”改成“/@/boot/grub.cfg“。
——这样操作后,根下面那些老的系统文件就都可以删除了。
另外分享一下我的fstab,以及一些说明:
1、/Tent下的home和root是两个子卷,可以用于做btrfs快照。
2、/Tent所在的分区的label设置为_dde_data,这样可以在文管中显示为“数据盘”。
3、/home使用bind挂载,是为了在文管双击打开“数据盘”时直达当前用户的家目录。
——如果也像/root那样写成子卷挂载,就实现不了这个效果。
——bind挂载的情况下,内核最终会自动处理为子卷挂载的方式。
4、子卷名称不使用@home而使用home,是为了文管能把“/home/xxxx”这个显示为“/home/主目录”。
5、/tmp默认可能已经是使用tmpfs了,我添加这个主要是想改成noatime。
6、单独挂载/Tent所在分区的根卷,是要把其他分区挂载到这里面的其他目录上。
UUID=5703-A7A0 /boot/efi vfat rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2
UUID=23524a0e-1a5c-415f-9f09-25bad7be8ef6 / btrfs compress=zstd:3,rw,noatime,ssd,discard=async,space_cache=v2,subvol=/@ 0 0
UUID=a59492a1-cc3c-417e-9128-36b8fa2f4304 /Tent btrfs compress=zstd:3,rw,noatime,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/ 0 0
/Tent/home /home none defaults,noatime,bind 0 0
UUID=a59492a1-cc3c-417e-9128-36b8fa2f4304 /root btrfs compress=zstd:3,rw,noatime,ssd,discard=async,space_cache=v2,subvol=/root 0 0
UUID=7c77d2ac-f32b-4c34-950f-46bd5edefc9f /VNote btrfs compress=zstd:1,rw,noatime,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/ 0 0
UUID=1AA857D1A857A9D1 /Tent/SharePart ntfs3 rw,noatime,uid=1000,gid=1000,umask=022,iocharset=utf8,windows_names,nofail 0 0
UUID=2434e6dc-081b-47e1-8d41-80eb3797157e /Tent/ForCase btrfs compress=zstd:8,rw,noatime,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/ 0 0
tmpfs /tmp tmpfs defaults,noatime,nosuid,nodev,mode=1777 0 0
Reply Like 1 View the author


中文 
咱们以 Deepin 23.1 为例说一下怎样用这个文件系统,有人肯定说为什么不是 25 呢?因为用 btrfs, 23 有很多 25 没有的优点。此外,23 也可以升 25 吗,升过的都明白 ^_^
安装过程没什么特别的,/ 格式化成 btrfs 即可,像我一样习惯 home 单独分出的,home 也格式化 btrfs 就完事了。
系统装好后,想更新的更新一下,不想更新的,无所谓了,只需注意一点,操作这些前,电脑供电一定要稳 ^_^
一、建快照
二、改两个文件
/etc/fstab
subvolid=5,subvol=/ 处,subvolid=5 一定要去掉, subvol=/ *等号后面的* / 一定要换成 @
home 处也是同样
如图:
/etc/default/grub
在 GRUB_CMDLINE_LINUX="" 处加入 rootflags=subvol=@ 参数
变成为 GRUB_CMDLINE_LINUX="rootflags=subvol=@"
如图:
三、一个命令执行两次
以上两步都没有错的情况下,我们来执行一个命令
第一次执行完后,重启电脑,这步我称之为引子
重启过电脑后,我们再执行一次,这步我称之为固化
成功了吗?怎么验证?
方法一:打开文件管理器,或命令ls,看看根目录下,能否看到@(同样home下看看有没有@home),没有就说明成功了
方法二:sudo apt install timeshift ,安装上 timeshift ,看它使用 btrfs 有无报错,当然了,这步是必须的,用 btrfs 不就是为了快照吗
好,接下来就体验 btrfs 的玄妙吧
几个重点:
手动先建的快照名,必须是 @ (@home) 因为要配合 timeshift 使用
/etc/fstab 中的 subvolid=5 必须去掉
rootflags=subvol=@ 参数必须加在 GRUB_CMDLINE_LINUX=""