Linux OS を内部から置き換える方法

Linux OS を内部から置き換える方法

私は Nebula サーバーを使用していますが、そこからはカーネル 4.4.0-210-generic の Ubuntu 16.04 のみをインストールできます。

インスタンスに新しいバージョンの Linux をインストールしたいと考えています。

仮想化

Ubuntu 内から (libvirt を使用して) 仮想マシンを作成しようとしましたが、次のメッセージが表示されます:

ERROR Host does not support any virtualization options

しかし、確認してみるとlscpu次のようになります:

Virtualisation:        VT-x

grubとインストール可能なISOを備えた別のディスクを使用する

そこで、オペレーティング システム全体を手動で置き換えてみようと考えました。

インスタンス用に新しいドライブを作成する権限があります。

そこで16GBのドライブを追加しました

$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   16G  0 disk 
├─sda1   8:1    0  2,9G  0 part 
└─sda2   8:2    0  3,9M  0 part 
sr0     11:0    1  364K  0 rom  
vda    253:0    0  500G  0 disk 
└─vda1 253:1    0  500G  0 part /

そしてUbuntuディスクにして

dd if=ubuntu20.04.iso of=/dev/sda

ただし、起動するドライブを変更する権限がありません。

  • 私の「古い」OSドライブのIDは0です
  • 私の新しいUbuntu ISOドライブのIDは2です

Nebula の設定は ID 0 から起動するようにハードコードされており、変更できません。

ディレクトリ上のシステムを確認した/bootところ、ブート システムは GRUB であることがわかりました。

そこでバージョンを確認しました

grub-install --version

そしてそれはGrub2のようだ

grub-install (GRUB) 2.02~beta2-36ubuntu3.32

grub に ubuntu20.04 ディスクを起動して、id0 という名前のディスクにインストールするように指示することは可能でしょうかvda?

システム内のファイルを置き換えるだけで OS を置き換えます。

インストーラーを実行できない場合は、カーネルとすべてのオペレーティング システム ファイルを手動で置き換えることを考えていました。ただし、現在使用しているシステムのファイルを置き換えると、システムがクラッシュすることは間違いありません。ただし、正しい順序でそれを実行する方法があるかもしれません。

答え1

Ubuntuを新しいバージョンにアップグレードするには、コマンドラインから実行できます。

主なタスクは、sudo apt install update-manager-coreアップデータをインストールすることです。その後sudo do-release-upgrade

見るhttps://www.cyberciti.biz/faq/upgrade-ubuntu-18-04-to-20-04-lts-using-command-line/

答え2

(hdX, msdosY)他の回答で示唆されているようにUbuntuのインストールを更新できない場合は、ディスク識別子(またはの形式で)を取得し、 [1](hdX,gptY)にメニューエントリを手動で作成することで、GRUBをインストールディスクに向けることができます。/boot/grub/grub-cfg

menuentry "New Ubuntu Install Disk" {
          search --set=root --label GRUB --hint hdX,msdosY
          linux /path/to/vmlinuz #likely in /boot/
          initrd /path/to/initrd #also likely in /boot/
}

また、おそらくあなたが思っている以上にブート順序を制御できるでしょうefibootmgr:(ドキュメント) を使用して、ブート デバイスを手動で変更できます。

あるいは、再起動して GRUB コマンドラインを手動で入力し ( を使用c)、そこからインストーラを起動することもできます (ただし、これは 1 回限りの作業です)。その方法については、ここ

[1]https://www.gnu.org/software/grub/manual/grub/grub.html#Multi_002dboot-manual-config

関連情報