Note for ArchLinux on VMware workshop

1. 安装镜像下载:https://www.archlinux.org/download/

2. 基本安装步骤。参考 https://wiki.archlinux.org/index.php/beginners'_guide

VMWare 目前似乎不支持UEFI,所以请遵循 BIOS/MBR 方式处理硬盘分区。

首先设置虚拟机。ArchLinux没有在VMware的直接支持列表中。因此我选择了 “稍后安装操作系统 -> Linux / 其它Linux 3.x 内核64位”。其他项目都设置完成后挂载光盘镜像文件即可引导

用光盘镜像引导后,网络和键盘布局之类的似乎都没有问题。所以直接跳到分区部分。

先执行 lsblk 命令确认需要安装的硬盘。我这里查看到是 /dev/sda 。然后使用 parted 来做分区(如上所述,按BIOS/MBR这条路来做):

#parted /dev/sda
>mklabel msdos
>mkpart primary linux-swap 1M 2G #先划分2G交换分区
>mkpart primary ext4 2G 100% #剩下的空间全部划分单个分区
>set 2 boot on #标记第二个分区为可启动
>quit

然后格式化:

 # mkswap /dev/sda1
# swapon /dev/sda1
# mkfs.ext4 /dev/sda2

将主分区挂载到 /mnt:

 # mount /dev/sda2 /mnt
调整安装源:
用 vi 打开 /etc/pacman.d/mirrorlist
找到 163.com 这一条,将它放到列表的最前面(主要为了加快速度)
愿意的话可以多找几个China的源,放到前面。pacman是从前向后依次找的。
保存退出后,执行 pacman -Syy 更新源信息
然后安装基本系统:

# pacstrap -i /mnt base base-devel

等待安装完成即可。

安装完成后,需要进行配置。首先生成 fstab:


# genfstab -U /mnt >> /mnt/etc/fstab

生成完之后最好检查一下 /mnt/etc/fstab 这个文件,按wiki的说法自动生成是有可能会出问题的 【囧。如果有问题手工修改即可。

然后使用命令 arch-chroot /mnt /bin/bash chroot到安装好的系统继续操作。

首先要设置 Locale 和 Time ,按wiki操作即可。这里不赘述。但是这两步很重要,尤其是Locale,不设置正确的话后面很多东西会错。不可跳过。

initramfs 不需要动。

然后安装启动引导程序。这里要按 BIOS/MBR 里的步骤操作:

 # pacman -S grub os-prober #安装GRUB
# grub-install — target=i386-pc /dev/sda #安装引导程序。注意这里用的是 sda 而不是 sda1 或 sda2 !
# grub-mkconfig -o /boot/grub/grub.cfg #生成引导菜单。这一步很重要!如果不做的话,grub.cfg 就只是一个grub 安装完成之后的 stub 文件。里面的硬盘UUID是假的,所以启动之后会报引导分区找不到。这时候需要手工引导然后再做处理。步骤比较复杂,这里不赘述了。最简单的就是不要忘记这步。

最后设置网络。对于VMware虚拟机来说,只要设置有线网络即可。
首先查看网络设备名称:
 # ip links
找到对应的网络设备名。注意,以前的网络设备一般都是 eth0、 eth1之类。但在ArchLinux里设备会被改名。我这里看到的就是 ens33 这样的名字。要看清楚。确定名字之后,用 systemctl 安装对应的服务即可。
 # systemctl enable dhcpcd@ens33.service #这里的ens33要替换成你实际看到的名字

然后用 passwd 命令为 root 用户设置一个密码。(别忘记!)

然后 exit 退出 chroot 环境。最后reboot 重启虚拟机。基本安装就完成了。

接下来进行后续安装,主要是安装图形界面。参考: https://wiki.archlinux.org/index.php/General_recommendations_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

我准备安装的是 xfce4 + lightDM,以及 附加 i3wm

重启后用root用户登录系统。然后先增加一个普通用户。wiki 上的例子是用的 zsh shell。正好我也喜欢这个,而且喜欢配合 oh-my-zsh 一起用。顺便一起装了:
 # pacman -S zsh
 # useradd -m -g users -G wheel -s /bin/zsh lhc
 # passwd lhc #为新用户设置密码

基本系统里已经装好了sudo,我们希望新加的这个用户也可以 sudo。注意到上面加新用户时,已经将用户加入了 wheel 组。所以我们只要对 sudo 开放 wheel 组的使用权限即可。
 # visudo
找到 wheel 组的设置一行,将前面的注释拿掉。类似这样:
 %wheel ALL=(ALL) ALL
保存退出即可。此时可以退出 root 用户进入新用户。进入之后会收到一个提示,说找不到 zshrc,问我们要如何处理。因为我们要装 oh-my-zsh,这里就简单的按q退出。然后我们装 oh-my-zsh:

 $ sudo pacman -S git #安装git
$ sh -c “$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

安装 xfce4:

 $ sudo pacman -S xorg-server #先装Xorg
$ sudo pacman -S xf86-input-vmmouse xf86-video-vmware #安装VMware相关驱动
$ sudo pacman -S xfce4 #安装Xfce
$ sudo pacman -S lightdm lightdm-gtk-greeter #安装lightdm
$ sudo systemctl start lightdm.service #这一句是直接启动lightdm进行测试。注意这里不要像wiki写的那样直接安装service,如果直接安装的话,玩意因为驱动之类的东西忘记安装而导致X启动失败,就很难处理。如果只是start,万一失败还可以重启进入文本环境。

正常的话这样应该就可以启动图形登录界面,登录后就进入Xfce环境了。如果这一切都正常,可以重启,然后以普通用户登录。然后把lightdm安装为启动服务:

$ sudo systemctl enable lightdm.service

再重启之后应该就会直接进入图形化登录环境了。

登录进入 Xfce4 后,我们先装中文字体:

$ sudo pacman -S adobe-source-han-sans-cn-fonts #安装思源黑体,也可以安装其他的中文字体

安装i3:


$sudo pacman -S i3 dmenu

安装完之后logout到lightdm,在上方的状态条点击“XF”图标,选择 i3 ,登录,就会进入 i3 环境。此时会弹出一个小窗口问题是不是要生成配置文件。 请务必按enter! ,如果这里不生成,手工配置会很麻烦。然后会有第二个界面问你用那个键作为 $mod 键。真机上我选择了 Win 键。但是虚拟机我推荐选择 Alt。再按回车后,会进入一个全黑的界面。此时如果自动生成了配置的话,按 Alt+Enter 就可以打开一个Terminal界面进行操作。i3的具体使用我就不赘述了。

最后我们配置一下vmware tools,这个可以解决全屏后的分辨率自动调整等问题。


$ sudo pacman -S open-vm-tools #安装vm-tools开源版本
$ systemctl enable vmware-vmblock-fuse.service

然后在 ~/.config/i3/config 的最后加上一句:

 exec --no-startup-id vmware-user-suid-wrapper

才可以在进入 i3 的时候全屏自动调整分辨率。

然后重启,再进VMware,将VMware先变成窗口模式再全屏。系统也应该自动切换为全屏的分辨率了。

在lightdm可以切换进入 xfce 还是 i3。

虚拟机配置到此基本环境应该都结束了。接下来就按自己的需要进行进一步的定制化处理了。

Show your support

Clapping shows how much you appreciated 令狐虫’s story.