DVDまたはUSBから起動せずに、接続されている(マウントされていない)ディスクにUbuntuをインストールしたい。目標は、Ubuntuを外部ディスクにインストールし、プラグを抜き、他のコンピューターにプラグインして実行することです。
私はそれが20分などかかることを知っています。私は単にそれを再起動する必要なく、実行中のシステムからそれをしたいです。
私のオプションは何ですか?
編集:より明確にするために、私はこのシナリオを持っています:
そのため、USBキーを使用したソリューションや自分のシステムをコピーするソリューションは、必要なものではありません。
Ubuntuマシンを使用している場合、実行中のシステムを外付けハードドライブにコピーするだけです。
外付けハードドライブが既にパーティション分割されていると仮定しましょう。この例では、/と/ homeの2つのパーティションを使用します。
$ Sudo mkdir -p /target
$ Sudo mount /media/external-hdd/main /target
$ Sudo sync
$ Sudo cp -ax / /target
$ Sudo mount /media/external-hdd/home /target/home
$ Sudo cp -ax /home /target/home
cp -ax
は異なるファイルシステムを横断せず、アーカイブされます(権限を保持、シンボリックリンクをたどらないなど)。
次に、ターゲットディスクのgrub設定とfstabを更新する必要があります。 chroot
を使用できますが、前に必要なものは次のとおりです。
$ Sudo mount -o bind /sys /target/sys
$ Sudo mount -o bind /proc /target/proc
$ Sudo mount -o bind /dev /target/dev
これで、chrootの準備ができました。
$ Sudo chroot /target
# (now you are in the external HD as root)
ここで、fstabとgrubのUUIDを更新する必要があります。 UUIDを取得するには、次を実行できます。
# blkid
次に、/ etc/fstabで、blkid
で取得した適切なIDのUUIDを置き換えます。
最後のステップは、ブート用の構成を更新し、ブートローダーを外部ハードドライブにインストールすることです。私の場合、grubを使用しているので、/boot/grub/menu.lst
を編集しています。そこで、# kopt=root=UUID=... ro
で始まる行を置き換え、UUIDの内容をルートファイルシステムがあるパーティションに置き換える必要があります。
# grub-install /device/name
# update-grub
/ device/nameは外部hddです。
その後、chrootを終了してデバイスをアンマウントできます。
# ^D
$ Sudo umount /target/sys
$ Sudo umount /target/proc
$ Sudo umount /target/dev
$ Sudo umount /target/home
$ Sudo umount /target/
そして、ディスクを使用する準備ができているはずです。一度起動すると、正しくマウント解除されなかったため、fsck
が実行される可能性があります(コンテンツをライブでコピーしました)。
そのためにdebootstrap
を使用できます。これはまさに必要なものです。 このリンク をご覧ください。
ISOイメージがある場合は、この記事に記載されている2つのツールのいずれかを使用して、ライブシステムで起動可能なUSBを作成できます。
https://wiki.ubuntu.com/LiveUsbPendrivePersistent
ユニティにUSBを入力するだけで、そのようなディスクを作成するプログラムが表示されます。