HDDパーティション の クローン を USBメモリー に作成する
HDDパーティションにインストールしている OSを ddコマンドを使って USBメモリーに ストレージ クローニングした。用途はノートPCを使って Linux OSをプレゼンするためである。
このページは OSの詳細やコマンドの意味など初歩的な説明や解説を省略した。言わば管理人のためのメモ、備忘録である。故に、意味を理解しないままのコマンド実行は厳に慎むべし。(2020年5月)
経緯
サブPCにインストールしている Gmac OS を数年ぶりに起動してみたら Ubuntu 16.04 LTS へのアップグレードのメッセージが表示された。
既に E.O.L(End Of Life)な OSのアップグレード であり不安もあったが、結果的に上手くいったため今回のクローンニグに至った。
作業環境
PC・・・サブPC(自作機)
OS・・・Ubuntu 16.04 LTS
GRUBインストール用・・・Super Grub2 Disk(ブータブルUSBメモリー)
作業内容
クローン元
・第2HDDの第2パーティション・15GB・・・/dev/sdb2
・OS・・・Gmac OS 10.04(Ubuntu 16.04 LTS)
クローン先
・USBメモリーの第1パーティション(15GB|未設定 49GB)・・・/dev/sde1
・SanDisk Extreme USB 3.0 64GB
・ファイルシステム・・・ext4
コマンド
・HDDパーテイションのアンマウント
GNOME-Terminal : $ sudo unmount /dev/sdb2
・USBメモリーのアンマウント
$ sudo unmount /dev/sde1
・OSパーテイションをコピー
$ sudo dd if=/dev/sdb2 of=/dev/sde1 bs=64K conv=noerror,sync status=progress
bs= 値 を大きくすれば時間は短くなるがエラー率が上がる
dd commad manual
reference|dd - convert and copy a file
reference|dd(1) - Linux man page
“
conv=CONVS
convert the file as per the comma separated symbol list
(カンマで区切られたシンボルリストに従ってファイルを変換する)
sync
pad every input block with NULs to ibs-size; when used with block or unblock, pad with spaces rather than NULs
(すべての入力ブロックを NULs で ibs-size にパッドする; block または unblock で使用する場合は NULs ではなく空白でパッドする)(パッドする・・・敷き詰める、埋める)
ibs-size
ibs=BYTES
read BYTES bytes at a time(一度に読み込む バイト数)
noerror
continue after read errors(読取りエラーがあっても続ける)
bs=BYTES
read and write up to BYTES bytes at a time (default: 512); overrides ibs and obs
一度にBYTESバイトまでの読み書きが可能 (デフォルト: 512バイト|64K・・・64キロバイト)
status=LEVEL
The LEVEL of information to print to stderr; 'none' suppresses everything but error messages, 'noxfer' suppresses the final transfer statistics, 'progress' shows periodic transfer statistics.
('none' はエラーメッセージ以外の情報を抑制し、'noxfer' は最終的な転送統計情報を抑制し、'progress' は定期的な転送統計情報を表示する)
”
USBメモリー の MBR に GRUB をインストール
・クローニングした OSを Super Grub2 Disk を使って起動する
・OS上から次のコマンドで GRUBインストール
$ sudo grub-install --force /dev/sde
以上で ブータブルなクローン USBメモリーの完成。