网站首页 > 精选文章 / 正文
简介:Linux 系统里的 /dev 和 /proc 目录那可是相当重要的系统文件。在 Linux 系统中,/dev 目录专门用来存放设备文件。不光有设备文件,系统里还有好多特殊功能也是通过设备的形式展现出来的。设备文件挺特别,其实就是驱动程序的接口。再说 /proc 目录,它属于一种文件系统,叫 proc 文件系统。和其他常见的文件系统不一样,/proc 是个虚拟文件系统,存的是当前内核运行状况的一堆特殊文件。通过这些文件,能查看有关系统硬件以及正在运行进程的详细情况,甚至能改改某些文件来改变内核的运行状态。
这篇文章会详细讲讲 Linux 系统里的 /dev 和 /proc 这两个目录的相关信息,具体内容请看下面。
一、访问Linux系统
1.访问Linux系统
2.Linux系统真实与虚拟的两个目录
二、Proc目录
Proc目录是什么
说明:/proc目录中包含许多以数字命名的子目录,这些数字就是系统当前正在运行各个进程的进程号PID,这些子目录里面包含对应进程相关的多个信息文件,在某进程结束后其相关目录则会消失。
执行指令# ls /proc 查看进程目录里头的详细信息
1.执行指令# cat /proc/cpuinfo查看cpu信息
2.执行指令# cat /proc/meminfo 查看内存信息
3.执行指令# cat /proc/devices 查看已经加载的字符设备和块设备的相关信息
三、Dev目录
Dev目录是什么
说明:在Linux系统中,一切皆文件贯彻其中。
备注:对于/dev目录中的设备文件来说,文件名和路径其实都不重要,最重要的使其主设备号和辅助设备号。
1.查看主设备号和辅助设备号
执行指令# ls -al /dev/sda 查看sda磁盘主设备号和辅助设备号
备注:用ls -la命令显示出来的原本应该出现在文件大小位置上的两个数字,比如上面命令显示的8和0。其中8是主设备号,0是辅助设备号。主设备号对应了这种设备所使用的驱动,而辅助设备号则表示使用同一种驱动的设备编号。
如果使用mknod命令创建设备文件,只要主设备号和辅助设备号一样,那么这些设备文件就是一样的。
比如执行指令# mknod mydisk b 8 0
备注:这样我们就创建了一个设备文件mydisk,实际上跟/dev/sda是同一个设备,因为两者对应的设备驱动和编号都一样。所以这个设备实际上是跟sda相同功能的设备。
2./dev中几个重要的子目录
(1) /dev/null:黑洞文件,无限数据接收设备,可以重定向如何输出。
说明:/dev/null是空设备文件,也称为黑洞(black hole)或者位桶(bit bucket)。可以向其输入任何数据,但任何写入的数据都会被抛弃,通常用于处理不需要的输出流,或者作为空的输入流。
使用实例
执行指令# find /usr/local/tmp -name access_log 2>/dev/null
备注:上述find命令意为在/usr/local/tmp目录下查找名为access_log的文件,并且错误输出不会显示出来(文件描述符2被重定向到/dev/null),意思就是把错误输出到“黑洞”。
(2) /dev/zero:0发生器。可以产生二进制的0,产生多少根使用时间长度有关,经常用这个文件来产生大文件进行某些测试。
说明:/dev/zero 该设备无穷尽地提供空字符(ASCII NUL, 0x00),可以使用任何你需要的数目。通常用于向设备或文件写入字符0,用于初始化数据存储或者作为输出流的接受容器。
使用实例
执行指令# dd if=/dev/zero of=~/test.txt bs=1k count=1
备注:上述命令的意思为产生1KB大小的文件~/text.txt。
执行指令# dd if=/dev/zero of=/usr/local/temp/test.sh bs=1M count=6
备注:上述命令使用 /dev/zero 来清除文件的内容,可以覆盖一个文件,使其仅包含零字节,不过会保留文件的权限和其他属性。
(3) /dev/urandom和/dev/random:随机数文件,两个设备文件可以用来获取系统的随机数。
使用实例
比如:怎么获取/dev/urandom和/dev/random中的值
执行指令# dd if=/dev/random >/dev/null bs=1M count=1
执行指令# dd if=/dev/urandom >/dev/null bs=1M count=1
备注:通过上述命令可以看见/dev/urandom生成随机数的速度要快很多,一般就使用/dev/urandom获取随机数。
比如:使用/dev/urandom生成固定位数的随机数
执行指令# head /dev/urandom | tr -dc 0-9 | head -c 32
备注:上述指令随机生成32为纯数字的随机数。
执行指令# head /dev/urandom | tr -dc a-z0-9 | head -c 32
备注:上述指令随机生成32为的小写字母+数字的随机数。
执行指令# head /dev/urandom | tr -dc A-Za-z0-9 | head -c 64
备注:上述指令随机生成64位的大小写字母+数字的随机数。
Tags:linux创建目录
猜你喜欢
- 2025-04-26 linux系统查看软件安装目录的方法
- 2025-04-26 Linux使用profile.d目录设置环境变量
- 2025-04-26 后端开发必看!没网也能在 Linux 服务器上安装 Nginx 的神操作
- 2025-04-26 Linux运维获取内存、cpu、磁盘IO信息
- 2025-04-26 win10 NFS+黑群晖远程加载管理Windows文件夹(读写NTFS格式+高清播放器)
- 2025-04-26 Linux基础知识 | 文件与目录大全讲解
- 2025-04-26 Linux系统中根下的目录结构介绍
- 2025-04-26 创建你的第一个可运行的嵌入式Linux系统-4
- 2025-04-26 每天一个技术知识:Linux的目录结构
- 2025-04-26 Linux每日一知 Linux目录结构