Faconhost主机使用分享–利用netboot.xyz通过GRUB方式安装自定义系统

前言

Faconhost 承诺所提供的各个 Linux 发行版镜像均为官方镜像,除了 qemu-guest-agentCloudInit 之外,没有添加任何其他内容。因此,客户可以放心使用这些镜像。

qemu-guest-agent

qemu-guest-agent 是 QEMU(Quick Emulator)虚拟化平台提供的一种客户端工具,用于增强虚拟机(Hypervisors)和宿主机(Hypervisor Master)之间的通信和协作。它通常运行在虚拟机内部,并允许宿主机通过 QEMU 提供的通信渠道与虚拟机进行交互。主要用于Faconhost 虚拟机主控(Hypervisor Master)收集并统计每个客户VM的使用状况(CPU、内存、硬盘、网络带宽、流量等),客户可以在其VM管理面板看到统计后的信息。

CloudInit

CloudInit 是一个在云环境中初始化和配置虚拟机实例的工具。它主要用于在云平台上启动新的虚拟机实例时自动执行一系列的初始化任务,以确保虚拟机能够适应所部署的环境。

dd

dd 是一个命令行工具,通常在类Unix系统中可用,用于复制和转换文件。dd 是“数据传输”的缩写。dd 方式安装系统通常指的是使用该命令将操作系统镜像文件直接写入到目标设备的方法。

使用dd命令安装系统通常需要以下步骤:

准备系统镜像文件

识别目标设备

使用dd命令写入镜像

我们相信大多数开发者在提供镜像文件时都是出于方便他人使用的目的,提供了快速、便捷的系统镜像文件。然而,由于没有人能够百分之百地保证镜像文件的安全性,以及存在不法分子可能在镜像中添加恶意程序和代码的风险。因此,我们不建议客户使用 dd 的方式去自定义安装系统。

同时,若客户选择使用 dd 方式安装系统,我们将无法为其提供任何技术支持。此外,客户须为因使用 dd 方式安装系统导致虚拟机出现超高资源占用、恶意网络行为(如发包攻击)、长时间占满带宽等违反 Faconhost服务条款的情况承担责任。这包括可能的实例暂停、合同终止等后果。

netboot.xyz

若客户想要安装自定义系统,或者安装Faconhost未提供的操作系统,我们推荐客户使用netboot.xyz工具来安装自定义操作系统。Netboot.xyz 是一个开源项目,旨在提供一个简单易用的网络引导环境,使用户能够通过网络引导各种操作系统和工具。它提供了一个统一的引导菜单,用户可以选择并引导到不同的操作系统、实用工具或安装程序,而无需在本地存储设备上安装这些系统或工具。

GitHub项目地址:https://github.com/netbootxyz/netboot.xyz

安装教程

本文介绍通过GRUB引导netboot.xyz安装Debian 12 官方Live CD/发行版,其他方式可以参考netboot.xyz官方doc,链接:https://netboot.xyz/docs/

前置条件

  1. 开启VNC
  2. 需要知晓VM的IP地址、网关、子网掩码、公共DNS等。

您可以在您实例的控制面板中开启VNC以及找到您实例的网络信息,您也可以从您的VM内找到您的网络配置信息,以Debian为例:/etc/network/interfaces.d/50-cloud-init,同时您可以提交工单给我们,我们将为您提供您实例的网络信息。

使用 GRUB 从现有 Linux 安装引导

Debian/ Ubuntu

# 安装 grub-imageboot 软件包,它允许 GRUB 引导加载 ISO 镜像文件
apt install grub-imageboot

# 创建一个目录用于存放镜像文件
mkdir /boot/images

# 进入镜像文件目录
cd /boot/images

# 下载 netboot.xyz ISO 镜像文件
wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso

# 更新 GRUB 菜单以包含这个 ISO 镜像
update-grub2

# 重新启动系统以使更改生效
reboot

On Red Hat Based Systems

# 使用 yum 安装 syslinux 和 wget 软件包,并且使用 -y 选项自动确认安装
yum install syslinux wget -y

# 将 memdisk 文件复制到 /boot 目录下,memdisk 是 syslinux 提供的一个用于引导 ISO 镜像的工具
cp /usr/share/syslinux/memdisk /boot/memdisk

# 创建一个目录用于存放镜像文件
mkdir /boot/images

# 进入镜像文件目录
cd /boot/images

# 下载 netboot.xyz ISO 镜像文件
wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso

# 创建到 grub-mkconfig_lib 的符号链接,以便 grub2-mkconfig 命令正确执行
ln -s /usr/share/grub/grub-mkconfig_lib /usr/lib/grub/grub-mkconfig_lib

# 下载 imageboot 配置文件到 /etc/grub.d/ 目录下,这个配置文件用于在 GRUB 菜单中添加 ISO 引导项
wget https://raw.githubusercontent.com/formorer/grub-imageboot/529ac5d2bf91e7da8c31b9e15f37702127bddc1c/bin/60_grub-imageboot -O /etc/grub.d/60_grub-imageboot

