Rocky Linux 8
Sponsored Link

Snappy : インストール2021/07/20

 
パッケージ管理システム Snappy をインストールします。
Snappy システムで管理される Snap パッケージは、[DNF/YUM/RPM] で管理されるシステムのパッケージに影響を及ぼすことなく、独立してインストール/起動することができます。
[1] Snap パッケージの利用には Snapd のインストールと起動が必要になります。
# EPEL からインストール

[root@dlp ~]#
dnf --enablerepo=epel -y install snapd
[root@dlp ~]#
ln -s /var/lib/snapd/snap /snap

[root@dlp ~]#
echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' > /etc/profile.d/snap.sh

[root@dlp ~]#
systemctl enable --now snapd.service snapd.socket

[2] [Snap] コマンドの基本操作です。
# インストール済 Snap パッケージ一覧

[root@dlp ~]#
snap list

No snaps are installed yet. Try 'snap install hello-world'.
# Snap リポジトリからパッケージをワード検索

[root@dlp ~]#
snap find kubernetes

Name                         Version                Publisher              Notes    Summary
kubernetes-worker            0.0.2                  canonical✓             -        A complete Kubernetes worker
kubernetes-test              1.21.1                 canonical✓             classic  tests for kubernetes
kubernetes-test-eks          1.10.3                 canonical-cloud-snaps  classic  tests for kubernetes
microk8s                     v1.21.1                canonical✓             classic  Lightweight Kubernetes for workstations and appliances
kata-containers              2.1.1                  katacontainers✓        classic  Lightweight virtual machines that seamlessly plug into the containers ecosystem
.....
.....

# [hello-world] パッケージをインストール

[root@dlp ~]#
snap install hello-world

2021-07-20T15:31:35+09:00 INFO Waiting for automatic snapd restart...
hello-world 6.4 from Canonical✓ installed
[root@dlp ~]#
snap list

Name         Version    Rev    Tracking       Publisher   Notes
core         16-2.51.1  11316  latest/stable  canonical✓  core
hello-world  6.4        29     latest/stable  canonical✓  -

# パッケージ情報を表示

[root@dlp ~]#
snap info hello-world

name:      hello-world
summary:   The 'hello-world' of snaps
publisher: Canonical✓
store-url: https://snapcraft.io/hello-world
contact:   snaps@canonical.com
license:   unset
description: |
  This is a simple hello world example.
commands:
  - hello-world.env
  - hello-world.evil
  - hello-world
  - hello-world.sh
snap-id:      buPKUD3TKqCOgLEjjHx5kSiCpIs5cMuQ
tracking:     latest/stable
refresh-date: today at 15:31 JST
channels:
  latest/stable:    6.4 2019-04-17 (29) 20kB -
  latest/candidate: 6.4 2019-04-17 (29) 20kB -
  latest/beta:      6.4 2019-04-17 (29) 20kB -
  latest/edge:      6.4 2019-04-17 (29) 20kB -
installed:          6.4            (29) 20kB -

# アプリケーション実行

[root@dlp ~]#
hello-world

Hello World!
# 実 PATH は以下

[root@dlp ~]#
which hello-world

/var/lib/snapd/snap/bin/hello-world
# 実体はリンク

[root@dlp ~]#
ll /var/lib/snapd/snap/bin/hello-world

lrwxrwxrwx. 1 root root 13 Jul 20 15:31 /var/lib/snapd/snap/bin/hello-world -> /usr/bin/snap
# アプリケーションを無効化する

[root@dlp ~]#
snap disable hello-world

hello-world disabled
[root@dlp ~]#
snap list

Name         Version    Rev    Tracking       Publisher   Notes
core         16-2.51.1  11316  latest/stable  canonical✓  core
hello-world  6.4        29     latest/stable  canonical✓  disabled

[root@dlp ~]#
hello-world

-bash: /var/lib/snapd/snap/bin/hello-world: No such file or directory
# アプリケーションを有効化する

[root@dlp ~]#
snap enable hello-world

hello-world enabled
[root@dlp ~]#
hello-world

Hello World!
# アンインストールする場合は以下

# [snap remove] 実行にはシステムに [tar] コマンドが必要

[root@dlp ~]#
snap remove hello-world

hello-world removed
[root@dlp ~]#
snap list

Name  Version    Rev    Tracking       Publisher   Notes
core  16-2.51.1  11316  latest/stable  canonical✓  core
関連コンテンツ