dd (UNIX)
ddはUnix hệのシステムにあるプログラム ( コマンド ) で, データのコピーや変 hoán をブロックデバイスを trực tiếp đọc み thư きして hành うことが đặc trưng である. dataset definitionの lược であるが,IBMのメインフレームのJob Control Language( ジョブ chế ngự ngôn ngữ, JCL ) の “DD văn” ( DD statement ) に do lai するため, dẫn sổ の cấu văn が, Unixの nhất bàn đích なコマンドの dẫn sổ のそれとは kích しく dị なっている ( datasetというのはメインフレーム dụng ngữ ).
ddの chủ な cơ năng は chỉ định されたバイト sổ もしくはブロック sổ のデータのコピーであり, この cơ năng は,ハードディスク( toàn thể もしくはパーティション単 vị, またはブートセクターĐẳng ) のバックアップや,/dev/zeroや/dev/randomを dụng いて chỉ định された lĩnh vực をHoàn toàn tiêu khứするために lợi dụng される. Đồng dạng にディスクの ( khả năng な hạn り ) toàn trạng thái をそのままクローンしたい,コンピュータ・フォレンジックスなどの tràng hợp にも sử われる.
ddコマンドが hành うようなディスクの trực tiếp の đọc み thư きには, thông thường は quản lý giả 権 hạn が tất yếu であり, 従って nguy 険なコマンドであっても giản 単に thật hành できてしまう trạng thái で tác nghiệp していることが đa い. そしてddは, lệ えば, nhập lực と xuất lực の chỉ định をうっかり nghịch にしただけで ( cụ thể đích には "of" と "if" の, QWERTYキーボードでは lân の1 văn tự の vi いである ), đại sự なデータをバックアップする đại わりに, まっさらなディスクの nội dung をそれに thượng thư きして tiêu してしまう, という khủng ろしいことを khởi こし đắc る. そのためしばしばベテランは, data destroyer ( あるいはdisk destroyer, destroyer= phá 壊 giả ) の lược である, などという. なお, copy commandあるいはcopy and convertの lược でccにしようとしたが, C ngôn ngữ コンパイラ ( ないしコンパイラドライバ ) のccがあったのでひとつずらしてddにした, という thuyết が lưu bố していたが, これは ngộ りであることがUNIXの khai phát giả であるデニス・リッチーThị による đầu cảo で xác định している.[1]
コマンドラインに chỉ định できるオプション
[Biên tập]Nhập xuất lực を chỉ định するオプション
- if=[file]: Tiêu chuẩn nhập lực の đại わりに, ファイル file から đọc み込む
- of=[file]: Tiêu chuẩn xuất lực の đại わりに, ファイル file へ thư き xuất す
コピーするサイズを chỉ định するオプション
- count=[blocks]: ibs バイトのブロック blocks cá phân だけ nhập lực ファイルをコピーする
Đọc み thư きの khai thủy vị trí を chỉ định するオプション
- skip=[blocks]: ibs バイトのブロック blocks cá phân だけ nhập lực ファイルの tiên đầu をスキップする
- seek=[blocks]: Xuất lực の tiên đầu にある obs バイトのブロック blocks cá phân を thư き xuất さない
1 hồi の đọc み thư きのデータサイズを chỉ định するオプション
- bs=[bytes]: Nhất độ に bytes バイトずつ đọc み込みと thư き xuất しをする
- ibs=[bytes]: Nhất độ に bytes バイトずつ đọc み込む. デフォルトは 512
- obs=[bytes]: Nhất độ に bytes バイトずつ thư き xuất す. デフォルトは 512
オンザフライのデータ変 hoán を chỉ định するオプション
- conv=[CONVERSION]
- noerror: Đọc み込みエラーが phát sinh しても継続する
- sync: Nhập lực ブロックサイズがibsに chỉ định されていないバイト sổ に mãn たないとき, パディングを hành う
Sử dụng lệ
[Biên tập]ハードディスク thượng のパーティションを, biệt のディスクにコピーする
dd if=/dev/sda2 of=/dev/sdb2 bs=4096 conv=notrunc,noerror
ハードディスク toàn thể をHoàn toàn tiêu khứする
dd if=/dev/urandom of=/dev/hda
CDをiso仮 tưởng イメージファイルに変 hoán する
dd if=/dev/cdrom of=/home/sam/myCD.iso bs=2048 conv=sync,notrunc
ハードディスクのMBRをバックアップする
dd if=/dev/sda of=/home/sam/MBR.image bs=446 count=1
Quan liên hạng mục
[Biên tập]- ddrescue:Bất lương セクタのあるディスクの tráp いを đắc ý とするデータコピー・プログラム
- パーティション
- ディスクセクタ
- データの hoàn toàn tiêu khứ
Ngoại bộ リンク
[Biên tập]- dd(1)man page ( JM Project )