Archlinux安裝指南(uefi+gpt)
Posted konglingbin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Archlinux安裝指南(uefi+gpt)相关的知识,希望对你有一定的参考价值。
1.系统安装前的一些准备
首先在Archlinux官网下载镜像文件,然后刻录到U盘或光盘上。在我的机器上刻录arch镜像文件到U盘后启动不了,因为时间问题我没做过多的探索,所以后面直接刻录到光盘,用光驱启动成功(我用的刻录工具是软碟通)。
加载完成进入系统后,首先用parted分区工具对硬盘进行分区。以下是用pared工具分区的示例:
分区情况:
硬盘分区 挂载点 文件系统
/dev/sda1 /boot/efi vfat
/dev/sda2 /boot ext2
/dev/sda3 swap
/dev/sda4 / btrfs
/dev/sda5 /var btrfs
/dev/sda6 /usr btrfs
/dev/sda7 /home btrfs
首先在终端里输入命令parted进入分区界面
#parted /dev/sda //若对其他硬盘分区,把sda改为sdb或sdc等
- 1
然后建立gpt分区表,注意:这步会擦除硬盘上的所有数据!如果此硬盘装有其他系统,或者要装双系统的同学,则可跳过建立GPT分区表和ESP分区这两部。一般装有win10系统的电脑已经建有ESP分区,可以直接使用。
#(parted)mklabel gpt //(parted)前缀表示已进入parted分区工具界面,可进行分区操作。
- 1
- 2
建立ESP分区,用于挂载efi分区(uefi模式必须要有efi分区)
# (parted)mkpart primary 2048s 512M
- 1
建立其他分区(分区数量因人而异,也可以只划分swap分区和/分区)
#(parted)mkpart primary 512 812M //boot分区大小为300M
#(parted)mkpart primary 812 663440M //swap分区,大小为4G, //若机器内存>=4G并且不需要休眠功能的话则可以不需要交换分区.
#(parted)mkpart primary 663440 673680M //根分区,大小为10G
#(parted)mkpart primary 673680 689040M //var分区,大小为15G
#(parted)mkpart primary 689040 709520M //usr分区,大小为20G
#(parted)mkpart primary 709520 -1 //home分区,大小为硬盘的剩余大小。
- 1
- 2
- 3
- 4
- 5
- 6
注意:分区时注意4k对齐
设定ESP分区标志为boot
#(parted)set 1 boot on
- 1
查看
#(parted)q
- 1
退出parted
#(parted)q
- 1
查看硬盘的分区情况
#lsblk -l
- 1
接下来格式化硬盘分区
ESP分区格式化成fat32文件系统
#mkfs.vfat -F32 /dev/sda1 当询问是否覆盖文件的时候,选yes
- 1
/boot分区格式化成ext2文件系统
#mkfs.ext2 /dev/sda2
- 1
创建交换分区
#mkswap /dev/sda3 //若机器内存>=4G并且不需要休眠功能的话则可以不需要交换分区.
- 1
其他分区格式化成btrfs,我个人比较喜欢这个文件系统,当然比较大众的文件系统是ext4
#mkfs.btrfs -f /dev/sda4 //-f参数是强制格式化,如果硬盘上有数据的话要加参数-f才能格式化硬盘分区。
#mkfs.btrfs -f /dev/sda5
#mkf.btrfs -f /dev/sda6
#mkfs.btrfs -f /dev/sda7
- 1
- 2
- 3
- 4
若使用ext4,则
#mkfs.ext4 -t /dev/sda4 //其他分区依次类推
- 1
- 2
然后挂载分区
1.先挂载根分区到/mnt
#mount /dev/sda4 /mnt //sda4为根分区,然后在sda4分区上建立所需的系统文件夹
#cd /mnt
#mkdir -v boot usr var home
//建立完成后检查一下/mnt下是否都有这几个文件夹
- 1
- 2
- 3
- 4
2.挂载/dev/sda2到/mnt/boot
#mount /dev/sda2 /mnt/boot
- 1
3.然后在/mnt/boot里创建efi挂载点
#mkdir -v /mnt/boot/efi
#mount /dev/sda1 /mnt/boot/efi //挂载/dev/sda1到/mnt/boot/efi
- 1
- 2
4.挂载/dev/sda5 到/mnt/var
#mount /dev/sda5 /mnt/var
- 1
5.挂载/dev/sda6到/mnt/usr
#mount /dev/sda6 /mnt/usr
- 1
6.挂载/dev/sda7到/mnt/home
#mount /dev/sda7 /mnt/home
- 1
7.激活swap分区
#swapon /dev/sda3 //若机器内存>=4G并且不需要休眠功能的话则可以不需要交换分区.
- 1
至此,安装前的准备已完成。
2.基础系统安装
1.编辑/etc/pacman.d/mirrorlist文件
#nano /etc/pacman.d/mirrorlist
- 1
只保留中国的源,顺便留一个美国的源和一个台湾的源,可以使用ctl+k去掉不需要的源,最后,用ctl+k(剪切)、ctl+u(粘贴)把剩下的源排顺序,建议把ustc和163的源放在最上面,因为这两个源速度真的很快。弄好后ctl+o保存变更,最后ctl+x退出编辑器。
2.联网,没有网路用arch不现实
#wifi-menu //选择无线网路;若是有线网路,arch已经自动启动dhcpcd来联网
- 1
3.安装基本系统
pacstrap -i /mnt base base-devel //安静的等待几分钟.....
- 1
4.生成fstab文件
#genfstab -U -p /mnt >> /mnt/etc/fstab
- 1
5.确认是否生成无误
#nano /mnt/etc/fstab
- 1
fstab文件看上去是像这样的,以我的为例
#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/sda9
UUID=1603cd25-707d-4d04-a542-e612b8821010 / btrfs rw,noatime,ssd,space_cache,subvolid=5,subvol=/ 0 0
# /dev/sda2
UUID=1336841b-4b6a-4af4-a8e6-46747a2bb15e /boot ext2 rw,noatime,block_validity,barrier,user_xattr,acl,stripe=4 0 2
# /dev/sda1
UUID=E401-83AC /boot/efi vfat rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remo$
................
//建议把relatime改成noatime(我的第二个挂载参数)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
6.chroot到新安装的系统
#arch-chroot /mnt
- 1
3.系统安装后的一些配置
7.时区与编码(编辑locale.gen文件,去掉en_US.UTF-8,zh_CN.UTF-8,zh_CN.GBK,zh_TW.前面的#
#vi /etc/locale.gen
- 1
然后重建编码表
#locale-gen
- 1
8.设置时区
#tzselect
#ln -S /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#hwclock --localtime //同步本地时钟
- 1
- 2
- 3
- 4
- 5
- 6
10.设置主机名
#echo YourHostName > /etc/hostname
- 1
11.设置语言
# echo LANG=en_US.UTF-8 > /etc/locale.conf
- 1
12.重要的一步,因为本次安装系统时,/usr分区是独立分出去的,所以必须要修改/etc/mkinitcpio.conf文件,否则安装完重启后不能进入新系统。
#nano /etc/mkinitcpio.conf
- 1
请按如下说明修改之。
第7行 把 MODULEA="" 修改为 MODULES="ahci btrfs" //这项属于一般的优化问题,不改也可以。
第52行 HOOKS="base udev autodetect modconf block filesystems keyboard fsck" 在末尾加入usr shutdown
HOOKS="base udev autodetect modconf block filesystems keyboard fsck usr shutdown"
第60行 把COMPRESSION="xz"前面的#号去掉,xz的压缩效率更高。
- 1
- 2
- 3
- 4
别急,等下一步安装btrfs-progs时会自动更新.img文件!
14.安装btrfs-progs(因为本次安装使用btrfs文件系统,所以要安装这个包;对于ext4文件系统可以不安装这些包,;其他文件系统,比如nilfs2,需要相应的安装nilfs-utils包)
#pacman -S btrfs-progs
- 1
13.安装一些必要软件
pacman -S dialog wpa_supplicant //安装联网软件,否则重启进入新 系统后不能连上wifi
pacman -S grub efibootmgr os-prober(双系统需要)
//然后安装引导管理器
#grub-install --efi-directory=/boot/efi --bootloader-id=grub
#grub-mkconfig -o /boot/grub/grub.cfg
- 1
- 2
- 3
- 4
- 5
15.添加用户
#useradd -m -g users -G wheel -s /bin/bash 用户名
#passwd 用户名 //为用户设置密码
- 1
- 2
4.安装图形服务(xorg)
16.安装图形驱动
#pacman -S xorg-server xorg-xinit
- 1
17.安装触控板驱动
#pacman -S xf86-input-synaptics
- 1
18.安装显卡驱动(根据机器要求安装)
#pacman -S xf86-video-intel //intel集成显卡驱动
#pacman -S xf86-video-amdgpu //amd集成显卡驱动
#pacman -S xf86-video-ati //ati显卡驱动
//可以使用pacman -Ss xf86-video 查询是否有自己需要的显卡驱动
- 1
- 2
- 3
- 4
4.安装图形服务(wayland)
若使用wayland图形服务
#pacman -S wayland weston
- 1
19.安装字体
#pacman -S ttf-dejavu wqy-microhei
- 1
5.安装桌面(gnome)
20.安装gnome桌面环境
注意:新的gnome默认使用wayland,请注意下面关于wayland的配置。
#pacman -S gnome
- 1
21.安装登录管理器gdm
#pacman -S gdm
#systemctl enable gdm.service //开机自动启动gdm
- 1
- 2
6.系统安装完成后的配置
22.安装fcitx输入法
pacman -S fcitx fcitx-im fcitx-configtool
- 1
对于xorg,要配置.xinitrc文件,没有这个文件时要自己创建。
$nano ~/.xinitrc
添加以下内容
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
- 1
- 2
- 3
- 4
- 5
若是wayland,则在/etc/environment里配置(此教程示例安装gnome3,它默认使用wayland,所以要配置/etc/environment,否则不能使用拼音输入法。)
#nano /etc/environment
在末尾添加以下内容
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
- 1
- 2
- 3
- 4
- 5
23.添加archlinuxcn源
在 /etc/pacman.conf 文件末尾添加两行:
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
- 1
- 2
然后安装 archlinuxcn-keyring 包以导入 GPG key
#pacman -S archlinuxcn-keyring
- 1
24.安装yaourt
#pacman -S yaourt //archlinux是社区用户软件仓库。
- 1
25.安装sudo
pacman -S sudo //为普通用户配置sudo权限
- 1
然后配置/etc/sudoers,找到
## User privilege specification
##
root ALL=(ALL) ALL //在第79行
用户名 ALL=(ALL) ALL //在第80行添加这行,即可为普通用户添加sudo权限
- 1
- 2
- 3
- 4
26.安装搜拼音输入法(前提是安装了yaourt或添加了archlinuxcn源)
$yaourt -S fcitx-sogoupinyin 或
#pacman -S fcitx-sogoupinyin
- 1
- 2
27.安装networkmanager
#pacman -S networkmanager
#systemctl enable NetworkManager.service //开机启动网络管理程序,然而你没看错,这两个字母确实是大写。
- 1
- 2
28.为root设置密码,否则root密码默认为空,非常危险。
#passwd
- 1
29.退出chroot环境,重启电脑进入刚安装好的arch
#exit //退出chroot
#reboot //重启电脑
- 1
- 2
到此,已基本差不多完成archlinux系统的安装与设置
7.优化及注意事项
30.安装tlp电源管理软件
#pacman -S tlp tlp-rdw //其他电脑
#pacman -S tlp tlp-rdw tp-smapi-dkms acpi-call-dkms //thinkpad电脑使用此项
- 1
- 2
tlp的配置文件在/etc/default/tlp内,可以根据自己的需求配置,对于笔记本在意续航时间的话可以配置成节能型,里面的参数设置已有详细说明。
设置tlp开机启动
#systemctl enable tlp.service
#systemctl enable tlp-sleep.service
- 1
- 2
31.对于双显卡电脑禁用Nvidia显卡
首先安装bbswitch
pacman -S bbswitch
- 1
然后在/etc/modules-load.d下新建bbswitch.conf,并修改为如下内容。
bbswitch
- 1
三,在/etc/modprobe.d/下新建bbswitch.conf,并修改为如下内容。
options bbswitch load_state=0
- 1
最后,在/etc/modprobe.d/下新建nouveau_blacklist.conf,并修改为如下内容。
blacklist nouveau
blacklist nvidiafb
- 1
- 2
对于有NVIDIA显卡的电脑,若想使用双显卡,可以用bumblebee来设置,由于在archlinux平台上鄙人没有使用过bumblebee来实现双显卡切换,只是简单禁用而已,所以此问题请参阅Bumblebee ArchWiki
32.安装一些常用软件
yaourt -S netease-cloud-music //安装网易云音乐
pacman -S wps-office //安装金山办公软件
pacman -S zip unzip rar unrar p7zip //压缩与解压缩软件
pacman -S file-roller //归档管理器
pacman -S firefox //安装火狐浏览器
pacman -S google-chrome //安装谷歌浏览器
以上是关于Archlinux安裝指南(uefi+gpt)的主要内容,如果未能解决你的问题,请参考以下文章
UEFI+GPT引导基础篇 :什么是GPT,什么是UEFI?
电脑uefi启动需要所有分区都是GPT格式还是只要系统盘为GPT格式?