26 noviembre 2016

udiskctl - Cómo montar discos usb cuando estamos en linea de comando y los habíamos montado en el escritorio

Actualmente estoy utilizando (probando) Ubuntu 16.04. No me parece una mala distribución, teniendo en cuenta que yo era una persona que lo hacía casi todo a mano y me estoy adaptando a que Ubuntu lo haga casi todo por mi automáticmaente

Una de las cosas que hace por mi es montar los discos usb externos. No hace falta que le de ninguna indicación, y él sólo coge el nombre del volumen y lo monta en la ruta /media/usuario/Nombre del Volumen. No necesito editar fstab ni estar haciendo cosas extrañas (entiendo que las últimas versiones de Fedora y de OpenSuse también lo hacen, pero mi experiencia actual es con Ubuntu)

Cuando estás en el escritorio, está muy bien, pero hay veces, que estoy utilizando mi ordenador del trabajo (que tiene Windows) y me quiero conectar a mi ordenador personal y acceder a un disco USB que está conectado.

Pues bien, una de estas veces me encontré a mi mujer logueada, y el disco que tenía montado con propiedad de mi usuario, en una ruta para mí, estaba montado con el propietario del usuario de mi mujer, y la ruta había cambiado para su usuario.

Directamente lo desmonté con el usuario root, pero no tenía ni idea de cómo podía replicar el comportamiento del escritorio en línea de comando sin tener que volver a editar fstab y opciones de montaje, etc ,etc...

Buscando un poco encontré udisks , que provee interfaces para acceso a dispositivos de almacenamiento y discos. Cualquier aplicación puede acceder al demonio udisksd a través de udisks.

Todo esto está muy bien, pero seguía sin saber cómo acceder. Buscando un poco más encontré udisksctl , que es un comando que permite interactuar con udisks en línea de comando.

Su uso es muy fácil:

jose@r2d2:~$ udisksctl mount -b /dev/sdb1
==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-other-seat ===
Para montar TOSHIBA MQ01UBD100 (/dev/sdb1) necesita autenticarse
Multiple identities can be used for authentication:
 1.  Jose ,,, (jose)
 2.  Vanesa ,,, (vanesa)
Choose identity to authenticate as (1-2): 1
Password:
==== AUTHENTICATION COMPLETE ===
Mounted /dev/sdb1 at /media/jose/virtualizacion.
jose@r2d2:~$ l

Simplemente hay que saber el dispositivo de bloque que se corresponde a nuestro disco USB y lo podremos montar con nuestro usuario como si estuviéramos en el escritorio.