Snapパッケージマネージャーチートシート

SnapマネージャーによるユニバーサルLinuxパッケージ

Snap は、Canonical による革命的なユニバーサルパッケージ管理システムです。コンテナ化されたアプリケーション、自動更新、強化されたセキュリティを Ubuntu および他の Linux ディストリビューションにもたらします。

開発者ツール:モダンな開発ワークフローの完全ガイド

cross-dependent-modules この素晴らしい画像は AI モデル Flux 1 dev によって生成されました。

Snap とは?

Snap は、Linux カーネルを使用するオペレーティングシステム向けに Canonical によって開発されたソフトウェアパッケージングおよびデプロイメントシステムです。Snap パッケージ(「スナップ」と呼ばれます)は、コンテナ化されたソフトウェアパッケージであり、さまざまな Linux ディストリビューションで動作し、一貫したアプリケーション体験を提供します。システムライブラリを共有する従来のパッケージとは異なり、Snap はすべての依存関係をバンドルするため、異なるシステム間で一貫した動作を確保します。

主な特徴:

  • 自己完結型: 各スナップはすべての依存関係を含みます(競合なし)
  • 自動更新: バックグラウンドで自動的に更新されます(1日4回のチェック)
  • サンドボクシング: AppArmor による閉域制御がセキュリティの分離を提供
  • ユニバーサル: Ubuntu, Fedora, Debian, Arch など、多くのOSで動作
  • トランザクショナル: 更新はアトミックであり、ロールバック可能
  • バックグラウンドサービス: snapd デーモンがスナップと更新を管理

パッケージマネージャーの比較

Ubuntu は複数のパッケージ管理システムをサポートしています。主要な操作の比較は以下の通りです:

操作 Snap APT Flatpak
検索 snap find keyword apt search keyword flatpak search keyword
インストール sudo snap install package sudo apt install package flatpak install flathub app.id
インストール済み一覧 snap list apt list --installed flatpak list --app
情報表示 snap info package apt show package flatpak info app.id
すべて更新 sudo snap refresh sudo apt update && sudo apt upgrade flatpak update
単一パッケージ更新 sudo snap refresh package sudo apt install --only-upgrade pkg flatpak update app.id
削除 sudo snap remove package sudo apt remove package flatpak uninstall app.id
クリーンアップ snap remove --revision=N sudo apt autoremove flatpak uninstall --unused
リポジトリ Snap Store (内蔵) /etc/apt/sources.list flatpak remote-add で追加

機能のクイック比較

機能 Snap APT Flatpak
自動更新 はい いいえ いいえ
サンドボクシング はい いいえ はい
依存関係 バンドル済み システムライブラリ 共有ランタイム
パッケージサイズ 大きい (50-500MB) 小さい (5-50MB) 中程度 (20-200MB)
ルート権限必要 はい はい いいえ (ユーザーインストール可能)
起動速度 遅い 速い 速い
最適用途 ユニバーサルアプリ システムパッケージ デスクトップアプリ

このガイドについて

このガイドは Snap に焦点を当てています - 自動更新と強力なサンドボクシング機能を備えた Canonical のユニバーサルパッケージマネージャーです。Snap は、クロスディストリビューションアプリケーション、デスクトップソフトウェア、および手動介入なしで自動セキュリティ更新を希望するシナリオに理想的です。

他のパッケージマネージャーについて:

  • 📦 APT チートシート - システムパッケージおよびライブラリ向けの Ubuntu 伝統的なパッケージ管理
  • 📦 Flatpak パッケージマネージャー チートシート - 細粒度のパーミッションを備えたクロスディストリビューションデスクトップアプリケーション
  • 📦 Snap vs Flatpak: 2025年完全ガイド - Snap と Flatpak のユニバーサルパッケージマネージャーの包括的な比較:アーキテクチャ、パフォーマンス、セキュリティ、およびあなたの Linux ワークフローに最も適したもの。

各パッケージマネージャーにはそれぞれの強みがあります。自動更新とクロスバージョン互換性が必要なアプリケーションには Snap を、システムパッケージとライブラリには APT を、細粒度のパーミッション制御を備えたデスクトップアプリケーションには Flatpak を使用してください。


