openEuler 2403 新装系统,不能使用本地安装源?

openEuler 2403 LTS

情况:互联网隔离,通过移动硬盘,把源的 OS,everything, EPOL 下x86_64 都下载下来了,没有下载 ISO 文件。

方法: OS/$arch/EFI/BOOT/grub.cfg 给出了引导方法,略作修改:

search --no-floppy --set=root -l 'openEuler-24.03-LTS-x86_64'

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Install openEuler 24.03-LTS' --class openEuler --class gnu-linux --class gnu --class os {
	linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=openEuler-24.03-LTS-x86_64 fpi_to_tail=off
	initrdefi /images/pxeboot/initrd.img
}

修改其中两行:

search --set=root -l data1
linuxefi ... ... inst.stage2=hd:LABEL=data1:/euler-repo/OS/x86_64/ ...

注意,data1 是的文件系统的卷名,我其实在此文件的根下创建了 images, EFI 等两个目录的符号链接。所以,引导过程没有问题。Linux内核加载进来后,这个root参数就不起作用了,inst.stage2=... 如果没有写完整的目录名称,启动不到GUI界面。

使用本地磁盘,写法 inst.stage2=hd:<uuid,label,...>[:/path-to-dir] 是从 redhat 网站上查来的,有一段没有看懂,这个参数是用于找 ISO文件,还是找解压后的一般文件,与之类似的还有一个参数叫 inst.repo ,我也没有完全搞懂这两个参数的本质差异。

然后,进入下面的这个界面。

默认停留在“自动检测到的安装介质”选项上,但其实不能用!进入字符终端,ctl-alt-F2,可以发现 LABEL=data1 分区已经被挂载了,好像在 /run/.../ 下,然后,我直接在此目录下创建若干个符号链接,如 Packages, RPM-GPG, isolinux, repodata,然后,发现还是*不能用*!没有找到原因,没有提示消息。

再变通的办法,自己建立一个http服务了,可以了。

感觉没有道理啊。为什么本地的没有不用?或者说,本地是在找ISO文件吗?