ArchLinux及Gnome主题安装精简教程技术
ArchLinux 的安装需要一个人懂得磁盘分区,懂得计算机启动相关的知识。通过熟练整个安装的过程,可以使得一个人的计算机水平提升一个层级,对 Linux 软件包生态圈更加熟悉。从 Linux 的安装过程所依赖的各种第三方软件包,可以得知 Linux 除了内核以外,发行版都做的不怎么样,可以算是非常糟糕。所以 Linux 一旦涉及 UI,都是非常不稳定的,跟 Windows 还是没法比的。
ArchLinux 官方推荐使用 GPT 分区表和 EFI(UEFI) 系统分区来安装系统。所以本文也是首选 GPT 和 EFI 的方式来编写整个安装教程,引导程序(Boot Loader)选择最通用 GRUB Boot Loader。本人对于 ArchLinux 的安装已经有了十多次,第一次看文档安装了几次,分别在 U 盘和台式机上都安装了几次,当时使用的是 MBR 分区表;第二次安装较第一次过去了将近半年,在台式机,虚拟机(Linux,Windows)上都安装了几次。经过这么多次的安装,对安装过程才真正熟悉了。
不得不吐槽,ArchLinux 的 Wiki 写的真的很烂,不说重复的地方特别多,并且非常的不系统,不连贯,需要看文档的人非常细心。如果一个人急需安装系统,并且不太熟悉 Linux,你可能折腾了好几天都搞不定,人一旦没有坚持的信念,很多东西就会放弃。ArchLinux 比较其他的 Linux 发行版,优点在于滚动更新,能够保持系统的最新和最简洁,这也是很多人会选择它的原因。ArchLinux 系统和镜像虽然做的好,但是文档和网站做的不怎么样,给人感觉就是使用 MarkDown 胡乱写出来的。
下面开始安装教程:
首选得启动 ArchLinux LiveCD。使用光盘或者 U 盘都可以制作 LiveCD。如果是使用虚拟机可以直接下载 ISO 文件启动。如果你有在 U 盘上安装的 ArchLinux 系统也一样可以用来安装系统,只需要安装 pacstrap 即可。如果是虚拟机启动,最好选择 EFI 方式启动,不选也没有关系,官方的说法是如果不使用 EFI 方式启动,内核中就会缺少 EFI 相关的参数,导致最后生成 GRUB Boot Loader 的时候就不能自动创建一个 GRUB 的入口 (Create a GRUB entry in the firmware boot manager)。
联网
如果是虚拟机,一般没有这个问题。如果是有线网络,一般也没有问题,如果是无线的话,可以安装 wpa_supplicant 来连接,示例:
# ip addr // example.conf ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=wheel update_config=1 fast_reauth=1 ap_scan=1 network={ ssid="MYSSID" psk="passphrase" } # ip link set dev enp0s3 up # wpa_supplicant -B -i enp0s3 -c /etc/wpa_supplicant/example.conf # dhcpcd enp0s3
分区和查看分区
新系统一般需要分区,好的分区是百年大计。分区个人认为比较好用的工具是 gdisk,这个在分区方面比 fdisk 好用。查看分区,使用 fdisk -l。示例:
# gdisk /dev/sda // 一般是 sda,注意选择 > n // 新建 ... > i // 查看 > w // 保存
一般四个分区,建议:第一分区 EFI 系统分区结束在 514M(选择类型 ef00),第二分区交换分区结束在 1538M(选择类型 8200),第三分区大小 20G 给 ROOT 使用结束在 22018M(类型默认 8300),第四分区 home 分区默认回车。最后使用 i 查看,使用 w 保存。
格式化磁盘
# mkfs.vfat -F32 /dev/sda1 # mkswap /dev/sda2 # mkfs.ext4 /dev/sda3 # mkfs.ext4 /dev/sda4
开启交换分区
# swapon /dev/sda2
挂载分区
# mount /dev/sda3 /mnt // 先挂载 root # mkdir /mnt/boot # mkdir /mnt/home # mount /dev/sda1 /mnt/boot // EFI 系统 # mount /dev/sda4 /mnt/home // home
选择镜像
开始安装第一件事情一定要选择 mirror,这一步每次安装都得做,除非你不用 LiveCD 安装。这一步一定不能省,不能省,不能省。这个事关安装的成败。如果忘记了设置安装到一半失败了,下次安全得重新格式化磁盘,还是挺麻烦的。
# vi /etc/pacman.d/mirrorlist
在中国安装就得将 China 的镜像放到最前面,一般放个一两个就差不多了,如果要安装 gnome 桌面,最好多放几个,中国的几个高校,比如浙大啊,安装系统还是蛮快的,安装桌面的很多软件包就找不到了。
开始安装
# pacstrap /mnt base
其实安装还是很简单的,就这么一个命令比较重要,然后就是等待,快则几分钟,慢则几个小时。
# genfstab -p /mnt >> /mnt/etc/fstab
这一步主要生成系统分区信息,如果没有正确的生成,以后也是可以再次修改的。
切换到新系统
# arch-chroot /mnt # vi /etc/locale.gen // 语言配置,一般打开 zh_CN.UTF-8 和 en_US.UTF-8 # locale-gen # locale > /etc/locale.conf # ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
初始化内存盘
# mkinitcpio -p linux
创建 Root 密码
# passwd
引导程序(Boot Loader)
Boot Loader 是安装过程比较关键的一步。本教程选择兼容性比较好的 GRUB 引号程序。
# pacman -S grub # pacman -S efibootmgr # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --boot-directory=/boot 或 # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub # grub-mkconfig -o /boot/grub/grub.cfg // 下面可以省略 # mkdir /boot/EFI/boot # cp /boot/EFI/grub/grubx64.efi /boot/EFI/boot/bootx64.efi # efibootmgr -c -d /dev/sda -p 1 -l /boot/EFI/refind/refind_x64.efi -L "rEFInd"
到这里为止,安装已经结束,接下来只需 exit & reboot。
系统安装完成后可能不能启动,如果以 EFI 方式启动进入了 efi shell,说明安装是成功的,只是 EFI 系统不知道怎么启动系统。需要手动启动,示例:
> FS0: > EFI\grub\grubx64.efi
安装过程中可能会涉及到部分命令没有找到,需要使用 pacman 手动安装。到目前为止,系统已经安装完成。
安装 gnome 桌面环境。
# pacman -S gnome gnome-extra gdm xorg xorg-xinit # cp /etc/X11/xinit/xinitrc ~/.xinitrc
修改 ~/.xinitrc 文件,将文件结尾处的 exec 注释掉,加上 exec gnome-session。
启动 gnome
# startx
默认启动桌面
# systemctl enable gdm.service
本文一气呵成,大部分的地方都涵盖到了。安装过程比较麻烦且重要的是分区(parted),引导程序(Boot Loader),桌面(desktop)。剩下的一些细节我就没有提到,比如时区,字体,浏览器,输入法。