Featured image of post ArchLinux安装

ArchLinux安装

前言

本来有写这个博客的想法,但无奈最近时间比较忙 一心想去编译Samsung内核,中间一波多折.

故一拖再拖。幸好最近内核的进程一直搁置,我就打算今晚扔到Stackoverflow然后收获一堆downvote,或者去XDA看看。

材料准备

电脑,U盘各一个,在ArchLinux官方 选择镜像站下载镜像,用Etcher 制作启动U盘

  • Etcher 有个非常好的优点——全平台兼容,酱紫就不怕出现在Linux很难制作Windows启动U盘的尴尬场面。

安装步骤

制作启动盘

打开Etcher 直接选择iso文件再选择U盘安装即可

进入BIOS

每个主板或笔电进入BIOS的方法,各不相同故请自行Google 记得在BIOS里面关闭secure boot

连接网路

有线网路

接上网路,稍等片刻即可

无线网路

iwctl #进入无线网路工具         
device list # 列出网路设备 通常为Wlan0
station wlan0 scan #扫描无线网路
station wlan0 get-networks #列出可用无线网路
station wlan0 connnect WiFiname
  • WiFiname 为WiFi 名称,输入一部分可用Tab补全,然后输入密码回车,最后输入exit退出

测试网路连接是否正常

ping www.bing.com

设置镜像网站

把我们要设定的镜像站放在前面

  • 使用上下左右键移动,按i输入文字,改好后按Esc,再输入「:wq」退出VIM
  • 如果真的不会如何使用vim那就Google一下再回来吧
vim /etc/pacman.d/mirrorlist #打开文件按需求把下面的源加进去

中国大陆用户设定清华源和中科大即可

#China 
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch

分割磁盘

archlinux安装需要分三个分区

efi分区 512MB.

swap分区 运存的60% # 看个人运存而定

主分区 剩余部分即为主分区 .

下面将会用cfdisk分割磁盘,efi分区格式type为 EFI Ssystem,Swap分区为Swap System,主分区为Lnux System

cfdisk /dev/nvme0n1 #执行分割分区大小,类型
fdisk -l # 查看分区情况
配置分区
mkswap /dev/nvmexn1p2 # 格式化 swap 分区
mkfs.vfat /dev/nvmexn1p1 #格式化EFI分区
mkfs.btrfs -L ArchLinux /dev/nvmexn1p3 # 格式化主分区为ext4

mount -t btrfs -o compress=zstd /dev/nvmexn1p3 #挂载主分区到/mnt, 为创建子卷做准备

btrfs subvolume create /mnt/@ # 创建 / 目录子卷
btrfs subvolume create /mnt/@home # 创建 /home 目录子卷
unmount /mnt 
挂载分区
mount -t btrfs -o subvol=/@,compress=zstd /dev/nvmexn1p3 /mnt # 挂载 / 目录
mkdir /mnt/home # 创建 /home 目录
mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvmexn1p3 /mnt/home # 挂载 /home 目录
mkdir -p /mnt/boot # 创建 /boot 目录
mount /dev/nvmexn1p1 /mnt/boot # 挂载 /boot 目录
swapon /dev/nvmexn1p1 # 挂载交换分区
fdisk -l #查看分区挂载是否正确

使用pacstrap安装基本Linux base、linux

pacstrap /mnt linux linux-firmware linux-headers base base-devel vim btrfs-progs 

生成fstab

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

检视挂载状况

cat /mnt/etc/fstab

chroot到系统。

arch-chroot /mnt

设定主机名和时区

首先在/etc/hostname设定主机名字

vim /etc/hostname #输入ArchLinux 再:wq保存退出即可

ArchLinux 为主机名

在vim /etc/hosts配置hosts

127.0.0.1   localhost
::1         localhost
127.0.1.1   ArchLinux.localdomain ArchLinux

设定时区

ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime # 设定台北为时间同步时区 二选一
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 设定上海为时间同步时区 

硬体时间

用命令将同步时间设定到硬体

hwclock --systohc

安装微码

pacman -S intel-ucode # Intel
pacman -S amd-ucode # AMD

设定locale

编辑 /etc/locale.gen,去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 tw_CN.UTF-8 UTF-8

vim /etc/locale.gen
locale-gen 

在 /etc/locale.conf 设定为英文,防止乱码

echo 'LANG=en_US.UTF-8'  > /etc/locale.conf

安装桌面程式

安装基本软件

