更新 PVE 制作虚拟机模板

This commit is contained in:
CallMeR
2023-06-27 01:05:22 +08:00
parent 88891aa1f5
commit e6161182e7
12 changed files with 49 additions and 61 deletions
+13 -23
View File
@@ -111,41 +111,28 @@ $ sudo vim /etc/apt/sources.list.d/debian.sources
## 系统软件源配置项 ## 系统软件源配置项
Types: deb Types: deb
URIs: mirror+file:///etc/apt/mirrors/debian.list URIs: https://mirrors.ustc.edu.cn/debian
Suites: bookworm bookworm-updates bookworm-backports Suites: bookworm bookworm-updates bookworm-backports
Components: main contrib non-free non-free-firmware Components: main contrib non-free non-free-firmware
Types: deb Types: deb
URIs: mirror+file:///etc/apt/mirrors/debian-security.list URIs: https://mirrors.ustc.edu.cn/debian-security
Suites: bookworm-security Suites: bookworm-security
Components: main contrib non-free non-free-firmware Components: main contrib non-free non-free-firmware
``` ```
使用 `vim` 编辑器编辑 `debian.list` 中镜像源地址,并保存 为了防止 `Cloud-Init` 服务意外修改软件源配置,需要添加文件保护,执行以下命令
```bash ```bash
## 编辑 debian.list 配置文件 ## 增加文件保护
$ sudo vim /etc/apt/mirrors/debian.list $ sudo chattr +i /etc/apt/sources.list.d/debian.sources
## 检查文件保护
$ lsattr /etc/apt/sources.list.d/debian.sources
## 替换为 USTC 地址 #### 示例输出
----i---------e------- /etc/apt/sources.list.d/debian.sources
http://mirrors.ustc.edu.cn/debian
```
使用 `vim` 编辑器编辑 `debian-security.list` 中镜像源地址,并保存。
```bash
## 编辑 debian-security.list 配置文件
$ sudo vim /etc/apt/mirrors/debian-security.list
## 替换为 USTC 地址
http://mirrors.ustc.edu.cn/debian-security
``` ```
### 1.3.安装软件 ### 1.3.安装软件
@@ -465,11 +452,14 @@ $ rm -rvf ~/.bash_history ~/.zsh_history
## 清理命令历史 ## 清理命令历史
$ history -c $ history -c
## 关闭系统
$ sudo shutdown now
``` ```
## 2.虚拟机转为模板 ## 2.虚拟机转为模板
Debian 模板虚拟机关机,进入 PVE 的 WEB 管理界面。 Debian 模板虚拟机关机,进入 PVE 的 WEB 管理界面。
在左侧虚拟机列表中,鼠标 **右键单击** Debian 模板虚拟机,在弹出的菜单中选择 `转换成模板` 在左侧虚拟机列表中,鼠标 **右键单击** Debian 模板虚拟机,在弹出的菜单中选择 `转换成模板`
+36 -38
View File
@@ -1,78 +1,76 @@
## 1.克隆虚拟机 ## 1.克隆虚拟机
在上一篇文章 [5.PVE创建模板虚拟机](./05.PVE制作虚拟机模板.md) 中,我们已经制作好了虚拟机模板。 在上一篇文章 [05.PVE制作虚拟机模板](./05.PVE制作虚拟机模板.md) 中,已经制作好了虚拟机模板。
接下来将使用该模板克隆出新的虚拟机,并使用 Adguard Home 作为内网的 DNS 服务器。 接下来将使用该模板克隆出新的虚拟机,并安装 Adguard Home 作为内网的 DNS 服务器。
鼠标 **右键单击** 虚拟机模板,在弹出的菜单中选择 `克隆` 鼠标 **右键单击** 虚拟机模板,在弹出的菜单中选择 `克隆`
![克隆虚拟机](img/p06/vm_clone.png) ![克隆虚拟机](img/p06/vm_clone.jpeg)
在弹出的虚拟机克隆对话框中,根据实际情况及下方表格内容,修改虚拟机参数 在弹出的虚拟机克隆对话框中,根据实际情况及下方表格内容,修改虚拟机参数
|参数|值|说明| |参数|值|说明|
|--|--|--| |--|--|--|
|目标节点|node01|当前 PVE 服务器节点| |目标节点|node01|当前 PVE 服务器节点|
|VM ID|501|可自由定义,不能与现存虚拟机 `VM ID` 相同| |VM ID|201|可自由定义,不能与现存虚拟机 `VM ID` 相同|
|名称|DNS01|可自由定义,`Cloud-Init` 将使用该名称作为虚拟机 `hostname` | |名称|DNS01|可自由定义,`Cloud-Init` 将使用该名称作为虚拟机 `hostname` |
|模式|完整克隆|选择虚拟机的克隆模式| |模式|完整克隆|选择虚拟机的克隆模式|
|目标存储|local-lvm|克隆出的虚拟机文件存储位置| |目标存储|local-lvm|克隆出的虚拟机文件存储位置|
![克隆虚拟机参数](img/p06/vm_clone_vmid.png) 修改参数后,点击 `克隆` ,即可使用该模板克隆出新的虚拟机。
参数修改完成后,点击 `克隆` 按钮即可使用该模板克隆出新的虚拟机。 ![克隆虚拟机参数](img/p06/vm_clone_vmid.jpeg)
## 2.调整新虚拟机Cloud-Init
## 2.调整 Cloud-Init
克隆出来的虚拟机的 `Cloud-Init` 参数默认与模板完全一致。 克隆出来的虚拟机的 `Cloud-Init` 参数默认与模板完全一致。
根据之前的网络规划,内网 DNS 服务器 IP 地址分别为: 根据 **内部网络地址** 规划,内网 DNS 服务器 IP 地址分别为:
- `172.16.1.2/24 (fdac::2/64)`
- `172.16.1.3/24 (fdac::3/64)`
因此需要调整新虚拟机的 `Cloud-Init` 参数: - `172.16.1.2/24 (fdac::2/64)`
![调整新虚拟机Cloud-Init](img/p06/vm_clone_ci.png) - `172.16.1.3/24 (fdac::3/64)`
因此需要调整新虚拟机的 `Cloud-Init` 参数。
- `DNS服务器` 参数为 `172.16.1.3 fdac::3 127.0.0.1`
- `IP配置` 中的 IPv4 地址参数为 `172.16.1.2/24` ,网关保持 `172.16.1.1` 不变 - `IP配置` 中的 IPv4 地址参数为 `172.16.1.2/24` ,网关保持 `172.16.1.1` 不变
- `IP配置` 中的 IPv6 地址参数为 `fdac::2/64` ,网关保持为空 - `IP配置` 中的 IPv6 地址参数为 `fdac::2/64` ,网关保持为空
这样设置的用意是,让内网两台 DNS 服务器相互提供 DNS 服务 需要注意的是,如果修改了 `用户` 参数,相当于新建了一个系统管理员,之前设置的 `oh-my-zsh` 需要在新管理员下重新设置
但如果内网中仅需一台 DNS 服务器,则 `DNS服务器` 参数可设为本机地址,即 `172.16.1.2 fdac::2 127.0.0.1` ![调整新虚拟机Cloud-Init](img/p06/vm_clone_ci.jpeg)
此处需要注意的是,如果修改了 `用户` 参数,相当于新建了一个系统管理员,之前设置的 `oh-my-zsh` 需要在新管理员下重新设置。 ## 3.调整配置参数
## 3.调整新虚拟机配置参数 在 [04.PVE创建模板虚拟机](./04.PVE创建模板虚拟机.md) 中提到过,新虚拟机需要修改配置参数才能自动启动。
在创建模板虚拟机的文章中有提到过,新虚拟机需要修改 [配置参数](./04.PVE创建模板虚拟机.md#3调整虚拟机配置参数) 才能自动启动 进入左侧虚拟机 `选项` 菜单,将虚拟机的 `开机自启动` 设置为 `是`
将新虚拟机的 `开机自启动` 设置为 `是` ![克隆虚拟机自动启动](img/p06/vm_clone_autostart.jpeg)
![克隆虚拟机自动启动](img/p06/vm_clone_autostart.png) 鼠标 **双击** `启动/关机顺序` 选项,可调整新虚拟机自动开机参数。
鼠标 **双击** `启动/关机顺序` 选项,调整新虚拟机的自动开机参数: `启动/关机顺序``2` ,表示该虚拟机第 `2` 个启动,倒数第 `2` 个关机。
![克隆虚拟机自动启动顺序](img/p06/vm_clone_autostart_order.png) `启动延时``10` ,表示该虚拟机在 PVE 启动后,延迟 `10` 秒自行启动。
`启动/关机顺序``2` ,表示该虚拟机第二个启动,倒数第二个关机。 ![克隆虚拟机自动启动顺序](img/p06/vm_clone_autostart_order.jpeg)
`启动延时``15` ,表示该虚拟机在 PVE 启动完成后,延迟 15 秒自行启动。
## 4.安装 Adguard ## 4.安装 Adguard
Adguard Home 将采用 `snap` 形式安装,Adguard Home 安装完成后,先停止其服务: 设置完成后,将该虚拟机开机,并使用 SSH 工具登录。
Adguard Home 将采用 `snap` 形式安装,逐行执行以下命令。
```bash ```bash
## 安装 snap ## 安装 snap
sudo apt install snapd $ sudo apt install snapd
## 安装 Adguard Home ## 安装 Adguard Home
sudo snap install adguard-home $ sudo snap install adguard-home
## 停止 Adguard Home
sudo snap stop adguard-home
``` ```
### 4.1.配置Snap自动更新 ### 4.1.配置Snap自动更新
@@ -81,17 +79,17 @@ sudo snap stop adguard-home
```bash ```bash
## 显示当前 Snap 自动更新设置 ## 显示当前 Snap 自动更新设置
sudo snap refresh --time $ sudo snap refresh --time
``` ```
将 Snap 自动更新时间设置为每天 `2:30-3:30``14:30-15:30` 两个时间段: 将 Snap 自动更新时间设置为每天 `2:30-3:30``14:30-15:30` 两个时间段:
```bash ```bash
## 修改 Snap 自动更新时间 ## 修改 Snap 自动更新时间
sudo snap set system refresh.timer=2:30-3:30,14:30-15:30 $ sudo snap set system refresh.timer=2:30-3:30,14:30-15:30
## 其他 Snap 自动更新时间设置语法参考 ## 其他 Snap 自动更新时间设置语法参考
sudo snap set system refresh.timer=mon,2:30,,fri,2:30 $ sudo snap set system refresh.timer=mon,2:30,,fri,2:30
``` ```
### 4.2.配置定时任务 ### 4.2.配置定时任务
@@ -100,10 +98,10 @@ sudo snap set system refresh.timer=mon,2:30,,fri,2:30
```bash ```bash
## 查看系统定时任务 ## 查看系统定时任务
sudo crontab -l $ sudo crontab -l
## 编辑系统定时任务,编辑器选择 nano ## 编辑系统定时任务,编辑器选择 nano
sudo crontab -e $ sudo crontab -e
## 定时重启 Snap 服务、操作系统 ## 定时重启 Snap 服务、操作系统
0 5 * * * /usr/bin/snap restart adguard-home 0 5 * * * /usr/bin/snap restart adguard-home
Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB