仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 464|回复: 8
打印 上一主题 下一主题

[其他Linux] 来一发Linux下Ramdisk根文件体系制造历程剖析

[复制链接]
再见西城 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 16:35:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
学习python,无论你是打算拿他当主要开发语言,还是当辅助开发语言,你都应该学习他,因为有些时间我们耗不起。
1、在一个已建好的文件体系长进行修正
设已创建好的文件体系紧缩文件为ramdisk.gz
1、解压
#cdramdisk.gz地点目次
#gunzipramdisk.gz
在解压后,失掉文件体系镜象文件ramdisk,掩盖了本来的紧缩文件
2、镜象文件挂载
镜象文件必需经由挂载后才干看到文件体系中的各个目次和具体内容
#mkdir/mnt/loop/*/mnt/loop是文件体系要挂载到的目次
#mountColoopramdisk/mnt/loop
在挂载目次/mnt/loop下对文件体系举行操纵
#cd/mnt/loop
#do_whatever_you_want_to_do/*依据必要增添、删减或是修正文件体系的内容
4、卸装文件体系
跳到/mnt/loop目次外,不然没法卸装,提醒busy
#cdramdisk地点目次
#umount/mnt/loop
5、紧缩文件体系
#gzipCv9ramdisk/*天生ramdisk.gz紧缩文件
2、本人创建根文件体系
1、创建loop设备的一时挂载点
#mkdir/mnt/loop
2、创建一个巨细为15M的一时文件
#ddif=/dev/zeroof=/tmp/loop_tmpbs=1kcount=15360
注重可依据本人的必要创建巨细符合的文件体系,变动count巨细便可。
此处以dd命令创建一个了一个15360KB文件体系映象,存于/tmp/loop/tmp,并以。dev/zero对它举行初始化。用这类体例对文件体系举行初始化,稍后当我们利用gzip命令紧缩全部映象时,将让文件体系中未利用的部分取得最年夜紧缩比。
3、将设备文件与一时文件接洽起来
#losetup/dev/loop0/tmp/loop_tmp
把设备文件/dev/loop0与一时镜象文件/tmp/loop_tmp接洽起来,/dev/loop0是个块设备
假如呈现“ioctl:LOOP_SET_FD:设备或资本忙”,申明/dev/loop0设备还和一文件接洽,可用losetup/dev/loop0检察地,并可用-d删除。
4、将/dev/loop0格局化为ext2文件体系
#mke2fsCm0/dev/loop0
-m0指出不用在文件体系上为“超等用户”保存任何区块。
Linux内核辨认两种能够间接考贝的到ramdisk的文件体系,它们是minix和ext2,minix是linux初期版本所用的文件体系,从minix操纵体系而来,ext2功能更好。
5、把假造盘挂在节点/mnt/loop上
#mountCtext2/dev/loop0/mnt/loop
6、用cpCaf命令将所必要文件拷贝到假造盘上
cpChelp检察cp用法。cpCarf…-r暗示拷贝目次
/bin,/dev,/etc,/lib,proc,/sbin,/usr都是不成或缺的目次,倡议保存/tmp,/var,不外能够为空。而为多用户供应可扩大情况的一切目次(比方/home、/mnt、/opt、/root)都应当省略。
用cp复制文件时,倡议把已创建好的文件体系中的内容全体拷贝过去,如许对照复杂,不必要再往编译安装busybox等。固然本人也能够那样往做。
7、卸载文件体系,失掉的/tmp/loop_tmp就是文件体系映象。
#cd/mnt/loop之外的目次(不然会提醒没法卸载,设备busy)
#umount/mnt/loop
8、紧缩文件体系映象
#gzipCv9/tmp/loop_tmp>/tftpboot/ramdisk.gz
在/tftpboot下天生了ramdisk.gz,如许一个内存文件镜象天生了。
或只是#gzipCv9/tmp/loop_tmp,则就是在/tmp下天生loop_tmp.gz文件,一样的。
在上述本人创建文件体系中,第3条用losetup命令把块设备文件/dev/loop0与一时文件/tmp/loop_tmp接洽起来了,我的了解是/tmp/loop_tmp必需是块设备文件,以是用/dev/loop0与之相干联,然后对/dev/loop0的操纵和对其假造盘的操纵,就直接感化在文件体系映象/tmp/loop_tmp上。
3、本人创建根文件体系(与二中分歧)
1、创建loop设备的一时挂载点
#mkdir/mnt/loop
2、创建文件体系映象
#ddif=/dev/zeroof=/tmp/loop_tmpbs=1kcount=15360
以上2条同二中是一样
3、mke2fsCFCvCm0/tmp/loop_tmp
此处-F选项将可迫使mkefs2在文件上运转。不然mke2fs会埋怨/tmp/loop_tmp不是个块设备(在下面说了,我的了解是/tmp/loop_tmp文件映象必需是块设备文件,后面的做法是用块设备文件/dev/loop0与之相干联)。-v选项指出mke2fs应当以verbose形式实行,-m0指出不用在文件体系上为“超等用户”保存任何区块,由于在嵌进式体系中一般是单用户体系,为“超等用户”保存区块没成心义。
4、挂载映象文件
#muntColoop/tmp/loop_tmp/mnt/loop
挂载后,在/mnt/loop下就能够对文件体系的内容举行操纵。
5、cp操纵,同二中的第6条
6、卸载映象文件
#umount/mnt/loop
7、紧缩映象文件
#gzipCv9/tmp/loop_tmp
第三中的做法与第二中的做法分歧,在第二中,把块设备文件/dev/loop0与映象文件/tmp/loop_tmp相干联,然后对/dev/loop0及假造盘举行操纵,就感化在/ltmp/loop_tmp上。
而第三中,是间接对映象文件/tmp/loop_tmp举行操纵,用mke2fsCF…将其看成块设备文件举行操纵

</p>
尽我能力帮助他人,在帮助他人的同时你会深刻巩固知识。
爱飞 该用户已被删除
沙发
发表于 2015-1-18 16:48:01 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
若天明 该用户已被删除
板凳
发表于 2015-1-26 10:00:02 | 只看该作者
Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。
飘灵儿 该用户已被删除
地板
发表于 2015-2-4 14:29:01 | 只看该作者
查阅经典工具书和Howto,特别是Howto是全球数以万计的Linux、Unix的经验总结非常有参考价值通常40%的问题同样可以解决。
若相依 该用户已被删除
5#
发表于 2015-2-10 02:07:46 | 只看该作者
学习Linux系统在服务中的配置方法及使用方法。Linux在服务器中应用相当广,应对常用的apache,samba,ftp等服务器基本配置清楚了解。[重点,应巩固学习]
小女巫 该用户已被删除
6#
发表于 2015-2-28 16:36:19 | 只看该作者
查阅经典工具书和Howto,特别是Howto是全球数以万计的Linux、Unix的经验总结非常有参考价值通常40%的问题同样可以解决。
愤怒的大鸟 该用户已被删除
7#
发表于 2015-3-10 03:50:51 | 只看该作者
熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。
老尸 该用户已被删除
8#
发表于 2015-3-17 04:19:59 | 只看该作者
未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。
柔情似水 该用户已被删除
9#
发表于 2015-3-23 20:10:57 | 只看该作者
请问谁有Linux的学习心得的吗?简单的说说?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 18:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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