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以外的领域。

创建虚拟机

在这里插入图片描述

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

放入安装ISO

在这里插入图片描述
设置引导方式UEFI
在这里插入图片描述

安装archlinux

启动虚拟机

启动虚拟机开始安装
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

验证启动模式

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

ls /sys/firmware/efi/efivars

在这里插入图片描述
如果该目录不存在,系统就可能以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

在这里插入图片描述

注意: 默认情况下,安装映像已预配置好并启用了 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

在这里插入图片描述
使用 timedatectl 确保系统时间是准确的:

# timedatectl set-ntp true

建立硬盘分区

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

# fdisk -l

在这里插入图片描述

分区要求

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

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

分区示例

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

(b)、UEFI /GPT示例1
针对UEFI/GPT的分区示例。
在这里插入图片描述

分区工具

  • 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
在这里插入图片描述

对硬盘进行分区

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

# cfdisk /dev/sda

在这里插入图片描述
选择gpt分区表,进入之后,分别建立我们方案中的3个必要分区,分别为EFI系统分区,Swap分区和根分区。
在这里插入图片描述

创建EFI分区

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

创建swap分区

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

写入分区表

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

退出
在这里插入图片描述

查看分区

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

# lsblk

在这里插入图片描述

格式化分区

在完成系统分区以后,需要对分区做格式化才能使用。
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

在这里插入图片描述

挂载分区

分区格式化完成以后,需要将分区挂载到 /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

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

生成fstab文件

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

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

在这里插入图片描述

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

# cat /mnt/etc/fstab

在这里插入图片描述
如果生成的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

在这里插入图片描述
在这里插入图片描述
再使用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

在这里插入图片描述
/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组前面的注释(#)即可:
在这里插入图片描述

安装引导程序

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

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

# pacman -S grub efibootmgr

在这里插入图片描述
然后,还需要将其安装到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

到此为止安装完成。

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值