Linux 目录结构详细解析
Linux 整体的目录结构
执行 ls / 命令可以查看根目录下的
目录的解释
-
/bin:
Binary的缩写,存放最常用的命令。 -
/boot:
存放启动Linux时使用的核心文件,包括一些连接文件以及镜像文件。 -
/dev:
Device(设备)的缩写,存放Linux的外部设备的目录(在Linux中访问设备的方式和访问文件的方式是相同的)。 -
/etc:
存放所有系统管理所需的配置文件和子目录。-
/etc/rc、/etc/rc.d、/etc/rc?.d:
启动、或改变运行级时运行的脚本或脚本的目录。 -
/etc/passwd:
用户数据库,其中的域给出了用户名、真实姓名、用户起始目录、加密口令和用户的其他信息。 -
/etc/fstab:
指定启动时需要自动安装的文件系统列表。也包括用swapon -a启用的swap区的信息。 -
/etc/group:
类似/etc/passwd ,但说明的不是用户信息而是组的信息。包括组的各种数据。 -
/etc/inittab:
init 的配置文件。 -
/etc/issue
包括用户在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。具体内容由系统管理员确定。 -
/etc/magic:
“file”的配置文件。包含不同文件格式的说明,“file”基于它猜测文件类型。 -
/etc/motd:
motd是message of the day的缩写,用户成功登录后自动输出。内容由系统管理员确定。常用于通告信息,如计划关机时间的警告等。 -
/etc/mtab:
当前安装的文件系统列表。由脚本( scritp )初始化,并由mount 命令自动更新。当需要一个当前安装的文件系统的列表时使用(例如df 命令)。 -
/etc/shadow:
在安装了影子( shadow )口令软件的系统上的影子口令文件。影子口令文件将/etc /passwd文件中的加密口令移动到/etc/shadow中,而后者只对超级用户( root)可读。这使破译口令更困难,以此增加系统的安全性。 -
/etc/login.defs:
login命令的配置文件。 -
/etc/printcap:
类似/etc/termcap ,但针对打印机。语法不同。 -
/etc/profile 、/etc/csh.login、/etc/csh.cshrc:
登录或启动时bourne或cshells执行的文件。这允许系统管理员为所有用户建立全局缺省环境。 -
/etc/securetty:
确认安全终端,即哪个终端允许超级用户( root )登录。一般只列出虚拟控制台,这样就不可能(至少很困难)通过调制解调器( modem )或网络闯入系统并得到超级用户特权。 -
/etc/shells:
列出可以使用的shell。chsh命令允许用户在本文件指定范围内改变登录的shell。提供一台机器ftp服务的服务进程ftpd检查用户shell是否列在/etc/shells 文件中,如果不是,将不允许该用户登录。 -
/etc/termcap:
终端性能数据库。说明不同的终端用什么“转义序列”控制。写程序时不直接输出转义序列(这样只能工作于特定品牌的终端),而是从/etc/termcap 中查找要做的工作的正确序列。
-
-
/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 -
/lib:
存放系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 -
/lost-found:
该目录一般为空,当系统非法关机时,才会存放一些文件。 -
/media:
linux系统自动识别的设备(如U盘、光驱等),设备挂载的目录。 -
/mnt:
给用户临时挂载别的文件系统的目录(可以将光驱挂载在/mnt上,然后可以在该目录里查看光驱里的内容)。 -
/opt:
给主机额外安装软件所摆放的目录,默认是空的;可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。 -
/porc:
虚拟的目录,是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
-
/proc/x:
关于进程x的信息目录,这一x是这一进程的标识号。每个进程在/proc 下有一个名为自己进程号的目录。 -
/proc/cpuinfo:
存放处理器( cpu )的信息,如cpu的类型、制造商、型号和性能等。 -
/proc/devices:
当前运行的核心配置的设备驱动的列表。 -
/proc/dma:
显示当前使用的dma通道。 -
/proc/filesystems:
核心配置的文件系统信息。 -
/proc/interrupts:
显示被占用的中断信息和占用者的信息,以及被占用的数量。 -
/proc/ioports:
当前使用的i/o端口。 -
/proc/kcore:
系统物理内存映像。与物理内存大小完全一样,然而实际上没有占用这么多内存;它仅仅是在程序访问它时才被创建。(注意:除非你把它拷贝到什么地方,否则/proc 下没有任何东西占用任何磁盘空间。) -
/proc/kmsg:
核心输出的消息。也会被送到syslog。 -
/proc/ksyms:
核心符号表。 -
/proc/loadavg:
系统“平均负载”; 3个没有意义的指示器指出系统当前的工作量。 -
/proc/meminfo:
各种存储器使用信息,包括物理内存和交换分区( swap )。 -
/proc/modules:
存放当前加载了哪些核心模块信息。 -
/proc/net:
网络协议状态信息。 -
/proc/self:
存放到查看/proc 的程序的进程目录的符号连接。当2个进程查看/proc 时,这将会是不同的连接。这主要便于程序得到它自己的进程目录。 -
/proc/stat:
系统的不同状态,例如,系统启动后页面发生错误的次数。 -
/proc/uptime:
系统启动的时间长度。 -
/proc/version:
核心版本。
-
-
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。 -
/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。 -
/selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 -
/srv:
该目录存放一些服务启动之后需要提取的数据。 -
/sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
sysfs文件系统集成了下面3种文件系统的信息:- 针对进程信息的proc文件系统、
- 针对设备的devfs文件系统
- 针对伪终端的devpts文件系统。
-
/tmp:
这个目录是用来存放一些临时文件的。 -
/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。-
/usr/bin:
系统用户使用的应用程序。 -
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。 -
/usr/doc :
linux 文档。 -
/usr/include:
linux 下开发和编程应用程序所需要的头文件。 -
/usr/lib:
常用的动态链接库和软件包的配置文件。 -
/usr/man:
帮助文档。 -
/usr/src:
内核源代码默认的放置目录,linux内核的源代码就放在/usr/src/linux里。 -
/usr/local/bin:
本地增加的命令。 -
/usr/local/lib:
本地增加的库根文件系统。
-
-
/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 -
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。