如何在 Linux CentOS 中将可用空间从一个分区移动到另一个 100% 已满的分区

如何在 Linux CentOS 中将可用空间从一个分区移动到另一个 100% 已满的分区

我们有一台 Linux CentOS 服务器。我们的 1 个分区"/dev/md3"已 100% 使用。这就是 Mongo DB 未连接的原因。有人可以告诉我如何解决这个问题吗?我认为安装分区是解决方案?但我还必须确保数据不会被破坏。

空间详情如下。"/dev/md3"已满,"/dev/md4"有 900 GB 可用。我们需要增加空间"/dev/md3"。因此,我们的所有服务和 Mongo DB 都应该重新开始工作。

Filesystem     1K-blocks     Used Available Use% Mounted on
devtmpfs        65844948        0  65844948   0% /dev
tmpfs           65888636        0  65888636   0% /dev/shm
tmpfs           65888636    10760  65877876   1% /run
tmpfs           65888636        0  65888636   0% /sys/fs/cgroup
/dev/md3        20026172 19997792         0 100% /
/dev/md2          498468    88837    379375  19% /boot
/dev/nvme0n1p1    522228     2660    519568   1% /boot/efi
/dev/md4       901136592   258420 855080032   1% /home
/dev/loop0        763700     1200    722872   1% /tmp
tmpfs           13177728        0  13177728   0% /run/user/0
Or is there any way to move Mongo DB to another partition with more space?

答案1

一个简单的解决方法是,无需更改文件系统结构,只需移动 /home 子树中的某些目录(例如 /home/shared ),然后创建指向原始路径的符号链接即可。例如,假设您的数据库数据位于 /var/dbdir 中,您可以按如下方式移动它:

$ sudo mkdir /home/share
$ sudo chmod 755 /home/share
$ sudo mv /var/dbdir /home/share
$ sudo ln -s /home/share/dbdir /var/dbdir

答案2

正确的答案是扩展分区,但是,作为短期解决方案,您可以尝试通过清空大文件来释放一些空间。

为此,请使用真正的命令重定向。

: > very_large_file.txt

或者,你可以在 /dev/null 中进行 cat

cat /dev/null > very_large_file.txt

希望这可以帮助

相关内容