将新分区附加到/ var目录后,为什么根分区不会减less?

在连接新虚拟磁盘之前,这是我的磁盘状态:

Filesystem Size Used Avail Use% Mounted on /dev/xvde1 4.9G 4.6G 1.3M 100% / tmpfs 828M 0 828M 0% /dev/shm 

当我连接新磁盘时,我创build了新的分区和逻辑卷,并挂载到/ var分区,这是当前状态:

 Filesystem Size Used Avail Use% Mounted on /dev/xvde1 4.9G 4.6G 1.3M 100% / tmpfs 828M 0 828M 0% /dev/shm /dev/mapper/vg_var-lv_var 49G 442M 46G 1% /var 

为什么根分区是一样的,没有减less,又100%的使用?

您尚未将原始/ var中的文件转移到新的/ var,因此它们仍占用/ dev / xvde1上的空间。

添加一个新的/ var是一个不重要的任务。 在/ var中占据最多空间的许多文件是由长时间运行的守护进程打开的日志文件。 这些文件通常保持打开状态,直到守护进程被告知closures守护进程或守护进程重新启动。

要正确地做到这一点,你将需要

  • 下降到单用户模式。
  • 在文件系统中的某处挂载新的/ var。
  • 将文件从/ var复制到新的变种
  • 将旧/ var重命名为别的。
  • 修改fstab将新的/ var挂载在/ var上
  • 删除旧的/ var
  • 回到多用户模式

因为您没有首先从/ dev / xvde1中删除文件。

要释放空间(并在文件系统上创build适当的目录结构),最简单的解决scheme是切换到运行级别1,在其他地方挂载文件系统,迁移文件,然后重新挂载并切换回默认运行级别。

 # telinit 1 ... # umount /var # mkdir /newvar # mount /dev/mapper/vg_var-lv_var /newvar # mv /var/* /newvar/ # umount /newvar # mount /dev/mapper/vg_var-lv_var /var # rmdir /newvar # telinit 5 

(需要从控制台运行)