ARTICLE DETAIL

资讯详情

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

VMware虚拟机安装银河麒麟V10全流程实战指南

VMware虚拟机安装银河麒麟V10全流程实战指南 很多朋友想在一台电脑上同时体验多套系统又不想动物理机分区装虚拟机就是最顺手的路子。最近后台问得比较多的就是“银河麒麟V10”在虚拟机里的安装和日常折腾方法从装系统到配软件、改密码、挂目录、离线上网零零散散的问题特别多。这篇我把自己从创建虚拟机开始到装完系统、做完基础配置、再装上Nginx、Qt、Samba、JDK这一整套流程完整走一遍整个过程会尽量按实际操作的顺序来遇到坑的地方也单独列出来。如果你正准备在VMware里装银河麒麟V10或者已经装好但卡在某个环节这篇可以直接当操作手册用。1. 虚拟机装银河麒麟V10的整体思路与方案选择1.1 这套玩法到底适合哪些人银河麒麟V10本身是一套独立的Linux发行版内核和包管理跟CentOS/RHEL这一脉非常接近所以早期接触过CentOS的人拿到手会觉得很熟悉。但如果你没接触过直接用物理机安装会有两个麻烦一是需要单独准备一台机器或者腾出一个硬盘分区来回切换系统比较折腾二是一旦系统配置坏了想回退比较麻烦。虚拟机正好把这两个问题都解决了。我在VMware里装银河麒麟V10主要用来做三件事一是搭一个Linux开发环境编一些C/C程序、跑跑脚本二是测试运维场景比如离线安装软件、配Samba共享、改系统密码这类操作放在虚拟机里试错成本极低三是偶尔需要一个和Windows隔离的工作台直接快照、随时还原比物理机省心太多。如果你是Linux新手又担心把机器搞坏虚拟机是最好的起点。就算把系统引导搞坏了删掉虚拟机重来也就是十几分钟的事情物理机毫发无损。注意虚拟机里运行银河麒麟V10的性能会比物理机低一些尤其图形界面和磁盘IO。日常办公、写代码、测试服务完全够用但如果要跑大型仿真或重量级计算还是建议物理机。1.2 方案选型VMware Workstation还是VirtualBox虚拟机软件我优先选VMware Workstation尤其是17这个版本对Windows 10/11的兼容性比较稳虚拟机的3D加速、USB设备透传、共享文件夹都做得比较顺手。VirtualBox也完全可以如果公司有授权顾虑、或者机器配置偏低VirtualBox会更轻量但它的共享目录和显示效果在麒麟这种桌面环境里偶尔会有小毛病需要额外处理。这篇主要按VMware Workstation Pro 17来操作操作界面上和16差别不大。如果你用的是VMware Player免费版流程几乎一致只是少了快照、克隆这些高级功能。主机配置方面建议物理机至少16GB内存、SSD硬盘。虚拟机分配内存4GB起步CPU给4核这样银河麒麟V10桌面版跑起来不会卡成PPT。磁盘分配建议80GB系统安装完大概占12到15GB剩下的空间留给你后面装软件、放测试数据。如果硬盘紧张60GB也能跑但后面做软件测试时会有压力。2. 镜像准备与虚拟机创建2.1 镜像选型桌面版还是服务器版X86还是ARM银河麒麟V10的镜像有几个维度要分清选错了后面全是坑。第一个维度是桌面版和服务器版的区别。桌面版带完整的图形界面装完就能看到桌面适合日常办公、学习、开发调试服务器版默认不装图形桌面占用资源少适合跑Nginx、数据库这类服务。如果你主要是想进系统点鼠标、看界面选桌面版如果想模拟生产服务器环境选服务器版装完再按需安装图形界面。第二个维度是CPU架构。家用电脑基本都是X86架构选x86_64的镜像如果你在ARM服务器或者某些ARM开发板上装就要选aarch64/arm64版本。这两个镜像的软件包是不通用的x86机器硬装ARM镜像根本引导不起来ARM机器反过来也一样。还有一个容易忽略的点是版本号。银河麒麟V10有SP1、SP2、SP3这类更新包新版本修复了不少驱动和软件源问题安装的时候建议选比较新的SP版本。下载完ISO之后顺手做个校验Windows下可以用CertUtil算一下文件SHA256值和官方给的校验值比对一下避免下载文件不完整导致安装到一半报错。2.2 VMware里创建虚拟机的完整流程创建虚拟机之前先确认物理机BIOS里已经开启了CPU虚拟化功能。Intel平台是VT-xAMD平台是AMD-V。不开启的话后面启动虚拟机大概率报“加速器错误”或者直接黑屏。打开VMware Workstation Pro点击“创建新的虚拟机”选择“典型”模式。这里我建议选“稍后安装操作系统”不要选“安装程序光盘映像文件”。原因很简单先用空虚拟机把配置调好之后再手动挂载ISO镜像这样安装过程更可控后期切换镜像也方便。操作系统类型那里选择Linux版本选择“CentOS 8 64位”。银河麒麟V10和CentOS 8的兼容性匹配度最高VMware没有单独的Kylin选项时选这个最稳。之后设置虚拟机名称和存放位置建议存放在剩余空间至少100GB的盘符虚拟机文件以后会越来越大。磁盘大小设置成80GB选择“将虚拟磁盘存储为单个文件”。单个文件读写性能比拆分文件好一些迁移的时候拷一个文件也方便。之后点击“自定义硬件”内存调到4096MB或更高处理器数量给2个每个处理器核心数给2个网络类型选NAT。CD/DVD那里选择“使用ISO映像文件”浏览到你下载好的银河麒麟V10镜像点击完成。2.3 参数设置的几个关键细节点参数设置里面有几个点非常影响后续使用我说一下我的习惯值内存4GB是最低门槛8GB体验更好。如果你的物理机有32GB内存给虚拟机8GB桌面操作和编译都不会太卡。处理器不要盲目给太多核心VMware的虚拟CPU调度是有开销的。2核4线程一般够用编译大型项目时可以临时调高。网络默认NAT最省心。桥接模式会占用局域网IP换网络环境容易失联仅主机模式不能上网安装系统时不方便下载软件包。显示器如果主机支持在“显示”设置里勾选“加速3D图形”桌面动画和浏览器体验会明显提升。声卡和打印机不需要的可以移除减少虚拟设备对系统的干扰。提示虚拟机创建完成后别急着开机先去“虚拟机”菜单里确认“启动时连接”这个选项状态正常。CD/DVD里镜像是连上的否则开机后可能直接进硬盘结果硬盘是空的报“Operating System not found”。3. 麒麟V10安装过程实录3.1 引导与语言选择虚拟机开机后会看到银河麒麟V10的安装引导界面。一般有两个选项一个是直接“Install Kylin V10”另一个可能带“Advanced options”或“Rescue mode”。正常安装选第一个。系统会先加载引导文件然后进入语言选择界面。中文在这套系统里支持得不错选“简体中文”后后续安装界面都是中文对新手友好很多。不过有个小细节安装完成后系统locale可能会保留中英文混杂的情况不影响使用。3.2 安装信息摘要分区、软件包、密码和用户进入安装主界面后会看到一个“安装信息摘要”页面重点看几个入口。第一个是“安装位置”。新手建议直接选“自动配置分区”系统会自动分配boot分区、根分区和交换分区。有经验的用户可以选择“自定义分区”手动规划。我个人的建议是这样分/boot1GB存放引导文件不需要太大。swap4GB内存8GB以内时swap给到内存大小内存16GB以上给8GB足够。/剩下的空间全部分给根分区简单粗暴。如果你打算后期挂数据盘可以把数据盘的挂载点设置成/data和系统盘分离重装系统不丢数据。第二个是“软件选择”。桌面版镜像通常有“带图形界面的服务器”或“工作站”这类选项如果你只要最基本桌面环境选默认的桌面安装即可。我一般会勾上“开发工具”省得后面编译软件时装gcc、make一大堆依赖。第三个是“网络和主机名”。打开网络连接默认DHCP会自动获取IP。NAT模式下虚拟机的IP一般是192.168.x.x段记住这个IP后面SSH连接和访问Web服务都要用。第四个是“root密码”和“创建用户”。root密码一定要设好最好用大小写字母加数字的组合。同时创建一个普通用户后面用普通用户登录再通过su或sudo切到root比直接长期用root安全。安装进度条走完后点击“重启”。3.3 首次启动与初始化配置重启后系统会自动进入初始化配置界面会再问一遍语言、键盘布局、网络连接、时区这些信息。在线账户可以跳过隐私设置按需关闭。配置完成后就能看到银河麒麟V10的桌面了。这时打开终端先确认一下系统和内核版本cat /etc/os-release uname -acat /etc/os-release如果显示的是Kylin V10相关的版本信息和x86_64内核架构说明安装没有问题。接下来可以顺手创建快照万一后面配置改坏了直接恢复到当前这个干净状态。4. 装完必做的系统初始化配置4.1 修改普通用户密码、开启root登录系统默认创建的那个普通用户初始密码是你在安装时设置的。想改自己的密码直接执行passwd输入当前密码后按提示设置两遍新密码就完成了。如果是管理员想改别的用户密码用root身份执行passwd username这个命令不需要知道用户的原密码系统维护时经常用到。如果你希望在日常使用中直接用root身份操作可以先通过su -输入root密码切到root用户。银河麒麟V10默认不允许root用户直接登录图形界面的很多朋友卡在这里。想开启root图形登录可以改一下显示管理器的配置。不同版本配置文件路径会有差异常见的是编辑/etc/gdm/custom.conf在[security]和[daemon]段加入相关内容修改前先备份cp /etc/gdm/custom.conf /etc/gdm/custom.conf.bak配置完成后重启图形界面登录界面用root账号登录。需要提醒的是图形界面长期用root不是一个好习惯建议只在需要特殊操作时临时开启。SSH远程连接也需要root权限的话编辑/etc/ssh/sshd_config找到PermitRootLogin那一行改成yes然后重启sshd服务systemctl restart sshd4.2 忘记root密码怎么办单用户模式与GRUB密码重置这应该是运维场景里最高频的问题之一。在虚拟机里测试这个操作非常安全你可以反复练习。方法一通过GRUB引导进入单用户模式。重启虚拟机在GRUB菜单界面快速按键盘上的e键进入编辑模式。找到以linux开头的那一行在行尾加上rd.break或init/bin/bash。按CtrlX启动系统进入一个临时shell环境。如果用的是rd.break方式依次执行mount -o remount,rw /sysroot chroot /sysroot passwd root touch /.autorelabel exit reboot如果用的是init/bin/bash方式直接执行mount -o remount,rw / passwd root exec /sbin/init密码重置完成后重启用新密码登录即可。这个方法适用于忘记系统密码、或者被第三方改过密码进不去系统的应急场景。虚拟机里操作完全不用担心后果物理机上操作要格外小心。另外银河麒麟V10也支持给GRUB设置密码防止别人通过GRUB编辑入口绕过系统安全机制。用grub2-setpassword命令按提示设置设置完保存配置即可。一旦设置了GRUB密码下次按e编辑引导项时必须先输入GRUB密码。这个功能在物理机运维中很实用虚拟机里也可以提前练习。4.3 网络模式、SSH连接与端口放行虚拟机网络这块VMware的三种模式可以记住一个简单的对应关系桥接模式虚拟机就像一台独立的电脑直接挂在局域网里局域网其他机器能直接访问它。NAT模式虚拟机通过宿主机上网外部网络看不到虚拟机但主机可以访问虚拟机。仅主机模式虚拟机和宿主机组成一个私密网络不能访问外网一般用来做隔离测试。安装软件、更新系统、日常使用NAT模式就够了。查看虚拟机IP地址ip addr拿到IP后可以用Xshell、MobaXterm这些工具直接在Windows宿主机上SSH连接虚拟机比在虚拟机里敲命令舒服多了。前提是虚拟机里有sshd服务通常桌面版会预装如果没有先安装并启动yum install -y openssh-server systemctl enable --now sshd在虚拟机里部署Nginx、Samba这类服务后宿主机要访问除了服务本身要监听正确的IP还要放行防火墙端口。麒麟V10默认防火墙一般是firewalld放行端口firewall-cmd --permanent --add-port22/tcp firewall-cmd --permanent --add-port80/tcp firewall-cmd --permanent --add-port445/tcp firewall-cmd --reload4.4 安装VMware Tools与共享目录配置VMware Tools是虚拟机体验提升的关键一步。装好之后窗口可以自适应缩放鼠标切换更顺畅还能用共享文件夹直接把文件从Windows拖进虚拟机。VMware Workstation菜单栏虚拟机 - 安装VMware Tools。系统会挂载一个光驱里面有VMwareTools-xxx.tar.gz。进入root用户解压到临时目录然后执行安装脚本tar -zxvf VMwareTools-xxx.tar.gz -C /tmp cd /tmp/vmware-tools-distrib ./vmware-install.pl安装过程中一路按默认回车最后reboot重启。这个安装过程依赖内核头文件VMware Tools会尝试编译内核模块如果编译失败一般是因为没装gcc和kernel-devel提前装好yum install -y gcc make kernel-devel共享文件夹在VMware的“虚拟机设置”-“选项”-“共享文件夹”里添加然后挂载共享目录。挂载点通常在/mnt/hgfs如果没自动挂载可以手动执行vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other4.5 挂载数据盘与存储路径调整很多朋友会问怎么给麒麟V10加一块数据盘。实际场景是系统盘放系统数据盘单独放文件和软件包。在VMware里给虚拟机添加一块新硬盘启动后用命令查看新磁盘设备lsblk能看到/dev/sdb这样的新设备。分区、格式化、挂载fdisk /dev/sdb mkfs.xfs /dev/sdb1 mkdir /data mount /dev/sdb1 /data为了让重启后自动挂载把挂载信息写入/etc/fstab建议先用blkid查一下磁盘的UUID再写入避免设备名变化导致挂载失败blkid /dev/sdb1 echo UUID你的UUID /data xfs defaults 0 0 /etc/fstab mount -a有些应用支持配置数据存储路径比如微信Linux版的聊天文件目录可以在软件设置里把存储位置改到/data下的某个文件夹这样系统重装后聊天文件还在。5. 软件安装实战在线源与离线部署5.1 配置公共YUM仓库和常用软件安装命令银河麒麟V10的包管理器和CentOS/RHEL系列一致底层是yum新版本同时兼容dnf。默认情况下系统会内置官方软件源安装软件直接yum install -y 包名如果默认源失效或者连不上可以考虑配置第三方公共仓库。思路很简单备份原有repo文件在/etc/yum.repos.d/下新建一个repo文件把仓库地址指向可用的公共仓库。配置完执行yum clean all yum makecache yum update注意不同大版本V10 SP1/SP2/SP3对应的baseurl可能不一样乱配会造成依赖解析失败。对普通用户来说如果软件商店能正常安装优先用软件商店要大批量装开发包才需要折腾命令行源。常用包管理命令列个速查搜索软件包yum search 关键词安装软件包yum install -y 包名卸载软件包yum remove 包名查看已安装rpm -qa | grep 关键词查看依赖yum deplist 包名只下载不安装yum install --downloadonly --downloaddir./ 包名5.2 离线安装Nginx的完整依赖链路Nginx是服务器场景里绕不开的软件银河麒麟V10离线安装Nginx的办法我试过几种总结下来分三条路。第一种在线环境下准备离线包。找一台能联网的、和麒麟V10相同架构的机器用yum把Nginx及其依赖全部下载下来拷贝到内网机器上yum install --downloadonly --downloaddir/root/nginx_rpm nginx然后把整个目录拷贝到目标机器执行cd /root/nginx_rpm rpm -ivh *.rpmrpm -ivh会自动处理目录内依赖关系但不会去外部源寻找。如果安装过程中报“依赖缺失”说明你下载的rpm包不完整需要用repotrack这类工具把依赖递归拉全。第二种源码编译安装。适合需要自定义模块的场景比如加--with-http_ssl_module。编译nginx之前需要确定gcc、make、pcre-devel、zlib-devel、openssl-devel这些依赖已经装好。源码安装过程比较经典tar -zxvf nginx-1.24.0.tar.gz cd nginx-1.24.0 ./configure --prefix/usr/local/nginx --with-http_ssl_module make -j4 make install编译完启动/usr/local/nginx/sbin/nginx浏览器访问http://虚拟机IP看到Welcome to nginx!就说明成功了。如果访问不到按顺序检查nginx是否在跑、防火墙80端口是否放行、进程监听的是不是0.0.0.0。第三种直接拷贝编译好的二进制。不太推荐因为Nginx依赖libpcre等动态库环境不匹配很容易报error while loading shared libraries。5.3 Qt、JDK 和 Samba 的典型安装方法Qt开发环境在银河麒麟V10上装起来有两条路径。一是用系统的Qt库包适合只需要Qt5运行库的场景yum install -y qt5-qtbase qt5-qtbase-devel qt5-qtmultimedia qt5-qtsvg二是用Qt官方在线安装器装完整的Qt Creator开发环境。下载安装器后给执行权限运行图形安装向导。安装时选择对应架构的套件X86机器选gcc_64ARM机器选gcc_arm64版本选长期支持的LTS版本。官方在线安装器比较大国内网络下载慢是正常现象耐心等就好。JDK安装也是高频需求尤其现在JDK 17用的最多。下载Linux x86_64或aarch64架构的tar.gz包解压到/opt/jdk17然后配环境变量cat /etc/profile EOF export JAVA_HOME/opt/jdk17 export PATH$JAVA_HOME/bin:$PATH export CLASSPATH.:$JAVA_HOME/lib EOF source /etc/profile java -version看到openjdk version 17.x.x就说明环境生效了。注意如果机器是ARM芯片服务器一定不要下x86的JDK否则运行Java应用直接报“Bad CPU type in executable”。Samba是局域网共享文件的神器配置方法很简单。先安装yum install -y samba samba-client编辑/etc/samba/smb.conf添加一个共享目录[myshare] path /data/share available yes valid users kylin read only no browseable yes public yes writable yes创建共享用户并设置Samba密码mkdir -p /data/share chmod 777 /data/share smbpasswd -a kylin systemctl enable --now smb nmbWindows宿主机访问时在资源管理器地址栏输入\\虚拟机IP\myshare输入kylin用户名和Samba密码就能看到共享目录了。macOS访问方式类似Finder里按CmdK输入smb://虚拟机IP/myshare。6. 高频问题与排查技巧实录6.1 虚拟机启动蓝屏、黑屏和CPU加速问题“虚拟机安装linux蓝屏”这个问题我见过的大多数情况都不是系统镜像问题而是物理机的CPU虚拟化没开启。VMware启动虚拟机时如果提示“此主机支持Intel VT-x但Intel VT-x被禁用”99%是BIOS里还没打开VT-x。进BIOS找到Intel Virtualization Technology设为Enabled保存重启。如果BIOS开了虚拟化仍然蓝屏或黑屏可能是VMware版本和Windows版本兼容性问题。检查一下Windows功能里“虚拟机平台”和“Hyper-V”是否和VMware冲突。Windows 10/11开启Hyper-V后VMware的虚拟化加速反而会受影响这属于比较典型的坑解决方法是关闭Hyper-V相关功能后重启再试。安装过程中黑屏还有一种情况是内存分配过小或者图形加速不支持。把内存调高到4GB以上关闭“加速3D图形”再试试。6.2 网络适配器异常和主机访问不了虚拟机VMware网络适配器的问题确实烦人vmnet1网卡出现黄色感叹号、虚拟机的网络适配器消失这些我都遇到过。voilà我常用的排查顺序打开Windows服务管理器确认VMware NAT Service和VMware DHCP Service状态是“正在运行”。如果服务停止了右键启动启动失败用管理员身份执行nbtstat -R和ipconfig /flushdns后再启动。如果vmnet1、vmnet8网卡消失打开“网络适配器设置”禁用再启用对应网卡。以上都不行用VMware安装包做一次“修复”或者彻底卸载后重启再重装。“wmware 17虚拟机没有配置和打开选项”这个搜索词出现的频率很高其实就是界面习惯问题。VMware Workstation 17里右键虚拟机列表里的虚拟机选择“设置”就能看到所有硬件配置。不用右键也可以点菜单栏的“虚拟机”-“设置”。“打开”虚拟机的入口在主页面选择的“打开虚拟机”不是右键菜单的默认项。主机访问虚拟机网站失败这个要分开排查。虚拟机里curl localhost能通但宿主机不通优先检查防火墙端口反过来宿主机能ping通但浏览器打不开检查nginx或服务进程是否监听在127.0.0.1上。改配置让服务监听0.0.0.0重启服务一般就能解决。6.3 图形界面root登录、权限、打印机和PAM问题图形界面root登录问题前面已经讲了配置方式这里再说一个细节修改/etc/gdm/custom.conf之后有些版本需要重启显示管理器才生效。直接reboot是最省事的别指望service gdm restart能完全重载。chmod 777这类权限操作很多新手喜欢一刀切。日常共享文件夹给777能解决问题系统目录比如/etc、/usr下千万别随手777曾经见过有人把/usr/bin改成777之后整个系统都变迟钝还顺手把SELinux策略打爆了。改权限之前先用ls -ld看看目录当前权限能用755或750解决的不要用777。“银河麒麟系统发现不了打印机”通常和cups服务有关。先确认cups在运行systemctl status cups如果没跑起来启动并设为开机自启systemctl enable --now cups然后在系统设置里重新添加打印机选择“网络打印机”或“IPP”方式输入打印机的IP地址。部分打印机需要厂家提供的Linux驱动这跟系统本身关系不大。虚拟机里要直连USB打印机还需要在VMware里把USB设备连接到虚拟机否则物理机独占打印机虚拟机当然发现不了。“passwd模块未知”这个问题如果出现一般是在改密码时提示类似passwd: PAM modules unknown原因通常是PAM配置文件被改动过或者系统升级后模块缺失。先检查/etc/pam.d/passwd和/etc/pam.d/system-auth是否存在且内容正常。如果不确定可以从同版本正常机器上对比这些文件。安全做法是保留现场先看日志journalctl -xe | grep -i pam再根据日志指向的具体模块名用yum重新安装对应的pam相关软件包。6.4 离线部署和ARM架构的避坑清单上面说的各种软件安装如果跑在ARM64架构的银河麒麟V10上有额外的几个坑必须注意。下载rpm包时一定要认准aarch64字样不能和x86_64混着用。用源码编译时./configure会自动识别平台但前提是编译器要装全。ARM机器上gcc和内核头文件的包名也和x86一样只是二进制架构不同。安装fluent-bit这类日志采集工具时在线仓库如果没有对应包源码编译需要cmake和flex/bison这些依赖先提前下载好对应架构的rpm。部分第三方软件只提供了x86的二进制看起来同名但装在ARM上根本跑不了执行时会报Exec format error。线下环境安装任何离线包我建议用一个固定的目录比如/opt/packages把rpm包和源码包按用途分类放。内网机器从U盘拷贝文件时注意文件权限拷贝出来的脚本不一定带执行权限先chmod x或chmod 755再执行。排查问题的时候一定要先看系统日志。麒麟V10的日志一般集中在/var/log/messages、/var/log/syslog和/var/log/secure用journalctl -xe能实时看到最近的系统报错。很多判断不出来的诡异问题都是被日志里的关键错误一句话点醒。别一头扎进百度乱搜先看日志错误信息越精确搜索越有效。我在实际部署中还有一个习惯每次装完一个新软件、调完一个关键配置立刻做一次虚拟机快照。这样后面的实验怎么作都心里有底恢复到好状态只需要一个点击的事。时间长了慢慢会体会到虚拟机的快照功能是本地Linux环境最值钱的东西。
返回列表