ddコマンドについて特徴
RHEL系(CentOS)
---
ddコマンドを利用してOSバックアップを簡単に実施できます。
※WindowsのOSバックアップもddコマンドが利用可能であれば取得可能
そのコマンドが
dd if=/dev/sdX of=/dev/sdY bs=[バイト数]
※sdX、sdYの箇所
-->OK: sda・sdbと指定
-->NG: sda1・sdb1と指定
if=コピー元のデバイス名
of=コピー先のデバイス名
bs=1回に読み書きするブロックサイズ
注意事項
デバイスのディスク容量はコピー元と合わせること
ddコマンドでOSバックアップを取る理由
1.OSデータをcpコマンドで別のファイルシステムにコピーしても
そのデバイスでOSを起動させることはできません。
それは、grub、mbr(マスターブートレコード)の設定ができて
いないからです。
2.ddコマンドでコピーすれば、それらを気にせずにOSデバイス
としてコピーができます。完全一致のすなわちクローンを作成
することができます。
ddコマンドのメリット
- OSのバックアップ(クローン)をLinux標準コマンドで
簡単に作成が可能 - OSのバックアップツールが不要
- 障害対応で一時的にOSバックアップを作成して検証に
利用すことが可能
(使い終わったらすぐに削除ができる)
コマンド実行例
dd if=/dev/sde of=/dev/sdd bs=256M
※bsオプションによりdd実行処理速度が大きく変わります。
下記、参考情報にてご確認ください
実際にddコマンドを利用したOSバックアップ(Linux)とOS起動(Linux)までの流れを紹介
※下記「3.」にてddコマンドを利用
上記、図の「補足」のようにサーバを起動する場合
「3.」でコピー後に/dev/sdd1を仮に「/mnt」でマウントして
「/mnt/etc/fstab」ファイルで不要なマウントポイントを「#」でコメントアウト
をしてからご利用ください。
※「/etc/fstab」ファイルと間違わないように注意
fstabの修正を実施しておかないと、メンテナンスモードで起動してきたり
起動に時間がかかったりして、正しくOSが起動しない場合があります。
実際の画面で確認
1.コピー元とディスク容量を合わせてデバイスを準備
コピー元(sde)、コピー先(sdd)となりディスク容量が同じ
※上記「3.」の詳細を解説
2.ddコマンドを実行
「if=」がコピー元(sde)、「of=」がコピー先(sdd)
3.ファイルシステムを含めてコピーが完成
参考情報(bsオプションのチューニングによるddコマンド実行速度)
bsオプション誤ると実行速度が遅くなります。
また、bsの値のメモリを最低でも利用されてしまうのでメモリの空き状況
にも注意してチューニングしてください。
計測環境
CPU:インテル(i7-9750H) 6コア/12スレッド/2.60GHz
メモリ:32G
SSD:512G NVMeSSD
1位
[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=256M
10737418240 バイト (11 GB) コピーされました、 15.2055 秒、 706 MB/秒
2位
[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=1M
10737418240 バイト (11 GB) コピーされました、 15.8076 秒、 679 MB/秒
3位
[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=32M
10737418240 バイト (11 GB) コピーされました、 15.4216 秒、 696 MB/秒
4位
[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=1024M
10737418240 バイト (11 GB) コピーされました、 16.5587 秒、 648 MB/秒
5位
[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd
10737418240 バイト (11 GB) コピーされました、 227.332 秒、 47.2 MB/秒
コメント