ファイルの種類

 Linuxではファイルは通常ファイル・ディレクトリ・スペシャルファイル(デバイススペシャルファイル)に分類される。

スペシャルファイルとは

 デバイスを抽象化したファイル。デバイスに対して直接プロセスがアクセスするのではなく、スペシャルファイルを経由してアクセスを行う。/dev以下に存在するファイルがスペシャルファイルである。

疑似デバイス

 実際の周辺機器とは対応しないデバイスを擬似デバイスと呼ぶ

  • /dev/null あらゆる入力を受け付け、それを捨てる。出力はしない。ビットバケツの一種。
  • /dev/zero ASCIIのNUL文字(値がゼロ)の列を生成する
  • /dev/random 可変長の擬似乱数文字列を生成する(ブロックする)
  • /dev/urandom 可変長の擬似乱数文字列を生成する(ブロックしない)

疑似デバイスの使い方

ddコマンドと組み合わせて、/dev/randomからランダムな文字列をrandファイルに出力させる(こういった理由で完了までに時間がそれなりにかかる。真にランダムな値を作るのは難しいようだ)。

# dd if=/dev/random of=rand bs=1 count=100