스냅 패키지로 설치된 앱을 실행할 때 권한 거부 오류-Ubuntu 17.04


22

내 홈 디렉토리가 루트 쓰기를 허용하지 않는 nfs 마운트 지점에 마운트되는 스냅 애플리케이션을 실행할 때 권한 거부 오류가 발생합니다. 이것은 비정상적인 구성이 아니므로 버그로 간주합니다.

오류 메시지 :

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

우분투 16에서도 같은 문제가있었습니다.

요청에 따라 더 많은 정보 :

우분투 "우분투 소프트웨어"를 사용하여 스냅 응용 프로그램 (예 : vlc)을 설치합니다. 명령 줄에서 실행하려고하면 위의 "Permission denied"메시지가 나타납니다.

방금 컴퓨터에 Ubuntu를 다시 설치 했으므로 OS와 관련이 없습니다. 내 uid : gid를 보존하여 이전 nfs 공유를 마운트 할 수있었습니다.

마운트 지점 또는 nfs에는 문제 가 없습니다 . 보안상의 이유로 마운트 지점을 루트로 작성할 수 없습니다.

문제는 버그 리포트를 제출해야합니까? 다음 단계는 무엇입니까?


질문이 뭐야? 버그 신고를하는 방법?
mikewhatever

버그 보고서를 제출하면 nfs 및 마운트 지점의 구성 문제이며 버그가 아닌 시도 할 수 있으므로 유효하지 않은 것으로 표시됩니다.
Panther

좀 더 자세히 설명해 주시겠습니까? 정확히 무엇을 했으며, 무엇을 달성하고 싶었고 대신에 무슨 일이 있었습니까? 경고 또는 오류 메시지가 나타 났습니까? 귀하의 질문에 그것들을 완전히 재생산하십시오. Ubuntu에서 터미널 내용과 대부분의 대화 메시지를 선택, 복사 및 붙여 넣기 할 수 있습니다. ( 좋은 질문어떻게합니까? )
David Foerster

위의 문제를 해결하기 위해 원래 질문을 편집했습니다.
Tom Cumming

답변:


11

우분투 18.04에서도 마찬가지입니다.

사용자 홈 디렉토리가 /home(또는 /) 마운트 아래에 있지 않으면로 작업 할 수 없습니다 snap. 내 HOMEDIR이 다른 로컬 SSD 디스크에 있었지만 아래 /home에 마운트되지 않았기 때문에 snap에 의해 설치된 모든 패키지가 실패했습니다.

Canonical이 스냅을 지원하기 위해 움직이고 있기 때문에 NFS에 의해 마운트 된 다른 파일 시스템의 HOMEDIR과 같은 이런 종류의 장점을 풀어야합니다.

아마도 미래에는 snap이 더 유연 할 것이지만 우선 순위는 아닙니다 : https://forum.snapcraft.io/t/how-can-i-use-snap-when-i-dont-use-home-user/ 3352/6

현재 해결 방법 은 패키지 snap에서 *.tar.gz또는 *.deb패키지 에서 항목 을 제거 하고 설치하는 것입니다 .


8
지금까지 스냅 = 최악의 아이디어. 너무 빨리
:-p

2
이것은 매우 슬프고 특히 showtopper에 가깝습니다. 특히 $ HOME이 autofs-ldap를 통해 마운트 된 NFS 또는 CIFS 공유에 상주하는 대규모 배포의 경우.
Sebastian Stark

1
"Canonical이 스냅을 지원하기 위해 움직이고 있기 때문에 NFS에 의해 마운트 된 다른 파일 시스템의 HOMEDIR과 같은 이런 종류의 장점을 풀어야합니다." 정식은 상업 / 비즈니스 환경에서 우분투를 실행하는 사람들이 "스냅 패키지"를 사용할 수 있도록 로컬 네트워크에 탑재 된 홈 디렉토리 사용을 중단하도록 설득 할 것이라고 생각하지 않습니다 ...
Dean

1
오늘날 SSD / HD PC는 너무 일반적입니다. 내 / snap / bin / 명령 중 많은 (전부는 아님) 명령이 입력 파일에 잘못된 "권한 거부"오류로 실패하고 파일 권한을 엉망으로 만들지 않고 / snap / 패키지를 제거하여 문제를 해결할 수 없습니다. apt로 다시 설치하십시오! (우분투 18.04)
SYK

1
이 질문 또는 그 원인은 저의 책에서 완전히 과소 평가되었습니다. 사용자층의 주요 부분에서 작동하지 않는 것이 우선 순위가 낮을 수는 없습니다.
SeveQ

2

보안을 위해 Snap 앱은 기본적으로 샌드 박스로 제한됩니다. 스냅 응용 프로그램이 홈 디렉토리에서 데이터를 읽고 쓸 수있게하려면 클래식 모드로 설치해야합니다. 시험:

rclone install --classic vlc

이것은 당신을 위해 작동합니다.

응용 프로그램 샌드 박싱이 중요한 경우 firejail 을 살펴볼 수 있습니다 .



1

내 홈 디렉토리가 / home / $ USER에서 다른 마운트 지점으로 심볼릭 링크되어 있기 때문에이 문제가 발생했습니다. https://bugs.launchpad.net/snapcraft/+bug/1620771 의 제안으로 수정했습니다.

즉, 비표준 홈 디렉토리를 apparmor의 HOMEDIRS 변수에 추가해야합니다.

$ sudo dpkg-reconfigure apparmor

또는 : /etc/apparmor.d/tunables/home.d/에 홈 디렉토리의 마운트 지점을 가리키는 파일을 만듭니다.

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

그런 다음 적절한 측정을 위해 의류 캐시를 삭제하고 재부팅해야합니다.

$ sudo rm -f /etc/apparmor.d/cache/* /var/cache/apparmor/snap.*
$ sudo reboot
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.