# 修改配置文件权限为可执行
chmod 755 /etc/grub.d/60_grub-imageboot

# 重新生成 GRUB 配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg

# 重新启动系统以使更改生效
reboot

进入VNC

您需要提前打开VNC,在您执行完上述命令和重启VM后,在GRUB界面选择Boottable ISO Image: netboot.xyz并按回车。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

进入netboot.xyz后,它会要求你提供网口(network interface虚拟机都只分配了一个网口,您一般默认即可。)、IP、子网掩码(Subnet mask)、网关(Gateway)、DNS等信息,您需要按照您实例的信息填写。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

若您填写的网络信息正确,netboot.xyz将会自动下载相关资源并进入netboot.xyz的主界面:

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

在netboot.xyz主界面选择Linux Network Installs,这里您可以安装您自己喜欢的任意Linux发行版,本文以Debian12为例,选择Debian12,然后按下回车,netboot.xyz会自动下载官方iso镜像,并且进入Debian12的安装界面。您可以选择文本模式安装,也可以选择图形界面安装,为了演示本文选择图形模式安装Debian12。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

进入Debian12的安装界面之后,它首先要求你选择地区、时区、键盘等,客户可按自己喜好选择。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

之后,Debian会询问您网络信息(需要您再次填写IP地址、子网掩码、网关、DNS等信息。)由于Debian默认是DHCP,所以会提示网络配置失败,您需要选择手动配置网络(configure network manually)、VM所在位置、hostname、域名、配置apt源等。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

之后,Debian会要求您填写root密码,并且会要求你创建普通账户。在这里,我们建议您root为空,只创建普通用户,不然等之后安装完系统之后,您的普通用户因为没有权限而无法使用sudo -i 进入root模式。

若您已配置root密码导致普通用户没有权限进入root模式,您可以按照下面操作给普通用户提权:

编辑 /etc/sudoers ,/etc/sudoers一般是只读文件,您可能需要修改这个文件的权限才能编辑。

sudo visudo

添加:

username ALL=(ALL:ALL) ALL

username为您创建的普通用户。

您同样可以使用以下命令将您的普通用户添加到sudo用户组:

sudo usermod -aG sudo username

username为您创建的普通用户。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

配置完用户后,您需要配置硬盘空间以及安装GRUB和常用的工具包:

配置硬盘空间

虚拟机相对于物理机来说,硬盘配置相对简单很多,硬盘直接选择整块硬盘(entire disk)即可。分区按照系统自动分区即可,即grub分区、swap分区、系统分区、用户分区位于一个分区即可。最后在确定更改硬盘分区窗口选择yes即可完成硬盘分区。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

安装GRUB和常用的工具包

Debian会提示是否安装一些常用软件,对于桌面环境、GNOME(乌班图UI)、XFACE(图形化UI)、KDE(图形化UI)等,VPS基本不需要安装。只需要安装SSH server即可(勾选最后两项)。

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

GRUB一定要安装,否则无法引导Debian系统开机,GRUB安装到您实例的主硬盘即可:

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

等待GRUB安装完,Debian基本安装完毕,会提示您重启实例。

这样官方的Debian12 就安装完成了!

安装后的设置

安装后,您可以进行一些自定义设置:

允许root用户登录

由于安装的时候没有设置root密码,您需要先创建root密码

sudo -i
passwd

创建密码之后,修改/etc/ssh/sshd_config配置文件来允许root用户登录。

sudo nano /etc/ssh/sshd_config

找到行PermitRootLogin修改为:

PermitRootLogin yes

重启ssh服务

sudo service ssh restart

Faconhost主机使用分享--利用netboot.xyz通过GRUB方式安装自定义系统

若您想使用密钥登录实例,你可以参考我们博客其他文章:

Faconhost–VPS进阶优化教程和常用的Linux脚本

Faconhost VPS购买/使用指南

删除创建的普通用户

若您喜欢root用户管理您的实例,您可以删除之前安装系统创建的普通用户

您需要使用root用户来登录您的实例

查看您创建的用户

cat /etc/passwd

删除您安装系统创建的用户

userdel -r username

username为您创建的普通用户。

验证

cat /etc/passwd

总结

以上就是使用netboot.xyz安装自定义系统的简单教程,虽然有些许麻烦,但是使用官方iso安装的系统使用最安心!

欢迎购买和体验Faconhost服务!

原创文章,作者:Faconhost,如若转载,请注明出处:https://blog.faconhost.com/faconhost-netboot-xyz-install-linux/

(2)
上一篇 29 2 月, 2024
下一篇 18 3 月, 2024

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

我们Telegram官方频道开通啦!  旨在发布节日促销计划、数据中心硬件升级、数据中心硬件和网络维护公告、服务新增和改进、故障通知和解决方案等重要信息。地址:https://t.me/FaconNews