Error de permiso denegado al ejecutar aplicaciones instaladas como paquetes a presión - Ubuntu 17.04

22

Recibo un error de permiso denegado cuando ejecuto una aplicación instantánea, donde mi directorio de inicio está montado en un punto de montaje nfs que no permite la escritura de raíz. Esta no es una configuración inusual, así que considero que es un error.

El mensaje de error:

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

También tuve el mismo problema con ubuntu 16.

Alguna información más según lo solicitado:

Utilizando ubuntu, "Ubuntu Software" instalo una aplicación instantánea (por ejemplo, vlc). Cuando intento ejecutarlo (desde la línea de comandos), aparece el mensaje "Permiso denegado" que aparece arriba.

Acababa de reinstalar Ubuntu en la máquina, por lo que no ha habido problemas con el sistema operativo. Preservé mi uid: gid para poder montar mi anterior nfs share.

Esto no es un problema con el punto de montaje o nfs. Nuestro punto de montaje no se puede escribir desde la raíz por razones de seguridad.

Supongo que la pregunta es, ¿debería presentar un informe de error? ¿Cuáles son mis siguientes pasos?

Tom Cumming
fuente
¿Cuál es la pregunta? ¿Cómo presentar un informe de error?
mikewhatever
Supongo que si presenta un informe de error, se marcará como no válido, ya que es un problema de configuración con nfs y el punto de montaje y no un error, pero puede intentarlo.
Panther
¿Podría agregar un poco más de detalles? ¿Qué hiciste exactamente , qué quisiste lograr y qué sucedió en su lugar? ¿Encontró algún mensaje de advertencia o error? Por favor, reproduzca en su totalidad en su pregunta. Puede seleccionar, copiar y pegar el contenido del terminal y la mayoría de los mensajes de diálogo en Ubuntu. (vea ¿Cómo hago una buena pregunta? )
David Foerster
Edité mi pregunta original a la dirección anterior.
Tom Cumming

Respuestas:

11

Lo mismo sucede en Ubuntu 18.04.

Si el directorio de inicio del usuario no está bajo el /home(o /) montaje, no es posible trabajar con él snap. Mi HOMEDIR estaba en otro disco SSD local, pero como no estaba montado debajo /home, todos los paquetes instalados por snap fallaban.

Dado que Canonical se está moviendo para admitir snap, tendrá que perder este tipo de cosas buenas, como HOMEDIR en otros sistemas de archivos, montados por NFS, etc.

Quizás Snap será más flexible en el futuro, pero no es una prioridad: https://forum.snapcraft.io/t/how-can-i-use-snap-when-i-dont-use-home-user/ 3352/6

La solución en este momento es eliminar snape instalar cosas desde *.tar.gzo desde *.debpaquetes.

estibordo
fuente
8
Hasta ahora snap = peor idea de todas. Demasiado pronto :-p
Ligemer
2
Esto es realmente triste y cercano a un showtopper, especialmente para implementaciones enormes donde $ HOME reside en recursos compartidos NFS o CIFS montados a través de autofs-ldap.
Sebastian Stark
1
"Dado que Canonical se está moviendo para admitir snap, tendrá que perder este tipo de cosas buenas, como HOMEDIR en otros sistemas de archivos, montados por NFS, etc." No creo que canonical vaya a convencer a las personas que ejecutan Ubuntu en entornos comerciales / comerciales de que dejen de usar directorios de inicio montados en red centralizados en favor de los locales solo para que puedan usar "paquetes instantáneos" ...
Dean
1
Las PC SSD / HD son muy comunes hoy en día. Muchos (¡pero no todos!) De mis comandos / snap / bin / fallarían con el error engañoso de "permiso denegado" con los archivos de entrada y el problema no podría resolverse alterando los permisos de los archivos sino eliminando el / snap / package y reinstalarlos con apt! (Ubuntu 18.04)
SYK
1
Esta pregunta, o su causa, está totalmente subestimada en mi libro. No puede ser de baja prioridad que las cosas no funcionen para una parte importante de la base de usuarios.
SeveQ
2

Las aplicaciones Snap están limitadas a un sandbox de forma predeterminada, por seguridad. Si desea que las aplicaciones instantáneas puedan leer / escribir datos en su directorio de inicio, debe instalarlas en modo clásico. Tratar:

rclone install --classic vlc

Esto debería funcionar para ti.

Si el sandboxing de aplicaciones es una preocupación, entonces es posible que desee investigar la cárcel de incendios .

Prajjwal
fuente
1

Me encontré con esto porque mi directorio de inicio está vinculado de / home / $ USER a otro punto de montaje. Lo arreglé con la sugerencia de: https://bugs.launchpad.net/snapcraft/+bug/1620771

En resumen, debe agregar su directorio de inicio no estándar a la variable HOMEDIRS de apparmor:

$ sudo dpkg-reconfigure apparmor

o: cree un archivo en /etc/apparmor.d/tunables/home.d/ que apunte al punto de montaje de su directorio de inicio:

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

Luego, solo por si acaso, debe eliminar el caché de apparmor y reiniciar:

$ sudo rm -f /etc/apparmor.d/cache/* /var/cache/apparmor/snap.*
$ sudo reboot
Jonathan Perry-Houts
fuente