1、archlinux的基本安装
1.1、停止reflector服务 禁止自动更新服务器列表
systemctl stop reflector.service
1.2、检查电脑是否支持UEFI引导模式
ls /sys/firmware/efi/efivars
# 提示:如果没有报错就是支持UEFI
1.3、连接网络
1.3.1、有线连接
直接插上网线就可以自动联网了
1.3.1、无线网络(wifi)
#是否启用了网络接口
ip link
#执行iwctl命令,进入交互式命令行
iwctl
#列出设备名,比如无线网卡看到叫 wlan0
device list
#用wlan0网卡扫描网络
station wlan0 scan
#列出网络
station wlan0 get-networks
#连接网络名字 输入密码
station wlan0 connect 无线网名字
#成功后退出
exit或者quit
连接成功后ping一下百度是否有网
ping baidu.com
1.4、同步时间
#同步网络时间
timedatectl set-ntp true
#提示:检查是否成功 看到(system clock synchronized :yes)这一句就是成功了
timedatectl status
.
1.5、修改软件源
- 打中国的源放在头部
vim /etc/pacman.d/mirrorlist
-
10 dd 剪切10行
-
p 粘贴
1.6、分区
1.6.1、fdisk分区
#查看磁盘分区
lsblk
#分区
fdisk /dev/sda
1.6.2、cfdisk分区
cfdisk /dev/sda
一般分区都有跟分区(/)、交换分区(swap)、引导分区(boot)
1.6.3、格式化分区
EFI分区
mkfs.vfat /dev/sda1
或者mkfs.fat -F32 /dev/sda1
swap分区
mkswap /dev/sda2
swapon /dev/sda2 请用swap分区
普通分区
mkfs.ext4 /dev/sda3
1.7、挂载分区
- 根据自己的分区情况进行挂载分区(尽量不要把usr目录挂载出去,如果挂载出去不能开机(网上也有教程是可以挂载的,我没有试过)),一般挂载第三方应用安装目录(opt)、临时文件目录(tmp)
#挂载
#必须先挂载根目录 才能挂载其他目录
mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
1.8、安装
#往/mnt目录里安装系统
#其中最基础的四个包是base base-devel linux linux-firmware
#linux-lts (lts:稳定版)
# 如果内核安装了稳定版,那么独显也要是稳定版的,要不然就会发生问题(我也不知道什么问题)
pacstrap /mnt base base-devel linux linux-firmware
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DofAIe04-1664722086497)(/home/tnt/Desktop/assets/image-20220924005039396.png)]
1.9、配置系统
1.9.1、Fstab
# 生成 fstab文件 (用 `-U` 或 `-L` 选项设置 UUID 或卷标)
genfstab -U /mnt >> /mnt/etc/fstab
强烈建议在执行完以上命令后,检查一下生成的 /mnt/etc/fstab
文件是否正确。
1.9.2、Chroot
# chroot到新安装的系统
arch-chroot /mnt
1.9.3、设置时区
# ln -sf /usr/share/zoneinfo/Region(地区名)/City(城市名) /etc/localtime
# 设置上海时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
1.9.4、本地化
程序和库如果需要本地化文本,都依赖区域设置,后者明确规定了地域、货币、时区日期的格式、字符排列方式和其他本地化标准。
需在这两个文件设置:locale.gen
与 locale.conf
。
编辑 /etc/locale.gen
,然后取消掉 en_US.UTF-8 UTF-8
和其他需要的 区域设置前的注释#。
接着执行 locale-gen
以生成 locale 信息:
# 更新locale
locale-gen
然后创建 locale.conf 文件,并编辑设定 LANG 变量,比如:
vim /etc/locale.conf
LANG=en_US.UTF-8
警告: 不推荐在此设置任何中文 locale,会导致 tty 乱码。
例子:
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_SG.UTF-8 UTF-8
1.9.5、网络配置
创建hostname文件:
vim /etc/hostname
myhostname(主机名)
创建hosts文件:
vim /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 arch.localhost arch
1.9.6、Root 密码
# passwd
1.10、安装引导程序
1.10.1、安装 cpu微码和引导软件
pacman -S intel-ucode grub efibootmgr os-prober
#如果是intel的cpu 则输入amd-ucode
#os-prober查找已安装的操作系统 推荐实体机上安装
1.10.2、安装grub引导
#安装grub引导
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
说明
grub-install *安装grub*
--target=x86_64-efi *目标架构x86架构64位 efi启动方式 若不确定使用uname -a 可以查看*
--efi-directory=/boot *就是我sda1挂载的/boot位置*
--bootloader-id=GRUB *这里的GRUB名字可以自行更改 甚至这一段都可以不用写*
- 提示:接下来编辑/etc/default/grub 文件,去掉GRUB_CMDLINE_LINUX_DEFAULT一行中最后的 quiet 参数,同时把 log level 的数值从 3 改成 5。这样是为了后续如果出现系统错误,方便排错。同时在同一行加入 nowatchdog 参数,这可以显著提高开关机速度。
1.10.3、生成grub
mkdir /boot/grub
# 生成grub
grub-mkconfig -o /boot/grub/grub.cfg
1.11、安装软件
# 连接网络相关的包
dhcpcd iwd networkmanager
# 编辑器
vim
#
sudo
# 命令补全工具
bash-completion
# 网络工具
iproute2
# 查看命令的用法
#
zsh
#
fish
#查看系统信息命令
neofetch
#安装
pacman -S dhcpcd iwd networkmanager vim sudo neofetch man iproute2
#开机启动 网络管理
systemctl enable NetworkManager
1.12、退出
#输入 exit 或按 Ctrl+d 退出 chroot 环境。
exit
#卸载被挂载的分区
umount -R /mnt
#重启
reboot
2、安装后的配置
2.1、配置中国源和开启32位软件包
vim /etc/pacman.d/mirrorlist
# 在头部添加阿里源
Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch
# 中科大源
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
# 清华源
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
# 华为源
Server = https://repo.huaweicloud.com/archlinux/$repo/os/$arch
# 163源 (i686 和 x86_64)
Server = http://mirrors.163.com/archlinux/$repo/os/i686
#开启32位软件包
vim /etc/pacman.conf
#取消掉 # 号
[multilib]
Include = /etc/pacman.d/mirrorlist
#在最后面添加
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$archs
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
Server = http://mirrors.163.com/archlinux-cn/$arch
Server = https://mirrors.aliyun.com/archlinuxcn/$arch
# 更新软件包缓存
pacman -Syy
# 安装GPG key
pacman -S archlinuxcn-keyring
2.2、添加一个普通用户
#新建用户名arch 可自行更改用户名
useradd -m -G wheel -s /bin/bash arch
#设置arch用户名的密码
passwd arch
#编辑arch用户的权限
EDITOR=vim visudo
找到# %wheel ALL=(ALL:ALL)ALL 并把 # 号去掉
2.3、安装软件源(AUR)
# 可以选择两个都安装,也可以只安装一个
pacman -S yay paru
2.4、开机启动numlock
首先创造在相关 TTY 上设置 numlock 的脚本:
vim /usr/local/bin/numlock
#!/bin/bash
for tty in /dev/tty{
1..6}
do
/usr/bin/setleds -D +num < "$tty";
done