Check Linux Reboot by Python
当使用dnf update
更新完之后,可以通过dnf needs-restarting -r
检测下Linux系统是否需要重启。当有多台服务器的时候会比较麻烦。因此,可以利用python写一个脚本进行检测。下面是一个参考例子。更好的办法是可以做成一个配置文件,通过python读取配置文件完成检测。
#!/usr/bin/env python3
import sys
import logging
import multiprocessing as mp
from subprocess import run
logging.basicConfig(
level=logging.INFO,
encoding='utf-8',
format="%(asctime)s [%(levelname)s] %(message)s",
handlers=[
logging.FileHandler("/home/aaa/aaa.log"),
logging.StreamHandler(sys.stdout)
]
)
p = run( [ 'ssh','[email protected]','/bin/dnf', 'needs-restarting','-r' ] )
if p.returncode == 1:
logging.info('192.168.1.10 need reboot')
run( [ 'ssh','[email protected]','/sbin/reboot', ] )
p = run( [ '/bin/dnf', 'needs-restarting','-r' ] )
if p.returncode == 1:
logging.info('179 need reboot')
run( [ '/sbin/reboot' ] )