Centos
如何自動鍵入 SCP 或 SFTP 的密碼以使其自動化?
我有腳本,我將
scp
命令備份文件到其他伺服器。但是當它執行時,它要求輸入密碼。有沒有辦法自動化這個?我正在使用 CentOS 5.6。我在使用spawn
命令時很少看到他們使用命令的指南,它的說法是-bash: spawn: command not found
。#!/usr/bin/expect -f # connect via scp spawn scp "user@example.com:/home/santhosh/file.dmp" /u01/dumps/file.dmp ####################### expect { -re ".*es.*o.*" { exp_send "yes\r" exp_continue } -re ".*sword.*" { exp_send "PASSWORD\r" } } interact
確保您安裝了“期望”。在帶有 ‘yum’ 的 Linux 發行版中,執行(以 root 身份):
# yum install expect
然後通過鍵入以下內容確保期望的路徑在您的腳本中是正確的:$ which expect
/usr/bin/expect 返回的路徑將放在腳本的開頭 # !/usr/bin/expect -f
使用帶有空密碼的基於密鑰的身份驗證。這不會要求輸入密碼。
請按照以下步驟操作。