根文件系统相关操作
2016-11-12 11:16
148 查看
一、如何对已有的根文件系统进行修改
假设已有一个名为ramdisk.gz的文件系统压缩文件,可以通过以下步骤实现对该文件系统的修改:
1. 将文件系统的压缩文件解压成映像文件;
进入ramdisk.gz所在目录:
#cd …
解压ramdisk.gz:
#gunzip ramdisk.gz
2. 挂载解压后的映像文件来实现修改;
创建挂载目录:
#sudo mkdir /mnt/loop
将ramdisk.gz挂载:
#sudo mount –o loop ramdisk /mnt/loop
进入挂载目录:(这时可以根据需要增加、删减或是修改文件系统的内容)
#cd /mnt/loop
修改开发板启动文件(DevKit8500D):
#sudo gedit /mnt/loop/etc/init.d/rc
3. 卸装镜像文件;
进入ramdisk.gz所在目录:
#cd …
卸载目录
#sudo umount /mnt/loop
4. 将修改后的文件系统制作成压缩文件;
#gzip –v9 ramdisk
二、如何建立新的根文件系统
(方法一)
1. 建立loop设备的临时挂载点;
#mkdir /mnt/loop
2. 建立一个大小为15M的临时文件;
#dd if=/dev/zero of=/tmp/loop_tmpbs=1k count=15360
临时文件的大小可根据自己的需要对参数count进行调整即可;
3. 将设备文件与临时文件联系起来;
#losetup /dev/loop0 /tmp/loop_tmp
如果出现“ioctl:LOOP_SET_FD:设备或资源忙”,说明/dev/loop0设备还和一文件联系,可用losetup /dev/loop0查看地,并可用-d 删除;
4. 将/dev/loop0格式化为ext2文件系统;
#mke2fs –m 0 /dev/loop0
5. 把虚拟盘挂在节点/mnt/loop上;
#mount –t ext2 /dev/loop0/mnt/loop;
6. 用cp –af命令将所需要的文件拷贝到虚拟盘上;
7. 通过cd命令切换到除/mnt/loop目录以外的其他目录,然后卸载文件系统;
#cd /xx (xx表示除/mnt/loop以外的其他目录)
#umount /mnt/loop
得到的/tmp/loop_tmp就是文件系统映象
8. 压缩映象文件生成文件系统;
#gzip –v9 /tmp/loop_tmp>/tftpboot/ramdisk.gz
或#gzip –v9 /tmp/loop_tmp
(方法二)
1. 建立loop设备的临时挂载点;
#mkdir /mnt/loop
2. 建立一个大小为15M的临时文件;
#dd if=/dev/zero of=/tmp/loop_tmpbs=1k count=15360
3. 将loop_tmp格式化为ext2文件系统;
mke2fs –F –v –m 0 /tmp/loop_tmp
4. 挂载格式化后的临时文件;
#munt –o loop /tmp/loop_tmp/mnt/loop
5. 用cp –af命令将所需要的文件拷贝到临时文件中从而生成映像文件;
6. 卸载生成的映象文件;
#umount /mnt/loop
7. 压缩映象文件生成文件系统;
#gzip –v9 /tmp/loop_tmp
--------------------------分割线---------------------------------
此方法可以修改系统启动设置,设置启动项。
测试软硬件平台:
宿主机:Ubuntu 12.04LTS
目标版:Devkit8500D,Linux2.6.32
假设已有一个名为ramdisk.gz的文件系统压缩文件,可以通过以下步骤实现对该文件系统的修改:
1. 将文件系统的压缩文件解压成映像文件;
进入ramdisk.gz所在目录:
#cd …
解压ramdisk.gz:
#gunzip ramdisk.gz
2. 挂载解压后的映像文件来实现修改;
创建挂载目录:
#sudo mkdir /mnt/loop
将ramdisk.gz挂载:
#sudo mount –o loop ramdisk /mnt/loop
进入挂载目录:(这时可以根据需要增加、删减或是修改文件系统的内容)
#cd /mnt/loop
修改开发板启动文件(DevKit8500D):
#sudo gedit /mnt/loop/etc/init.d/rc
3. 卸装镜像文件;
进入ramdisk.gz所在目录:
#cd …
卸载目录
#sudo umount /mnt/loop
4. 将修改后的文件系统制作成压缩文件;
#gzip –v9 ramdisk
二、如何建立新的根文件系统
(方法一)
1. 建立loop设备的临时挂载点;
#mkdir /mnt/loop
2. 建立一个大小为15M的临时文件;
#dd if=/dev/zero of=/tmp/loop_tmpbs=1k count=15360
临时文件的大小可根据自己的需要对参数count进行调整即可;
3. 将设备文件与临时文件联系起来;
#losetup /dev/loop0 /tmp/loop_tmp
如果出现“ioctl:LOOP_SET_FD:设备或资源忙”,说明/dev/loop0设备还和一文件联系,可用losetup /dev/loop0查看地,并可用-d 删除;
4. 将/dev/loop0格式化为ext2文件系统;
#mke2fs –m 0 /dev/loop0
5. 把虚拟盘挂在节点/mnt/loop上;
#mount –t ext2 /dev/loop0/mnt/loop;
6. 用cp –af命令将所需要的文件拷贝到虚拟盘上;
7. 通过cd命令切换到除/mnt/loop目录以外的其他目录,然后卸载文件系统;
#cd /xx (xx表示除/mnt/loop以外的其他目录)
#umount /mnt/loop
得到的/tmp/loop_tmp就是文件系统映象
8. 压缩映象文件生成文件系统;
#gzip –v9 /tmp/loop_tmp>/tftpboot/ramdisk.gz
或#gzip –v9 /tmp/loop_tmp
(方法二)
1. 建立loop设备的临时挂载点;
#mkdir /mnt/loop
2. 建立一个大小为15M的临时文件;
#dd if=/dev/zero of=/tmp/loop_tmpbs=1k count=15360
3. 将loop_tmp格式化为ext2文件系统;
mke2fs –F –v –m 0 /tmp/loop_tmp
4. 挂载格式化后的临时文件;
#munt –o loop /tmp/loop_tmp/mnt/loop
5. 用cp –af命令将所需要的文件拷贝到临时文件中从而生成映像文件;
6. 卸载生成的映象文件;
#umount /mnt/loop
7. 压缩映象文件生成文件系统;
#gzip –v9 /tmp/loop_tmp
--------------------------分割线---------------------------------
此方法可以修改系统启动设置,设置启动项。
测试软硬件平台:
宿主机:Ubuntu 12.04LTS
目标版:Devkit8500D,Linux2.6.32
相关文章推荐
- 数据操作相关函数笔记
- 循环链表以及相关操作(VB实现)
- asp.net中窗口相关操作(如何使用javascript)
- Session,Cookie相关操作
- asp.net中窗口相关操作总结(javascript)
- 关于.Net操作XML相关类
- vss 命令行执行相关操作搜集整理
- VC++ 常用控件相关操作
- 文本操作相关函数
- 如何使用ANT自动进行数据库的相关操作
- 活动目录辅助类。封装一系列活动目录操作相关的方法
- 有关UNICODE、ANSI字符集和相关字符串操作的总结
- jsp中图片处理相关操作
- SQL Server 日志操作相关代码
- 二叉树的建立及相关操作
- JS等待延时操作,获取相关属性
- [导入][VB]RS和DBGrid的相关操作
- C#中数据库操作相关我给整理的一个类供大家使用完善
- cvs 相关操作
- [转]OracleDataClient操作相关