[Suggestions for Improvement] ·「BUG」发现beta2选择·「自定义安装」fstab居然没用bind
Tofloor
poster avatar
neko
deepin
Ecological co-builder
2023-11-16 15:04
Author

如图:这就导致了opt直接吃掉了根分区的硬盘,装几个软件就导致/分区占用100%再也装不了软件了XD
image.png

正常的应该是下面这样:

image.png

所以现在我得手动迁移一下数据XD

[警告!!!除非你充分理解挂载点的意义否则"请不要进行以下操作"]

基本步骤如下:

sudo cp -av /opt /root /var /tmp /home #先迁移数据到现在的/home分区
sudo mkdir /home/home #创建home子目录(因为原来的home我们会改成persistent)
sudo cp -av /home/$USER /home/home #迁移用户数据到home子目录(实际上就是之后的/persistent/home )

修改/etc/fstab添加内容如下:

#修改原来的home挂载点,UUID不需要改,把home改成persistent
UUID=xxxxxx       /persistent             ext4            rw,relatime     0 2

#追加bind挂载设置
/persistent/tmp /tmp none defaults,bind 0 0
/persistent/home /home none defaults,bind 0 0
/persistent/opt /opt none defaults,bind 0 0
/persistent/root /root none defaults,bind 0 0
/persistent/var /var none defaults,bind 0 0
sudo mount -a #测试挂载是否正常

会提示重启systemd生效,没其他报错就可以重启了。

重启正常开机后打开终端清理原来的/分区的那几个目录释放数据:

sudo unshare -m bash #切换到新的挂载命名空间,这样在里面卸载挂载点就不会影响的宿主
sudo umount /tmp
sudo umount /home
sudo umount /opt
sudo umount /root
sudo umount /var
sudo chattr -i /var/lib/deepin/developer-mode/signature #修改这个文件的attr特权设置,允许删除
sudo rm -rf /tmp/* /home/* /opt/* /root/* /var/* #清理原始文件

关闭终端结束

Reply Favorite View the author
All Replies
f@deepin
deepin
2023-11-16 15:40
#1

用的 全盘安装 ?

如果不是,本来就没有bind吧

confused

Reply View the author
neko
deepin
Ecological co-builder
2023-11-16 15:45
#2
f@deepin

用的 全盘安装 ?

如果不是,本来就没有bind吧

confused

不是,是中间那个安装到指定分区,Beta2的安装器有3个选项,第一个[全盘安装],第二个[安装到指定分区],第三个[手动分区]

Reply View the author
f@deepin
deepin
2023-11-16 15:52
#3
neko

不是,是中间那个安装到指定分区,Beta2的安装器有3个选项,第一个[全盘安装],第二个[安装到指定分区],第三个[手动分区]

2023-11-16_07-51-00.png

自定义安装,也是有bind的呀,没用过这种模式,真没注意

Reply View the author
fslong
deepin beta test group
2023-11-16 16:59
#4

不用bind呀,opt在根下面,根没满他就没满。

Reply View the author
hotime
deepin
2023-11-16 17:05
#5

最后一波清理目录的做法,学到了!!!kissing_heart

我每次自定义安装以后,也是按照全盘安装默认的分区挂载方式来重新修改挂载点和绑定。以前在最后一步清理目录的时候,都是很繁琐进live系统里清理,还有signature这个文件的特权设置导致无法直接删除,当时总是遇到这个情况,强迫症难受了好一段时间。

另外补充一下:
1、在迁移数据的时候,还要把原/persistent/linglong目录也复制/同步到数据分区里,毕竟我们要将数据分区挂载到/persistent
2、还有强迫症关注的一点,安装GParted分区编辑器,将数据分区的文件系统卷标修改为_dde_data。(纯纯的强迫症)
3、另外,清理原目录时,sudo unshare -m bash会进入root用户的环境,后续命令就不用再加sudo了吧?

Reply View the author
neko
deepin
Ecological co-builder
2023-11-16 17:06
#6
fslong

不用bind呀,opt在根下面,根没满他就没满。

问题是自定义安装默认分配的/只有15G😂

Reply View the author
fslong
deepin beta test group
2023-11-16 17:18
#7
neko

问题是自定义安装默认分配的/只有15G😂

这个分区方案我们骂了好多年了,所以都不用

Reply View the author
花雨落逝
deepin
2023-11-16 20:07
#8
neko

问题是自定义安装默认分配的/只有15G😂

opt看似在根下,实际上在data分区(手动捂脸

并且根的大小在安装阶段是可调的

Reply View the author
neko
deepin
Ecological co-builder
2023-11-16 20:32
#9
花雨落逝

opt看似在根下,实际上在data分区(手动捂脸

并且根的大小在安装阶段是可调的

我知道,前提是由这fstab写bind挂载点。不然就真的只是在/

Reply View the author
昨夜的星辰
deepin
2023-11-16 20:55
#10

下午试着清理一下看看,貌似我当时装好也没有清理过。。。

Reply View the author
buyike
deepin
2023-11-16 23:23
#11
fslong

这个分区方案我们骂了好多年了,所以都不用

是打死不变的那种呀,隔壁现在的官方方案更新了,靠谱多了。

Reply View the author
兆兆嘟嘟嘟
deepin
2023-11-17 06:29
#12

我的系统总共只安装在一个分区(/)。

Reply View the author