Ubuntuのシステムディスクを交換

ってか、変更なんだけどね。

自鯖のAtom 330 のマザボ、D945GCLF2にPT2を入れるには、今刺さっているSATA×4のPCIカードを抜かなければならない。

それには、IDEのシステムディスク、SATAのデータディスク×4、IDEの光学ドライブの構成を変更する必要がある。

D945GCLF2には、SATA×2とIDE×1しかない。

っつーことで、光学ドライブは外付けにしちゃうとして、データディスクのまだ使っていないやつをシステムディスクに変更して、「SATAに2台、IDEにアダプタかまして2台」のディスク構成に変更するなり。

 

まずは、システムディスクのバックアップを作成する。

  1. UbuntuのCD-ROMから起動する。ここでは、日本語Remixのデスクトップ版を使う。
  2. dumpとrestoreをインストールする
    1. /etc/apt/source.list に 「dev http://jp.archive.ubuntu.com/ubuntu [OSのバージョン] universe」、 「dev-src http://jp.archive.ubuntu.com/ubuntu [OSのバージョン] universe」を追記
    2. sudo apt-get update
    3. sudo apt-get install dump
  3. バックアップ実行
    1. sudo dump -0 -u -j /dev/[ルートのパーティション] -f [バックアップファイルのパス]

次に新しいシステムディスクの準備

  1. GUIのディスク管理ツールで新しいディスクのパーティションを作成して、フォーマットする。
  2. ルートパーティションは起動ディスクに指定しておく。
  3. ルートを40GB、スワップを実メモリの2倍、残りはデータに使うことにした。

そして、リストア

  1. 新しいディスクのルートパーティションをマウントして、そこに移動。
  2. sudo restore -rf [バックアップファイルのパス]
  3. すると、カレントディレクトリにバックアップがリストアされる。

新しく作ったパーティションのUUIDを調べて、リストアしたファイルの内、起動、マウントに必要なファイルを編集する。

  1. sudo ls -l /dev/disk/by-uuid で新しく作ったパーティションのUUIDを調べる。
  2. /etc/fstab の古いUUIDを新しいUUIDに変更する。
  3. /boot/grub/menu.lst の古いUUIDの部分を新しいルートパーティションのUUIDに変更する。
  4. /etc/initramfs-tools/conf.d/resume のスワップパーティションの指定(あるいは古いUUID)を新しいものに変更する。

MBRの書き込み(GRUBのインストール)

  1. CD-ROMから再起動して、最初の起動メニューでF6を押して起動オプションを変更する。
  2. 「boot=casper」を「root=/dev/[ルートパーティション]」に変更して起動。
  3. 起動したら、sudo grub-install /dev/[新しいディスク] ←パーティションではない

これで新しいディスクから起動できればOK。

だめだったら、/etc/fstabや/boot/grub/menu.lstの記述、UUIDをチェックする。

 

追記:2011/02/11

Ubuntuを10.10にアップグレードしたら、UUIDが合ってるのに起動しなくなったorz

しゃーないので、/boot/grub/menu.lstのuuid=~の行を削除、root=uuid~のところをroot=/dev/sda1に変更して起動した。