在我们初学嵌入式Linux时,首先学习的就是Linux的最小根文件系统;下面我将为初学者们详细的阐述一下Linux的最小根文件系统。

  根目录在Linux中即为“/”,要进入根目录,命令“cd  /”即可进入根目录,并利用“ls  -l”查看当前目录的详细信息,如下图所示是我当前使用的Ubuntu16.04的根目录一级列表(在此请各位忽略不重要的一些文件和目录,在之后再深入学习)

  将最小根文件系统整理之后的目录结构如下图所示。

Linux文件系统所起的名字也很有意思,一目了然就知道该目录的作用(以下的目录英文全称是本人理解,并非官方信息)。

  1.  /bin

   包含基本命令,如ls、cp、mkdir、cat等,这个目录中的文件都是可执行的。——binary

    2.  /sbin

    包含系统命令,如modprobe、hwclock、ifconfig等,大多是涉及系统管理的命令,这个目录中的文件都是可执行的。——system binary

    3.  /dev

    设备文件存储目录,应用程序通过对这些文件的读、写或是控制即可以对实际的设备进行访问或控制其动作。——devices

    4.  /etc

    系统配置文件目录,一些服务器的配置文件也在这里。如用户的账号和密码、系统环境变量等,busybox的启动脚本也存放在这里。——etcetera

    5.  /lib

    系统库文件目录,如我使用的EXYNOS4412烧写的文件系统中lib包含了librt-2.11.so、libgcc_s.so、libpthread-2.11.so等。——library

    6.  /mnt

    该目录一般是用于存放挂载存储设备的挂载目录,如有chrom等目录,可参考/etc/fstab的定义。有需要时,也可以让系统启动时自动挂载文件系统的挂载点放在该目录的操作都是允许的。——mount

    7.  /opt

    opt是“可选”的意思,有些软件包会被安装在这里,例如我所移植的嵌入式Qt就存放在该目录。——option

    8.  /proc

    操作系统运行时,进程及内核信息(如CPU、硬盘分区、内存信息等)存放在这里。/proc目录为伪文件系统proc的挂载目录,proc并不是真正的文件系统,它存在于内存中。——process

    9.  /tmp

    在用户运行程序时,可能会产生临时文件,/tmp就用来存放这些临时文件。——temporary

    10.  /usr

    该目录是系统用于存放程序的目录,例如用户命令、用户库文件等。如我使用的riscv架构上的Linux文件系统中usr包含了bin、lib、sbin、share四个子目录。其中/usr/bin目录下包含了ipcs、env等命令,/usr/lib目录下包含了libncurses.so.5.9、libpci.so.3.5.1等,/usr/sbin目录下包含了dropbear、flashcp、i2cdetect等,/usr/share包含了一些其它文件。——user

    11.  /var

    var表示的是变化的意思,该目录中的内容经常会变动,如/var/log下存放是的系统日志。——variety

    12.  /sys

    Linux2.6内核所支持的sysfs文件系统被映射在此目录。sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径,其主要作用在于为管理linux设备提供一种统一模型的接口。Linux设备驱动模型中的总线、驱动和设备都可以在sysfs文件系统中找到对应的节点。当内核检测到在系统中出现了新设备后,内核会在sysfs文件系统中为该新设备生成一项新的记录。

