Estoy intentando configurar una carpeta compartida de VirtualBox que cualquier usuario pueda montar, así que esta es la línea que puse /etc/fstab
:
# mint shared folder
mint /media/sf_mint vboxsf defaults,user,uid=1000,gid=999 0 0
Sin embargo, recibo este mensaje de error:
juanlu@minted ~ $ mount mint
Only root can mount shared folders from the host.
juanlu@minted ~ $ sudo !!
sudo mount mint
unknown mount option `user'
valid options:
rw mount read write (default)
ro mount read only
uid =<arg> default file owner user id
gid =<arg> default file owner group id
ttl =<arg> time to live for dentry
iocharset =<arg> i/o charset (default utf8)
convertcp =<arg> convert share name from given charset to utf8
dmode =<arg> mode of all directories
fmode =<arg> mode of all regular files
umask =<arg> umask of directories and regular files
dmask =<arg> umask of directories
fmask =<arg> umask of regular files
Si elimino la user
opción, me veo obligado a usarla, sudo
pero al menos el propietario del punto de montaje está asignado correctamente. ¿Qué estoy haciendo mal aquí?
Tenga en cuenta que esto podría estar duplicado paraMontar una carpeta compartida de VBox como usuario, pero en realidad probé una opción que se suponía que funcionaba.
Respuesta1
Comoamablemente respondido en los foros de soporte al usuario de VirtualBox, las carpetas compartidas de vbox en realidad no sondispositivos(si lo fueran, estarían por debajo /dev/
) ypor lo tanto la opción "usuario"entre otrosno es aplicable. En consecuencia, no es posible permitir que usuarios que no sean administradores monten manualmente la carpeta compartida.
Sin embargo, todavía existe la posibilidad de montar automáticamente el vboxsf /etc/rc.local
y personalizar las opciones de montaje. Esto es similar al montaje automático pero permite establecer máscaras y permisos adecuados para la carpeta.como se explica aquí. Sin embargo, tenga en cuenta que esta página esincompletoen el sentido de que apunta a la mount
página de manual para enumerar la lista de opciones disponibles pero, de hecho, algunas de ellas no son aplicables, como se vio arriba.
Respuesta2
Esto parece un error en el archivo del programa.montaje.vboxsf.c, que es parte de VirtualBox Guest Additions para Linux, y creo que no estás haciendo nada malo.
La verificación de que se ejecute en la cuenta raíz se realiza inmediatamente en main() al inicio del programa y antes de que se procesen los parámetros, es decir, antes de que user
se detecte o procese el parámetro.
La verificación debería haberse realizado mucho más tarde, después de que se cambió el ID de usuario efectivo del proceso (o su bifurcación) a la cuenta de usuario especificada.
Deberías señalar este error a los desarrolladores de VirtualBox.
El foro correcto parece serVirtualBox en hosts Linux(Necesario iniciar sesión).
Respuesta3
No necesariamente necesita la user
opción /etc/fstab
para permitir que los usuarios normales monten un sistema de archivos.
Otra opción es configurar sudo
para permitir esta acción, ya sea con o sin solicitar la contraseña del usuario ejecutante.
De man sudoers
:
Autenticación y registro
La política de seguridad de sudoers requiere que la mayoría de los usuarios se autentiquen antes de poder utilizar sudo. No se requiere una contraseña si el usuario que invoca es root, si el usuario de destino es el mismo que el usuario que invoca o si la política ha deshabilitado la autenticación para el usuario o comando.
Etiqueta_Especificación
[...]
NOCONTRASEÑA y CONTRASEÑA
De forma predeterminada, sudo requiere que el usuario se autentique antes de ejecutar un comando. Este comportamiento se puede modificar mediante la etiqueta NOPASSWD. Al igual que Runas_Spec, la etiqueta NOPASSWD establece un valor predeterminado para los comandos que le siguen en Cmnd_Spec_List. Por el contrario, la etiqueta PASSWD se puede utilizar para revertir cosas. Por ejemplo:
ray rushmore = NOPASSWD: /bin/kill, /bin/ls, /usr/bin/lprm
permitiría al usuario ray ejecutar /bin/kill, /bin/ls y /usr/bin/lprm como root en la máquina rushmore sin autenticarse.
Entonces, una línea como esta /etc/sudoers
permitirá a cualquier usuario montar el sistema de archivos especificado sin ingresar ninguna contraseña:
ALL ALL = NOPASSWD: /bin/mount mint
Entonces sudo mount mint
debería funcionar como un usuario normal.