「ALI」01 开始安装!
Greetings! ¶
嗨!这里是阿乎的博客!(> ▽ <) /~
如果你看到了这里,那么说明你已经做好准备了,那么我们就开始吧!
注:本教程使用
virtualbox作为虚拟机记录安装过程,实机安装过程与虚拟机安装过程基本完全相同。
1. 进入Arch Linux的live环境(live environment) ¶
首先我们要进入Arch Linux的安装环境。对于实机安装我们需要在BIOS中选择从我们的启动盘启动,而对于虚拟机安装我们需要选择从我们的Arch Linux镜像启动。
如果使用的是虚拟机,请启用
EFI或将BIOS模式设置为UEFI。
具体过程请自行搜索,不多赘述。
看到以下界面后选择第一个,按下回车即可进入Arch Linux的安装环境。
等待片刻后,我们就进入了Arch Linux的安装环境。
2. 连接到互联网 ¶
在安装Arch Linux之前,我们需要先连接到互联网,这样我们才能下载所需资源。
首先我们需要检查一下我们的网络是否正常工作。
ping -c 3 www.bing.com这段代码会向www.bing.com发送三个数据包,如果我们的网络正常工作的话,那么我们应该会收到三个回复。
如果我们的网络不正常我们需要通过有线网络或者WiFi来连接到互联网。
对于前者,我们直接往电脑上插入网线即可。
对于后者,我们可以使用iwctl来连接到WiFi。
2.1 Connect to WiFi ¶
首先我们需要查看自己的无线网卡的名称。
iwctl device list一般来说,我们的无线网卡的名称应该是wlan0。(后面都以wlan0为例)
然后启动iwctl。
iwctl然后我们需要扫描附近的WiFi。
station wlan0 scan然后我们就可以查看附近的WiFi了。
station wlan0 get-networks之后我们根据列表中的WiFi名称来连接到WiFi。
station wlan0 connect <WiFi名称>最后输入WiFi的密码即可连接到WiFi。
退出iwctl。
exit3. 对硬盘(disks)进行分区(partition)(重要) ¶
在安装Arch Linux之前,我们需要先对我们的硬盘进行分区。
注意:这一步是非常重要的,如果你不知道自己在做什么,那么请不要随意分区,否则你的数据可能会丢失。
分区操作不当可能会误删你的数据,所以请务必谨慎操作。
首先我们要查看电脑的硬盘情况。
lsblk -f如上图所示,在虚拟机中有一个名字叫sda,容量为20G的硬盘。这里我们需要记住这个硬盘的路径为/dev/sda。
如果你在实机上安装,那么你可能会看到多个硬盘,这时你需要自己判断哪个是你的硬盘。(一般根据容量来判断)
然后我们使用cfdisk来对硬盘进行分区。(注意:这里的/dev/sda是虚拟机中的硬盘,实机中的硬盘可能是类似于/dev/nvme0n1这样的名称,请自行判断。)
cfdisk /dev/sdaNote: 如果出现select label type的提示,那么我们选择gpt即可。(此gpt是GUID Partition Table的缩写,而不是指ChatGPT。)
如果看到以下的界面,那么说明我们已经成功进入了cfdisk。
一个Linux系统一般需要三个分区:EFI分区、swap分区和root分区。
| 分区名称 | 分区类型 | 分区大小 | 用途 |
|---|---|---|---|
| EFI | EFI System | 512M - 1G | 存放引导程序 |
| swap | Linux swap | 一般为内存大小的两倍 | 用于作为虚拟内存,保证程序正常运行 |
| root | Linux root | 推荐10G以上(一般将剩余空间设置为root) | 存放系统文件 |
注意,有些教程会建议分出
home区,但这并不是必须的。home和root都是存放文件的地方,没有区别。
具体分区步骤请参考这个视频的[00:40-01:14]:【妈妈级2023Arch最新镜像安装教程,UEFI+BIOS双引导Archlinux安装教程】
对于我的例子,我将EFI分区设置为512M,swap分区设置为2G,剩余空间全部分给root分区。
最后再次检查一下我们的分区是否正确。
fdisk -l4. 对分区(partitions)进行格式化(format) ¶
分区后我们可以对分区进行格式化以应用我们的分区设置(比如type)。
如果不格式化的话,我们的设置并没有生效,也就无法进行后续挂载等步骤。
首先查看各个分区的路径。
lsblk -f我的例子:
EFI分区:/dev/sda1swap分区:/dev/sda2root分区:/dev/sda3
格式化EFI分区。
mkfs.fat -F 32 /dev/sda1格式化swap分区。
mkswap /dev/sda2格式化root分区。
mkfs.ext4 /dev/sda35. 挂载(mount)分区(partitions) ¶
格式化分区后,我们需要将分区挂载到我们的Arch Linux安装环境中。
什么是
挂载?
挂载(mount)是指将一个文件系统(filesystem)连接到文件树的一个特定位置上,使得该文件系统中的内容可以通过这个位置访问到。
挂载root分区。(注意:一定要先挂载root分区!)
mount /dev/sda3 /mnt挂载EFI分区。(--mkdir参数是指如果挂载目录不存在的话就创建一个,/mnt下最开始是没有boot和efi目录的。)
mount --mkdir /dev/sda1 /mnt/boot/efi挂载swap分区。
swapon /dev/sda26. 安装基础软件包 ¶
之后我们要为我们的Arch Linux安装一些基础的软件包。
pacstrap -K /mnt base linux linux-firmware base-devel注:
pacstrap是Arch Linux提供的一个安装软件包的工具,它会自动解决软件包的依赖关系。
-K参数是指使用Pacman的Keyring,这样我们就可以在安装过程中使用Pacman的Keyring来验证软件包的完整性,从而避免安装被篡改的软件包。
| 软件包名称 | 用途 |
|---|---|
| base | 基础,包含了一些基础的软件包,比如bash、coreutils等 |
| linux | 内核,包含了Linux内核。也可以被其他内核替代,比如linux-lts,linux-zen等 |
| linux-firmware | 内核固件,包含了一些硬件的固件,比如Intel的无线网卡固件等 |
| base-devel | 基础开发环境,包含了一些基础的开发环境,比如gcc、make等 |
7. 生成fstab文件 ¶
fstab是Linux系统中的一个配置文件,它用于指定系统中的文件系统如何挂载。
我们可以使用genfstab来生成fstab文件,把当前的挂载信息写入系统中。
genfstab -U /mnt >> /mnt/etc/fstab8. 使用arch-chroot进入新系统 ¶
arch-chroot是Arch Linux提供的一个工具,用于改变当前的根目录。
我们可以使用arch-chroot来进入我们的新系统以进一步配置我们的系统。
arch-chroot /mnt9. 设置时区(time zone) ¶
由于我们在中国大陆,所以我们需要将时区设置为Asia/Shanghai。
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime校准时间。
hwclock --systohc10. 设置本地化(locale) ¶
我们需要设置本地化信息,包括语言、地区、字符集等。
由于要编辑文件,所以我们需要安装一个文本编辑器。这里我们使用vim。
pacman -S vim
vim的用法请自行搜索。
Tips:vim中/用于搜索,n用于跳转到下一个搜索结果,N用于跳转到上一个搜索结果。
10.1. 编辑/etc/locale.gen ¶
首先我们需要编辑/etc/locale.gen文件,将en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8前面的注释符号#去掉。
vim /etc/locale.gen10.2. 生成locale ¶
然后我们生成locale文件。
locale-gen10.3. 编辑/etc/locale.conf ¶
最后我们创建/etc/locale.conf文件,并将LANG=en_US.UTF-8写入其中。
echo LANG=en_US.UTF-8 > /etc/locale.conf # 这是一种简便的写法,等价于先创建文件再写入注意:如果直接使用
zh_CN.UTF-8的话,会导致Arch Linux的终端无法正常显示中文(乱码),所以我们先使用en_US.UTF-8作为默认语言。
11. 添加用户(user)并设置密码(password) ¶
在Linux中,我们不建议直接使用root用户,而是建议使用普通用户,然后使用sudo来提升权限。
因为root的权限太高,如果平时使用root的话,很可能会发生一些毁灭性的误操作。
11.1. 添加用户 ¶
我们可以使用useradd来添加用户。
useradd -m <用户名>
-m参数是指创建用户的同时创建用户的家目录。
<用户名>是指我们要创建的用户名。
11.2. 设置密码 ¶
切记:
Linux中用户一旦忘记密码,是无法通过重置密码来登录的,所以一定要记住密码!!!
我们为用户设置密码。
passwd <用户名>
<用户名>是指我们刚刚创建的用户名。
之后按照提示输入两次密码即可。(输入的密码不会显示在屏幕上哦)
最后为root也设置一个密码。
passwd # 不加用户名的话默认为root之后按照提示输入两次密码即可。(输入的密码不会显示在屏幕上哦)
11.3. 编辑/etc/sudoers ¶
我们需要编辑/etc/sudoers文件,给予我们的用户sudo权限。
具体操作是在文件中找到root ALL=(ALL) ALL这一行,然后在其下面添加一行<用户名> ALL=(ALL) ALL。如下图所示。
12. 设置主机名(hostname) ¶
我们需要为我们的电脑设置一个主机名,这个名字需要放在/etc/hostname文件中。
echo <主机名> > /etc/hostname13. 安装grub、efibootmgr和os-prober ¶
如果你是双(多)系统用户,那么你需要安装grub等工具来选择开机启动哪个系统。
grub是一个开源的多操作系统启动引导程序,它可以帮助我们在开机时选择启动哪个系统,同时还可以高度定制。
efibootmgr是一个用于管理UEFI启动项的工具,它可以帮助我们在UEFI中添加启动项。
os-prober是一个用于检测其他操作系统的工具,它可以帮助我们在grub中添加其他操作系统的启动项。
pacman -S grub efibootmgr os-prober14. 配置grub ¶
14.1. 取消注释GRUB_DISABLE_OS_PROBER=false ¶
在安装好grub等工具后,我们需要对grub的配置文件进行简单的修改:
取消注释/etc/default/grub中的最后一行,GRUB_DISABLE_OS_PROBER=false。
14.2. 生成grub配置文件 ¶
之后我们先初始化grub。
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB 然后生成grub的配置文件。
grub-mkconfig -o /boot/grub/grub.cfg15. 安装并启用NetworkManager ¶
一般来说我们会使用NetworkManager来管理我们的网络。
pacman -S networkmanager在安装完成后我们将其设置为开机启动。
注意大小写!!!
systemctl enable NetworkManager16. 退出新系统并重启 ¶
至此,基本的系统配置已经完成了,我们可以退出新系统并重启电脑了。
exit # 退出chrootreboot # 重启电脑17. 检查新系统 ¶
重启后我们就可以看到grub的启动界面了。
选择Arch Linux并输入我们刚刚设置的用户名和密码后,我们就可以登录到我们的新系统了。
让我们下载一个neofetch来查看一下我们的系统信息吧。
sudo pacman -S neofetchSummary ¶
如果一切顺利的话,那么恭喜你,你已经成功安装了Arch Linux!
那么下一节,我们就来安装图形界面吧!
Have fun! 😉
