Bash 用于从远程服务器提取挂起 Linux 安全更新的脚本
Bash script to pull pending Linux security updates from remote servers
我正在尝试从远程服务器中提取挂起的 linux 更新并将它们插入 Nagios。这是代码的精简版本 - 给我一个错误的代码:
UPDATES=$(sshpass -p "password" StrictHostKeyChecking=no user@server:/usr/lib/update-notifier/apt-check 2>&1)
echo $UPDATES
错误信息:
sshpass: Failed to run command: No such file or directory
问题中的命令在多个方面都是错误的。
sshpass -p"password" \
ssh -o StrictHostKeyChecking=no user@server "/usr/lib/update-notifier/apt-check" 2>&1
对于-p
选项,选项和值之间不应有任何space。
sshpass
需要一个命令作为参数,在本例中是 ssh
。
StrictHostKeyChecking=no
应该在 ssh
的选项 -o
之后。
A space,而不是 :
在 user@server
和你要远程执行的命令 运行 之间,即 /usr/lib/....
我正在尝试从远程服务器中提取挂起的 linux 更新并将它们插入 Nagios。这是代码的精简版本 - 给我一个错误的代码:
UPDATES=$(sshpass -p "password" StrictHostKeyChecking=no user@server:/usr/lib/update-notifier/apt-check 2>&1)
echo $UPDATES
错误信息:
sshpass: Failed to run command: No such file or directory
问题中的命令在多个方面都是错误的。
sshpass -p"password" \
ssh -o StrictHostKeyChecking=no user@server "/usr/lib/update-notifier/apt-check" 2>&1
对于-p
选项,选项和值之间不应有任何space。
sshpass
需要一个命令作为参数,在本例中是 ssh
。
StrictHostKeyChecking=no
应该在 ssh
的选项 -o
之后。
A space,而不是 :
在 user@server
和你要远程执行的命令 运行 之间,即 /usr/lib/....