Snap パッケージ管理 - 詳細ガイド

Snapd のインストール

Ubuntu (16.04+ でプリインストール済み)

Snap は Ubuntu 16.04 以降にプリインストールされています。新しい Ubuntu インストールをセットアップしている場合は、Ubuntu 24.04 と必須ツールのインストールに関する包括的なガイド をチェックして、完全なセットアップ手順を確認してください。

# snapd がインストールされているか確認
snap version

# インストールされていない場合はインストール
sudo apt update
sudo apt install snapd

# snapd サービスを有効化
sudo systemctl enable --now snapd.socket

# オプション: クラシックスナップのサポートを有効化
sudo ln -s /var/lib/snapd/snap /snap

他のディストリビューション

Debian:

sudo apt update
sudo apt install snapd
sudo systemctl enable --now snapd.socket

Fedora:

sudo dnf install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap

Arch Linux:

git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
sudo systemctl enable --now snapd.socket

Linux Mint:

Linux Mint での Snap のインストールには互換性の有効化が必要です。新しいインストールを計画している場合は、有用なツール付き Linux Mint の再インストール に関するガイドで、完全なセットアッププロセスを参照してください。

CentOS/RHEL:

sudo yum install snapd
sudo systemctl enable --now snapd.socket

基本的な Snap コマンド

スナップのインストール

基本インストール:

# ステーブルチャンネルからインストール
sudo snap install package-name

# 特定のチャンネルからインストール
sudo snap install package-name --channel=beta
sudo snap install package-name --channel=edge

# クラシック閉域でインストール
sudo snap install package-name --classic

# 特定のバージョン/リビジョンをインストール
sudo snap install package-name --revision=123

実世界の例:

# VS Code をインストール
sudo snap install code --classic

# Spotify をインストール
sudo snap install spotify

# Docker をインストール
sudo snap install docker

# VLC メディアプレイヤーをインストール
sudo snap install vlc

# Chromium ブラウザをインストール
sudo snap install chromium

# kubectl をインストール
sudo snap install kubectl --classic

# Slack をインストール
sudo snap install slack --classic

# Postman をインストール
sudo snap install postman

# Android Studio をインストール
sudo snap install android-studio --classic

# Node.js をインストール
sudo snap install node --classic

スナップの検索

# Snap Store を検索
snap find keyword

# 詳細な出力付きで検索
snap find keyword --verbose

# 特定のセクションを検索
snap find --section=development

# 例
snap find "text editor"
snap find database
snap find "media player"

カテゴリ別に閲覧:

# 利用可能なセクションを一覧表示
snap find --section

# 一般的なセクションには以下が含まれます:
# - productivity (生産性)
# - development (開発)
# - server-and-cloud (サーバーとクラウド)
# - security (セキュリティ)
# - entertainment (娯楽)
# - photo-and-video (写真と動画)
# - music-and-audio (音楽とオーディオ)

インストール済みのスナップの一覧表示

# インストール済みのすべてのスナップを一覧表示
snap list

# より詳細な情報付きで一覧表示
snap list --all

# 特定のスナップを表示
snap list package-name

# パブリッシャーで一覧表示
snap list --all | grep "publisher-name"

出力には以下が含まれます:

  • Name: スナップパッケージ名
  • Version: 現在のバージョン
  • Rev: リビジョン番号
  • Tracking: 追跡中のチャンネル
  • Publisher: 認証済みパブリッシャー
  • Notes: 閉域タイプとフラグ

スナップ情報の表示

# 詳細なスナップ情報を表示
snap info package-name

# 例として出力には以下が含まれます:
# - 説明
# - Snap ID
# - パブリッシャー
# - ライセンス
# - 利用可能なチャンネル
# - インストール済みバージョン
# - 更新日

例:

snap info vlc

出力は以下のようになります:

name:      vlc
summary:   The ultimate media player
publisher: VideoLAN✓
license:   GPL-2.0+
description: |
  VLC is a free and open source multimedia player...
