Arch Linux 安装篇

用Linux也有两年多了,也尝试过很多发行版。特别喜欢 ArchLinux 的滚动更新和可定制性。ArchLinux 或者是 Linux 的优点就不在这里多说了,我相信打开这篇教程的同学一定可以从这样的过程中得到很多。但是 ArchLinux 安装对一些没经验的用户,并不那么友好。所以这次趁换电脑重装一遍,写下这篇教程。

准备工作

准备一个U盘,从 官网 下载最新安装镜像后,用 PowerISO 制作好启动U盘。制作步骤,这里不做过多介绍了。启动电脑选择U盘启动,进入界面后直接回车进入。

U盘大小建议4G以上,记得备份好U盘数据。制作工具也可以用你熟悉的软件或者直接用dd命令。

磁盘分区和挂载

磁盘分区采用的是 parted 命令和UEFI分区方案。如需采用MBR方案请查看 parted 示例。分区前可以使用lsblk查看分区挂在情况。下面以一块新磁盘sda为例。

parted /dev/sda
mktable  # 磁盘格式填写ESP
mkpart esp fat32 1MiB 200MiB #建立esp分区
mkpart primary linux-swap 200M  8G # 建立swap分区
mkpart primary ext4 8G 20.5G # 建立根分区
mkpart primary ext4 20.5G 100% # 建立home分区
复制代码

上面是将sda分成4个分区,当然你也可以根据自己的喜好划分。esp主要用来存放引导文件;swap交换分区,可以看做Windows的虚拟内存,该分区的大小设定可以参考这篇文章;根分区存放系统文件;Home分区存放用户相关。 分区后接下来需要格式化分区和挂载分区。

# 格式化分区
mkfs.fat -F32 /dev/sda1
mkswap /dev/sda2
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4
# 挂载/启用分区
swapon /dev/sda2
mount /dev/sda3 /mnt
mkdir -p /mnt/boot/EFI # 建立EFI文件夹
mount /dev/sda1 /mnt/boot/EFI # 挂载EFI分区
mkdir /mnt/home # 建立home文件夹
mount /dev/sda4 /mnt/home # 挂载home分区
复制代码

安装基本系统

ArchLinux 并不支持离线安装,所以安装系统前,需要连接网络。如果使用有线网并且路由器支持dhcp,插上线可以执行命令dhcpcd;如果是无线连接,输入命令 wifi-menu 选择你的 WiFi,输入密码回车稍等就连接啦。然后测试一下:ping -c 3 baidu.com 看看通了没。接下来需要配置下源:

编辑 mirrorlist 文件

nano /etc/pacman.d/mirrorlist
复制代码

在文件最上方添加

Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
复制代码

刷新并应用

pacman -Syy
复制代码

基本系统安装

pacstrap /mnt base base-devel
复制代码

期间会进行网络下载,你可以抽根烟或喝咖啡冷静冷静...

配置系统

生成 fstab 文件

genfstab -U -p /mnt >> /mnt/etc/fstab
复制代码

fstab 文件比较重要,需要检查 fstab 文件是否正确和备份:

# 查看 fstab 文件内容
cat /mnt/etc/fstab
#备份fstab
cp /mnt/etc/fstab /mnt/etc/fstab.bak
复制代码

切换到新系统

arch-chroot /mnt /bin/bash
复制代码

本地化

nano /etc/locale.gen
复制代码

移除下方 2 个前的 # 保存即可

en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
复制代码

执行 locale-gen 生成并应用,然后创建locale.conf配置文件

echo LANG=en_US.UTF-8 > /etc/locale.conf
复制代码

此处不建议直接将locale设置成中文: zh_CN.UTF-8,设置为 en_US.UTF-8,系统的 Log 会以英文显示,这样更容易判断问题和处理。

时区设置

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
复制代码

此处在新的安装镜像中,会提示 localtime 已经存在,可以先删除rm /etc/localtime,然后在执行该条命令。

设置硬件为 UTC 时间

hwclock --systohc --utc
复制代码

设置主机名

假设你想将 myhostname 设置为你的主机名称:

echo myhostname > /etc/hostname
复制代码

建议同时在 /etc/hosts 中设置 hostname

#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1   localhost.localdomain   localhost   myhostname
::1         localhost.localdomain   localhost   myhostname
复制代码

添加用户和设置密码

设置密码是运行 passwd 用户名 root用户可以直接运行 passwd命令。 Linux中不建议直接使用root账户,建议添加一个用户。

#添加用户 useradd -m -g "初始组" -G "附加组" -s "登陆shell" "用户"
useradd -m -g users -s /bin/bash username
复制代码

给刚才的用户添加sudo权限:

nano /etc/sudoers
复制代码

然后在 root ALL=(ALL) ALL 下面添加 用户名 ALL=(ALL) ALL

添加引导

引导的方式有很多

  • 使用 Grub
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot/EFI --bootloader-id=arch_grub --recheck
grub-mkconfig -o /boot/grub/grub.cfg
复制代码
  • 使用 Systemd-boot
#安装
bootctl --path=/boot/EFI install
bootctl --path=/boot/EFI update
#配置 loader.conf
nano /boot/loader/loader.conf
timeout 30            #本行是开机时,系统选单的等待时间;
default arch        #本行是指定运行哪个启动配置文件。
#配置arch.conf
cp /usr/share/systemd/bootctl/arch.conf /boot/loader/entries/arch.conf
nano /boot/loader/entries/arch.conf
#获取 PARTUUID
blkid -s PARTUUID -o value /dev/sdXY
#具体内容
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
复制代码
  • 直接使用UEFI 需要主板支持 uefi,具体可以参考 EFISTUB
efibootmgr --disk /dev/sdX --part Y --create --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux.img' --verbose
复制代码

使用 Systemd-boot 或者 直接UEFI 需要注意 /dev/sdXY为ESP所在的驱动器和分区号。PARTUUID 可以使用 blkid命令查看。

重启

exit # 退回安装环境
umount -R /mnt
reboot
复制代码

移除U盘,等候系统重启。使用新用户登录,登录成功,恭喜你,你已经成功安装ArchLinux

配置

目前只是安装了基本系统,但是还没有进行基本配置和安装图形界面,所以接下来我们要进行一些必须的配置和图形界面的安装。具体将会在下一篇配置篇中介绍。


如本教程内容有错误,欢迎在评论留言中指正。安装过程中遇到问题,建议多查看 Arch Wiki,实在解决不了也可以评论留言,我会尽力回复解决。

转载于:https://juejin.im/post/5c6537d951882561f34dc253

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值