arch linux的搭建

分区

cgdisk /dev/sda

挂载

磁盘分区如下:sda1,2,3,4

  • sda1 1G boot EFI system
  • sda2 8G swap
  • sda3 40G root /
  • sda4 51G home

以下为格式化

mkfs.fat -F 32 /dev/sda1
# 报错了
# mkfs.fat: unable to open /dev/sda1
# 好像是因为占用了,不会解决重启吧 :D
mkswap /dev/sda2

mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4

挂载

swapon /dev/sda2
mount /dev/sda3 /mnt
mount /dev/sda1 /mnt/boot # 报错因为没有这个区,输入 mkdir /mnt/boot
# 继续类似操作
mkdir /mnt/home
mount /dev/sda4 /mnt/home
#完成挂载操作 lsblk查看挂载

pacman服务器

pacman是arch的特色,它结合了简单的二进制包和易于使用的构建系统,pacman的目的是可以轻松管理包,不管是官方库还是用户自己创建的

vim /etc/pacman.d/mirrorlist
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
pacman -Syy
pacman -S pacman-contrib

rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist #
# 报错
# 在配置时,本人重启过多次,执行过好几次pacman的操作,但当安装过一次后会出现类似
# "Failed to commit transaction (invalid or corrupted package)" error的错误
# 仅需要执行以下命令即可
# rm /var/lib/pacman/db.lck

cp /etc/pacman.d/mirrorlist.backup /etc/pacman.d/mirrorlist

下载linux和必要文件

pacstrap -i /mnt base base-devel linux linux-firmware linux-headers vim intel-ucode(amd-ucode CPU是什么就装什么) iwd bash-completion

配置并进入系统

genfstab -U -p /mnt >>/mnt/etc/fstab
arch-chroot /mnt # 进入系统

ls /usr/share/zoneinfo/Asia/Shanghai
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 时区上海
hwclock --systohc
vim /etc/locale.gen #将/etc/locale.gen中en_US.UTF-8和zh_CN.UTF-8的注释去掉
locale-gen # 生成
echo LANG=en_US.UTF-8 >> /etc/locale.conf
export LANG=en_US.UTF-8

配置主机和网络

vim /etc/hostname # 空文件,输入主机名 本人用Arch
vim /etc/hosts
# 编辑为
127.0.0.1 localhost
::1 localhost
127.0.1.1 Arch.localdomain Arch

管理员和用户权限

passwd # 设置密码 root
useradd -m -g users -G wheel,storage,power -s /bin/bash phantomor # phantomor是我的用户名
passwd phantomor # 设置phantomor用户的密码 123456
EDITOR=vim visudo# 编辑sudoer超级用户文件
# 编辑如下 找到Uncomment to allow members of group wheel to execute any command 把下面的注释去掉
# 在最后添加一句
Defaults rootpw

网络配置

ip link
ip address add 192.168.1.100/24 dev ens33
ip route add default via 192.168.1.1
/etc/resolv.conf 添加dns服务地址比如
nameserver 114.114.114.114
nameserver 8.8.8.8

/lib/ld-linux.so.2