文件系统

        文件系统表现为单个统一的层次结构:从目录/开始并通过若干数量的子目录继续向下扩展,/也叫做根目录。这种单一的层次系统和 Windows 的不一样,后者的分区有专门的名字空间。

        文件系统包括4种主要的组成部分:

    • 名字空间——给事物取名,并按一种层次结构组织它们;

    • API——用来遍历和操作对象的一套系统调用;

    • 安全模型——用来保护、隐藏和共享事物的方案;

    • 实现——把逻辑模型同实际硬件联系到一起的软件。

   路径名称

                相对路径:从当前的位置起始的路径;

                绝对路径:从根目录起始的路径。

   要注意的是:

  1. 文件名严格区分字符大小写:file1, File1, FILE1是不同的文件;

  2. 文件名可使用除/以外的任意字符,不建议使用特殊字符;# /是根目录,路径分隔符

  3. 文件名长度最长不能超过255个字符;

  4. 所有以.开头的文件,均为隐藏文件。

        根文件系统

        [root@localhost /]# ls

     bin  boot  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var

       

        /boot :引导文件的存放目录,内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录;

        /bin :供所有用户使用的基本命令:不能关联至独立分区,OS启动即会用到的程序;

       /sbin :管理类的基本命令:不能关联至独立分区,OS启动即会用到的程序;

      /lib :基本共享库文件,以及内核模块文件(/lib/modules);

      /lib64 :专用于x86_64系统上的辅助共享库文件存放位置;

      /etc :配置文件目录(纯文本文件);

      /home/USERNAME :普通用户的主目录;

      /root :管理员的家目录;

      /media :便携式移动设备挂载点;

      /mnt :临时文件系统挂载点;

      /dev :设备文件及特殊文件存储位置;

          b :block device 随机访问

          c :character device 线性访问

      /opt :第三方应用程序的安装位置;

      /srv :系统上运行的服务用到的数据;

      /tmp :临时文件存储位置;

      /usr :universal shared, read-only data;

          bin :保证系统拥有完整功能而提供的应用程序;

          sbin

          lib

          lib64

          include :C程序的头文件(header files);

          share :结构化独立的数据,例如 doc, man等;

          local :本地第三方应用程序的安装位置;

            bin, sbin, lib, lib64, share, etc

      /var :variable data files

          cache :应用程序缓存数据目录;

          lib :应用程序状态信息数据;

          local :专用于为/usr/local下的应用程序存储可变数据;

          lock :锁文件;

          log :日志目录及文件;

          opt :专用于为/opt下的应用程序存储可变数据;

          run :运行中的进程相关的数据,通常用于存储进程的pid文件;

          spool :应用程序数据池;

          tmp :保存系统两次重启之间产生的临时数据;

      /proc :用于输出内核与进程信息相关的虚拟文件系统

      /sys :用于输出当前系统上硬件设备相关信息的虚拟文件系统

      /selinux :security enhanced Linux, selinux相关的安全策略等信息的存储位置;

        文件类型

        大多数文件系统的实现定义了7种文件类型。

            普通文件:-

            目录:d

            字符设备文件:c

            块设备文件:b

            套接字文件:s(socket)

            管道文件:p

            符号链接文件:l

        普通文件:

        普通文件从一系列的组成:文件系统并没有就其内容规定任何结构。文本文件、数据文件、可执行程序和共享库都作为普通文件存储。普通文件既能顺序存取,也能随机存取。

        目录:

        目录里有按名字对其他文件的引用。用户可以使用 mkdir 命令来创建目录,使用 rmdir 命令来删除空目录,使用 rm -r 命令来删除非空目录。

        字符设备文件和块设备文件:

        块设备文件让程序能够同系统的硬件和外围设备进行通信,字符设备文件让与之相关的驱动程序做它们自己的输入和输出缓冲。块设备文件由处理块数据I/O的驱动程序使用,并要求内核 为他们提供缓冲。

        套接字文件:

        套接口(socket)就是在进程之间让它们进行通信的连接。

        管道文件:

        与套接口类似,管道文件能让运行在同一主机上的两个进程之间进行通信。

        符号链接文件:

        符号链接或者叫做“软”链接通过名字指向文件。当内核在查找路径名的过程中遇到符号链接时,它就重定向到作为该链接的内容而存储的路径名上。硬链接和符号链接之间的区别在于:硬链接是直接引用,而符号链接是通过名称进行引用。符号链接跟它们指向的文件是不同的。


    原创文章,作者:黑白子,如若转载,请注明出处:http://www.178linux.com/11863

    (0)
    上一篇 2016-02-28 12:21
    下一篇 2016-02-28 12:24

    相关推荐

    • linux 哲学思想

      一切皆文件:普通文件,目录、字符设备、块设备、套接字在linux中都是以文件被对待;虽然类型不通,但是对其提供得却都是统一套操作界面。 由众多的单一程序,一个程序只实现一个功能,多个程序组合完成负责任务。单一的程序可以保持高效的执行效率,对于复杂的功能linux通过许多简单程序组合等方式实现,在保证简单程序的高效性同时,复杂的程序也必然是高效性的。 文本文件…

      Linux干货 2017-08-19
    • 马哥教育网络班22期+第七周课程练习

      1、创建一个10G分区,并格式为ext4文件系统(1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl(2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 # fdisk /dev/sdb <<EOF> n> p> 1> &g…

      Linux干货 2016-11-28
    • 磁盘配额的操作步骤

      磁盘配额 操作步骤: 1、创建一个10G的分区 /dev/sdd1并将其格式化,挂载 2、如果是新硬盘便不存在同步问题。旧硬盘得使用命令partx  -a /dev/sdd1 3、临时创建挂载文件夹 /mnt/home    4、将/home/*  mv  到 /mnt/home 中,再将/dev/…

      Linux干货 2016-09-01
    • LVM练习及quota和dd命令

      练习 1、创建一个至少有两个PV组成的大小为20G的名为testvg的 VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻 辑卷testlv;挂载至/users目录 第一步!首先准备足够大的硬盘来实验 [root@Cloud /]#lsblk  #添加了/dev/sdb/c硬盘  NAME &nb…

      Linux干货 2016-09-09
    • 逻辑卷管理器LVM使用简介

      逻辑卷管理器(LVM) 原理图如下: 先准备一个分区/dev/sdb1,注意也存在ID问题,选择8e。 1.先把磁盘变成物理卷 在做这步前可以先看下系统中存在的物理卷,没有就什么都不会显示。 把我们准备好的两个磁盘变成物理卷,注意我那使用旧的格式化的分区磁盘,可能会出现上面有文件系统或者卷标类型的问题,所以尽量使用新磁盘做实验。如果出现这种情况,可以使用dd…

      2017-05-02
    • Linux运维学习历程-第三天-初识Linux

      初识Linux 本章内容    初安装Linus的网络配置    防火墙的关闭    用户    终端    shell    命令纪要 安装linux之后,linux默认网卡开机不是自动激活,并且防火墙开启的,这对初期我们学习linux会…

      Linux干货 2016-08-03

    评论列表(1条)

    • stanley
      stanley 2016-02-28 12:23

      背景的介绍匮乏