linux 中一切皆文件:open(),read(),write(),close()
设备文件:关联至少一个设备驱动程序,进而能够跟与之对应硬件设备进行通信
设备号码:
- 主设备号:major number,标识设备类型
- 次设备号:minor number,标识同一类型下的不同设备
[01:22:56 root@localhost ~]#ll /dev/null crw-rw-rw-. 1 root root 1, 3 Nov 22 01:12 /dev/null 1,3 1是主设备号 3是次设备号 范例:创建一个跟/dev/zero一样的文件 [01:23:04 root@localhost ~]#mknod /root/zero c 1 5 [01:27:23 root@localhost ~]#ll total 8 -rw-------. 1 root root 1301 Nov 21 23:55 anaconda-ks.cfg -rwxr-xr-x. 1 root root 1596 Nov 21 23:57 reset.sh crw-r--r--. 1 root root 1, 5 Nov 22 01:27 zero [01:28:25 root@localhost ~]#dd if=/root/zero of=/root/test bs=1 count=10 10+0 records in 10+0 records out 10 bytes (10 B) copied, 0.000166157 s, 60.2 kB/s [01:28:52 root@localhost ~]#hexdump -C /root/test 00000000 00 00 00 00 00 00 00 00 00 00 |..........| 0000000a
设备类型:
- 块设备:block,存取单位“块”,磁盘
- 字符设备:char,存取单位“字符”,键盘
磁盘设备的设备文件命名:
/dev/DEV_FILE /dev/sdX # SAS,SATA,SCSI,IDE,USB /dev/nvme0n #nvme协议硬盘,如:第一个硬盘:nvme0n1,第二个硬盘:nvme0n2
虚拟磁盘:
/dev/vd /dev/xvd
不同磁盘标识:a-z,aa,ab.....
同一设备的不同分区:1,2,...
/dev/sda1 /dev/sda2
dd:命令
dd可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。 dd if=/dev/zero of=/opt/test bs=1M count=1024 seek=1024 if=文件名:输入文件名,默认为标准输入。即指定源文件。 of=文件名:输出文件名,默认为标准输出。即指定目的文件。 ibs= 一次读size个byte obs= 一次写size个byte bs=同时设置读入/输出的块大小为bytes个字节。 count=复制n个bs seek= 从开头忽略blocks个obs大小的块 skip= 从开头忽略blocks个ibs大小的块
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于