「Snap」の版間の差分
Kusakata.bot (トーク | 投稿記録) 細 (文字列「http://arstechnica.com/」を「https://arstechnica.com/」に置換) |
(同期) |
||
2行目: | 2行目: | ||
[[en:Snapd]] |
[[en:Snapd]] |
||
[[ru:Snapd]] |
[[ru:Snapd]] |
||
+ | {{Related articles start}} |
||
+ | {{Related|Flatpak}} |
||
+ | {{Related articles end}} |
||
[https://github.com/snapcore/snapd snapd] は snap パッケージ ("snap") を管理するための REST API デーモンです。ユーザーは (同じパッケージに入っている) {{ic|snap}} クライアントを使用することで snapd を操作することができます。 |
[https://github.com/snapcore/snapd snapd] は snap パッケージ ("snap") を管理するための REST API デーモンです。ユーザーは (同じパッケージに入っている) {{ic|snap}} クライアントを使用することで snapd を操作することができます。 |
||
==インストール== |
==インストール== |
||
− | {{AUR|snapd}} パッケージを[[インストール]]してください。 |
+ | {{AUR|snapd}} または {{AUR|snapd-git}} パッケージを[[インストール]]してください。[[公式リポジトリ]]から {{ic|snapd}} をインストールしたことがある場合、{{ic|snap-confine}} が削除されます。 |
− | パッケージをインストールすると |
+ | パッケージをインストールすると {{ic|snapd}} デーモンがインストールされます。 |
− | |||
− | {{Warning|[https://github.com/snapcore/snap-confine snap-confine] は {{ic|--disable-apparmor}} オプションでビルドされており、完全な制限を行うには Ubuntu の [http://archive.ubuntu.com/ubuntu/pool/main/l/linux/linux_4.4.0-21.37.diff.gz Linux 4.4 パッチセット] をあてて [[AppArmor]] が有効になったカーネルと snap の AppArmor のプロファイルが必要です。}} |
||
{{tip|snapd は snapd パッケージでインストールしたバイナリのパスとデスクトップエントリをエクスポートするために {{ic|/etc/profile.d/}} にスクリプトをインストールします。変更を適用させるために一度再起動してください。}} |
{{tip|snapd は snapd パッケージでインストールしたバイナリのパスとデスクトップエントリをエクスポートするために {{ic|/etc/profile.d/}} にスクリプトをインストールします。変更を適用させるために一度再起動してください。}} |
||
− | |||
− | master ブランチから直接ビルドされる {{AUR|snapd-git}} パッケージは [[AUR]] からインストールできます。インストール時に {{ic|snapd}} と {{ic|snap-confine}} パッケージが置き換えられます。 |
||
==設定== |
==設定== |
||
26行目: | 25行目: | ||
==削除== |
==削除== |
||
+ | |||
+ | {{tip|{{AUR|snapd}} と {{AUR|snapd-git}} のバージョン 2.30 以上ではパッケージを削除するときにインストールされている snap を自動的に消去します。手動で削除する必要はなくなりました。}} |
||
{{AUR|snapd}} パッケージをアンインストールしても ''snap'' を使用して作成されたディレクトリやファイルは削除されません。{{AUR|snapd}} パッケージをアンインストールする際は事前に ''snap remove'' で snap を削除することを推奨します。現在、''snap'' コマンドで core の snap を削除する方法はありません。snap パッケージのキャッシュや mount ユニットファイルなどを完全に削除したい場合、以下の手順に従って下さい。 |
{{AUR|snapd}} パッケージをアンインストールしても ''snap'' を使用して作成されたディレクトリやファイルは削除されません。{{AUR|snapd}} パッケージをアンインストールする際は事前に ''snap remove'' で snap を削除することを推奨します。現在、''snap'' コマンドで core の snap を削除する方法はありません。snap パッケージのキャッシュや mount ユニットファイルなどを完全に削除したい場合、以下の手順に従って下さい。 |
||
32行目: | 33行目: | ||
# umount $(mount | grep snap | awk '{print $3}') |
# umount $(mount | grep snap | awk '{print $3}') |
||
+ | |||
+ | {{warning|{{ic|mount | grep snap}} の出力を確認して誤ってアンマウントしないように注意してください。}} |
||
2. 状態ディレクトリとマウントフックを削除します: |
2. 状態ディレクトリとマウントフックを削除します: |
||
66行目: | 69行目: | ||
次のコマンドで snap を削除できます: |
次のコマンドで snap を削除できます: |
||
# snap remove ''snapname'' |
# snap remove ''snapname'' |
||
+ | |||
+ | == ヒントとテクニック == |
||
+ | === Classic snap === |
||
+ | 一部の snap (例: [[Skype]] や Pycharm) は classic confinement を使用しますが、classic confinement は [[FHS]] に準拠していない {{ic|/snap}} ディレクトリを必要とします。snapd パッケージには {{ic|/snap}} ディレクトリは含まれていません。classic snap をインストールしたい場合、{{ic|/var/lib/snapd/snap}} から {{ic|/snap}} に手動でシンボリックリンクを作成してください: |
||
+ | |||
+ | # ln -s /var/lib/snapd/snap /snap |
||
== 参照 == |
== 参照 == |
2018年2月28日 (水) 21:34時点における版
関連記事
snapd は snap パッケージ ("snap") を管理するための REST API デーモンです。ユーザーは (同じパッケージに入っている) snap
クライアントを使用することで snapd を操作することができます。
目次
インストール
snapdAUR または snapd-gitAUR パッケージをインストールしてください。公式リポジトリから snapd
をインストールしたことがある場合、snap-confine
が削除されます。
パッケージをインストールすると snapd
デーモンがインストールされます。
設定
snapd には複数の systemd ユニットが付属しています。snap の新しいバージョンがリリースされたときに自動的に更新するなどの複数のタスクを管理できます。
snap
が使おうとしたときに snapd デーモンを起動するには、snapd.socket
を起動・有効化します:
# systemctl start snapd.socket
新しいバージョンがストアに追加されたときに snap を更新するにはタイマーを起動します:
# systemctl start snapd.refresh.timer
削除
snapdAUR パッケージをアンインストールしても snap を使用して作成されたディレクトリやファイルは削除されません。snapdAUR パッケージをアンインストールする際は事前に snap remove で snap を削除することを推奨します。現在、snap コマンドで core の snap を削除する方法はありません。snap パッケージのキャッシュや mount ユニットファイルなどを完全に削除したい場合、以下の手順に従って下さい。
1. /var/lib/snapd/snap/
にマウントされている snap を全てアンマウントします:
# umount $(mount | grep snap | awk '{print $3}')
2. 状態ディレクトリとマウントフックを削除します:
# rm -rf /var/lib/snapd # rm -rf /var/snap
3. 起動時に /var/lib/snapd/snaps
から /var/lib/snapd/snap
に snap をマウントするユニットファイルを全て削除します:
# find /etc/systemd/system -name "*snap-*.mount" -delete # find /etc/systemd/system -name "snap.*.service" -delete
使用方法
snap の検索
次のコマンドで Ubuntu Store を検索できます:
$ snap find searchterm
snap のインストール
次のコマンドで snap をインストールすることができます:
# snap install snapname
上記のコマンドを実行するには root 権限が必要です。現在のところ、通常ユーザーで snap をインストールすることはできません。インストールすると /var/lib/snapd/snaps
に snap がダウンロードされて、/snap/<snapname>
にマウントされ、システムから使える状態になります。$PATH
環境変数に /var/lib/snapd/snap/bin
を追加することでインストールした snap を起動することが可能です。
システムが起動したときに全ての snap が利用できるように、snap のマウントユニットも作成され、/etc/systemd/system/multi-user.target.wants/
にシンボリックリンクとして追加されます。インストールが完了したら、次のコマンドでインストールされている snap を確認できます。バージョン番号やリビジョン番号、開発者も表示されます:
$ snap list
ローカルのハードドライブから野良 snap をインストールするには:
# snap install --dangerous /path/to/snap
snap のアップデート
snap をアップデートするには次のコマンドを使用:
# snap refresh
snap の削除
次のコマンドで snap を削除できます:
# snap remove snapname
ヒントとテクニック
Classic snap
一部の snap (例: Skype や Pycharm) は classic confinement を使用しますが、classic confinement は FHS に準拠していない /snap
ディレクトリを必要とします。snapd パッケージには /snap
ディレクトリは含まれていません。classic snap をインストールしたい場合、/var/lib/snapd/snap
から /snap
に手動でシンボリックリンクを作成してください:
# ln -s /var/lib/snapd/snap /snap
参照
- arstechnica article (06/16) Ubuntu の snap が Arch などのディストリで使えるようになったことについての記事
- Snapcraft フォーラム