VMWare上安装Arch Linux2021

简介

Arch Linux(或Arch /ˈɑːrtʃ/))是一款基于x86-64架构的Linux发行版。系统主要由自由和开源软件组成,支持社区参与。系统设计以KISS原则(保持简单和愚蠢)为总体指导原则,注重代码正确、优雅和极简主义,期待用户能够愿意去理解系统的操作。Arch Linux系统安装、删除和更新软件的软件包管理器叫做pacman。
Arch Linux采用滚动发行模式来获取系统更新和软件的最新版本。系统安装映像只简单地包含系统主要组件。
Arch Linux以社区Wiki的形式提供文档,称为Arch Wiki。该Wiki经常编有特定主题的最新信息,受到了Linux社区的广泛认可,内容也应用在Arch Linux以外的领域。

创建虚拟机

VMWare上安装Arch Linux2021_第1张图片

VMWare上安装Arch Linux2021_第2张图片
VMWare上安装Arch Linux2021_第3张图片
VMWare上安装Arch Linux2021_第4张图片
VMWare上安装Arch Linux2021_第5张图片
VMWare上安装Arch Linux2021_第6张图片
VMWare上安装Arch Linux2021_第7张图片
VMWare上安装Arch Linux2021_第8张图片
VMWare上安装Arch Linux2021_第9张图片
VMWare上安装Arch Linux2021_第10张图片
VMWare上安装Arch Linux2021_第11张图片

放入安装ISO

VMWare上安装Arch Linux2021_第12张图片
设置引导方式UEFI
VMWare上安装Arch Linux2021_第13张图片

安装archlinux

启动虚拟机

启动虚拟机开始安装
VMWare上安装Arch Linux2021_第14张图片
VMWare上安装Arch Linux2021_第15张图片
VMWare上安装Arch Linux2021_第16张图片

验证启动模式

启动成功后就会进入命令行模式,可以在此处列出efivars目录以验证启动模式来判断主板是以何种方式引导系统的。如果目录不存在,系统可能以 BIOS 模式 (或 CSM 模式) 启动。
要验证启动模式,请用下列命令列出 efivars 目录:

ls /sys/firmware/efi/efivars

VMWare上安装Arch Linux2021_第17张图片
如果该目录不存在,系统就可能以BIOS模式启动。

连接到互联网

由于Arch Linux在启动后,守护进程dhcpcd已被默认启用以探测有线设备,因此确保使用的是有线网络。
Arch Linux的安装必须使用网络才能完成,使用下面命令以验证网络是否正常。
 确保系统已经启用了 网络接口,用 ip-link(8) 检查

# ip link

在这里插入图片描述
 对于无线网络,请确保无线网卡未被 rfkill 禁用。
 要连接到网络:
 有线以太网 —— 连接网线
 WiFi —— 使用 iwctl 验证无线网络
 配置网络连接:
 DHCP: 动态 IP 地址和 DNS 服务器分配(由 systemd-networkd 和 systemd-resolved 提供机能)对于 有线 和 无线 网络接口来说应该能开箱即用。
 静态 IP 地址: 按照 Network configuration#Static IP address 进行操作。
 用 ping 检查网络连接

# ping -c 2 8.8.8.8

VMWare上安装Arch Linux2021_第18张图片

注意: 默认情况下,安装映像已预配置好并启用了 systemd-networkd、systemd-resolved 和 iwd。

 systemd-networkd是管理网络配置的系统守护程序。它检测并配置出现的网络设备。它还可以创建虚拟网络设备。
 systemd-resolved是一项systemd服务,它通过D-Bus接口,resolve
NSS服务(nss-resolve(8))和on上的本地DNS存根侦听器为本地应用程序提供网络名称解析127.0.0.53。  iwd
(iNet wireless daemon,iNet 无线守护程序) 是由英特尔(Intel)为 Linux 编写的一个无线网络守护程序。

更新系统时间

验证一下系统的时间是否正常

# timedatectl status

