Linux一切皆文件,系统与设备通信之前,要建立一个存放在/dev目录下的设备文件,默认情况下就已经生成了很多设备文件,有时候自己手动新建一些设备文件,这就会用到mknod。
语法格式:mknod[选项][文件名称] [文件类型] [主设备号] [次设备号]
常用参数:
-Z 设置安全的上下文
-m 设置权限模式
b 块设备
c 字符设备
-help 显示帮助信息
--version 显示版本信息
其中-m后面的参数可以为(类似于chmod):
400 -r-------- 拥有者能够读,其他任何人不能进行任何操作;
644 -rw-r–r– 拥有者都能够读,但只有拥有者可以编辑;
660 -rw-rw---- 拥有者和组用户都可读和写,其他人不能进行任何操作;
664 -rw-rw-r– 所有人都可读,但只有拥有者和组用户可编辑;
700 -rwx------ 拥有者能够读、写和执行,其他用户不能任何操作;
744 -rwxr–r– 所有人都能读,但只有拥有者才能编辑和执行;
755 -rwxr-xr-x 所有人都能读和执行,但只有拥有者才能编辑;
777 -rwxrwxrwx 所有人都能读、写和执行(linux中文件的执行权限一般不要随意设置!就算我们创建的文件也默认没有执行权限,只有手动赋予之后才有。)
例子:
sudo mknod /dev/dev1 c 50 1 //创建字符设备 /dev/console2,主设备号为50,次设备号为1
sudo mknod -m 660 /dev/dev2 c 50 2 //创建字符设备 /dev/dev2 ,并设置权限为660(用户和组都可读写) ,主设备号为50,次设备号为2