对于新手来说archlinux的安装我认为可能的难点就在分区上,因此多看一些官方的wiki以及别人的经验分享是很必要的,其它的步骤依照网络上别人分享的步骤依次操作一般没有问题!!
分区相关请查看WIKI页面地址:https://wiki.archlinux.org/index.php/Partitioning_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
详细安装步骤如下,以供参考(出现任何问题本人不承担任何责任):
1、下载ArchLinux安装镜像并 制作U盘启动工具如软碟通(Ultra ISO)
最新的arch打包发生了变化,在pacstrap那一步以前只要pacstrap -i /mnt base base-devel就可以了,现在arch将基础包的众多组件分离了,因此可能会有很多问题,安装完成后可能无法进入系统。
打开Ultra ISO———>打开下载好的archlinux安装镜像——>启动,选择写入硬盘映像——>注意把写入方式改为RAW——>依次操作,很简单不多说。
或者前往https://etcher.io下载 Etcher(制作启动盘工具),Etcher 是跨平台软件,Windows、macOS 和 Linux 都可以使用。U 盘插入电脑后打开 Etcher,点击 [Select image] 选择刚刚下载的 iso 文件,点击「Flash」开始制作。
制作工具建议使用Rufus,写入方式为DD而非ISO.
2、启动到 live 环境
设置电脑从U盘启动,选择从带有 Arch 安装文件的媒介启动,通常是在电脑开机自检的时候按下某个按键,一般会在启动画面有提示。具体参考你主板的手册。当 Arch 菜单出现时,选择Boot Arch Linux并按Enter进入安装环境。
tips:验证启动模式 如果以在 UEFI 主板上启用UEFI模式,Archiso将会使用systemd-boot来启动Arch Linux。可以列出efivars目录以验证启动模式:
# ls /sys/firmware/efi/efivars
如果目录不存在,系统可能以BIOS或 CSM 模式启动,详见您的主板手册。
3、进行联网
连接wifi执行
wifi-menu
或者进行 adsl连接执行
systemctl start adsl
或者进行配置
pppoe-setup
检查一下网络连接是否能ping通
ping -c 3 archlinux.org
4、更新系统时间
# timedatectl set-ntp true
5、编辑镜像站
由于镜像站文件中有太多国外网址,网速慢,所以在镜像站文件开头添加国内镜像站
执行:
nano /etc/pacman.d/mirrorlist
可以手动注释掉或者删除掉非中国的镜像站。执行ctrl+x退出,提示是否保存,输入y,回车进行保存并继续。
tips:关于nano快捷键
ctrl+w:查找 ctrl+6:选择 ctrl+i:tab键 Alt+6:复制
ctrl+d:Delete键 ctrl+u:粘贴 ctrl+h:Backspace键 ctrl+k:剪切一行
ctrl+\:查找并替换 ctrl+g:详细使用说明
6、关于分区可以先了解官方WIKI,地址如下
https://wiki.archlinux.org/index.php/Partitioning_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
Tip:可以用parted/dev/sdaprint或fdisk -l/dev/sda查看当前分区信息,/dev/sda是设备名。
分区表目前有三种分区类型:主分区(Primary)、扩展分区(Extended)、逻辑分区(Logical)。通常习惯是创建主分区sda1到sda3,然后建立一个扩展分区sda4。sda4中包含sda5,sda6等逻辑分区。
选择 GPT 还是 MBR你需要知道这些:
GUID Partition Table(GPT)是一种更灵活的分区方式。它正在逐步取代Master Boot Record(MBR)系统。GPT相对于诞生于MS-DOS时代的MBR而言,有许多优点。新版的fdisk(MBR)和gdisk(GPT)使得使用GPT或者MBR在可靠性和性能最大化上都非常容易。
在做出选择前,需要考虑如下内容:
如果使用 GRUB legacy 作为bootloader,必须使用MBR。
如果使用传统的BIOS,并且双启动中包含 Windows (无论是32位版还是64位版),必须使用MBR。
如果使用UEFI而不是BIOS,并且双启动中包含 Windows 64位版,必须使用GPT。
非常老的机器需要使用 MBR,因为 BIOS 可能不支持 GPT.
如果不属于上述任何一种情况,可以随意选择使用 GPT 还是 MBR。由于 GPT 更先进,建议选择 GPT。
建议在使用UEFI的情况下选择 GPT,因为有些 UEFI firmware 不支持从 MBR 启动。
注意: 为了使 GRUB 从一台有 GPT 分区的基于 BIOS 的系统上启动,需要创建一个BIOS 启动分区, 这个分区和 /boot 没关系,仅仅是 GRUB 使用,不要建立文件系统和挂载。
警告: 请别忘记为boot-loader预留空间。这对于 MBR 和 GRUB-Legacy 来说不是问题,但是许多新方案可能要求占用一个特殊的小分区。
挂载点
下面这些路径可以作为独立分区的挂载点,你也可以根据实际需要做出其他决定。
根分区
根目录是目录树的顶层,这里是主文件系统挂载和其他文件系统挂靠的地方。所有文件和目录都在根目录/显示,即使它们实际上存储在其他的物理设备上。根文件系统中的内容应该足以启动、恢复、修复系统。因此/目录下的特定目录是不能作为独立分区的。
/分区或叫根分区是最重要而且必需的,需要最先挂载,其他其他分区可以被它取代。
警告: 与系统启动相关的特定目录(除了/boot)必须与/在同一个分区,或在系统刚进入用户态的时候通过initramfs挂载。这些特定的目录包括:/etc和/usr[1]。
因为包括/usr目录,根据安装的软件数量,会产生非常明显的增长。15-20 GB 对于大多数用户来说是一个比较合适的取值。如果你打算在这里放一个交换文件(swap file)的话,需要适当调大取值
/boot
/boot分区包含内核、ramdisk 镜像以及 bootloader 配置文件和 bootloader stage。它也可以存放内核在执行用户态程序之前所使用的其他数据。/boot在日常系统运行中并不需要,只在启动和内核升级(包括重建initial ramdisk)的时候用到。
如果使用软RAID0(条带化)系统的话,必须有一个独立的/boot分区。
Note:如果使用 UEFI 启动管理器,支持读取 ESP 文件系统,建议将ESP挂载到/boot.
不使用UEFI时,/boot的建议大小时 200 MB,使用 UEFI 时,需要至少 512 MiB 空间。
/home
/home目录包含用户定义的配置文件、缓存、应用程序数据和媒体文件。
将/home目录独立使得/分区可以单独重新划分,但是请注意你可以在/home没有独立分区的情况下你仍然可以在不修改/home目录内容的情况下重装 Arch —— 删除其他顶级目录,然后执行pacstrap。
不能与使用其他发行版的用户共享同一个home目录,因为不同的发行版可能使用不兼容的软件版本和补丁。可以共享媒体目录,或至少使用/home分区下的不同home目录。分区大小跟着存储的内容而定。
/var
/var目录存储变量数据例如 spool 目录和文件,管理和登录数据,pacman的缓存,ABS树等等。它通常被用作缓存或者日志记录,因此读写频繁。将它独立出来可以避免由于大量日志写入造成的磁盘空间耗尽等问题。
可以将/usr设置为只读挂载。所有在操作系统运行过程中(例如安装或软件维护)写入/usr的东西放到/var下。
注意: /var包含许多小文件。如果将其作为独立分区,在文件系统的选择上需要考虑这一点。
除了其他数据以外,还包括ABS树和pacman缓存。保留缓存的包提供了包降级的能力,因此非常有用。也正因为这样,/var的大小会随着时间推移而增长。尤其是 pacman 缓存将会随着新软件的安装、系统的升级而增长。在磁盘空间不足的时候,可以安全的清理这个目录。/var分配 8-12 GB 对于桌面系统来说是比较合适的取值,具体取值取决于安装的软件数量。。
Swap
swap分区提供能够被作为虚拟内存的内存空间。swap file也可以实现同样的功能,并且它们之间没有明显的性能区别,但是后者更易于根据需要调整大小。如果没有使用休眠特性的话,swap 分区可以被多个系统共享。查看Suspend and hibernate了解如何通过 swap 分区或文件休眠。
在拥有不足 512 MB 内存的机器上,通常为 swap 分区分配2倍内存大小的空间。如果有更大的内存(大于 1024 MB),可以分配较少的空间甚至不需要swap 分区。Suspend and hibernate介绍了如何休眠到 swap 分区或文件.
分区前先计划好分区方案然后进行操作。
cfdisk— 使用 ncurses 库编写的具有伪图形界面的命令行分区工具。相对直观简单。
fdisk— Linux 自带的命令行分区工具。
恰当的分区对齐有助于提升性能和使用寿命。这是由硬件层面和文件系统层面的每次块I/O 操作特性决定的。对齐的关健是分区大小(至少)是块大小的倍数,块大小取决于选用的硬件设备。fdisk/gdisk和parted会自动处理分区对齐。GNU Parted#Check alignment介绍了如何验证分区是否对齐。有些硬盘使用高级格式会提供更好的读写效率。
关于分区的具体操作
首先查看存储设备
fdisk -l
该设备若是/dev/sda,这时候你还可以通过如下命令查看该存储设备下已有的分区情况:
fdisk -l /dev/sda
如果存在已有分区,将会看到包含/dev/sda1,/dev/sda2......等分区信息。这时候我们在该磁盘上的未分配空间上开始建立新分区,用来安装Arch Linux:
fdisk /dev/sda
进入fdisk分区工具,可以使用如下功能:
m: 查看帮助
n: 新建分区
p: 查看已分区信息列表
w: 保存本次分区操作结果并退出
q: 不保存本次分区操作结果并退出
Tips:使用cfdisk比较直观简单
cfdisk /dev/sda
新建分区:
[↑]/[↓](方向键)选中 Free space(空闲空间)
[←]/[→](方向键)选中 New 新建分区
[←]/[→](方向键)选中 Type 选择分区类型(默认为 Linux filesystem;对于 EFI 系统分区选择 EFI System)
输入分区大小(默认单位为字节,可以加上后缀K、M、G),[回车键] 确认
写入分区表:
[←]/[→](方向键)选中 Write
输入 yes [回车] 确定写入。
parted的基本用法
(parted) mkpart part-type fs-type start end
例如
parted /dev/sda
(parted) mklabel msdos
(parted) mkpart primary ext4 1M 500M
(parted)set 1 boot on
(parted) mkpart primary ext4 500M 50G
(parted) mkpart primary linux-swap 50G 54G
(parted) mkpart primary ext4 54G 100%
分区的格式化
mkfs.fat -F32 /dev/sdaX
mkfs.ext4 /dev/sdaX
mkswap /dev/sdaX
挂载分区时应先挂载根分区然后再挂载其它分区
mount /dev/sdaX /mnt
mkdir /mnt/home
mount /dev/sdaX /mnt/home
swapon /dev/sdaX
如下相关分区根据需要挂载
mkdir /mnt/boot
# mount /dev/sda2 /mnt/boot
# mkdir /mnt/boot/efi
# mount /dev/sda1 /mnt/boot/efi
注意:swap分区需要启用执行swapon /dev/sdaX
创建分区目录时也可以一条命令创建多个目录然后分别挂载,例如;
mkdir /mnt/{boot,home}
mount /dev/sda1 /mnt/boot
mount /dev/sda4 /mnt/home
所有分区设置完成后再运行; lsblk 进行检查。
7、安装基本系统
pacstrap /mnt base base-devel linux linux-firmware
8、生成挂载信息文件
genfstab -U /mnt >> /mnt/etc/fstab
再执行命令检查一下
cat /mnt/etc/fstab
9、切换到新系统
arch-chroot /mnt /bin/bash
10、安装nano编辑器,新系统不包含编辑器
pacman -S nano
11、进行本地语言设置
nano /etc/locale.gen
反注释(删掉##)包含
zh_CN.UTF-8 UTF-8
en_US.UTF-8 UTF-8
的前面的#删掉,退出保存。
执行 : locale-gen
执行: echo LANG=en_US.UTF-8 > /etc/locale.conf
也可以执行:nano /etc/locale.conf
自行添加 LANG=en_US.UTF-8 或查看上述命令是否执行成功并添加进去了。
12、设置时区
ln -sf /usr/share/zoneinfo//Asia/Shanghai /etc/localtime
再执行: hwclock --systohc
13、本地化配置
13.1设置主机名
nano /etc/hostname
在打开的编辑器文件中输入可爱的名字如机主取名 pretty,主机名怎么取看你个人喜欢,一般不要以数字开头。
13.2配置hosts文件
nano /etc/hosts
在打开的编辑器文件中输入:
127.0.0.1 localhost
::1 localhost
127.0.1.1 pretty.localdomain pretty
13.3给管理员账号设置密码:
passwd
然后输入密码按回车键,会让你再确认一次,再输入密码再回车。
14.4创建新普通用户,例如名字叫pretty
useradd -m pretty
给pretty设置密码
passwd pretty
然后输入密码按回车键,会让你再确认一次,再输入密码再回车。
为你刚才创建的用户 添加sudo权限: nano /etc/sudoers
在 root ALL=(ALL) ALL 下面添加
pretty ALL=(ALL) ALL
14、安装系统引导
如果是Intel的CPU,安装intel-ucode: pacman -S intel-ucode
如果当前电脑存在其他系统,安装os-prober: pacman -S os-prober
安装grub: pacman -S grub
BIOS模式下部署grub: grub-install --target=i386-pc /dev/sda
UEFI模式下,需要安装efibootmgr,然后部署grub:
pacman -S efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ArchLinux
生成grub配置: grub-mkconfig -o /boot/grub/grub.cfg
15、安装图形界面
pacman -S gnome gnome-extra
gnome自带了很多东西,比如一些游戏我们不需要,在安装的时候会有选择项,输入要安装的应用前的序号或序号段(例如: 2-3 6 11-17),或者是排除不需要的。具体输入格式请百度参考。
Tips:在搜索栏中搜索应用的遗留名称将成功找到对应的应用。如下作参考;
这时候虽然安装了图形界面,但开机的时候默认还是进入命令行。所以,设置开机进入图形界面。GDM是一个图形界面管理器,让它开机启动即可。
systemctl enable gdm
启用网络管理器服务
systemctl enable NetworkManager
触摸板驱动,笔记版可装,台式机就不用了。执行:
pacman -S xf86-input-synaptics
安装字体:Dejavu 和 微米黑字体(不安装的话 后面进入桌面环境设置系统语言为简体中文的时候会出现字体显示不全的问题)执行: pacman -S ttf-dejavu wqy-microhei wqy-zenhei
安装显卡驱动
确定显卡型号执行: lspci | grep VGA
执行: pacman -S 驱动包
16、重启
输入exit或按Ctrl+d退出 chroot 环境。最后,通过执行reboot重启系统。不要忘记移除安装介质,然后登录到新系统。
17、其它配置与美化工作
17.1配置archlinuxcn源
sudo gedit /etc/pacman.conf
在 /etc/pacman.conf 文件末尾添加相应的源。
安装archlinuxcn-keyring导入许可。
17.2安装yay或pamac-cli 根据自己需要。
17.3安装numix-circle-icon-theme-git主题、ant-dracula-theme-git主题、gtk-theme-arc-git主题
具体方法:先git clone http。。。。然后cd 到该文件所在目录,然后makepkg -si
17.4安装steam需要先启用multilib仓库并安装steam软件包。
sudo gedit /etc/pacman.conf
删掉[multilib]源的注释。或者按如下操作
同时删掉文档中 color前的#符号可以实现彩色输出。
17.5安装fcitx输入法框架fcitx及fcitx-configtool、fcitx-libpinyin、fcitx-cloudpinyin等。
17.6安装oh my zsh并配置或者配置bash,详见https://wiki.archlinux.org/index.php/Bash_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)用以实现彩色输出及自动补全等功能以及其它特效等。
17.7安装archlinux-wallpaper执行: pacman -S archlinux-wallpaper
17.8安装firefox及插件, pacman -S flashplugin firefox
17.9 设置pacman彩色输出打开/etc/pacman.conf文件找到被注释掉的#color去掉#,这样就会输出彩色信息,方便查看。
17.10安装win字体 ttf-win7-fonts ttf-office-2007-fonts
17.11要支持制作fat文件系统,安装dosfstools,默认内核只能读取ntfs,要支持ntfs读写,安装ntfs-3g。
sudo pacman-S ntfs-3g dosfstools
17.12安装 sudo pacman-S translate-shell aria2
17.13需要安装create_ap才能使用gnome3设置里的创建热点选项。
sudo pacman-S create_ap
17.14优化系统启动速度
Arch Linux 的systemd-analyze是个很不错的工具,利用它你可以很直观地观察到系统启动的时间都花到哪儿去了:
$ systemd-analyzeStartup finished in6.857s(firmware) +3.157s(loader) +1.870s(kernel) +8.157s(userspace) =20.044s
我注意到打开 AHCI 后,内核和用户空间的载入速度明显提高了,总启动时间从约 30 秒缩短到 20 秒,效果非常明显。
用下面这个命令,可以了解到是什么东西启动最慢:
$ systemd-analyze blame
此外,还可以把启动过程绘制成 SVG 图表供你审阅(用 GNOME 的图片预览或 Chrome 浏览器都可以打开),这个图表中你还可以观察到是否有启动慢的组件影响到了依赖它的组件的启动:
$ systemd-analyze plot > plot.svg
17.15安装其它日常工具及办公套件。