Linux文件系统目录结构详解的更多相关文章

  1. Android系统目录结构详解

    Android系统基于linux内核.JAVA应用,算是一个小巧精致的系统.虽是开源,但不像Linux一般庞大,娇小可亲,于是国内厂商纷纷开发出自己基于Android的操作系统.在此呼吁各大厂商眼光放 ...

  2. Linux 文件/目录操作详解

    目录 Linux 文件/目录操作详解 初识Linux 一.文件/目录显示命令 ls 二.目录创建命令 mkdir 三.目录转移命令 cd 四.当前目录显示命令 pwd 五.文件处理命令 rmdir 六 ...

  3. Linux文件传输FTP详解

    ftp命令用来设置文件系统相关功能.ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相 ...

  4. linux文件系統详解

    什么是文件系统 文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在存储设备(磁盘)上组织文件的方法.操作系统中负责管理和存储文件信息的软件结构称为文件管理系统,简称文件系统. 从系统角 ...

  5. Linux 文件系统目录结构

    进入 Linux 根目录(即 "/",Linux文件系统的入口,也是处于最高一级的目录),运行 "ls -l" 命令,可以看到 Linux 系统目录. 1./b ...

  6. linux 文件记录锁详解

    一: linux记录锁更恰当的称呼应该是范围锁,它是对文件某个范围的锁定. 关于记录锁的功能就是fcntl提供的第五个功能,具体使用如下: int fcntl(int fd, int cmd, str ...

  7. Linux 文件查找命令详解

    find命令 Linux find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将 ...

  8. Linux 文件描述符详解

    Overview 了解Linux怎样处理输入和输出是非常重要的.一旦我们了解其原理以后,我们就可以正确熟练地使用脚本把内容输出到正确的位置.同样我们也可以更好地理解输入重定向和输出重定向. Linux ...

  9. Linux 文件特殊权限详解[suid/sgid/t]

    setuid(suid): 针对命令和二进制程序的,当普通用户执行某个(passwd)命令的时候,可以拥有这个命令对应用户的权限, 即让普通用户可以以root用户的角色执行程序或命令. setgid( ...

随机推荐

  1. c语言指针详细解释

    指针是C语言中广泛使用的一种数据类型. 运用指针编程是C语言最基本的风格之中的一个.利用指针变量能够表示各种数据结构: 能非常方便地使用数组和字符串: 并能象汇编语言一样处理内存地址,从而编出精练而高 ...

  2. 傅里叶分析(matlab)

    一维信号的傅里叶变换:fft(t) 二维图像的傅里叶变换:fft2(t) fft2(x) ⇒ fft(fft(x)')' 0. 基础 f(t)=∑k=−∞∞αkeikt 1. frequency sp ...

  3. Matlab随笔之求解线性方程

    原文:Matlab随笔之求解线性方程 理论知识补充: %矩阵除分为矩阵右除和矩阵左除. %矩阵右除的运算符号为“/”,设A,B为两个矩阵,则“A/B”是指方程X*B=A的解矩阵X. %矩阵A和B的列数 ...

  4. springmvc 与 springfox-swagger2整合

    一.pom.xml引入基于maven的swagger依赖 <dependency> <groupId>io.springfox</groupId> <arti ...

  5. Base64实现测试,不要太相信apache-common的性能

    针对三种Base64实现: * 自已实现的 * JDK8的java.util.Base64 * apache-common的org.apache.commons.codec.binary.Base64 ...

  6. WPF MVVM+EF 增删改查 简单示例(一)

    实现了那些功能,先看看效果图: 项目工程目录: 接下来开始具体的步骤: 第一步:在VS中新建工程 第二步:使用NuGet 安装EntityFramework 第三步:使用NuGet 安装EntityF ...

  7. 命名管道的C#实现

    1.    命名管道简介 "命名管道"或"命名管线"(Named Pipes)是一种简单的进程间通信(I P C)机制,Microsoft Windows NT ...

  8. WPF中画蚂蚁线的实现

    这是一个比较偏的功能,看了其他的很多博客都没有介绍,最后看自己试出来了. 先上效果图 <Path Data="M 100,240 C 510,300 80,100 300,160 H4 ...

  9. PHP 的魔术方法及其应用

    PHP中将所有__(两个下划线)开头的类方法作为魔术方法,这方法之所以称为魔术方法是因为其实现的功能就如变魔术一样感觉很神奇.在特定的事件下触发,这真的很酷. **__construct()** 这个 ...

  10. UWP 双向绑定,在ListView中有个TextBox,怎么获取Text的值

    要求:评论宝贝的时候一个订单里面包含多个产品,获取对产品的评论内容哦 1. xaml界面 <ListView x:Name="lvDetail"> <ListVi ...