本人是从CCF论坛跳过来的,找了好几天邀请码,还是没有善于利用论坛资源,岁数大了,反应能力不行了。 最后通过填写在线表单,顺利获得了邀请码,虽然答错了一道题。 前面还给两个佬友发过邮件或者通过TG发过PM,对各位的打扰先说声抱歉。
今天一直泡在Deepin论坛,择选几个回复,算是开场白,请大家多指教。
一、【2024年9月10日 17:48:30】查看磁盘空间占用情况
sudo apt install -y qdirstat
sudo qdirstat / &
sudo qdirstat /persistent &
二、关于Deepin中Roota分区的扩容
一般来说,分区的压缩,最好是在分区的后面腾出空间来操作,毕竟,大部分文件系统的空间分配策略都是优先使用分区前面的空间。楼主这个操作就正好违背了这个原则,几乎每一步空间的腾出,都是在有数据的空间上进行,第一步就是在data分区前面腾出20G空间,第二步则是在Rootb前面给Roota腾出10G的空间。无论是data和Rootb都是有数据的空间。实际上这种操作非常危险,因为你腾出20G空间,原则上就在往后挪动20G(甚至更多,取决于无损分区软件的操作策略)的数据,很难保证不出错。
那么,换一个思路呢?linux本来就不强调分区这个概念,而zfs甚至完全取消了分区这个概念(用虚拟的分区和数据集来代替)。同样的,Roota分区空间不够了,那么直接将占用空间大的目录的数据迁移到一个新分区,然后将新分区以挂载点的方式挂载到原来的目录不就完了。这样只需要建立新分区,将原来目录的数据复制到新分区,然后再编辑fstab,将新分区挂载到原目录。整个操作都是非常稳健的操作,基本上不用担心数据损失。
比如以deepin v23为例,我用sudo qdirstat统计一下Roota分区谁占用了最多的空间,/usr最大,但它比较关键,我们不用动它,然后我发现/.osrepo-cache是第二占用空间大的,既然是Cache,肯定也不是关键目录,那么我们就移动它。操作步骤大概如下:
1、用livecd启动。
2、用gparted将_dde_data分区缩小,从分区后面腾出20G空间,然后建立一个新分区,假设叫Roota-add1。甚至不需要分区,可以将/.osrepo-cache目录直接迁移到data分区,这样更简单。
3、挂载Roota-add1分区到临时挂载点,假设:/mnt/tmp,将/.osrepo-cache目录复制到/mnt/tmp/.osrepo-cache。然后先不要删除原来的/.osrepo-cache目录,可以先改个名叫:/.osrepo-cache.bak
4、编辑/etc/fstab,将新的.osrepo-cache目录挂载到/.osrepo-cache。
5、重启系统进行测试,如果一切正常,则删除/.osrepo-cache.bak。
6、大功告成!当然,安全起见,在进行任何数据操作之前,备份数据是一个良好的习惯。
三、网卡设置静态IP后就不能再自动获取的bug
改了网卡配置之后,需要重启网络管理组件。或者你先禁用网卡,然后再打开网卡。
sudo systemctl restart network-manager
或
sudo service network-manager restart