linux--根目录下的文件目录介绍

Posted 龙叔运维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux--根目录下的文件目录介绍相关的知识,希望对你有一定的参考价值。

当你列出linux系统的根目录的时候  一般你都会看到下面这些目录,如果你是运维,那么了解这些目录的含义和使用场景,是你必备的知识点

本文挑一些比较重要的目录简单介绍

[root@wxl-1 ~]# ll /  | column -t
总用量       28
lrwxrwxrwx.  1    root  root  7     11月  28  16:44  bin    ->  usr/bin
dr-xr-xr-x.  5    root  root  4096  11月  28  16:49  boot
drwxr-xr-x   20   root  root  3220  3月   7   15:46  dev
drwxr-xr-x.  99   root  root  8192  3月   7   15:46  etc
drwxr-xr-x.  2    root  root  6     4月   11  2018   home
lrwxrwxrwx.  1    root  root  7     11月  28  16:44  lib    ->  usr/lib
lrwxrwxrwx.  1    root  root  9     11月  28  16:44  lib64  ->  usr/lib64
drwxr-xr-x.  2    root  root  6     4月   11  2018   media
drwxr-xr-x.  3    root  root  18    11月  28  16:46  mnt
drwxr-xr-x.  5    root  root  52    1月   3   22:54  opt
dr-xr-xr-x   171  root  root  0     3月   7   15:46  proc
dr-xr-x---.  21   root  root  4096  2月   14  16:00  root
drwxr-xr-x   30   root  root  800   3月   7   15:47  run
lrwxrwxrwx.  1    root  root  8     11月  28  16:44  sbin   ->  usr/sbin
drwxr-xr-x.  2    root  root  6     4月   11  2018   srv
dr-xr-xr-x   13   root  root  0     3月   7   16:25  sys
drwxrwxrwt.  17   root  root  4096  3月   7   15:47  tmp
drwxr-xr-x.  13   root  root  155   11月  28  16:44  usr
drwxr-xr-x.  21   root  root  4096  1月   18  23:36  var

 

1·/bin目录(可执行文件)

这里放的都是一些可执行文件,也就是我们在 linux上可以执行的那些命令,然而linux上存放命令的目录也是不止一个,也是经常有人会弄混,这里也简单区分下

/bin:里面包含了所有用户都可以执行的命令文件,普通用户和超级用户都可以执行的

/usr/bin:系统自带的一些必备基础命令,如ls,mkdir等等基础命令,这些文件轻易不要动,影响较大

/usr/local/bin:用户自己安装程序的时候,默认的可执行程序的存放路径,一般不会影响整个系统

 

2·/boot目录(核心文件)

启动Linux的核心文件,这个目录我们一般不用去操心,也不用去管

3·/dev目录(外部设备)

在linux 一切皆文件,/dev目录就是存放硬件相关文件的目录,该目录包含了所有linux用到的外部设备,但存放的并不是驱动程序,存放的是一个访问这些外部设备的端口,我们访问这些设备,和访问一个文件或者目录没有任何区别

常见设备文件如下:

  /dev/hd[a-t]:IDE设备

  /dev/sd[a-z]:SCSI设备

  /dev/fd[0-7]:标准软驱

  /dev/md[0-31]:软raid设备

  /dev/loop[0-7]:本地回环设备

  /dev/ram[0-15]:内存

  /dev/null:无限数据接收设备,相当于黑洞

  /dev/zero:无限零资源

  /dev/tty[0-63]:虚拟终端

  /dev/ttyS[0-3]:串口

  /dev/lp[0-3]:并口

  /dev/console:控制台

  /dev/fb[0-31]:framebuffer

  /dev/cdrom => /dev/hdc

  /dev/modem => /dev/ttyS[0-9]

  /dev/pilot => /dev/ttyS[0-9]

  /dev/random:随机数设备

  /dev/urandom:随机数设备

 

4·/etc目录(配置文件)

系统主要的配置文件几乎都放置到这个目录内,包括你安装程序的时候默认的配置文件路径也是这里

