无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 4004|回复: 84
打印 上一主题 下一主题

[求助] 如何获取linux iso的启动参数

  [复制链接]
跳转到指定楼层
1#
发表于 2024-12-23 16:39:45 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
我搜了下网络,只知道Linux mint的启动参数如下:
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject splash
    initrd (loop)/casper/initrd.lz

但我手上还有好几个别的linux的iso,如何获取他们的启动参数呢?

注意:通过查看iso里的grub.cfg文件获取参数是不行的,因为那是刻录好iso之后的启动参数,而我要的是不刻录iso直接启动iso的参数
55#
发表于 2025-2-5 12:14:39 来自手机 | 只看该作者
liuzhaoyzz  2025-2-5 11:32
Slax / Porteus
fromiso=${iso_path}
from=${iso_path}ɡ


已改正
回复

使用道具 举报

54#
发表于 2025-2-5 11:32:32 | 只看该作者
wintoflash 发表于 2025-1-9 15:01
根据 grubfm 的菜单和一些以前的资料整理了一下:
https://a1ive.github.io/grub2_loopback.html
https ...

Slax / Porteus
fromiso=${iso_path}
好像不对,应该是from=${iso_path}吧。

点评

  详情 回复 发表于 2025-2-5 12:14
回复

使用道具 举报

53#
发表于 2025-1-12 12:20:23 | 只看该作者
liuzhaoyzz 发表于 2025-1-12 10:54
还是批处理好呀,明文,不用编译,直接修改,启动参数修改只是举手之劳!低端大众有内涵
至于g ...

grubfm也是纯文本啊
https://github.com/a1ive/grub2-f ... /iso/loop_detect.sh
回复

使用道具 举报

52#
发表于 2025-1-12 10:54:51 | 只看该作者
本帖最后由 liuzhaoyzz 于 2025-1-12 11:01 编辑
wintoflash 发表于 2025-1-12 10:48
grub2/grubfm早就停止维护了。
不只deepin,veket、proxmox、pclinuxos等的菜单都要更新。
这个更新下 ...

还是批处理好呀,明文,不用编译,直接修改,启动参数修改只是举手之劳!低端大众有内涵
至于grub2魔改版,我也没发现启动有啥问题。

proxmox、pclinuxos我没玩过,好象没有中文版的吧?我只关注有中文版的发行版和知名度较高的发行版。
grubfm等你有空的时候更新下啊,全世界只有你最懂grubfm啊。测试发行版都可以在虚拟机中测试啊,不用重启电脑。

点评

grubfm也是纯文本啊 https://github.com/a1ive/grub2-filemanager/blob/master/boot/grubfm/rules/iso/loop_detect.sh。  详情 回复 发表于 2025-1-12 12:20
回复

使用道具 举报

51#
发表于 2025-1-12 10:48:45 | 只看该作者
liuzhaoyzz 发表于 2025-1-12 10:29
对了,grubfm可能同步更新下啊?我打包进去我那个批处理了。我这边等米下锅哦
deepin和UOS都要 ...

grub2/grubfm早就停止维护了。
不只deepin,veket、proxmox、pclinuxos等的菜单都要更新。
这个更新下去没完没了的,还要测试各种发行版,太折磨了,等个有缘人(大冤种)来接盘吧。
回复

使用道具 举报

50#
发表于 2025-1-12 10:29:08 | 只看该作者
本帖最后由 liuzhaoyzz 于 2025-1-12 10:31 编辑
wintoflash 发表于 2024-12-26 09:45
程序自动生成菜单的时候,为了方便可以直接把findiso和fromiso两个参数都加上。

对了,grubfm可能同步更新下啊?我打包进去我那个批处理了。我这边等米下锅哦
deepin和UOS都要更新下。

点评

grub2/grubfm早就停止维护了。 不只deepin,veket、proxmox、pclinuxos等的菜单都要更新。 这个更新下去没完没了的,还要测试各种发行版,太折磨了,等个有缘人(大冤种)来接盘吧。  详情 回复 发表于 2025-1-12 10:48
回复

