過去数年間、Linux コミュニティは Linux システムのパッケージ管理の分野で、特にユニバーサルまたはクロスディストリビューションのソフトウェアパッケージと配布に関して、いくつかの驚くべき進歩に恵まれてきました。 そのような進歩のひとつが、人気の高い Ubuntu Linux のメーカーである Canonical が開発した Snap パッケージ フォーマットです。
- スナップ パッケージとは? 1 つのビルドから、スナップ (アプリケーション) は、デスクトップ、クラウド、および IoT でサポートされているすべての Linux ディストリビューションで実行されます。 サポートされているディストリビューションには、Ubuntu、Debian、Fedora、Arch Linux、Manjaro、および CentOS/RHEL があります。
- How to Install Snapd in Linux
- How to Install Snaps in Linux
- Manage Snaps in Linux
- インストールされているスナップの表示
- Updating and Reverting Snap
- Disabling/Enabling and Removing Snaps
- まとめ
スナップ パッケージとは? 1 つのビルドから、スナップ (アプリケーション) は、デスクトップ、クラウド、および IoT でサポートされているすべての Linux ディストリビューションで実行されます。 サポートされているディストリビューションには、Ubuntu、Debian、Fedora、Arch Linux、Manjaro、および CentOS/RHEL があります。
スナップは安全です – システム全体を危険にさらさないように、閉じ込めてサンドボックス化されています。 それらは異なる閉じ込めレベル (基本システムや互いからの分離の度合い) の下で実行されます。 さらに注目すべきは、すべてのスナップには、スナップの要件に基づいてスナップの作成者が慎重に選択したインターフェイスがあり、ネットワーク アクセスやデスクトップ アクセスなど、制限外の特定のシステム リソースへのアクセスを提供していることです。 チャネルは、スナップのどのリリースをインストールし、更新を追跡するかを決定し、トラック、リスクレベル、およびブランチで構成され、細分化されます。
スナップ・パッケージ管理システムの主要コンポーネントは次のとおりです。
How to Install Snapd in Linux
上記のように、snapdデーモンは、Linuxシステム上のスナップ環境を管理および維持するバックグラウンド サービスで、制限ポリシーを実装し、スナップが特定のシステム リソースにアクセスするためのインターフェイスを制御します。 また、snapコマンドを提供し、その他の多くの目的も果たします。
システムにsnapdパッケージをインストールするには、Linuxディストリビューションに適したコマンドを実行します。
------------ ------------ $ sudo apt update $ sudo apt install snapd------------ ------------# dnf install snapd------------ ------------# yum install epel-release # yum install snapd------------ ------------$ sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy$ sudo zypper --gpg-auto-import-keys refresh$ sudo zypper dup --from snappy$ sudo zypper install snapd------------ ------------# pacman -S snapd------------ ------------# git clone https://aur.archlinux.org/snapd.git# cd snapd# makepkg -si
システムにsnapdをインストールしたら、次のようにsystemctlコマンドを使用して、メインのスナップ通信ソケットを管理するsystemdユニットを有効にしてください。
Ubuntuおよびその派生版では、パッケージインストーラーによって自動的に起動するはずです。
$ sudo systemctl enable --now snapd.socket
snapd.socketが起動していない場合、snapコマンドを実行できないことに注意してください。 次のコマンドを実行して、それがアクティブで、システム起動時に自動的に起動するように有効になっているかどうかを確認します。
$ sudo systemctl is-active snapd.socket$ sudo systemctl status snapd.socket$ sudo systemctl is-enabled snapd.socket
次に、次のように /var/lib/snapd/snap と /snap 間にシンボリックリンクを作成してクラシック スナップのサポートを有効にしておきます。
$ sudo ln -s /var/lib/snapd/snap /snap
システムでインストールした snapd と snap コマンド ライン ツールのバージョンをチェックするには、次のコマンドを実行してください。
$ snap version
How to Install Snaps in Linux
snapコマンドでは、スナップのインストール、設定、更新、削除、およびより大きなスナップ エコシステムと対話できます。
snapをインストールする前に、そのコマンドがスナップストアに存在するか確認することができます。 たとえば、アプリケーションが「チャット サーバー」または「メディア プレーヤー」のカテゴリに属する場合、これらのコマンドを実行して検索し、安定したチャネルで利用可能なパッケージをストアに照会します。
$ snap find "chat servers"$ snap find "media players"
スナップに関する詳細情報、たとえば rocketchat-server などは、その名前またはパスを指定して表示することが可能です。 名前は、スナップストアとインストールされたスナップの両方で探されることに注意してください。
$ snap info rocketchat-server
システムにスナップ、たとえば rocketchat-server をインストールするために、次のコマンドを実行します。
$ sudo snap install rocketchat-server
それぞれ --edge
、--beta
、または --candidate
オプションを使用して、何らかの理由で別のチャネル (edge, beta, または candidate) からインストールすることを選択することが可能です。 または、--channel
オプションを使用して、インストールするチャネルを指定します。
$ sudo snap install --edge rocketchat-server $ sudo snap install --beta rocketchat-server$ sudo snap install --candidate rocketchat-server
Manage Snaps in Linux
このセクションでは、Linux システムでスナップを管理する方法について説明します。
インストールされているスナップの表示
システムにインストールされているスナップの概要を表示するには、次のコマンドを使用します。
$ snap list
使用中のスナップについて現在のバージョンを一覧するには、その名を指定します。
$ snap list mailspringOR$ snap list --all mailspring
Updating and Reverting Snap
指定したスナップ、または何も指定しない場合はシステム内のすべてのスナップを以下のように更新することが可能です。 refreshコマンドは、スナップによって追跡されているチャネルをチェックし、利用可能な場合はスナップの新しいバージョンをダウンロードしてインストールします。
$ sudo snap refresh mailspringOR$ sudo snap refresh#update all snaps on the local system
アプリを新しいバージョンに更新した後は、revertコマンドを使って以前に使用したバージョンに戻せるようになります。 ソフトウェアに関連するデータも戻されることに注意してください。
$ sudo snap revert mailspring
mailspring のすべてのリビジョンをチェックすると、最新のリビジョンは無効、以前使用していたリビジョンがアクティブになっていることが確認できました。
$ snap list --all mailspring
Disabling/Enabling and Removing Snaps
スナップは使用しない場合に無効にすることが可能です。
$ sudo snap disable mailspring
スナップを再び使用する必要がある場合は、有効に戻すことができます。
$ sudo snap enable mailspring
システムからスナップを完全に削除するには、removeコマンドを使用します。 デフォルトでは、スナップのすべてのリビジョンが削除されます。
$ sudo snap remove mailspring
特定のリビジョンを削除する場合は、次のように--revision
オプションを使用します。 31日以内にスナップを再インストールした場合、データを復元できます。
まとめ
スナップは、あらゆるLinuxディストリビューションにソフトウェアを簡単にインストールできる方法として、Linuxコミュニティで人気が高まっています。 このガイドでは、Linux に Snap をインストールして作業する方法を紹介しました。 snapd のインストール、snap のインストール、インストールされた snap の表示、snap の更新と復帰、snap の無効化/有効化および削除の方法をカバーしました。
以下のフィードバック フォームから質問または連絡をすることができます。 このガイドの次のパートでは、Linux でのスナップ (コマンド、エイリアス、サービス、およびスナップショット) の管理について説明します。