03_SSH服务和数据同步

一、克隆虚拟机

image
image

初始化系统操作

# 1. 设置静态ip地址
# 获取ip地址对应的连接名称
ip a
# 查看当前自动分配的ip地址和网关及dns
nmcli device show ens160

# 对照前面得到的ip地址,来进行修改
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.88.10/24 ipv4.gateway 192.168.88.2 ipv4.dns 192.168.88.2 autoconnect yes

# 重启一下网卡
nmcli connection down ens160 && nmcli connection up ens160

# 2. 设置主机名
hostnamectl set-hostname node1
# 添加到hosts主机中,让主机名和ip地址对应上
echo '192.168.88.10 node1' >>/etc/hosts

# 3. 修改命令提示符显示,方便学习
echo "export PS1='[\$(whoami)@\$(hostname) \$PWD]\\$ '" >>/etc/profile

# 立即生效
source /etc/profile

# 4.设置tab提示 
dnf install -y epel-release bash-completion

# 5. 关机
init 0

# 6.打一个快照

命令作用:

执行结果:

关键参数:

注意事项:

克隆是创建一个虚拟机的完整副本,包括虚拟机的所有数据、配置和操作系统。克隆可以分为完整克隆和链接克隆两种:



![](/assets/feishu-images/1be59df947ec3a4608f6ed2f.png)

进入克隆设置向导

![](/assets/feishu-images/c496cfa56eb52c16c9565a63.png)

单击下一步,选择克隆源

![](/assets/feishu-images/e266ebacb6a6c6164bcba2ce.png)


![](/assets/feishu-images/bba2befdb54542ff5c97828f.png)

设置克隆后虚拟机的名称及存储位置(位置一定要选择规范的位置上,后续好找到)

![](/assets/feishu-images/deacc7ad09df256e6f467a8f.png)

> 


克隆的主机一定要一台一台的启动,因为它们的环境完全相同,ip地址一样,所以需要一台台去配置一下。

规划主机的ip地址分配

| 主机ip | 主机名称 | 备注 |
|---|---|---|
| 192.168.88.10 | node1 | 源服务器,手动安装的 |
| 192.168.88.11 | node2 | 克隆体 |
| 192.168.88.12 | node3 | 克隆体 |







15200d22-f12c-4270-91e9-c3f1502a7ed4

[connection]
id=ens160
uuid=15200d22-f12c-4270-91e9-c3f1502a7ed4
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1774509573

[ethernet]

[ipv4]
address1=192.168.88.12/24,192.168.88.2
dns=192.168.88.2;
method=manual

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

注意事项:

15200d22-f12c-4270-91e9-c3f1502a7ed4

[connection] id=ens160 uuid=15200d22-f12c-4270-91e9-c3f1502a7ed4 type=ethernet autoconnect-priority=-999 interface-name=ens160 timestamp=1774509573

[ethernet]

[ipv4] address1=192.168.88.11/24,192.168.88.2 dns=192.168.88.2; method=manual

[ipv6] addr-gen-mode=eui64 method=auto

[proxy]


**注意事项:**

关键参数:

注意事项:


**注意事项:**



SSH远程执行命令是通过SSH协议连接到远程服务器,并在远程服务器上执行指定的命令或脚本,而无需直接登录到服务器的终端。

**有什么价值呢?**


![](/assets/feishu-images/4b664db3886f09dc17deade9.png)



说明:
账号:用户名(root)
主机(ip):远程服务器的IP地址或域名。
命令或脚本:要在远程服务器上执行的命令


选项:

注意事项:

1111

天门中断楚江开, 碧水东流至此回。 两岸青山相对出, 孤帆一片日边来。


**注意事项:**




**核心特点:**

| 特性 | 说明 |
|---|---|


原理简述:
2.进行用户认证(密码或密钥登录);
4.传输完成后断开连接。      

全量:每次都传输全部数据

增量:除第1次外,后续传输数据时,只传有修改的数据

也就是说:

SCP的基本语法:

源文件路径:本地文件或远程服务器上的文件。

常用选项:


**注意事项:**

注意事项:

index.html


**注意事项:**


index.html

注意事项:

web-2026-04-30.tar.gz


**注意事项:**




 它的作用是将源数据的变更(新增、修改、删除)按一定策略传递到目标系统,保证目标数据与源数据保持同步。


**核心目标**





**主要特点**:


**数据同步任务背景:**


  
  



默认情况下Linux是没安装**`rsync`**工具的,需要手动去安装一下,用rsync工具同步数据,则双方都要安装它,否则失败。

**安装**


注意事项:

rsync-3.2.5-4.el9.x86_64

rsync-3.2.5-4.el9.x86_64

rsync-3.2.5-4.el9.x86_64

注意事项:

------------------------------------------------------------------------------------------------ web/ web/index.html

web/ web/1.txt web/index.html

web/ web/index.html

web/ web/2.html web/index.html


**命令拆解:**

| 命令部分 | 重要程度 | 详细解释 |
|---|---|---|
| `-p` | 【核心】 | 递归创建目录;父目录不存在时一并创建,目录已经存在也不报错。 |

**注意事项:**



**需求说明:**

优点:

缺点:

场景:现在有2台服务器node1和node2,现在我需要把node1中的数据,同步到node2中,同步使用的方案使用rsync,且rsync它是基于服务的方式来进行,也就是说node2是接受方,rsync服务要在node2中。

操作流程架

image

rsync:x:1001:1001::/home/rsync:/sbin/nologin


**注意事项:**

命令拆解:

命令部分重要程度详细解释
-p核心递归创建目录;父目录不存在时一并创建,目录已经存在也不报错。

注意事项:

[dataweb]


**注意事项:**


sync_web_itwu:123abc

注意事项:

sources: ports: protocols: forward-ports: source-ports: icmp-blocks:


**注意事项:**

注意事项:

注意事项: