AlmaLinux 虚拟机安装指南
本指南详细介绍如何在各种虚拟化平台上安装 AlmaLinux,包括 VMware、VirtualBox、Hyper-V 和 Proxmox VE。
1. 虚拟化平台选择
1.1 平台对比
虚拟化平台 | 类型 | 性能 | 易用性 | 费用 | 推荐场景 |
---|---|---|---|---|---|
VMware Workstation/Fusion | Type 2 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 商业授权 | 专业开发环境 |
VirtualBox | Type 2 | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 免费开源 | 学习测试环境 |
Hyper-V | Type 1 | ⭐⭐⭐⭐ | ⭐⭐⭐ | Windows 内置 | Windows 环境 |
Proxmox VE | Type 1 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | 免费开源 | 企业级虚拟化 |
KVM/QEMU | Type 1 | ⭐⭐⭐⭐⭐ | ⭐⭐ | 免费开源 | Linux 服务器 |
1.2 系统资源要求
bash
# 最低配置
CPU: 1 核心 (支持 VT-x/AMD-V)
内存: 2GB RAM
存储: 20GB 磁盘空间
网络: 1 个网络适配器
# 推荐配置
CPU: 2+ 核心
内存: 4GB+ RAM
存储: 40GB+ 磁盘空间
网络: 桥接网络适配器
2. VMware 虚拟机安装
2.1 创建虚拟机
bash
# 下载 AlmaLinux ISO
wget https://mirrors.aliyun.com/almalinux/9/isos/x86_64/AlmaLinux-9-latest-x86_64-minimal.iso
# 验证下载完整性
sha256sum AlmaLinux-9-latest-x86_64-minimal.iso
VMware 配置步骤:
- 新建虚拟机向导
文件 → 新建虚拟机 → 典型配置
选择 "稍后安装操作系统"
客户机操作系统: Linux
版本: Red Hat Enterprise Linux 9 64位
- 虚拟机设置
虚拟机名称: AlmaLinux-9
位置: 选择存储路径
磁盘大小: 40GB (建议拆分为多个文件)
内存: 4096MB
处理器: 2 核心
网络适配器: NAT 或桥接模式
CD/DVD: 使用 ISO 镜像文件
- 高级优化配置
bash
# 编辑 .vmx 文件添加以下参数
virtualHW.version = "19"
guestOS = "rhel9-64"
nvram = "AlmaLinux-9.nvram"
extendedConfigFile = "AlmaLinux-9.vmxf"
# 启用硬件加速
vhv.enable = "TRUE"
vpmc.enable = "TRUE"
# 网络优化
ethernet0.virtualDev = "vmxnet3"
ethernet0.present = "TRUE"
ethernet0.connectionType = "bridged"
2.2 安装过程配置
bash
# 启动虚拟机,进入安装界面
# 1. 语言选择: 中文 (简体)
# 2. 时区设置: 亚洲/上海
# 3. 键盘布局: 中文
# 4. 网络配置: 启用网络接口
# 磁盘分区方案 (推荐)
/boot : 1GB (ext4)
/boot/efi : 512MB (FAT32, UEFI 系统)
swap : 4GB (与内存大小相等)
/ : 20GB (xfs)
/home : 剩余空间 (xfs)
/var : 8GB (xfs, 可选)
3. VirtualBox 虚拟机安装
3.1 VirtualBox 配置
bash
# 安装 VirtualBox 扩展包 (启用 USB 3.0、RDP 等功能)
wget https://download.virtualbox.org/virtualbox/7.0.12/Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack
# 安装扩展包
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack
创建虚拟机步骤:
- 基本配置
名称: AlmaLinux-9
类型: Linux
版本: Red Hat (64-bit)
内存: 4096MB
硬盘: 创建新虚拟硬盘 (VDI, 动态分配, 40GB)
- 系统设置
主板 → 启动顺序: 光驱、硬盘
主板 → 扩展特性: 启用 I/O APIC、EFI
处理器 → 处理器数量: 2
处理器 → 扩展特性: 启用 PAE/NX、VT-x/AMD-V
- 存储和网络
bash
# 存储设置
控制器: SATA → 添加光驱 → 选择 AlmaLinux ISO
控制器: SATA → 属性 → 使用主机 I/O 缓存
# 网络设置
网卡1: 启用网络连接
连接方式: 桥接网卡 (或 NAT)
混杂模式: 全部允许 (桥接模式)
3.2 性能优化
bash
# 安装 Guest Additions (在 AlmaLinux 安装完成后)
sudo dnf groupinstall "Development Tools"
sudo dnf install kernel-devel kernel-headers dkms
# 挂载 Guest Additions CD
sudo mkdir /mnt/cdrom
sudo mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
sudo ./VBoxLinuxAdditions.run
# 启用共享文件夹
sudo usermod -a -G vboxsf $(whoami)
# 重启系统
sudo reboot
4. Hyper-V 虚拟机安装
4.1 启用 Hyper-V
powershell
# 在 PowerShell (管理员) 中启用 Hyper-V
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
# 或在控制面板启用
# 控制面板 → 程序 → 启用或关闭 Windows 功能 → Hyper-V
4.2 创建虚拟机
powershell
# 使用 PowerShell 创建虚拟机
New-VM -Name "AlmaLinux-9" -MemoryStartupBytes 4GB -Generation 2 -NewVHDPath "C:\VMs\AlmaLinux-9.vhdx" -NewVHDSizeBytes 40GB
# 配置虚拟机设置
Set-VMProcessor -VMName "AlmaLinux-9" -Count 2
Set-VMMemory -VMName "AlmaLinux-9" -DynamicMemoryEnabled $true -MinimumBytes 2GB -MaximumBytes 8GB
Hyper-V 管理器配置:
- 固件设置
安全启动: 禁用 (或使用 Microsoft UEFI 证书颁发机构)
安全启动模板: Microsoft UEFI 证书颁发机构
- 网络配置
bash
# 创建虚拟交换机
New-VMSwitch -Name "AlmaLinux-Bridge" -NetAdapterName "以太网" -AllowManagementOS $true
# 连接虚拟机到交换机
Connect-VMNetworkAdapter -VMName "AlmaLinux-9" -SwitchName "AlmaLinux-Bridge"
4.3 安装后优化
bash
# 安装 Hyper-V 集成服务组件
sudo dnf install hyperv-daemons
# 启用服务
sudo systemctl enable hypervvssd
sudo systemctl enable hypervkvpd
sudo systemctl enable hypervfcopyd
# 优化内核参数
echo 'GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX hv_storvsc.probe_lock=0"' | sudo tee -a /etc/default/grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
5. Proxmox VE 虚拟机安装
5.1 Proxmox 环境配置
bash
# 上传 ISO 到 Proxmox
# Web 界面: 数据中心 → 本地 → ISO 镜像 → 上传
# 或使用命令行上传
scp AlmaLinux-9-latest-x86_64-minimal.iso root@proxmox-server:/var/lib/vz/template/iso/
5.2 创建虚拟机
Web 界面配置:
- 通用设置
节点: 选择 Proxmox 节点
VM ID: 100 (自动分配)
名称: almalinux-9
资源池: 可选
- 操作系统
使用 CD/DVD 光盘镜像文件 (iso)
存储: local
ISO 镜像: AlmaLinux-9-latest-x86_64-minimal.iso
Guest OS: Linux
版本: 6.x - 2.6 Kernel
- 系统设置
图形卡: 默认 (VGA)
机器: Default (i440fx)
BIOS: SeaBIOS
SCSI 控制器: VirtIO SCSI single
Qemu 代理: 启用 (需要安装 qemu-guest-agent)
- 硬盘配置
bash
# 主要硬盘
总线/设备: VirtIO Block (virtio0)
存储: local-lvm
磁盘大小: 40GB
缓存: Write back (安全)
丢弃: 启用 (SSD 存储)
SSD 仿真: 启用 (SSD 存储)
- 网络设置
桥接: vmbr0
模型: VirtIO (paravirtualized)
MAC 地址: 自动生成
VLAN 标签: 空白 (默认)
5.3 高级配置优化
bash
# 编辑 VM 配置文件 (在 Proxmox 节点上)
nano /etc/pve/qemu-server/100.conf
# 添加性能优化参数
args: -cpu host
balloon: 0
cpu: host
numa: 1
onboot: 1
# 网络性能优化
net0: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr0,firewall=1,queues=4
# 存储性能优化
virtio0: local-lvm:vm-100-disk-0,cache=writethrough,discard=on,iothread=1,size=40G
6. 安装后通用配置
6.1 安装必要软件
bash
# 更新系统
sudo dnf update -y
# 安装开发工具
sudo dnf groupinstall "Development Tools" -y
sudo dnf install epel-release -y
# 安装虚拟化工具
case "$VIRTUALIZATION" in
"vmware")
sudo dnf install open-vm-tools -y
sudo systemctl enable vmtoolsd
;;
"virtualbox")
# Guest Additions 已在前面安装
;;
"microsoft")
sudo dnf install hyperv-daemons -y
;;
"kvm")
sudo dnf install qemu-guest-agent -y
sudo systemctl enable qemu-guest-agent
;;
esac
6.2 网络配置优化
bash
# 配置静态 IP (示例)
sudo nmcli connection modify "System eth0" \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8,8.8.4.4" \
ipv4.method manual
sudo nmcli connection up "System eth0"
# 验证网络连接
ping -c 4 baidu.com
6.3 快照管理
bash
# VMware 快照
# 虚拟机 → 快照 → 拍摄快照
# VirtualBox 快照
VBoxManage snapshot "AlmaLinux-9" take "Initial-Setup" --description "系统初始安装完成"
# Proxmox 快照
pvesh create /nodes/proxmox-node/qemu/100/snapshot --snapname initial --description "Initial installation"
# KVM 快照
virsh snapshot-create-as almalinux-9 initial "Initial installation"
7. 性能调优指南
7.1 内存优化
bash
# 调整 swappiness
echo 'vm.swappiness = 10' | sudo tee -a /etc/sysctl.conf
# 配置透明大页
echo 'transparent_hugepage=madvise' | sudo tee -a /etc/default/grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
7.2 磁盘 I/O 优化
bash
# 安装 tuned
sudo dnf install tuned -y
sudo systemctl enable tuned
# 应用虚拟化优化配置
sudo tuned-adm profile virtual-guest
# 验证配置
sudo tuned-adm active
7.3 监控和诊断
bash
# 安装监控工具
sudo dnf install htop iotop nethogs -y
# 虚拟化环境检测
sudo dmidecode -s system-product-name
sudo virt-what
# 性能基准测试
sudo dnf install fio sysbench -y
# 磁盘性能测试
fio --name=random-write --ioengine=posixaio --rw=randwrite --bs=4k --numjobs=1 --size=4g --iodepth=1 --runtime=60 --time_based --end_fsync=1
8. 故障排除
8.1 常见问题
启动问题:
bash
# UEFI 启动失败
# 解决方案: 禁用安全启动或使用正确的启动模式
# 网络连接问题
sudo systemctl status NetworkManager
sudo nmcli device status
# 性能问题
# 检查虚拟化扩展是否启用
grep -E "(vmx|svm)" /proc/cpuinfo
8.2 日志分析
bash
# 查看系统启动日志
sudo journalctl -b
# 查看虚拟化相关日志
sudo dmesg | grep -i virt
sudo journalctl | grep -i "guest\|vmware\|virtualbox"
# 网络故障诊断
sudo ss -tulpn
sudo iptables -L
9. 备份和恢复
9.1 虚拟机备份策略
bash
# VMware 克隆
# 虚拟机 → 管理 → 克隆
# VirtualBox 导出
VBoxManage export "AlmaLinux-9" --output almalinux-9-backup.ova
# Proxmox 备份
vzdump 100 --storage local --mode snapshot --compress gzip
9.2 数据备份
bash
# 创建备份脚本
cat > /home/user/backup.sh << 'EOF'
#!/bin/bash
BACKUP_DIR="/backup/$(date +%Y%m%d)"
mkdir -p $BACKUP_DIR
# 备份重要配置
tar -czf $BACKUP_DIR/configs.tar.gz /etc /home /var/log
# 数据库备份 (如果有)
# mysqldump --all-databases > $BACKUP_DIR/mysql.sql
echo "Backup completed: $BACKUP_DIR"
EOF
chmod +x /home/user/backup.sh
通过本指南,您可以在各种虚拟化平台上成功安装和配置 AlmaLinux,并进行相应的性能优化和故障排除。