首页 > 系统相关 > Linux系统的目录结构

Linux系统的目录结构

时间:2023-02-10 20:01:17浏览次数:50  
标签:文件 系统 文件系统 用户 存放 usr Linux 目录

在Windows下,我们的整个硬盘实际上可以被分为多个磁盘驱动器:

 Linux系统的目录结构_文件系统

而在Linux中,没有C盘D盘这个概念,只有一句经典的话:"在 Linux 世界里,一切皆文件",而所有的文件都是位于根目录下的,Linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后在此目录下再创建其他的目录。

 Linux系统的目录结构_linux_02

/usr(系统目录)

unix shared resources 共享资源 , 用户的很多应用程序和文件都放在这个目录下,可以理解为 C:/Windows/。

  1. /usr/bin
  2. /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
  3. /usr/local:用户级的程序目录,用户自己编译的软件默认会安装到这个目录下,类似于 windows 下的 program files 目录

​https://blog.csdn.net/wteruiycbqqvwt/article/details/114539441​

/bin、/sbin(可执行二进制文件)

Binaries 二进制文件 , 系统用户使用的应用程序目录,可以理解为 C:/Windows/System32。这个目录存放着最经常使用的命令,如cd、cat等。

Superuser Binaries 超级用户的二进制文件 ,这里存放的是系统管理员使用的系统管理程序。

软连接==>指向 usr/bin、 usr/sbin

/lib、 /lib64(共享库)

Library 这个目录里存放着系统最基本的动态连接共享库。

共享库即系统使用的函数库,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,几乎所有的应用程序都需要用到这些共享库其作用类似于 Windows 里的 DLL 文件。

软连接==>指向 usr/libusr/lib64

 Linux系统的目录结构_linux_03

存放程序的目录

/usr/local(用户程序目录)

 Linux系统的目录结构_主目录_04

local是用户级的程序目录,用户自己编译的软件默认会安装到这个目录下,类似于 windows 下的 program files 目录。

其内部与/usr差不多,同样拥有/bin、/etc、/lib等目录,主要的区别是/usr是系统级别的,/local是用户级别的。

/opt(可选程序目录)

optional 可选 ,这是给主机额外安装软件所摆放的目录,默认是空的,可以理解为 D:/Software。比如你安装一个ORACLE数据库则就可以放到这个目录下。

/etc(配置文件目录)

etcetera 等等,用来存放所有的系统管理所需要的配置文件和子目录,如用户配置文件passwd。

要注意不要随意改动,如果你更改了该目录下的某个文件可能会导致系统不能启动。

​http://t.zoukankan.com/zhaobin-diray-p-10936213.html​

/boot(内核文件引导目录)

这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。

/home、/root(用户主目录)

/home为普通用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。

/root为系统管理员的主目录,也称作超级权限者的用户主目录。

/var(可变文件目录)

variable 变量 ,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下。

一般情况下,​​yum install​​安装软件后rpm包存放在​​/var/cache/yum/​​下

/tmp(临时文件目录)

temporary 临时 ,一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下。

/var/tmp 有一个软链接在/usr中

/run(系统记录文件)

/var/run 目录中存放的是自系统启动以来描述系统信息的文件。 比较常见的用途是daemon进程将自己的pid保存到这个目录。当系统重启时,这个目录下的文件应该被删掉或清除。

如果你的系统上有 /var/run 目录,应该让它指向 run。

设备、文件相关的目录

/dev(设备文件目录)

Device 设备 , 在Linux中万物皆文件,实际上你插入的U盘等设备都会在dev目录下生成一个文件,在 Linux 中访问设备的方式和访问文件的方式是相同的,我们可以很方便地通过文件IO方式去操作外设,对嵌入式开发极为友好。

/media(自动挂载目录)

linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。

/mnt(手动挂载目录)

mount 挂载 ,系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在 /mnt/ 上,然后进入该目录就可以查看里面的内容了。

三者之间的联系

/mnt目录存放手动挂载的硬件,/media目录存放自动挂载的硬件(载点都是由系统自动建立和删除的),二者没有特殊的区别。

/dev不是存放设备的驱动程序,而是作为访问外部设备文件的接口。比如,我们的U盘,插入linux系统后,用fdisk -l查看分区,显示文件为/dev/sda1。则我们可以将u盘挂载到/mnt/usb0下,mount /dev/sda1 /mnt/usb0即可。

其他不常用的目录

/proc

Processes(进程),/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

/selinux

这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

/sys

这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

/lost+found

这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

/srv

该目录存放一些服务启动之后需要提取的数据。


标签:文件,系统,文件系统,用户,存放,usr,Linux,目录
From: https://blog.51cto.com/u_15910817/6049727

相关文章