GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntuでスナップパッケージバージョンをクリーンアップする簡単な方法

スナップパッケージマネージャーについて

スナップ は、Linuxカーネルを使用するオペレーティングシステム用にCanonicalによって開発されたソフトウェアパッケージングおよびデプロイシステムです。 スナップと呼ばれるパッケージ 、およびそれらを使用するためのツール、 snapd 、さまざまなLinuxディストリビューションで作業し、上流のソフトウェア開発者がアプリケーションをユーザーに直接配布できるようにします。スナップは、ホストシステムへのアクセスを仲介するサンドボックスで実行される自己完結型のアプリケーションです。 Snapは元々クラウドアプリケーション向けにリリースされましたが、後にモノのインターネットデバイスやデスクトップアプリケーションでも機能するように移植されました。

スナップパッケージは誰もが好むわけではありませんが、Ubuntuエコシステムの不可欠な部分です。

それには長所と短所があります。欠点の1つは、Snapパッケージは通常サイズが大きく、多くのディスク容量を必要とすることです。

これは、特にルートパーティションでディスク容量が不足している場合に問題になる可能性があります。

Snapパッケージで使用されるディスク間隔を削減するために使用できる巧妙なトリックを共有しましょう。

古いSnapパッケージバージョンをクリーンアップしてディスク領域を解放する

スナップに関連するシステムファイルは、/ var / lib/snapdディレクトリに保存されます。インストールしたSnapパッケージの数に基づいて、このディレクトリサイズは数GBになる可能性があります。

$ sudo du -sh /var/lib/snapd
5.4G	/var/lib/snapd
Code language: JavaScript (javascript)

たくさんありますよね?ここでディスク容量を解放できます。

設計上、Snapはシステムにインストールしたパッケージの古いバージョンを少なくとも1つ保持します。

スナップコマンドを使用すると、この動作を確認できます:

$ snap list --all
Code language: PHP (php)

同じパッケージが異なるバージョンとリビジョン番号で2回リストされているはずです。

ディスク容量を解放するために、追加のパッケージバージョンを削除できます。どれを削除するかをどうやって知るのですか?これらの古いパッケージには「無効」というラベルが付いていることがわかります。

心配しないで。手動で行う必要はありません。 Snapcraftチームで働いていたAlanPopeによって書かれた気の利いたbashスクリプトのおかげで、それを自動的に行う方法があります。

bashシェルスクリプトを作成して実行する方法をご存知だと思います。基本的に、clean-snap.shという名前の新しいファイルを作成し、それに次の行を追加します。

#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
    while read snapname revision; do
        snap remove "$snapname" --revision="$revision"
    done
Code language: PHP (php)

保存してエディタを閉じます。

このスクリプトを実行するには、スクリプトをホームディレクトリに保存してから、Ubuntuでターミナルを開き、次のコマンドを実行します。

sudo bash clean-snap.sh
Code language: CSS (css)

古いバージョンのパッケージの削除が開始されていることがわかります。今すぐSnapで使用されているディスク容量を確認すると、ディレクトリサイズが縮小されていることがわかります。

結論

このチュートリアルでは、単純なbashスクリプトを使用して、不要なスナップパッケージからディスクスペースをクリーンアップする方法を見つけました…


Ubuntu
  1. Linuxでスナップパッケージのバージョンをクリーンアップする方法[クイックヒント]

  2. ArchLinuxでパッケージキャッシュをクリーンアップするための推奨される方法

  3. Ubuntu 14.04 Ltsのスナップパッケージサポート?

  1. Ubuntu11.10およびUbuntu11.04にRPMパッケージをインストールします

  2. Ubuntu でスナップ パッケージを削除する方法

  3. Ubuntu での Snap パッケージ マネージャーの使用

  1. Ubuntuにインストールされているパッケージを一覧表示する方法

  2. UbuntuにRPMパッケージをインストールする方法

  3. UbuntuにDebファイル(パッケージ)をインストールする方法