linux扩展任意分区,步骤简单,易于理解,亲测好用!
这让笔者感到非常不安,因为笔者开发过程中需要使用较多的工具,基本都安装在/usr/bin,/usr/local/bin下。如果对此问题不管不顾,势必有一天会导致没有足够的空间安装新的软件。笔者通过查阅国内外方法,发现大多都非常复杂,并且鲜有其他开发者复现,所以笔者不敢轻易尝试,毕竟数据无价!红色表示原来的/usr目录,绿色表示当前的/usr目录,并且软件都能正常使用,完全满足笔者的需求。首先,在你
声明:笔者对参考此方法扩展/usr的网友,不负任何责任!请谨慎操作!
笔者的虚拟机软件为VMware Workstation 17 Pro 17.5.1 build-23298084
linux版本为debian GNU/Linux 12
如果你的host主机还有较为充分的磁盘空间,请继续阅读。如果host剩余磁盘空间很少,那请尝试其他方法,此方法不适用。其他分区的拓展也可以参考此方法。
故事:之前在安装虚拟机的时候没有特别分区,今天突然发现/usr目录使用率达到94%!仅仅剩余600多MB的空间。这让笔者感到非常不安,因为笔者开发过程中需要使用较多的工具,基本都安装在/usr/bin,/usr/local/bin下。如果对此问题不管不顾,势必有一天会导致没有足够的空间安装新的软件。笔者通过查阅国内外方法,发现大多都非常复杂,并且鲜有其他开发者复现,所以笔者不敢轻易尝试,毕竟数据无价!笔者可不想从头再安装虚拟机,时间成本太高。
2024/5/30 笔者之后按照此方法又扩展了/var分区。
笔者解决方案如下:
首先,在你的虚拟机软件中拓展磁盘空间,这一步网上教程很多,笔者不再赘述。
下面是在虚拟机中的操作。
以下所有指令都在root权限下执行
-
创建挂载点:首先,你需要创建一个用于挂载新分区的目录。可以在
/目录下创建一个新的目录,例如/mnt/usr_new:mkdir /mnt/usr_new -
格式化未分配的分区:使用适当的文件系统格式(例如ext4)对未分配的分区进行格式化。假设未分配的分区为
/dev/sdXN,笔者的是/dev/sda3。你可以使用以下命令格式化它:mkfs.ext4 /dev/sdXN
注意:
如果在虚拟机软件里拓展了分区,但是进入linux后通过sudo fdisk -l看不到空闲的分区,请使用
sudo fdisk /dev/sdX
输入 n
按照提示一步步输入选项
之后就可以看到空闲分区了。进入下一步。
-
挂载未分配的分区:将未分配的分区挂载到新创建的挂载点上:
mount /dev/sdXN /mnt/usr_new -
复制
/usr下的文件:使用rsync命令将/usr下的所有文件复制到新的挂载点下:(耐心等待~)rsync -av /usr/ /mnt/usr_new -
备份原
/usr目录:为了安全起见,在进行下一步之前,你可能希望备份原/usr目录。你可以使用tar命令将其打包:(最好备份一下啦~)tar czvf 备份地址.tar.gz /usr -
重新挂载
/usr目录:卸载原/usr目录并重新挂载新的/usr目录:umount /usr mount /dev/sdXN /usr注:
也许你需要强制umount,请使用umount -l /home 强行解除挂载 -
更新
/etc/fstab文件:为了确保系统重启后新的挂载点仍然生效,你需要更新/etc/fstab文件。将新的挂载点添加到文件末尾,确保在启动时自动挂载:/dev/sdXN /usr ext4 defaults 0 2 -
重新启动系统:最后,重新启动系统以应用所有更改。
红色表示原来的/usr目录,绿色表示当前的/usr目录,并且软件都能正常使用,完全满足笔者的需求。

完成这些步骤后,你的系统应该会在 /usr 目录下挂载新的分区,并且原 /usr 目录下的所有文件都会保留。请确保在执行这些操作之前进行适当的备份,并谨慎操作以避免数据丢失。
更多推荐




所有评论(0)