/var/lib/snapd/snaps/
に気付いたときに、最近、Disk Usage Analyzer を使用して、Ubuntu 18.10 デスクトップのスペースを解放できるかどうかを確認していました。 フォルダがかなり大きかった。
空き容量を増やす/スナップ キャッシュをクリアする方法を調べていたときに /var/lib/snapd/snaps/
インストールしたスナップ パッケージを削除せずにフォルダーに移動したところ、スナップ パッケージの更新後、デフォルトで 3 つのスナップ バージョンがシステムによって保存されることがわかりました。つまり、少なくとも 2 つの更新でインストールした Snap パッケージごとに、3 つのリビジョンがシステムに保存され、かなりのディスク容量を占有していたことになります。
スナップ オプションがあります (Snapd バージョン 2.34 から)、refresh.retain
と呼ばれる 、次の更新後にシステムによって保存されるスナップ リビジョンの最大数を設定します。これは 2 から 20 の間の数に設定されます。調整可能です .以下を使用して、これをデフォルトの 3 から 2 に変更できます。
sudo snap set system refresh.retain=2
関連、ただし Flatpak パッケージの場合:未使用の Flatpak ランタイムを削除してスペースを解放する方法
しかし、システム上の更新を含むすべてのスナップ パッケージのすべてのバージョンを削除したい場合はどうすればよいでしょうか? これは、Canonical の Ubuntu Engineering のコミュニティ マネージャーである Popey によって作成されたスクリプトで、すべての古いバージョンの Snap を削除し、現在アクティブなバージョンのみを保持します (LANG=en_US.UTF-8
で更新)。 そのため、コメントの William に感謝します):
#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done
このスクリプトを使用すると、かなりのディスク容量が解放されます (システムにインストールされている Snap パッケージの数と、インストール後にそれらの更新が利用可能かどうかによって異なります)。私の場合、スクリプトは /var/lib/snapd/snaps/
のサイズです フォルダーは 50% 以上です。
更新:このスクリプトは英語でのみ機能するようです。他の言語の場合は、/disabled/
を置き換える必要があります
このスクリプトを使用するには、remove-old-snaps
というファイルを作成します。 、上記のコード ブロックの内容を貼り付け、ファイルをホーム ディレクトリに保存し、次のように実行可能にします。
chmod +x remove-old-snaps
sudo
でスクリプトを実行します 古いスナップ リビジョンを削除するには (スクリプトを実行する前に、実行中のスナップをすべて閉じてください):
sudo ./remove-old-snaps
これは私のシステムで実行され、古い Snap パッケージ リビジョンを削除するスクリプトです:
$ sudo ./remove-old-snaps
atom (revision 223) removed
atom (revision 222) removed
bitwarden (revision 15) removed
bitwarden (revision 16) removed
canonical-livepatch (revision 50) removed
canonical-livepatch (revision 54) removed
chromium (revision 607) removed
chromium (revision 660) removed
core (revision 6531) removed
core (revision 6405) removed
core18 (revision 719) removed
core18 (revision 731) removed
gallery-dl (revision 36) removed
gallery-dl (revision 167) removed
gimp (revision 110) removed
gimp (revision 113) removed