首页 > 代码库 > archlinux install.txt
archlinux install.txt
+++
+++ 注意事项
+++ +++++++++++++++++++++++++++强烈建议新手移步 Arch Wiki > 新手指南
经验者请参阅 Arch Wiki > 安装指南
若在安装 / 使用过程中遇到问题,请查阅 Arch Wiki,咨询 Google、百度,或在官方论坛(英文)、本论坛发帖提问。
本指南介绍如何通过 ArchISO(Arch Linux 安装镜像,下同)以官方推荐的安装方式将 Arch Linux 安装到到一台普通 PC 上。
安装过程中请保持网络畅通
+++
+++ 简要介绍
+++ +++++++++++++++++++++++++++pacman 是 Arch Linux 的软件包管理器,下文中提及的软件均可通过其完成安装:
# pacman -S <软件包> ...
本文推荐使用 nano 编辑文件:
# nano <文件>
+++
+++ 安装准备
+++ +++++++++++++++++++++++++++---
--- 获取并校验 ArchISO
--- ---------------------------
ArchISO 攘括了 32 位和 64位版本,同时支持 x86 和 x86_64,可从官方下载页面下载。
在该页面亦能找到 ArchISO 的 SHA1、MD5 值和 PGP 签名,用于进行校验。---
--- 准备安装介质
--- ---------------------------
ArchISO 支持多种方式引导。用户可将其刻录至光盘中,写入 USB 闪存盘、移动硬盘,或载入内存中。请根据自身需求及实际情况进行选择。---
--- 启动至 ArchISO
--- ---------------------------
ArchISO 包含了完整的 Arch Linux 基础系统。但 ArchISO 无法保存用户所做的改动(关机即失),因此只适合用于系统安装与维护,请勿用于日常。接下来的安装操作都会在 ArchISO 进行。
根据机器的不同,用户可能需要调整机器的引导顺序,或者调出机器的引导菜单。具体做法请查阅随机手册。
机器成功从准备好的安装介质中启动后,屏幕将呈现出一个菜单。用户可以根据需要使用 [↑]/[↓](方向键)进行选择,[?] (回车键)确认。市面上大部分 PC 机同时支持 UEFI 和 BIOS 接口。根据设置的不同,Arch Linux 可能在 UEFI 环境下启动,或在环境 BIOS 下启动。根据启动环境的不同,用户可能看到不同菜单界面。
需要指出的是,虽然32 位版的 Arch Linux 能够在 UEFI 环境下运行,但默认情况下无法通过 ArchISO 安装 32 位的 Arch Linux。若有这样的需求,请参考上文的注意事项。
参考链接:
Arch Wiki > USB 闪存盘安装介质
Arch Wiki > PXE
+++
+++ 检查环境
+++ +++++++++++++++++++++++++++---
--- 启动环境
--- ---------------------------# efivar -l
若 efivar 正确地列出了 UEFI 变量,则本机为 UEFI 系统,否则为 BIOS。
+++
+++ 配置 ArchISO
+++ +++++++++++++++++++++++++++
预设:键盘布局:US (美式键盘)
locale:en_US.UTF-8(美式英语)
网络连接:dhcpcd(有线连接)
配置:
键盘布局:
# localectl list-keymaps # 查看可用键盘布局# loadkeys <键盘布局>
终端字体:
# ls /usr/share/kbd/consolefonts/ # 查看可用终端字体# setfornt <终端字体>
显示语言(不建议中文用户修改):
# nano /etc/locale.gen # 反注释需要的 locale# locale-gen# export LANG=<语言>
网络连接:
无线连接:
# wifi-menu
ADSL 宽带连接:
# pppoe-setup # 配置# systemctl start adsl # 连接
其他连接方式
同步时间
# timedatectl set-ntp true
pacman 软件仓库镜像服务器:
选择地理位置最为接近的镜像服务器以获得更高的下载速度。
pacman 优先使用位置靠前的镜像地址。将选定的镜像地址置于最前以便 pacman 使用。
注意:该配置不仅会应用到安装环境,也会应用至新系统中。# nano /etc/pacman.d/mirrorlist
更新本地数据库:
# pacman -Syy
查看中国大陆的镜像服务器:
grep -A 1 ‘China‘ /etc/pacman.d/mirrorlist
选择所有的中国大陆的镜像服务器:
# sed -i ‘/Score/{/China/!{n;s/^/#/}}‘ /etc/pacman.d/mirrorlist
+++
+++ 分区
+++ +++++++++++++++++
在本节,用户须在 MBR 和 GPT 之间做出选择。通常建议在 UEFI 系统中使用 GPT,在 BIOS 系统中使用 MBR。注意部分 UEFI 系统不支持 MBR 引导,部分 BIOS 系统不支持 GPT 引导。---
--- 分区方案
--- ---------------------------
基本要求:至少一个分区(类型代码:8300)
特殊要求:
BIOS + GPT + Grub:BIOS 引导分区(类型代码:ef02;大小 ≥ 1 MiB)
UEFI:UEFI 系统分区(类型代码:ef00;大小 ≥ 256 MiB)
系统休眠:交换分区(类型代码:8200;大小 ≥ 2×内存大小)
一般建议:
若安装目标内存 ≤ 2GB,添加一个交换分区
为 /home 分配一个分区
一个例子:
$ lsblk /dev/sda -o NAME,FSTYPE,SIZE,MOUNTPOINT # 名称,文件系统,大小,挂载点NAME FSTYPE SIZE MOUNTPOINTsda 120G├─sda1 vfat 512M /boot/EFI├─sda2 ext4 36G /├─sda3 ext4 79.5G home└─sda4 swap 4G [SWAP]
---
--- 分区
--- ---------------------------
确定目标磁盘及目标分区:# lsblk
分区用软件:
通用:parted、cfdisk、sfdisk
仅 GPT:cgdisk、sgdisk
---
--- 创建文件系统
--- ---------------------------
Arch Linux 默认支持的文件系统,参阅 Arch Wiki > 文件系统。
若对文件系统毫无概念,这里推荐使用 ext4 文件系统。
格式化工具:$ ls -1 /usr/bin/ | grep -E ‘mkfs|mkswap‘...mkfs.ext4* # ext4 格式化工具...mkfs.fat* # fat 格式化工具...mkswap* # swap 格式化工具
为让 genfstab 能生成 fstab 时包含交换分区,须先激活交换分区
# swapon /dev/<交换分区>
一个例子:
# mkfs.fat -F32 /dev/sda1 # 创建 FAT32 分区# mkfs.ext4 /dev/sda2 # 创建 ext4 分区# mkfs.ext4 /dev/sda3 # 创建 ext4 分区# mkswap /dev/sda4 # 创建交换分区# swapon /dev/sda4 # 激活交换分区
+++
+++ 系统安装
+++ +++++++++++++++++++++++++++
/root/install.txt 是一份简略的安装指南,供安装时查阅。---
--- 挂载目标分区
--- ---------------------------
请注意挂载次序。挂载命令:
# mount <设备> <挂载点>
一个例子:
# mount /dev/sda2 /mnt # 挂载根目录# mkdir /mnt/home # 创建 /home 挂载点# mount /dev/sda3 /mnt/home # 挂载 /home# mkdir -p /mnt/boot/EFI # 创建 UEFI 挂载点# mount /dev/sda1 /mnt/boot/EFI # 挂载 UEFI 分区
---
--- 安装基础系统
--- ---------------------------# pacstrap -i /mnt base base-devel
---
--- 配置 fstab
--- ---------------------------自动生成 fstab:
# genfstab -U <根目录挂载点> >> <根目录挂载点>/etc/fstab
(重要)检查生成的 fstab 正确是否:
# cat <根目录挂载点>/etc/fstab
请勿多次执行 genfstab,编辑 fstab 修正错误。详见 Arch Wiki > Fstab
+++
+++ 配置基础系统
+++ +++++++++++++++++
---
--- 进入新系统
--- ---------------------------
切换根目录# arch-chroot <根目录挂载点> /bin/bash
---
--- Locale(Arch Wiki)
--- ---------------------------
Locale 决定了软件使用的语言、书写习惯和字符集。# nano /etc/locale.gen # 反注释需要的 locale# locale-gen # 生成 locale# echo LANG=<locale> > /etc/locale.conf # 设置默认 locale
简体中文用户可执行:
# sed -i ‘/zh_CN.UTF-8/{s/#//}‘ /etc/locale.gen; locale-gen; echo LANG=zh_CN.UTF-8 > /etc/locale.conf
---
--- 键盘布局与终端字体
--- ---------------------------
见上文---
--- 时区
--- ---------------------------# ln -s /usr/share/zoneinfo/$(tzselect) /etc/localtime
中国大陆用户可执行:
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
---
--- 硬件时间设置
--- ---------------------------(推荐)UTC 时间:
# hwclock --systohc --utc
本地时间:
# hwclock --systohc --localtime
注意:使用本地时间可能会引起某些不可修复的bug。
---
--- 主机名
--- ---------------------------# echo <主机名> > /etc/hostname# nano /etc/hosts # 将主机名填入
完成后看起来像这样:
# cat /etc/hostname<主机名># cat /etc/hosts#<ip-address> <hostname.domain.org> <hostname>127.0.0.1 localhost.localdomain localhost <主机名>::1 localhost.localdomain localhost <主机名>
快速填入:
# HOSTNAME=‘<主机名>‘; echo $HOSTNAME > /etc/hostname; sed -i ‘/localhost/s/$/\t‘"$HOSTNAME"‘/g‘ /etc/hosts
---
--- 网络
--- ---------------------------有线连接:
# systemctl start dhcpcd # 连接# # systemctl enable dhcpcd 以自动连接
无线连接:
# pacman -S iw wpa_supplicant dialog# wifi-menu # 连接
ADSL 宽带连接:
# pacman -S rp-pppoe# pppoe-setup # 配置# systemctl start adsl # 连接# # systemctl enable adsl 以自动连接
其他
---
--- 创建 ramdisk
--- ---------------------------
默认已创建;若需特别配置,参阅 Arch Wiki > Mkinitcpio---
--- 为 root 用户设置密码
--- ---------------------------# passwd
---
--- 安装引导器
--- ---------------------------GRUB
BIOS:
# pacman -S grub os-prober# grub-install --recheck /dev/<目标磁盘># grub-mkconfig -o /boot/grub/grub.cfg
UEFI:
# pacman -S dosfstools grub efibootmgr# grub-install --target=x86_64-efi --efi-directory=<EFI 分区挂载点> --bootloader-id=arch_grub --recheck# grub-mkconfig -o /boot/grub/grub.cfg
其他引导器
+++
+++ 卸载分区并重启
+++ +++++++++++++++++++++++++++# exit # 退回安装环境# umount -R < / 挂载点> # 卸载新分区# reboot # 重启# # 记得移除安装介质
+++
+++ 用户管理
+++ +++++++++++++++++++++++++++
除非有明确的需求且明白相关风险,建议日常使用中不使用 root 用户,也不建议将任何用户加入 root 用户组。添加用户使用 useradd 命令。具体用法请查看 man 手册或 help 消息。
一个例子:
# useradd -m -g users -s /bin/bash <用户名># # 该命令创建一个名为 <用户名> 的用户,指定登陆 shell 为 bash,所属主用户组 users,用户文件夹位于 /home/<用户名>。# passwd <用户名> # 设置密码
推荐阅读:
Arch Wiki > sudo
+++
+++ 声音管理 Arch Wiki
+++ +++++++++++++++++++++++++++
许多桌面环境亦提供了声音控制功能。若跳过本节,可稍后进行设置。
Arch Linux默认开启了声音支持,默认静音。用户可通过 alsamixer(所属包:alsa-utils) 取消静音:方向键 选中 Master 和 PCM
[M] 取消静音
+++
+++ 配置图形界面
+++ +++++++++++++++++++++++++++---
--- 安装显卡驱动
--- ---------------------------# lspci | grep VGA # 确定显卡型号# pacman -S <驱动包>## # 官方仓库提供的驱动包:# # +----------------------+--------------------+--------------+# # | | 开源 | 私有 |# # +----------------------+--------------------+--------------+# # | 通用 | xf86-video-vesa | |# # +----------------------+--------------------+--------------+# # | Intel | xf86-video-intel | |# # +--------