linux中只有root账号和密码,怎么让多台服务器执行一个脚本
时间: 2024-03-25 19:40:47 浏览: 58
如果您只拥有一个root账户和密码,您可以使用SSH公钥认证来连接多台服务器并执行脚本,而无需在每台服务器上输入密码。以下是实现此目的的步骤:
1. 在本地计算机上生成SSH密钥对。使用以下命令:
```
ssh-keygen
```
2. 将公钥复制到远程服务器上。使用以下命令:
```
ssh-copy-id root@remote-server
```
在这个命令中,将`root@remote-server`替换为您要连接的远程服务器的root账户和IP地址。
3. 然后,您可以使用以下Shell脚本在所有服务器上执行脚本:
```
#!/bin/bash
# 定义要连接的服务器列表
servers=(
"server1"
"server2"
"server3"
)
# 定义要执行的命令或脚本
command="./your_script.sh"
# 循环连接每台服务器并执行命令
for server in "${servers[@]}"
do
echo "Connecting to $server..."
ssh root@$server "$command"
done
echo "All done."
```
在这个脚本中,SSH将使用公钥认证连接到远程服务器,而无需输入密码。您可以将`server1`、`server2`和`server3`替换为您的服务器名称或IP地址,将`your_script.sh`替换为您要在每台服务器上执行的脚本或命令。
阅读全文
相关推荐

