例如mysql的配置文件:/etc/my.conf

或者你安装gitlab,配置文件默认存放路径为:/etc/gitlab/gitlab.rb

 

5·home目录(用户的家目录)

如果建立一个用户,用户名是"xx",那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。

而root用户的家目录不在/home下面,单独出来是/root目录

 

6·/lib和/lib64目录(库文件目录)

这个目录存放的是一些库文件,很多命令或者程序需要的库文件都在这里,你可以用strace -e open XXX   来看明朗了都用到了那些库文件,如;

可以看到pwd命令的执行用到了两个库文件

 

7·/opt目录(软件安装目录)

这个目录不是很重要,主要存放那些可选的程序,删除影响也不大

同时  /usr/local目录 也是 软件安装的目录,不过这里一般是用户手动安装(手动编译安装)的程序,不是通过apt-get或者yum安装的

/usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。
*比如Hadoop,Tomcat的安装目录我一般会放在/usr/目录下

/opt:给主机额外安装软件所摆放的目录。用户级的程序目录,可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。
*比如临时上传到Linux里的软件;tar.gz rpm等文件,用作软件仓库。

 

8·/proc目录(操作系统信息)

Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。

用户可以在这个目录中获取到系统硬件相关信息和进程的信息

每个进程在/proc目录下都有一个进程pid命名的目录

 

9·/root目录(超级用户目录)

root用户的家目录

 

10·/run目录(程序运行时文件)

里面的东西是系统运行时需要的, 不能随便删除. 但是重启的时候应该抛弃. 下次系统运行时重新生成

里面的文件和目录没有存储在磁盘上,而只存储在内存中。

df 命令也可以看到 /run目录是被识别成了 tmpfs , 也就是临时文件系统

 

11·/sbin目录(可执行命令)

这里也放的时可执行命令文件,但是于/bin不同的时,这里存放的试一下系统管理的命令,如fdisk、halt、ifconfig等等

 

12·/srv目录(服务数据)

主要用来存储本机或本服务器提供的服务或数据。(用户主动生产的数据、对外提供服务)

 

13·/sys目录(挂载sysfs文件系统)

sysfs 文件系统总是被挂载在 /sys 挂载点上,而什么时sysfs系统,下面简单介绍一下

sysfs 是 Linux 内核中设计较新的一种虚拟的基于内存的文件系统,它的作用与 proc 有些类似,但除了与 proc 相同的具有查看和设定内核参数功能之外,还有为 Linux 统一设备模型作为管理之用。相比于 proc 文件系统,使用 sysfs 导出内核数据的方式更为统一,并且组织的方式更好

想要更多的了解sysfs,可以单独区查找学习,本文只是简单介绍根目录下的各个目录的作用

14·/tmp目录(临时文件存放)

这个就是一个各个用户都可以访问的存放临时文件的目录,可以看到该目录的权限被放到了最大

15·/usr目录(日常用到的应用程序和文件几乎都在这)

/usr不是user的缩写,其实usr是Unix Software Resource的缩写,安装时会占用较大硬盘容量目录

要用到的应用程序和文件几乎都在这个目录

 

16·/var目录(系统一般运行时要改变的数据)

如果/usr是安装时会占用较大硬盘容量目录,那么/var就是在系统运行后才会渐渐占用硬盘容量的目录。

因为var目录主要针对常态性变动文件,包括缓存(cache)、登录文件(logfile)以及某些软件运行所产生的文件,包括程序文件(lock file,run file),或者例如Mysql数据库的文件等。

/var/log:这个是登录文件放置日志的的目录。Homestead中nginx的错误日志就放在这里。

 

 

推荐公众号,分享运维知识:龙叔18岁

以上是关于linux--根目录下的文件目录介绍的主要内容,如果未能解决你的问题,请参考以下文章

文件目录管理

linux-文件与目录管理

Linux /home满了,如何挂载新硬盘到/home分区下?扩大/home分区的容量?

Liunx目录下的各个系统文件夹的作用

Linux常用磁盘管理命令详解

linux查看当前磁盘各目录容量命令