云服务器/VPS 安装Arch Linux (三)
云服务器/VPS 安装Arch Linux (三)
Sitao适用于: 内存300-512MB的机器、商家不提供VNC控制台、商家VNC坏了
我随便拿了一台机器进行演示,还是预装了Debian系统
预装其他系统也可以,我还是推荐Debian
准备工作
1. 确定启动方式:传统BIOS还是UEFI?
1 | ls /sys/firmware/efi |
如果提示No such file or directory就是传统BIOS启动,否则就是UEFI
我这台机器是UEFI启动
2. 确定当前系统的根分区
使用df -hT
命令查看
可以看到根分区是/dev/vda1
,即第一个硬盘的第一个分区
3.确定是DHCP还是静态IP
执行ip addr
查看网卡
如果活动网卡有dynamic字眼说明是DHCP,否则是静态IP
如果是静态IP,把ip地址,子网掩码以及网关记下来
我这台机器是DHCP
准备安装环境
1 | cd /tmp |
绑定目录并配置 Pacman 镜像列表
1 | mount --bind /tmp/root.x86_64 /tmp/root.x86_64 |
为什么要绑定它自己?官方的解释:
不绑定的话系统也会警告:
1 | WARNING: /tmp/root.x86_64/ is not a mountpoint. This may have undesirable side effects. |
镜像的话我选择Server = http://mirrors.kernel.org/archlinux/$repo/os/$arch
1 | sed -i 's/^#Server = https:\/\/mirrors\.kernel\.org\/archlinux\/\$repo\/os\/\$arch/Server = https:\/\/mirrors\.kernel\.org\/archlinux\/\$repo\/os\/\$arch/' /tmp/root.x86_64/etc/pacman.d/mirrorlist |
进入 chroot 环境
1 | /tmp/root.x86_64/bin/arch-chroot /tmp/root.x86_64/ |
初始化 Pacman 密钥
1 | pacman-key --init |
挂载目标分区
挂载目标分区,也就是原来的根分区
1 | mount /dev/vda1 /mnt |
除了/dev、/proc、 /run 、/sys目录都删除,比如:
1 | cd /mnt |
然后像正常安装 Arch Linux 一样使用 pacstrap 向目标挂载点安装系统基础软件包
1 | cd .. |
生成 fstab 文件
1 | genfstab -U /mnt > /mnt/etc/fstab |
步骤五:进入新系统根目录并配置
卸载 resolv.conf 并进入新系统:
1 | umount /etc/resolv.conf |
配置 DNS
1 | echo 'nameserver 8.8.8.8' > /etc/resolv.conf |
安装常用的软件包
1 | pacman -S vim openssh grub bash-completion htop curl wget |
设置系统时间和主机名
设置时区和硬件时钟:
1 | bash |
配置主机名和 hosts 文件:
1 | echo "archlinux" > /etc/hostname |
SSH 服务开机自启
1 | systemctl enable sshd |
配置 GRUB 引导加载程序(最重要)
根据 BIOS 或 UEFI 配置 GRUB
传统BIOS
1 | grub-install /dev/sda |
UEFI
1 | pacman -S efibootmgr |
网络配置
根据实际情况配置:
DHCP 配置
1 | cat << EOF > /etc/systemd/network/20-ethernet.network |
静态 IP 配置
1 | cat << EOF > /etc/systemd/network/20-ethernet.network |
网络服务开机自启
1 | systemctl enable systemd-networkd |
passwd设置root用户密码
确保每次启动时 DNS 配置正确(个人喜好)
1 | echo "echo 'nameserver 8.8.8.8' > /etc/resolv.conf" >> /etc/profile |
至此,Arch Linux 安装和基本配置已完成
接着在VPS控制面板强制重启VPS即可
期间阅读的文档:
https://wiki.archlinuxcn.org/wiki/从现有_Linux_发行版安装_Arch_Linux