VMware安装Arch
参考:
- GRUB - Arch Linux 中文维基 (archlinuxcn.org)
- 安装指南 - Arch Linux 中文维基 (archlinuxcn.org)
- 安装Arch其实不难,多练几遍你就熟悉了!保姆级教程手把手教你安装arch (aiofo.com)
- Arch安装(详细) - 简书 (jianshu.com)
- Arch Linux安装后的一些初始设置简介_Linux技术_IT技术_eIT.com.cn
- Arch Linux 2208设置IP地址_archlinux配置静态ip_alfiy的博客-CSDN博客
- 转自CSDN--reichaan02的博客-CSDN博客
- Arch Linux安装VMware Tools教程 - 方舟基地 (wnark.com)
- Arch安装KDE桌面教程推荐
本教程是基于虚拟机安装的
本人只是把安装Arch时所遇到的坑记录下来并解决总结他,具体还是看Arch-Wiki
首先配置UEFI启动项
检查网络是否正常
由于我把虚拟机的DHCP服务关闭了(如果你没有关闭的话因该可以正常访问网络的),所以虚拟机不会自动给我的系统分配IP,就需要自己手动设置才可以正常联网,首先查看自己的系统的网卡名字,输入命令 ip addr
来查看自己的网卡名字
// 将 IP 地址添加到接口
ip addr add 192.168.201.100/24 dev ens33 //ens33是网卡名,就是我图中标记的
// 开启ens33网卡
ip link set dev ens33 up
// 添加路由
ip route add default via 192.168.205.1
到这一步没猜错的话差不多就可以联网了,测试是否有网络,在终端输入命令 ping www.baidu.com
,如果有列出许多数据包,则说明网络连接成功了,但该方法重启系统之后就失效了,重启系统之后只能在重新设置一遍,所以只是用来临时使用的,等安装好ArchLinux之后在系统里面慢慢配置
ssh连接arch的live环境之前还需要设置一下root账户的密码,输入命令 passwd
即可设置(输入密码时是看不到密码输入的,自己输入完密码之后回车就可以了)
基本的网络配置就设置完了,然后就可以使用ssh工具来连接Arch-Live的环境了
更新时间
timedatectl status
磁盘分区
具体分区可以查看我的博文:Linux磁盘分区 - Mao-Design的笔记
挂载分区
注意: 挂载分区一定要遵循顺序,先挂载根(root)分区(到 /mnt
),再挂载引导(boot)分区(到 /mnt/boot
或 /mnt/efi
,如果单独分出来了的话),最后再挂载其他分区。否则您可能遇到安装完成后无法启动系统的问题。
挂载根分区
mount /dev/sda3 /mnt
下面这两行代码输入一行即可
挂载boot分区(对于UEFI引导而言)
mount --mkdir /dev/sda1 /mnt/boot
挂载boot分区(对于BIOS引导而言)
mount --mkdir /dev/sda1 /mnt/efi
挂载swap分区
swapon /dev/sda2
选择镜像源
使用reflector命令直接获取中国最快的镜像源并保存到/etc/pacman.d/mirrorlist文件夹下
## 获取pacman镜像源
reflector -c China -a 10 --sort rate --save /etc/pacman.d/mirrorlist
## 查看是否有edu.cn的链接信息
cat /etc/pacman.d/mirrorlist
安装Arch
对于 AMD CPU,执行如下命令开始安装系统:
pacstrap /mnt base base-devel linux linux-firmware linux-headers vim bash-completion amd-ucode
对于 Intel CPU,执行如下命令开始安装系统:
pacstrap /mnt base base-devel linux linux-firmware linux-headers vim bash-completion intel-ucode
备注:
base-devel:基础开发工具包(包括 gcc g++ make 等等)
vim:常用的文本编辑器
bash-completion:提供 bash 终端按 Tab 键即可自动补全命令的功能
amd-ucode/intel-ucode:CPU 微码
创建 fstab
genfstab -U /mnt >> /mnt/etc/fstab
验证 fstab 条目
cat /mnt/etc/fstab
chroot 到新系统
要进一步配置 Arch Linux,您必须 chroot
到新系统。 chroot 命令更改当前正在运行的进程及其子进程的根目录。
arch-chroot /mnt
设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
将硬件时钟设置为 UTC
hwclock --systohc --utc
设置主机名
将系统主机名放在 /etc/hostname
文件中。
echo "archlinux-vmware.linux.local" > /etc/hostname
设置系统语言
编辑 /etc/locale.gen
文件
vim /etc/locale.gen
按键盘上的 i 进入插入模式。
往下翻找到 en_US.UTF-8 UTF-8
和 zh_CN.UTF-8 UTF-8
,将前面的注释符(#)删去
然后按 Esc 键,输入 :wq,回车,保存退出
注意:在安装阶段不要设置中文 locale,可能导致 tty 乱码
然后执行
locale-gen
生成 locale 信息
在 /etc/locale.conf
文件中设置 LANG
变量,命令如下:
echo "LANG=en_US.UTF-8" > /etc/locale.conf
设置Root密码
设置 Root 密码:
passwd
创建普通用户
useradd 用户名
passwd 用户名 // 设置密码
chmod 740 /etc/sudoers // 设置权限
vim /etc/sudoers // 修改root权限
按i
直接进入编辑状态,在 root ALL=(ALL) ALL
下面添加自己的用户信息
root ALL=(ALL:ALL) ALL
用户名 ALL=(ALL:ALL) ALL
直接:wq!
,进行保存,保存后再次修改权限。因为 sudoers
是只读文件,所有要使用 !
进行保存,否则会失败。 修改完成后记得把这个文件的权限改回来,否则很容易被攻击。服务器一定要安全为主。
chmod 600 /etc/sudoers //改回权限
安装GRUB引导程序
本节假设您正在 x86_64
系统上安装 GRUB。对于 IA32 (32 位)的 UEFI 系统(不要和 32 位 CPU 相混淆), 将x86_64-efi
替换成i386-efi
,系统是64位的就不用管
基于UEFI启动
安装引导器
pacman -S grub efibootmgr
部署GRUB
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
生成主配置文件
grub-mkconfig -o /boot/grub/grub.cfg
基于BIOS启动
安装引导器
pacman -S grub
部署GRUB
grub-install /dev/sda
生成主配置文件
grub-mkconfig -o /boot/grub/grub.cfg
最后
输入 exit
退出 chroot 环境。
输入命令 umount -R /mnt
手动卸载被挂载的分区
输入命令 shutdown -h now
关闭Arch,然后断开ISO镜像的连接,在启动Arch系统
安装后的工作
配置网络
安装好之后就无法联网了,所以又要执行上那几条命令
// 将 IP 地址添加到接口
sudo ip addr add 192.168.201.100/24 dev ens33 //ens33是网卡名,就是我图中标记的
// 开启ens33网卡
sudo ip link set dev ens33 up
// 添加路由
sudo ip route add default via 192.168.205.1
// 设置DNS
echo nameserver 208.67.222.222 >> /etc/resolv.conf
连上网之后在继续执行下面的命令
启动 ssh 服务
安装SSH服务
sudo pacman -S net-tools openssh
启动SSH
sudo systemctl start sshd
设置开机自启动
sudo systemctl enable sshd
重启
reboot
关于ssh的一些命令
重启SSH服务
systemctl restart sshd.service
关闭 SSH 开机自动启动命令
sudo systemctl disable sshd
单次开启 SSH
sudo systemctl start sshd
单次关闭 SSH
sudo systemctl stop sshd
ssh连接时的问题
SSH连接Arch时显示下面这堆提示的时候,在本地的终端输入 ssh-keygen -R 服务器地址
,即可解决,然后在重新使用SSH连接,刚安装好的Arch好像不能使用SSH连接root用户,只能连接普通用户,所以Arch安装好之后,要用SSH连接Arch,需要注意这个问题
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:VOvfr1JmkjDc+QGkaNBklqRWf51+8eKZ6tCfBitn48U.
Please contact your system administrator.
Add correct host key in C:\\Users\\Windows/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in C:\\Users\\Windows/.ssh/known_hosts:14
ECDSA host key for 192.168.205.211 has changed and you have requested strict checking.
Host key verification failed.
链接SSH显示Permission denied, please try again.
// 修改ssh配置文件
vim /etc/ssh/sshd_config
// 将PermitRootLogin后面的值改为yes
PermitRootLogin yes
// 然后在重启ssh服务即可
systemctl restart sshd.service
配置网络
安装 netctl
sudo pacman -Sy netctl
开机自动动 netctl服务
sudo systemctl enable netctl
将想要配置的网络类型对应的示例文件复制到/etc/netctl目录下再作相应的修改
cp /etc/netctl/examples/ethernet-static /etc/netctl/my-static
修改my-static文件
sudo vim /etc/netctl/my-static
IP = static
表示的是静态网络的意思,如果你是动态则改为 DHCP
,按理说动态网络应该不需要设置这个吧,由于我的虚拟机需要,所以我并没有设置为动态IP,所以如果你是动态IP,但是又无法联网的,则自行百度
Address那里输入自己的静态IP地址,静态IP可以随便输,但不能与别的虚拟机IP重复
DNS那里可以设置为自己虚拟机的网关IP,查看方法如下
如果你嫌麻烦,也可以设置为 114.114.114.114
或者 8.8.8.8
最后在使用下面两行命令激活前面的设置
sudo netctl enable my-static
sudo netctl start my-static
安装VMware-Tools
方法一
sudo pacman -S open-vm-tools
sudo pacman -S base-devel net-tools linux-headers asp wget sudo
sudo pacman -S xf86-video-vmware
sudo pacman -S gtkmm gtk2
sudo vim /etc/mkinitcpio.conf
MODULES=(vsock vmw_vsock_vmci_transport vmw_balloon vmw_vmci vmwgfx)
sudo mkinitcpio -p linux
sudo systemctl start vmtoolsd.service
sudo systemctl enable vmtoolsd.service
最后设置完之后Arch分辨率正常了,但是粘贴板无法与宿主机互通,还有拖放也是,不知道是怎么回事
方法二
安装虚拟机自带的VMwarm-tools
挂载安装程序
sudo mount /dev/cdrom /mnt
将工具解压到桌面
sudo tar xf /mnt/VMwareTools*.tar.gz -C /home/zhaozhao/Desktop
手动创建文件夹
cd /etcmkdir init.dfor i in {0,1,2,3,4,5,6}; do mkdir rc$i.d; done
返回桌面, 执行安装脚本
找到解压文件存放的位置cd /home/zhaozhao/Desktop/vmware-distrid
执行安装脚本./vmware-install.pl
重启计算机生效
reboot
桌面环境
桌面环境的话自己在网上搜就可以了,网上一大堆
Arch安装KDE桌面教程推荐:https://www.bilibili.com/read/cv16417981?spm_id_from=333.999.0.0