1001 字
5 分钟
PVE重装 Ubuntu 22.04 Server 及开启 Root SSH

PVE重装 Ubuntu 22.04 Server 及开启 Root SSH 登录完全指南#

背景: 原 PVE 下的 101 主机(CentOS 7.9)已停更,决定将其删除,重新安装为 Ubuntu 22.04 Server目标

  1. 安装干净的系统(无桌面,纯命令行)。
  2. 配置静态 IP (192.168.5.201)。
  3. [核心] 允许直接使用 Root 账号密码进行 SSH 登录(内网自用)。

第一阶段:安装 Ubuntu Server 避坑速记#

在 PVE 上挂载 ISO 并启动后,进入安装界面:

  1. Language: 选 English(避免中文乱码)。
  2. Installer update: 如果提示更新安装器,选 Continue without updating 即可。
  3. Keyboard: 默认 Done
  4. Type of Install: 选默认的 Ubuntu Server
  5. Network connections (配置静态 IP):
    • 选中网卡 (ens18) -> Edit IPv4 -> Manual
    • Subnet: 192.168.5.0/24 (注意:一定要带 /24)
    • Address: 192.168.5.201
    • Gateway: 192.168.5.1
    • Name servers: 223.5.5.5, 114.114.114.114
    • Search domains: 留空。
  6. Proxy: 留空,直接 Done。
  7. Mirror address: 默认即可,Done。
  8. Storage: 选中 [X] Use an entire disk,默认 LVM,Done -> Continue。
  9. Profile setup: 设置一个普通用户名(例如:admin)和密码(Root用户默认此时无法创建)。
  10. SSH Setup (关键):
    • 必须勾选[X] Install OpenSSH server(按空格键勾选)。
  11. Featured Server Snaps: 全都不选,保持系统干净,直接 Done。
  12. 等待安装: 完成后点击 Reboot Now
    • 注:PVE若卡在重启界面,需手动在硬件里移除 CD/DVD 的 ISO 并强制重启。

第二阶段:开启 Root SSH 登录(重中之重)#

Ubuntu 默认锁死了 Root 远程登录。安装完重启后,先用安装时设置的普通用户登录,然后按以下步骤操作。

1. 给 Root 设置密码#

默认 Root 没有密码,先设一个:

Terminal window
sudo passwd root
# 先输入当前普通用户的密码
# 然后连续输入两次你想给 Root 设置的新密码

2. 修改 SSH 配置(允许 Root 登录)#

方法 A:手动修改配置文件(传统方法)

编辑配置文件:

Terminal window
sudo nano /etc/ssh/sshd_config

在文件里找 PermitRootLoginPasswordAuthentication如果没有找到,或者全是带 # 的注释,直接按方向键到文件最底部,手写加上这两行:

PermitRootLogin yes
PasswordAuthentication yes
  • Ctrl + O 保存 -> 回车 -> Ctrl + X 退出。
  • 重启服务:sudo systemctl restart ssh

3. 终极解决方案(如果方法 A 无效)#

现象:明明改了配置文件,重启了服务,SSH 客户端连接 Root 依然报“密码错误 (Access Denied)”。 原因:Ubuntu 22.04+ 在 /etc/ssh/sshd_config.d/ 目录下有一个隐藏的高优先级配置文件(通常叫 50-cloud-init.conf),它覆盖了我们的修改。

✅ 无敌命令(直接复制粘贴执行): 这条命令会创建一个优先级最高的配置文件,强制开启 Root 和密码登录,并自动重启 SSH 服务。

Terminal window
echo -e "PermitRootLogin yes\nPasswordAuthentication yes" | sudo tee /etc/ssh/sshd_config.d/99-root-login.conf && sudo systemctl restart ssh

第三阶段:验证#

  1. 打开 SSH 客户端(如 FinalShell, Xshell)。
  2. 主机:192.168.5.201
  3. 用户:root
  4. 密码:[你刚才设置的密码]
  5. 连接成功! 🎉

附录:解决硬盘空间“减半”问题(LVM 扩容)#

现象: 在 PVE 给虚拟机分配了 25G(或更大)硬盘,安装时也选了 “Use an entire disk”,但进入系统后使用 df -h 查看,发现根目录只有一半空间(约 11G),剩下的一半凭空消失了。 使用 lsblk 检查,发现物理分区 sda3 是满的,但逻辑卷 ubuntu-lv 只有一半。

原因: Ubuntu Server 默认安装策略为了方便后续快照,只会分配 50% 的卷组空间给根目录,剩余 50% 留空。

解决方法(无需重启,无损扩容): 直接执行以下两条命令,即可将剩余空间全部“吃”回来:

1. 扩容逻辑卷(让 LVM 占用所有空闲空间)#

Terminal window
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv

看见 “successfully resized” 即为成功。

2. 刷新文件系统(让系统识别新空间)#

Terminal window
resize2fs /dev/ubuntu-vg/ubuntu-lv

3. 验证#

Terminal window
df -h

此时 Size 应显示为硬盘分配的总大小(约 23G)。

💡 特别提示: 此操作是在线无损的。对于已经运行很久、装满数据的旧机器,也可以直接运行这两条命令进行“原底扩容”,不会丢失数据,无需重装系统

PVE重装 Ubuntu 22.04 Server 及开启 Root SSH
https://blog.wlens.top/posts/pve重装-ubuntu-2204-server-及开启-root-ssh-登录完全指南/
作者
Lao Wang
发布于
2025-11-24
许可协议
CC BY-NC-SA 4.0