...pudding - diary


2018-09-08

_ [Software] /dev/null を消して慌てたことはないか

カワイイは作れる。 Linux で /dev/null は消せる。

手元の CentOS6 で試してみた。

まずは消す前に状態の確認だ。

[root@centos61 ~]# file /dev/null
/dev/null: character special

[root@centos61 ~]# ls -la /dev/null
crw-rw-rw-. 1 root root 1, 3 7月 16 21:18 2018 /dev/null

[root@centos61 ~]# cat /dev/null

さあそれでは消してみようか。

[root@centos61 ~]# rm -f /dev/null
[root@centos61 ~]# ls -la /dev/null
ls: cannot access /dev/null: そのようなファイルやディレクトリはありません

サクッと消えたね。ここで /dev/null が有るツモリになって操作してみると面倒なことになるぞ。

[root@centos61 ~]# echo "aaa" > /dev/null
[root@centos61 ~]# cat /dev/null
aaa

[root@centos61 ~]# ls -la /dev/null
-rw-r--r--. 1 root root 4 9月 8 00:15 2018 /dev/null

[root@centos61 ~]# file /dev/null
/dev/null: ASCII text

うわー面倒なことに!これは目も当てられない。/dev/null/dev/null だと思って使っても /dev/null の働きをしてない!危ないのでもとに戻しましょう。

[root@centos61 ~]# rm -f /dev/null
[root@centos61 ~]# mknod -m 666 /dev/null c 1 3
[root@centos61 ~]# ls -la /dev/null
crw-rw-rw-. 1 root root 1, 3 9月 8 00:16 2018 /dev/null

[root@centos61 ~]# echo "aaa" > /dev/null
[root@centos61 ~]# cat /dev/null

きちんと /dev/null の働きをするようになりました。/dev/null はうっかり消せちゃって他の内容で作れちゃうので(/dev/nullの働きをしないようになっちゃうので)気をつけよう。


2018年
9月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
Twitter : @moriya_jp