開発やテストの際などによくお世話になるLinuxのスペシャルファイル(の中の疑似デバイス)に関するメモです
/dev/null
書かれたデータは捨てられる。
null スペシャルファイルを読むと常に end of file が返される。
/dev/zero
書かれたデータは捨てられる。
常に \0 文字(null 文字)が返される
例えば、以下を実行するとnull文字で埋められた10MBのファイルを生成することができる
dd if=/dev/zero of=sample_10MB.dat bs=10M count=1
/dev/full
/dev/full デバイスへの書き込みは ENOSPC エラーとなり失敗する。
この動作を使ってプログラムがディスクフルのエラーをどのように処理するかをテストできる。
[root]# echo "Hello world" > /dev/full -bash: echo: write error: デバイスに空き領域がありません
/dev/random
可変長の擬似乱数文字列を生成する(ブロックする)
/dev/urandom
可変長の擬似乱数文字列を生成する(ブロックしない)
例えば、以下を実行するとランダムな値で埋められた10MBのファイルを生成することができる
dd if=/dev/urandom of=sample_10MB.dat bs=10M count=1