2022年2022年根文件系统裁剪 2.pdf
《2022年2022年根文件系统裁剪 2.pdf》由会员分享,可在线阅读,更多相关《2022年2022年根文件系统裁剪 2.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、编译内核得到 bzImage 二、定制文件系统1、创建 ramdisk虚拟空间,用来放置文件系统命令 # mke2fs m 0 I 2000 /dev/ram0 注释: mke2fs将会自动判断设备容量的大小并相应的配置自身,-m 0 参数防止它给root保留空间,这样会腾出更多有用的空间。2、挂载刚才创建的虚拟盘,我这里挂载在/mnt/floppy目录下命令 # mount t ext2 /dev/ram0 /mnt/floppy 3、创建文件系统必须目录命令 # cd /mnt/floppy # mkdir dev proc etc bin sbin lib mnt usr 4、确定
2、/dev目录下我们需要的设备文件方案一、把现有 /dev目录中所有设备文件拷贝过来,然后删除不必要的设备文件(不推荐使用)命令: # cp dpR /dev /mnt/floppy/dev 注释:该命令会拷贝整个设备目录但不拷贝文件内容,同时dpR 开关保证连接文件仍然不变,不会拷贝连接指向原来文件, 而且属性不变。 如果没有 SCSI 设备, 删除所有以 sd 开头的设备文件, 如果不使用串口设备,删除所有以cua 开头的文件,然后保留一些必要的设备文件。方案二、只拷贝必要的设备文件:console 控制台设备tty* 由控制台管理的虚拟终端ram 虚拟内存盘设备(以后我们的系统将运行在虚拟
3、盘中)null 空设备,非常有用的字符设备文件,送入这个设备的所有东西将被忽略。如果将任何程序的输出结果重定向到 /dev/null,则看不到任何输出信息,因此脚本中常用它来消除本该显示在屏幕上的其他信息zero 零设备,只会得到空的内容,有时为了提高压缩率,需要对某空间全零填充时需要使用该设备inintrd 特殊的字符设备,被用来从用户空间向系统内核发送切换运行级别的信息,属于一个虚拟字符设备。fd 0 软盘设备hd 0 硬盘设备(该项不是必须,如果您想挂载硬盘,请选择该项)命令: # cp dpR /dev/console /mnt/floppy/dev # cp dpR /dev/tty
4、* /mnt/floppy/dev # cp dpR /dev/ram /mnt/floppy/dev 注释:如果要使用多个虚拟盘,可以相应的将ram1 ,ram2 ,等拷贝过来# cp dpR /dev/null /mnt/floppy/dev # cp dpR /dev/zero /mnt/floppy/dev # cp dpR /dev/initrd /mnt/floppy/dev 6、 确定/etc 目录中所需要的系统配置文件a) rc.d/* 系统启动所需要的脚本b) fstab 列出要登陆的文件系统,c) inittab 包含启动过程参数先直接拷贝系统 /etc目录下的以上配置文件
5、命令 # cp R /dev/rc.d/* /mnt/floppy/dev/ # cp /dev/fstab /mnt/floppy/dev/ # cp /dev/inittab /mnt/floppy/dev/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 然后修改启动配置脚本,用vi 或者 kwrite等文本编辑工具打开/dev/rc.d/rc文件# cd /mnt/floppy/dev/rc.d/ # vi rc 修改
6、rc 文件为以下内容:#!/bin/sh bin/mount -av /bin/host name fallso 修改 fstab文件内容为以下内容:/dev/ram0 / ext2 defaults /dev/fd0 / ext2 defaults /proc /prco proc defaults 修改 inittab文件内容:id:2:initdefault: si:sysinit:/etc/rc 1:2345:respawn:/sbin/getty 9600 tty1 2:23:respawn:/sbin/getty 9600 tty2 7、 确定/bin 是和 /sbin目录包含的命
7、令文件a) ls 文件目录陈列,相当于dos 的 dir b) mv c) cat d) init e) mingetty f) login 登陆命令g) mount 挂载设备命令h) umount 卸载设备命令命令: # cp /bin/ls /mnt/floppy/bin # cp /bin/cat /mnt/floppy/bin # cp /bin/mv /mnt/floppy/bin # cp /bin/login /mnt/floppy/bin # cp /bin/mount /mnt/floppy/bin # cp /bin/umount /mnt/floppy/bin # cp
8、/sbin/init /mnt/floppy/bin # cp /sbin/mingetty /mnt/floppy/bin 8、 确定/lib目录下所需要的共享函数库,如果缺少必要的函数库,系统会自动停止启动或出现一些错误信息提示。a) 列出所有程序需要使用的libc 库命令: # cd /bin # ls l /lib/libc* rwxr xr x 1 root root 4016683 Apr 16 18:48 libc 2.1.1.solrwxrwxrwx 1 root root 13 Apr 10 12:25 libc.so.6 libc 2.1.1.so拷贝箭头右边所指文件如 c
9、p dpR /lib/libc-2.1.so* /mnt/floppy/lib b) 察看每一个程序所使用的函数库命令: # ldd /sbin/mke2fs 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - libext2fs.so.2 = /lib/libext2fs.so.2 (0 x40014000) libcom_err.so.2 = /lib/libcom_err.so.2 (0 x40026000) libuuid.
10、so.1 = /lib/libuuid.so.1 (0 x40028000) libc.so.6 = /lib/libc.so.6 (0 x4002c000) /lib/ldlinux.so.2 = /lib/ldlinux.so.2 (0 x40000000) 拷贝箭头右边的函数库如 cp dpR/lib/ldlinux.so.2 /mnt/floppy/lib 9、 关于其他目录,以下目录在软盘版linux中完全可以为空a) /proc是一个虚拟的文件系统,用来传输资料给核心程序的目录,可以观察这些特殊的文件在内存中运行的信息;b) /usr 目录下包含系统运行的所有程序,用户经常用到的一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年根文件系统裁剪 2022 年根 文件系统 裁剪
限制150内