使用道具 举报

49#
发表于 2025-1-9 17:38:44 | 只看该作者
看看
回复

使用道具 举报

48#
发表于 2025-1-9 17:21:44 | 只看该作者
wintoflash 发表于 2025-1-9 15:01
根据 grubfm 的菜单和一些以前的资料整理了一下:
https://a1ive.github.io/grub2_loopback.html
https ...

Cheatcodes,好像是tinycore的说法,我在国外论坛交流的时候,国外网友不知道Cheatcodes是啥东西,后来我说成Bootcodes,他们就懂了。
我觉得改成Bootcodes较好。

回复

使用道具 举报

47#
发表于 2025-1-9 17:09:51 | 只看该作者
wintoflash 发表于 2025-1-9 15:01
根据 grubfm 的菜单和一些以前的资料整理了一下:
https://a1ive.github.io/grub2_loopback.html
https ...

你出手了,还有什么问题!

KNOPPIX,他的bootfrom=/mnt-iso//path/to/iso,/mnt-iso//后面应该有两个/,有点奇怪。你好象只写了一个?
Knoppix
bootfrom=/mnt-iso${iso_path}

title /linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso
find --ignore-floppies --ignore-cd --set-root /linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso
map /linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso (hd32)
map --hook
kernel (hd32)/boot/isolinux/linux64 bootfrom=/mnt-iso//linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso lang=en apm=power-off nomce hpsa.hpsa_allow_any=1 loglevel=1
initrd (hd32)/boot/isolinux/minirt.gz

menuentry "/linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso" "/linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2
loopback loop $2
linux (loop)/boot/isolinux/linux64 bootfrom=/mnt-iso//linux/knoppix/KNOPPIX_V9.1CD-2021-01-25-EN.iso lang=en apm=power-off nomce hpsa.hpsa_allow_any=1 loglevel=1
initrd (loop)/boot/isolinux/minirt.gz
}

点评

已订正  发表于 2025-1-9 17:21
回复

使用道具 举报

46#
发表于 2025-1-9 15:14:00 | 只看该作者
感谢分享
回复

使用道具 举报

45#
发表于 2025-1-9 15:01:25 | 只看该作者
liuzhaoyzz 发表于 2024-12-23 22:20
那么多发行版,整理起来有点费事,有的发行版,不同版本还有变化呢。

根据 grubfm 的菜单和一些以前的资料整理了一下:
https://a1ive.github.io/grub2_loopback.html
https://github.com/a1ive/a1ive.g ... r/grub2_loopback.md

未做完全的测试,有错误的话欢迎提 issue 或 pr。
回复

使用道具 举报

44#
发表于 2024-12-26 14:04:07 | 只看该作者
感谢分享
回复

使用道具 举报

43#
发表于 2024-12-26 13:57:42 | 只看该作者
my9823 发表于 2024-12-26 12:04
这不是有吗?100多M的体积。

果然是有!
回复

使用道具 举报

42#
发表于 2024-12-26 12:23:30 | 只看该作者
恭喜发财
回复

使用道具 举报

41#
发表于 2024-12-26 12:04:35 | 只看该作者
本帖最后由 my9823 于 2024-12-26 12:06 编辑
liuzhaoyzz 发表于 2024-12-26 09:33
前面说了,即使用binwalk解压,也看不出什么来,主要systemd太烦人。


这不是有吗?100多M的体积。

点评

果然是有!  详情 回复 发表于 2024-12-26 13:57
回复

使用道具 举报

40#
发表于 2024-12-26 11:59:55 | 只看该作者
https://www.lanzoux.com/b00nlwy1c
SX_Live_linux安装器2024-12-26.rar
已经更新,完善deepin发行版支持。
回复

使用道具 举报

39#
发表于 2024-12-26 10:41:27 | 只看该作者
wintoflash 发表于 2024-12-26 10:33
我的意思是一个菜单,kernel命令行里面fromiso和findiso都加上。

