正确的设计
我假设您无法简单地扩展有问题的文件系统(使用lvextend&& ext2online),因为您不使用LVM或使用错误的文件系统类型.
你的方法
如果您使用SIGHUP(kill -1 pid)向守护进程发出信号,那么您提出的建议可能会奏效.显然你需要稍后“mount -o bind / / somewhere”并清理挂载/ var / log下面的内容.但它对我来说有难闻的气味,特别是对于生产而言.
避免停机,有一个干净的结果(但很复杂)
忘记“mount -o bind”的想法,创建一个新的LV /分区,但不要挂载它.
lsof | grep /var/log # lists open files in /var/log
对于每个具有任何打开文件的守护进程(我至少期望syslog,inetd,sshd):
>重新配置守护程序no以登录到/ var / log
>刷新守护进程(kill -1或/etc/init.d/script reload)
>用lsof确认守护进程已关闭其文件的grep / var / log
挂载/ var / log.
再次恢复旧配置,SIGHUP / reload守护程序.
简单的方法(停机时间)
创建一个新的LV /分区并将其正确安装在/ var或/ var / log上.简单的方法是将服务器关闭到维护模式(单用户模式),并使用实际的控制台(而不是ssh)进行操作.