【linux】把home目录挂载到其他分区(数据盘/data等)下

        在安装系统时由于没有合理地分配,导致home主目录的内存分配过小,久而久之内存逐渐不是很够用,这时候需要把home目录进行扩容处理,以下有一个方法,就是把home通过挂载到其他分区的方法达到扩容的地步。

        我们先找到合适容量的分区,例如我的数据盘(/data)中就拥有足够的空间(1TB),所以打算把home挂载到/data本来的分区下(注:如果是未进行分区或者未使用的磁盘空间,请先进行分区挂载,这里讲解使用已经挂载的分区情况):

        首先我们需要使用指令

df -h

         查看数据盘所在的磁盘分区:

        如例子中的/data就在/dev/sdb4分区中,接下来我们就使用指令

 sudo rsync -aXS /home/ /data

        将home目录下的所有东西都同步到/data所在的分区,也就是/dev/sdb4下

        这时候,/dev/sdb4下就存放着与/home目录下一摸一样的文件,因为此时/data时挂载到/dev/sdb4下的,所以你也可以通过ls /data查看到这些文件。 这时候,我们把/home目录进行重命名操作,这里建议是进行一个备份操作,把/home目录改成一个易记的名字,以作还原操作:

sudo mv /home /home_backup(名字自己定义)

         这时候你就会在根目录( / )下看到原本的home目录已经被修改为“home_backup”:

        随后在新建一个/home目录

sudo mkdir /home

        这时候你就会在根目录( / )下看到一个新建的“/home”,但什么都没有

        这时候的关系如图下所示:

        下一步,我们取消/data数据盘对/dev/sdb4的挂载

 sudo umount /dev/sdb4

        再次执行指令“df -h”会发现/dev/sdb4这项信息已经消失

        而后我们再把新建的/home目录挂载到/dev/sbd4分区上去

 sudo mount /dev/sdb4

        随后再次执行“df -h”会发现/dev/sdb4重新出现

         此时,我们已经完成了对/home对/dev/sdb4分区的挂载操作

        但是这只是临时的挂载方式,我们需要一个永久性的操作,所以需要把/dev/sdb4与/home、永久性地绑定起来,使用以下指令查看到/dev/sdb4的UUID

 blkid

        随后我们找到需要绑定的分区,例子是/dev/sdb4,把它的UUID复制下来

         随后我们打开/etc/fstab文件,在文件的最底下添加一条内容:

 UUID=XXXX-XXXX-XXXX(磁盘UUID /home ext4 nodev,nosuid 0 2

         

         同时,在/etc/fstab文件下,找到之前一条绑定/data的信息,将其使用“#”屏蔽掉

        如此,我们的重新挂载工作就全部完成了,重启系统,重新进入根目录使用指令"df -h",会发现/home目录永久挂载在了原本的数据盘上。 

猜你喜欢

转载自blog.csdn.net/qq_41884002/article/details/127037744