目录

替换云服务器操作系统为Archlinux

操作环境:

  • 支持浏览器VNC方式登录的云服务商(e.g. 阿里云、腾讯云)
  • Ubuntu 16.04 服务器

准备工作

对于不支持DHCP的厂商,需要我们自己去手动配置服务器的内网IP地址: 使用ip addr命令获取IP地址信息并记录下来,在搞完事情后需要我们根据这些信息手动设置服务器IP。在这里假设我的IP地址172.18.65.234/18,其对应的网关地址为172.18.64.1

开始安装

下载镜像

下载最新archlinux镜像到根目录下:

1root@Ali:~# cd   /
2root@Ali:/# wget https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/latest/archlinux-2018.12.01-x86_64.iso

查看磁盘信息

1root@Ali:/# lsblk
2NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
3vda    254:0    0  40G  0 disk 
4`-vda1 254:1    0  40G  0 part /

引导iso文件

在Ubuntu里编辑/boot/grub/grub.cfg文件,添加下列内容:

 1#timeout设为60,是为了VNC连接时有足够时间选择启动项,若为第一启动项,可不设置
 2set timeout=60
 3menuentry 'ArchISO' --class iso {
 4  set isofile=/archlinux-2018.12.01-x86_64.iso
 5  loopback loop0 $isofile
 6  #archisolabel设置archiso文件驻留的文件系统标签。
 7  #img_dev指明archiso文件驻留的设备
 8  #img_loop是archiso文件在img_dev里的绝对位置
 9  linux (loop0)/arch/boot/x86_64/vmlinuz archisolabel=ARCH20181201 img_dev=/dev/vda1 img_loop=$isofile
10  initrd (loop0)/arch/boot/x86_64/archiso.img
11}

然后重启,同时在浏览器里以VNC方式连接到服务器,在GRUB启动菜单里选择ArchISO进入。

安装Archlinux

进入Archlinux Live环境后,使用lsblk命令,你会发现我们的目标磁盘/dev/vda1被挂载到了/run/archiso/img_dev目录下。清楚了这一点后,就可以按照ArchWiki的介绍开始安装ArchLinux了,只需将步骤里的/mnt换为/run/archiso/img_dev即可。有可能需要mount -o remount,rw /run/archiso/img_dev

联网

安装完成后,重启进入系统(浏览器VNC登录状态),使用ip link命令查看设备,使用ip addr add ip地址 dev 设备设置IP,使用ip route add default via 网关 dev 设备配置网关地址。

1root@arch:~# ip link #查看设备
21: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
3    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
42: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
5    link/ether 00:16:3e:0e:e4:6b brd ff:ff:ff:ff:ff:ff
6root@arch:~# ip link set ens3 up
7root@arch:~# ip addr add 172.18.65.234/18 dev ens3
8root@arch:~# ip route add default via 172.18.64.1 dev ens3
9root@arch:~# echo 'nameserver 8.8.8.8' > /etc/resolv.conf

大功告成!

Reference