MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 07/19 おすすめ情報に 『 【資格取得者速報】 Aさん 「 Microsoft Security, Compliance, and Identity Fundamentals」 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


Linux ddコマンド
profile-img
投稿者: fujioka090...さん
投稿日:2023/04/17 11:54
更新日:
like-img
分類
技術
テクノロジー
Unix系サーバ
キャリア
運用・保守
投稿内容

今回はLinuxで使用されている「dd」コマンドについて説明しようと思います。

「dd」コマンドはファイルやデバイスのコピーをするために使用されます。

Linuxでコピーコマンドというと「cp」コマンドの方が有名だと思いますが、「dd」コマンドはファイルだけでなく、デバイスのコピーも可能です。

なので、ハードディスクドライブすべてをコピーして、バックアップを取るために使用されることもあります。

また、「dd」コマンドはブロックサイズでのコピーを可能としているため、部分的にデバイスのデータをコピーしたり、書き込んだりするということも可能です。

「dd」コマンドの書式及びオプション一覧を下記に示します。


dd [オプション]


オプション一覧

if=ファイル・・・ファイルから読み出す。デバイスファイルも指定可能。

of=ファイル・・・ファイルへ書き込む。デバイスファイルも指定可能。

bs=バイト数・・・1回に読み書きするブロックサイズ。(バイト数)

ibs=バイト数・・・1回当たりの入力ブロックサイズ。

obs=バイト数・・・1回当たりの出力ブロックサイズ。

count=個数・・・ibsで指定したサイズのブロックを「個数」分だけコピーする。

skip=ブロック数・・・ibsで指定したサイズを「ブロック数」分、先頭からスキップする。

seek=ブロック数・・・obsで指定したサイズを「ブロック数」分、先頭からスキップする。


基本的には「dd if=ファイル名/デバイス名 of=ファイル名/デバイス名」の形式を覚えておけばバックアップを取ることができます。

デバイスの内容をOSごとクローンコピーしたい場合、例えば「dd if=/dev/sda of=/dev/sdb」といったように入力・実行すれば/dev/sdbとしてsdaのクローンコピーを取ることができます。

あるいは「dd if=/dev/sda of=適当なファイル名」とすることでバックアップファイルを作成することが可能です。

また、「dd」コマンドはブロックサイズを指定してコピーの入出力量を調整することが可能なので、ハードディスクのMBRのみバックアップ作成することも可能です。

MBRとはOSを起動する際に読み込まれるブートローダが保存されているハードディスクの先頭512KBのことです。

MBRはブートストラップローダやパーティションテーブル等のデータが格納されています。

「dd」コマンドでこの512KBを「dd bs=512 if=/dev/sda of=適当なファイル名」と指定することによって、MBRだけを取り出してバックアップを取ることが可能となります。


今回は汎用性の高いコピーコマンドである「dd」コマンドについて説明させていただきました。


参考資料

【 dd 】コマンド――ブロック単位でファイルをコピー、変換する:Linux基本コマンドTips(163) - @IT (itmedia.co.jp)

@IT:MBR(マスターブートレコード)をバックアップするには (itmedia.co.jp)

コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3