--- title: "安装 Archlinux" date: 2021-07-04T11:23:00+08:00 lastmod: 2021-07-04T11:23:00+08:00 keywords: [] tags: ["archlinux"] categories: ["os"] --- ## U 盘启动,进入 archlinux live - 下载 archlinux 镜像 ```bash curl -LO https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/2021.07.01/archlinux-2021.07.01-x86_64.iso ``` - 把镜像写进一个无用的 U 盘(/dev/sdX) ```bash dd if=archlinux-2021.07.01-x86_64.iso bs=1M of=/dev/sdX ``` - 使用该 U 盘启动自己的 PC,进入 archlinux live ## 联网,硬盘分区,安装系统 - 插上网线,自动分配地址,验证是否可以连接外网 ```bash curl -I https://www.baidu.com # 返回 200 ``` - 规划硬盘,选择一个无用硬盘(/dev/sdX),规划 efi 分区和根分区 ```bash # fdisk 规划分区 fdisk /dev/sdX g # 创建新的 gpt 分区表 n # 创建一个新分区 # 直接回车 # 直接回车 +256M # 指定大小 t # 更改分区类型 # 直接回车 1 # 选择 EFI System n # 创建一个新分区 # 直接回车 # 直接回车 +XXXG # 指定根分区大小 w # 保存并退出 fdisk 官网还有 swap 分区,现在内存都比较大,不需要 swap 了 ``` - 格式化分区 ```bash mkfs.fat -F32 /dev/sdX1 mkfs.ext4 /dev/sdX2 ``` - 挂载分区 ```bash mount /dev/sdX2 /mnt mkdir /mnt/EFI mount /dev/sdX1 /mnt/EFI ``` - 修改软件源(vim /etc/pacman.d/mirrorlist),只保留中国源 ``` ## China Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.bit.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch ## China Server = https://mirrors.cloud.tencent.com/archlinux/$repo/os/$arch ## China Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.xjtu.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.163.com/archlinux/$repo/os/$arch ## China Server = http://mirrors.sohu.com/archlinux/$repo/os/$arch ## China Server = http://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirrors.shu.edu.cn/archlinux/$repo/os/$arch ## China Server = http://mirror.lzu.edu.cn/archlinux/$repo/os/$arch ``` - 安装系统包 ```bash pacstrap /mnt base linux linux-firmware # 这里会从中国源里下载安装包并安装,具体时间就看网速了 ``` - 生成 fstab ```bash genfstab -U /mnt >> /mnt/etc/fstab ``` - chroot 进入新系统 ```bash arch-chroot /mnt /bin/bash ``` ## 配置新安装的系统 - 设置时区 ```bash ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ``` - 编辑 /etc/locale.gen,选择 en_US 和 zh_CN ```bash sed -i \ -e '/^#en_US.UTF-8/s/^#//' \ -e '/^#zh_CN/s/^#//' \ /etc/locale.gen locale-gen # 生成 /etc/locale.conf echo 'LANG=zh_CN.UTF-8' > /etc/locale.conf ``` - 设置主机名(xxxx) ```bash echo xxxx > /etc/hostname ``` - 安装内核 ```bash mkinitcpio -P ``` - 设置 root 密码 ```bash passwd ``` - 创建一个普通用户(xxxx),用于自己日常使用 ```bash useradd -m xxxx passwd xxxx echo "xxxx ALL=(ALL) ALL" > /etc/sudoers.d/xxxx ``` - 安装其他必须包 ```bash pacman -S grub networkmanager pacman -S intel-ucode # intel 处理器 pacman -S amd-code # amd 处理器 ``` - 创建 efi 启动项(xxxx) ```bash grub-install --target=x86_64-efi --efi-directory=/EFI --bootloader-id=xxxx ``` - 生成 grub.cfg ```bash grub-mkconfig -o /boot/grub/grub.cfg ``` - 退出新系统,返回 archlinux live ```bash exit ``` ## 卸载硬盘,重启 - 卸载硬盘 ```bash umount -R /mnt ``` - 重启 ```bash reboot ``` ## 日常使用 - 登陆普通用户 - 启动 NetworkManager,并设置开机自动启动 ```bash sudo systemctl start NetworkManager sudo systemctl enable NetworkManager ``` - 连接网络 ```bash nmtui ``` - 安装常用命令行软件 ```bash sudo pacman -S ctags cscope tmux expect git p7zip unrar zip unzip \ ntfs-3g espeak hostapd dnsmasq openssh tcpdump vim cdrtools \ tree ethtool openbsd-netcat arch-install-scripts ``` - 安装 gnome 桌面 ```bash sudo pacman -S wqy-zenhei ttf-liberation sudo pacman -S gnome sudo systemctl enable gdm.service sudo pacman -S gvim file-roller freerdp mpv ibus-sunpinyin ``` - [Gnome 主题网站](https://gnome-look.org)