カテゴリ: Linux 更新日: 2026/04/17

Linuxのddコマンドとは?ディスクコピー・バックアップ方法を初心者向けに徹底解説

Linuxのddコマンドとは?ディスクコピーを行う方法
Linuxのddコマンドとは?ディスクコピーを行う方法

先生と生徒の会話形式で理解しよう

生徒

「Linuxでディスクのコピーやバックアップってどうやるんですか?」

先生

「Linuxではddコマンドを使うと、ディスクやUSBメモリを丸ごとコピーできますよ。」

生徒

「丸ごとコピーって、ファイルだけじゃなくて全部ですか?」

先生

「そうです。ファイル構成やブート情報も含めて完全コピーできます。バックアップや復元にとても便利です。」

Linuxを初めて学ぶ人や、 OS・プロセス・メモリ管理・仮想マシン・コンテナの仕組みを図解で理解したい人におすすめの定番書籍です。

試して理解 Linuxのしくみを見る

※ Amazonアソシエイト広告リンク

1. ddコマンドとは?

1. ddコマンドとは?
1. ddコマンドとは?

ddコマンドは、Linuxでディスクやファイルをそのままコピーするためのコマンドです。主にディスクコピー、バックアップ、USBメモリの作成などで使われます。

ddはdd(ディーディー)と読みます。英語では「data duplicator」の略とも言われており、データを複製する役割を持っています。

通常のコピーコマンドであるcpとは違い、ファイル単位ではなくデータの塊ごとコピーするのが特徴です。そのため、OSのイメージ作成やディスクの完全バックアップに向いています。

2. ddコマンドの基本構文

2. ddコマンドの基本構文
2. ddコマンドの基本構文

ddコマンドは少し独特な書き方をします。基本構文は以下の通りです。


dd if=入力元 of=出力先

主なオプションは以下の通りです。

  • if 入力ファイルやデバイス
  • of 出力ファイルやデバイス
  • bs ブロックサイズ
  • count コピーする回数

このように、ddコマンドはLinuxの中でも低レベルな操作ができるコマンドです。

3. ファイルをコピーする基本例

3. ファイルをコピーする基本例
3. ファイルをコピーする基本例

まずは簡単にファイルをコピーする例です。


dd if=test.txt of=copy.txt
コピー完了

このコマンドでは、test.txtの内容をcopy.txtとしてコピーします。見た目は簡単ですが、内部ではバイナリ単位でコピーされています。

初心者の方は、まずこのようなシンプルな使い方から覚えると理解しやすいです。

4. ディスクやUSBメモリをコピーする方法

4. ディスクやUSBメモリをコピーする方法
4. ディスクやUSBメモリをコピーする方法

ddコマンドの本領はディスクコピーです。たとえばUSBメモリを丸ごとコピーする場合は以下のようにします。


dd if=/dev/sdb of=/dev/sdc bs=4M
コピー中...

この例では、/dev/sdbの内容を/dev/sdcにコピーしています。デバイスファイルはLinuxでディスクを表す特別なファイルです。

この操作を行うと、パーティションやファイルシステムも含めて完全にコピーされます。

ただし、間違ったデバイスを指定するとデータが消えるため、慎重に確認してください。

5. イメージファイルを作成する方法

5. イメージファイルを作成する方法
5. イメージファイルを作成する方法

ディスクの内容をファイルとして保存することもできます。これをイメージファイルと呼びます。


dd if=/dev/sdb of=backup.img bs=4M
バックアップ作成中...

このコマンドで、USBメモリの内容をbackup.imgとして保存できます。

この方法は、OSのバックアップや障害時の復元に非常に役立ちます。

6. イメージファイルから復元する方法

6. イメージファイルから復元する方法
6. イメージファイルから復元する方法

作成したイメージファイルは、別のディスクに書き戻すことができます。


dd if=backup.img of=/dev/sdc bs=4M
復元中...

これにより、バックアップした状態をそのまま復元できます。

OSの再インストールや環境移行にも使える便利な方法です。

7. ddコマンドの注意点と危険性

7. ddコマンドの注意点と危険性
7. ddコマンドの注意点と危険性

ddコマンドは非常に強力ですが、その分危険性もあります。

  • 間違ったディスクを指定するとデータが消える
  • 確認メッセージが表示されない
  • 元に戻せない操作が多い

そのため、実行前には必ずデバイス名を確認しましょう。

lsblkコマンドなどで接続されているディスクを確認するのがおすすめです。


lsblk
sda   100G
sdb    16G
sdc    16G

このようにして、どのデバイスが対象かを確認してから実行してください。

8. ddコマンドが使われる場面

8. ddコマンドが使われる場面
8. ddコマンドが使われる場面

ddコマンドは以下のような場面でよく使われます。

  • Linuxのバックアップ作成
  • ディスククローンの作成
  • USBブートメディアの作成
  • データの完全消去

特にLinuxの運用やサーバー管理では必須のコマンドです。

初心者の方でも基本を理解しておくと、トラブル対応の幅が大きく広がります。

