-
文件系统:简单的说就是一种目录结构,由于linux操作系统的设备在系统中是以文件的形式存在,将这些文件进行分类管理以及提供和内核交互的接口,就形成一定的目录结构也就是文件系统,文件系统是为用户反映系统的一种形式,为用户提供一个检测控制系统的接口。
-
根文件系统:根文件系统就是一种特殊的文件系统,那么根文件系统和普通的文件系统有什么区别呢?由于根文件系统是内核启动时挂载的第一个文件系统,那么根文件系统就要包括Linux启动时所必须的目录和关键性的文件,例如Linux启动时都需要有init目录下的相关文件,在Linux挂载分区时Linux一定会找/etc/fstab这个挂载文件等,根文件系统中还包括了许多的应用程序bin目录等,任何包括这些Linux系统启动所必须的文件都可以成为根文件系统。
•linux文件系统的最顶端是“/”;
•我们称“/”为Linux的根,也就是Linux操作系统的根文件系统。
•Linux的文件系统的入口就是“/”,所有的目录、文件、设备都在“/”之下。
•Linux遵守文件系统科学分类标准(FHS),一个定义许多文件和目录的名字和位置的标准。
•一个linux的根文件系统目录结构如下:
–/
•Linux文件系统的入口,也是处于最高一级的目录;
–/bin
•系统所需要的那些命令位于此目录,比如ls、cp、mkdir等命令;这个目录中的文件都是可执行的、普通用户都可以使用的命令。作为基础系统所需要的最基础的命令就是放在这里;
–/boot
•Linux的内核及引导系统程序所需要的文件目录;如内核的映像文件,启动加载器(GRUB);
–/dev
•设备文件存储目录,比如声卡、磁盘......
–/etc
•系统配置文件的所在地,一些服务器的配置文件也在这里;比如/etc/inittab是init进程的配置文件,etc/fstab是用来指定启动时需要自动安装的文件系统列表。
–/home
•普通用户家目录默认存放目录;
–/lib
•
–/mnt
•这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom等目录。
–proc
•操作系统运行时,进程信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录伪装的文件系统proc的挂载目录;
–/root
•Linux超级权限用户root的目录;
–/sbin
•大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,如ifconfig
–/tmp
•临时文件目录
–/usr
•这个是系统存放程序的目录,比如命令、帮助文件等。
–/var
•目录包含在正常操作中被改变的文件:假脱机文件、记录文件、加锁文件、临时文件和页格式化文件。
•为了实现各种linux版本系统的标准化,各种版本的linux系统都会遵循FHS标准;主要规则如下:
•配置文件放在/etc目录下;
•设备文件放在/dev目录下;
•库文件放在目录/lib目录下;
•存放系统编译后的可执行文件、命令的目录是/bin、/sbin、/usr/bin、/usr/sbin目录
•在嵌入式系统中,根目录下的很多目录都可以删除,如下:
•为多用户提供可扩展环境的所有目录都应该删除;如(/home,/mnt,/root)
•根据引导加载情况,/boot目录可以删除。
•其余的目录
•/bin,/dev,/etc,/proc,/sbin,/usr,/lib都是不可缺少的。
•Linux的根文件系统包括支持linux系统正常运行的基本内容,至少应包括以下几项内容:
•基本的文件系统结构,如bin、dev、etc、sbin,lib、usr、proc。
•基本程序运行所需的动态库。
•基本的系统配置文件。
•必要的设备文件支持。
•基本的应用程序,如sh、ls、cp等
•构建根文件系统就是往相应的目录添加相应的文件。如:
•在/dev添加设备文件,
•在/etc添加配置文件,
•在/bin添加命令或者程序,
•在/lib添加动态库等。