哦,我试了,果然是可以,有两个参数,启动的时候居然不出错,看样子是init只识别了他认识的启动参数,挺好的。

改这个只是举手之劳,我晚点改下。
回复

使用道具 举报

38#
发表于 2024-12-26 10:33:02 | 只看该作者
liuzhaoyzz 发表于 2024-12-26 09:54
都加上,那不是有两个菜单了吗?一个不行让网友试另一个?感觉深度做事太不靠谱了,这个启动参数好好地改 ...

我的意思是一个菜单,kernel命令行里面fromiso和findiso都加上。
回复

使用道具 举报

37#
发表于 2024-12-26 09:54:20 | 只看该作者
wintoflash 发表于 2024-12-26 09:45
程序自动生成菜单的时候,为了方便可以直接把findiso和fromiso两个参数都加上。

都加上,那不是有两个菜单了吗?一个不行让网友试另一个?感觉深度做事太不靠谱了,这个启动参数好好地改他作甚?
我写的批处理是直接从文件名字作为关键字判断发行版的,很难深入判断deepin的内核版本,不知道deepin是从哪个版本改启动参数的。

点评

我的意思是一个菜单,kernel命令行里面fromiso和findiso都加上。  详情 回复 发表于 2024-12-26 10:33
回复

使用道具 举报

36#
发表于 2024-12-26 09:45:34 | 只看该作者
liuzhaoyzz 发表于 2024-12-26 09:34
用fromiso果然是可以!

menuentry "/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso" "/linux ...

程序自动生成菜单的时候,为了方便可以直接把findiso和fromiso两个参数都加上。
回复

使用道具 举报

35#
发表于 2024-12-26 09:38:20 | 只看该作者
感谢分享。
回复

使用道具 举报

34#
发表于 2024-12-26 09:34:51 | 只看该作者
本帖最后由 liuzhaoyzz 于 2024-12-26 10:00 编辑
wintoflash 发表于 2024-12-26 09:24
findiso换成fromiso试试。记得deepin改过参数。

用fromiso果然是可以!
加上 locales=zh_CN.UTF-8可以变成中文界面:

menuentry "/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso" "/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2
loopback loop $2
linux (loop)/live/vmlinuz boot=live fromiso=$2 components quiet splash locales=zh_CN.UTF-8
initrd (loop)/live/initrd.lz
}

grub4dos也可以,前提是iso要经过碎片整理(复制粘贴重命名删除原文件)。
title /linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso
find --ignore-floppies --ignore-cd --set-root /linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso
map /linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso (hd32)
map --hook
kernel (hd32)/live/vmlinuz boot=live fromiso=/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso components quiet splash locales=zh_CN.UTF-8
initrd (hd32)/live/initrd.lz




点评

程序自动生成菜单的时候,为了方便可以直接把findiso和fromiso两个参数都加上。  详情 回复 发表于 2024-12-26 09:45
回复

使用道具 举报

33#
发表于 2024-12-26 09:33:02 | 只看该作者
my9823 发表于 2024-12-26 09:23
不可能,initrd.xz中绝对有个迷你的系统。你先安装binwalk,再用binwalk  initrd.xz其中肯定有内嵌的文件 ...

前面说了,即使用binwalk解压,也看不出什么来,主要systemd太烦人。

点评

[attachimg]552304[/attachimg] 这不是有吗?100多M的体积。  详情 回复 发表于 2024-12-26 12:04
回复

使用道具 举报

32#
发表于 2024-12-26 09:24:21 | 只看该作者
liuzhaoyzz 发表于 2024-12-26 09:04
我试过了,你说的这个deepin-live-cd-commiunty-1.3.0-full.iso不支持findiso启动参数。无法启动。
menu ...

findiso换成fromiso试试。记得deepin改过参数。
回复

使用道具 举报

31#
发表于 2024-12-26 09:23:18 | 只看该作者
liuzhaoyzz 发表于 2024-12-26 09:06
他这个deepin-live-cd-commiunty-1.3.0-full.iso,init脚本不是在initrd中,initrd.lz中只有deepin-live- ...