VMWare上安装Arch Linux2021_第19张图片
使用 timedatectl 确保系统时间是准确的:

# timedatectl set-ntp true

建立硬盘分区

磁盘若被系统识别到,就会被分配为一个块设备,如 /dev/sda, /dev/nvme0n1 或 /dev/mmcblk0。可以使用 lsblk 或者 fdisk 查看:

# fdisk -l

VMWare上安装Arch Linux2021_第20张图片

分区要求

对于一个选定的设备,以下的分区是必须要有的:

 一个根分区(挂载在 根目录)/;
 要在 UEFI 模式中启动,还需要一个 EFI 系统分区。

分区示例

(a)、BIOS /MBR示例
针对BIOS/MBR的分区示例。
在这里插入图片描述

(b)、UEFI /GPT示例1
针对UEFI/GPT的分区示例。
VMWare上安装Arch Linux2021_第21张图片

分区工具

  • fdisk/gdisk
     fdisk — Linux 自带的命令行分区工具。
    https://www.kernel.org/ || util-linux
     cfdisk — 使用 ncurses 库编写的具有伪图形界面的命令行分区工具。
    https://www.kernel.org/ || util-linux(https://archlinux.org/packages/?name=util-linux)
     sfdisk — 支持脚本的 fdisk.
    https://www.kernel.org/pub/linux/utils/util-linux/ || util-linux
     gdisk — GPT 版的 fdisk。
    http://www.rodsbooks.com/gdisk/ || gptfdisk
     cgdisk — GPT 版的 cfdisk。
    http://www.rodsbooks.com/gdisk/ || gptfdisk
     sgdisk — 可编写脚本的gdisk版本。
    http://www.rodsbooks.com/gdisk/sgdisk-walkthrough.html || gptfdisk

  • GNU Parted
     GNU Parted — 命令行分区工具。
    https://www.gnu.org/software/parted/parted.html || parted
     GParted — GTK 图形界面的分区工具。
    http://gparted.sourceforge.net/ || gparted
     GNOME Disks — GTK 写的图形分区工具.
    https://wiki.gnome.org/Apps/Disks || gnome-disk-utility
     Partitionmanager — QT 图形界面的分区工具。
    https://sourceforge.net/projects/partitionman/ || partitionmanager

当前分区方案

当前硬盘为20G
VMWare上安装Arch Linux2021_第22张图片

对硬盘进行分区

现在对我们准备的20GB硬盘进行分区,我这里使用有GUI的cfdisk命令。
我们使用fdisk -l查看的硬盘为/dev/sda,所以我们对它进行分区,如果你有多块硬盘,根据自己的硬盘分区。

# cfdisk /dev/sda

VMWare上安装Arch Linux2021_第23张图片
选择gpt分区表,进入之后,分别建立我们方案中的3个必要分区,分别为EFI系统分区,Swap分区和根分区。
VMWare上安装Arch Linux2021_第24张图片

创建EFI分区

在这里插入图片描述
在这里插入图片描述
VMWare上安装Arch Linux2021_第25张图片

创建swap分区

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

写入分区表

VMWare上安装Arch Linux2021_第26张图片
输入yes
在这里插入图片描述

退出
VMWare上安装Arch Linux2021_第27张图片

查看分区

分区完成以后可以使用命令lsblk查看分区情况

# lsblk

VMWare上安装Arch Linux2021_第28张图片

格式化分区

在完成系统分区以后,需要对分区做格式化才能使用。
EFI分区:由于这里使用了EFI分区,因为EFI分区需要FAT32文件格式,所以需要将其格式化为FAT32格式。
交换分区Swap:使用 mkswap 将其初始化,使用swapon激活交换空间。
根分区:格式化为ext4格式。
mkfs.fat -s2 -F32

# mkfs.fat -F32 /dev/sda1
# mkswap /dev/sda2 -L Swap
# swapon /dev/sda2
# mkfs.ext4 /dev/sda3

VMWare上安装Arch Linux2021_第29张图片

挂载分区

