在服务器中自由跳转与数据管理:实用命令指南
在管理或使用集群服务器环境时,高效地在不同节点间跳转、执行命令以及数据的相互拷贝是日常操作的重要组成部分。
1. 在集群节点间自由跳转:SSH(Secure Shell)
SSH 是实现远程登录和安全数据传输的协议,是集群管理中的必备工具。
-
基本用法:
ssh 用户名@目标节点IP
例如,要从当前节点跳转到IP为
192.168.1.100
的节点,用户名为root
,则命令为:ssh root@192.168.1.100
-
免密登录配置:
为了方便,可以设置SSH密钥对,实现无密码登录。- 在源节点生成SSH密钥对(如果尚未生成):
ssh-keygen
- 将公钥复制到目标节点:
ssh-copy-id 用户名@目标节点IP
- 在源节点生成SSH密钥对(如果尚未生成):
2. 数据相互拷贝:SCP & RSYNC
-
SCP (Secure Copy Protocol) 用于在Linux主机间安全地传输文件和目录。
-
单个文件拷贝:
scp 源文件路径 用户名@目标节点IP:目标路径
例如,将本地的
file.txt
拷贝到远程的/home/user/
目录下:scp file.txt user@192.168.1.100:/home/user/
-
目录拷贝:
添加-r
参数以递归拷贝目录:scp -r 源目录路径 用户名@目标节点IP:目标路径
-
-
RSYNC 提供更高级的文件和目录同步功能,支持增量拷贝,只传输差异部分。
- 基本用法:
其中,rsync -avz 源路径 用户名@目标节点IP:目标路径
-a
表示归档模式,保留原有文件属性;-v
为详细模式;-z
开启压缩,加快传输速度。
- 基本用法:
3. 执行远程命令:SSH与Parallel SSH
-
通过SSH执行远程命令:
ssh 用户名@目标节点IP "命令"
例如,在远程节点上列出
/var/log
目录内容:ssh root@192.168.1.100 "ls /var/log"
-
Parallel SSH (pssh) 当需要在多台机器上并行执行相同命令时非常有用。首先,需要安装
pssh
包。安装(以Ubuntu为例):
sudo apt-get install pssh
使用示例:
pssh -h 节点列表 "命令"
其中,
-h
后面跟节点IP列表的文件路径,每行一个IP地址。