ArchLinux 安装笔记

本贴最后更新于 2411 天前,其中的信息可能已经物是人非

前言

在开始之前,请在心中默念三遍:

Arch Linux 是世界上最好的发行版, 我一定能掌握她.

环境

VM ware + UEFI + 500G 虚拟磁盘 + 2G 内存 + 桥接网络

下载镜像

进入这里挑个最新的就好, https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/
我下载的是 https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/2018.01.01/archlinux-2018.01.01-x86_64.iso

测试网络

ping baidu.com

对时

timedatectl set-ntp true

分区

常用分区工具有 fdisk / gdisk / parted. fdisk 不支持 gpt, parted 不太完善, UEFI 启动最好搭配 GPT
格式的磁盘, 所以这里我们采用 gdisk

分区规划

分区 空间
EFI 500 M
Boot 500 M
/ 硬盘剩余空间

使用 gdisk 分区

执行 fdisk -l 或者 lsblk 查看硬盘设备名
执行 gdisk /dev/sda 开始分区, dev/sda 是硬盘设备名

输入 n 新建分区
询问分表号, 默认 1 , 可直接回车
询问分区开始位置, 可直接回车
询问分区结束为止, 输入 +500M 回车
询问分区表格式, 默认是 Linux filesystem, 由于第一个分区我们用来当作 efi 分区 ,需要 EFI System 格式,所以我们需要输入 L 来查询分区表格式的代号, 输入 L 后未发现 EFI System, 再次按回车查询更多, 此时, 我们就能发现 EFI System 的代号叫 ef00
输入 ef00 回车, 第一个分区就已经完成了。

输入 n 新建分区
询问分表号, 默认 2 , 可直接回车
询问分区开始位置, 可直接回车
询问分区结束为止, 输入 +500M 回车
询问分区表格式, 默认是 Linux filesystem, 由于第二个分区我们用来当做 boot 分区, 所以可直接回车
第二个分区就已经完成了。

输入 n 新建分区
询问分表号, 默认 3 , 可直接回车
询问分区开始位置, 可直接回车
询问分区结束为止, 这里我们是使用硬盘剩余的所有空间, 所以可直接回车
询问分区表格式, 默认是 Linux filesystem, 由于第三个分区我们用来当做 / 根分区, 所以可直接回车
第三个分区就已经完成了。

输入 p 回车可查看分区表格式, 更多命令可以自行查询
输入 wq 回车, 再输入 Y 保存分区表并退出 gdisk 交互模式
至此, 硬盘分区完成

使用 fdisk -l 可以查看硬盘分区信息, 记住分区名称以备后用

格式化

执行命令时会有询问, 输入 Y 或者默认值即可

mkfs.vfat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/sda3

挂载

mount /dev/sda3 /mnt
mkdir -p /mnt/boot 
mount /dev/sda2 /mnt/boot
mkdir -p /mnt/boot/efi 
mount /dev/sda2 /mnt/boot/efi

修改镜像地址

这一步是可选的, 只是为了安装时从网络下载文件时能更快

cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
vim /etc/pacman.d/mirrorlist

把第一个镜像地址设置为 Server = http://mirrors.tuna.tsinghua.efu.cn/archlinux/$repo/os/$arch

安装基础包

只要 base 即可, 我习惯把引导工具和必要的软件一块装进去

pacstrap /mnt base  base-devel vim grub efibootmgr

生成 genfstab

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

Chroot 进入新系统

arch-chroot /mnt

设置时区

设置为国内上海时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

同步硬件时钟

hwclock --systohc

设置地区

编辑 /etc/locale.gen 取消注释

vim /etc/locale.gen

取消下面两行的注释后保存

en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
locale-gen 

编辑 /etc/locale.conf , 添加一行, 个人喜欢英文, 如果乐意设置为 zh_CN.UTF-8 也可以

LANG=en_US.UTF-8

主机名

vim /etc/hostname

把主机名写进去, 我这里写入的是 arch

还要记得修改 /etc/hosts 文件

127.0.0.1        arch

设置密码

passwd root

连续输入两次 root 密码

启动加载器

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
grub-mkconfig -o /boot/grub/grub.cfg

退出重启

退出 chroot 模式, 卸载 /mnt 后重启

