我必须使用pci=nocrs
硬件才能使 USB 端口工作。但由于我必须使用外部 USB DVD 驱动器,因此如果不传递该参数,我将很难启动。
我可以在刻录之前编辑磁盘上的文件,但这些文件似乎都经过了压缩,人眼无法读取。是否有任何技巧或方法可以在这样的 livecd 上编辑 grub 启动参数?如果这很重要,我正在使用 Gnome 3 livecd(opensuse)。
我在 Kubuntu 安装(不是 livecd)上执行的方式是这样的:GRUB_CMDLINE_LINUX="pci=nocrs"
然后运行update-grub
。
我可能每次启动时都会“即时”执行此操作,但我想避免这种情况。我还想避免将其安装到硬盘上(我知道这肯定会解决我的问题)
但是,如果有办法让我只启动一次操作系统,通过在启动时手动(临时)编辑参数,然后在操作系统内部进行必要的更改,然后根据内存中加载的当前映像重新创作 DVD,我愿意制作新的启动 DVD。(如果有办法做到这一点)
编辑:
该/boot/grub
目录只有一个文件,即mbrid
。该文件的内容只有以下内容:0x131f4e78
我猜测文件系统被压缩为一个文件,运行时一次解压缩一个文件。
另外,这是磁盘的目录结构:(感谢TREE
DOS 中的命令)
│ GNOME_3-read-only.x86_64-1.0.0
│ config.isoclient
│
└───boot
├───grub
│ mbrid
│
└───x86_64
└───loader
│ 08000600.spl
│ 10240768.spl
│ 12801024.spl
│ 16x16.fnt
│ af.hlp
│ af.tr
│ ar.hlp
│ ar.tr
│ back.jpg
│ bg.tr
│ bootlogo
│ ca.hlp
│ ca.tr
│ chain.c32
│ cs.hlp
│ cs.tr
│ da.hlp
│ da.tr
│ de.hlp
│ de.tr
│ el.hlp
│ el.tr
│ en.hlp
│ en.tlk
│ en.tr
│ es.hlp
│ es.tr
│ et.hlp
│ et.tr
│ fi.hlp
│ fi.tr
│ fr.hlp
│ fr.tr
│ gfxboot.c32
│ gfxboot.cfg
│ gl.tr
│ gu.hlp
│ gu.tr
│ hapysuse.mod
│ hi.tr
│ hr.hlp
│ hr.tr
│ hu.hlp
│ hu.tr
│ id.tr
│ initrd
│ isolinux.bin
│ isolinux.cfg
│ isolinux.msg
│ it.hlp
│ it.tr
│ ja.hlp
│ ja.tr
│ ka.tr
│ ko.hlp
│ ko.tr
│ kroete.dat
│ ky.hlp
│ ky.tr
│ linux
│ lt.hlp
│ lt.tr
│ mboot.c32
│ memtest
│ mr.hlp
│ mr.tr
│ nb.hlp
│ nb.tr
│ nl.hlp
│ nl.tr
│ pa.hlp
│ pa.tr
│ pabout.txt
│ panim.jpg
│ panim_a.jpg
│ pback.jpg
│ phead.jpg
│ pl.hlp
│ pl.tr
│ pt.hlp
│ pt.tr
│ pt_BR.hlp
│ pt_BR.tr
│ ro.hlp
│ ro.tr
│ ru.hlp
│ ru.tr
│ sk.hlp
│ sk.tr
│ sl.tr
│ sr.tr
│ sv.hlp
│ sv.tr
│ ta.tr
│ text.jpg
│ tg.tr
│ th.hlp
│ th.tr
│ timer_a.jpg
│ tr.tr
│ uk.hlp
│ uk.tr
│ wa.tr
│ welcome.jpg
│ xh.hlp
│ xh.tr
│ zh_CN.hlp
│ zh_CN.tr
│ zh_TW.hlp
│ zh_TW.tr
│ zu.tr
│
├───animations
└───branding
bootsplash-1024x768.cfg
bootsplash-1024x768.jpg
bootsplash-1280x1024.cfg
bootsplash-1280x1024.jpg
bootsplash-800x600.cfg
bootsplash-800x600.jpg
logo.mng
logov.mng
silent-1024x768.jpg
silent-1280x1024.jpg
silent-800x600.jpg
编辑2:
以下是 的内容/boot/x86_64/loader/isolinux.cfg
。事实上,这似乎是放置它的正确位置。今晚晚些时候我会测试它并更新它以反映解决方案。
default GNOME3
implicit 1
display isolinux.msg
ui gfxboot bootlogo isolinux.msg
prompt 1
timeout 200
label GNOME3
kernel linux
append initrd=initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showopts
label Failsafe_--_GNOME3
kernel linux
append initrd=initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showopts ide=nodma apm=off acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off
label harddisk
localboot 0x80
label memtest
kernel memtest
看起来我可以将我的参数添加到这里的末尾: append initrd=initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showopts
答案1
LiveCD 的目录结构如下:
|-- autorun.inf
|-- boot
| |-- grub
| | |-- desktops
| | |-- extended
| | |-- grldr
| | |-- iso9660_stage1_5
| | |-- menu.lst <--- GRUB Menu Listing
| | |-- message
| | `-- stage2
| |-- initrd-nx08.gz
| |-- pxelinux.0
| |-- pxelinux.cfg
| | |-- default
| | `-- default2
| |-- syslinux
| | `-- syslinux.cfg
| |-- syslinux.bin
| |-- vesamenu.c32
| `-- vmlinuz-nx08
|-- boot.catalog
`-- ...
您想修改 ISO 并编辑“grub.lst”文件(如果找不到,您可以搜索)。然后您想将其重新打包成可启动的 ISO 并将其刻录到磁盘。
我见过ISO大师推荐用于此类任务,所以这将是我翻开的第一页。
一些发行版也使用isolinux
,并且它们的配置细节可以在中找到isolinux.cfg
,并使用类似 LILO 的语法,用于append
添加参数。