安装和配置Arch
阅读
2024-09-22更新
最新编辑:贪睡的小爱
阅读:
更新日期:2024-09-22
最新编辑:贪睡的小爱
上一页: 安装Arch前声明
下一页: Pacman包管理器与密钥管理
准备工作:
实体机安装
- 一台正常联网的电脑
- 一个大于1.5G的u盘
虚拟机安装
- vmware,virtualbox等虚拟机软件
下载安装arch镜像
下载iso
刻录到u盘
当然,该分区下仍然可以用作正常的存储文件,不会对引导造成影响。详细使用文档和细节可以参照官方使用教程: https://www.ventoy.net/cn/doc_start.html
进入安装环境
实体机
在关闭 “安全启动” 后,插入u盘并且重启进入u盘,如果是直接刻录iso的,那么会直接进入arch安装环境的引导界面,如果使用ventoy引导,则会进入ventoy的引导界面,在里面列出了当前u盘里存在的系统镜像 ,通过键盘上的方向键选择arch镜像,回车后选择 “grub2 mode”,回车进入安装环境(如果进入安装环境失败,在选择镜像后试着选择 “normal mode")。 进入镜像后,选择第一个安装archlinux,如果成功进入安装环境,屏幕上应该会显示一些彩色的色块,并且命令提示符显示的是 “root@archiso#~”
虚拟机
在vmware新建一个虚拟机,iso选择之前下载好的arch镜像,类型选linux64 bit,内存至少1G大小 硬盘至少5G(我设置了20G),cpu任意,其他默认即可。 启动虚拟机,在引导界面选择第一个 "install archlinux",如果成功进入安装环境,屏幕上应该会显示一些彩色的色块,并且命令提示符显示的是 “root@archiso#~”
安装和配置基本arch系统
- 连接网络
- 硬盘分区并创建文件系统
- 挂载文件系统(分区)
- 安装系统和生成fstab的文件
- 安装引导
- 配置系统
- 卸载文件系统并重启以完成安装
连接网络
# 进入iwcrl命令行 iwctl # 扫描网卡设备 show devices # 扫描网络 station 网卡名 scan # 显示出扫描到的网络 station 网卡名 get-networks #连接到指定网络 station 网卡名 connect 网络名 #实例: iwctl show devices station wlan0 scan station wlan0 get-networks station wlan0 connect H3C_001
硬盘分区并创建文件系统
是fdisk命令的解释:
# 查看磁盘分区情况 fdisk -l 设备名称 # 对磁盘进行操作 fdisk 设备名称 # 实例: fdisk -l /dev/sda fdisk /dev/sda
o 创建mbr分区表 g 创建gpt分区表 p 打印磁盘信息 n 新建分区 d 删除分区 l 列出支持的分区格式 t 修改分区类型 e 重新设置分区大小 w 保存并退出 q 退出不保存
我的efi分区规划是:
根目录: /dev/sda2 19G
swap分区: /dev/sda3 1G
仅供参考
gdisk和fdisk用法几乎一样,在gdisk命令行内可输入?显示帮助信息,这里不再赘述。
我的efi分区规划是:
efi分区: /dev/sda1 5MB
根目录: /dev/sda2 19G
swap分区: /dev/sda3 1G
仅供参考
常见的文件系统格式包括但不限于: fat32, ntfs, ext2/3/4, btrfs等。常用的windwos系统通常使用的是ntfs,linux通常使用ext家族(ext2 ,ext3, ext4),或者btrfs来作为文件系统, 值得注意的是,windwos不支持ext家族,所以在windows下默认不能识别和管理ext家族的文件系统,需要通过第三方软件实现。而linux通常支持ntfs(能识别ntfs,但不能把系统安装在ntfs上)。 我们这里安装archlinux以ext4为例,以下列出了不同分区应该被创建的文件系统格式:
- efi分区(esp): fat
- linux根目录: ext2/3/4
- 交换分区: swap
# efi分区(esp) mkfs.fat -F32 分区名 # linux根目录 mkfs.ext4 分区名 # 交换分区 mkswap 分区名 # 实例: mkfs.fat -F 32 /dev/sda1 mkfs.ext4 /dev/sda2 mkswap /dev/sda3
# 开启swap分区 swapon 设备名 # 实例: swapon /dev/sda3
挂载文件系统(分区)
# 挂载文件系统 mount -t 文件系统类型(可选) 分区的路径 挂载点 # 实例: mount -t ext4 /dev/sda2 /mnt 或 mount /dev/sda2 /mnt
路径应该为 /mnt/boot/efi,其中/mnt是挂载了根目录,也就是未来新系统的根目录,挂载efi分区的完整代码如下,供参考:
# 创建/boot/efi目录 mkdir -p /mnt/boot/efi # 挂载efi分区 mount /dev/sda1 /mnt/boot/efi
安装系统和生成fstab的文件
在arch安装环境(live环境)里,自带了pacstrap安装工具,它用于初始化一个基本的arch系统,用法如下:
# 安装系统到/mnt下(新系统的根目录) pacstrap 目标分区 需要向分区里安装的工具 # 实例: pacstrap /mnt base base-devel linux linux-firmware
- base(必须): 基本系统结构,如/etc, /usr/, /opt等等,和基本工具,如ls, cat, grep等等
- base-devel(可选): 基础开发包,包含了基本的编译,编译,库环境等
- linux(必须): linux内核
- linux-firmware(可选): 包含了,linux常见的驱动程序,如果是实体机安装建议安装该组件
# 生成并将输出重定向到/mnt/etc/fstab(也就是新系统的/etc/fstab)文件中 genfstab 标识符(可选) 根据哪个挂载点生成fstab # 实例: genfstab /mnt >> /mnt/etc/fstab 或 genfstab -U /mnt >> /mnt/etc/fstab
/mnt/etc/fstab文件以验证是否符合自己的预期。
安装引导
# 切换到新的系统(切换根目录) arch-chroot 根目录路径 # 实例: arch-chroot /mnt
# 安装grub pacman -S grub
# 使用efi时,需要安装的软件 pacman -S grub efibootmgr
# 安装引导程序(MBR) grub-install 磁盘设备名称 # 实例: grub-install /dev/sda # 安装引导程序(EFI) grub-install --target=目标架构 --efi-directory=efi分区所在路径 # 实例: grub-install --target=x86_64-efi --efi-directory=/boot/efi
# 生成grub配置文件 grub-mkconfig -o 配置文件路径 # 实例: grub-mkconfig -o /boot/grub/grub.cfg
配置系统
# 为root用户设置密码 passwd root # 创建普通用户并设置密码 useradd -m cancerai passwd cancerai # 设置主机名 vim /etc/hostname # 设置DNS配置文件 vim /etc/hosts # 设置时间(没有中国,只有上海) ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 设置字符集 vim /etc/locale.gen locale-gen echo 'LANG=en_US.UTF-8' > /etc/locale.conf # 安装CPU微码 Intel: pacman -S intel-ucode AMD: pacman -S amd-ucode
卸载文件系统并重启以完成安装
# 退出arch-chroot环境 exit 或 Ctrl + d # 卸载文件系统 umount -R /mnt
的时候出现问题,请插入u盘或者把安装镜像作为第一启动,重新进入安装环境,并挂载根目录,efi分区(如果有),进行检查或重新使用grub-install, grub-mkconfig命令安装和生成grub。