ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

虚拟机安装Ubuntu 9.10老系统:VMware配置、软件源与常见问题全解析

虚拟机安装Ubuntu 9.10老系统:VMware配置、软件源与常见问题全解析 简介以VMware Workstation 7.0为平台详细讲解在Windows主机中安装Ubuntu 9.10 Linux虚拟机的完整流程。文档面向嵌入式开发初学者或需要在Windows环境下体验Linux系统的用户覆盖创建虚拟机、配置内存与硬盘、磁盘分区含swap交换分区、安装系统及启动设置等关键环节。同时给出软件源更新、vim与build-essential等开发工具安装、ARM交叉编译工具链部署和PATH环境变量修改方法并针对虚拟机网络桥接模式、第二网卡IP配置以及tslib触摸屏库依赖工具m4、autoconf、automake、libtool的安装做了说明。资源为单个docx讲解文档大小3.21MB结构清晰图文配合便于按步骤实操。目前已有286人学习适合通过虚拟机快速搭建Linux开发环境、减少物理机安装风险的用户参考。1. 虚拟机上安装Linux系统Ubuntu 9.10老系统在虚拟机里的第二次生命如果你手里有一份《虚拟机上安装Linux操作系统ubuntu9.10讲解.docx》的教程文档大概率是想在VMware或VirtualBox里把Ubuntu 9.10这个2009年的老系统跑起来。很多人会问都2025年了装一个停止维护十几年的Karmic Koala图什么实际上老内核、老工具链、老驱动的组合恰恰是复现旧实验、跑老教学案例、研究早期Linux启动流程的绝佳标本。虚拟机天然隔离硬件差异让老系统绕开新主板、新显卡的兼容性问题还能随时快照回滚。这篇笔记就按我在虚拟机里装Ubuntu 9.10的完整流程把镜像获取、虚拟机配置、安装步骤、软件源替换和常见坑一次讲透。2. 准备阶段镜像选择与虚拟机平台参数2.1 Ubuntu 9.10的镜像长什么样选i386还是amd64Ubuntu 9.10发布于2009年10月代号Karmic Koala内核版本2.6.31。这个版本同时提供桌面版和服务器版桌面版是Live CD可以进入桌面后点击安装也可以直接在引导界面选“Install Ubuntu”服务器版则是纯文字安装界面更省内存。做虚拟机安装讲解时我推荐用桌面版i386镜像因为9.10的桌面版对内存的胃口比amd64小而且32位用户空间能兼容更多当年的旧软件包。如果你在虚拟机里只是跑命令行服务器版i386也行但桌面版能顺便看看老GNOME 2的界面体验更完整。选择镜像时要注意9.10的默认软件源已经不在主站了需要从老版本归档站下载。ISO文件名像ubuntu-9.10-desktop-i386.iso大小约700MB。下载后先校验MD5官方校验值在发行说明里这一步别省。很多人装到一半卡在“ISO损坏”就是下载过程断流导致的。用下面的命令校验# 以 Linux/macOS 为例校验下载的 ISOWindows 用 certutil md5sum ubuntu-9.10-desktop-i386.iso逻辑说明md5sum把整个ISO文件读一遍生成128位哈希任何一位不一致都会导致启动时内核解压失败。参数说明如果ISO文件很大命令会花一点时间输出第一列就是哈希值Windows下certutil -hashfile ubuntu-9.10-desktop-i386.iso MD5输出的十六进制字符串需要和官方发行说明逐字符比对注意大小写。2.2 VMware Workstation 还是 VirtualBox虚拟机安装教程里的关键差异热词里“vmware虚拟机安装教程”出现频率最高说明多数人用VMware。我两个平台都试过结论是如果只是照文档一步步点VMware Workstation Pro的向导更稳硬件兼容性设置里可以直接选“Ubuntu 64位”或“Ubuntu”VirtualBox胜在免费开源但老系统需要手动启用PAE/NX。下面是我常用的虚拟机参数对照表参数VMware WorkstationVirtualBox内存512MB~1GB512MB~1GBCPU1~2核1~2核磁盘8GB~20GBSATA8GB~20GBSATA网络NATNAT显卡自动建议关闭3D加速VMSVGA 或 VBoxVGA客户机系统UbuntuUbuntu32-bit内存给512MB是9.10的底线桌面版开完特效就所剩无几给到1GB体验比较正常。CPU不要超过2核老内核的SMP调度在虚拟机多核环境下有时会触发时钟漂移这点在避坑章细说。磁盘建议用“动态分配”8GB足够装完桌面版加常用软件但如果你要装编译器和我下面要用的中文输入法给到15GB更从容。网络用NAT这样虚拟机通过宿主机上网不用管IP配置。这里有一个很多人忽略的选项虚拟机创建后在VMware的“自定义硬件”里把软驱移除。9.10的安装程序偶尔会去探测软驱设备导致界面长时间卡住。VirtualBox里没有软驱但默认会生成一个空软驱控制器也建议删掉。另一个关键选项是USB控制器老内核对USB 3.0支持很差如果你打算在虚拟机和宿主机之间用U盘传文件把USB控制器设为USB 1.1或USB 2.0否则插上U盘只会看到“unknown device”。2.3 下载ISO的同时准备VMware Tools与软件源镜像常见做法是先下载ISO再准备VMware Tools。VMware Workstation里“虚拟机-安装VMware Tools”会挂载一个ISO但新版VMware Tools对老内核编译经常失败。更可靠的做法是装完系统后用apt从旧源里装open-vm-tools。如果你用的是VirtualBox对应的是“安装增强功能”同样存在新版增强ISO不识别老内核的问题。软件源是另一个要提前想好的事。9.10的源如果指向archive.ubuntu.com现在会404。需要用 old-releases.ubuntu.com 下的 karmic 目录。为了不卡安装流程我在安装时选择不配置网络镜像装完系统后手动改sources.list。如果你安装时联网了安装器会在最后一步尝试下载更新包这一步很慢且大概率失败直接跳过“下载更新”的勾选即可。还有一个容易踩的坑在Windows 10/11宿主机上如果开启了“虚拟机监控程序平台”或Hyper-VVMware启动虚拟机时会报“无法启用虚拟机平台”或“VMware Workstation无法连接到虚拟机”。这个冲突最好在安装前解决。我一般这样处理控制面板-启用或关闭Windows功能把“Hyper-V”和“虚拟机监控程序平台”都关掉重启后再启动VMware。如果你必须在同一台机器上跑Docker和VMware可以保留Hyper-V但VMware要用15.5以上的版本并开启“Hyper-V模式”来兼容运行性能会有损耗。3. 创建虚拟机并完成Ubuntu 9.10安装3.1 在VMware里新建虚拟机的关键选项打开VMware Workstation选择“新建虚拟机”配置选“典型”。客户机操作系统选“Linux”版本选“Ubuntu”。如果你下载的是amd64镜像这里选“Ubuntu 64位”不要选错。选错版本会影响虚拟CPU的特性通告老内核可能无法启动PAE导致直接报“Kernel requires an x86-64 CPU”或“PAE disabled”之类的错误。内存设为1024MB磁盘用“动态分配”大小给15GB把“立即分配所有磁盘空间”勾掉。动态分配可以让虚拟磁盘文件一开始只有几百MB随使用逐渐增大对宿主机空间友好。性能上比“预分配”稍差但跑老系统完全够了。接下来在“自定义硬件”里CD/DVD选择“使用ISO映像文件”浏览选中你下载的ubuntu-9.10-desktop-i386.iso。网络类型选NATUSB控制器按上一章的设置改成USB 2.0。创建完成后先别急着重启。编辑虚拟机设置在“选项-高级”里把“抓取键盘和鼠标”的延迟调低避免安装过程中鼠标卡顿。还有一个隐藏项如果宿主机是AMD平台老内核可能在虚拟机里误判CPU频率导致系统时间飞快。遇到这种情况可以在虚拟机的vmx文件里加入cpuid.0.ebX FALSE来关闭CPU频率虚拟化后面避坑章会再讲。3.2 启动ISO并进入Live CD环境必要时加nomodeset开机后虚拟机从ISO引导出现紫色启动菜单。如果菜单分辨率花屏、光标不动或者直接黑屏在启动项上按F6再按Esc调出引导参数编辑栏在--后追加nomodeset。这个参数让内核放弃KMS内核模式设置改用VESA通用显示驱动是老显卡和虚拟显卡上装老系统最重要的引导参数。进入Live CD桌面后打开终端确认硬件识别情况# 查看 CPU 与内存信息 cat /proc/cpuinfo | head -20 free -m逻辑说明/proc/cpuinfo是内核暴露的CPU信息head -20只取前20行看一眼型号和核数free -m以MB为单位显示内存总量和可用量。参数说明如果free显示的total不到512MB说明虚拟机内存没设够或者32位内核使用了高内存地址映射需要在BIOS/EFI里开启PAEVirtualBox里就是“启用PAE/NX”选项。确认没问题后双击桌面上的“Install Ubuntu 9.10”图标。安装程序第一步语言选English不要选中文因为9.10的中文翻译不完整选中文后安装按钮的位置可能错位甚至出现方框乱码。键盘布局选US。时区选UTC即可装完再在系统里改成你所在的时区。3.3 磁盘分区与引导器的两个坑Ubuntu 9.10的安装器是旧版ubiquity分区界面和现代版差别很大。如果选择“向导-使用整个磁盘”它会自动创建swap和根分区没有单独的/boot。对虚拟机来说没问题。如果你手动分区我建议分区大小类型挂载点/dev/sda113GBext4//dev/sda22GBswapswap为什么swap给2GB老系统的休眠功能需要swap大于等于内存实测1GB内存在休眠时2GB swap比较从容。不要给/boot单独分区9.10的/boot默认只有几十MB空间紧张还容易在升级内核时报错。引导器那一页默认会写到/dev/sda的MBR。虚拟机上没有其他系统接受默认。这里有个严重风险创建虚拟机时一定要选“虚拟磁盘”绝对不要选“使用物理磁盘”。曾经有同事把宿主机的物理硬盘直接挂给虚拟机安装引导器时把GRUB写到了物理硬盘的MBR上宿主机Windows直接起不来。虚拟机安装Linux永远只能用虚拟磁盘哪怕你只是想把物理U盘内容转出来也应该先做镜像我以后再细讲。3.4 首次开机后的初始化命令安装完成后重启把ISO的连接受摘掉虚拟机设置里CD/DVD改成“使用物理驱动器”或直接移除。登录桌面后打开终端先做三件事# 查看系统版本与内核 lsb_release -a uname -r # 更新软件包列表前先备份源文件 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo apt-get update逻辑说明lsb_release -a显示发行版代号和版本号确认安装的是“9.10 karmic”uname -r显示内核版本2.6.31。备份sources.list再执行update是为了后面改源时留后悔药。参数说明lsb_release不需要额外参数uname -r只显示内核版本-a可以看全部信息。sudo首次执行会提示输入密码输入时不回显这是终端正常行为。如果apt-get update输出一堆404说明源已经失效。这时编辑/etc/apt/sources.list替换为下面的内容# 老版本归档源适用于 Ubuntu 9.10 karmic deb http://old-releases.ubuntu.com/ubuntu/ karmic main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ karmic-security main restricted universe multiverse逻辑说明这三行分别指向主源、更新源和安全源。你把配置文件里原有以deb开头的行全部注释掉再添加这三行即可。参数说明karmic是9.10的代号main/restricted/universe/multiverse是Ubuntu的四个软件仓如果某一行报404把那行的karmic-updates或karmic-security注释掉只保留第一行主源。写完后再次执行sudo apt-get update看到“Reading package lists... Done”且没有“404”就说明源可用。4. 安装后配置软件源、中文输入法与VMware Tools4.1 放弃官方VMware Tools改用open-vm-tools很多教程写“安装VMware Tools”但那份老ISO里的工具包是给当年版本编译的。VMware Workstation 16以上内置的VMware Tools ISO在9.10上执行vmware-install.pl时会尝试编译vmxnet3、vmmemctl等驱动大概率报错“Unable to find the kernel source tree”。原因是内核头文件没装好或者gcc版本与内核头文件不匹配。我踩过一次之后形成习惯在旧版Ubuntu虚拟机里一律用open-vm-tools。前提是软件源已经能用了。然后执行# 安装 open-vm-tools 基础包和桌面支持包 sudo apt-get install open-vm-tools sudo apt-get install open-vm-tools-desktop逻辑说明open-vm-tools提供vmhgfs、vmxnet3等内核模块和vmtoolsd守护进程open-vm-tools-desktop额外提供Xorg下的鼠标无缝切换、剪贴板共享和分辨率自适应。参数说明如果没有open-vm-tools-desktop这个包说明源里没有那就只装基础包。装完重启虚拟机分辨率通常会随窗口大小自动调整不需要再去VMware菜单挂载Tools。如果重启后分辨率还是固定别急着重装。手动检查服务状态# 检查 vmtoolsd 是否在运行 ps aux | grep vmtoolsd逻辑说明ps aux列出所有进程grep vmtoolsd筛选出vmtoolsd守护进程。如果没输出说明服务没起来。参数说明你也可以用sudo service open-vm-tools start手动启动9.10没有systemd只能用sysvinit方式。如果仍然起不来多半是内核模块编译失败看/var/log/vmware-tools.log里的报错常见是缺少linux-headers-generic。4.2 设置中文输入法从系统自带SCIM切换到fcitx热词里“ubuntu中文输入法怎么设置”是老Linux用户绕不过去的问题。9.10默认的中文输入法框架是SCIM在Firefox里经常激活不了而且拼音词库太旧。我一般装fcitx轻量、稳定配置直观。# 安装 fcitx 拼音输入法 sudo apt-get install fcitx fcitx-googlepinyin # 如果上面第二个包不存在就装 fcitx-sunpinyin sudo apt-get install fcitx-sunpinyin # 设置 fcitx 为默认输入法框架 im-switch -s fcitx -z default逻辑说明fcitx是输入法框架fcitx-googlepinyin和fcitx-sunpinyin是两个拼音引擎版源里通常只有一个可用。im-switch是Ubuntu老版本管理输入法框架的工具-s fcitx把默认框架设为fcitx-z default写入全局配置文件。参数说明如果你安装后按CtrlSpace无法切换注销再登录一次。老版本fcitx在某些虚拟显卡下需要重启Xorg才能生效如果还不行就重启虚拟机。补充一点9.10源里的fcitx版本只有3.x词库和现代拼音输入法差距大常用词可能打不出来。如果你只是跑实验、不写中文文档干脆保持英文环境省得折腾。4.3 配置共享文件夹让宿主机和虚拟机能传文件open-vm-tools装好后在VMware虚拟机设置里添加一个共享文件夹比如D盘下的share9。然后在虚拟机里挂载# 创建挂载点并挂载 vmhgfs 共享根 sudo mkdir -p /mnt/hgfs sudo mount -t vmhgfs .host:/ /mnt/hgfs逻辑说明vmhgfs是open-vm-tools提供的共享文件夹文件系统.host:/表示所有共享文件夹的根目录。如果你想只挂载某一个可以写.host:/share9。参数说明挂载后在虚拟机里访问/mnt/hgfs/share9就能看到宿主机D盘的那个目录。如果提示“unknown filesystem type vmhgfs”说明open-vm-tools的内核模块没加载成功先确认你装了open-vm-tools而不是只装了open-vm-tools-desktop。为了重启后自动挂载在/etc/fstab末尾加一行# 自动挂载 vmhgfs .host:/ /mnt/hgfs vmhgfs defaults 0 0逻辑说明fstab每一行的顺序是“设备 挂载点 类型 选项 dump pass”。设备名.host:/有冒号和斜杠在fstab里可以直接写。参数说明defaults包含rw、suid、dev、exec等默认选项最后的0 0表示不备份、启动时不检查。如果挂载后权限是root普通用户只能读可以在defaults后加uid1000把所有者映射为第一个用户。4.4 安装gcc失败换用aptitude处理老依赖热词“ubuntu安装gcc失败”对应的正是老系统常见问题。9.10源里build-essential依赖众多直接apt-get install经常遇到“held broken packages”或“Package build-essential is not available”。我的血泪经验是老系统别用apt硬扛改用aptitude。它在依赖冲突时会给出交互式解决方案比apt一条路走到黑强得多。# 先安装 aptitude如果源里没有就跳过 sudo apt-get install aptitude # 用 aptitude 安装 build-essential sudo aptitude install build-essential逻辑说明aptitude install会在依赖不满足时列出候选方案例如“将gcc降级到4.3”、“移除某个组件”等按n接受当前方案按q放弃。参数说明如果你不需要图形界面用aptitude命令行即可如果某个包版本冲突严重可以按Shift!让它自动选择第一个方案。装完后验证# 验证 gcc 版本 gcc --version输出里会显示gcc 4.4.1这是9.10自带的版本。如果你看到gcc 4.3说明aptitude替你降级了也可以接受。编译老内核模块时gcc版本最好和编译内核的版本一致否则可能出现“version magic”不匹配。5. 常见问题排查老系统启动、源与VMware虚拟化冲突5.1 现象虚拟机启动后黑屏或花屏引导菜单不可见原因内核KMS内核模式设置在虚拟显卡上初始化失败。解决启动菜单中按F6在--后追加nomodeset。如果已经装完了系统可以将这个参数永久写入GRUB编辑/boot/grub/menu.lst在kernel行末尾加nomodeset重启生效。补充VirtualBox用户需要在“设置-显示-显卡控制器”里把控制器改为VBoxVGA而不是VMSVGA因为9.10的Xorg 7.4没有VMSVGA驱动只有VBoxVGA的补丁驱动。5.2 现象安装进行到“Creating ext4 file system”时卡住原因虚拟磁盘控制器类型太新9.10内核2.6.31没有对应驱动。解决在VMware虚拟机设置中把硬盘接口从“NVMe”改为“SATA”或“IDE”再重新分区安装。现代VMware默认可能给Linux客户机创建NVMe虚拟磁盘老系统根本不认识。VirtualBox里同样把存储控制器改成“IDE控制器”或“SATA控制器”AHCI模式。如果你是在安装过程中卡死先强制关机改完控制器再开机重走安装流程。5.3 现象apt-get update 连接 old-releases 域名超时或404原因old-releases.ubuntu.com 是官方老版本归档站部分地区访问速度慢或者karmic-updates目录已被清理。解决先加大apt超时时间# 增大 http 超时时间到 60 秒 sudo apt-get -o Acquire::http::Timeout60 update逻辑说明-o选项覆盖apt配置文件里的Acquire::http::Timeout默认是10秒老服务器响应慢时容易误判为连接失败。参数说明如果仍然超时换用http://old-releases.ubuntu.com/ubuntu的明文HTTP不要用HTTPS因为老归档的证书链可能有问题。如果手头有国内镜像也可以找支持karmic的镜像但大多数镜像站只保留最新4个发行版所以别抱太大期望。5.4 现象安装了open-vm-tools但窗口分辨率不自动调整原因open-vm-tools-desktop没装或者Xorg没有加载vmtools模块。解决先确认包是否安装。然后编辑/etc/X11/xorg.conf在“Device”段加入Option UseDisplayDevice TRUE逻辑说明这是让Xorg识别虚拟显卡输出的常用配置。如果xorg.conf不存在用sudo Xorg -configure生成再改。参数说明老系统对热插拔显示支持不好改完重启Xorg或重启虚拟机。如果你只是想在固定分辨率下操作可以在“系统-首选项-显示”里选一个预设分辨率不折腾驱动。5.5 现象VMware Workstation启动虚拟机报“无法启用虚拟机平台”或“无法连接到虚拟机”原因宿主机Windows开启了Hyper-V或“虚拟机监控程序平台”虚拟化层被Hyper-V抢占VMware无法直接访问VT-x/AMD-V。解决在“控制面板-程序-启用或关闭Windows功能”中取消勾选“Hyper-V”、“虚拟机监控程序平台”、“适用于Linux的Windows子系统”重启后再启动VMware。如果你必须保留Docker的WSL2那就不要强制用VMware的老版本升级到VMware Workstation 15.5以上它会自动使用Hyper-V的WHPX虚拟化接口。不过在这种模式下嵌套虚拟化和部分硬件直通功能会受限而且性能略有下降。6. 验证安装成功与迁移到现代Ubuntu的路径安装结束桌面能起来并不代表系统健康。我习惯跑一遍验证命令把基线信息记录下来作为后续实验的对照组# 查看发行版、内核、内存、磁盘 cat /etc/issue cat /proc/version free -m df -h逻辑说明/etc/issue显示发行版标识/proc/version显示内核编译信息free -m看内存余量df -h看磁盘占用。这四个命令全部正常输出且free的total接近虚拟机的设定内存说明系统基本稳定。接下来可以做一个简单的负载测试打开多个终端每个终端跑dd if/dev/zero of/dev/null让CPU占用到80%以上持续十分钟。如果系统不重启、不卡死安装就是成功的。高级技巧是快照。在装完系统、换好源、装完open-vm-tools之后立刻在VMware里拍一个快照命名base-install。之后所有折腾换中文输入法、编译内核、装桌面特效都基于这个快照翻车了直接revert。这是虚拟机里装老系统最值得养成的习惯。注意快照不是备份它依赖虚拟磁盘文件快照越多磁盘膨胀越严重所以只保留一两个关键节点验证通过后把旧快照删掉。如果你装9.10只是为了体验Linux基础操作我建议验证完之后再新建一台Ubuntu 24.04 LTS虚拟机迁移过去。现代版软件源开箱即用、中文输入法装个fcitx5就完事、内核直接支持虚拟显卡。迁移的代价是配置命令有些区别apt-get换成apt网络配置从/etc/network/interfaces换成了netplanifconfig被ip addr取代。但磁盘分区、挂载、权限管理、文件系统操作这些思路完全一样。在9.10上学到的命令在24.04上一大半还能用。我在这台虚拟机上最大的教训是别在安装阶段追求完美的中文和图形驱动先把系统干净地装好、源换好、快照拍好再去捯饬应用层。这样就算把Xorg搞崩了一条revert命令就能回到干净基线半小时重来一次。希望帮到你。本文还有配套的精品资源点击获取
返回列表