Arch Linux 安装记录

  • 读者必看
  • 如果你是第一次接触 ArchLinux,请务必看完这一段
  1. 我的系统信息:

    系统镜像版本:archlinux-2017.05.01-x86_64.iso
    系统版本:x86_64 Linux 4.11.2.1
    GNOME 版本:3.24.2

  2. 分区:

    我没亲自尝试过,因此没有写上来。如果你是新手,请务必另外在网上搜索并准 备一篇分区方法的文章。

  3. 网络:

    在网络配置那一部分不详细,因为我是路由器分的有线网络。
    如果你是新手,请务必另外网上> 搜索网络配置。例如 wifi 配置方法的文章。

  4. 本教程过长,因此分两卷:

    上卷主要讲解 安装前的装备 到 安装后的系统设置
    下卷则主要讲解用户环境配置,对于高手可以忽略下卷,但也不一定可以找到你需要的东西。

  5. 在完成安装基本系统后的设置总体分为两部分:系统设置、用户环境配置

    系统设置 – 是在安装完系统之后重启之前必须要做的设置,否则后果很麻烦。
    用户环境配置 – 是安装完系统并重启之后可按自己的意愿进行配置。

  6. 声明:
    1. 以下所有操作,都是作者亲自操作而写下的,一般只要系统版本差别不大,应该没什么问题的。
    2. 新手按此教程流程操作则可以成功安装完整个用户系统。但事情没有绝对,如有问题,欢迎发送邮件。
    3. 欠缺的网络配置和分区方法,待以后有亲自操作后再更新本文章,对此表示抱歉

      参考: 网络配置

    4. 对于 U盘 无法启动,推荐使用: Linux dd 命令、Windows Rufus 软件

      参考:官方

  • 下载 Arch
    官方教程:
    浏览器地址栏输入 https://archlinux.org
    网页右上角单击 Downcload
    在新页面开头找到 Installation Guide 点击进入
    下拉网页,在右边选择 中文简体 即可开始阅读

一、安装之前的配置

