1516 字
8 分钟
VMware安装ArchLinux记录
2025-09-06

下载#

到清华源中下载ArchLinux镜像:Index of /archlinux/iso/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

VMware中创建虚拟机#

VMware中创建虚拟机,「自定义」>「硬件兼容性选最高的版本」>「稍后安装系统」>「Linux,版本选其它Linux6.x内核64位」>「设置虚拟机名称」>「分配CPU核心数」>「分配内存」>「默认使用NAT」>「默认:LSI Logic」>「磁盘类型默认即可」>「创建新虚拟磁盘」>「磁盘大小128G,将虚拟机存储为多个文件」>「磁盘文件名默认即可」>「完成」

「编辑虚拟机设置」>「处理器」>「虚拟化引擎」>「虚拟化 Intel VT-x/EPT或 AMD-V/RVI(V)」

「显示」>「加速3D图形」

「CD/DVD」>「使用ISO映像文件」>「指定自己ISO镜像文件路径」

设置系统启动模式为UEFI#

修改虚拟机目录下的ArchLinux_1.vmx文件,添加一行,内容为:firmware="efi"

PixPin_2025-09-06_02-52-13

然后开机,选择第一行,等代码跑完即可

安装#

  1. 进入UEFI引导界面后,选择第一个选项Arch Linux install medium (x86_64,UEFI)

  2. 禁用reflector

    Terminal window
    systemctl stop reflector
  3. 确认是否处于UEFI引导模式下

    Terminal window
    ls /sys/firmware/efi/efivars
    • 如果输出一堆文件名,说明处于UEFI引导模式下,可以进行下一步操作
    • 如果报错,提示文件不存在或者文件为空,则需要关机重新设置系统启动模式为UEFI
  4. 连接网络,我这里用的VMware虚拟机,默认有网

    • 通过curl指令测试是否有网:curl www.baidu.com,如果正常输出网页源码说明网络正常
  5. 更新系统时钟

    bash
    timedatectl set-ntp true
    # 查看时钟状态信息
    timedatectl status
    # 设置时区为上海
    timedatectl set-timezone Asia/Shanghai
  6. 更改软件源

    vim /etc/pacman.d/mirrorlist

    将以下内容添加到文件中:

    Terminal window
    Server = https://mirrors.ustc.edu.cn/archlinux/\$repo/os/\$arch
    Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/\$repo/os/\$arch
    Server = https://repo.huaweicloud.com/archlinux/\$repo/os/\$arch
    Server = http://mirror.lzu.edu.cn/archlinux/\$repo/os/\$arch

    PixPin_2025-09-06_12-55-07

  7. 分区和格盘

    查看当前磁盘状态:

    Terminal window
    lsblk

    我这里磁盘为sda,接下来使用cfdisk来对磁盘进行操作

    Terminal window
    cfdisk /dev/sda
    • 选择gpt
    • 对空闲空间选择New选项,回车后左下角会提示分配多少,我这里8G运存,所以Swap空间设置为8×0.6=4.8G,新分的空间名为sda1
    • 然后再对空闲空间选择New选项,分出1G,作为efi引导分区,名字是sda2
    • 第三次对空闲空间选择New选项,将剩余的全部分出来作为Linux系统区,名字是sda3
    • 分完后选择sda1,使用type功能,回车,选择Linux swap
    • 选择sda2,使用type功能,回车,选择EFI System
    • 选择sda3,使用type功能,回车,选择Linux filesystem
    • 最后选择write将操作写入磁盘,输入yes即可,然后屏幕最下面会提示The partition table has been altered.说明修改成功,可以选择Quit退出了
  8. 查看分区状态:fdisk -i,此时应该可以看到新的分区

  9. 格式化efi分区,这里的sda2是我的分区盘,如果名字不一样可以改成自己实际分区盘的名字

    Terminal window
    mkfs.fat -F32 /dev/sda2

    格式化swap分区

    Terminal window
    mkswap /dev/sda1

    格式化系统分区

    Terminal window
    mkfs.btrfs -L arch /dev/sda3
    • -L:自定义一个名字作为分区的LABLE
  10. 操作btrfs分区

    将btrfs分区挂载到/mnt

    Terminal window
    mount -t btrfs -o compress=zstd /dev/sda3 /mnt

    检查挂载情况:df -h

    挂载后继续创建btrfs子卷:

    Terminal window
    btrfs subvolume create /mnt/@
    btrfs subvolume create /mnt/@home

    检查子卷状态:

    Terminal window
    btrfs subvolume list -p /mnt

    如果显示出来了相关ID信息等等,即子卷创建成功,然后就可以卸载/mnt,挂载子卷了,卸载命令如下:

    Terminal window
    umount /mnt
  11. 挂载分区

    挂载命令
    #挂载根目录,请使用Linux文件系统盘(我的是sda3)
    mount -t btrfs -o subvol=/@,compress=zstd /dev/sda3 /mnt
    #挂载/home用户家目录,请使用Linux文件系统盘(我的是sda3)
    mkdir /mnt/home
    mount -t btrfs -o subvol=/@home,compress=zstd /dev/sda3 /mnt/home
    #挂载/boot启动引导区,请使用efi盘(我的是sda2)
    mkdir -p /mnt/boot
    mount /dev/sda2 /mnt/boot
    #挂载/swap交换分区,请使用swap盘(我的是sda1)
    swapon /dev/sda1

    检查分区挂载情况:df -h

    检查swap挂载情况:free

  12. 安装系统

    Terminal window
    pacstrap /mnt base base-devel linux linux-firmware btrfs-progs

    此步骤等待时间稍长,可以先去做点别的事

    安装工具

    Terminal window
    pacstrap /mnt networkmanager vim sudo zsh zsh-completions
  13. 使用genfstab命令来根据挂载情况自动生成并且写入fstab文件

    Terminal window
    genfstab -U /mnt > /mnt/etc/fastab

    运行之后如果没有返回任何信息,说明执行成功,生成后可以查看fastab信息

    Terminal window
    cat /mnt/etc/fastab
  14. 切换工作区域至安装好的Arch系统环境中

    Terminal window
    arch-chroot /mnt
  15. 设置主机名

    Terminal window
    vim /etc/hostname
  16. 设置hosts文件

    Terminal window
    vim /etc/hosts

    向文件中添加以下几行:

    hosts
    127.0.0.1 localhost
    ::1 localhost
    127.0.0.1 arch.localdomain arch

    这里arch.localdomain arch中的arch为主机名,需要按实际情况修改

  17. 改时区(可以直接通过timedatectl set-timezone Asia/Shanghai来修改)

    也可以通过以下命令修改:

    Terminal window
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  18. 设置硬件时间

    Terminal window
    hwclock --systohc
  19. 设置地区偏好

    Terminal window
    vim /etc/locale.gen

    去掉en_US.UTF-8 UTF-8zh_CN.UTF-8 UTF-8前面的#,保存并退出

    运行locale-gen,如果输出以下内容说明运行成功了:

    输出内容
    Generating locales...
    en_US.UTF-8... done
    zh CN.UTF-8... done
    Generation complete.

    接着运行:

    Terminal window
    echo 'LANG=en_US.UTF-8' > /etc/locale.conf
  20. 设置密码(如果这里忘了设置,后面还得用iso镜像重设,挺麻烦的,为什么我知道呢,因为我就忘了🤣👉🤡)

    Terminal window
    passwd root
  21. 安装微码,根据实际情况选择

    安装微码指令
    #Intel微码
    pacman -S intel-ucode
    #AMD微码
    pacman -S amd-ucode
  22. 安装引导程序

    Terminal window
    pacman -S grub efibootmgr os-prober

    将GRUB安装到EFI分区

    Terminal window
    grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH

    如果出现No error reported说明安装成功,接下来编辑/etc/default/grub

    vim /etc/default/grub

    修改GRUB_CMDLINE_LINUX_DEFAULT一行,将末尾的quiet去掉,添加nowatchdog,并且修改loglevel=5,该行修改后为:

    grub
    GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog"

    保存后运行以下指令:

    Terminal window
    grub-mkconfig -o /boot/grub/grub.cfg
  23. 退出安装环境:exit

  24. 卸载/mnt分区

    Terminal window
    umount -R /mnt
  25. 关机,然后在虚拟机中把ISO镜像取消掉即可

获取网络#

启动networkmanager服务

Terminal window
systemctl start NetworkManager
systemctl enable NetworkManager

通过curl www.baidu.com测试有没有网

安装fastfetch#

Terminal window
pacman -S fastfetch

运行

Terminal window
fastfetch

PixPin_2025-09-06_14-15-59

参考#

  1. Linux 的细节 - 1.3 VMWare 中安装 Archlinux

  2. ArchLinux Vmware安装指北 - THATO - 博客园

  3. 如何在Arch Linux中重设忘记的root密码-A5互联

VMware安装ArchLinux记录
https://fuwari.cbba.top/posts/vmware安装archlinux记录/
作者
Chen_Feng
发布于
2025-09-06
许可协议
CC BY-NC-SA 4.0