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