为什么要换?
云服务器超开是众所周知的,但是有一些服务器的网络比较好,但是性能比较烂,于是,你就可以买个最低配的做流量转发之类的工作。但是这些最低配的机器,很可能是0.5G内存这种,就算是无GUI的常规发行版Linux,内存占用也会大概有150MB上下,更何况云服务器自带的操作系统通常加料,占用肯定不止,我所用的就来到了接近0.3G。因此,更换一个轻量级操作系统变得必要。
前面我有文章教大家用骚方法更换云服务器操作系统,但是,对于这种极低配机器可能行不通,所以我就要介绍用网络启动安装AlpineLinux。
前置条件
系统需要重置为Debian
,我自己测试过RedHat系是不行的,也有可能是我打开方式不对。
这篇教程是基于Debian11进行实践的,如果需要照着做,最好是换成Debian的系统。
第一步,获取内核
登陆你的云服务器,拉取vmlinuz-virt
和initramfs-virt
到你的服务器根目录:
cd /
wget https://mirrors.ustc.edu.cn/alpine/latest-stable/releases/x86_64/netboot/vmlinuz-virt
wget https://mirrors.ustc.edu.cn/alpine/latest-stable/releases/x86_64/netboot/initramfs-virt
如果你想指定安装的版本,例如3.16
版本,则可以换成:
cd /
wget https://mirrors.ustc.edu.cn/alpine/v3.16/releases/x86_64/netboot/vmlinuz-virt
wget https://mirrors.ustc.edu.cn/alpine/v3.16/releases/x86_64/netboot/initramfs-virt
第二步,编辑GRUB
注意,从这步开始就需要在VNC远程连接的环境操作
在GRUB引导选项按E
进行编辑:
然后将其内容换为:
linux /vmlinuz-virt console=tty0 modules=loop,squashfs quiet nomodeset alpine_repo=http://mirrors.aliyun.com/alpine/latest-stable/main modloop=http://mirrors.aliyun.com/alpine/latest-stable/releases/x86_64/netboot/modloop-virt
initrd /initramfs-virt
boot
如果你想指定安装的版本,例如3.16
版本,则可以换成:
linux /vmlinuz-virt console=tty0 modules=loop,squashfs quiet nomodeset alpine_repo=http://mirrors.aliyun.com/alpine/v3.16/main modloop=http://mirrors.aliyun.com/alpine/v3.16/releases/x86_64/netboot/modloop-virt
initrd /initramfs-virt
boot
按Ctrl+X
执行,然后输入root
回车登陆系统
第三步,加载ext4文件系统模块到内核
执行以下命令加载 ext4 文件系统模块到内核:
modprobe ext4
⚠这步非常重要!之前我一直失败就是漏了这步!⚠
第四步,安装系统
直接执行以下命令安装系统,按照他的提示安装完成就行。
setup-alpine
大部分直接选默认回车就行,输入密码的时候你自己输入密码,然后有一点比较重要的是,记得选取国内镜像(如果服务器在国内的话),数字选择15
,也就是USTC的镜像。后面选择硬盘安装类型的时候选择sys
,确认写入磁盘就完事了,安装快的一批。
按道理来说,此时已经可以正常使用了。
但是,有一个小问题,那就是,自动安装的话,它会自己分出来/boot
和swap
分区,如果硬盘空间不是很大的情况下,会浪费空间。
localhost:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 253:0 0 50G 0 disk
├─vda1 253:1 0 300M 0 part /boot
├─vda2 253:2 0 3.7G 0 part [SWAP]
└─vda3 253:3 0 46G 0 part /
至于手动分区安装,这个我还不会,尝试过,但是失败了
后记
如果安装失败的话,在执行setup-alpine
之前,删掉磁盘的分区。
先安装相关工具:
apk add grub grub-bios grub-efi cfdisk dosfstools htop e2fsprogs lsblk
然后执行cfdisk
,把原来的分区删掉,再执行setup-alpine
。
如果对安装的系统不满意,可以切换版本。
先修改镜像远文件,改成你需要的版本,并且清除缓存:
nano /etc/apk/repositories
rm -rf /var/cache/apk/*
例如降级到v3.16
版本,文件内容就改成:
https://mirrors.aliyun.com/alpine/alpine/v3.16/main
https://mirrors.aliyun.com/alpine/alpine/v3.16/community
然后进行版本切换:
apk update
apk upgrade --available