pacman -S sudo networkmanager vim firefox noto-fonts-cjk noto-fonts-emoji
pacman -S xorg xorg-server pipewire nvtop
pacman -S fcitx5-im fcitx5-chewing fcitx5-qt fcitx5-gtk fcitx5-chinese-addons # 输入法
pacman -S git openssh fakeroot base-devel
pacman -S sof-firmware alsa-firmware alsa-ucm-conf #声卡

安装gnome 桌面

pacman -S gnome gdm 

安装KDE桌面

pacman -S sddm plasma-meta kde-applications plasma-wayland-session
  • sddm 为kde桌面的登录管理器,而gdm为gnome的, 两个桌面二选一即可

为Root用户设定密码

passwd root

配置Root用户默认编辑器

  • 在git 和visudo archlinux会使用vi而不是vim,有时候会出错,所以需要设置默认编辑器
vim ~/.bash_profile
export EDITOR='vim'

创建普通用户

  • username 为用户名,可自行改成自己的名字如 black useradd -m -G wheel -s /bin/bash username passwd user # 设定普通用户密码

给予普通用户sudo权限

EDITOR=vim visudo # 设定visudo的编辑器为vim,上面的配置尚未生效
  • 找到这行#%wheel ALL=(ALL:ALL) ALL,并把前面的注释符 # 去掉

设置开机服务

systemctl enable gdm.service #gnome桌面需要
systemctl enable NetworkManager.service #网络管理器,连接网络所需
systemctl enable sshd.service #ssh服务
sudo systemctl enable --now bluetooth 

安装引导程式

安装对应的软体

pacman -S grub efibootmgr

安装grub 到EFI分区

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH

生成grub所需文件

grub-mkconfig -o /boot/grub/grub.cfg

系统安装完成。退出chroot,取消挂载,重启

exit
umount /mnt
reboot 重启 

_

系统后续安装优化

配置中文输入法

sudo vim /etc/environment

把下面这几行加入即可

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus
  • 在桌面打开 fcitx5 搜索拼音(Pinyin)添加即可

pacman软件管理器使用方式

pacman 相当于ubuntu 的apt-get,此节列出Arch Linux的套件管理员pacman的常用指令。
搜索线上仓库软件

sudo pacman -Ss <软件名称>

用此指令安装软件

sudo pacman -S <软件名称>

卸载软件

sudo pacman -R <软件名称>

以下指令会更新整个系统的软件。因为Arch Linux是滚动发行版,建议每半个月进行一次全系统更新。更新前建议看ArchLinux官方的新闻有无更新注意事项。

sudo pacman -Syu

强制同步软件库。某个软件无法下载的时候才执行此指令。

sudo pacman -Syuu

删除本机软件快取

sudo pacman -Sc

查看本地已安装软件

sudo pacman -Qt

安装AUR 助手

AUR (Arch User Repository) 是Arch Linux官方软件库以外的主要软件来源。AUR没有收录套件档案,只有编译软件的设定档。AUR软件最直接的装法是手动git clone远程仓库,再用makepkg指令打包安装。

但是这样太麻烦了,所以我们通常会安装一个AUR Helper来自动化处理,我使用Paru,语法跟pacman很像

sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si

Paru 安装软件

paru -S google-chrome # 按下Enter同意安装,并按照萤幕提示输入密码

Paru 移除软件件

paru -R google-chrome

更新所有AUR套件,并顺便更新整个系统的套件:

paru -Syu

Clash for windows 代理软体

开启Clash for windows GitHub仓库 ,下载含linux字符文件并解压运行cfw即可,如有不明之处可查看官网

  • Clash for Windows 已删库,我们使用clash-verge-rev

paru -S clash-verge-rev-bin

自用gnome 插件

安装 gnome 插件管理器

paru -S gnome-browser-connector

开启32位库支持

vim /etc/pacman.conf

仅需把下面两行前面的#去掉,输入:wq保持并退出即可,然后强制更新整个系统

#[community]
#Include = /etc/pacman.d/mirrorlist

sudo pacman -Syyu #更新系统

Android 刷机工具

sudo pacman -S android-tools

blur-my-shell 模糊抽屉界面不再是灰色~

Caffeine 禁用荧幕保护和自动暂停

Clipboard Indicator 剪贴板管理器,记录你复制过的内容

Coverflow Alt-Tab 此插件可以实现Mac系统的快速切换任务且自带流畅切换动画

Dash to Dock 固定Dock栏,gnome在某次更新砍了这个功能

Extension List 在状态栏开启插件清单

OpenWeather 在顶栏显示天气状况

Vitals 一个很好用的插件可快速查看系统的CPU,Ram,存储占用状况

文章引用

Built with Hugo
主题 StackJimmy 设计