1
我試圖在1000臺服務器上運行yum時禁用RHN檢查。遠程SUDO ssh腳本中的SED
編輯這個文件/etc/yum/pluginconf.d/rhnplugin.conf
[main]
enabled = 0
我寫了一個腳本來遠程做到這一點:它是由完成。我們使用的個人賬戶,我需要執行使用sudo命令:
for HOST in $(cat serverlist) ; do echo $HOST; ssh -o ConnectTimeout=5 -oStrictHostKeyChecking=no $HOST -t 'sudo cp /etc/yum/pluginconf.d/rhnplugin.conf /etc/yum/pluginconf.d/rhnplugin.$(date +%F) ; sudo sed -i -e "s/1/0/g" /etc/yum/pluginconf.d/rhnplugin.conf ' ; done
我知道這是一個長期的線,但它爲什麼不工作?
所有各個命令上運行自己的
sudo cp /etc/yum/pluginconf.d/rhnplugin.conf /etc/yum/pluginconf.d/rhnplugin.$(date +%F)
sudo sed -i -e "s/1/0/g" /etc/yum/pluginconf.d/rhnplugin.conf
試圖逃避特殊字符:
sudo sed -i -e "s\/1\/0\/g" /etc/yum/pluginconf.d/rhnplugin.conf
但我得到一個錯誤的所有時間:
sed: -e expression #1, char 1: unknown command: `?'
感謝你的幫助。
請查看[editing-help](http://stackoverflow.com/editing-help)。 – Cyrus
嘗試從'/ var/log/secure'或'/ var/log/auth.log'文件檢查在遠程主機上執行的sudo命令。 – tivn
爲何不依賴配置管理軟件的任何原因?你可以非常容易地和[Ansible](http://www.ansible.com/) – damienfrancois