LPICレベル1の合格を目指している人や、 Linuxコマンド・シェル・ネットワーク・セキュリティの試験対策を効率よく進めたい人におすすめの定番問題集です。

Linux教科書 LPICレベル1 スピードマスター問題集を見る

※ Amazonアソシエイト広告リンク

まとめ

まとめ
まとめ

Linuxのddコマンドはディスクコピーやバックアップを行ううえで非常に重要なコマンドであり、ファイル単位ではなくデータをそのまま複製するという特徴を持っています。通常のcpコマンドとは異なり、ファイルシステムやブート情報まで含めた完全なコピーが可能であるため、システム移行や障害時の復旧、USBメモリの複製など幅広い用途で活用されています。

特にLinux環境におけるバックアップ方法としては、ddコマンドによるイメージファイル作成が基本となります。ディスク全体をイメージファイルとして保存することで、万が一のトラブル時にも同じ状態へ復元することができるため、サーバー運用や開発環境の保護において非常に有効です。また、ディスクコピーやクローン作成の場面でも活躍し、OSのインストール状態をそのまま別のディスクへ移行することも可能です。

ddコマンドの基本構文はシンプルですが、ifとofの指定を間違えると重大なデータ消失につながるため注意が必要です。Linux初心者にとっては少し難しく感じるかもしれませんが、lsblkコマンドなどでデバイスを確認しながら慎重に操作することで、安全に利用することができます。正しい知識と手順を身につけることで、Linuxのディスク管理スキルを大きく向上させることができます。

ddコマンドの重要ポイント整理

  • ディスクやファイルを丸ごとコピーできる
  • バックアップや復元に最適
  • イメージファイルの作成と書き戻しが可能
  • 誤操作によるデータ消失に注意が必要

実践的なバックアップと復元の例


dd if=/dev/sdb of=backup.img bs=4M
バックアップ作成中...

dd if=backup.img of=/dev/sdc bs=4M
復元中...

上記のように、ddコマンドを使えばLinux環境におけるディスクバックアップと復元作業を簡単に実行できます。特にサーバー運用や開発環境では、定期的なバックアップが重要であり、ddコマンドはその中核となる存在です。

先生と生徒の振り返り会話

生徒

「ddコマンドって最初は難しそうに見えましたけど、仕組みが分かると便利ですね。」

先生

「そうですね。Linuxのディスクコピーやバックアップでは非常によく使われる基本コマンドです。」

生徒

「ファイルだけじゃなくて、ディスク全体をコピーできるのがすごいと思いました。」

先生

「その通りです。ブート情報やパーティションも含めてコピーできるので、環境をそのまま再現できます。」

生徒

「でも間違えると危険なんですよね。」

先生

「はい。特にifとofを逆にすると大切なデータを消してしまう可能性があります。必ず事前に確認する習慣をつけましょう。」

生徒

「lsblkで確認するのが大事なんですね。」

先生

「その通りです。Linuxコマンドは便利ですが、正しく理解して使うことが重要です。」

生徒

「これからはバックアップやディスクコピーにも挑戦してみます。」

先生

「ぜひ実践してみてください。ddコマンドを使いこなせれば、Linuxの管理スキルは大きく向上しますよ。」

カテゴリの一覧へ
新着記事
New1
Linux
Linuxの/proc/meminfoとは?メモリ使用状況を確認する仕組みを初心者向けに徹底解説
新規投稿
New2
情報セキュリティマネジメント試験
RATとは?リモートアクセス型ウイルスの仕組みと対策を初心者向けに解説
更新記事
New3
基本情報技術者試験
ビッグデータとは?初心者でもわかる大量データ活用の基本と活用事例
更新記事
New4
基本情報技術者試験
クライアントとは?初心者でもわかるコンピュータの基本用語をやさしく解説
更新記事
人気記事
No.1
Java&Spring記事人気No1
基本情報技術者試験
NIC
305
NICとは何か?初心者にもわかるネットワークインターフェースカードの基本
No.2
Java&Spring記事人気No2
基本情報技術者試験
セグメントとは?ネットワークの基本単位を初心者向けにやさしく解説
No.3
Java&Spring記事人気No3
基本情報技術者試験
16進数とは?初心者にもわかる意味・読み方・変換方法をやさしく解説!
No.4
Java&Spring記事人気No4
基本情報技術者試験
DHCP
236
DHCPとは?初心者でもわかるIPアドレス自動割り当ての仕組み
No.5
Java&Spring記事人気No5
基本情報技術者試験
SMTP
175
SMTPとは?初心者でもわかるメール送信の仕組みとプロトコルをやさしく解説!
No.6
Java&Spring記事人気No6
基本情報技術者試験
マイクロ(μ)とは?初心者にもわかる単位の意味と使い方をやさしく解説
No.7
Java&Spring記事人気No7
基本情報技術者試験
IMAP
162
IMAPとは?初心者でもわかるメール受信プロトコルの仕組みと使い方
No.8
Java&Spring記事人気No8
基本情報技術者試験
CPU
155
CPUとは何かを完全解説!初心者でもわかるコンピュータの頭脳の仕組み