古いUbuntuカーネルにロールバックする方法は? (Ubuntu 16.04実行)

古いUbuntuカーネルにロールバックする方法は? (Ubuntu 16.04実行)

ホスティング会社にVPSサーバーがあり、SSH / rootアクセス権があります。最近、カーネルを最新バージョン(4.18.5-041805-generic)にアップグレードしてみました。私は4.4.0-169を実行していて、今アップグレードする時だと思いました。

だから、次のコマンドを実行しました。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

結局のところ、カーネルのバージョンは変わりません。だから検索した後、次のガイドラインを見つけました。

https://www.tecmint.com/upgrade-kernel-in-ubuntu/

指示に従って最新のカーネルバージョンをインストールしてみました。最後に設定されていないというエラーが発生しましたが、「uname -rs」を実行すると、新しいカーネルが一覧表示されました。

~$ uname -rs
Linux 4.18.5-041805-generic

ただし、他のすべての項目が再更新されたことを確認しようとすると、依存関係エラーが発生します。


~$ sudo apt-get update && sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 linux-headers-4.19.0-041900rc1-generic : Depends: libssl1.1 (>= 1.1.0) but it is not installable
 linux-image-unsigned-4.19.0-041900rc1-generic : Depends: linux-modules-4.19.0-041900rc1-generic but it is not installable
E: Unmet dependencies. Try using -f.

だから私は以前の4.4.0-169-genericカーネルに戻りたいのですが、どうすればいいのかわかりません。検索で見つかったすべての指示には、キーボードショートカットを使用してグラブを停止し、別のカーネルを選択するように指示しました。

問題は、VPSクラウドサーバーで実行されており、サーバーに接続されている物理キーボードがないことです。サーバーにSSHを接続しなければ、すべての操作を実行できます。

依存関係の問題を引き起こす新しいカーネルを削除し、古いカーネルでブートを再開するにはどうすればよいですか?

ベストアンサー1

例を見てください。この回答、端末で両方のコアの起動順序を変更できます。この回答で大いに賛成されたコメントは、信頼性を高めるために数値インデックスの代わりにカーネルのフルネームを使用することを示唆しています。

簡単に言うと:

  1. sudo view /boot/grub/grub.cfgそして、古いカーネルのフルネームをコピーします。
  2. sudo vi /etc/default/grub次に、一番上からGRUB_DEFAULT=0 読み取りに変更しGRUB_DEFAULT=your_kernel_name_from_grub.cfg、変更を保存します(安全のために元のファイルのコピーを保持することをお勧めします)。
  3. sudo update-grub

その後、再起動すると前のカーネルに戻ります。迅速な修正が必要な場合は、in(および再起動)GRUB_DEFAULT=0に変更するだけですが、上記のプロセスはそれほど脆弱ではありません。GRUB_DEFAULT=1/etc/default/grubsudo update-grub

おすすめ記事