今年开始我一直使用 Manjaro ,这是一个基于 Arch 的发行版,有较友好的安装界面。省去了不少折腾,但是这也带来了一些问题,你不知道有些东西是没有必要的,驱动怎么安装,分区怎么分。从头开始会让你更了解 Linux ,虽然这么说,但我还是没有选择折腾,直到最近在升级的时候有线网卡找不到了,一下子和全球的人失去了联系,进入了孤岛,这是多么痛苦的一件事。于是下定决心,折腾一下。

本文不适合一点 Linux 都不懂的小白,至少你有使用过,懂得基本命令。如果你是新手 Manjaro 或者 Ubuntu 可能会适合你。

本文教程需要你准备一个额外的 4G U 盘,制作环境是 Linux。

下载镜像

在开始之前先要从Arch Linux 下载镜像,以便我们制作装机 U 盘。

制作启动盘

把 U 盘接入电脑,使用 lsblk 查找 U 盘

1
lsblk

U 盘的格式如 /dev/sdb 这样的,不要带上数字。

找到之后使用 dd (Linux 下制作)来制作启动 U 盘, if 后面跟 archlinux 的镜像路径, of 跟 U 盘的路径,把 sdx 换成对应的设备,下同。

1
dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress && sync

联网

重启电脑,选择从 U 盘启动。

启动之后先检查网络,Arch 安装需要使用到网络,没有网络是无法安装的。如果可以正常访问网络了,跳过到下一步。

1
ping www.baidu.com

有线连接

1
dhcpcd

WiFi 连接

1
wifi-menu

更新系统时间

先来更新一下时间,确保时间是准确的。

1
timedatectl set-ntp true

分区

装系统很重要的一步就是分区,使用 fdisk 来建立分区。

1
fdisk /dev/sdx

n 创建一个新分区, p 创建主分区。 这里创建 4 个分区

  • sdx1 100M /boot
  • sdx2 2G swap
  • sdx3 10G /
  • sdx4 10G /home

格式化分区

分区建立好之后,就是格式化分区了,不同的分区需要格式化为不同的格式。

1
2
3
4
mkfs.vfat -F32 /dev/sdx1
mkswap /dev/sdx2
mkfs.ext4 /dev/sdx3
mkfs.ext4 /dev/sdx4

挂载分区

分区格式化完成之后,把格式化好的分区挂载到 /mnt 下,我们的新系统会安装到这里。

1
2
3
4
5
mount /dev/sdx3 /mnt #先挂载根分区,不然后面的没法挂载,根分区是一切的开始。
mkdir /mnt/boot
mount /dev/sdx1 /mnt/boot
mkidr /mnt/home
mount /dev/sdx4 /mnt/home

swap 分区不需要挂载,但是要开启

1
swapon /dev/sdx2

选择合适的软件源

选择一个快速的软件源,可以节约下载的时间,没必要浪费时间在这里等待。更改软件源在 /etc/pacman.d/mirrorlist 你可以使用 vi 打开,找到

1
2
## China
Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch

放到文件的最开头,并更新

1
pacman -Syy

安装

做了这么多,可以开始安装系统了,输入如下指令

1
pacstrap -i /mnt base base-devel vim

生成文件系统信息

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

查看生成的 fstab

1
cat /mnt/etc/fstab

配置

进入到新系统

系统装完了,我们需要对安装完的系统进行一些配置,不然安装完,很多东西没法用,而且也不太好用。要对配置安装完的系统,当然是要进入新系统中

1
arch-chroot /mnt

设置时区

这里没什么好说的,设置时区

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

本地化

编辑 /etc/locale.genen_US.UTF-8 UTF-8zh_CN.UTF-8 UTF-8 注释去掉(移除行首的 #)

1
2
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8

使用 locale-gen 生成 locale 信息

设置系统语言 编辑 /etc/locale.conf 文件,设置 LANG

1
LANG=en_US.UTF-8

主机名

编辑 /etc/hostname ,其中 hostname 随意,写什么无所谓。

1
hostname

添加到 /etc/hosts ,第三行的 hostname 改为上一步写的。

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

配置网络

这里要配置一下,不然系统装完了,重启发现没法上网就很尴尬

1
2
3
4
# 安装必要的软件包
pacman -S wpa_supplicant dialog network-manager-applet networmanager
systemctl enable dhcpcd.service
systemctl enable NetworkManager

设置 root 密码

更改 root 密码,有些操作需要在 root 下操作。

1
passwd

创建用户

为新系统创建一个用户, root 的权限太高了,建个普通用户在合适不过。

1
useradd -m -G wheel -s /bin/bash arch

为用户添加 sudo , 输入 visudo

1
wheel ALL=(ALL) ALL # 找到这行,把行首的 #去掉

配置 GRUB 进行开机引导

配置开机引导,如果不做这一步,开机后没法进入系统。

1
2
3
pacman -S grub
grub-install /dev/sdx
grub-mkconfig -o /boot/grub/grub.cfg

重启

安装好了,重启看看效果。别忘了把 U 盘弹出。

1
2
3
exit
umount -R /mnt
reboot

桌面

新系统是没有桌面环境的,有一个好看的桌面还是非常重要的。

装 X(X 是桌面环境的简称)

xorg 是 X11 的一个实现,是所有桌面环境的基础,没有这个就没有桌面可以看。

1
sudo pacman -S xorg

显示管理器(Display Manager)

装好了桌面环境后,我们还需要一个用来管理桌面的管理器,不然你需要手动启动它。

1
2
sudo pacman -S lightdm lightdm-gtk-greeter
sudo systemctl enable lightdm # 开机自启动

装好了 lightdm 之后需要配置一下。编辑 /etc/lightdm/lightdm.conf

1
2
3
[Seat:*]
...
greeter-session=lightdm-gtk-greeter # 如果你装了 deepin 可以改为 lightdm-deepin-greeter

有哪些 greeter-session 可以通过如下命令来查看。

1
ls -l /usr/share/xgreeters/

deepin

deepin 是深度科技开发桌面系统,有着漂亮的界面,如果你需要使用 QQ微信 等软件,deepin 桌面是一个不错的选择。

1
sudo pacman -S deepin deepin-extra

kde

kde 是另外一个非常好看的桌面,不过 QQ 不能在其上运行, 微信 部分功能不能正常使用,比如截图,发文件等。

1
sudo pacman -S plasma kde-applications kde-l10n-zh_cn

安装显卡驱动

显卡最好只安装集成显卡,不要使用独立显卡。

Intel

1
sudo pacman -S xf86-video-intel

AMD

1
sudo pacman -S xf86-video-amdgpu

ATI

1
sudo pacman -S xf86-video-ati

NVIDIA

1
sudo pacman -S xf86-video-nv

安装声卡驱动

安装声卡,听听歌还是不错的。

1
pacman -S alsa-utils alsa-oss

执行 alsamixer 取消静音

字体

中文字体按需选择。

1
sudo pacman -S ttf-dejavu wqy-microhei wqy-zenhei

参考