veket官方网站论坛

veketx

 找回密码
 要注册
搜索
楼主: 自由飞翔

weiqiren-26(2026.03.23更新)

[复制链接]
发表于 2026-3-20 15:17 | 显示全部楼层
哦,我搞错了,veket26中选择veket26.iso,我把FAT/ESP分区选错了,选择正确的FAT/ESP分区,可以正常生成菜单,但是veket26.iso放在NTFS分区不解开无法启动,菜单和截图见上楼的。

也就是说新编译的内核只实现了:
CONFIG_NTFS_FS=y
分析不能实现你说要的那个结果!

linux自带的NTFS内核驱动,只能读取,应该也是满足启动了吧,看样子还是不行啊。再找下相关NTFS3技术文档呢。

我在网上AI搜了下:
要让 **GRUB2** 引导存放在 **NTFS** 分区上的 Linux ISO 文件,关键点就在于 **initrd**(或 initramfs)必须包含能够**写入** NTFS 分区的驱动程序。

如果 initrd 缺少这个驱动,内核在启动后只能以**只读**方式挂载 NTFS 分区,从而导致系统找不到 ISO 文件或安装介质而失败。

### 核心原因与驱动选择
Linux 内核原生的 `ntfs` 驱动通常只支持**只读**挂载,这对于需要定位并挂载 ISO 文件的启动过程来说是不够的。因此,你需要以下两种驱动之一来提供**读写**支持

| 驱动类型 | 说明 | 特点 |
| :--- | :--- | :--- |
| **NTFS-3G** | 基于 FUSE (用户空间文件系统) 的成熟驱动。 | 需要 `fuse` 支持,依赖较多,体积较大。 |
| **NTFS3** | 由 Paragon 公司开发,从内核 5.15 版本开始引入的**内核态驱动**。 | 性能更好,实现更简洁,是较新发行版的首选。 |

### 解决方案
针对你“ISO 放在 NTFS 分区”的需求,主要有三种解决方案:

**1. 使用提供完整 NTFS 读写支持的 initrd**
最直接的方法就是找一个已经内置了所需驱动的 initrd。大部分主流发行版(如 Ubuntu、Linux Mint)的 Live CD 镜像内的 initrd 通常已包含 NTFS 读写模块,因此可以直接使用。你可以先直接尝试引导,看能否成功。

**2. 自行定制 initrd**
如果当前的 initrd 不支持,你就需要动手为它添加缺失的驱动。这通常是一个高级操作,涉及解压 initrd、添加 `ntfs-3g` 或 `ntfs3` 内核模块及其依赖、修改初始化脚本,最后重新打包。

**3. 将 ISO 放置在 GRUB 易于读取的独立分区中**
如果不想处理复杂的 initrd 定制,可以创建一个小的分区(如 **FAT32** 或 **ext4** 格式),将 Linux ISO 文件和专用的 `vmlinuz`、`initrd` 文件放进去。这是最稳定可靠的方法。

==========================================================================================

另外我测试了下,菜单中不填写pupsfs=%?_UUID% psave=%?_UUID%这两个参数,好像也能正常启动解开的veket26啊,好像加上这两个参数,启动就不同探测了,更快。

发表于 2026-3-20 15:42 | 显示全部楼层
自由飞翔 发表于 2026-3-20 11:33
187楼的截图不就是我加上去的吗?用你2024年上传的SX_Veket_Puppy_Installer.pet.zip,直接安装后,在weiq ...

CONFIG_NTFS3_FS=y
CONFIG_NTFS3_64BIT_CLUSTER=m
CONFIG_NTFS3_LZX_XPRESS=m
CONFIG_NTFS3_FS_POSIX_ACL=m
CONFIG_NTFS_FS=y

但编译时会自动将配置文件转换为:
CONFIG_NTFS3_FS=y
# CONFIG_NTFS3_64BIT_CLUSTER is not set
# CONFIG_NTFS3_LZX_XPRESS is not set
# CONFIG_NTFS3_FS_POSIX_ACL is not set
CONFIG_NTFS_FS=y
也就是说新编译的内核只实现了:
CONFIG_NTFS_FS=y


> ⚠️ **关于旧版 NTFS 驱动**:在内核 5.15 版本后,旧版只读的 `ntfs` 驱动代码已被移除,`CONFIG_NTFS_FS` 选项仅作为向后兼容的别名存在,实际生效的是 NTFS3 驱动。
是不是不能启用旧版的NTFS内核驱动啊?直接保持CONFIG_NTFS3_FS=y编译可行?
CONFIG_NTFS_FS=m
可行啊?
多找点论坛资料研究看看。

 楼主| 发表于 2026-3-20 16:54 | 显示全部楼层
liuzhaoyzz 发表于 2026-3-20 15:42
> ⚠️ **关于旧版 NTFS 驱动**:在内核 5.15 版本后,旧版只读的 `ntfs` 驱动代码已被移除,`CONFIG_N ...


辛苦了!
真的值得庆贺,用veket安装器可以安装微器人-26(iso解开)的系统了。3月19日分享的这个veket安装器(简称新安装器),在安装微器人-26的应用场景至少可以从三个方面实现:
一是在v20、v22、v24、v25、v26的系统下通过新安装器,可以轻松安装微器人-26到硬盘;
二是通过烧录微器人-26的IMG制成闪存驱动,可以系统集成的新安装器将微器人-26轻松安装硬盘;
三是通过veketa-26.iso(最终名),以iso硬盘启动方式,用系统集成的新安装器将微器人-26轻松安装硬盘。
注:你先前分享的如下代码引导微器人-26有效,我每次发布前,均以此方式测试 iso的启动效果。
title veketa-26.iso
find --ignore-floppies --ignore-cd --set-root /weiqr/veketa-26.iso
map /weiqr/veketa-26.iso (hd32) ;; map --hook
kernel (hd32)/vmlinuz find_iso=/weiqr/veketa-26.iso PSUBDIR=/ pmedia=cd pfix=fsck
initrd (hd32)/initrd.gz

微器人-26母源是以IMG镜像发布,系统构造底层设计就需要ext4分区运行,若通过内核驱动来改变这一初衷,分析不能实现,你在202楼说“是不是不能启用旧版的NTFS内核驱动啊?直接保持CONFIG_NTFS3_FS=y编译
可行?”。其实,3月14日微器人-26版的内核编译就是“CONFIG_NTFS3_FS=y”,“CONFIG_NTFS_FS is not set”,今天将编译将“CONFIG_NTFS_FS=y”(将其编译进了vmlinuz,随系统内核引导先行启动了);若将“CONFIG_NTFS_FS=m”(即将编译驱动文件放进了/usr/lib/modules/6.18.15/,进入系统后才启动)。
发表于 2026-3-20 20:57 来自手机 | 显示全部楼层
关于linux编译,我也是不懂瞎猜瞎说的。如果veket26能够支持从NTFS分区启动就方便了,那样子的话SX_veket安装器windows版本也可以方便使用,代码改起来也很方便,很容易,主要是需要测试。
发表于 2026-3-20 21:03 来自手机 | 显示全部楼层
系统具有“启动更快,关机更快,运行更快”的特点。实测确实如此,要比之前的版本启动快些!
您需要登录后才可以回帖 登录 | 要注册

本版积分规则

QQ|手机版|Archiver|veket官方网站论坛,veketx官方网站论坛,微器人 ( 粤ICP备 11052856 )

GMT+8, 2026-3-23 17:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表