Linux目录结构及/dev设备目录详解
Linux的目录初始规划
/ 根目录,其它目录都在根目录下面。
/bin 二进制的命令
/sbin root用户命令,这里存放的是系统管理员使用的管理程序
/dev 设备文件
/etc 系统管理和配置文件
/etc/rc.d 启动的配置文件和脚本
/lib 动态链接共享库
/mnt 临时挂载点
/opt 额外的应用软件包
/home 普通用户目录的基点,比如 用户user 的主目录就是 /home/user ,可以用 ~user 表示
/tmp 公共的临时文件存储点
/root 系统管理员的主目录
/lost+found 这个目录平时是空的,当系统非正常关机而产生的文件(windows下叫什么.chk)就存放在这里
/proc 系统内核和进程信息的映射,可直接访问这个目录来获取系统内核和进程信息。
比如:
cat /proc/cpuinfo 查看cpu信息
cat /proc/meminfo 查看内存信息
cat /proc/loadavg 查看负载(系统繁忙程度,负载超过cpu的核数,说明有点繁忙,也可以用 uptime 命令查看)
cat /proc/mounts 查看挂载信息
/var 可变化的数据。比方说各种服务的日志文件
/usr 第二层次目录,包含:
/usr/x11R6 存放x window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的管理程序(命令)
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local 存放用户自己安装的程序
/usr/local/lib 本地增加的库根文件系统
快捷目录
快捷目录 | 作用 |
. | 当前目录 |
.. | 上一层目录 |
- | 前一个工作目录 |
~ | 当前用户的家目录 |
~account | account用户的家目录 |
目录操作命令
(1)mkdir命令———创建新的目录。
格式:mkdir [选项] 目录名
选项:
-m 对新建目录设置存取权限。
-p 帮助直接建立所需要的目录递归。
(2)pwd命令———显示用户所处当前目录的完整路径。
(3)ls命令———列出目录内容及属性。
格式:ls [选项] [目录或文件]
选项:
-a 显示所有(All)的目录和文件,包括隐藏的目录和文件。
-d 列出目录本身。
-h 列出文件大小。
-n 列出UID(用户ID)和GID(组ID)的名称。
-t 以文件的最后修改时间排序显示。
-l 列出此文件的权限。
(4)tree命令———显示文件夹的目录结构
格式:tree 【选项】【参数】【文件夹】
-L 层数
-d 只显示文件夹
用例:
tree -L 1 / 显示 / 文件夹下的一层目录
tree -Ld 2 / 显示 / 文件夹下的一层目录,并只显示文件夹。
在linux下,/dev目录是很重要的,各种设备都在下面。下面简单总结一下:
dev是设备(device)的英文缩写。/dev这个目录包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序,这一点和windows,dos操作系统不一样。它实际上是一个访问这些外部设备的端口,但是没有入口。必须通过挂载的方式对他们进行访问。
Linux沿袭Unix的风格,将所有设备认成是一个文件。设备文件分为两种:块设备文件(b)和字符设备文件(c)
设备文件一般存放在/dev目录下,对常见设备文件作如下说明:
/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:随机数设备
/dev目录下的节点是怎么创建的?
devf或者udev会自动帮你创建得。
kobject是sysfs文件系统的基础,udev通过监测、检测sysfs来获取新创建的设备的。
lsblk命令 用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。
选项
-a, --all 显示所有设备。
-b, --bytes 以bytes方式显示设备大小。
-f, --fs 显示文件系统信息。
-m, --perms 显示权限信息。
-t, --topology 显示拓扑结构信息。
mount 命令用来挂载设备里的文件。使其挂载后用户可以访问设备里的文件,
其基本命令格式为:mount [-o options] device dir
device:指定要挂载的设备,比如磁盘、光驱等。
dir:指定把文件系统挂载到哪个目录。
options:指定挂载参数,比如 ro 表示以只读方式挂载文件系统。
mount -a 会将 /etc/fstab 中定义的所有挂载点都挂上(grub程序引导系统启动时的脚本中调用,自己最好别用!)。