Jon*_*ill 2 partitioning mount
我为 /var/logs 创建了一个新分区。我已经编辑了 fstab。是否可以在不重新启动服务器的情况下将其挂载到 /var/log 上?
以下是一些经过测试的步骤:
第1步
我们检查正在使用的进程/守护进程/var/log/并停止它们,因此我们可以使用:
lsof +D /var/log | awk '!/COMMAND/{print $1 | "sort -u"}'
Run Code Online (Sandbox Code Playgroud)
在我的情况下返回
apache2
monit
rsyslogd
Run Code Online (Sandbox Code Playgroud)
所以我只是停止了这些服务,直到lsof输出为空
第2步
然后我们需要有相同的目录结构和各自的权限,所以我们可以使用rsync:
mkdir /var/oldlog
rsync -a --include '*/' --exclude '*' /var/log/ /var/oldlog/
Run Code Online (Sandbox Code Playgroud)
第 3 步
挂载新分区并将目录结构复制到新分区
mount /dev/sdX /var/log/
rsync -a --include '*/' --exclude '*' /var/oldlog/ /var/log/
Run Code Online (Sandbox Code Playgroud)
现在启动您已停止的服务和tail日志,如果一切正常,请不要忘记输入/etc/fstab
注意:这些步骤应该足够快,以免丢失日志,因此您可以根据上述步骤编写脚本并检查并运行。