提示:本文或本章节的主题是“安装ArchLinux系统”。关于“为ArchLinux安装软件包”的内容,请查看。
提示:
翻译状态:
本文将指导怎样使用官方安装镜像启动的Live系统安装ArchLinux。安装介质现可提供无障碍辅助功能,对此使用无障碍功能安装ArchLinux页面有详尽描述。关于其它的安装方式,请您参阅安装过程分类下的其他条目。
建议在安装前阅读常见问题。对于本文中使用的惯用术语,请参阅阅读帮助。请将代码中粗体(也有可能是宋体、仿粗体字)的部份按实际情况替换成具体内容。
本手册致力简约且浅显易懂,建议您严格遵守每一节中的次序与指示执行安装。有关更详尽的说明,请您仔细阅读本手册内相应的ArchWiki文章或各种程序的Man指南或并把握核心工具和部份软件包的基础用法。若您须要交互帮助,可以访问ArchLinux英文社区的聊天群组或峰会甚至国际社区。
ArchLinux被设计为可以运行在配置为最低512MiB显存的x86_64构架的计算机上,但若果是从安装介质启动系统并成功安装在计算机硬碟中,则可能须要更多的显存。[1]基本安装方法将占用大于2GiB的硬碟储存空间。因为安装过程中须要从远程储存库获取软件包,计算机将须要一个有效的互联网联接。
安装前的打算[编辑|编辑源代码]获取安装映像[编辑|编辑源代码]
打开下载页面,并按照须要的引导方法,获取ISO文件或netboot映像以及相应的PGP签名。
验证签名[编辑|编辑源代码]
建议使用前先验证所下载文件的签名,非常是从HTTP镜像源/非官方镜像库房下载的文件,由于HTTP联接通常来说容易受到拦截而提供恶意文件,而非官方镜像库房可能会对镜像的文件进行恶意更改。验证签名也能及时发觉文件受损。
在一台早已安装GnuPG的系统上(大部份Linux系统和macOS默认预装),可通过下载PGP签名(在下载页面的Checksums下方)到ISO文件所在的路径,之后用以下形式:
$ gpg --keyserver-options auto-key-retrieve --verify archlinux-版本-x86_64.iso.sig
另外,在一台早已安装ArchLinux的计算机上可以通过以下方法验证:
$ pacman-key -v archlinux-版本-x86_64.iso.sig
注意:
提示:在Windows上,您可尝试Gpg4win,注意:您所下载、安装和使用的Gpg4win程序须要您自行甄别其真假。
打算安装介质[编辑|编辑源代码]
ArchLinux的ISO映像可以被制做成多种类型安装介质,如U盘、和带有PXE的网路安装映像。请依照合适的文章与教程,使用ISO文件为自己打算安装介质。
对于Netboot映像,请根据打算用于UEFI引导的USB闪存驱动器。
启动到live环境[编辑|编辑源代码]
注意:ArchLinux安装镜像不支持UEFI安全启动(SecureBoot)功能。假如要引导安装介质,须要。假如须要,可在完成安装后重新。
选择从带有Arch安装文件的介质启动,一般是须要在计算机启动加电自检时快速按下某个键位(例如部份显卡会是F12键)。启动时的画面也可能会有提示,详情请参考自己的计算机的说明书或显卡说明书。当引导加载程序菜单出现时,您将会以root身分登入步入一个虚拟控制台,默认的Shell是Zsh。
提示:安装映像在UEFI模式下使用systemd-boot引导linux镜像安装教程,在BIOS模式下使用syslinux引导。分别使用e或Tab来输入。Netboot映像使用iPXE,可以在启动选项菜单手指定启动参数。请参阅README.bootparams获取列表。
假如要使用其他控制台(比如在安装时使用Lynx查看本手册),可以使用Alt+箭头快捷键切换不同的控制台。要配置文件,可以使用mcedit(1)、和等文本编辑软件。请参阅packages.x86_64获取安装介质中包含的软件包列表。
关于archinstall的提示[编辑|编辑源代码]
倘若您认为用命令行安装过分冗长,可以试试官方的安装脚本archinstall。详情可参见archinstall。
但不建议初学者用archinstall走捷径,由于自动安装ArchLinux本身就是ArchLinux教学实操中重要的一环,少了这个环节,会让初学者面对一些基础问题时束手无策,为自己和社区带来何必要的麻烦。
使用archinstall前,请先。
# archinstall
提示:使用archinstall安装基础系统之后,可能须要进行一些配置,能够使用户体验得以优化提高。参见与建议阅读等页面。
配置控制台按键布局和字体[编辑|编辑源代码]
系统启动后,控制台按键布局默认为us(英式鼠标)。倘若您须要列举所有可用的按键布局,可以使用以下命令:
# localectl list-keymaps
倘若您想要修改按键布局,可以使用loadkeys(1)。例如,要添加日语按键布局:
# loadkeys de-latin1
提示:英文环境用户切勿照搬以上设置,默认按键布局(us/C)早已可以正常地使用。
坐落/usr/share/kbd/consolefonts/目录中,设置方法请参考setfont(8)。比如,要使用适宜的最大字体之一,请运行以下命令:
# setfont ter-132b
验证引导模式[编辑|编辑源代码]
要验证系统目前的引导模式,请复查UEFI位数:
# cat /sys/firmware/efi/fw_platform_size
假如命令结果为64,则系统是以UEFI模式引导且使用64位x64UEFI。假如命令结果为32,则系统是以UEFI模式引导且使用32位IA32UEFI,尽管其受支持,但引导加载程序只能使用systemd-boot和GRUB。假如文件不存在,则系统可能是以BIOS模式(或CSM模式)(这两种模式一般出现在老旧的笔记本或未经配置的虚拟机上)引导。假如系统没有以您想要的模式(UEFI或BIOS)引导启动,请您参考自己的计算机或显卡说明书。
联接到互联网[编辑|编辑源代码]
要在Live环境中配置网路联接,请遵守以下步骤:
确保系统早已列举并启用了,用ip-link(8)检测:
# ip link
对于无线局域网(Wi-Fi)和无线广域网(WWAN),请确保网卡未被rfkill禁用。联接到网路:配置网路联接:用检测网路联接:
# ping archlinux.org
注意:默认情况下,安装映像在启动时早已预先配置好并启用了systemd-networkd、systemd-resolved、iwd和ModemManager(英文:ModemManager)。但在早已安装完成了的系统之中并非这么。
更新系统时间[编辑|编辑源代码]
在Live环境中systemd-timesyncd默认启用linux镜像安装教程,也就是说当系统早已创建互联网联接后linux中文乱码,系统时间将手动同步。
使用timedatectl(1)确保系统时间是同步的,建议提早执行timedatectlset-timezone地区/城市(中国用户可以使用timedatectlset-timezoneAsia/Shanghai以设置南京时间):
# timedatectl
创建硬碟分区[编辑|编辑源代码]
系统假如辨识到计算机的外置硬碟、U盘或则联通硬碟等类型c盘,都会将其分配为一个,如/dev/sda、/dev/nvme0n1或/dev/mmcblk0。可以使用lsblk或则fdisk查看:
# fdisk -l (此处为小写字母l)
结果中以rom、loop或则airootfs结尾的设备可以被忽视。结果中以rpbm、boot0或则boot1结尾的mmcblk*设备也可以被忽视。
注意:假若您想要的c盘没有显示下来,。
提示:在分区之前,请您检测NVMe驱动器和先进低格硬碟是否使用了最佳逻辑磁道大小。须要注意的是,修改逻辑磁道大小后,可能会造成在Windows系统中出现兼容性问题。
对于一个选取的设备,以下分区是必需要有的:
请使用分区工具(fdisk、parted、cfdisk等等)更改分区表。诸如:
# fdisk /dev/要被分区的磁盘
注意:
分区方案示例[编辑|编辑源代码]对于UEFI与分区表的c盘分区方案已安装系统上的挂载点分区建议大小
/boot1
/dev/efi_system_partition
EFIsystempartition
1GiB。
[SWAP]
/dev/swap_partition
Linuxswap(交换空间)
起码4GiB
/dev/root_partition
Linuxx86-64根目录(/)
设备剩余空间,起码23-32GiB
假如使用的引导加载程序才能从根c盘卷中加载内核和initramfs映像,则可以使用(比如/efi)。请您参阅中的警告部份。对于传统BIOS与分区表的c盘分区方案已安装系统上的挂载点分区建议大小
[SWAP]
/dev/swap_partition
Linuxswap(交换空间)
起码4GiB
/dev/root_partition
Linux
设备剩余空间,起码23-32GiB
另请参阅。
低格分区[编辑|编辑源代码]
创建分区后,必须使用合适的文件系统对每位新创建的分区进行低格。详情请参阅。
注意:对于堆叠式块设备(stackedblockdevices)请使用恰当的块设备路径替换下文中的/dev/*_partition处。
比如,要在根分区/dev/root_partition上创建一个Ext4文件系统,请运行:
# mkfs.ext4 /dev/root_partition(根分区)
假如你要创建一个EFI系统分区,使用mkfs.fat(8)将其为Fat32。
警告:只有在分区步骤中创建EFI系统分区时才须要低格。假如这个c盘上早已有一个EFI系统分区了,将它重新低格会破坏其他已安装操作系统的引导加载程序。
# mkfs.fat -F 32 /dev/efi_system_partition(EFI 系统分区)
假如创建了交换分区,请使用mkswap(8)将其初始化:
# mkswap /dev/swap_partition(交换空间分区)
挂载分区[编辑|编辑源代码]
将根c盘卷到/mnt,比如:
# mount /dev/root_partition(根分区) /mnt
之后使用mkdir(1)在/mnt下创建任何剩余的挂载点(比如,为/boot而创建/mnt/boot),并按相应的层级次序挂载相应的c盘卷。
提示:使用--mkdir选项运行mount(8)来创建指定的挂载点。或则,先使用mkdir(1)创建挂载点再挂载。
注意:挂载分区一定要遵守次序,先挂载根(root)分区(到/mnt),再挂载引导(boot)分区(到/mnt/boot或/mnt/efi,假如单独分下来了的话),最后再挂载其他分区。否则您可能遇见安装完成后未能启动系统的问题。参见。
对于UEFI系统,挂载EFI系统分区:
# mount --mkdir /dev/efi_system_partition /mnt/boot
假如创建了交换空间卷,请使用swapon(8)启用它:
# swapon /dev/swap_partition(交换空间分区)
稍后genfstab(8)将手动检查挂载的文件系统和交换空间。
开始安装系统[编辑|编辑源代码]选择镜像站[编辑|编辑源代码]
系统的文件/etc/pacman.d/mirrorlist中定义了软件包会从那个镜像站下载。在LiveCD启动的系统上,且在联接到互联网后,reflector会通过选择20个最新同步的HTTPS镜像站并按下载速度对其进行排序来更新镜像列表(因为只考虑最新的20个镜像站,其结果常不佳)。
在列表中,越靠前的镜像站在下载软件包时,都会有越高的优先级。请您检测/etc/pacman.d/mirrorlist文件,瞧瞧列举的镜像站的次序是否合适。假如不合适,可以自动编辑文件,将离您所处地理位置近来的镜像移到文件的颈部,同时也应当考虑一些其他的衡量标准。
假如/etc/pacman.d/mirrorlist文件中没有合适的镜像站,可以自动从archlinux官方网站的镜像站列表下载一份。这须要您所在的网路才能正常访问archlinux官方网站。诸如,使用curl(1)下载坐落中国内地的HTTPS镜像站:
# curl -L 'https://archlinux.org/mirrorlist/?country=CN&protocol=https' -o /etc/pacman.d/mirrorlist
或则,也可以通过安装pacman-mirrorlist包来获取按国家分列的原始镜像列表。如此做的缺点是,pacman一直会使用当前配置中的镜像站来下载软件包数据库和pacman-mirrorlist包,这可能会很慢。在选购了能用的镜像以后,可以执行
# pacman -Sy pacman-mirrorlist
再将/etc/pacman.d/mirrorlist.pacnew复制到/etc/pacman.d/mirrorlist并进行编辑。
或则,假如您记得想要使用的镜像站的URL,这么可以自动编辑/etc/pacman.d/mirrorlist文件并自动输入URL。
这个文件接出来都会被pacstrap拷贝到新系统里,所以请您确保设置正确。
更新秘钥环[编辑|编辑源代码]
Live系统上面的秘钥环很容易过时,使用过时的镜像安装系统很容易造成在pacstrap的时侯难以正常安装软件包(提示为文件签名受损)。
# pacman -Syu archlinux-keyring
使用前面的命令更新当前Live系统的秘钥环,也可以避免由于意外造成开发者公钥失窃用导致的安全问题。
假如您在Live系统里启用了英文社区库房或其他非官方用户库房,也不要忘了一齐更新其秘钥环。
参见pacman/软件包签名。
安装必需的软件包[编辑|编辑源代码]
注意:不仅/etc/pacman.d/mirrorlist之外的软件或配置不会从Live环境传递到安装的系统中。因而,若您在Live环境的/etc/pacman.conf里启用了非官方用户库房(如archlinuxcn库房),请在新安装的系统自动启用之。
使用pacstrap(8)脚本,安装base包软件包和Linux内核以及常规硬件的固件:
# pacstrap -K /mnt base linux linux-firmware
这时侯可以同时额外安装计算机的CPU微码包。假如计算机是Intel的CPU,使用intel-ucode包,AMDCPU则使用amd-ucode包。也可以暂时都不安装,等到步入系统后再安装。
注意:安装微码包有可能使你下载完上述软件包(如base包)后出现难以安装软件包的情况,这时你可能有必要自动删掉微码包。
提示:
base包软件包并没有包含Live环境中的全部程序。因而要获得一个功能齐全的基本系统,可能须要安装更多软件包。要安装其他软件包或软件包组(例如base-devel包组),请将它们的名子追加到下边的pacstrap命令后(以空格分隔),或则也可以在后使用pacman自动安装。非常要考虑安装:
文件pkglist.x86_64.txt中包含Live系统安装的软件包列表。
配置系统[编辑|编辑源代码]生成fstab文件[编辑|编辑源代码]
通过以下命令生成fstab文件(用-U或-L选项设置UUID或卷标):
# genfstab -U /mnt > /mnt/etc/fstab
强烈建议在执行完以上命令后,检测一下生成的/mnt/etc/fstab文件是否正确。假如有问题,最好在现今自动更改。
可以自动更改/mnt/etc/fstab添加挂载选项(参见和)。诸如,给固态硬碟的ext4文件系统添加discard选项以启用TRIM。
警告:在启用TRIM功能前,请确保SSD支持TRIM,否则可能引起数据遗失!
chroot到新安装的系统[编辑|编辑源代码]
通过以下命令chroot到新安装的系统:
# arch-chroot /mnt
提示:此处使用的是而不是直接使用linux web服务器,注意不要输错了。
设置时区[编辑|编辑源代码]
通过以下命令设置:
# ln -sf /usr/share/zoneinfo/Region(地区名)/City(城市名) /etc/localtime
提示:比如,在中国内地须要将时区设置为上海时间,这么请运行#ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime。时区名称是青岛而非上海,是由于北京是该时区内人口最多的城市()。
之后运行hwclock(8)以生成/etc/adjtime:
# hwclock --systohc
这个命令假设已设置硬件时间为UTC时间。详尽信息请查看。
为了避免时钟甩尾并确保时间确切,请使用NTP(网路时间合同,NetworkTimeProtocol)顾客端(比如systemd-timesyncd)设置。
区域和本地化设置[编辑|编辑源代码]
程序和库假如须要本地化文本,都依赖区域设置,前者明晰规定了地域、货币、时区日期的格式、字符排列方法和其他本地化标准。
须要设置这两个文件:locale.gen与locale.conf。
编辑/etc/locale.gen,之后取消掉en_US.UTF-8UTF-8和其他须要的UTF-8区域设置前的注释(#)。
接着执行locale-gen以生成locale信息:
# locale-gen
之后创建locale.conf(5)文件,并,例如:
/etc/locale.conf
LANG=en_US.UTF-8
另外对于英文用户:
提示:设置的LANG变量需与locale设置一致,否则会出现以下错误:
CannotsetLC_CTYPEtodefaultlocale:Nosuchfileordirectory
警告:并不推荐在此设置任何英文locale,这可能会造成tty上英文显示为小方块(由于TTY下没有CJK字体)。假如您不时常使用tty,或是稍后须要安装桌面环境,则在不使用tty后可以设置为英文的locale。为了使TTY显示英文,也可以使用打了补丁的内核,如linux-lilyCNRepo。
假如须要更改,可编辑vconsole.conf(5)使其常年生效,以英语鼠标(qwertz)为例:
/etc/vconsole.conf
KEYMAP=de-latin1
注意:假如按键为标准英式鼠标(中国最常见的按键布局),切勿照搬如上设置。
网路配置[编辑|编辑源代码]
创建文件:
/etc/hostname
主机名
请接着完成新安装的环境的网路配置,配置过程中可能须要安装合适的软件。
警告:请按上述网路配置指引正确配置好网路后再重新启动,否则系统重新启动后可能难以联接网路(不过可以用LiveCD重新步入进行配置)。诸如在虚拟机软件VirtualBox安装并使用桥接模式时就须要配置DHCP。
关于initramfs[编辑|编辑源代码]
一般不须要自己创建新的initramfs,由于在执行pacstrap时早已安装linux包,这时早已运行过mkinitcpio了。
假如是LVM(德语:)、系统加密或等分区配置,请更改mkinitcpio.conf并用以下命令重新创建一个Initramfs:
# mkinitcpio -P
设置root密码[编辑|编辑源代码]
使用以下命令设置root:
# passwd
提示:建议为root用户选择一个并。
安装引导程序[编辑|编辑源代码]
须要安装Linux引导加载程序,能够在安装后启动系统,可以使用的的引导程序已在引导加载程序中列举,请选择一个安装并配置它,GRUB是一个比较常见且通用的选择。
警告:这是安装的最后一步也是关键的一步,请点击上述链接并按指引正确安装好引导加载程序后再重新启动。否则计算机重新启动后将难以正常步入ArchLinux系统。
重新启动计算机[编辑|编辑源代码]
输入exit或按Ctrl+d退出chroot环境。
可选用umount-R/mnt自动卸载被挂载的分区:这有助于发觉任何“繁忙”的分区,并通过fuser(1)查找缘由。
最后,通过执行reboot重启系统,systemd将手动卸载一直挂载的任何分区。这时侯不要忘掉移除安装介质,之后使用root帐户登入到新系统。
提示:若系统出现问题,可尝试重新步入Chroot环境以补充、完善安装和配置,或查看以定位、修复问题。
安装后的工作[编辑|编辑源代码]
创建非特权帐户、图形用户界面的安装、声音管理、触摸板支持等系统管理教程和后期工作参见建议阅读及其子页面。
感兴趣的各种程序,请参见应用程序列表。
还建议新用户阅读给新用户的关于怎么不去砸烂ArchLinux系统的建议一文。