/ dev/nullに550MBのファイルを読み込んでいます。
dd: writing '/dev/null': No space left on device
私はびっくりしました。/dev/nullは、あなたが好きなだけ送信できるブラックホールだと思いました(仮想fsのため)。
はい、このエラーが表示されたら、ディスクがほぼいっぱいです。ディスクからコンテンツを削除する以外に何ができますか?
ls -l /dev/null
-rw-r--r-- 1 root root 0 July 7 21:58 /dev/null
の代わりに
crw-rw-rw- 1 root root 1, 3 July 7 02:58 /dev/null
私が使用しているコマンド:
time sh -c "dd if=$filename of=/dev/null"
/dev/null
は、キャラクターデバイスタイプの特殊ファイルです。そのキャラクターデバイスのドライバーは、デバイスに書き込もうとするものをすべて無視し、書き込みは常に成功します。 /dev/null
への書き込みが失敗した場合、何とかして適切な/dev/null
を削除し、通常のファイルに置き換えることができたことを意味します。 /dev/null
を誤って削除した可能性があります。その後、次の… >/dev/null
は通常のファイルとして再作成します。
ls -l /dev/null
を実行し、行が次のようになっていることを確認します
crw-rw-rw- 1 root root 1, 3 Sep 13 2011 /dev/null
キャラクターデバイスの場合はcrw-rw-rw-
:c
で始まり、全員が読み書きできるようにする権限が必要です。ファイルはrootが所有する必要がありますが、それほど重要ではありません。所有者とグループの後の2つの番号は、デバイスを識別します( メジャーおよびマイナーデバイス番号 )。上記では、Linuxでの値を示しています。異なるUNIXバリアントには異なる値があります。日付は通常、システムがインストールされた日付または最後の再起動の日付のいずれかであり、重要ではありません。
ファイルを再作成する必要がある場合、一部のシステムでは、ルートのPATHまたは/dev
にMAKEDEV
コマンドが用意されています。 cd /dev; ./MAKEDEV std
またはこのようなものを実行して、/dev/null
などの標準的な基本デバイスを再作成します。または、正しいデバイス番号を指定して、デバイスを手動で作成します。 Linuxでは、それは
mknod -m 666 /dev/null c 1 3