Server 15 ,VMware ESXi 实战指南:Ubuntu 20.04.6 版本虚拟机静态 IP 配置、分辨率固定及远程访问实践

目录

前言
[一、静态 IP 配置](#一、静态 IP 配置)
[1.1 前提准备](#1.1 前提准备)
[1.2 编辑 netplan 配置文件](#1.2 编辑 netplan 配置文件)
[1.3 配置静态 IP 参数](#1.3 配置静态 IP 参数)
[1.4 应用配置并验证](#1.4 应用配置并验证)
[1.5 关键说明](#1.5 关键说明)
二、虚拟机分辨率
[2.1 ESXi 虚拟机默认分辨率](#2.1 ESXi 虚拟机默认分辨率)
[2.2 远程桌面软件影响](#2.2 远程桌面软件影响)
[2.3 缺少图形驱动与工具支持](#2.3 缺少图形驱动与工具支持)
三、分辨率的解决方案
[3.1 安装 Open VM Tools 工具](#3.1 安装 Open VM Tools 工具)
[3.2 设置固定分辨率](#3.2 设置固定分辨率)
[3.3 固定 GRUB 分辨率参数](#3.3 固定 GRUB 分辨率参数)
[3.4 防止 ToDesk 回退分辨率](#3.4 防止 ToDesk 回退分辨率)
四、免密操作优化
[4.1 配置免密 sudo 提升效率](#4.1 配置免密 sudo 提升效率)
[4.2 网络问题注意事项](#4.2 网络问题注意事项)
[4.3 远程访问方式建议](#4.3 远程访问方式建议)
五、本文总结
六、更多操作

前言

在虚拟化环境中,Ubuntu 系统 凭借其稳定性和兼容性,广泛应用于 VMware ESXi 平台 的服务器与桌面场景。然而用户在实际操作中常面临双重挑战:系统方面,依赖 DHCP 分配的 IP 地址易变动,导致远程连接频繁中断;另一方面,通过 ToDesk 等工具远程访问时,虚拟机分辨率常会被重置为 638x394 等低值,且断开连接后无法自动恢复,严重影响远程开发、桌面管理及测试工作的效率。

本文以 Ubuntu 20.04.6 为例,系统梳理 静态 IP 配置 方法与分辨率异常问题的解决方案,涵盖 网络参数固定驱动工具安装分辨率锁定自动化优化 等核心操作,为用户打造稳定、高效的虚拟化使用环境。

一、静态 IP 配置

Ubuntu 20 04 6 版本服务器静态IP设置: 以下是 Ubuntu 20.04.6 服务器静态 IP 设置的总结步骤,核心目的是通过netplan工具手动指定 IP,确保重启后 IP 固定不变:

1.1 前提准备

  1. 确认网络接口名称 :执行 ip addr 命令,记录接口名(如示例中的 ens33)。
  2. 获取网关地址 :执行 ip route 命令,记录默认网关(如 192.168.110.1,以实际输出为准)。

1.2 编辑 netplan 配置文件

Ubuntu 20.04 默认使用netplan管理网络,配置文件位于/etc/netplan/目录下,文件名通常为00-installer-config.yaml(或类似名称,以实际为准)。

进入配置文件目录:/etc/netplan/,通过 ls /etc/netplan/ 查看实际配置文件名(通常为 00-installer-config.yaml 或类似)。用管理员权限编辑文件:

sudo nano /etc/netplan/[配置文件名] # 替换为实际文件名,如00-installer-config.yaml

例如:

bash 复制代码
sudo nano /etc/netplan/00-installer-config.yaml

1.3 配置静态 IP 参数

将原 DHCP 配置(dhcp4: yes)修改为静态 IP 配置(严格遵循 YAML 缩进,用空格而非 Tab):

bash 复制代码
network:
  ethernets:
    ens33:  # 替换为你的网络接口名(如ens33)
      dhcp4: no  # 关闭DHCP
      addresses: [192.168.110.127/24]  # 静态IP及子网掩码(/24对应255.255.255.0)
      gateway4: 192.168.110.1  # 替换为步骤1中获取的网关
      nameservers:
        addresses: [114.114.114.114, 8.8.8.8]  # DNS服务器(可填网关或公共DNS)
  version: 2

1.4 应用配置并验证

  1. 保存文件(nano中按 Ctrl+O 保存,Ctrl+X 退出),执行以下命令使配置生效:

    bash

    复制代码
    sudo netplan apply
  2. 验证 IP 是否生效:

    bash

    复制代码
    ip addr show ens33  # 替换为你的接口名,查看是否显示192.168.110.127
  3. 测试网络连通性:

    bash

    复制代码
    ping 网关IP  # 如ping 192.168.110.1
    ping baidu.com  # 测试外网访问(依赖DNS配置)

1.5 关键说明

  1. 配置后重启系统 / 网络服务,IP 会保持固定(192.168.110.127),不再依赖 DHCP。
  2. 若配置错误导致断网,可通过 sudo netplan --debug apply 查看错误日志,或恢复原配置文件重新修改。
  3. 网关和 DNS 需与实际网络环境一致(如路由器 IP 通常为网关),否则可能无法联网。

二、虚拟机分辨率

虚拟机分辨率问题分析

2.1 ESXi 虚拟机默认分辨率

VMware ESXi 上,虚拟机的默认分辨率依赖于 虚拟显卡驱动

  • 未安装 VMware Tools/Open VM Tools 时,Ubuntu 使用 vesa 或 fbdev 驱动,分辨率非常低,通常 640x480 或 638x394。

  • 即使在 显示设置 中手动调整,高分辨率在断开远程会话后也会回退。

2.2 远程桌面软件影响

  1. ToDesk、TeamViewer 等软件会根据客户端窗口动态调整远程分辨率。

  2. 当客户端缩放或断开连接时,虚拟机可能回退到低分辨率。

  3. 这导致 远程桌面体验不一致,尤其是需要固定 1920x1080 的场景。

2.3 缺少图形驱动与工具支持

  1. Ubuntu 默认开源驱动无法充分利用 VMware 虚拟显卡

  2. 安装 open-vm-toolsopen-vm-tools-desktop 后,系统可支持 动态分辨率高分辨率选项

  3. 如果不安装该工具,分辨率调整可能无效或断开远程后无法恢复。


三、分辨率的解决方案

虚拟机分辨率解决方案

3.1 安装 Open VM Tools 工具

更新本地软件包列表

bash 复制代码
sudo apt update

安装VMware虚拟机增强工具

bash 复制代码
sudo apt install open-vm-tools open-vm-tools-desktop -y

重启系统,使新安装的VMware Tools生效

bash 复制代码
sudo reboot
  1. open-vm-tools:提供基础虚拟机功能

  2. open-vm-tools-desktop:启用桌面环境下动态分辨率

  3. 安装完成后,Ubuntu 可识别 虚拟显卡 并支持 1920x1080

注意事项

  • 安装时需确保网络畅通,如果国内镜像源不可达,可切换至官方源。

  • 安装后必须 重启虚拟机,否则工具不会生效。

3.2 设置固定分辨率

查看显示器名称和当前分辨率:

bash 复制代码
xrandr

添加 1920x1080 分辨率(如未显示):

bash 复制代码
cvt 1920 1080
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode default "1920x1080_60.00"
xrandr --output default --mode "1920x1080_60.00"

验证分辨率生效:

bash 复制代码
xrandr
  • 应显示 current 1920 x 1080

注意事项

  • 虚拟显示器名称可能不同,通常为 defaultVirtual1

  • 若断开 ToDesk 后回退,可结合 GRUB 固定分辨率或开机脚本恢复。

3.3 固定 GRUB 分辨率参数

编辑 grub 配置文件:

bash 复制代码
sudo nano /etc/default/grub

修改或添加:

bash 复制代码
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=1920x1080@60"

更新 grub

bash 复制代码
sudo update-grub

重启 grub

bash 复制代码
sudo reboot

注意事项

  • 如果 nano 无法复制粘贴,可使用 sudoeditvi

  • 修改后必须执行 update-grub 并重启系统。

3.4 防止 ToDesk 回退分辨率

  • ToDesk 会自动调整分辨率,可在 ToDesk 设置 中关闭 自动调整远程分辨率

  • 也可在虚拟机上创建 开机脚本 自动恢复分辨率:

bash 复制代码
#!/bin/bash
xrandr --output default --mode 1920x1080
  • 保存为 /usr/local/bin/fix-resolution.sh

  • 创建 systemd 服务自动执行:

bash 复制代码
sudo nano /etc/systemd/system/fix-resolution.service

内容:

bash 复制代码
[Unit]
Description=Fix screen resolution at boot
After=graphical.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/fix-resolution.sh

[Install]
WantedBy=graphical.target

启用服务:

重新加载 systemd 配置,使修改后的服务文件生效

bash 复制代码
sudo systemctl daemon-reload

设置服务开机自启

bash 复制代码
sudo systemctl enable fix-resolution.service

四、免密操作优化

Ubuntu 系统服务,使用 sudo 执行命令时系统要求输入用户密码 。这是 Linux 的安全机制,默认情况下普通用户执行需要管理员权限的命令都会要求输入密码。

Linux 的 sudo 默认策略:出于安全考虑,执行特权命令必须验证身份。Ubuntu 默认会记住密码 15 分钟 (可以通过 sudo -v 延长),超过时间就会再次要求输入。如果你每次执行脚本或者命令都要输入密码,是因为:脚本里每条命令都需要 sudo / 当前用户没有配置免密 sudo 。解决方法,就是对某个用户免密 sudo(最常用)

4.1 配置免密 sudo 提升效率

编辑 sudoers 文件:

bash 复制代码
sudo visudo

添加:

bash 复制代码
njust1021 ALL=(ALL) NOPASSWD:ALL
  • 允许用户执行所有 sudo 命令 不再输入密码

  • 可选:仅针对特定命令免密,例如:

bash 复制代码
njust1021 ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/reboot

4.2 网络问题注意事项

  1. 执行 apt update 时,如出现 cn.archive.ubuntu.com 连接超时,可能是 IPv6 不可达 或镜像源问题。

  2. 可切换到官方源或国内镜像,如 阿里云镜像

  3. 网络问题不会影响 Open VM Tools 安装,但可能影响系统升级。

4.3 远程访问方式建议

  1. 对高分辨率要求严格的场景,推荐使用 ESXi Web 控制台或 VMware Remote Console

  2. ToDesk 可用于临时远程操作,结合 开机脚本 可自动恢复分辨率。

  3. 对开发和测试环境,建议配置 开机自动修复脚本,保证分辨率稳定。


五、本文总结

通过本文的分步操作,用户可在 VMware ESXi 平台的 Ubuntu 20.04.6 虚拟机上同时实现两大核心目标:

  1. 通过 netplan 工具 成功配置 静态 IP,彻底解决 IP 动态变动导致的远程连接不稳定问题,确保网关、DNS 参数与实际网络环境精准匹配;
  2. 通过安装 Open VM Tools 驱动 、手动添加目标分辨率、配置 GRUB 启动参数 及创建 系统服务 等方式,彻底解决远程软件导致的分辨率重置与回退问题,实现 1920x1080 等常用分辨率的持久化。

此外,文中补充的 免密 sudo 配置网络镜像源选择远程访问方式建议,进一步提升了操作效率与安全性。整套方案兼顾网络稳定性与显示效果,为远程办公、服务器运维及测试场景提供了可靠的技术支撑,有效优化了 Ubuntu 虚拟机在虚拟化环境中的使用体验。


六、更多操作

请看,Server 个人专栏

Serverhttps://blog.csdn.net/weixin_65793170/category_12128287.html

相关推荐
小马哥learn3 小时前
使用 WebSocket 实现手机控制端与电脑展示端的实时通信,支持断线重连、状态同步和双向数据交互。(最优方案)
1024程序员节
Eiceblue3 小时前
如何通过 C# 高效读写 Excel 工作表
c#·visual studio·1024程序员节
海林OneMoreTime3 小时前
Spring Boot 配置优先级
1024程序员节
张人玉3 小时前
WPF 触发器详解:定义、种类与示例
c#·wpf·1024程序员节·布局控件
汪汪大队u3 小时前
IPv4与IPv6的对比
运维·网络·智能路由器
Slow菜鸟3 小时前
NVM 安装 (Windows版本)
nvm·1024程序员节
凉虾皮3 小时前
2024包河初中组
学习·算法·1024程序员节
jdlxx_dongfangxing3 小时前
C++ STL 容器与算法详解
开发语言·c++·1024程序员节
PandaCave3 小时前
记录画图笔记
1024程序员节