1. 程式人生 > >linux誤刪除 dev 下特殊檔案怎麼辦

linux誤刪除 dev 下特殊檔案怎麼辦

若不小心誤刪除了 /dev/null 這樣的特殊檔案,或者chroot到其他目錄需要手工建立 /dev/null 怎麼辦呢?

 

我們可以用 mknod 來重新建立

 

sudo /bin/mknod -m 0666 /dev/null c 1 3

 

其中 mknod 命令用來建立塊或者字元特殊檔案,其語法為

 

mknod [選項]... 名稱 型別 [主裝置號 從裝置號]

 

其中:

 

-m 0666

設定裝置檔案的許可權

 

c

建立的是字元無緩衝特殊檔案

 

1和3

分別表示主裝置號和從裝置號。

 

呼叫 mknod 的所有這些引數都能通過 stat 命令預先查出來

 

stat /dev/null

 

  檔案:/dev/null

  大小:0          塊:0          IO 塊:4096   字元特殊檔案

裝置:6h/6d  Inode:32          硬連結:1     裝置型別:1,3

許可權:(0666/crw-rw-rw-)  Uid:(    0/    root)   Gid:(    0/    root)

最近訪問:2018-08-18 06:19:31.450439053 +0800

最近更改:2018-08-18 06:19:31.450439053 +0800

最近改動:2018-08-18 06:19:31.450439053 +0800

建立時間:-

 

從上面結果可以看出 /dev/null 是一個許可權為 0666,裝置型別為 1,3 的字元特殊檔案

 

/dev/random 和 /dev/urandom 也可以採取類似的方法建立

 

# - name: Mknod /dev/random to Chroot

sudo /bin/mknod -m 0666 /dev/random     c 1 8

# - name: Mknod /dev/urandom to Chroot

sudo /bin/mknod -m 0666 /dev/urandom    c 1 9