Archived
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
861eeeb8f3 | ||
|
|
26bfbbaf82 | ||
|
|
bc8faee58e | ||
|
|
fcb86be893 | ||
|
|
167cede538 | ||
|
|
90d5c87956 | ||
|
|
d2ec02ea8c | ||
|
|
9a86b6881e | ||
|
|
7e32a67130 | ||
|
|
72c213b963 | ||
|
|
197bc34e12 | ||
|
|
022a7dd510 | ||
|
|
1052c721f4 |
+4
-2
@@ -19,7 +19,9 @@
|
||||
|
||||

|
||||
|
||||
确认 `C states` 选项为 `Enabled` 状态:
|
||||
检查 `C states` , **默认** 选项为 `Enabled` 状态。
|
||||
|
||||
如果遇到网卡 **无法跑满** 的情况,可以尝试将该选项关闭:
|
||||
|
||||

|
||||
|
||||
@@ -27,7 +29,7 @@
|
||||
|
||||

|
||||
|
||||
确认以下内容
|
||||
检查以下内容,适当调整以改变功耗墙:
|
||||
- `Power Limit 1 Override` 选项:`Enabled`
|
||||
- `Power Limit 1` 选项:`15000`
|
||||
- `Power Limit 1 Time Window` 选项:为最大 `128`
|
||||
|
||||
+9
-4
@@ -42,17 +42,19 @@ sed -i 's|^deb http://security.debian.org|deb https://mirrors.ustc.edu.cn/debian
|
||||
cat /etc/apt/sources.list
|
||||
```
|
||||
|
||||
如果输出结果中有 USTC 的镜像地址,则表示命令已经正确执行:
|
||||
如果输出结果中有 USTC 的镜像地址,则表示命令已经正确执行。
|
||||
|
||||
如果希望能更新 CPU 的 `microcode` ,则需要手动添加镜像的 `non-free` 参数,完整系统源示例如下:
|
||||
|
||||
```bash
|
||||
## 输出内容参考:
|
||||
|
||||
deb https://mirrors.ustc.edu.cn/debian bullseye main contrib
|
||||
deb https://mirrors.ustc.edu.cn/debian bullseye main contrib non-free
|
||||
|
||||
deb https://mirrors.ustc.edu.cn/debian bullseye-updates main contrib
|
||||
deb https://mirrors.ustc.edu.cn/debian bullseye-updates main contrib non-free
|
||||
|
||||
# security updates
|
||||
deb https://mirrors.ustc.edu.cn/debian-security bullseye-security main contrib
|
||||
deb https://mirrors.ustc.edu.cn/debian-security bullseye-security main contrib non-free
|
||||
```
|
||||
|
||||
此处我放出 Debian Bullseye 的完整镜像源以供参考, **非常不建议** 将 PVE 的系统源替换成完整的 Debian 源,以避免出现问题。
|
||||
@@ -173,6 +175,9 @@ apt install iperf iperf3 iftop net-tools ethtool
|
||||
|
||||
## 安装CPU调度调整工具
|
||||
apt install cpufrequtils
|
||||
|
||||
## 根据CPU厂商安装CPU微码工具
|
||||
apt install intel-microcode (amd64-microcode)
|
||||
```
|
||||
|
||||
其中 `fail2ban` 和 `unattended-upgrades` 为两个服务,后续会对其进行配置。
|
||||
|
||||
+88
-24
@@ -102,7 +102,7 @@ sudo apt install qemu-guest-agent zsh git curl htop lm-sensors fail2ban vim tmux
|
||||
sudo apt install unattended-upgrades apt-listchanges powermgmt-base python3-gi
|
||||
|
||||
## 安装网络工具
|
||||
sudo apt install iperf iperf3 iftop lsof dnsutils
|
||||
sudo apt install iperf iperf3 iftop lsof ldnsutils dhcpcd5
|
||||
|
||||
## 安装 snap
|
||||
sudo apt install snapd
|
||||
@@ -120,9 +120,9 @@ sudo snap stop adguard-home
|
||||
|
||||
### 1.3.配置系统网卡
|
||||
|
||||
使用 `Cloud-Init` 并给虚拟机分配了 IP 地址后,虚拟机的网卡还会从路由器的 DHCP 再获取一个 IP 地址。
|
||||
使用 `Cloud-Init` 并给虚拟机分配了静态 IPv4 地址后,虚拟机的网卡还会从路由器的 DHCP 再获取一个 IPv4 地址。
|
||||
|
||||
这个功能在给虚拟机添加网卡设备时很有用,但本 Debian 虚拟机模板的使用场景只需要一个静态 IP 地址,因此需要禁用网卡自动获取 IP 地址的功能。
|
||||
这个功能在给虚拟机添加网卡设备时很有用,但本 Debian 虚拟机模板的使用场景只需要一个静态 IPv4 地址,因此需要禁用网卡自动获取 IPv4 地址的功能。
|
||||
|
||||
执行以下命令对网卡的配置文件进行修改:
|
||||
|
||||
@@ -141,21 +141,74 @@ sudo nano /etc/network/interfaces
|
||||
# and /etc/network/cloud-ifupdown-helper. Dynamically generated
|
||||
# configuration fragments are stored in /run:
|
||||
# source-directory /run/network/interfaces.d ## 在这行前面增加注释符 # 来注释
|
||||
|
||||
```
|
||||
|
||||
将配置保存后,可以将模板虚拟机重启。
|
||||
|
||||
在系统重启完成后,执行以下命令检查系统的 IP 地址状态:
|
||||
在系统重启完成后,执行以下命令检查系统的 IPv4 地址状态:
|
||||
|
||||
```bash
|
||||
## 检查系统 IP 地址状态
|
||||
ip a
|
||||
```
|
||||
|
||||
如果系统网卡有且仅有一个 IP 地址,且该 IP 地址与 `Cloud-Init` 中设置的 IP 地址相同,则表示系统网卡已正确设置。
|
||||
如果系统网卡有且仅有一个 IPv4 地址,且该 IPv4 地址与 `Cloud-Init` 中设置的 IPv4 地址相同,则表示系统网卡已正确设置。
|
||||
|
||||
### 1.4.调整系统内核参数
|
||||
### 1.4.配置网卡IPv6
|
||||
|
||||
使用 `Cloud-Init` 并给虚拟机分配了静态 IPv6 地址后,该地址为私有 ULA 地址,此时虚拟机的网卡不会以 `SLAAC` 的方式配置 IPv6 地址。
|
||||
|
||||
如果上级路由器没有设置 `NAT66` ,且将公网 GUA 地址的 `Prefix` 通告到内网时,虚拟机将无法自动生成 GUA 地址,从而导致无法访问 IPv6 网络。
|
||||
|
||||
因此引入 `dhcpcd` 工具,在正确配置虚拟机 IPv6 地址的同时,保持与 `Cloud-Init` 网卡配置的兼容性。
|
||||
|
||||
执行以下命令对网卡的配置文件进行修改:
|
||||
|
||||
```bash
|
||||
## 备份 dhcpcd 配置文件
|
||||
sudo mv /etc/dhcpcd.conf /etc/dhcpcd.conf.bak
|
||||
|
||||
## 修改 dhcpcd 配置文件
|
||||
sudo nano /etc/dhcpcd.conf
|
||||
```
|
||||
|
||||
在编辑器对话框中输入以下内容,注意命令中间的空格:
|
||||
|
||||
```bash
|
||||
# This configuration file is customized by fox
|
||||
# Optimize dhcpcd parameters for dns server
|
||||
|
||||
# Only configure IPv6
|
||||
ipv6only
|
||||
|
||||
# Inform the DHCP server of our hostname for DDNS.
|
||||
hostname
|
||||
|
||||
# A list of options to request from the DHCP server.
|
||||
nooption domain_name_servers, domain_name, domain_search, host_name
|
||||
option classless_static_routes
|
||||
|
||||
# Respect the network MTU.
|
||||
option interface_mtu
|
||||
|
||||
# A ServerID is required by RFC2131.
|
||||
require dhcp_server_identifier
|
||||
|
||||
# Generate Stable Private IPv6 Addresses based from the DUID
|
||||
slaac private
|
||||
|
||||
# Don't send any ARP requests.
|
||||
noarp
|
||||
```
|
||||
|
||||
保存该配置文件后,重启系统或者执行以下命令重启 `dhcpcd` 服务:
|
||||
|
||||
```bash
|
||||
## 重启 dhcpcd 服务
|
||||
sudo systemctl restart dhcpcd.service
|
||||
```
|
||||
|
||||
### 1.5.调整系统内核参数
|
||||
|
||||
由于该 Debian 虚拟机模板将用于克隆内网 DNS 服务器,因此需要调整一部分系统内核参数来简单优化性能。
|
||||
|
||||
@@ -163,26 +216,36 @@ ip a
|
||||
|
||||
```bash
|
||||
## 调整系统内核参数
|
||||
sudo nano /etc/sysctl.conf
|
||||
sudo nano /etc/sysctl.d/99-sysctl.conf
|
||||
```
|
||||
|
||||
在配置文件末尾输入以下内容,注意命令中间的空格:
|
||||
|
||||
```bash
|
||||
# This configuration file is customized by fox
|
||||
# Optimize system parameters
|
||||
|
||||
kernel.panic = 20
|
||||
kernel.panic_on_oops = 1
|
||||
|
||||
net.core.default_qdisc = fq_codel
|
||||
net.ipv4.tcp_congestion_control = bbr
|
||||
|
||||
net.ipv4.tcp_fastopen = 1
|
||||
# Other adjustable system parameters
|
||||
|
||||
net.ipv4.conf.all.log_martians = 1
|
||||
|
||||
net.ipv4.icmp_ratelimit = 100
|
||||
net.ipv4.igmp_max_memberships = 100
|
||||
|
||||
net.ipv4.tcp_fin_timeout = 30
|
||||
net.ipv4.tcp_keepalive_time = 120
|
||||
net.ipv4.tcp_max_orphans = 4096
|
||||
net.ipv4.tcp_max_tw_buckets = 4096
|
||||
net.ipv4.tcp_syncookies = 1
|
||||
net.ipv4.tcp_notsent_lowat = 131072
|
||||
|
||||
net.ipv4.tcp_ecn = 1
|
||||
net.ipv4.tcp_sack = 1
|
||||
net.ipv4.tcp_dsack = 1
|
||||
|
||||
net.ipv4.icmp_ratelimit = 50
|
||||
|
||||
kernel.panic = 20
|
||||
net.ipv6.conf.all.use_tempaddr = 0
|
||||
net.ipv6.conf.default.use_tempaddr = 0
|
||||
```
|
||||
|
||||
保存该配置文件后,重启系统或者执行以下命令让配置生效:
|
||||
@@ -192,7 +255,7 @@ kernel.panic = 20
|
||||
sudo sysctl -f
|
||||
```
|
||||
|
||||
### 1.5.调整系统时间
|
||||
### 1.6.调整系统时间
|
||||
|
||||
默认情况下的 Debian 云镜像的系统时间可能不正确,执行以下命令将系统时区设置为中国时区:
|
||||
|
||||
@@ -257,7 +320,7 @@ MS Name/IP address Stratum Poll Reach LastRx Last sample
|
||||
^* 203.107.6.88 2 10 377 105 -1005us[-1094us] +/- 19ms
|
||||
```
|
||||
|
||||
### 1.6.配置系统自动更新
|
||||
### 1.7.配置系统自动更新
|
||||
|
||||
配置 Debian 模板虚拟机的系统自动更新,与配置 PVE 系统自动更新方法基本一致,参阅 [PVE系统自动更新](./3.PVE系统调整.md#5pve系统自动更新) 。
|
||||
|
||||
@@ -350,7 +413,7 @@ sudo systemctl status apt-daily-upgrade.timer
|
||||
|
||||
在输出结果中看到系统自动更新的触发时间为凌晨 `02:00` 则表示设置正确。
|
||||
|
||||
### 1.7.配置Snap自动更新
|
||||
### 1.8.配置Snap自动更新
|
||||
|
||||
先查看 Snap 当前的更新策略,执行以下命令:
|
||||
|
||||
@@ -369,7 +432,7 @@ sudo snap set system refresh.timer=2:30-3:30,14:30-15:30
|
||||
sudo snap set system refresh.timer=mon,2:30,,fri,2:30
|
||||
```
|
||||
|
||||
### 1.8.配置系统定时任务
|
||||
### 1.9.配置系统定时任务
|
||||
|
||||
本步骤为可选操作,主要设置定时重启 Snap 服务以及操作系统。
|
||||
|
||||
@@ -385,7 +448,7 @@ sudo crontab -e
|
||||
0 6 8,24 * * /usr/sbin/reboot
|
||||
```
|
||||
|
||||
### 1.9.配置ZSH
|
||||
### 1.10.配置ZSH
|
||||
|
||||
`Zsh` 是比 `Bash` 好用的 `Shell` 程序,使用 `oh-my-zsh` 进行配置:
|
||||
|
||||
@@ -405,7 +468,7 @@ Time to change your default shell to zsh:
|
||||
Do you want to change your default shell to zsh? [Y/n] y
|
||||
```
|
||||
|
||||
### 1.10.清理系统
|
||||
### 1.11.清理系统
|
||||
|
||||
Debian 模板虚拟机已经配置完成,在将其转换为模板前需要对系统进行清理。
|
||||
|
||||
@@ -505,8 +568,9 @@ sudo vim /etc/resolv.conf
|
||||
|
||||
```bash
|
||||
search fox.lab
|
||||
nameserver 127.0.0.1
|
||||
nameserver 172.16.1.3
|
||||
nameserver fc00::3
|
||||
nameserver 127.0.0.1
|
||||
```
|
||||
|
||||
Debian 普通镜像使用 `systemd-timesyncd.service` 来同步系统时间,检查服务状态:
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
# This configuration file is customized by fox
|
||||
# Optimize dhcpcd parameters for dns server
|
||||
|
||||
# Only configure IPv6
|
||||
ipv6only
|
||||
|
||||
# Inform the DHCP server of our hostname for DDNS.
|
||||
hostname
|
||||
|
||||
# A list of options to request from the DHCP server.
|
||||
nooption domain_name_servers, domain_name, domain_search, host_name
|
||||
option classless_static_routes
|
||||
|
||||
# Respect the network MTU.
|
||||
option interface_mtu
|
||||
|
||||
# A ServerID is required by RFC2131.
|
||||
require dhcp_server_identifier
|
||||
|
||||
# Generate Stable Private IPv6 Addresses based from the DUID
|
||||
slaac private
|
||||
|
||||
# Don't send any ARP requests.
|
||||
noarp
|
||||
Reference in New Issue
Block a user