snap-id: 123abc...
channels:
  stable:    3.0.18  2023-03-15 (3078) 276MB -
  candidate: ↑
  beta:      ↑
  edge:      4.0.0~dev 2023-03-20 (3079) 280MB -
installed:   3.0.18  (3078) 276MB -

スナップの更新

すべてのスナップを更新:

# インストール済みのすべてのスナップを更新
sudo snap refresh

# インストールせずに利用可能な更新を確認
snap refresh --list

特定のスナップを更新:

# 単一のスナップを更新
sudo snap refresh package-name

# 特定のチャンネルに更新
sudo snap refresh package-name --channel=beta

# 特定のリビジョンに更新
sudo snap refresh package-name --revision=456

自動更新:

スナップはデフォルトで自動的に更新されます。snapd デーモンは1日4回更新をチェックします。

更新スケジュールの設定:

# 現在のリフレッシュタイマーを表示
snap refresh --time

# リフレッシュタイマーを設定 (snapd 2.31+ が必要)
sudo snap set system refresh.timer=fri,23:00-01:00

# 一時的に更新を保持 (最大90日)
sudo snap refresh --hold

# 特定のスナップを保持
sudo snap refresh --hold package-name

# 保持を解除
sudo snap refresh --unhold
sudo snap refresh --unhold package-name

スナップの削除

# スナップを削除 (データは保持)
sudo snap remove package-name

# スナップとすべてのデータを削除 (パージ)
sudo snap remove --purge package-name

# 特定のリビジョンを削除
sudo snap remove package-name --revision=123

古いリビジョンのクリーンアップ:

デフォルトでは、Snap はロールバックのために2-3個の古いリビジョンを保持します:

# すべてのリビジョンを一覧表示
snap list --all package-name

# 特定の古いリビジョンを削除
sudo snap remove package-name --revision=old-rev-number

# すべての古いリビジョンを削除するスクリプト
#!/bin/bash
snap list --all | awk '/disabled/{print $1, $3}' | 
  while read snapname revision; do
    sudo snap remove "$snapname" --revision="$revision"
  done

Bash スクリプトおよびコマンドライン操作の詳細については、包括的な Bash チートシート を参照してください。

スナップの実行

# スナップアプリケーションを実行
snap run package-name

# 特定のコマンドで実行
snap run package-name.command

# 例: 特定の VS Code コマンドを実行
snap run code --list-extensions

# スナップの利用可能なコマンドを表示
snap info package-name | grep "commands:"

Snap チャンネルの理解

チャンネルは、開発者が異なるバージョンを同時に公開することを可能にします:

チャンネルの種類

  1. stable: 本番環境向けのリリース (デフォルト)
  2. candidate: リリース候補、プレリリーステスト
  3. beta: 新機能付きのベータ版
  4. edge: 最新の開発ビルド、不安定な可能性があります

チャンネルトラック

一部のスナップには複数のトラック(例:メジャーバージョン)があります:

# 例: LXD 4.0 トラックをインストール
sudo snap install lxd --channel=4.0/stable

# 例: 特定の Kubernetes バージョンをインストール
sudo snap install microk8s --channel=1.28/stable

チャンネルの切り替え

# 異なるチャンネルに切り替え
sudo snap refresh package-name --channel=beta

# stable に戻す
sudo snap refresh package-name --channel=stable

# 利用可能なチャンネルを表示
snap info package-name

Snap 閉域レベル

Strict 閉域 (厳密)

最大のセキュリティ、スナップはシステムから分離されます:

# ほとんどのスナップは strict 閉域を使用
sudo snap install vlc

特徴:

  • ファイルシステムへのアクセスが制限される
  • ハードウェアアクセスにはインターフェース接続が必要
  • AppArmor プロファイルがセキュリティを強制
  • デスクトップアプリケーションに最適

Classic 閉域 (クラシック)

フルシステムアクセス、従来のパッケージと同じ:

# 多くの開発ツールに必要
sudo snap install code --classic
sudo snap install kubectl --classic

特徴:

  • サンドボクシングなし
  • ファイルシステムへのフルアクセス
  • システムツールと IDE に必要
  • セキュリティは低いですが、互換性が高い

