sshpass 免密碼進行文件復制的方法


1. 部分centos8 沒有安裝 sshpass 需要先安裝 sshpass

yum install sshpass

2. 需要增加一個配置文件, 避免因為 stickhost 檢查 造成命令失效

cat  > ~/.ssh/config  <<EOF
UserKnownHostsFile
/dev/null
ConnectTimeout
15
StrictHostKeyChecking no
EOF

注意 這個配置節.. 第二個EOF 的F 后面 一定不能有空格.. 

3. 然后就可以執行相關的命令了:

比如我要同步一個文件夾:

sshpass -p Test1127?! rsync -rpt /deploy/ root@10.110.82.205:/deploy/ --delete

#注意 兩個目錄一定要帶 右側的斜線 不然就容易出問題.

就可以了. 

刪除也能夠同步實現.

4. 為了簡單起見可以將 這一段設置成一個 alias 應該就能直接用了. 

sshpass -p Test1127?!

 5. 可以修改host 文件 然后批量的 進行文件覆蓋的操作

sshpass -p Test1127?! rsync -rpt --exclude={1,4} /rsync/$fi/    root@fi:/rsync/$fi/ --delete

 6. 相應的執行自定義命令的方法為:

sshpass -p Test1127?! ssh root@GS166 "/deploy/startup" >/dev/null

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM