[Arch]-1-如何将Arch安装到磁盘

引言

这篇文章记录Arch2022.10.01版本,从USB启动到安装到磁盘的过程,文章不会过多的描述基本命令,尽可能用精简的语言描述整个过程,希望对大家有所帮助。

文章目录

0×1.安装Arch

如果不想折腾也可以直接装个Manjaro,是Arch的衍生版,有完整的安装界面开箱即用,使用上没有太大的区别,除了信仰上。

首先准备一个U盘(2G以上),下载Arch的ISO镜像(下载网址 https://www.archlinux.org/download/),将U盘制作成Arch镜像的启动盘,引导进入Grub界面后,选第一个Boot Arch Linux进到字符界面。

注:如果是VMware虚拟机测试安装,需要UEFI支持,需要编辑虚拟机系统所在文件夹下".vmx"后缀的文件,在文件末尾添加一行,让虚拟机支持UEFI模式

					firmware="efi"
					

a.检测主板是否支持UEFI

					 #如果下面的文件不存在,说明主板不支持UEFI,后面会提供UEFI和非UEFI两种grub安装方式,这里只需要知道自己的主板支持还是不支持就行
					 root@archiso:~$ ls /sys/firmware/efi/efivars
					

b.链接到互联网

					#查看存在哪些网卡,记住需要链接互联网的网卡号
					 root@archiso:~$  ip link
					 1: lo: 
					 2: enp3s0: 
					 3: wlo1:

					 #[分之-1]如果使用无线网卡(本例无线网卡为wlo1)去链接wifi按照下面的方法 
					 #开启无线网卡
					 root@archiso:~$ ip link set wlo1 up
					 #[可选]扫描可以链接的无线网卡SSID名称,如果你知道自己要链接的网卡SSID名称,就不需要扫描
					 root@archiso:~$ iwlist wlo1 scan | grep ESSID
					 #将需要链接的wifi名称(本例是WodeWifi,请替换成自己的)与连接密码(本例是WodeMiMa,请替换成自己的)写入到wifi.conf配置文件中
					 root@archiso:~$ wpa_passphrase WodeWifi WodeMiMa > wifi.conf 
					 #后台运行链接到WIFI
					 root@archiso:~$ wpa_supplicant -c wifi.conf -i wlo1 &
					 #获取IP地址
					 root@archiso:~$ dhcpcd & 
					 #同步时间
					 root@archiso:~$ timedatectl set-ntp true
					 #能够ping通百度配置无误
					 root@archiso:~$ ping baidu.com -c 3

					 #[分之-2]如果使用有线(本例网卡号为enp3s0)路由提供DHCP功能,只需要获取地址即可
					 root@archiso:~$ dhcpcd &
					 #同步时间
					 root@archiso:~$ timedatectl set-ntp true
					 #能够ping通百度配置无误
					 root@archiso:~$ ping baidu.com -c 3
					

c.使用fdisk分区

本例假设用/dev/sda这块磁盘来安装

					 #查看磁盘分区列表
					 root@archiso:~$ fdisk -l

					 #进入fdisk分区
					 root@archiso:~$ fdisk /dev/sda

					 #先输入G创建GPT分区模式
					 Command (m for help):g
					

[分之-1]如果主板支持UEFI模式:

					 #创建一个EFI分区(/dev/sda1)
					 Command (m for help):n
					 大小+1G
					 #调整分区类型
					 Command (m for help):t
					 #输入1,即为EFI System
					 Command (m for help):1
					 #再创建一个分区
					 Command (m for help):n
					 #本例划分了第二个分区(/dev/sda2)50G作为等会要装系统的/目录,其他分区请随意
					 #保存
					 Command (m for help):w

					 #格式化EFI分区
					 root@archiso:~$ mkfs.fat -F32 /dev/sda1
					 #格式化第二个分区
					 root@archiso:~$ mkfs.ext4 /dev/sda2
					

[分之-2]如果主板不支持UEFI模式:

					 #创建一个大小为2M的分区(/dev/sda1)
					 Command (m for help):n
					 +2M
					 #调整分区类型
					 Command (m for help):t
					 #输入4,即为BIOS boot类型
					 Command (m for help):4
					 #再创建一个分区
					 Command (m for help):n
					 #本例划分了第二个分区(/dev/sda2)30G作为等会要装系统的/目录,其他分区请随意
					 #保存
					 Command (m for help):w

					 #第一个2M的分区不要动,格式化第二个分区
					 root@archiso:~$ mkfs.ext4 /dev/sda2
					

d.安装Grub

					#将需要制作成/目录的分区挂载到/mnt
					 root@archiso:~$ mount /dev/sda2 /mnt
					#建立启动目录
					 root@archiso:~$ mkdir /mnt/boot

					 #[分之-1]UEFI模式,挂载EFI分区到boot目录
					 root@archiso:~$ mount /dev/sda1 /mnt/boot

					 #[分之-2]不支持UEFI模式,不需要挂载BIOS boot,无需操作
					

替换软件源:

					 root@archiso:~$ vim /etc/pacman.d/mirrorlist

					 #在最前面,加入aliyun和163源
					 Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch
					 Server = http://mirrors.163.com/archlinux/$repo/os/$arch

					 #更新源缓存列表
					 root@archiso:~$ pacman -Sy
					

安装必要软件:

					#安装Linux内核等模块
					 root@archiso:~$ pacstrap /mnt base linux linux-firmware base-devel linux-headers bash vim
					

挂载信息写入fstab:

					 root@archiso:~$ genfstab -U /mnt >> /mnt/etc/fstab
					

安装grub,创建引导:

					#[分之-1]UEFI,安装grub组件和UEFI引导组件efibootmgr,与必要组件
					#切换到刚才挂载的分区
					 root@archiso:~$ arch-chroot /mnt
					 #如果使用的是AMD的芯片组,将下面的intel-ucode替换成amd-ucode
					 root@localhost:~$ pacman -S grub efibootmgr intel-ucode os-prober
					#创建引导目录
					 root@localhost:~$ mkdir /boot/grub
					#生成grub配置文件
					 root@localhost:~$ grub-mkconfig > /boot/grub/grub.cfg
					#用UEFI方式安装grub到/boot目录
					 root@localhost:~$ grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ArchLinux
					#输出grub配置
					 root@localhost:~$ grub-mkconfig -o /boot/grub/grub.cfg

					#[分之-2]非UEFI模式
					#切换到刚才挂载的分区,安装必要组件
					 root@archiso:~$ arch-chroot /mnt
					 #如果使用的是AMD的芯片组,将下面的intel-ucode替换成amd-ucode
					 root@localhost:~$ pacman -S  grub  intel-ucode  os-prober
					#创建引导目录
					 root@localhost:~$ mkdir /boot/grub
					#生成grub配置文件
					 root@localhost:~$ grub-mkconfig > /boot/grub/grub.cfg
					#写入主引导记录,注意这个指定的磁盘是刚才划分了2M BIOS boot的磁盘,不需要带分区号
					 root@localhost:~$ grub-install --target=i386-pc /dev/sda
					#输出grub配置
					 root@localhost:~$ grub-mkconfig -o /boot/grub/grub.cfg
					

e.安装网络组件

					#安装NetworkManager与配套组件
					 root@localhost:~$ pacman -Sy networkmanager nm-connection-editor network-manager-applet wpa_supplicant dhcpcd dialog
					#随机启动
					 root@localhost:~$ systemctl enable NetworkManager
					 root@localhost:~$ systemctl enable dhcpcd
					 root@localhost:~$ systemctl enable wpa_supplicant
					

f.添加普通用户

					 #首先,更改root密码
					 root@localhost:~$ passwd root

					 #创建普通用户,
					 #-s指定用户默认shell为bash
					 #-m创建用户同名目录
					 #-G用户加入附加组(users为系统标准用户组,可不加;wheel为管理组,sudo会用到wheel组权限)
					 root@localhost:~$ useradd -s /bin/bash -mG users,wheel qing
					 #设置普通用户密码
					 root@localhost:~$ passwd qing

					 #编辑sudo文件
					 #[方法-1]在"root ALL=(ALL:ALL) ALL"下面,将"# %wheel ALL=(ALL:ALL) ALL"前面的#号去掉
					 root@localhost:~$ visudo
					 %wheel ALL=(ALL:ALL) ALL

					 #[方法-2]如果上面创建用户时,没有将用户加入附加wheel组,可以直接在"root ALL=(ALL:ALL) ALL"下面加一行,将刚才添加的用户加入其中
					 root@localhost:~$ visudo
					 qing ALL=(ALL:ALL) ALL
					

f.收尾工作

图形界面在下一篇文章中会讲,这里最后修改一些文件的信息:

					#创建hostname,设置主机名称
					 root@localhost:~$ echo "qingsword" > /etc/hostname

					#添加hosts文件信息
					 root@localhost:~$ vim /etc/hosts
					 127.0.0.1 localhost
					 ::1 localhost
					 127.0.1.1 qingsword.localdomain qingsword   #这一行qingsword替换成你的hostname

					#设置时区
					 root@localhost:~$ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
					 root@localhost:~$ hwclock --systohc
					

做完这些操作之后,重启就能引导进入字符界面的Arch了

					#退出arch-chroot
					 root@localhost:~$ exit
					
					#重启
					root@localhost:~$ reboot
					

下一篇文章,安装图形化界面。