CDlinux.docx

上传人:b****4 文档编号:24296471 上传时间:2023-05-26 格式:DOCX 页数:12 大小:22.41KB
下载 相关 举报
CDlinux.docx_第1页
第1页 / 共12页
CDlinux.docx_第2页
第2页 / 共12页
CDlinux.docx_第3页
第3页 / 共12页
CDlinux.docx_第4页
第4页 / 共12页
CDlinux.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

CDlinux.docx

《CDlinux.docx》由会员分享,可在线阅读,更多相关《CDlinux.docx(12页珍藏版)》请在冰豆网上搜索。

CDlinux.docx

CDlinux

如何“安装”CDlinux?

CDlinux是个从光盘启动、运行的小Linux,是以一个标准的ISO文件的格式发布的。

所以最简单的“安装”方法是:

把这个ISO文件刻录到光盘上,用它启动机器就是了。

当然,你也可以把CDlinux安装到硬盘或U盘、USB移动硬盘上(请参见下文)。

如何把CDlinux集成到我自己的光盘上?

CDlinux本身很小,0.4.6只有不到14兆,这比一张刻录盘的容量差多了。

所以,如果有兴趣的话,你可以自己动手,把CDlinux与其它软件集成到一起,不必单刻一张盘。

还可以与其它系统一起做成多启动光盘。

具体操作既可以在Linux下进行,也可以在Windows下进行:

用Linux的方法(以下操作可以在CDlinux也可以在一般的Linux系统中进行)

首先要把CDlinux的内容从ISO镜像里展出来,先挂载它:

#mount-oloopCDlinux-x.x.x.iso/some/where

这样CDlinux里的具体内容就都在/some/where目录下了。

假设你已经把其它要刻到盘上的软件都放到了/mycd目录下,现在把CDlinux也拷到那个目录里:

#cp-p-r/some/where/*/mycd

接下来cd/mycd,打开mkisofs.sh文件,根据你自己的具体情况进行必要的修改,存盘退出。

最后,执行:

#./mkisofs.sh

生成新的光盘镜像,缺省情况下新镜像是/tmp/1.iso。

现在就可以它刻录出来了。

注意,通过以上步骤做出的光盘启动时会直接进入CDlinux,启动效果和原来的ISO镜像是一样的。

如果你想制作带菜单的多启动光盘,还需要用到ISOlinux(SYSlinux的一个组件)等其它工具,至于如何使用它们,请参见它们各自的文档。

用Windows的方法

这个我不太熟,不过我想也不会太麻烦。

只要注意以下几点就行了:

可以用WinRAR来提取光盘镜像里CDlinux的内容;

CDlinux是通过boot/CDlinux/CDlinux.img这个2.88M软盘镜像来启动的;

请保持CDlinux的目录结构,不要改动;

不要改变文件/目录名的大小写。

如何把CDlinux安装到硬盘上?

Linux本身功能非常强大又非常灵活,CDlinux也继承了这一点,所以稍加定制就可以把它安装到各种各样的设备上。

并且仅仅把CDlinux安装到硬盘上就有很多种方案可选,这里我们只介绍一种方案:

把CDlinux安装到一个WindowsFAT分区里,用loadlin来启动它。

在以下的说明中,我们假设你的Windows的“C:

盘”是FAT16或者FAT32格式的,并且它对应Linux下的/dev/hda1。

我们将把CDlinux安装到“C:

盘”上。

用Linux的方法(以下操作可以在CDlinux也可以在一般的Linux系统中进行)

首先,挂上CDlinux的ISO镜像和C:

盘:

#mount-oloopCDlinux-x.x.x.iso/mnt/cdrom

#mount/dev/hda1/mnt/win

(如果你不想装到C:

盘上,或者你的C:

盘不是/dev/hda1,请对上述命令做相应的修改)

然后把extra/目录下的内容拷贝到C:

上:

#mkdir/mnt/win/CDlinux

#cp-r/mnt/cdrom/boot/CDlinux/extra/mnt/win/CDlinux

接下来,把内核和initrd也拷到C:

盘:

