无忧启动论坛

 找回密码
 注册
搜索

如何获取linux iso的启动参数

查看数: 704 | 评论数: 43 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-12-23 16:39

正文摘要:

我搜了下网络,只知道Linux mint的启动参数如下:     linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject splash     initrd (loop)/casper/initrd.lz ...

回复

wn168cn@163.com 发表于 前天 14:04
感谢分享
liuzhaoyzz 发表于 前天 13:57
my9823 发表于 2024-12-26 12:04
这不是有吗?100多M的体积。

果然是有!
yhm2002 发表于 前天 12:23
恭喜发财
my9823 发表于 前天 12:04
本帖最后由 my9823 于 2024-12-26 12:06 编辑
liuzhaoyzz 发表于 2024-12-26 09:33
前面说了,即使用binwalk解压,也看不出什么来,主要systemd太烦人。


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

点评

果然是有!  详情 回复 发表于 前天 13:57
liuzhaoyzz 发表于 前天 11:59
https://www.lanzoux.com/b00nlwy1c
SX_Live_linux安装器2024-12-26.rar
已经更新,完善deepin发行版支持。
liuzhaoyzz 发表于 前天 10:41
wintoflash 发表于 2024-12-26 10:33
我的意思是一个菜单,kernel命令行里面fromiso和findiso都加上。

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

改这个只是举手之劳,我晚点改下。
wintoflash 发表于 前天 10:33
liuzhaoyzz 发表于 2024-12-26 09:54
都加上,那不是有两个菜单了吗?一个不行让网友试另一个?感觉深度做事太不靠谱了,这个启动参数好好地改 ...

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

点评

哦,我试了,果然是可以,有两个参数,启动的时候居然不出错,看样子是init只识别了他认识的启动参数,挺好的。 改这个只是举手之劳,我晚点改下。  详情 回复 发表于 前天 10:41
liuzhaoyzz 发表于 前天 09:54
wintoflash 发表于 2024-12-26 09:45
程序自动生成菜单的时候,为了方便可以直接把findiso和fromiso两个参数都加上。

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

点评

我的意思是一个菜单,kernel命令行里面fromiso和findiso都加上。  详情 回复 发表于 前天 10:33
wintoflash 发表于 前天 09:45
liuzhaoyzz 发表于 2024-12-26 09:34
用fromiso果然是可以!

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

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

点评

都加上,那不是有两个菜单了吗?一个不行让网友试另一个?感觉深度做事太不靠谱了,这个启动参数好好地改他作甚? 我写的批处理是直接从文件名字作为关键字判断发行版的,很难深入判断deepin的内核版本,不知道deep  详情 回复 发表于 前天 09:54
yzw92 发表于 前天 09:38
感谢分享。
liuzhaoyzz 发表于 前天 09:34
本帖最后由 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两个参数都加上。  详情 回复 发表于 前天 09:45
liuzhaoyzz 发表于 前天 09:33
my9823 发表于 2024-12-26 09:23
不可能,initrd.xz中绝对有个迷你的系统。你先安装binwalk,再用binwalk  initrd.xz其中肯定有内嵌的文件 ...

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

点评

[attachimg]552304[/attachimg] 这不是有吗?100多M的体积。  详情 回复 发表于 前天 12:04
wintoflash 发表于 前天 09:24
liuzhaoyzz 发表于 2024-12-26 09:04
我试过了,你说的这个deepin-live-cd-commiunty-1.3.0-full.iso不支持findiso启动参数。无法启动。
menu ...

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

点评

用fromiso果然是可以! 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 --fi  详情 回复 发表于 前天 09:34
my9823 发表于 前天 09:23
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太烦人。  详情 回复 发表于 前天 09:33
liuzhaoyzz 发表于 前天 09:06
本帖最后由 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, 下载次数: 11)

QQ20241226-090622.png

点评

不可能,initrd.xz中绝对有个迷你的系统。你先安装binwalk,再用binwalk initrd.xz其中肯定有内嵌的文件。你用cpio解压时看输出信息,数据块显示多少,默认每个数据块石512字节,算算体积,看看initrd.xz体积,对不  详情 回复 发表于 前天 09:23
liuzhaoyzz 发表于 前天 09:04
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, 下载次数: 7)

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

点评