Devmode 閉域 (開発モード)

開発モード、閉域は無効化されます:

# テスト/開発のみ
sudo snap install package-name --devmode

特徴:

  • セキュリティ制限なし
  • スナップ開発中に使用
  • 本番環境には推奨されない
  • 違反はログに記録されるが強制されない

閉域の確認

# 閉域レベルを表示
snap list
# 以下を探します: classic, devmode, または strict (ラベルなし)

# 詳細情報
snap info package-name | grep confinement

Snap インターフェースと接続

インターフェースは、スナップがシステムリソースとどのように通信するかを定義します。

インターフェースの表示

# 利用可能なすべてのインターフェースを一覧表示
snap connections

# 特定のスナップのインターフェースを表示
snap connections package-name

# 可能なすべてのインターフェースを一覧表示
snap interface

# 特定のインターフェースの詳細を表示
snap interface interface-name

一般的なインターフェース

  • home: ユーザーホームディレクトリへのアクセス
  • network: ネットワークアクセス
  • audio-playback: オーディオ出力
  • camera: カメラアクセス
  • removable-media: USB ドライブ、SD カード
  • x11: X11 ディスプレイサーバー
  • wayland: Wayland ディスプレイサーバー
  • opengl: GPU アクセラレーション
  • pulseaudio: PulseAudio サウンドサーバー

接続の管理

# インターフェースを接続
sudo snap connect package-name:interface-name

# インターフェースを切断
sudo snap disconnect package-name:interface-name

# 例: カメラアクセスを許可
sudo snap connect package-name:camera

# 例: リムーバブルメディアアクセスを許可
sudo snap connect package-name:removable-media

自動接続:

ほとんどのインターフェースはインストール時に自動接続されます。セキュリティのため、一部は手動接続が必要です。

高度な Snap の使用

Snap サービス

スナップの一部はバックグラウンドサービスとして実行されます:

# サービスを一覧表示
snap services

# 特定のスナップのサービスを一覧表示
snap services package-name

# サービスを開始
sudo snap start package-name.service-name

# サービスを停止
sudo snap stop package-name.service-name

# サービスを再起動
sudo snap restart package-name.service-name

# サービスを有効化 (起動時に開始)
sudo snap start --enable package-name.service-name

# サービスを無効化
sudo snap stop --disable package-name.service-name

# サービスログを表示
snap logs package-name.service-name

# リアルタイムでログを追跡
snap logs -f package-name.service-name

# 最後の N 行を表示
snap logs -n=50 package-name.service-name

Snap 設定

# スナップ設定を表示
snap get package-name

# 特定の設定キーを表示
snap get package-name key-name

# 設定を設定
sudo snap set package-name key=value

# 例
sudo snap set microk8s hostpath-storage=/data/k8s
sudo snap get microk8s hostpath-storage

# 設定を解除
sudo snap unset package-name key-name

Snap エイリアス

スナップコマンドのショートカットを作成:

# エイリアスを作成
sudo snap alias package-name.command alias-name

# 例: kubectl コマンドのエイリアス
sudo snap alias microk8s.kubectl kubectl

# エイリアスを一覧表示
snap aliases

# エイリアスを削除
sudo snap unalias alias-name

# スナップのすべてのエイリアスを削除
sudo snap unalias package-name

Snap レイアウト

レイアウトは、レガシーアプリを閉域スナップで動作させるために使用されます:

# スナップレイアウトを表示
snap info package-name | grep "layout:"

レイアウトは、スナップパスを期待されるシステムパスにマッピングします。

Snap Store と公開

Snap Store の閲覧

Web インターフェース:

  • https://snapcraft.io/store を訪問
  • カテゴリ別に閲覧
  • アプリケーションを検索
  • ランキングとレビューを表示

コマンドライン:

# 特集スナップ
snap find --section=featured

# カテゴリ別
snap find --section=productivity
snap find --section=games

# プライバトスナップ (認証が必要)
snap find --private

ファイルからのインストール

# ローカルスナップファイルをインストール
sudo snap install package-name.snap --dangerous

