先日、ブートパーティションがほぼいっぱいになっているか、スペースが残っていないという警告が表示されました。はい、私は別のブートパーティションを持っていますが、最近はそうする人はあまりいないと思います。
このようなエラーを目にしたのはこれが初めてで、混乱しました。現在、Ubuntu(またはUbuntuベースのディストリビューション)のスペースを解放する方法はいくつかありますが、この場合、すべてが役立つわけではありません。
これが、/bootパーティションのスペースを解放するために実行した手順について書くことにした理由です。
Ubuntuの/bootパーティションのスペースを解放します(ブートパーティションのスペースが不足している場合)
ソリューションを注意深く読み、状況に最も適したソリューションに従うことをお勧めします。簡単ですが、本番システムでこれらの一部を実行する場合は注意が必要です。
方法1:aptautoremoveを使用する
これを行うのに端末の専門家である必要はありません。これは1つのコマンドであり、未使用のカーネルを削除して/bootパーティションのスペースを解放します。
次のように入力するだけです:
sudo apt autoremove
これにより、未使用のカーネルが削除されるだけでなく、インストールされているツールで不要または不要な依存関係も削除されます。
コマンドを入力すると、削除されるものが一覧表示され、アクションを確認するだけで済みます。興味がある場合は、注意深く調べて、実際に何が削除されるかを確認できます。
外観は次のとおりです。
Yを押す必要があります 続行します。
この方法は、スペースが少し残っていて警告が表示された場合にのみ機能することに注意してください。ただし、/ bootパーティションがいっぱいになると、APTが機能しない場合もあります。
次の方法では、GUIとターミナルを使用して、古いカーネルを削除してスペースを解放する2つの異なる方法を紹介します。
方法2:未使用のカーネルを手動で削除する(apt autoremoveが機能しなかった場合)
古いカーネルを削除してスペースを解放する前に、現在アクティブなカーネルを特定し、それを削除しないようにする必要があります。
カーネルのバージョンを確認するには、ターミナルで次のコマンドを入力します。
uname -r
unameコマンドは通常、Linuxシステム情報を取得するために使用されます。ここで、このコマンドは、現在使用されているLinuxカーネルを表示します。次のようになります:
これで、現在のLinuxカーネルがわかったので、このバージョンと一致しないカーネルを削除する必要があります。誤って削除しないように、どこかに書き留めておく必要があります。
次に、それを削除するには、ターミナルまたはGUIのいずれかを利用できます。
警告!
カーネルを削除するときは特に注意してください。古いカーネルのみを特定して削除します。現在使用しているカーネルは削除しないでください。そうしないと、システムが壊れてしまいます。
GUIツールを使用して古いLinuxカーネルを削除する
SynapticPackageManagerまたはStacerなどのツールを使用して開始できます。個人的には、aptが壊れた完全な/ bootパーティションに遭遇したとき、Stacerを使用して古いカーネルを取り除きました。それでは、それがどのように見えるかをお見せしましょう。
まず、「 Stacer」を起動する必要があります 」をクリックしてから、下のスクリーンショットに示すようにパッケージアンインストーラーに移動します。
ここで、「画像」を検索します 」と表示され、お持ちのLinuxカーネルのイメージが見つかります。現在のカーネルイメージではなく、古いカーネルバージョンを削除する必要があります。
上のスクリーンショットで私の場合は現在のカーネルと古いカーネルを指摘したので、システムのカーネルバージョンに注意する必要があります。
他に何も削除する必要はありません。古いカーネルバージョンのものだけを削除してください。
同様に、「ヘッダー」を検索するだけです 」をパッケージのリストに追加し、以下に示すように古いものを削除します。
警告するために、「linux-headers-generic」を削除したくない 。バージョン番号が付いているものだけに注目してください。
これで完了です。aptが再び機能し、/bootパーティションからスペースを解放できました。同様に、これは、使い慣れた他のパッケージマネージャーを使用して行うことができます。
コマンドラインを使用して古いカーネルを削除する
同じことですが、端末を使用するだけです。したがって、GUIを使用するオプションがない場合(リモートマシン/サーバーの場合)、または端末に慣れている場合は、以下の手順に従ってください。
まず、以下のコマンドを使用してインストールされているすべてのカーネルを一覧表示します。
ls -l /boot
次のようになります:
「古い」と記載されているもの 」または現在のカーネルバージョンと一致しないものは、削除できる未使用のカーネルです。
これで、 rmを使用できます 以下のコマンド(それぞれに1つのコマンド)を使用して、ブートパーティションから特定のカーネルを削除するコマンド:
sudo rm /boot/vmlinuz-5.4.0-7634-generic
システムのバージョンを必ず確認してください。システムによって異なる場合があります。
未使用のカーネルがたくさんある場合、これには時間がかかります。したがって、次のコマンドを使用して複数のカーネルを削除することもできます。
sudo rm /boot/*-5.4.0-{7634}-*
明確にするために、カーネルバージョンの最後の部分/コードをコンマで区切って記述し、それらをすべて一度に削除する必要があります。
5.4.0-7634-genericと5.4.0-7624の2つの古いカーネルがあるとすると、コマンドは次のようになります。
sudo rm /boot/*-5.4.0-{7634,7624}-*
grubブートメニューに古いカーネルバージョンを表示したくない場合は、次のコマンドを使用してgrubを更新できます。
sudo update-grub
それでおしまい。完了です。スペースを解放し、/ bootパーティションがいっぱいになった後に問題が発生した場合は、壊れたAPTを修正する可能性もあります。
場合によっては、壊れたaptを修正するために次のコマンドを入力する必要があります(フォーラムで気づいたように):
sudo dpkg --configure -a
sudo apt install -f
APTが壊れている場合を除いて、上記のコマンドを入力する必要はないことに注意してください。個人的には、これらのコマンドは必要ありませんでしたが、フォーラムでいくつかのコマンドに便利であることがわかりました。