首页 理论教育ARM嵌入式系统文件目录结构

ARM嵌入式系统文件目录结构

【摘要】:Linux系统继承了UNIX系统的特点,文件系统的目录有约定的结构,并且每个目录也有约定的功能定义。图7.1Linux文件系统目录结构在Linux系统命令行下使用“ls/-p”可以得到根目录下目录的列表,图7.0是一个示意图。fsck程序会检测并尝试恢复不正确的文件,被恢复的文件会放在这个目录下。此目录并不是强制要求,目的是为了系统目录工整。创建硬链接后,已经存在的文件的I节点号会被多个目录文件项使用。

Linux系统继承了UNIX系统的特点,文件系统的目录有约定的结构,并且每个目录也有约定的功能定义。在Linux系统中,除了根目录(/)以外,所有的磁盘分区和设备都是组织在文件系统里的,根目录(/)是所有文件和目录的开始,如图7.1所示。

图7.1 Linux文件系统目录结构

在Linux系统命令行下使用“ls/-p”可以得到根目录下目录的列表,图7.0是一个示意图。各目录含义如下所述。

/bin:此目录包含普通用户和管理员都可以用到的命令。如bash、csh等shell程序,以及cp、rm、cat、ls等常用命令。bin目录对用户来说是不可缺少的。

/dev:此目录下的文件都是设备文件。确切地说,访问/dev目录下的文件就可以直接访问对应的硬件设备。如/dev/hda1代表了IDE硬盘的第一个分区,使用fdisk程序可以对分区进行操作。其他的如/dev/ttyS0是串口1,输入命令“cat/boot/grub/menu.lst>/dev/ttyS0”可以把menu.lst文件从串口输出。

/home:Linux是一个多用户的系统。每个用户有自己的目录。/home目录下存放了普通用户的工作目录,每个用户名对应/home目录下的一个子目录。

/lost+found:如果系统由于掉电或者其他意外情况突然关机,启动的时候系统会调用fsck进行长时间的文件检查。fsck程序会检测并尝试恢复不正确的文件,被恢复的文件会放在这个目录下。

/proc:这是一个特殊的目录,系统任何一个分区上都不存在这个目录。/proc目录是内核在内存中映射的实时文件系统,存放内核向用户程序提供的信息文件。

/sbin:此目录包含使系统运行的关键可执行文件,以及一些管理程序。通常只有超级用户权限才可以访问该目录下的程序。

/usr:这是系统中很重要的一个目录,包含了所有用户的二进制文件和库文件等。

/boot:此目录包含系统启动的映像文件,如vmlinuz、system.map等文件。LILO和Grub引导管理器的程序也放在该目录下。

/etc:此目录存放系统配置文件。几乎所有系统配置文件以及应用程序的配置文件都存放在/etc目录下。如常见的/etc/vsftpd目录存放了vsftpd应用程序的配置文件。

/lib:此目录存放系统所有应用程序的共享库文件,以及内核的模块文件。

/mnt:此目录用千加载磁盘分区和硬件设备挂载点。用户可以在/mnt目录下建立硬件设备对应的目录,然后把硬件设备挂载到相应的目录上。此目录并不是强制要求,目的是为了系统目录工整。(www.chuimin.cn)

/root:此目录是超级用户root的用户目录。

/tmp:此目录存放系统和应用程序生成的临时文件。

/var:此目录存放假脱机(spooling)数据以及系统日志等。常见的MySQL数据库程序的日志也存放在该目录下。

使用Linux系统的读者会发现,Linux文件系统目录虽然结构工整,但是仍然存在目录层次过深的问题,从shell访问某个文件,如果存放在好几层目录下,访问很不方便。Linux系统提供了文件链接的功能解决了这个问题。

Linux系统有一种特殊的文件,叫做链接文件,链接文件内保存了被链接文件的存放路径,链接文件可以存放在任意路径下。通过链接文件方便了用户访问某个文件,同时也给脚本编写带来便利。在脚本中可以指定访问一个确切的文件名,这个文件是一个链接文件,链接到具体的文件,只需要根据不同情况修改链接文件而不需要修改脚本。链接文件分为符号链接和硬链接2种。

1.符号链接

符号链接也称为软链接,是将一个路径名链接到一个文件。实际上链接是个文本文件,文件内容是它所链接的目标文件的绝对路径名。所有读写链接文件的操作按照链接文件指定的路径操作实际的文件。

符号链接是一个新的文件,它与实际文件有不同的I节点号。符号链接可以连接到目录,也可以在不同文件系统之间做链接。

使用ls命令建立符号链接时,建议用绝对路径名,这样可以在任何工作目录下进行符号链接。使用相对路径时,如果当前路径与软链接文件路径不同就不能进行链接。当删除一个文件的时候,不会删除链接到该文件的符号链接。如果删除文件后,创建的新文件名与被删除文件同名,符号链接继续有效,指向新的文件。

使用ls命令列目录的时候,符号链接显示为一种特殊文件,在文件属性第一个字符显示为“I”,表示符号链接。符号链接的大小是被链接文件的字节数。

2.硬链接

与符号链接不同,硬链接会占用目录文件中的一个目录项,一个文件可以登记在多个目录中。创建硬链接后,已经存在的文件的I节点号会被多个目录文件项使用。文件的硬链接数量在使用ls命令查看文件列表的时候显示。没有建立硬链接的文件,链接数显示为1。

硬链接有一定的限制,由千硬链接更改文件系统的I节点信息,因此硬链接仅能链接到同一个文件系统内的文件。