exit
umount -R /mnt 
reboot

联网

如果开机后没有网络可以启动 dhcpcd 服务

systemctl start dhcpcd
systemctl enable dhcpcd

安装 openssh

pacman -Sy openssh
systemctl restart sshd
systemctl enable sshd

已经启动 ssh 服务并加入开机自启, 默认是不允许 root 远程登录的, 可以修改配置或者再添加一个普通用户

添加常规用户

添加 wheel 组的权限

visudo 

取消这一行的注释

%wheel  ALL=(ALL)   ALL 

添加一个普通用户 junbaor 到 junbaor、wheel 组

groupadd junbaor
useradd -m -g junbaor -G wheel junbaor
passwd junbaor

现在就可以使用 xshell 之类的工具连接 ArchLinux 使用普通用户登录了. ip addr 可以查看虚拟机 IP

安装 Oh My Zsh

sudo pacman -Sy zsh git
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

好了, 你现在已经拥有了世界上最好的 Linux 发行版和世界上最好的 Shell 终端.

修复 Home、End 键

你会发现使用 zsh 后, 键盘的 Home\End 键失效了, 在 ~/.zshrc 文件下添加下面两行可以解决

bindkey '\e[1~' beginning-of-line
bindkey '\e[4~' end-of-line

使配置立刻生效

source ~/.zshrc

添加 ArchlinuxCN 源

参考:https://mirrors.tuna.tsinghua.edu.cn/help/archlinuxcn/

/etc/pacman.conf 文件末尾添加以下两行:

[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

再安装 archlinuxcn-keyring 包导入 GPG key

sudo pacman -Syy
sudo pacman -S archlinuxcn-keyring

安装桌面字体

我们安装 kde 桌面, 比垃圾 gnome 好多了

sudo pacman -S plasma-desktop kde-l10n-zh_cn konsole sddm kscreen dolphin wqy-microhei

plasma-desktop 是 kde 的桌面程序, kde-l10n-zh_cn 是中文语言包, konsole 是一个终端, 不然进入桌面后可能没有输入命令的地方, sddm 是登陆管理器, 先这么理解就对了, 你也可以安装多个桌面使用 sddm 登陆时进行切换, 第一次进入系统是英文, 切到中文后会出现方块字, 所以最好安装一下 wqy-microhei, 它是一款文泉微米黑中文字体, 显示效果还可以, kscreen 是一个可选的安装, 不装的话系统设置里面不能调整分辨率. dolphin 是 kde 套件中的文件管理器

别的教程可能和这里不一样, 不用担心, Arch 本来就十分灵活, 千人千面, 等自己能熟练掌握后就能随意 DIY . 新人装桌面可能会遇到一个叫 xorg 的玩意儿, 先不用管, 咱们不用安装, plasma-desktop 里面已经自动依赖。

有的教程里面会让安装一个叫做 kde-applications 的东西, 这玩意儿包含了一大堆软件(比如计算器)并不一定能用到, 不怕臃肿的话也可以装, 进入桌面后想装的话也来得及. 上面我只安装了一个 konsole 终端和 kscreen 设置. 这两个也都包含在 kde-applications 内.

安装完成后, 启动 sddm 服务就可以看到登录界面, 登陆后就可以看到贼鸡儿酷炫的桌面了, 为了下次开机直接进入桌面可以把 sddm 服务设置成开机自启.

sudo systemctl start sddm
sudo systemctl enable sddm

效果图

辛苦一番, 看一下阶段性成果

终端里面的 Arch 图标是 screenfetch 命令显示的, 想玩的话记得安装一下

安装 Chrome

由于我们之前配置了 ArchLinuxCN 源, 所以可以很方便的安装

pacman -S google-chrome

点击左下角直接键入 chrome 即可搜索出应用, 或者使用全局查找, 启动后记得在任务栏固定一下方便下次使用

安装中文输入法

官方 wiki 有问题, 经实践这样是可以的.

sudo pacman -S fcitx-im fcitx-sunpinyin fcitx-cloudpinyin kcm-fcitx

新建 ~/.xprofile 文件追加下面三行:

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

kcm-fcitx 是输入法的 GUI 配置界面 , 和 kde 桌面配合完美

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    946 引用 • 943 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...