如何在 Linux 中扩展主分区(/dev/sda1)?

如何在 Linux 中扩展主分区(/dev/sda1)?

我遇到了一个问题,我的主分区空间不足。因此,我无法远程访问 Linux 机器(通过 vncserver)。我有另一个驱动器 (/dev/sdb),它有更多的可用空间。我想缩小 (/dev/sdb) 的空间并扩展到 (/dev/sda1) 分区,这是我的主分区,并且包含所有 Linux 启动、内核等文件。在不丢失主驱动器 (/dev/sda1) 上的数据的情况下,最好的无风险方法是什么?fdisk 或“dd”命令或“mount 和 umount”?任何帮助都将不胜感激。:)

答案1

您必须使用resize2fs命令来调整分区大小。

更多信息请参考此链接。

http://www.howtoforge.com/linux_resizing_ext3_partitions

前任:

 resize2fs /dev/sda 6000M

您可以使用resize2fs增加或减少分区的大小。首先,您必须减少的大小。然后,增加(主分区)/dev/sdb的大小。/dev/sda

我希望这对你有帮助。

答案2

无风险的方法是,您可以将所有数据从 /dev/sda1 复制(镜像)到其他分区。

完成此操作后,我建议使用GParted 实时 CD并从那里执行所有分区修改命令。这似乎是最安全的方法。

答案3

你需要一个 Live CD/临时操作系统来启动它,将新分区调整为合适的大小,挂载新旧分区,然后首先使用以下命令复制文件

cp -avx /media/originalRootPartition /media/newRootPartition

然后,您应该将 /etc/fstab 中的一些引用(UUID 或分区名称)更改为新分区以匹配新分区,然后在新分区上重新安装 grub:

grub-install /dev/sdb1

答案4

对于运行了几年并且现在已经没有空间的服务器,我经常使用这个解决方法:

通常,一两个应用程序/服务/守护程序/等等...需要最多的空间。如果是这种情况,您可以将目录从磁盘 sda 移动到磁盘 sdb,这样您就可以利用更多空间。

这是我所做的:在空驱动器上创建一个目录

mkdir /mountpointsdb/data/deamon_database

现在我们只需要将所有数据从原始文件夹复制到“/mountpointsdb/data/deamon_database”

cp /usr/deamon/database/* /mountpointsdb/data/deamon_database

现在我们可以删除原始文件夹,但请确保守护进程要运行。这将为您提供 sda 上的更多可用空间。之后只需将新文件夹安装到旧位置并启动守护进程:

mount --bind /mountpointsdb/data/deamon_database /usr/deamon/database

如果您希望它是永久的,您必须在 mtab 中进行如下输入:

/mountpointsdb/data/deamon_database    /usr/deamon/database    none    bind

相关内容