下载Arch Linux的iso文件
这里的选择有很多,我使用的是科大源镜像
,经测试,科大源在众多源镜像里面是最快的,可以使用这个!!!
VM创建一个空虚拟机
流程如下:
然后一直默认下一步直到完成即可。
修改相关配置
先设置Arch的ISO映像文件
编辑虚拟机设置,设置UEFI启动
图形化界面相关设置(先别调,容易卡死)
打开ArchLinux虚拟机进行配置
下载虚拟终端
下载好以后进入终端:
查看目录
使用命令行查看目录:
ls /sys/firmware/efi/efivars
目录显示出来了,没有报错表示一切正常。
ping一下查看是否正常
尝试ping
命令,看看正不正常:
ping baidu.com
没有丢包,一切正常。
查看系统IP
ip -brief address
passwd
输入上述命令获取虚拟机IP,设置密码方便ssh登录,毕竟虚拟机上的命令行没办法复制命令,太麻烦了。
卡死输入缓慢,无法关机的问题
这里遇到了卡死的问题,也不能说卡死,只能说很慢很慢,然后我把内存换到了4G,4核有所好转,但是仍然卡死了。
把图形化先别打开
SSH连接虚拟机
安装openssh服务
pacman -Sy openssh
查看sshd状态
systemctl status sshd.service
启动sshd服务
systemctl start sshd
报错
Failed to start sshd.service: The name org.freedesktop.PolicyKit1 was not provided by any .service files
sudo
执行命令
如果想要将sshd命令开机启动的话,同样需要root权限执行
systemctl enable sshd.service
连接SSH即可
ssh user@ip
不能连接root
是arch
本身的原因。
root连接SSH
下载vim
pacman -Sy vim
# 下载vim
不管安装中的yes/no
提示,一律回车。
修改配置文件:
vim /etc/ssh/sshd_config
对应注释部分后边补上下边三行:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
重启 SSH 服务
systemctl restart sshd.service
连接
ssh root@【arch Linux主机 ip 地址】
注:arch Linux 主机的 IP 地址可以通过 ip a
命令查看。
更换国内源
熟门熟路了属于是,基本上每个虚拟机都要干的事情,虽然不干也没啥问题,但是体验感肯定不如换了以后的。
在 /etc/pacman.conf
文件末尾添加两行:
vim /etc/pacman.conf
# 最后添加下面两行
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
然后安装 archlinuxcn-keyring
包以导入 GPG key。
pacman -Sy archlinuxcn-keyring
编辑 /etc/pacman.d/mirrorlist
,在文件的最顶端添加
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
磁盘分区
fdisk -l
查看磁盘信息再执行cfdisk /dev/sda
命令:
选择New
-1G
在建立下一个分区之前,先对第一个EFI分区的类型做一个修改,选择type
选项,选择 EFI System
:
按向下的光标键,回到Free space
,选择[ New ]
继续分区,swap
分区设4G
,Type
选择Linux swap
。root
分区默认剩余全部空间,Type
选择Linux filesystem
:
分好区后选择[ Write ]
写入配置:
然后选择[ Quit ]
退出。
格式化分区
EFI分区格式化
mkfs.vfat /dev/sda1
root分区格式化,强制分区为xfs
mkfs.xfs -f /dev/sda3
创建swap分区
mkswap /dev/sda2
查看磁盘分区情况
lsblk -f
挂载分区并安装系统
# 挂载分区
mount /dev/sda3 /mnt
mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi
swapon /dev/sda2
#安装系统
pacstrap /mnt linux linux-firmware linux-headers base base-devel vim git bash-completion
# 生成文件系统的表文件,作用是后面重启进去系统能自动挂载分区
genfstab -U /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab
进入新系统并配置
arch-chroot /mnt
如果显示没找到bin/bash
可能是上面没安装好,多安几次就好了。。。
更换国内源
参考上面写的。。
配置新系统
# 设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
# 设置系统语言
sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g" /etc/locale.gen
sed -i "s/#zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/g" /etc/locale.gen
# 生成本地语言信息
locale-gen
# 设置本地语言环境变量
echo "LANG=en_US.UTF-8" > /etc/locale.conf
# 设置主机名,如archlinux
echo "archlinux" > /etc/hostname
# hosts文件中添加主机名
echo "127.0.0.1 localhost
::1 localhost
127.0.1.1 archlinux.localdomain archlinux" >> /etc/hosts
# 安装以下软件包
pacman -S grub efibootmgr efivar networkmanager intel-ucode
# 配置grub
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
# 激活启用NetworkManager
systemctl enable NetworkManager
# 给root创建密码
passwd
# 安装openssl
pacman -S openssh
# 设置开机自启动
systemctl enable sshd
# 修改/etc/ssh/sshd_config允许root登录,修改PermitRootLogin的值为yes
sed -i "s/#PermitRootLogin prohibit-password/PermitRootLogin yes/g" /etc/ssh/sshd_config
# 添加其他用户并设置密码,如test_user
useradd --create-home test_user
passwd test_user
# 设置用户组
usermod -aG wheel,users,storage,power,lp,adm,optical test_user
# 修改当前用户权限,编辑以下文件,取消%wheel ALL=(ALL) ALL前的注释,用:wq!保存退出
vim /etc/sudoers
# 安装显卡驱动
pacman -S xf86-video-intel vulkan-intel mesa
# 安装声卡驱动
pacman -S alsa-utils pulseaudio pulseaudio-bluetooth cups
# 安装英文字体
pacman -S ttf-dejavu ttf-droid ttf-hack ttf-font-awesome otf-font-awesome ttf-lato ttf-liberation ttf-linux-libertine ttf-opensans ttf-roboto ttf-ubuntu-font-family
# 安装中文字体
pacman -S ttf-hannom noto-fonts noto-fonts-extra noto-fonts-emoji noto-fonts-cjk adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-source-serif-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-cn-fonts wqy-zenhei wqy-microhei
# 打开字体引擎,取消最后一句的注释
# export FREETYPE_PROPERTIES="truetype:interpreter-version=40"
vim /etc/profile.d/freetype2.sh
# 安装显示服务
pacman -S xorg
# 安装桌面环境。plasma:就是桌面环境;sddm:登录管理器;konsole:kde下的终端;kate:文本编辑器;ark:解压与压缩;okular:PDF查看器;spectacle:截图工具;AUR:管理工具
pacman -S plasma sddm konsole dolphin kate ark okular spectacle yay
# 设置sddm登录
systemctl enable sddm
# 安装中文输入法
sudo pacman -S fcitx fcitx-im fcitx-configtool
yay -S fcitx-sogoupinyin
# 编辑 /root/.xprofile写入以下内容
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
# 安装其他软件
sudo pacman -S typora netease-cloud-music
yay -S baidunetdisk-electron visual-studio-code-bin google-chrome qv2ray
# 清理缓存
pacman -Scc
权限报错
中间如果有报错sudo: /etc/sudoers is world writable sudo: no valid sudoers sources found, quitting sudo: error init
可以使用命令chmod 440 /etc/sudoers
来处理
系统报错
error fetching google-chrome: System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down context: exit status 1
error fetching baidunetdisk-electron: System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down context: exit status 1
error fetching visual-studio-code-bin: System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down context: exit status 1
未处理
重启进入安装系统
以上的配置是从启动系统arch-chroot配置的,我们现在退出启动系统,重启进去安装配置好的系统。
exit
umount /mnt/boot/efi
umount /mnt
reboot
为arch安装open-vm-tools
pacman -S open-vm-tools
pacman -S base-devel net-tools linux-headers asp wget sudo
# 时间同步
vmware-toolbox-cmd timesync enable
# 休眠时间同步
hwclock --hctosys --localtime
# 窗口分辨率自动适配
pacman -S xf86-video-vmware
pacman -S gtkmm gtk2
vim /etc/mkinitcpio.conf
# 最后添加上 MODULES=(vsock vmw_vsock_vmci_transport vmw_balloon vmw_vmci vmwgfx)
mkinitcpio -p linux
# 启动vmtoolsd.service
systemctl start vmtoolsd.service
systemctl enable vmtoolsd.service
# 拖拽复制粘贴
# open-vm-tools缺少gtkmm,因此无法复制粘贴,手动安装即可。
pacman -S gtkmm
高分屏使用注意事项
在系统设置的显卡与显示器 -> 显示器配置中可以调节全局缩放率 。
里面的Global scale
设置缩放,重启生效!!