阿里云 ECS 安装飞牛系统 fnOS
云服务器安装debian。
一、脚本安装
根据 bin456789/reinstall: 一键DD/重装脚本 :
国内服务器:
# 1. 下载脚本
curl -O https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.sh || wget -O ${_##*/} $_
# 2. 运行脚本
bash reinstall.sh fnos
重启即可。
二、恢复模式
在云服务器启动后的第一时间,使用云服务官方的 VNC 工具访问, GUN GRUB 启动界面有三个选项,选择 Advanced options for FNOS GUN/Linux 。
FNOS GNU/LinuxAdvanced options for FNOS GUN/LinuxUERI Firmware Settings
再选择含有 (recovery mode) 的选项即可。
三、启动错误处理
错误一:Failed to activate swap
当启动时报错:
[FAILED] Failed to activate swap swapfile.swap - /swapfile.
[DEPEND] Dependency failed for swap.target - Swaps.

表示系统在挂载/swapfile作为交换空间时失败,常见原因包括:
- /swapfile 文件本身不存在、损坏或格式错误;
- /swapfile 权限配置错误(非root专属权限);
/etc/fstab中swapfile的挂载配置错误;- swapfile所在分区空间不足或文件被误删/修改。
第一步:检查swapfile的基本状态
首先确认/swapfile是否存在、权限是否正确:
# 1. 查看swap是否挂载
swapon --show
# 2. 查看/swapfile是否存在
ls -lh /swapfile
# 3. 查看文件权限和所有者(正常应是root:root,权限600)
stat /swapfile
-
如果
swapon --show无显示,则没有挂载。 -
如果
2输出提示No such file or directory,说明文件丢失,需重建。 -
如果
3权限不是-rw-------(即600),说明权限错误,需修复。执行以下命令修正(swap文件必须仅允许root读写,否则系统拒绝挂载):
# 设置正确权限(仅root可读写) chmod 600 /swapfile # 设置正确所有者 chown root:root /swapfile
第二步:检查/etc/fstab中的swap配置
/etc/fstab是系统开机自动挂载配置文件,swapfile的配置错误会直接导致激活失败:
# 查看fstab中swap相关配置
cat /etc/fstab | grep swap
正确的配置行应该是:
/swapfile none swap sw 0 0
如果配置行缺失、格式错误(比如参数不对),执行以下命令编辑修正:
nano /etc/fstab
第三步:重建/修复swapfile(核心步骤)
无论文件是否存在,重新初始化swapfile能解决格式损坏或缺失问题:
# 1. 先关闭当前可能残留的swap挂载(即使失败也执行)
swapoff /swapfile
# 2. 如果文件不存在,创建swapfile(示例创建1GB大小,可根据需求调整,比如2G则改为2G)
fallocate -l 1G /swapfile
# 3. 设置正确权限(仅root可读写)
chmod 600 /swapfile
# 4. 初始化swap文件系统(格式化swapfile)
mkswap /swapfile
- 若
fallocate命令报错,改用dd命令创建:dd if=/dev/zero of=/swapfile bs=1G count=1; - 注意:创建前确保/分区有足够空间(比如创建1G swapfile,需至少1G可用空间),可通过
df -h /查看。
第四步:写入默认挂载(跳过,若后续无法解决再执行)
echo "/swapfile none swap defaults 0 0" >> /etc/fstab
这种方法通常不推荐,因为
/etc/fstab更适合用于持久挂载常规文件系统,而不是动态创建的交换文件。更好的做法是使用swapon命令在系统启动时自动启用交换文件。
第五步:验证swapfile是否正常激活
# 1. 手动启用swapfile
swapon /swapfile
# 2. 查看swap是否成功挂载(应显示/swapfile的条目)
swapon --show
# 3. 查看内存和swap整体使用情况(Swap行应有数值,而非0)
free -h
如果swapon --show能列出/swapfile,说明激活成功;free -h中Swap的total列有数值,代表生效。
第六步:验证开机自动挂载
再次查看挂载信息:
# 1. 查看挂载信息
cat /etc/fstab | grep swap
# 2. 正常输出
/swapfile none swap sw 0 0
# 3. 若执行了第四步,则一并输出
/swapfile none swap defaults 0 0
执行以下命令测试/etc/fstab配置是否有语法错误(无报错则正常):
mount -a
错误二:VNC 黑屏、左上角短横线 _ 闪烁
第一步:检查并启用虚拟终端(tty)服务
黑屏横线跳动通常是tty(虚拟终端)服务未正常启动导致的,这是命令行界面的核心载体:
-
查看核心tty1服务状态:
systemctl status getty@tty1.service -
如果显示“inactive”(未激活)或“failed”(失败),执行以下命令启用并立即启动:
systemctl enable --now getty@tty1.service # 可选:同时启用tty2-tty6,增加备用终端 # systemctl enable --now getty@tty2.service getty@tty3.service
第二步:修复GRUB内核参数(关键)
Debian 启动时的内核参数如果包含图形界面相关配置,或抑制了终端输出,会导致命令行黑屏。
-
编辑GRUB配置文件:
nano /etc/default/grub -
找到
GRUB_CMDLINE_LINUX_DEFAULT这一行,修改为以下内容:# 原配置可能包含 quiet splash(抑制输出/图形启动),需删除或注释 #GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX_DEFAULT="console=tty1"quiet:会抑制系统启动输出,导致黑屏。splash:是图形界面启动的参数,无图形界面时需移除。console=tty1:强制内核输出到第一个虚拟终端。 -
保存并退出(按
Ctrl+O→回车→Ctrl+X),然后更新GRUB配置:update-grub
完成所有操作后,执行reboot重启虚拟机,观察是否能正常进入命令行界面。
系统文件修复(最后)
进入飞牛系统网页端后,进行 系统设置 -> 系统文件修复 。
最后重启测试。
四、申请 IPv6 地址
在 ECS AI 助手 提出要求:“给我的esc实例添加ipv6地址”。
- 选择 ECS 实例。
ECS AI 助手:使用 callApi 工具来执行 AssignIpv6Addresses 操作,为用户选择的 ECS 实例分配 IPv6 地址。- 成功分配了一个 IPv6 地址。为了让 IPv6 地址在实例内部生效,需要登录到实例内部进行配置。
- 飞牛系统网页端
系统设置 -> 网络设置 -> 选择网卡 -> IPv6,选择自动。 - 重启系统。
若还有问题直接问 ECS AI 助手 。

浙公网安备 33010602011771号