首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Unix文件系统傻傻搞不懂?这里文章虽长,但是你细品就够了

Unix文件系统是一种以易于管理的方式组织和存储大量信息的逻辑方法。文件是存储信息的最小单位。Unix文件系统具有几个重要功能。Unix中的所有数据都组织成文件。所有文件都组织在目录中。这些目录被组织成称为文件系统的树状结构。

Unix系统中的文件被组织成称为目录树的多级层次结构。文件系统的最顶层是一个名为“ root”的目录,该目录由“ /”表示。所有其他文件都是root的“后代”。

目录或文件及其描述:

/:仅斜杠/字符表示文件系统树的根。

/ bin:代表“二进制文件”,并包含某些基本实用程序,例如ls或cp,所有用户通常都需要这些实用程序。

/ boot:包含成功启动过程所需的所有文件。

/ dev:代表“设备”。包含外围设备和伪设备的文件表示形式。

/ etc:包含系统范围的配置文件和系统数据库。最初还包含诸如init之类的“危险维护实用程序”,但通常已将它们移至/ sbin或其他位置。

/ home:包含用户的主目录。

/ lib:包含系统库和一些关键文件,例如内核模块或设备驱动程序。

/ media:可移动设备(例如USB棒,媒体播放器等)的默认安装点。

/ mnt:代表“挂载”。包含文件系统安装点。例如,如果系统使用多个硬盘或硬盘分区,则使用它们。它还常用于远程(网络)文件系统,CD-ROM / DVD驱动器等。

/ proc:procfs虚拟文件系统,将有关进程的信息显示为文件。

/ root:超级用户“ root”的主目录,即系统管理员。该帐户的主目录通常位于初始文件系统上,因此不在/ home(可能是另一个文件系统的安装点)中,以防万一需要执行特定的维护(在此期间其他文件系统不可用)。例如,如果硬盘驱动器遭受物理故障并且无法正确安装,则可能会发生这种情况。

/ tmp:存放临时文件的位置。许多系统在启动时都会清除此目录。它可能已在其顶部安装了tmpfs,在这种情况下,其内容将无法在重新启动后保留下来,或者可能在启动时由启动脚本将其明确清除。

/ usr:原来存放用户主目录的目录,其用途已更改。现在,它包含对系统不重要的可执行文件,库和共享资源,例如X Window System,KDE,Perl等。但是,在某些Unix系统上,某些用户帐户可能仍具有主目录,该主目录是该目录的直接子目录。/ usr,例如Minix中的默认值。(在现代系统上,这些用户帐户通常与服务器或系统的使用有关,而不是由人直接使用的)。

/ usr / bin:此目录存储不随/ bin,/ sbin或(很少)/ etc而随操作系统发行的所有二进制程序。

/ usr / include:存储整个系统中使用的开发标头。头文件主要由C / C ++编程语言中的#include指令使用。

/ usr / lib:存储/ usr或其他地方存储的程序所需的库和数据文件。

/ var:“变量”的缩写。一个可能经常更改的文件的位置,尤其是大小(例如,发送给系统上用户的电子邮件)或进程ID锁定文件。

/ var / log:包含系统日志文件。

/ var / mail:所有传入邮件的存储位置。用户(root用户除外)只能访问自己的邮件。通常,此目录是/ var / spool / mail的符号链接。

/ var / spool:假脱机目录。包含打印作业,邮件后台处理和其他排队的任务。

/ var / tmp:在系统重新引导之间应保留临时文件的位置。

Unix文件的类型–UNIX文件系统包含几种不同类型的文件:

1.普通文件–普通文件是系统上包含数据,文本或程序指令的文件。

用于存储您的信息,例如您编写的某些文本或绘制的图像。这是您通常使用的文件类型。

始终位于目录文件内/目录下。

不包含其他文件。

在ls -l的长格式输出中,此类文件由“-”符号指定。

2.目录–目录同时存储特殊文件和普通文件。对于熟悉Windows或Mac OS的用户,UNIX目录等效于文件夹。目录文件包含它包含的每个文件和子目录的条目。如果目录中有10个文件,则该目录中将有10个条目。每个条目都有两个组成部分。

(1)文件名

(2)文件或目录的唯一标识号(称为索引节点号)

分层树中的分支点。

用于组织文件组。

可能包含普通文件,特殊文件或其他目录。

切勿包含您将要使用的“真实”信息(例如文本)。基本上,仅用于组织文件。

所有文件都是位于树顶部的根目录(名为/)的后代。

在ls –l的长格式输出中,此类文件由“ d”符号指定。

3.特殊文件–用于表示实际的物理设备,例如打印机,磁带驱动器或终端,用于输入/输出(I / O)操作。设备或特殊文件用于UNIX和Linux系统上的设备输入/输出(I / O)。它们像普通文件或目录一样出现在文件系统中。

在UNIX系统上,每种设备都有两种特殊文件,字符特殊文件和块特殊文件:

当字符特殊文件用于设备输入/输出(I / O)时,数据一次传输一个字符。这种访问方式称为原始设备访问。

当块特殊文件用于设备输入/输出(I / O)时,数据以固定大小的大块传输。这种访问方式称为块设备访问。

对于终端设备,一次只能输入一个字符。但是,对于磁盘设备,原始访问意味着读取或写入磁盘固有的全部数据块。

在ls -l的长格式输出中,特殊字符文件用“ c”符号标记。

在ls -l的长格式输出中,块特殊文件用“ b”符号标记。

4.管道–UNIX允许您使用管道将命令链接在一起。管道充当一个临时文件,该文件只存在于一个命令中,直到被另一个命令读取为止.Unix管道提供单向数据流,第一个命令序列的输出或结果用作命令的输入。第二个命令序列。要制作管道,请在两个命令之间的命令行上放置竖线(|)。例如:who | wc -l

在ls –l的长格式输出中,命名管道用“ p”符号标记。

5.套接字–Unix套接字(或进程间通信套接字)是一个特殊的文件,可用于高级进程间通信。客户端服务器应用程序框架中使用Unix套接字。从本质上讲,它是数据流,与网络流(和网络套接字)非常相似,但是所有事务对于文件系统而言都是本地的。

在ls -l的长格式输出中,Unix套接字用“ s”符号标记。

6.符号链接–符号链接用于引用文件系统的其他文件。符号链接也称为软链接。它包含其引用文件的路径的文本形式。对于最终用户,符号链接似乎具有其自己的名称,但是当您尝试向该文件读取或写入数据时,它会将这些操作引用到其指向的文件中。如果删除软链接本身,则数据文件仍将存在。如果删除源文件或将其移动到其他位置,则符号文件将无法正常工作。

在ls –l的长格式输出中,符号链接用“ l”符号标记(即小写L)。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210108A0F6GB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券