|
CDlinux中的CDlinux.gz是什么文件格式阿?我用的是0.53版本,带x的那个.
网上有说是squashfs的,我的系统是FC4,不支持这个格式,于是我重新编译了内核,找到了squashfs补丁.重新编译后的内核能支持了.如下:
[root@localhost local]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev binfmt_misc
nodev debugfs
nodev securityfs
nodev usbfs
nodev pipefs
nodev futexfs
nodev tmpfs
nodev inotifyfs
nodev eventpollfs
nodev devpts
ext3
ext2
squashfs
nodev ramfs
nodev hugetlbfs
iso9660
nodev mqueue
nodev rpc_pipefs
nodev autofs
vfat
可是当我解压CDlinux.gz为CDlinux,然后mount的时候就出问题了.
[root@localhost work]# gunzip CDlinux.gz
[root@localhost work]# ls -l CDlinux
-rw------- 1 root root 25513984 5月 3 12:36 CDlinux
[root@localhost work]# mount CDlinux /mnt/temp -t squashfs -o loop
mount: wrong fs type, bad option, bad superblock on /dev/loop1,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
重新google一下,有说CDlinux.gz是ovlfs的,我想这次还是先问问您,而且我还没找到ovlfs相关的下载.同时网上有说ovlfs发展不好,不支持2.6的内核.苦闹.
http://www.linuxfans.org/nuke/mo ... =99534&start=15
cdlinux.gz是ovlfs格式,不是initrd,要在加载ovlfs模块后才能将它mount上来,解压也要指定的工具,你把ovlfs下载下来就能得到相应的工具和驱动。
linuxrc不是必须的。linuxrc是特殊的,由内核执行,其它启动脚本一般由init扫描inittab执行,xx::sysinit:xxxxxxxx的xxxxxxxx就是linuxrc之外第一个执行的脚本。
在一般的linux里,第一次根分区挂载是由内核完成的,一般是只读的(如果传入参数有ro),目的可能是为了必要时检查磁盘,第二次就是启动脚本根据fstab重新挂载。
如果你的文件系统不大1M左右,你甚至可以把文件系统做进内核里。 |
|