我仔细研究一下,多谢
- 直接全盘装成ext4
- 然后备份根到移动硬盘的另一个分区
- 再用gparted删除根然后格式化根成btrfs
- 再把备份复制回去
- 改一下grub.cfg里面uuid
- 重启,update-grub
这样备份还原虽然花的时间多,但改的文件少,另外因为根是gparted分出来的,你会发现新大陆。
- 直接全盘装成ext4
- 然后备份根到移动硬盘的另一个分区
- 再用gparted删除根然后格式化根成btrfs
- 再把备份复制回去
- 改一下grub.cfg里面uuid
- 重启,update-grub
这样备份还原虽然花的时间多,但改的文件少,另外因为根是gparted分出来的,你会发现新大陆。
巧了,咱自己的机器基本就这么玩儿的。
找了个空硬盘直接 ext4 一根到底,然后建个 btrfs 和需要的子卷,一点一点 rsync 搬过去......这样子 grub.cfg 改动最少,无脑替换 UUID 和 insmod 就够了。
话说 gparted 的新大陆是啥......只知道设置卷标,调整大小挺方便的
巧了,咱自己的机器基本就这么玩儿的。
找了个空硬盘直接 ext4 一根到底,然后建个 btrfs 和需要的子卷,一点一点 rsync 搬过去......这样子 grub.cfg 改动最少,无脑替换 UUID 和 insmod 就够了。
话说 gparted 的新大陆是啥......只知道设置卷标,调整大小挺方便的
我从未没见过如此流畅的dde,甚至连自己写的Python脚本都执行速度快很多,我表示很不李姐。
boot如果用btrfs建议还是跟着系统走
上次演示的时候单独分了boot,升级了内核有新文件,只回退系统没回退boot就崩了哈哈
btrfs不如用snapper划算,timeshift还得按他的目录结构来而且总感觉不太安全
boot如果用btrfs建议还是跟着系统走
上次演示的时候单独分了boot,升级了内核有新文件,只回退系统没回退boot就崩了哈哈
btrfs不如用snapper划算,timeshift还得按他的目录结构来而且总感觉不太安全
懂了,这就把 boot 子卷删了塞回 @ 子卷里面一起备份......
看样子单独留出 persistent 当数据盘处理也够用了
我从未没见过如此流畅的dde,甚至连自己写的Python脚本都执行速度快很多,我表示很不李姐。
官方为什么不直接支持?
官方为什么不直接支持?
安装器的锅,后续修复了就好了。
巧了,咱自己的机器基本就这么玩儿的。
找了个空硬盘直接 ext4 一根到底,然后建个 btrfs 和需要的子卷,一点一点 rsync 搬过去......这样子 grub.cfg 改动最少,无脑替换 UUID 和 insmod 就够了。
话说 gparted 的新大陆是啥......只知道设置卷标,调整大小挺方便的
deepin安装器分出来的区速度比gparted分出来的慢很多
https://bbs.deepin.org/phone/post/266491
安装器的锅,后续修复了就好了。
擦。让我这么慢用了这么久?原有系统怎么办?
学习了
boot如果用btrfs建议还是跟着系统走
上次演示的时候单独分了boot,升级了内核有新文件,只回退系统没回退boot就崩了哈哈
btrfs不如用snapper划算,timeshift还得按他的目录结构来而且总感觉不太安全
大佬,以后deepin会完全支持btrfs嘛
为啥要去掉boot分区呢
为啥要去掉boot分区呢
只是为了像 ext4 一样可以在一个 btrfs 分区里一根到底
如果没有同时安装多个 Linux 发行版的需求,/boot 没必要单独分出来共用,全塞一起比较好看
只是为了像 ext4 一样可以在一个 btrfs 分区里一根到底
如果没有同时安装多个 Linux 发行版的需求,/boot 没必要单独分出来共用,全塞一起比较好看
哈哈~,我喜欢分开,方便后续折腾
使用 btrfs 全盘安装 deepin
声明
前置步骤
使用手动分区方式安装 deepin,单独划分
/boot/efi
引导分区后,可以先在磁盘末尾添加分区并设置挂载点为/boot
(大小保持默认即可),然后再将中间未分配空间部分建立分区并设置挂载点为/
(根目录)。迁移
/boot
数据系统安装完成后,进入系统,在终端中执行
lsblk
和blkid
命令,观察分区挂载状态。记录下根目录所在的磁盘分区设备号,截图中为/dev/sda3
。接下来开始迁移
/boot
分区中的文件到/
根目录中的boot
文件夹。终端执行下列命令,将根目录单独挂载到
/mnt/roota
文件夹下使用
rsync
命令将/boot
下内容复制到根目录boot
文件夹下修改
/etc/fstab
文件,取消/boot
单独挂载,截图中/boot
原始分区设备号为/dev/sda2
,注释该行即可。手动修改 grub 引导文件
执行
blkid
命令获取根目录分区 UUID修改 EFI 引导分区中的
grub.cfg
/boot/efi/EFI/boot/grub.cfg
,/boot/efi/EFI/deepin/grub.cfg
等替换原本
/boot
分区的 UUID 为现在/
根目录的 UUID修改
prefix
,将/grub
修改为/boot/grub
手动修改
/mnt/roota/boot/grub/grub.cfg
不是直接修改
/boot/grub/grub.cfg
!!!因为这个时候还没重启过,目前看到的/boot
文件夹还在单独的分区上。我们需要修改的是根目录中那份boot
文件夹(当然,理论上做到这一步可以先重启一次,先前的操作已经把引导文件指向了根目录里的那份复制品,重启后的/boot
分区就已经是在根目录中了。这时直接修改/boot/grub/grub.cfg
就行。不过没有仔细测试,就不推荐了......)虽然文件开头就说明禁止手动修改,不过没想到啥好办法,先改完能启动再说......
(建议使用文本编辑器)搜索
/boot
分区的 UUID,应该共计 4 块地方需要修改,参考下列截图,统一修改替换为/
根目录的 UUID,并修改涉及到的相对路径梭哈
别问,问就是相信自己没改错,保存完了直接重启一把梭......如果有幸能正常启动,那么进入桌面后,再次执行
lsblk
和blkid
命令,观察分区挂载状态,是不是真的摆脱了原本的/boot
分区,只有根目录被挂载了。收尾
/boot
分区从磁盘末尾删掉,把空间还给根目录就行了。这就是为啥建议把/boot
放在最后,分区向后扩容,不改变起点的话,一般分区 UUID 不会改变,可以省很多麻烦。这里就不展开了,毕竟系统运行期间应该没法给自己扩容,还是得进 LiveCD,用gparted
之类的工具直接干就行了。sudo update-grub
,实测可以自动帮你修改 grub.cfg 文件中错误的文件系统类型,分区号等信息,一劳永逸。(也就是说,基本上只要保证 UUID 和相对路径正确就没啥问题了,剩下的交给update-grub
就行)题外话
UOS 用户想这么玩儿?也行,但是默认的 4.19 内核和 btrfs 配合的不是很好......会在服务启动阶段报文件系统只读错误,然后无法启动。可以手动修改 grub.cfg,将所有
ro
只读挂载改为rw
读写挂载后,可以正常启动,就是不知道有啥影响......建议升级下内核到 5.10 及以上就没事了。想用 timeshift + btrfs 实现快照备份还原?论坛直接搜索 btrfs 关键词,已经有很多大佬有成熟的子卷设置和迁移教程了,参考 @neko 和 @AMZ 的帖子可以试试。(neko 大佬最早在知乎还有一篇更详细的教程来着,找不着了......)