基于@hwjp的另一种解决方案,如果您不能使用另一个驱动器卷来移动它们,则可以将虚拟驱动器卷创建到另一个具有更多可用空间的卷中(我就是这种情况):
创建虚拟卷:
A)做: sudo dd if=/dev/zero of=VHD-log.img bs=1M count=1200
- if = / dev / zero:输入文件以提供用于初始化数据存储的字符流
- of = VHD.img:要在/ thevolumeofyourchoice上创建为存储卷的图像文件
- bs = 1M:一次最多读写1M
- count = 1200:仅复制1200M(1GB)输入块
B)做:sudo mkfs -t ext4 /thevolumeofyourchoice/VHD-log.img
使用mkfs实用程序在VHD日志映像文件中格式化EXT4文件系统类型。
C)做:将sudo mkdir /thevolumeofyourchoice/vlog
VHD-log挂载到目录(挂载点)
D)做: sudo mount -t auto -o loop /thevolumeofyourchoice/VHD-log.img /thevolumeofyourchoice/vlog
D1)要将VHD-log在系统启动时挂载到最终目录,请将此条目添加到/ etc / fstab文件中。
/thevolumeofyourchoice/VHD-log.img /var/log/ ext4 defaults 0 0
移动旧的日志文件:
E)做:
service rsyslog stop
lsof | grep /var/log
列出/ var / log中的打开文件并关闭所需的守护程序(在我的情况下为apach2,freshclam)
cp -rp /var/log/* /thevolumeofyourchoice/vlog
(cp -p与--preserve = mode,ownership,timestamps相同)
F)做:
sudo umount /thevolumeofyourchoice/vlog
sudo mv /var/log /var/log-old
sudo mkdir /var/log
sudo chgrp syslog /var/log
sudo mount -t auto -o loop /thevolumeofyourchoice/VHD-log.img /var/log
G)做:service rsyslog start
并重新启动您停止的其他服务
最后仔细检查:
您可以- lsof | grep /var/log
在/ var / log中列出打开的文件并确认它们指向/ var / log而不是/ var / log-old
一切正常之后,您可以制作,备份或删除/ var / log-old。