linux目录结构
linux目录结构
根目录:
[root@donner /]# ls
bin boot dev donner etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
1 /bin
存放着最经常使用的命令,bin是Binary的缩写。
比如ls,cp,rm等等。
2 /boot
存放着启动linux时使用的一些核心文件。
包括一些连接文件以及镜像文件。
3 /dev
存放着Linux的硬件设备。类似于windows的设备管理器。
dev是Device(设备)的缩写。
在Linux中访问设备的方式和访问文件的方式是相同的。它把所有的硬件用文件的形式存储。
4 /etc
存放着所有的系统管理所需要的配置文件和子目录。
比如网卡。
5 /home
存放普通用户的主目录。
在linux中,每个用户都有一个自己的目录,一般该目录是以该用户的账号名命名的。
6 /lib
存放着系统最基本的动态连接共享库。
其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
7 /media
存放着媒体设备的目录。
linux系统会识别一些设备,比如u盘,光驱等。识别后,linux会把这个设备挂载到这个目录底下。
8 /mnt
存放其他文件系统的目录。
提供该目录是为了让用户可以临时挂载别的文件系统,我们可以将外部的存储设备(比如光驱)挂载在/mnt/上,然后我们可以进入该目录进行查看设备里的内容。
9 /opt
存放额外的软件安装包的目录。默认是空的。
一般是用来放应用安装包的。比如你安装一个ORACLE数据库则就可以放到这个目录下。
10 /proc
一个虚拟的目录,是系统内存(运行的进程)的映射。
我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
11 /root
系统管理员的用户主目录。
12 /sbin
存放的是系统管理员使用的系统管理程序(系统管理命令)。
s就是Super User的意思。
13 /srv
存放的是一些服务启动之后需要提取的数据。
srv是service的缩写。
14 /sys
存放系统相关的文件。
该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:
针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
15 /tmp
存放一些临时文件的目录。
16 /usr
存放用户的大部分应用程序和文件。
类似于windows中的program files目录。
16.1 /usr/bin
存放系统用户使用的应用程序。
16.2 /usr/sbin
存放超级用户使用的比较高级的管理程序和系统守护程序。
16.3 /usr/local
存放程序安装后的一些文件。
16.4 /usr/src
内核源代码默认的放置目录。
17 /var
存放经常需要被修改的文件,一些在不断扩充着的东西。
包括日志文件。
18 /run
存放着系统启动以来的信息,是一个临时文件系统。
当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
注意事项
在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc:
上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin:
这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
/var:
这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。