Linux;ハードディスクのクローンを作成する

ハードディスクの換装時に、記録内容を丸ごとコピーしてクローンを作成する方法。

バックアップ方法

ディスクのバックアップ方法ですが、「dd」コマンドを使用します。
このコマンドですが、「ハードディスク・パーティションを0/1の信号のママ丸ごとコピー」するものです。
注意点とすれば、以下のことでしょうか。

  •  ハードディスクの容量がコピー元以上であること
  • コマンドで指定するディスクを間違えて指定した場合、データが消滅すること

バックアップ例

  • ディスクサイズは、「コピー先HDD ≧コピー元HDD」の大きさとすること
  • パーティションは、mountしないこと
  • コピー元HDDのパス、「/dev/sdb」
  • コピー先HDDのパス、/dev/sdc」

コピーするコマンド

$dd if=/dev/sdb of=/dev/sdc bs=512 conv=noerror,sync

500GBのハードディスクで4時間でした。

バックアップ用のディスクイメージ

$dd if=/dev/sdb of=./backup-disk-image.img bs=512 conv=noerror,sync

オプションコマンド

  • bs : 一度に読み書きするバイト数(省略すると512バイト)
    1K=1024, 1M=1024*1024, 1G=1024*1024*1024
  • noerror  : エラー読み飛ばし
  • sync エラー : 箇所をNUL(ゼロ)で埋める
  • bs byte size :  読込書き出すバイトサイズ

転送状況の表示

$killall -USR1 dd

ディスクの消去

復元と同じ要領で、zero埋めすれば完全フォーマットができます。

$dd if=/dev/zero of=/dev/sdc
 

 

パーティション毎にコピーする場合

  • 予め Gparted などのツールで、コピー先のパーティションを作成しておく。
  • MBRの446バイトをコピーする。(447~512までの64バイトはHDD1のパーティション情報なのでコピーしない)
    $dd if=/dev/sda of=/dev/sdb bs=446 count=1

  • システムパーティション(「システムで予約済み」)のコピー
    $dd if=/dev/sda1 of=/dev/sdb1 bs=1M conv=noerror,sync

  • ブートパーティション(「Windowsインストール領域」)のコピー
    $dd if=/dev/sda2 of=/dev/sdb2 bs=1M conv=noerror,sync

 

 

【引用】

 

linuxでディスクがフルになったときの対策

ハードディスクがいっぱいになった場合には、Linuxサーバーの各サービスが正常に稼働しない場合がある。
対策としては、容量が大きめのファイルを探して移動又は削除することで、各サービスを正常に稼働させる。

★ハードディスク使用状況の調査 df -h

df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 7.5G 5.2G 2.0G 73% /
udev 238M 4.0K 238M 1% /dev
tmpfs 99M 272K 99M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 246M 0 246M 0% /run/shm

★ディレクトリ毎の容量を確認 du -sh /*

$ sudo du -sh /*
8.7M /bin
68M /boot
4.0K /dev
7.3M /etc
2.6G /home

★容量が大きい順にソートして表示 du -s ./* | sort -n

du -s ./* | sort -n


参考サイト linuxでディスクがフルになったときの調査方法 du df

ubuntu 14.04 Sambaサーバー設定ツール

ubuntu 14.04 に Samba をインストールし、Nautilus よりファイル共有設定を行ったが、外付ハードディスクなど外部パーティションの共有設定が上手くいかない。
結論から言うと、共有対象のUbuntu/Windows同一名のユーザーについて、Sambaユーザー登録を行ったところ上手くいった。
その際に使用したSambaサーバー設定ツールはこちら。

★Sambaサーバー設定ツールの機動

# sudo system-config-samba

Sambaの共有設定を追加したり、Sambaのユーザーを追加したりできる。

★Sambaを再起動

# sudo service smbd restart


参考サイト
tiny pico tips Ubuntu : 外付HDDの共有