Skip to content

Ubuntu 22.04

应用配置

切换源

bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)

系统初始化配置

bash <(curl -sSL https://dev.kubectl.net/linux/system/debian/system_init.sh)

安装docker

bash <(curl -SL https://dev.kubectl.net/docker/install/install_apt.sh) tsinghua

基础配置

关闭swap分区

vim /etc/fstab 

注释掉swap分区的行

# /swapfile none swap sw 0 0

修改时区

timedatectl set-timezone Asia/Shanghai

验证

date -R

修改主机名

hostnamectl set-hostname new-hostname

配置DNS

step1: 停止 systemd-resovled 服务

systemctl stop systemd-resolved.service
systemctl disable systemd-resolved.service

step2: 备份文件

mv /etc/resolv.conf /etc/resolv.conf.bak

step3: 创建新的 resolv.conf 文件

1
2
3
cat <<EOF > /etc/resolv.conf
nameserver 223.5.5.5
EOF

配置SSH

sed -i 's/#PermitRootLogin prohibit-password/#PermitRootLogin prohibit-password\nPermitRootLogin yes/' /etc/ssh/sshd_config
systemctl restart sshd

网卡配置

禁止cloud-init

touch /etc/cloud/cloud-init.disabled

配置网卡

先备份之前的网卡配置

vim /etc/netplan/00-netplan.yaml
# This is the network config written by 'subiquity'
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
      optional: true
      addresses:
        - 192.168.50.89/24
      nameservers:
        addresses:
          - 223.5.5.5
          - 119.29.29.29
        search: [ ]
      routes:
        - to: default
          via: 192.168.50.1
          metric: 89
  wifis:
    wlo1:
      optional: true
      access-points:
        wifi-ssid:
          password: wifi-password
      dhcp4: true
      dhcp4-overrides:
        route-metric: 124
      # 注释掉了静态IP配置
      # addresses:
      #   - 192.168.50.124/24
      # nameservers:
      #   addresses:
      #     - 223.5.5.5
      #     - 119.29.29.29
      #   search: [ ]
      # routes:
      #   - to: default
      #     via: 192.168.50.1
      #     metric: 123

其中 enp1s0 是有线网卡,wlo1 是无线网卡。

最后 执行

netplan apply

常见问题

网卡文件权限

Q: Permissions for /etc/netplan/00-netplan.yaml are too open

A: chmod 600 /etc/netplan/00-netplan.yaml

Open vSwitch 警告

Q: WARNING:root:Cannot call Open vSwitch: ovsdb-server.service is not running.

A: 这个警告是因为系统尝试使用Open vSwitch但未找到相关服务。解决方法有两种:

  1. 如果不需要OVS功能,可以忽略此警告,它不会影响网络配置的正常应用。
  2. 如果确实需要OVS功能,需要安装Open vSwitch:
1
2
3
sudo apt install openvswitch-switch
sudo systemctl start ovsdb-server.service
sudo systemctl enable ovsdb-server.service

也可以在netplan配置中明确指定使用networkd作为渲染器:

1
2
3
4
network:
  version: 2
  renderer: networkd
  # 其他配置...

开机启动卡住

Q: A start job is running for hait for Network to be Configured (1min 40s / no)

A: 在文件systemd-networkd-wait-online.service的service部分添加超时的字段

vim /etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
TimeoutStartSec = 2sec
[Unit]
Description = Wait for Network to be Configured
Documentation = man:systemd-networkd-wait-online.service(8)
DefaultDependencies = no
Conflicts = shutdown.target
Requires = systemd-networkd.service
After = systemd-networkd.service
Before = network-online.target shutdown.target

[Service]
Type = oneshot
ExecStart = /lib/systemd/systemd-networkd-wait-online
RemainAfterExit = yes

#添加上超时时间
TimeoutStartSec = 2sec

[Install]
WantedBy = network-online.target

在网卡上添加optional: true选项