分区格式化完成以后,需要将分区挂载到 /mnt ,先挂载根分区(这里是/dev/sda3);再挂载EFI分区(这里是/dev/sda1),挂载EFI分区时,需要先创建/mnt/boot/efi目录,然后将EFI分区挂载到/mnt/boot/efi上;交换分区Sawp分区不需要挂载。

# mount /dev/sda3 /mnt
# mkdir -p /mnt/boot/efi
# mount /dev/sda1 /mnt/boot/efi

在这里插入图片描述
注意事项
挂载分区的时候,如果boot单独分区,要首先挂载root 即 / 分区,然后挂载boot 分区,最后再挂载其它分区,不然后续安装会出现问题。

安装基本系统

选择软件镜像源
  在安装基本系统之前,需要修改一下软件镜像源,不然安装基本系统时会安装不上。镜像源列表在 /etc/pacman.d/mirrorlist 文件中。
我们选择软件镜像源时,最好选择国内的镜像源,因为国内网络环境的关系,选择其他国家或地区的镜像源,安装时可能很慢或失败。
修改/etc/pacman.d/mirrorlist文件在最上面添加163和阿里镜像源。
vim /etc/pacman.d/mirrorlist

# cd /etc/pacman.d
# mv mirrorlist mirrorlist.back
# cat mirrorlist.back | grep -A1 China | grep -v '\-' > mirrorlist

开始安装系统和必要的软件包

执行如下命令开始安装, 使用-i选项会在实际安装前进行确认;然后一路回车就好了

# pacstrap -i /mnt base linux linux-firmware dhcpcd vim openssh xfsprogs man net-tools

VMWare上安装Arch Linux2021_第30张图片
在这里插入图片描述
VMWare上安装Arch Linux2021_第31张图片

生成fstab文件

用以下命令生成 fstab 文件 (用 -U 或 -L 选项设置UUID 或卷标):

# genfstab -U /mnt >> /mnt/etc/fstab

在这里插入图片描述

强烈建议:在执行完以上命令后,后检查一下生成的 /mnt/etc/fstab 文件是否正确。
检查一下生成的fstab文件是否正确:

# cat /mnt/etc/fstab

VMWare上安装Arch Linux2021_第32张图片
如果生成的fstab文件正确,会看到之前分的3个分区的信息,说明几个分区都已经写入fstab配置文件了。

更改根目录

切换到新安装的系统:

# arch-chroot /mnt /bin/bash

chroot之后,当前目录就变成为/。此步会自动进行创建初始的ramdisk环境,但是如果以后更改了内核配置了的话,最好使用一下命令再重新生成ramdisk环境:mkinitcpio -p linux
在这里插入图片描述

设置时区

更改时区为亚洲、上海。并同步时间到硬件时间

# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/locAltime

在这里插入图片描述
运行 hwclock以同步时间到硬件时间

# hwclock -w# hwclock --systohc 

在这里插入图片描述

配置Locale

本地化的程序与库若要本地化文本,都依赖 Locale,后者明确规定地域、货币、时区日期的格式、字符排列方式和其他本地化标准。
需在这两个文件设置:locale.gen 与 locale.conf。
编辑/etc/locale.gen 然后移除需要的 地区 前的注释符号 #。

接着执行 locale-gen 以生成 locale 信息:

# locale-gen

在这里插入图片描述
指定需要的本地化类型,使用下面命令打开locale.gen文件:

# vim /etc/locale.gen

提示:如果提示vim不存在,使用pacman -S vim安装。

然后找到下面3项,去掉每项前面的#即可:

en_US.UTF-8 UTF-8  
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8

在这里插入图片描述
VMWare上安装Arch Linux2021_第33张图片
再使用locale-gen生成Locale信息,并使用locale -a列出所有启用的Locale。

# locale-gen

在这里插入图片描述

# locale -a

在这里插入图片描述

最后创建locale.conf文件,创建 locale.conf文件,并 编辑设定 LANG 变量,比如:

# echo LANG=en_US.UTF-8 > /etc/locale.conf