# インストールしてインターフェースを接続
sudo snap install package-name.snap --dangerous --classic

注意: --dangerous はローカルファイルの署名検証をバイパスします。

Snap のトラブルシューティング

一般的な問題と解決策

Snap Store が読み込まない

# snapd サービスを再起動
sudo systemctl restart snapd.service

# サービスステータスを確認
sudo systemctl status snapd.service

# ログを表示
sudo journalctl -u snapd.service -n 50

スナップの起動が遅い

原因:

  • 初回実行時の解凍
  • ファイルシステムのマウント
  • AppArmor プロファイルの読み込み

解決策:

# すべてのインターフェースを事前に接続
sudo snap connect package-name:interface

# 不要なインターフェースを無効化
sudo snap disconnect package-name:interface

# スナップの起動時間を確認
time snap run package-name

接続の問題

# ネットワークインターフェースを確認
snap connections package-name | grep network

# 手動でネットワークを接続
sudo snap connect package-name:network

# ファイアウォールを確認
sudo ufw status

スナップインストールの失敗

# スナップキャッシュをクリア
sudo rm -rf /var/lib/snapd/cache/*

# スナップを再インストール
sudo snap remove package-name
sudo snap install package-name

# ディスクスペースを確認
df -h /var/lib/snapd

# 壊れたスナップ状態を修正
sudo snap changes
sudo snap abort <change-id>  # 停止している場合

AppArmor の拒否

# AppArmor ログを確認
sudo dmesg | grep DENIED

# 特定のスナッププロファイルを表示
sudo apparmor_parser -r /var/lib/snapd/apparmor/profiles/snap.*

# AppArmor をリロード
sudo systemctl reload apparmor

スナップリビジョンの競合

# すべてのリビジョンを一覧表示
snap list --all package-name

# 古いリビジョンを削除
sudo snap remove package-name --revision=old-number

# 前のリビジョンにロールバック
sudo snap revert package-name

# スナップの変更を確認
snap changes

スナップのデバッグ

# デバッグモードを有効化
sudo snap set system debug.snapd=true

# スナップ環境を表示
snap run --shell package-name
# 次に実行: env

# スナップファイルレイアウトを確認
ls -la /snap/package-name/current/

# スナップメタデータを表示
cat /snap/package-name/current/meta/snap.yaml

# スナップ実行を追跡
snap run --trace-exec package-name

# スナップアサーションを確認
snap known assertion-type

パフォーマンスの最適化

ディスク使用量の削減

# スナップストレージの使用量を確認
du -sh /var/lib/snapd/snaps/*

# 古いリビジョンを自動的に削除
# refresh.retain を 2 に設定 (2つの古いバージョンのみ保持)
sudo snap set system refresh.retain=2

# 手動クリーンアップスクリプト
#!/bin/bash
# 無効なすべてのスナップリビジョンを削除
LANG=C snap list --all | awk '/disabled/{print $1, $3}' | 
  while read snapname revision; do
    sudo snap remove "$snapname" --revision="$revision"
  done

起動パフォーマンスの最適化

1. インターフェースの事前接続:

# インストール時に頻繁に使用されるインターフェースを接続
sudo snap connect package-name:home
sudo snap connect package-name:network

2. 並列リフレッシュの使用:

/var/lib/snapd/state.json を編集 (高度):

{
  "data": {
    "parallel-installs": 4
  }
}

3. バックグラウンド更新の制限:

# 更新ウィンドウを低使用時間の時間帯に設定
sudo snap set system refresh.timer=sun,02:00-04:00

スナップパフォーマンスの監視

# スナッププロセスの使用量を確認
ps aux | grep snap

# スナップサービスリソースを監視
systemctl status snap.package-name.service-name

# snapd リソース使用量を表示
systemctl status snapd

# スナップマウントポイントを確認
mount | grep snap

セキュリティのベストプラクティス

パブリッシャーの確認

# パブリッシャーの確認を確認
snap info package-name | grep publisher

# ✓ (認証済み) または ✪ (スター - Canonical) を探す

可能な限り認証済みのパブリッシャーからのみインストールしてください。

権限のレビュー

# インストール前に必要なインターフェースを確認
snap info package-name | grep plugs

# インストール後に接続をレビュー
snap connections package-name

# 不要なインターフェースを切断
sudo snap disconnect package-name:interface-name

定期的な更新

# スナップを更新したままにする
sudo snap refresh

# 自動セキュリティ更新を有効化
# (デフォルトで有効)
snap refresh --time

インストール済みスナップの監査

# すべてのスナップと閉域を一覧表示
snap list

# devmode スナップ (セキュリティが低い) を確認
snap list | grep devmode

# クラッシックスナップ (フルシステムアクセス) をレビュー
snap list | grep classic

Strict 閉域の使用

より良いセキュリティのために、strict 閉域を持つスナップを優先してください:

# インストール前に閉域を確認
snap info package-name | grep confinement

# 本番環境では --devmode を避ける

エンタープライズ環境での Snap

プロキシ設定

# HTTP プロキシを設定
sudo snap set system proxy.http="http://proxy:8080"

# HTTPS プロキシを設定
sudo snap set system proxy.https="https://proxy:8080"

# プロキシ設定を表示
snap get system proxy

オフラインインストール

# スナップをダウンロード
snap download package-name

# オフラインシステムに転送してインストール
sudo snap install package-name_*.snap --dangerous

# 署名付きインストールのためにアサーションを含める
sudo snap ack package-name_*.assert
sudo snap install package-name_*.snap

Snap Store プロキシ

エンタープライズ環境では、Snap Store プロキシをデプロイします:

  • スナップをローカルにキャッシュ
  • 利用可能なスナップを制御
  • インストールを監視
  • バンド幅使用量を削減

参照: https://docs.ubuntu.com/snap-store-proxy/

スナップ更新の管理

# スナップごとに自動リフレッシュを無効化 (プロキシが必要)
sudo snap refresh --hold=forever package-name

# メンテナンスウィンドウ中に更新をスケジュール
sudo snap set system refresh.timer=sat,02:00-04:00

# 手動で更新を承認
sudo snap refresh --list  # レビュー
sudo snap refresh package-name  # 特定のスナップを更新

カテゴリ別の人気スナップ

開発ツール

sudo snap install code --classic              # VS Code
sudo snap install intellij-idea-community --classic  # IntelliJ
sudo snap install pycharm-community --classic  # PyCharm
sudo snap install android-studio --classic    # Android Studio
sudo snap install sublime-text --classic      # Sublime Text
sudo snap install atom --classic              # Atom Editor
sudo snap install postman                     # API テスト
sudo snap install dbeaver-ce                  # データベースツール

DevOps & クラウド

sudo snap install kubectl --classic           # Kubernetes CLI
sudo snap install helm --classic              # Helm
sudo snap install microk8s --classic          # ライトウェイト K8s
sudo snap install docker                      # Docker
sudo snap install terraform --classic         # Terraform
sudo snap install aws-cli --classic           # AWS CLI
sudo snap install azure-cli --classic         # Azure CLI
sudo snap install google-cloud-sdk --classic  # GCP SDK

生産性

sudo snap install slack --classic             # Slack
sudo snap install teams                       # MS Teams
sudo snap install discord                     # Discord
sudo snap install zoom-client                 # Zoom
sudo snap install mailspring                  # メールクライアント
sudo snap install joplin-desktop             # ノートアプリ
sudo snap install libreoffice                # オフィススイート

マルチメディア

sudo snap install vlc                        # 動画プレイヤー
sudo snap install spotify                    # 音楽ストリーミング
sudo snap install obs-studio                 # 画面録画
sudo snap install gimp                       # 画像エディタ
sudo snap install inkscape                   # ベクターグラフィックス
sudo snap install audacity                   # オーディオエディタ
sudo snap install kdenlive                   # 動画エディタ

ブラウザ

sudo snap install chromium                   # Chromium
sudo snap install firefox                    # Firefox
sudo snap install opera                      # Opera
sudo snap install brave                      # Brave ブラウザ

システムユーティリティ

sudo snap install htop                       # プロセスマニター
sudo snap install bpytop                     # システムモニター
sudo snap install speedtest-cli              # スピードテスト
sudo snap install certbot --classic          # SSL 証明書
sudo snap install ngrok                      # トンネリング

これらのユーティリティおよび Ubuntu 全般での作業時の生産性を向上させるために、Ubuntu キーボードショートカット チートシート を探索して、効率的なワークフロー管理を実現してください。

正しいパッケージマネージャーの選択

Snap を使用するべき場合 ✅

最適用途:

  • クロスディストリビューション互換性が必要
  • 自動更新が重要
  • サンドボクシングによるセキュリティが優先
  • 最新のアプリケーションバージョンが必要
  • デスクトップアプリケーション
  • IoT および組み込みデバイス (Ubuntu Core)

他のパッケージマネージャーを使用するべき場合

Snap コマンドリファレンス

クイックコマンドチートシート

# 検索 & インストール
snap find keyword              # スナップを検索
sudo snap install name         # スナップをインストール
sudo snap install name --classic  # クラシック閉域
sudo snap install name --channel=beta  # 特定のチャンネル

# 一覧 & 情報
snap list                      # インストール済みを一覧表示
snap list --all               # 古いリビジョンを含める
snap info name                # スナップの詳細を表示
snap version                  # snapd バージョンを表示

# 更新
sudo snap refresh             # すべてを更新
sudo snap refresh name        # 特定のスナップを更新
snap refresh --list           # 更新を確認
sudo snap refresh --hold      # 更新を延期

# 削除
sudo snap remove name         # スナップを削除
sudo snap remove --purge name # データ付きで削除
sudo snap remove name --revision=N  # リビジョンを削除

# サービス
snap services                 # サービスを一覧表示
sudo snap start name.service  # サービスを開始
sudo snap stop name.service   # サービスを停止
sudo snap logs name.service   # ログを表示

# 接続
snap connections              # 接続を一覧表示
snap connections name         # スナップの接続
sudo snap connect name:plug   # インターフェースを接続
sudo snap disconnect name:plug # 切断

# 設定
snap get name                 # 設定を表示
sudo snap set name key=value  # 設定を設定
snap get system               # システム設定

# チャンネル
sudo snap refresh name --channel=edge  # チャンネルを切り替え
sudo snap track name          # 追跡を表示

# エイリアス
sudo snap alias name.cmd cmd  # エイリアスを作成
snap aliases                  # エイリアスを一覧表示
sudo snap unalias cmd         # エイリアスを削除

# トラブルシューティング
snap changes                  # 最近の変更を表示
snap tasks <change-id>        # タスクの詳細
snap abort <change-id>        # 変更を中止
sudo snap revert name         # 前にロールバック

結論

Snap パッケージマネージャーは、ユニバーサルパッケージング、自動更新、およびコンテナ化による強化されたセキュリティにより、Linux アプリケーション配信の未来を表しています。ディスク使用量と起動パフォーマンスにおけるトレードオフがあるものの、簡素化された依存関係管理、クロスディストリビューション互換性、および一貫した更新の利点は、モダンな Linux アプリケーションにとって優れた選択肢となります。

アプリケーションをデプロイする開発者、更新を管理するシステム管理者、または最新ソフトウェアを希望するユーザーであっても、Snap は堅牢で、安全で、ユーザーフレンドリーなパッケージ管理ソリューションを提供します。

主なポイント:

  • スナップパッケージは自己完結型であり、ディストリビューション間で動作します
  • 自動更新がアプリケーションを安全で最新の状態に保ちます
  • サンドボクシングは閉域を通じて強化されたセキュリティを提供します
  • 複数の閉域レベルがセキュリティと機能性のバランスを取ります
  • チャンネルにより、安定性と最新機能を選択できます
  • Snap はデスクトップアプリケーションおよび IoT デバイスに理想的です

Snap Store を探索して、ユニバーサル Linux パッケージングの利便性を体験してください!

有用なリンク

このサイトの関連記事

購読する

システム、インフラ、AIエンジニアリングの新記事をお届けします。