注意:
这里的配置都必须是立即生效的,因为这部分的所有操作都是针对 u盘的,重启后则失效!
所以别指望做什么设置然后重启u盘系统后会生效!

  • 1 键盘布局(默认 us,是二位的字母编码表,中国为 cn)可忽略

    1
    root@ loadkeys us
  • 2 连接网络
    测试网络连接是否正常

    1
    root@ ping -C 3 archlinux.org
    • A. 有线配置(默认已启动模块并自动连接,如果没有输入以下命令
      参考官方

    • B. 无线配置
      参考官方

  • 2 更新系统时间

    1
    2
    root@ timedatectl set-ntp-true		// 开启 systemd-timesyncd 时间服务
    root@ timedatectl status // 确认时间是否正确
  • 3 判断启动模式

    1
    root@ ls /sys/firmware/efi/efivars

如果提示没有该目录(Not The Directory) 类似字样,则系统以 BIOS 摸索启动
反之为 EFI 模式启动
这对于后面分区和安装 GUIB 有帮助

二、安装之前的准备

  • 1. 查看硬盘浏览分区情况
    1
    2
    3
    4
    5
    6
    7
    8
    root@ fsdisk -l
    或者
    root@ lsblk -l
    如果你有多块硬盘
    root@ lsblk -l /dev/sda // 只查看 /dev/sda 这块硬盘的分区情况
    如果你希望看到分区的详细信息(可作为后面挂载分区时查看分区是否正常被挂载)
    root@ lsblk /dev/sda -o NAME,FSTYPE,SIZE,MOUNTPOINT
    这将包括分区的 名称、文件系统、大小、挂载点
  • 说明:
  • 在这里,你要确定好要进行操作的硬盘(如果你也有多块硬盘的话)和分区。
  • 2 开始分区
    我事先已经分好了四个区,分别是
    /dev/sda1 boot 1G (主分区)
    /dev/sda2 / 50G (主分区)
    /dev/sda3 swap 4G (主分区)
    /dev/sda4 /home 剩余所有空间 (逻辑分区)
  • 其他参考官方教程,或在以后我有亲历再更新
  • 3 格式化分区

    1
    2
    3
    4
    root@ mkfs.ext2 /dev/sda1		(格式化我的 boot 分区 /dev/sda1)
    root@ mkfs.ext4 /dev/sda2 (格式化我的 root 分区/dev/sda2)
    root@ mkfs.ext4 /dev/sda4 (格式化我的 home 分区/dev/sda4)
    root@ mkswap /dev/sda3 (格式化我的 swap 分区/dev/sda3)
  • 4 挂载分区

    1
    2
    3
    4
    5
    6
    root@ swapon /dev/sda3				// 先激活 swap 分区
    root@ mount /dev/sda2 /mnt // 先挂载 / 分区到 /mnt
    root@ mkdir /mnt/root // 创建 boot 文件夹
    root@ mkdir /mnt/home // 创建 home 文件夹
    root@ mount /dev/sda1 /mnt/boot // 挂载 boot 分区到 /mnt/boot
    root@ mount /dev/sda4 /mnt/home // 挂载 home 分区到 /mnt/home

说明:
如果你跟我一样独立出几个分区,则无论如何要先挂载根分区,再挂载其他分区
如果的所有目录都在一个分区里,则只需要挂载根分区就可以了
在挂载多个分区的时候,应该先挂载根分区后再创建要挂载其他分区的文件夹
只有挂载根分区后在 /mnt 下创建的文件夹才保存在根分区里面

  • 5 选择原(这一步同样很重要)

    官方:
    按照官方提示要编辑 /etc/pacman.d/mirrorlist 文件
    把要启用的源取消注释,并放到最前面
    我:
    打开 /etc/pacman.d/mirrorlist 文件后
    发现所有源已全部被启用,经过多次测试后且安装成功的方法如下

  • 安速度排序所有源:

    1
    2
    3
    root@ cd /etc/pacman.d					// 进入 pacman.d 文件夹
    root@ cp mirrorlist mirrorlist.backup // 备份出一个源文件
    root@ rankmirrors -n 6 mirrorlist.backup > mirrorlist

对 mirrorlist.backup 文件进行安速度排序,并选择 6 个最快的源
复制到 mirrorlist。
稍等一会儿按下 ctrl + C 即可

  • 注意:
    此操作会删除 mirrorlist 文件的内容,并写入新的内容。
    但 mirrorlist.backup 文件不会改变,由于该文件被保存在 u 盘下的目录
    因此 u盘断电,或是重启后该文件就不存在了。
    另外,这里所指定的源在安装完后也一起被复制到新的系统下。
    在执行上面命令后会出现一个光标不停的闪,不用理会,
    系统正在一个一个源的测试。稍微等几分钟,按下 ctrl+c 结束进程
  • 说明:
    如果你选择的源地址是过时的,则系统会无法完全安装,即可能欠缺一些软件
    如果你选择的源地址速度过慢,则整个系统安装过程可能持续太久
    且软件下载也肯能不全

    三、开始安装基本系统

    1
    root@ pacstrap /mnt base 		// 安装 base 包组,即一系列需要的软件包的总称

耐心等待,没出错的情况下安装成功。
如有出错,请检查分区挂载是否正确以及重新更改源,再执行该操作
如此重复之,成功安装则忽略。

四、安装之后的一些基础配置

  • 1 创建 Fstab 文件(管理开机自动挂载分区)

    1
    2
    root@ genfstab -U /mnt >> /mnt/etc/fstab
    root@ cat /mnt/etc/fstab // 检查 fstab 文件是否正确
  • 2 更改系统根目录使用 Chroot 软件

    1
    root@ arch-chroot /mnt

当安装好系统时,我们所在的目录位于 u 盘 中的系统
以上操作将切换根目录为新安装的系统。
接下来的所有设置,都是针对新系统进行配置

  • 3 配置时区
    1
    root@ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

时区设置为上海,从命令中可见,实际上就是对Shanghai 这个文件进行软连接

  • 4 配置时间

    1
    root@ bwclock --systohc -utc			// 时间设置为 UTC
  • 5 配置系统本地化

    1
    2
    3
    root@ vim /etc/locale.gen					// 编辑 locale.gen 文件,把要启用的格式取消注释即可,例如 zh_cn.UTF-8,建议启用 UTF8 的 编码
    root@ locale-gen // 生成本地化
    root@ echo LANG=en_US.UTF-8 > etc/locale.conf // 设置要作为默认的格式。这里建议使用 en_US.UTF-8 格式,以免命令行出现乱码
  • 6 键盘布局
    默认即可

  • 7 设置主机名并更改 hosts 文件
    1
    2
    root@ echo WORK > /etc/hostname		// WORK 是我的主机名,也可以之间编辑 /etc/hostname 文件进行修改
    root@ vim /etc/hosts // 将以下格式添加在 END 前面

127.0.1.1 WORK.lcoaldomain WORK

  • 8 配置网络
    刚安装完系统,默认网络已经被启用了,但重新开机后便没有了。
    因此设置开机自动开启网络服务
    1
    root@systemctl enable dhcpcd		// dhcpcd 是一个守护进程,用于探测有线设备

如果还是不行,请参考官网
关于无线,请参考官网

  • 9 设置 root 密码

    1
    root@ passwd 								// 输入两次密码回车键结束
  • 10 安装引导GRUB

    1
    2
    3
    4
    root@ pacman -S grub					// 下载安装 GRUB2
    root@ grub-install --target=i286-pc /dev/sda // 安装 grub 引导
    root@ pacman -S os-prober // 安装该软件包可检测出其他系统
    root@ grub-mkconfig -o /boot/grub/grub.cfg // 更新GRUB设置并生成配置文件
  • 10 处理后事以及重启

    1
    2
    3
    root@ exit 					// 退出当前系统,回到 u 盘系统
    root@ umount -R /mnt // 卸载已被挂载的分区,即新系统
    root@ reboot // 重启