在这里插入图片描述
可以使用locale命令显示当前正在使用的Locale和相关的环境变量:

# locale

VMWare上安装Arch Linux2021_第34张图片
/etc/locale.conf用来配置整个系统所使用的Loacle,而这也可以由用户通过用户自己的 ~/.config/locale.conf 来覆盖整个系统的Locale配置。

提示:建立 /etc/skel/.config/locale.conf 文件,可以在新用户的建立且同时创建用户主目录(useradd -m)时,自动应用其中的Locale(会将此文件复制到新建用户的 ~/.config/locale.conf 中)。
警告: 不推荐在此设置任何中文 locale,会导致 tty 乱码。

网络配置

若使用有线网络的话,启动dhcp服务。

# systemctl enable dhcpcd.service

若使用无线网络的话,则安装以下几个软件包。

# pacman -S iw wpa_supplicant dialog

设置Root用户密码

设置root密码:

# passwd

在这里插入图片描述

创建新用户

新建一个普通用户somken

# useradd -m -G wheel -s /bin/bash somken

Useradd部分参数说明:
-m 自动创建用户主目录,并把框架目录(默认为/etc/skel)下的文件复制到用户主目录下。
-M 不创建用户主目录。
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。此处将用户加到wheel组中,之后可以给这个组执行sudo命令的权限。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

建立管理员组内一般用户(关于wheel组)
在 一般情况下,一般用户通过执行“su -”命令、输入正确的root密码,可以登录为root用户来对系统进行管理员级别的配置。但是,为了更进一步加强系统的安全性,有必要建立一个管理员的组,只允许这个组的用户来执行“su -”命令登录为root用户,而让其他组的用户即使执行“su -”、输入了正确的root密码,也无法登录为root用户。在UNIX下,这个组的名称通常为“wheel”。

设置用户密码

# passwd somken

由于此用户的操作权限有限,有时会对很多操作带来不便,因此需要允许该用户所在的wheel组有执行sudo命令的权限,此时需要修改 /etc/sudoers文件 ,但请不要直接修改此文件,而是用下面的命令修改。

# visudo

使用上面命令打开sudoers文件后,删除wheel组前面的注释(#)即可:
VMWare上安装Arch Linux2021_第35张图片

安装引导程序

需要安装 Linux 引导加载程序,才能在安装后启动系统,可以使用的的引导程序已在 启动加载器 中列出,请选择一个安装并配置它,GRUB是最常见的选择。
grub是一个启动引导器,同时支持EFI和BIOS方式的启动。若使用的UEFI方式引导系统,则还需要安装efibootmgr,如果是双系统的话,还需要安装os-prober,且如果使用Intel CPU的话,则需要安装 intel-ucode 并启用因特尔微码更新。
警告: 这是安装的最后但也至关重要的一步,请正确安装好引导加载程序后再重新启动,否则将无法正常进入系统。

安装grub
因为我们使用的是虚拟机和UEFI引导方式,因此只需要安装grub和efibootmgr:

# pacman -S grub efibootmgr

VMWare上安装Arch Linux2021_第36张图片
然后,还需要将其安装到EFI分区当中:

# grub-install --recheck /dev/sda

在这里插入图片描述

生成grub配置文件
最后还需要生成一个grub的配置文件。

# grub-mkconfig -o /boot/grub/grub.cfg

在这里插入图片描述

重启系统

现在ArchLinux的基本系统的安装就完成了,现在需要重启以进入新系统
输入 exit 或按 Ctrl+d 退出 chroot 环境。
可选用 umount -R /mnt 手动卸载被挂载的分区:这有助于发现任何「繁忙」的分区,并通过 fuser 查找原因。

最后,通过执行 reboot 重启系统,systemd 将自动卸载仍然挂载的任何分区。不要忘记移除安装介质,然后使用 root 帐户登录到新系统。

#exit
#reboot

到此为止安装完成。

你可能感兴趣的:(Linux,操作系统,linux,archlinux)