ArchLinux初体验

有时间玩一些好玩的了,听说亲手弄一个Arch Linux是一个很有成就感的事情,说干就干,记录一下配置的过程吧。

ArchLinux安装

开始分区

查看目前的分区情况:

1
fdisk -l

可以看到我的一块20GB的磁盘空间,并且没有进行任何分区(虚拟机分配的)

创建一个根分区:

输入命令:fdisk /dev/sda

  1. 如果是一块全新硬盘,而且是BIOS/MBR引导方式,输入o来创建一个新的MBR分区表
  2. 输入n创建一个新的分区,适当选择相应的分区选项
  3. 输入p查看新建的分区
  4. 输入w来讲之前所有的操作写入磁盘生效
  5. 输入以下命令格式化更创建的根分区:mkfs.ext4 /dev/sda1

挂载分区: mount /dev/sda1 /mnt

连接网络

现在我们是在新安装的系统上进行操作,所以我们要重新联网,我们在安装系统时已经提前装好了相关的包,所以我们需要测试一下是否正常连接网络:

1
ping www.baidu.com

如果你使用的有线网络并且路由器支持DHCP,那么插上网线就可正常使用网络。

安装基本包

选择镜像源

1
vi /etc/pacman.d/mirrorlist

将清华和浙大的源放进最开始的地方(优先级高)

Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch

安装基本包

pacstrap /mnt base base-devel linux linux-firmware dhcpcd

配置Fstab

生成自动挂载分区的fstab文件,执行以下命令:

1
genfstab -L /mnt >> /mnt/etc/fstab

由于这步比较重要,所以我们需要输出生成的文件来检查是否正确,执行以下命令:

1
cat /mnt/etc/fstab

Chroot

Chroot意为Change root,相当于把操纵权交给我们新安装(或已经存在)的Linux系统,执行了这步以后,我们的操作都相当于在磁盘上新装的系统中进行。

执行如下命令:

arch-chroot /mnt

ArchLinux安装后一些必要的配置

创建交换文件

交换文件可以在物理内存不足的时候将部分内存暂存到交换文件中,避免系统由于内存不足而完全停止工作。
之前我们通常采用单独一个分区的方式作为交换分区,现在更推荐采用交换文件的方式,更便于我们的管理。
分配一块空间用于交换文件,执行:

1
fallocate -l 768M /swapfile

更改权限,执行:

1
chmod 600 /swapfile

设置交换文件,执行:

1
mkswap /swapfile

启用交换文件,执行:

1
swapon /swapfile

最后我们需要编辑/etc/fstab为交换文件设置一个入口,使用vim打开文件:

1
vi /etc/fstab

在最后一行添加以下内容:

/swapfile none swap defaults 0 0

设置时区

依次执行如下命令设置我们的时区为上海并生成相关文件:

1
2
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc

设置Locale

设置我们使用的语言选项,执行如下命令来编辑/etc/locale.gen文件:

1
vim /etc/locale.gen

在文件中找到zh_CN.UTF-8 UTF-8 zh_HK.UTF-8 UTF-8 zh_TW.UTF-8 UTF-8 en_US.UTF-8 UTF-8这四行,去掉行首的#号,保存并退出。

然后执行: locale-gen

打开(不存在时会创建)/etc/locale.conf文件:

1
vim /etc/locale.conf

在文件的第一行加入以下内容:

LANG=en_US.UTF-8

保存并退出。

设置主机名

打开(不存在时会创建)/etc/hostname文件:

1
vim /etc/hostname

在文件的第一行输入你自己设定的一个myhostname,我设置的时xin,保存并退出。

编辑/etc/hosts文件:

1
vim /etc/hosts

在文件末添加如下内容:

1
2
3
127.0.0.1	localhost
::1 localhost
127.0.1.1 xin.localdomain xin

设置root密码

Root是Linux中具有最高权限帐户,有些敏感的操作必须通过Root用户进行,比如使用pacman,我们之前进行所有的操作也都是以Root用户进行的,也正是因为Root的权限过高,如果使用不当会造成安全问题,所以我们之后会新建一个普通用户来进行日常的操作。在这里我们需要为Root帐户设置一个密码:

执行以下命令:

passwd

按照提示操作。

安装Intel-ucode(非IntelCPU可以跳过此步骤)

执行命令:pacman -S intel-ucode

安装Bootloader

  • 首先安装os-prober和ntfs-3g这两个包,它可以配合Grub检测已经存在的系统,自动设置启动选项。命令如下:pacman -S os-prober ntfs-3g

    • 安装grub包:
    1
    pacman -S grub
    • 部署grub:
    1
    grub-install --target=i386-pc /dev/sda (将sdx换成你安装的硬盘)

    注意这里的sdx应该为硬盘(例如/dev/sda),而不是形如/dev/sda1这样的分区。

    • 生成配置文件:
    1
    grub-mkconfig -o /boot/grub/grub.cfg

重启

exit退出后,umount /mnt 后reboot即可进入新的操作系统。


ArchLinux初体验
https://chujian521.github.io/blog/2020/02/02/ArchLinux初体验/
作者
Encounter
发布于
2020年2月2日
许可协议