linux下根文件系统的制作

linux下根文件系统的制作

ID:22671342

大小:743.50 KB

页数:50页

时间:2018-10-21

linux下根文件系统的制作_第1页
linux下根文件系统的制作_第2页
linux下根文件系统的制作_第3页
linux下根文件系统的制作_第4页
linux下根文件系统的制作_第5页
资源描述:

《linux下根文件系统的制作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、linux实践考察——linux下根文件系统的制作一、课题名称:linux下根文件系统的制作二、课题要求:以文档形式给出具体的操作步骤三、根文件系统1.根文件系统的结构根文件系统是Linux内核启动后第一个挂载的文件系统。在根文件系统中存放着内核镜像、各种系统配置文件以及一些其他的重要文件(例如设备文件、命令程序等)。为了保证通用性,根文件系统的目录结构需要遵守FHS(文件系统层次标准)标准(FilesystemHierarchyStandard)。FHS标准定义了根文件系统中每个目录名称及其作用的规则规范。如下图所示的是一个符合FHS标准的根文

2、件系统:下表是一个根文件系统中所需的主要目录。制作根文件系统的基本方法就是创建各个目录以及目录中的文件。创建目录是非常简单的,既可以通过命令mkdir来创建,也可以在图形界面直接创建。但命令方式比图形方式的效率要高。2.创建根文件系统:具体的步骤如下所示。step1创建目录。step2创建必要的设备文件。step3安装所需的共享库。step4安装init文件、Shell和各种基本命令(可由busybox提供)。step5创建和编辑配置文件。2.1创建目录首先创建一个新的目录rootfs,作为整个根文件系统的根目录,如:这里创建了一个rootfs目

3、录。当根文件系统制作完成后,可以将这个目录作为nfs服务的共享目录,这样目标机就能够通过网络挂载这个目录。下面制作根文件系统的操作均对这个目录进行,所提到的绝对路径均以这个目录作为根目录,而不是主机自己的文件系统根目录。接着根据FHS标准依次创建各个子目录,如下所示:这些目录多数需要手动创建,其中有一些目录可在安装busybox时自动创建。一般来说,根文件系统内的主要目录和文件都会以root身份创建,因为将来挂载到目标机之后,文件的所有者和权限都保持不变,而这些文件在目录机上都是系统文件,应该是root所有的。2.2创建根文件系统中的设备文件、命

4、令文件在创建根文件系统中的设备文件、命令文件时,最简单的办法就是直接复制桌面Linux系统中的文件。(1)bin。bin目录下存放的是命令程序文件。在桌面Linux系统中包含了文件管理、系统管理和设置、磁盘管理等数百个命令文件。具体操作如下所示:上述命令的意思是指,将Linux系统中bin目录中的ls和date命令文件复制到rootfs/bin目录下。(2)dev。dev目录下存放的是各种设备文件。1)控制台设备。控制台终端用于显示各种信息,显示器是一种最常见的控制台终端。在linux系统中,控制台的设备文件是console。控制台在其他设备驱动

5、初始化前就可以使用,因此常用来显示内核的启动信息。2)虚拟控制终端。为了满足多用户多任务的需要,可以通过虚拟控制终端来使用控制台终端。例如tty1、tty2、tty3文件等。3)串口终端。串口终端是使用串行端口连接的终端设备。在Linux系统中常用的串口终端设备文件有ttyS0、ttyS1等。在Linux2.6内核中ttyS0文件称为ttySAC0。串口终端可以被指定为控制台终端来使用。例如在内核启动参数中可以设置console=ttySAC0,也就是把串口终端设备ttySAC0作为控制台设备使用。和创建bin目录下命令文件的方法相同,只需要把桌

6、面Linux系统中dev目录下的设备文件复制到rootfs/dev目录下就可以了。如下所示:这里-a参数用来保留文件的所有属性,否则cp命令将试图从设备文件中读取内容并写入新文件。在嵌入式系统中,出于某种需要可能不希望动态创建设备文件,这时,所需的设备文件就要用mknod命令预先在根文件系统内创建,或者将创建设备文件的命令写入系统的初始化脚本中。有关mknod命令的介绍:mknod:创建特殊文件语法mknod[必要参数][选择参数][主设备号][次设备号]功能建立一个目录项和一个特殊文件的对应索引节点建立的文件有三种b:块设备c:字符设备p:管道

7、文件执行权限:超级用户命令属性:系统设置参数必要参数设备文件名选择参数-m为新建立的文件设定默认权限--help显示帮助信息--version显示版本信息(3)lib。lib目录下存放的是函数库文件。在嵌入式linux系统中可以根据实际的需要选择各种库文件。对于使用动态编译方式编译的C应用程序来说,以下两个库文件是必须的。libc:该库是C应用程序必须使用的基本C函数库。ld-linux:该库是动态链接器,提供动态链接函数库的功能。直接从交叉编译器的lib目录下把以上库文件复制到文件系统的lib目录下,如下所示:一般来说,一个共享库会对应着一个包

8、含真正内容的文件,同时有若干个符号链接指向它,这样做是为了便于管理。在复制共享库的时候尽量保持这一模式,将应用程序所需的符号链接与包含真

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。