构建超强 OI 环境之安装 Arch Linux
构建超强 OI 环境之安装 Arch Linux
准备安装镜像
大陆的用户可以前往中科大的镜像站下载安装 ISO 镜像。而身处海外心系祖国的同学可以去官网下载。
下载后找个自己喜欢的目录存储即可。
创建虚拟机
这里使用 VirtualBoxVM,VMware 的也可以参考一下。首先点击创建虚拟机。填入名字,最好和 Arch Linux 有关,然后选择刚刚下载的安装镜像。
然后设置合适的 CPU 和内存,对于一般的情况,直接拖到绿色的最右侧即可。需要注意的是,一定要勾选 启用 EFI,要不然安装会出错。
此后选择合适的虚拟硬盘大小,这个将决定后面虚拟机可以使用的硬盘大小,建议尽量大一些,反正虚拟机用多少占用多少实际空间。
保存。然后进入设置-显示,并将显存设置到最大,开启 3D 加速。
安装系统
开启虚拟机,一般来说会进入到一个 Live 环境,就像下面这样。
下面的操作就都将在这个窗口里面进行。
硬盘分区
创建分区
首先对硬盘进行分区,这里推荐使用 CF Disk. 我们在命令行中键入
cfdisk /dev/sda
命令中,/dev/sda
是被进行分区的硬盘,通常来说是这个,当然也可能出现其他情况,总之就是选择正确的盘即可。进入后先选择
GPT
分区表。
进入后首先会看到一个 Free
Space,可以然后你需要通过操作键盘的左右键来选到
New
,然后输入大小 1G
,然后在选择
Type
,将其设置为 EFI System. 此后的两个分区分别为至少
4G
的 Linux Swap 分区和剩余所有空间的 Linux Filesystem
分区。需要提醒的是,在分区的时候不填写大小就会默认使用所有空间。
完成分区操作后应该是下面这样的。
然后你需要将通过左右键光标移动到 Write
回车并输入
yes
来写入分区表。最后 Quit
即可。
格式化分区
然后我们需要格式化分区,首先我们使用 mkfs.ext4 /dev/sda3
命令来格式化刚刚创建的最大的分区,其中 /dev/sda3
是这个分区所在的位置,参考刚刚分区的页面显示。这个分区将成为我们未来的
Linux
文件系统根分区。在格式化的过程中,你不需要输入什么,只需要等到重新弹出那个等待输入命令的东西即可。
其次我们要格式化的是作为虚拟内存的分区,使用命令
mkswap /dev/sda2
,含义同上。一般来说创建的很快,也是等待到弹出等待输入命令的字符即可。
最后格式化作为引导的分区,使用命令
mkfs.fat -F 32 /dev/sda1
这个分区将成为未来非常重要的分区。如果格式化成功,将不会有任何有颜色的东西输出,一般来说只会输出版本号之类的东西,无需多理。然后还是会依然弹出等待命令的东东。
挂载分区
格式化完成我们就需要挂载这些分区,使用下面的命令:
mount /dev/sda3 /mnt
挂载文件系统分区,其中设备所在的目录与上文相同。mount --mkdir /dev/sda1 /mnt/boot
挂载 EFI 分区。swapon /dev/sda2
挂载虚拟内存分区。
至此我们就完成了对硬盘进行分区的步骤。
配置软件源
输入命令 nano /etc/pacman.d/mirrorlist
编辑文件,然后在文件中输入以下内容:
1 |
|
然后使用命令 pacman -Sy
命令来获取软件包列表。
安装软件
我们使用 pacstrap -K /mnt 软件包
来安装软件包。必须的你需要安装
base base-devel linux-zen linux-firmware linux-zen-headers networkmanager
其中 base
和 linux-firmware
提供了基本系统和基本固件。linux-zen
和
linux-zen-headers
是 linux-zen
内核和其对应的用于编译和安装内核模块的头文件集。使用
linux-zen
内核是因为这个社区构建的版本提供了比
linux
内核这个原版的版本提供了更多的可用接口,更方便折腾。而
networkmanager
是网络管理器,如果不安装后续上不了网,不要问我为什么知道。base-devel
是更多方便操作的根据。
针对上面的软件包,我们需要使用命令
pacstrap -K /mnt base base-devel linux-zen linux-firmware linux-zen-headers networkmanager
来安装。
然后我们还需要一些方便配置配置的工具比如 vim
和
nano
,使用命令 pacstrap -K /mnt vim nano
来安装。
为了方便我们暂时不安装桌面系统。
配置系统
生成 fstab 文件
我们使用命令 genfstab -U /mnt >> /mnt/etc/fstab
来生成 fstab
文件。这个文件保存了电脑上存储设备和文件系统的信息。非常重要哦哦哦哦哦哦哦。不要忘记了!!!!!
进入新系统
我们使用 chroot
进入新安装的系统中进行一些操作,但注意,现在系统的安装还没有完成。
使用命令 arch-chroot /mnt
来进行切换。
设置时区、区域和本地化
首先我们使用命令
ln -sf /usr/share/zoneinfo/Region(地区名)/City(城市名) /etc/localtime
来设置时区,对于大陆的用户,我们可以使用命令
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
来设置北京时间。
然后同步硬件时间:hwclock --systohc
。
然后我们设置区域和本地化。首先你需要编辑文件
/etc/locale.gen
可以使用命令
nano /etc/locale.gen
或者 vim /etc/locale.gen
如果你会用 vim
。在打开的文件中删除你需要的区域前面的
#
符号,比如
en_US.UTF-8
。注意不建议使用中文,因为还没有安装必要的字体,设置中文会导致终端全是方块或者菱形,只能等死。
接着执行 locale-gen
生成区域和本地化信息。
然后创建 /etc/locale.conf
并在里面输入:
1 |
|
也可以设置为你刚刚设置的其他东西。但是 en_US.UTF-8
是最为推荐的。
然后你还可以设置键盘布局,但是对于绝大部分用户,这是不需要的。因为默认是美式键盘。
网络配置
你需要创建 /etc/hostname
文件,在里面输入你的主机名,可以是任意字符串。但是这个主机名只能包含大小写字母和横杠
-
。然后保存退出即可。
设置 root 用户密码
root 用户是 linux 系统的超级管理员用户,也是这个系统目前唯一的用户,你需要设置他的密码使得你可以使用这个用户登陆。
使用 passwd
命令来设置密码,注意密码要重复两边输入。
创建普通用户
使用命令 useradd -m 用户名
创建你的用户名,其中
-m
指令在创建用户的同时创建这个用户的家目录(HOME
目录)。
注意用户名不要使用特殊字符。但是你需要知道的是这个用户现在并不是管理员用户。然后使用
passwd 用户名
设置你刚刚创建的用户的密码。
然后使用 usermod -aG wheel 用户名
将这个用户加入管理员组,其中 -a
指的是复制用户到另外一个用户组而不是移动,这样做是必要的。-G
表示操作用户组。
最后编辑 /etc/sudoers
文件将下面这一行代码取消注释(删除前面的 #
)。
配置引导程序
这是最后,也是最关键的步骤。
首先使用命令 pacman -S grub efibootmgr
安装必要的软件包。
然后使用命令
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
安装引导程序。
最后使用 grub-mkconfig -o /boot/grub/grub.cfg
命令生成引导程序的配置文件。
重启
在终端中输入 exit
,退出新系统,然后在新产生的终端中输入
umount -a
弹出所有磁盘,不用管报错。
最后输入命令 reboot
重启即可。