#mount-oloop/mnt/cdrom/boot/CDlinux/CDlinux.img/mnt/floppy

#cp/mnt/floppy/bzImage/mnt/floppy/CDlinux.gz/mnt/win/CDlinux

最后,下载loadlin(~10k)并把它展到C:

盘上:

#tar-C/mnt/win/CDlinux-zxfloadlin.tgz

(这步把“loadlin.exe”和一个“autoboot.bat”批处理文件拷贝到/mnt/win/CDlinux目录里。

请检查“autoboot.bat”文件,并根据你自己的具体情况做相应的修改。

现在,可以重启到纯DOS环境,用以下命令来启动CDlinux了:

C:

CDCDlinux

AutoBoot

注意,以上步骤只是一个简单的例子,这里的假设可能和你的情况并不一致。

所以,在操作时别忘了根据自己的具体情况做必要的修改。

另外请参考“简介:

CDlinux的命令行参数”和“简介:

CDlinux的结构”。

如何把CDlinux安装到U盘上?

把CDlinux安装到U盘也有多种方案可选。

我们还是只说一种:

安装到U盘上的一个FAT分区里,并用SYSlinux来启动。

在以下的说明中,我们假设你的USB盘(U盘或USB移动硬盘)被设定为硬盘模式。

上面的第一个分区是FAT12、FAT16、或者FAT32格式的,并且并且它对应/dev/sda1。

用Linux的方法(以下操作可以在CDlinux也可以在一般的Linux系统中进行)

首先,在USB盘上安装syslinux:

#syslinux/dev/sda1

挂载CDlinux的ISO镜像和USB盘:

#mount-oloopCDlinux-x.x.x.iso/mnt/cdrom

#mount/dev/sda1/mnt/win

(如果你的USB盘不是/dev/sda1,请做相应的修改)

然后,把extra/目录下的内容拷贝到USB盘上:

#mkdir/mnt/win/CDlinux

#cp-r/mnt/cdrom/boot/CDlinux/extra/mnt/win/CDlinux

接下来,把内核和initrd也拷过去:

#mount-oloop/mnt/cdrom/boot/CDlinux/CDlinux.img/mnt/floppy

#cp/mnt/floppy/bzImage/mnt/floppy/CDlinux.gz/mnt/win

最后,下载syslinux的配置文件(~2k)并把它展到USBdisk盘上:

#tar-C/mnt/win-zxfsyslinux-cfg.tgz

(这一步将把“syslinux.cfg”和一些显示信息等文件拷贝到/mnt/win目录下。

不要忘了先检查一下“syslinux.cfg”,并根据你自己的具体情况做相应的修改。

现在可以把你的BIOS设置成从USB-HDD或者USB-zip启动。

(具体设为那种和你的BIOS及USB盘有关,试一下就知道了。

注意,以上步骤只是一个简单的例子,这里的假设可能和你的情况并不一致。

所以,在操作时别忘了根据自己的具体情况做必要的修改。

另外请参考“简介:

CDlinux的命令行参数”和“简介:

CDlinux的结构”。

简介:

CDlinux的命令行参数

为了让CDlinux更灵活,不但能从光盘启动,还能从其它各种设备启动。

并且不但能把模块挂载到内存中(ramdisk),为了节约内存,还可以自动用“loop”方式挂载模块,我们定义了下述三个内核命令行参数:

CDL_DEV=:

告诉CDlinux在哪个设备上可以找到附加的“包”和“模块”

缺省值:

/dev/cdrom

例子:

CDL_DEV=/dev/hda1

CDL_DIR=:

extra/目录在CDL_DEV的文件系统的那个目录下?

缺省值:

boot/CDlinux,CDlinux,zxh/CDlinux

例子:

CDL_DEV=APPs/CDlinux

CDL_LOOP:

是否强制以“loop”方式加载“模块”?

缺省值:

否,尽量把“模块”挂载到内存里。

例子:

CDL_LOOP

以上这三个参数都是可选的,正常从光盘启动时可以一个也不加,使用缺省值即可。

如果模块太多或者太大,CDlinux会自动以“loop”方式加载它们。

不过这样一来,在CDlinux运行时就不能把光盘拿出来了。

定制

简介:

CDlinux的结构

CDlinux是高度可定制的。

它由以下两部分构成:

1.“基本”部分:

一张2.88M软盘镜像,CDlinux.img

2.“附加”部分:

其它附加的“包”和“模块”

“基本”部分就是一张VFAT格式的2.88M软盘镜像。

上面包含了内核和一些最基本的软件,包括:

bash(1.14.7)、bftpd(一个小ftp服务器)、busybox、bzip2、e2fsprogs、file、find、gawk、grep、gzip、midnightcommander(4.1.35)、portmap、sed、tar和vim(5.8)等。

如果你只是需要一个最基本的Linux环境,你可以把CDlinux的其它内容统统删掉,只保留这一个文件,一样跑得不错。

“附加”部分包括其它一些有用的工具软件,这些软件被打成了“包”(package)或者“模块”(module),放在extra/目录下。

启动时,CDlinux会自动到extra/目录下查找并安装它们。

虽然CDlinux只需CDlinux.img这一个文件就能跑起来,不过功能上就大打折扣了。

所以最好还是保留这些附加的包和模块。

当然,你也可以向extra/目录里添加你需要的软件,把那些你用不到的删掉,自己定制一个CDlinux版本。

如何向CDlinux里添加其它软件?

CDlinux很小,所以有很多有用的软件并没有被集成进来。

不过你可以自己定制它,加上你需要的软件。

可以把软件做成一个“包”或者一个“模块”加进来。

具体用哪种格式,取决于软件的大小、是否需要初始化。

小的、不需初始化的软件可以做成“包”;反之,最好做成“模块”。

比如,你可以把F-PROT做成一个“模块”添加到extra/目录下,这样你就可以用CDlinux来杀毒了。

(F-PROT是个非常简洁、功能非常强大的杀毒软件,之所以没有集成到CDlinux的发行版中,是因为我不知道它的license是否允许。

为CDlinux添加软件的注意事项

CDlinux是用gcc-2.95.3编译的,链接的是glibc-2.2.5。

你添加的软件最好也是编译、链接自同样的环境;

如果你加的软件需要其它的,CDlinux没有提供的库,请把这些库也一起添加进来。

如何为CDlinux制作一个“包”(package)?

做一个包非常简单,所谓“包”就是一个标准的.tar.gz文件。

关于这个.tar.gz文件里的目录结构,你可以参考extra/目录下已有的那些“xxx-cdl.tgz”文件。

制作时只需注意一下几点:

“包”的文件名必须是“xxx-cdl.tgz”,否则将被忽略,不会被安装;

如果愿意,你还可以为你的包加上一个简短的说明,并把它存为zxh/SPEC。

启动时CDlinux会自动把它集成到/var/log/packages里。

关于SPEC的格式,请参照已有的“xxx-cdl.tgz”文件;

zxh/目录里除了SPEC以外的所有其它内容都将被忽略,不被安装;

CDlinux是在一个小RAM磁盘里运行的,所以请尽量把包做得小一点。

像man和docs等文档都可以放到zxh/目录下,这样它们就不会被安装,你以后要查阅起来也比较方便。

如何为CDlinux制作一个“模块”(module)?

如果要添加的软件比较大,可以把它做成一个“模块”。

“模块”就是一个标准的cramfs镜像,制作起来比做“包”稍麻烦一些,需要用mkfs.cramfs命令。

“模块”具体结构请参考extra/目录下已有的“xxx-cdl.md”文件。

CDlinux启动时自动到extra/下查找这些“xxx-cdl.md”,并自动挂载它们。

制作模块时的的注意事项

“模块”的文件名必须是“xxx-cdl.md”,否则将被忽略,不会被安装;

必须为模块指定一个挂载点。

方法是把挂载点写到一个叫“.mount_point”的文件里,并把该文件放到cramfs的根目录下。

“.mount_point”文件的具体格式可以参考extra/下已有的“xxx-cdl.md”文件;

如果该软件需要执行一些初始化操作,可以把初始化程序或脚本命名为“.init”放到cramfs的根目录下,并将起属性设置为可执行。

启动时CDlinux会自动找到并执行.init;

缺省情况下,CDlinux会尽量把“模块”都加载到内存中,内存不足时才以“loop”方式加载“模块”。

如果你想省出更多内存来运行程序,可以在内核命令行里加上“CDL_LOOP”参数,来强迫CDlinux以“loop”方式加载所有模块;

cramfs是一种只读文件系统,并且不记录文件的时间信息。

如何按照我自己的口味定制CDlinux?

如果CDlinux的缺省状态不合你的胃口,你可以自己动手定制它。

定制的办法有难有易:

“难”的办法是挂上initrd直接修改。

CDlinux的initrd是一个标准的ext2镜像,可以直接挂载、修改,没有问题。

不过我还是推荐你尽量使用下面的“简单”办法。

“简单”的办法是,把修改的内容放到extra/system-extra-cdl.tgz文件里。

比如,若是修改了/etc/profile,把修改过的文件存为system-extra-cdl.tgz下的/etc/profile。

这样CDlinux启动时会自动用新的/etc/profile把旧的覆盖掉。

另外,如果需要的话,你还可以在system-extra-cdl.tgz文件里加上个/etc/rc.d/rc.local脚本,以执行你需要的一些初始化操作。

下面是一些具体的例子:

修改bash的命令行提示符

修改CDlinux原来的/etc/profile文件中带“PS1=”的哪些行,把修改后的结果保存到system-extra-cdl.tgz里,仍叫/etc/profile。

把bash的命令行编辑模式由emacs改为vi

编辑/etc/inputrc,加上“set+ovi”,把新文件存到system-extra-cdl.tgz里,仍叫/etc/inputrc。

让CDlinux自动挂载C:

编辑/etc/fstab,把新文件存到system-extra-cdl.tgz里。

让CDlinux自动加载AMDPCNET32网卡的驱动

新建一个脚本,在里面加上“modprobepcnet32”,然后把它存为system-extra-cdl.tgz里的/etc/rc.d/rc.local。

另外,CDlinux里自带的那些软件包如果不合你的胃口,咱也可以改:

把zhcon的缺省输入法由拼音改为五笔

#mkdirtemp;cdtemp

#tarzxpf/some/where/CDlinux/extra/zhcon-x.x-cdl.tgz

#mv-fzxh/wb/*usr/lib/zhcon

#tarzcpf/some/where/CDlinux/extra/zhcon-x.x-cdl.tgz*

#cd..;rm-rftemp

(CDlinux里带的这个zhcon只支持简体中文(GB2312),如果你不需要简体中文支持,可以把它删掉,自己另编译一个支持繁体中文、日文或韩文的加上)

让mkisofs支持更多的joliet代码页(codepage)

CDlinux里缺省带的mkisofs只支持cp437、cp936(简体中文)、iso8859-1和utf8的joliet代码页,如果想换成支持更多代码页(包括CJK)的版本,可以执行如下操作:

#mkdirtemp;cdtemp

#tarzxpf/some/where/CDlinux/extra/cdrtools-x-x.x-cdl.tgz

#mv-fzxh/removed/usr/bin/mkisofsusr/bin

#tarzcpf/some/where/CDlinux/extra/cdrtools-x-x.x-cdl.tgz*

#cd..;rm-rftemp

配置

如何配置网络?

CDlinux可以自动检测很多常见的以太网卡,不过为了让它小一点,更多网卡的驱动没有编到内核里,而是做成了内核模块。

如果CDlinux没能自动识别你的网卡,你就要自己动手去加载相应的内核模块啦:

如果不知道驱动是那个模块,可以先“lspci”,在输出结果里找带“Ethernetcontroller:

”字样的行,然后到/lib/modules/x.x.xx/kernel/drivers/net,参照那些模块的名字,看能不能“蒙”出来到底是哪个模块。

要加载比如说名为“xxx.o”模块,可以执行“modprobexxx”。

一但你的网卡被正确识别了,你可以用如下命令来配置IP、DNS等:

#net-config

(如果你用的是USB-link线,可以先“modprobeusbnet”,然后当net-config问要配置哪个网络接口时输入usb0。

或者,如果你所在的网络里有DHCP服务器,可以执行:

#dhcpcdstart

设置代理服务器可以用:

#proxy-config

修改网卡的MAC地址:

#mac-fake

如何配置RAID设备?

SCSI和RAID设备的驱动都做成了内核模块,CDlinux不能自动检测它们,你需要自己加载它们的驱动(内核模块)。

下面这个例子假设你有一个基于AHA1542芯片的SCSI卡,上面连了两个SCSI盘,分别是/dev/sda、/dev/sdb。

并且通过软件RAID把/dev/sda1和/dev/sdb1做成了一个RAID0设备。

可以通过如下命令来驱动它:

#modprobeaha1542

#modproberaid0

#mdadm-A/dev/md0/dev/sda1/dev/sdb1

好了,现在你可以通过/dev/md0来访问这个RAID0设备了。

如何配置鼠标?

用mouse-config命令。

(支持绝大多数COM/PS2/USB鼠标)

使用

如何与其它计算机交换数据?

CDlinux里已经带了ftp、ssh1和nfs3客户端/服务器。

缺省状态下ftp和ssh服务器已经启动。

所以最简单的交换数据的方法就是用ftp和scp。

缺省状态下nfs服务器没有启动,你需要先编辑、修改一下/etc/exports,指定export哪些目录,和export的方式,然后执行:

#nfsdstart

CDlinux里还带了nfs和samba的客户端。

要挂载nfs资源:

#mount-tnfsxx.xx.xx.xx:

/exported/resource/some/where

挂载samba资源:

#mount-tsmbfs-ousername=xx//machine_name/resource_name/some/where

如何改变分区大小、修改分区表?

请使用“parted”或者“resize2fs”等。

如何修复被损坏了的分区表?

用“gpart”。

(这个版本已打过reiserfs-3.6补丁,可以放心使用)

如何从ext2文件系统中恢复被误删除的文件?

用“e2undel”。

LILO/GRUB被Windows覆盖了,如何修复?

安装Windows9x会覆盖硬盘的主引导记录,导致原来安装的Linux无法启动,这时你可以启动CDlinux来进行修复。

首先,挂上Linux的根分区,比如说/dev/hda5:

#mount-text2/dev/hda5/mnt/local

然后,假设你是用LILO来引导的:

#lilo-r/mnt/local

如果不成功,可以再试试:

#chroot/mnt/local/sbin/lilo

如果还是不行,再仔细找找原因,比如是不是上面LILO的路径不对等。

耐心点,只要Linux的分区没有被破坏,一定可以恢复的。

如果你是用GRUB来引导系统的,方法也和上面的类似。

LILO/GRUB的具体使用方法,请参考它们各自的文档。

Windows9x覆盖了NT/2k/XP的引导记录,“双启动菜单”不见了,如何修复?

假设你的“C:

盘”是/dev/hda1,格式是FAT32,新装的Windows98破坏了XP的引导记录,现在只能进98了。

这种情况可以试试用CDlinux来修复:

#ms-sys-2/dev/hda1

关于ms-sys的具体用法,请参见它的文档。

NT/2k/XP的管理员密码丢了,怎么办?

如果忘了NT/2k/XP的管理员密码,想再找回来是很难的。

不过你可以用CDlinux再强行重设一个密码,或者干脆把密码清空。

执行:

#nukent

然后按提示操作。

--------------------------------------------------------------------------------

CDlinux里带了很多实用工具,关于它们的用法的简短说明,可以参考/var/log/packages。

另外,许多软件的man手册和文档被放在了对应的“xxx-cdl.tgz”文件的zxh/目录下,没有安装,你可以挂上CDlinux光盘,查阅这些文件。

关于某个软件的具体用法,已经超出了这个mini-HOWTO的范围,请参考它们各自的文档。

RTFM可是一种很好的学习方法:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1