コンパイルされたカーネルを削除するにはどうすればよいですか?


21

ラップトップLenovo E455に14.10をインストールしました。

そして、次の順序でコンパイルされたカーネル3.19

14.10は私のものと一緒に働きたくないように思えたので(スローモーションを見た)

http://www.kernel.org/から現在のカーネルをダウンロードしました

make oldconfig
make
sudo make install

最後に、新しいカーネルでの起動に失敗しました。

コンパイルされたカーネルをgrubから削除して回復するにはどうすればよいですか?


これを削除するためにこれまでに何を試みましたか、どこで問題が発生しましたか?警告またはエラーメッセージはどこにありますか?
デビッドフォースター

ご協力ありがとうございます。回復し、Ubuntu 15.XXを待っています。
オーミーガール

回答:


33

簡単な方法:

debianメソッドを使用してコンパイルした場合、インストールされたカーネルは次のように表示されます。

dpkg --list | grep kernel-image

そして、次を使用して目的のカーネルパッケージをアンインストールしますapt-get

sudo apt-get remove kernel-image-your-kernel-image

難しい方法:

でコンパイルしてインストールした場合make install、次のエントリを手動で削除する必要があります。

/boot/vmlinuz*KERNEL-VERSION*
/boot/initrd*KERNEL-VERSION*
/boot/System-map*KERNEL-VERSION*
/boot/config-*KERNEL-VERSION*
/lib/modules/*KERNEL-VERSION*/
/var/lib/initramfs/*KERNEL-VERSION*/

次に、grub設定を更新します。

sudo update-grub2

1
/ var / lib / initramfs /ディレクトリはありませんが、システムにコンパイルされたカーネルがないためですか?
ジャーノ

1
/var/lib/initramfs-tools/*KERNEL-VERSION*Debianで
Csaba Toth

1
含む新しいカーネル(2018年)の編集を考えてみます/boot/abi*KERNEL-VERSION*/boot/retpoline*KERNEL-VERSION*
WinEunuuchs2Unix

9

ここでの jarnoの質問のおかげで、Mudit Kapilの答えを実装する方法を考え出しました。

カーネルを削除するために必要なのはすべてのファイルとディレクトリを削除することだけであり、それらのファイルとディレクトリはすべてパスにカーネルリリース文字列があるため、カーネルリリース文字列を持つlocateすべてのファイルを見つけて削除することができますカーネルを削除します。

(最初にuname -r現在実行中のカーネルの名前を確認し、削除しないようにしてください)

というカーネルを削除するとし4.4.6-my-kernelます。を使用すると、既存のすべてのファイルとディレクトリを見つけることができます(すべての名前付きディレクトリにファイルをリストすることなく)locate -b -e 4.4.6-my-kernel。追加rm -rでこれには、xargsあなたがあまりにもファイルを削除することができます。追加-pしてxargs表示ターゲットを作成し、実行する前に確認を求めます

locate -b -e 4.4.6-my-kernel | xargs -p sudo rm -r

次に、表示されているターゲットでy実行するためrm -rに入力します。ディレクトリ以外のファイルは再帰的に削除しようとしているために存在しないと文句を言いますが(-r)、それでも問題ありません。それらはディレクトリとその内容とともに削除されます。完了したら、実行するだけです

sudo update-grub

et voila。


+1これは、受け入れられた回答よりも多くのファイルをキャッチするためです。たとえば、すべてのdkmsもの。rm削除されるすべてのものを見るためだけに、オプションなしで最初に実行します。
WinEunuuchs2Unix

現在実行中のカーネルを削除しないのはなぜですか?それが削除したいカーネルの場合はどうなりますか?最初に別のカーネルでマシンを再起動せずに、現在実行中のカーネルを削除することは可能ですか?
リランフナロ

1
@LiranFunaroはい、可能です。回答を参照してください実行中のカーネルをコマンドのみでアンインストールするにはどうすればよいですか?それはおそらく良いアイデアではない理由も説明
Zanna
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.