如何通过VNC在KVM VPS上手动安装Arch Linux
本教程说明了如何通过VNC在KVM VPS上手动安装Arch Linux。 当您的托管服务提供商不提供一键安装Arch Linux时,这很有用。 Arch Linux将用作服务器操作系统,因此我将仅安装服务器的基本组件,而跳过安装GUI的工作。
如果您希望能够一键安装Arch Linux,我建议Vultr,这是一家提供低成本,高性能VPS的托管公司。 使用Vultr,您无需执行以下步骤。
在执行以下步骤之前,建议您首先获取KVM VPS的默认网关IP,因为在安装过程中需要在网络配置文件中输入该IP。 通常以1结尾,例如192.168.0.1。 要找出确切的IP地址,您可以先通过VPS控制面板中的一键式安装功能将Ubuntu或CentOS安装在VPS上,然后将其启动并发出以下命令:
ip route show
“默认通过”后的IP地址是网关的IP地址。 您也可以向VPS提供商询问网关IP。
现在继续安装。
步骤1:从Arch Linux ISO引导VPS
在VPS控制面板中,找到虚拟光盘驱动器,然后将Arch Linux ISO插入其中。 有时,您可能需要将Arch Linux的直接下载链接提供给您的托管服务提供商,并要求他们为您安装它。
然后与您的VPS建立VNC连接。 您可以从托管服务提供商处获取VNC登录信息。 之后,点击 开机 控制面板中的按钮启动VPS。
通常,您必须在VNC窗口中按F12之类的键。 这使您可以选择VPS将从哪个设备启动。 选择光盘驱动器,以便您的VPS将引导Arch Linux ISO映像。
KVM虚拟机的默认固件称为SeaBIOS。
现在,您会受到Arch Linux启动菜单的欢迎。 选择第一个选项以启动到Arch Linux实时环境。
步骤2:连接到互联网
进入Arch Linux实时环境后,检查是否可以访问Internet。
ping google.com
如果您收到Google服务器的回复,请继续执行步骤3。 如果没有Internet连接,请执行以下步骤。
在KVM环境中,您的主机提供商会为您提供一个静态IP地址。 您的KVM VPS与网关(KVM主机)建立了静态以太网连接,因此可以访问外部Internet。
首先将示例以太网静态网络配置文件复制到 /etc/netctl/
目录。
cp /etc/netctl/examples/ethernet-static /etc/netctl
然后编辑该文件。
nano /etc/netctl/ethernet-static
将此文件更改为以下内容。 您可能需要调整红色文本。
Interface=ens3 Connection=ethernet IP=static Address=('your-VPS-public-IP-address') Netmask=('255.255.255.0') Gateway=('gateway-IP') DNS=('8.8.8.8')
保存并关闭文件。 接下来,关闭ens3界面。
ip link set dev ens3 down
现在加载 ethernet-static
网络配置文件。
netctl start ethernet-static
您现在应该具有Internet连接。
ping google.com
步骤3:创建分区
如果要在上面有MBR分区表 /dev/sda
,请使用以下命令:
parted /dev/sda mklabel msdos
本教程将创建一个GPT分区表:
parted /dev/sda mklabel gpt
现在在上创建分区 /dev/sda
parted /dev/sda
如果您在上一步中创建了GPT分区表,则需要创建一个 bios_grub
因为KVM虚拟机的默认固件是seaBIOS,所以它是1MiB的分区,这是一种免费的开源BIOS实现。 稍后,Grub 2引导加载程序将安装在bios_grub分区内。
确保bios_grub分区从磁盘开始至少启动31 KiB(63个扇区),因为前63个扇区保留用于MBR引导代码。 但是,如果我们对齐分区,那么bios_grub分区可能从磁盘起始处开始于1MiB,这将为我们带来性能优势。
使用以下命令创建bios_grub分区:
mkpart primary 1MiB 2MiB
将其设置为bios_grub分区
set 1 bios_grub on
然后创建第二个分区。 100%表示它将使用磁盘的以下所有空间。 本教程使用单个根分区。 如果需要高级设置,则可以进行调整。
mkpart primary 2MiB 100%
退出退出。
q
现在将第二个分区格式化为ext4文件系统。
mkfs -t ext4 /dev/sda2
在/ mnt目录中挂载第二个分区。
mount /dev/sda2 /mnt
步骤4:安装基本资料
首先打开mirrorlist文件,为您的软件安装选择一个好的镜像。
nano /etc/pacman.d/mirrorlist
要选择镜像,只需将首选镜像的地址复制到文件的开头,然后保存并关闭该文件。
现在使用pacstrap将基本系统安装到安装在下面的第二个分区上 /mnt
目录。
pacstrap -i /mnt base
之后,生成一个 fstab
文件。
genfstab -U -p /mnt >> /mnt/etc/fstab
chroot进入基本系统。
arch-chroot /mnt
生成语言环境。
nano /etc/locale.gen
找出 zh_CN.UTF-8 UTF-8 行并删除 # 从此行签名。 保存此文件。
生成 /etc/locale.conf
文件和设置 en_US.UTF-8
作为默认语言环境。
echo LANG=en_US.UTF-8 > /etc/locale.conf export LANG=en_US.UTF-8
设置服务器的时区。 我将其设置为纽约。
ln -s /usr/share/zoneinfo/America/New_York /etc/localtime
核心,额外和社区存储库足以满足Arch Linux服务器的需求,并且默认情况下已启用它们,因此通常不必配置存储库。 如果出于任何原因必须进行配置,请使用nano文本编辑器进行编辑 /etc/pacman.conf
文件。
nano /etc/pacman.conf
然后,为root用户设置密码。
passwd root
安装Grub和os-prober。
pacman -S grub os-prober
将Grub引导加载程序安装到第一个磁盘。 由于我们使用的是BIOS固件,因此目标应该是i386-pc。
grub-install /dev/sda --target=i386-pc
生成Grub启动菜单。
grub-mkconfig -o /boot/grub/grub.cfg
退出chroot环境。
exit
重新启动您的KVM VPS。
shutdown -r now
步骤5:安装后
现在,您的KVM VPS已重新启动,然后通过VNC重新连接到它。 以root身份登录。 运行以下命令:
ping google.com
您的新Arch Linux服务器可能未连接到Internet。
因此,我们必须创建到KVM主机(网关)的静态以太网连接。 在这里,我们必须对 ethernet-static
网络配置文件。
首先复制示例 ethernet-static
网络配置文件 /etc/netctl/
目录。
cp /etc/netctl/examples/ethernet-static /etc/netctl
然后编辑该文件。
nano /etc/netctl/ethernet-static
进行以下更改。
Description="A basic static ethernet connection" Interface=ens3 Connection=ethernet IP=static Address=('your-vps-public-IP-address/24') #Routes=('192.168.0.0/24 via 192.168.1.2') Gateway=('your-gateway-IP') DNS=('8.8.8.8')
Arch Linux中的默认以太网接口名为 ens3
, 您可以使用 ip address
命令找出来。 加 /24
到您的VPS公共IP地址。 / 24等效于255.255.255.0。 您必须在此处使用CIDR表示法。
保存并关闭此文件。 调低ens3界面。
ip link set dev ens3 down
加载 ethernet-static
网络配置文件。
netctl start ethernet-static
要在下次启动时自动加载配置文件,请运行:
netctl enable ethernet-static
您现在应该可以从Arch Linux服务器访问Internet。
ping google.com
现在创建一个用户并将其添加到滚轮,存储,电源组。
useradd -m -g users -G wheel,storage,power -s /bin/bash <username>
设置该用户的密码。
passwd <username>
安装sudo实用程序。
pacman -S sudo
编辑 /etc/suoders
文件。
EDITOR=nano visudo
找到这一行:
# %wheel ALL=(ALL) ALL
删除#号并保存文件。 这意味着允许车轮组的成员使用sudo。
安装SSH服务器
pacman -S openssh
编辑 sshd_config
文件。
sudo nano /etc/ssh/sshd_config
在此文件的末尾添加这两行。 调整用户名。
AllowUsers <username> PermitRootLogin no
第一行意味着允许您新创建的用户使用ssh进入Arch Linux服务器。 第二个禁用root ssh登录。 这是Linux服务器安全性的基本要求。 保存并关闭此文件。
启动SSH服务器
systemctl start sshd
引导Arch Linux时启用SSH服务器自动启动
systemctl enable sshd
现在,在您自己的计算机上打开SSH客户端,然后尝试通过SSH进入Arch Linux服务器。 您应该能够以普通用户身份登录ssh,并且不能以root用户身份登录ssh。
SSH进入服务器后,请更新Arch Linux。
sudo pacman -Syu
这里是您可能要安装的一些工具。
sudo pacman -S wget unzip parted htop
启用NTP网络时间同步。
sudo timedatectl set-ntp true
检查NTP状态
timedatectl status
恭喜! 您刚刚在KVM VPS上安装了Arch Linux。 最后,订阅Arch Linux最新新闻提要是一个好主意,因为可能会有一些重要的更改,并且您需要按照这些说明进行操作以更新软件包。
与往常一样,如果您发现此帖子有用,请订阅我们的免费新闻通讯,或在Google +,Twitter或我们的Facebook页面上关注我们。 感谢造访!