findiso换成fromiso试试。记得deepin改过参数。  详情 回复 发表于 前天 09:24
my9823 发表于 3 天前
网上还有另外的工具可以查看initrd中的文件信息,binwalk查看内置的文件,网上常用来提取各种固件,例如路由器的固件文件,还有前段时间论坛制作的efi内置的pe。还有就是先用cpio解压第一层,有提示信息多少个数据块输出,例如1234块,再用dd把这个数据块后面的数据导出为一个文件:dd if=initrd of=newinitrd bs=512 skip=1234,这样的到这些cpu微码后的真正的initrd,再用cpio二次解压。

点评

他这个deepin-live-cd-commiunty-1.3.0-full.iso deepin-live-cd-commiunty-1.3.0-full.iso\live\filesystem.squashfs%usr\sbin\init init脚本里面只有一行: /lib/systemd/systemd 用的是systemd,要想从syst  详情 回复 发表于 前天 09:06
icebug 发表于 3 天前
my9823 发表于 2024-12-24 21:16
使用lsinitramfs能查看initramfs中的文件。

厉害,谢谢。明天去看看,不知道看得懂不。
csh888 发表于 3 天前

感谢分享
icebug 发表于 3 天前
本帖最后由 icebug 于 2024-12-25 21:07 编辑
liuzhaoyzz 发表于 2024-12-25 17:00
我说的就是live版本。
你有拖上去试试看吗?菜单是什么样子的?
具体是deepin的什么版本?哪里下载的?

拖了,和你上面配置的一样
deepin-live-cd-commiunty-1.3.0-full.iso

https://www.aliyundrive.com/s/bfzZhFWCEdi/folder/62ad67cc8aedb341f6bb428dbd99902b22ec6cf2

uos-livetools-desktop-20240924_amd64.iso

http://livecd.uostools.com/



点评

我试过了,你说的这个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-  详情 回复 发表于 前天 09:04
liuzhaoyzz 发表于 3 天前
icebug 发表于 2024-12-25 16:52
我前面说了我的deepin和uos系统都是live版,不是安装版
按你的配置,进不去系统

我说的就是live版本。
你有拖上去试试看吗?菜单是什么样子的?
具体是deepin的什么版本?哪里下载的?

点评

拖了,和你上面配置的一样 deepin-live-cd-commiunty-1.3.0-full.iso uos-livetools-desktop-20240924_amd64.iso  详情 回复 发表于 3 天前
my9823 发表于 4 天前

使用lsinitramfs能查看initramfs中的文件。



使用unmkinitramfs解开到123目录。
解开后进入123目录会看到:

看看main目录的文件结构:


1.png (553.59 KB, 下载次数: 6)

1.png

点评

厉害,谢谢。明天去看看,不知道看得懂不。  详情 回复 发表于 3 天前
guong 发表于 4 天前
来学习了
my9823 发表于 4 天前
icebug 发表于 2024-12-23 22:59
打开里面目录里只有GenuineIntel.bin文件,这个文件打不开的

这种initrd或者是initramfs,可以理解成多个cpio结合而成的压缩包。有两种方法可以百度如何解压ubuntu的新式initrd。
icebug 发表于 5 天前

打开里面目录里只有GenuineIntel.bin文件,这个文件打不开的

点评

这种initrd或者是initramfs,可以理解成多个cpio结合而成的压缩包。有两种方法可以百度如何解压ubuntu的新式initrd。  详情 回复 发表于 4 天前
icebug 发表于 5 天前
liuzhaoyzz 发表于 2024-12-23 22:19
title [04] 深度 Deepin Linux 系统 ISO
        find --set-root /PE/deepin/vmlinuz
        kernel  ...

非常感谢大神的支持与帮助!
2012fengxi 发表于 5 天前
icebug 发表于 2024-12-23 21:38
不行,名字没有后缀,而且不能当压缩包解开

可以用7z打开

点评

打开里面目录里只有GenuineIntel.bin文件,这个文件打不开的  详情 回复 发表于 5 天前
liuzhaoyzz 发表于 5 天前
wintoflash 发表于 2024-12-23 21:27
感觉可以在grub2区开个帖子总结下各发行版loopback启动的参数。

那么多发行版,整理起来有点费事,有的发行版,不同版本还有变化呢。

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

闽公网安备 35020302032614号

GMT+8, 2024-12-28 04:55

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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