web-dev-qa-db-ja.com

スナップパッケージとしてインストールされたアプリを実行すると、アクセス許可がエラーを拒否-Ubuntu 17.04

ホームディレクトリがroot-writeを許可しないnfsマウントポイントにマウントされているスナップアプリケーションを実行すると、Permission deniedエラーが発生します。これは珍しい構成ではないので、これはバグだと思います。

エラーメッセージ:

cannot create user data directory: /home/tcumming/snap/vlc/4: Permission denied

Ubuntu 16でも同じ問題がありました。

要求されたいくつかの詳細情報:

「Ubuntu Software」というubuntuを使用して、スナップアプリケーション(vlcなど)をインストールします。 (コマンドラインから)実行しようとすると、上記の "Permission denied"メッセージが表示されます。

マシンにUbuntuを再インストールしたばかりなので、OSをいじることはありません。以前のnfs共有をマウントできるように、uid:gidを保存しました。

これはnotマウントポイントまたはnfsの問題です。セキュリティ上の理由から、マウントポイントはルート書き込み可能ではありません。

質問は、バグレポートを提出する必要があると思いますか?次のステップは何ですか?

16
Tom Cumming

Ubuntu 18.04でも同じことが起こります。

ユーザーのホームディレクトリが/home(または/)マウントの下にない場合、snapで作業することはできません。 HOMEDIRは別のローカルSSDディスクにありましたが、/homeの下にマウントされていなかったため、スナップによってインストールされたすべてのパッケージが失敗しました。

Canonicalはスナップをサポートするために移動しているため、NFSによってマウントされた他のファイルシステム上のHOMEDIRなど、この種の素晴らしいものを失う必要があります。

将来スナップはより柔軟になるかもしれませんが、優先順位ではありません: https://forum.snapcraft.io/t/how-can-i-use-snap-when-i-dont-use- home-user/3352/6

現時点での回避策は、snapを削除し、*.tar.gzまたは*.debパッケージからインストールすることです。

7
estibordo

Snapアプリは、セキュリティのためにデフォルトでサンドボックスに限定されています。スナップアプリケーションでホームディレクトリのデータを読み書きできるようにするには、それらをクラシックモードでインストールする必要があります。試してください:

rclone install --classic vlc

これはあなたのために働くはずです。

アプリケーションのサンドボックス化が懸念される場合は、 firejail を調べてください。

2
Prajjwal

ソフトウェアストアからスナップアプリケーションの権限を設定できます。参照: http://www.linuxandubuntu.com/home/snap-application-permissions

1
Fabian de Boer

ホームディレクトリが/ home/$ USERから別のマウントポイントにシンボリックリンクされているため、これに遭遇しました。次からの提案で修正しました: https://bugs.launchpad.net/snapcraft/+bug/1620771

つまり、非標準のホームディレクトリをapparmorのHOMEDIRS変数に追加する必要があります。

$ Sudo dpkg-reconfigure apparmor

or:/etc/apparmor.d/tunables/home.d/に、ホームディレクトリのマウントポイントを指すファイルを作成します。

@{HOMEDIRS}+=/mnt/hdd/.home/

次に、適切な手段として、apparmorのキャッシュを削除して再起動する必要があります。

$ Sudo rm -f /etc/apparmor.d/cache/* /var/cache/apparmor/snap.*
$ Sudo reboot