veket官方网站论坛

veket

 找回密码
 要注册
搜索
查看: 4141|回复: 9

veket527的另类启动方法

[复制链接]
发表于 2010-9-30 21:12 | 显示全部楼层 |阅读模式
veket527的另类启动方法
cdlinux.iso可以不解开iso镜像而整体启动,于是就联想veket.iso也可以,于是在grub4dos下老是找不到xxxx.sfs,查了网上,无忧论的高手提出了方案,即是把qrky-888.sfs整合进initrd.gz

首先 你把ISO中的 qrky-888.sfs和initrd.gz 复制到一个分区下 比如/mnt/sda1/haha
接着你 在终端里输入:
# cd /mnt/sda1/haha
# gzip -d initrd.gz
不要关闭中端
这个时候你会发现 initrd.gz这个文件已经变成initrd文件了 扩展名也没了 呵呵不用担心
在刚才的终端里继续输入:
# cpio -i -d < initrd
呵呵 稍等10几秒 你看看吧 haha/目录下是不是都是文件夹呀? 这些就是initrd.gz解压出来的
把initrd文件删除掉,刚才我们已经把qrky-888.sfs文件复制到haha/下了 此时只要把haha这个文件夹下的文件重新打包为initrd.gz就可以了
打开终端:
# cd /mnt/sda1/haha
# find . | cpio -o -H newc > ../initrd.img
# cd ../
# gzip -9 initrd.img
到此为止 在sda1/目录下 你就可以看见initrd.img.gz文件了 你把它名字改为initrd.gz 一切OK!你把新打包的initrd.gz文件 放到ISO中 这个时候 ISO中不能再放qrky-888.sfs文件了,利用UltraISO等软件 把它打包为ISO(如何使用UltraISO我就不讲了)
好了,我们现在用grub 引导:(假如把名为veket.iso放在某个盘的boot目录下)

title Boot  veket.iso
map --mem /boot/veket.iso (0xff)
map --hook
chainloader (0xff)
boot

到此,你可以心情恬静地看着一行行字母一排排经过,也同时把你的二郎腿搭在桌子上,点一支烟,享受成功的快感。

评分

1

查看全部评分

发表于 2010-9-30 21:37 | 显示全部楼层
好贴,沙发!
同道中人呀!
我研究了一天一夜怎么在kernel上加参数,总是失败,看来只能这样解决了。
这样做需要内存够大,如果blocklist看到iso文件是连续的,也可以不用--mem,直接map就行。

[ 本帖最后由 pluto 于 2010-9-30 21:41 编辑 ]
发表于 2010-9-30 22:28 | 显示全部楼层
解开initrd.gz:
做个目录“initdir”
mkdir initdir
cd initdir
把initrd.gz放到目录里,然后,打指令:
# zcat initrd.gz |cpio -i -d
就变成目录了。可以改里面的东西,例如init脚本。

压缩回去:
# find . | cpio -o -H newc | gzip -9 > initrd.gz
发表于 2010-9-30 22:35 | 显示全部楼层

回复 3# 的帖子

师姐好像把一楼复制粘贴了一份?
这两份命令基本一样,我没看出区别。。。

[ 本帖最后由 pluto 于 2010-9-30 22:37 编辑 ]
发表于 2010-9-30 22:44 | 显示全部楼层
好像没有必要
您需要登录后才可以回帖 登录 | 要注册

本版积分规则

QQ|手机版|Archiver|veket官方网站论坛 ( 粤ICP备 11052856 )

GMT+8, 2025-5-3 01:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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