linux dev下的(linux中dev目录是放什么的)
大家好,如果您还对linux dev下的不太了解,没有关系,今天就由本站为大家分享linux dev下的的知识,包括linux中dev目录是放什么的的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
详解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:随机数设备在 linux系统中,/dev目录用来保存设备文件的.每个文件指向一个系统设备.用户的程序可以通过使用这些设备文件,
对真实的硬件的设备进行操作.如: hda是第1个IDE硬盘,sda是第1个SCSI硬盘.
在2.4内核时代,在/dev下保存了所有kernel可以支持的硬件设备的设备文件,将近有1万个.而这些设备中,大多数
是没有连接的设备.这样就大大的浪费了系统资源,而且/dev目录也显得非常混乱.
udev就是用了解决这些问题的.在2.6内核中,采用udev方式来管理/dev目录.它可以动态的建立/删除设备文件(设备
连接到系统时,它会自动建立相应的设备文件,设备断开连接后,它会自动删除相应的设备文件).这样使/dev目录
简化了许多.而且,udev还可以允许用户编写命名规则,为不同设备指定设备文件名.这样,对设备的管理也方便了
许多.
例如:你有2个U盘,1个容量是1G的,1个容量是2G的.一般情况下,你先接上的U盘会是sdb,后接上的U盘会是sdc.这样对
使用很不方便.每次U盘的设备名可能不一样.但通过udev命名规则,你可以自己指定的设备命名,可以将1G的U盘命名为
1g,将2G的U盘命名为2g.设备名不会再变化.使用和管理都会很方便.
LINUX根目录下的binbootdevetc这几个目录的作用是什么
bin下面的是一些二进制程序文件
boot下面的是开机启动文件
dev下面的是一些硬件驱动
etc下面的是一些安装程序/bin:存放最常用命令;/boot:启动Linux的核心文件;/dev:设备文件;/etc:存放各种配置文件;/home:用户主目录;/lib:系统最基本的动态链接共享库;/mnt:一般是空的,用来临时挂载别的文件系统;/proc:虚拟目录,是内存的映射;
/bin:存放最常用命令;
/boot:启动Linux的核心文件;
/dev:设备文件;
/etc:存放各种配置文件;
/home:用户主目录;
/lib:系统最基本的动态链接共享库;
/mnt:一般是空的,用来临时挂载别的文件系统;
/proc:虚拟目录,是内存的映射;
/sbin:系统管理员命令存放目录;
/usr:最大的目录,存许应用程序和文件;
/usr/X11R6:X-Window目录;
/usr/src:Linux源代码;
/usr/include:系统头文件;
/usr/lib:存放常用动态链接共享库、静态档案库;
/usr/bin、/usr/sbin:这是对/bin、/sbin的一个补充;
另一种说法:
/bin二进制可执行命令
/dev设备特殊文件
/etc系统管理和配置文件
/etc/rc.d启动的配置文件和脚本
/home用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/lib标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件
/sbin系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp公用的临时文件存储点
/root系统管理员的主目录(呵呵,特权阶级)
/mnt系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
/proc虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/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/bin本地增加的命令
/usr/local/lib本地增加的库
linux下的dd命令使用详解
在Linux世界中,dd命令无疑是一把强大的多功能工具,它不仅可以进行文件的拷贝,还能进行数据的转换和各种高级操作。让我们一起深入探讨dd命令的奥秘,了解其在磁盘备份、数据处理和性能测试中的实际应用。
1. dd命令基础
dd的核心功能是块级拷贝,它支持指定文件输入(if)、输出(of)路径,以及块大小(bs)。通过调整块大小,可以优化磁盘I/O性能,但最佳值需要根据实际需求和硬件环境通过测试来确定。
2.硬盘管理与数据销毁
清除硬盘磁盘标记点:使用dd命令可以清除磁盘的magnetic flux point,如 dd if=/dev/sda of=/dev/sda或 dd if=/dev/hda of=/dev/hda,这是一种安全且高效的硬盘恢复前准备步骤。
3.远程数据备份与接收
远程备份时,可以将dd命令的输出通过网络发送,如 dd if=/dev/hda bs=16065b| netcat targethost-IP> 1234。备份后,可以进一步压缩,如 netcat-l-p 1234| bzip2/gzip> partition.img。
4.大文件处理与字节修改
对于大视频文件,dd可以帮助修改字节,如 echo A| dd of=bigfile seek=$i bs=1 count=1 conv=notrunc,用于填充或替换特定位置的数据。
5.虚拟磁盘与模拟环境
通过文件模拟,可以创建与裸设备关联的虚拟磁盘。例如,创建6个400M文件,并在需要时使用losetup-d卸载。
6./dev/null与/dev/zero的应用
/dev/zero提供无限量的0,常用于初始化文件或填充磁盘,而/dev/null则是用来吞没所有输入或隐藏输出的空设备。例如,用于测试命令的退出码、清空日志或隐藏敏感信息。
脚本示例:高效操作
创建交换文件的脚本示例中,我们确保只有root权限用户才能运行,ks: dd if=/dev/zero of=$FILE bs=$BLOCKSIZE count=$blocks,并设置合理的块大小。同样,ramdisk.sh用于创建ramdisk,fidd if=/dev/zero创建设备,然后格式化并挂载。
通过以上实例,我们看到了dd命令在Linux中的强大实用性和灵活性。无论你是进行系统维护、数据操作还是性能优化,都能在dd的命令行世界中找到适合的工具和方法。