不可能,initrd.xz中绝对有个迷你的系统。你先安装binwalk,再用binwalk  initrd.xz其中肯定有内嵌的文件。你用cpio解压时看输出信息,数据块显示多少,默认每个数据块石512字节,算算体积,看看initrd.xz体积,对不上吧?

点评

前面说了,即使用binwalk解压,也看不出什么来,主要systemd太烦人。  详情 回复 发表于 2024-12-26 09:33
回复

使用道具 举报

30#
发表于 2024-12-26 09:06:49 | 只看该作者
本帖最后由 liuzhaoyzz 于 2024-12-26 09:19 编辑
my9823 发表于 2024-12-25 21:51
网上还有另外的工具可以查看initrd中的文件信息,binwalk查看内置的文件,网上常用来提取各种固件,例如路 ...

他这个deepin-live-cd-commiunty-1.3.0-full.iso,init脚本不是在initrd中,initrd.lz中只有deepin-live-cd-commiunty-1.3.0-full.iso\live\initrd.lz\kernel\x86\microcode\一个文件夹,init是在filesystem.squashfs中,
deepin-live-cd-commiunty-1.3.0-full.iso\live\filesystem.squashfs\usr\sbin\init
init脚本里面只有一行:
/lib/systemd/systemd
用的是systemd,要想从systemd看启动参数,太难了,systemd各种服务乱七八糟地并行启动,搞不清楚启动参数。

initrd.lz里面应该是有多个cpio文件打包进去的,从文件大小可以看出来,initrd.lz大小是80MB,那个deepin-live-cd-commiunty-1.3.0-full.iso\live\initrd.lz\kernel\x86\microcode\文件夹只有4.6MB,但是估计解压出来也没啥用,主要是systemd参数太复杂了,不是init那种明文的,很难看出适用于iso启动的启动参数,我试过了他这个livecd不支持findiso=xxxx。

QQ20241226-090622.png (90.78 KB, 下载次数: 40)

QQ20241226-090622.png
回复

使用道具 举报

29#
发表于 2024-12-26 09:04:10 | 只看该作者
icebug 发表于 2024-12-25 21:02
拖了,和你上面配置的一样
deepin-live-cd-commiunty-1.3.0-full.iso

我试过了,你说的这个deepin-live-cd-commiunty-1.3.0-full.iso不支持findiso启动参数。无法启动。
menuentry "/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso" "/linux/deepin/deepin-live-cd-commiunty-1.3.0-full.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2
loopback loop $2
linux (loop)/live/vmlinuz boot=live findiso=$2 components quiet splash
initrd (loop)/live/initrd.lz
}

我试了wintoflash的grub2filemanager直接启动也不行。我没有试过partnew方案是否可行,不喜欢这样子的启动方式,还要MBR分区表。

可以用ventoy启动,进入桌面后不能选择特效模式,选择普通模式可以进入。

upan-2024-12-26-08-38-49.png (613.87 KB, 下载次数: 37)

upan-2024-12-26-08-38-49.png
回复

使用道具 举报

28#
发表于 2024-12-25 21:51:32 来自手机 | 只看该作者
网上还有另外的工具可以查看initrd中的文件信息,binwalk查看内置的文件,网上常用来提取各种固件,例如路由器的固件文件,还有前段时间论坛制作的efi内置的pe。还有就是先用cpio解压第一层,有提示信息多少个数据块输出,例如1234块,再用dd把这个数据块后面的数据导出为一个文件:dd if=initrd of=newinitrd bs=512 skip=1234,这样的到这些cpu微码后的真正的initrd,再用cpio二次解压。
回复

使用道具 举报

27#
 楼主| 发表于 2024-12-25 21:40:31 | 只看该作者
my9823 发表于 2024-12-24 21:16
使用lsinitramfs能查看initramfs中的文件。

厉害,谢谢。明天去看看,不知道看得懂不。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-7-24 06:53

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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