简介
本人使用腾讯的轻量云服务器,但是发现选择轻量云的最低配置时,使用常用的发行版作为服务器时,系统服务较多会导致资源占用较大,而Archlinux可以高度自定义,只安装自己需要的组件,不需要的组件就不安装,尽可能的减小系统资源占用。并且在系统出现Kernel Panic
的情况,可以保留所有数据修复系统,其他发行版可能就需要重装系统。
但是腾讯轻量云默认没有提供Archlinux的系统,所以我尝试自己安装Archlinux,并且记录完整的流程
要求
要求服务器平台必须支持VNC
控制,例如腾讯云支持VNC控制,如图:
阿里的轻量云服务器的VNC控制的位置和腾讯云不同,阿里的VNC叫作“救援模式”,并且需要先设置VNC密码,由于本人现在没有阿里云的服务器,就不展开讲了。
如果是使用其他厂家的服务器,只要可以连接VNC控制服务器也可以进行这个操作
系统建议Ubuntu
或Debian
,在大部分的厂家都会提供这两个系统,我测试过多次使用CentOS
在调整分区时会出现问题,所以建议使用这两个系统。
原理
修改硬盘分区,在原有硬盘的后方加上一个分区,用来存放Archlinux Live系统的文件,重启后通过grub引导进入Live系统进行安装
修改硬盘分区
首先需要检查现在的分区情况
从图中可以看出,现在这块硬盘的名称是vda
,一般服务器的虚拟磁盘都是使用vda
命名,如果有不一样请自行辨别;然后从Disklabel
这一行可以看出当前分区表结构是dos
,也就是MBR
,那么就是使用传统BIOS引导;如果看到是gpt
,那么就需要使用UEFI
引导,接下来就需要调整分区,先将分区缩小,大约缩小1-2G就可以了;注意:这里使用parted调整分区大小,如果你输入了parted提示找不到指令,就需要先安装parted软件包
安装parted
这一步只有在提示找不到parted指令时需要操作
Ubuntu/Debian下的操作
sudo apt update
sudo apt install parted
CentOS/REHL下的操作
sudo yum install parted
调整分区
图中划红线的部分是需要输入的,End后面输入的值根据方括号中的值计算,我这里提示[42.9GB]
,减小2G并且取整,就填入40GB
修改完成后输入quit
退出parted
接下来使用fdisk创建一个新的分区
fdisk /dev/vda
进入fdisk后,输入n
,然后多次按回车直到提示Created a new partition ...
创建完成后,输入w
,按下回车,将更改写入磁盘。
写入完成后,不用格式化这个分区,在下一步我们写入一个镜像就可以了
获取Archlinux安装镜像
首先使用命令获取镜像
wget https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/latest/archlinux-x86_64.iso -O archlinux.iso
下载完镜像之后,就需要将镜像写入到我们创建的分区中,填写目标设备时一定要仔细确认,防止刷错分区导致无法引导;该步骤会因为硬盘性能影响需要的时间,时间比较久的话请耐心等待
dd if=archlinux.iso of=/dev/vda2 status=progress
修改引导配置文件
写入完镜像后,我们需要使服务器能引导进入这个镜像,而腾讯云服务器的grub默认会进入当前的系统,并且很难进入grub终端,那么就需要修改grub配置文件使其不引导进当前系统
vim /boot/grub/grub.cfg
向下翻页,找到menuentry
开头的部分
将下方的linux
和initrd
注释,这样就可以不自动引导
修改完成后,输入:wq!
保存并退出,注意这个文件提示只读,所以需要加上!
符号强制写入,完成后就可以输入reboot
命令重启系统
使用VNC连接并引导
重启后进入服务器面板使用VNC连接服务器,稍等片刻后会出现grub菜单
按下C
进入grub command模式,并输入指令:
set root=(hd0,2)
source /boot/grub/grub.cfg
输入后没有报错就可以按下Esc
,这时grub菜单中出现更多的选项
选择Archlinux并回车,系统将会进行引导
进入Live系统进行修改
稍等片刻后,就进入Live系统了
我觉得在VNC中操作比较麻烦,所以可以使用ssh连接,首先需要设置root密码
同时要设置允许ssh通过密码连接,编辑sshd配置文件
vim /etc/ssh/sshd_config
找到PasswordAuthentication no
将no修改为yes,并保存退出
修改完后,重启sshd服务
systemctl restart sshd
接下来就可以连接了,如果出现下面这个错误:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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 ED25519 key sent by the remote host is
SHA256:xxxxxxxxx
Please contact your system administrator.
Add correct host key in C:\\Users\\SCH/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in C:\\Users\\SCH/.ssh/known_hosts:5
Host key for XX.XX.XX.XX has changed and you have requested strict checking.
Host key verification failed.
就说明这个服务器的ssh密钥不在客户端的信任列表中,一般是服务器的ssh密钥改变时出现,只需要删除信任列表即可
Windows
del .ssh\known_hosts
Linux
rm .ssh/known_hosts
再次连接就可以进入了
为Archlinux系统分区
首先进入fdisk
fdisk /dev/vda
出现了红色的内容,意思是说当前硬盘正在使用,这个我们其实可以不用担心,因为我们正在用的就是后面的Live分区,而现在要操作的是前面部分的区域。
删除原系统分区
删除原系统的分区,删除前请仔细确认,当前存镜像的分区在Live系统中千万不能删除
创建新的分区
首先需要创建一个新的系统分区,分区大小为硬盘总大小
-5GB
,我将分区设为35GB
然后创建一个交换分区,将剩余空间都分配即可
创建完后,建议修改分区类型,后期如果要编辑就可以更好的辨认
操作完成后,将更改写入硬盘
格式化分区并挂载
格式化系统分区
mkfs.ext4 /dev/vda1
挂载系统分区
mount /dev/vda1 /mnt
格式化交换分区
mkswap /dev/vda2
启用交换分区
swapon /dev/vda2
修改pacman源
安装需要通过pacman获取软件包,一般需要修改镜像源加快下载速度,编辑配置文件
vim /etc/pacman.d/mirrorlist
删除所有的镜像源,添加一个镜像源,保存并退出
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
修改完后,需要更新镜像源缓存
pacman -Syy
安装系统软件包
pacstrap -K /mnt base linux linux-firmware
生成文件系统表
这个操作非常重要,fstab用来自动挂载分区,不生成将会导致系统分区挂载异常
genfstab -U /mnt >> /mnt/etc/fstab
进入新系统
这时候需要进入新系统的目录中进行配置
arch-chroot /mnt
安装必要软件包
pacman -S vim networkmanager dhclient openssh grub
配置新系统基本信息
设置主机名
vim /etc/hostname
在其中写入主机名,这里可以自定义
设置语言生成配置
vim /etc/locale.gen
找到en_US.UTF-8
并取消注释,修改完成后生成语言
locale-gen
设置系统语言
vim /etc/locale.conf
写入内容:
LANG=en_US.UTF-8
启用服务
启用网络服务,使机器可以联网
systemctl enable NetworkManager
启用ssh服务器,使我们可以连接服务器
systemctl enable sshd
修改ssh配置
如果需要通过ssh并使用root登录,就需要修改配置使ssh允许root登录
vim /etc/ssh/sshd_config
找到PermitRootLogin
这一行,取消注释,并将后面的值改为yes
设置root密码
这时候设置root密码很重要,如果不设置密码,就无法登录系统
安装grub引导并生成配置
安装引导:
grub-install --target=i386-pc /dev/vda
生成引导配置文件
grub-mkconfig -o /boot/grub/grub.cfg
安装完成
到这里就已经安装完成了,接下来就可以重启进入新系统了
稍等片刻,出现这个内容就是启动成功了
特别感谢
感谢STON提供服务器支持
结尾
这就是这篇文章的全部内容了,这块内容我研究了很久,如果大家有疑问可以在下方评论区讨论,感谢您耐心阅读
评论区