web-dev-qa-db-ja.com

古いUbuntuコアスナップバージョンがディスク領域を使い果たしている

snapdと、リリース後に基本的なcoreスナップショットがインストールされたUbuntu 16.10を実行しています。
しばらくして、/snap/coreディレクトリが複数の古いバージョンでいっぱいになるのを観察しました。
それらを削除するには、Sudo snap remove core --revision <number>を手動で実行する必要があります。

スナップとガベージコレクションの複数のバージョンスナップとスナップクラフトのドキュメント のセクションでは、スナップパッケージを更新するたびに、現在のバージョンと前のバージョンがインストールされ、古いバージョンが取得されることを説明しています自動的に削除されます(以前と同じように)。

snap helpに詳細情報がないので、snapdに古いcoreスナップパッケージの自動削除を有効にする設定または切り替えコマンドがあるかどうかを確認しています。
追加情報:説明した内容は、同じ構成の3台のマシンで有効です。

23
cl-netbox

現時点では、3に設定されているスナップの古いバージョンの数を変更することはできないと考えています。それ以上表示される場合は、バグである可能性が高いため、 https:// bugs.launchpad.net/ubuntu/+source/snapd

6
popey

投稿 https://superuser.com/questions/1310825/how-to-remove-old-version-of-installed-snaps は、古いスナップバージョンを削除するためのいくつかのソリューションをリストしています。

「スナップのすべての古いバージョン」を削除するpopeyによる手動スクリプト- https://superuser.com/a/133059

#!/bin/bash
# https://superuser.com/a/1330590
# 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

Mustapha Hadidによる「snap 2.34以降」の「snap set system refresh.retain」設定は、すべてのスナップの2つのリビジョンのみを保存します https://superuser.com/a/1361201

$ Sudo snap set system refresh.retain=2 

Refresh.retainの値は2〜20の間の数値のみで、デフォルト値は3です。

5
osgx