无法启动是虚拟机最常见的问题之一,需逐步排查硬件配置、引导顺序及文件系统完整性。
virsh domstate <虚拟机名>(KVM)查看状态,或检查VirtualBox设置中的CPU、内存分配是否符合要求。e2fsck -f -y /dev/sda1(替换为实际分区)修复,修复后重启。journalctl -xb或/var/log/libvirt/libvirtd.log(KVM)查看蓝屏日志,重点关注“kernel panic”“filesystem error”等关键词。网络不通是虚拟机常见问题,需区分虚拟机内部配置与宿主机/外部网络环境。
/etc/network/interfaces(传统方式)或/etc/netplan/*.yaml(Netplan),确保静态IP/网关/DNS配置正确(示例静态配置):auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
静态配置后需重启网络服务:sudo systemctl restart networking;若用DHCP,确保iface eth0 inet dhcp并重启服务。ip a查看接口是否获取到IP,ping 192.168.1.1(网关)测试内网连通性,ping www.baidu.com测试外网连通性。sudo systemctl stop iptables(若启用),或添加放行规则。性能下降通常与资源分配、存储配置或虚拟化设置有关。
top(CPU/内存)、df -h(磁盘空间)、iotop(磁盘IO)查看瓶颈,重点关注CPU占用率是否长期超过80%、内存是否耗尽。sudo systemctl stop bluetooth),使用systemctl disable <服务名>禁止开机自启。磁盘空间耗尽可能导致系统无法写入日志、安装软件或启动服务。
du -sh /* | sort -h查看各目录大小,删除无用的日志(/var/log)、缓存(/var/cache/apt/archives)或临时文件(/tmp),例如:sudo apt-get clean(清理APT缓存)、sudo rm -rf /var/log/*.gz(删除压缩的旧日志)。growpart和resize2fs命令,适用于ext4文件系统)。USB设备(如U盘、外置硬盘)无法在虚拟机中使用,需检查虚拟化工具配置。
sudo apt-get install open-vm-tools-desktop,重启虚拟机;sudo apt-get install virtualbox-guest-utils,重启虚拟机。vboxusers(VirtualBox)或vmware(VMware)组:sudo usermod -aG vboxusers <用户名>,注销后重新登录。系统日志是故障排查的“金钥匙”,可通过以下命令快速定位问题:
sudo tail -f /var/log/syslog(或journalctl -xf),关注“error”“warning”“fail”等关键词。journalctl -u <服务名> --since "1 hour ago"(如journalctl -u networking --since "1 hour ago"查看网络服务日志)。dmesg | grep -i "error",重点关注硬件驱动或内核模块的错误信息。