Solución:
Ocultar particiones de Nautilus a través de »Discos«
En Ubuntu 12.10 y posteriores, existe una utilidad llamada Discos que muestra todos los discos disponibles y permite modificar las opciones de montaje para cada partición.
Entre las diversas opciones, puede decidir si la partición se montará en el momento del arranque o no, y si aparecerá en la interfaz de usuario. Se necesitan privilegios de administrador para aplicar cambios.
Esta guía puede ayudarlo.
¿Cómo se ocultan los discos para que no aparezcan en Nautilus?
Primero, debe saber qué discos y / o particiones desea ocultar. Por lo que he observado, Nautilus presentará estos dispositivos por etiqueta. Si no tiene una etiqueta, entonces el dispositivo se asociará con el tamaño del disco / partición.
Mira la imagen de abajo. Los del cuadro rojo no tienen etiquetas. El sistema de archivos es siempre el actual
/root
partición, mientras que el sistema de archivos de 45 GB es una partición que no tiene etiqueta. En este ejemplo, es el/root
partición de mi Ubuntu 10.10 (estoy ejecutando Natty Narwhal pero he mantenido mi Maverick Meerkat como una especie de copia de seguridad). Los otros dos, Lucid Lynx y Karmic Koala, son las etiquetas de mis 2 particiones NTFS.Las etiquetas son importantes en caso de que no esté familiarizado con la forma en que Linux se refiere a estos dispositivos. En Windows, ya sea un disco o una partición, se denominan con letras (C o D) y así sucesivamente. Linux tiene un sistema de nombres más específico. Normalmente es sdaX o hdbY, donde X e Y son los números de las particiones en las unidades sda o hdb, respectivamente. Por lo tanto, si hay 3 particiones en la unidad sda, habrá sda1, sda2 y sda3. Es más probable que Windows lo llame simplemente C, D y E.
Ahora monte todas sus unidades y / o particiones. Sabes cómo hacer eso, ¿no? Haga clic en el nombre en Nautilus y lo montará por usted. Le sugiero que desmonte y retire todas las unidades extraíbles para evitar confusiones.
Una vez que haya montado todo, abra una terminal ejecutando gnome-terminal. Simplemente escríbalo en el tablero si está usando Natty, o búsquelo en el menú si está usando el escritorio clásico de Ubuntu. La razón por la que montar todo es la forma más fácil de averiguar los nombres de los dispositivos es porque mount literalmente le dirá que el dispositivo X está montado en el directorio Y con el nombre Z. Fácil, ¿verdad? Puedes mirar adentro
/proc/partitions
o
/dev/disks/
pero solo te confundirá.Ejecute el comando mount una vez. Desde la salida, tome nota de los nombres de la unidad o particiones a través de su etiqueta asociada. Se parecerá a la imagen de abajo.
En la segunda imagen de arriba, notará que no hay ninguna referencia al sistema de archivos de 45 GB montado. Esto se debe a que este último no tiene etiqueta, como mencioné anteriormente, y el uuid es demasiado largo y se verá horrible en Nautilus. El sistema subyacente lo montará por su nombre uuid en / media, mientras que el resto lo montará por su etiqueta.
Dado que el sistema de archivos de 45 GB (
/dev/sdb2
) realmente no tiene nada que ver con que se muestre en Nautilus, quiero ocultar eso. También quiero esconder Karmic Koala (/dev/sda1
) porque es mi partición de Windows C. Dios no quiera que borre archivos de cualquiera de estas particiones por accidente.¡Ahora comienza el escondite! Pero antes de eso, asegúrese de saber qué particiones desea ocultar (como las identifiqué anteriormente). También puede enumerar todas sus particiones usando el comando
sudo fdisk -l
para identificarlos más rápido. Me voy a escondersda1
ysdb2
en los siguientes pasos, pero debe sustituir los nombres de las particiones.
Crea un archivo llamado
99-hide-disks.rules
usando su editor favorito. Este archivo es donde ponemos la regla para decirle al kernel de Linux que oculte el dispositivo. No explicaré por qué el nombre del archivo suena raro. Ese será el tema de otra publicación aquí, si no me da pereza explicándolo.Coloque el texto a continuación en el archivo que acaba de crear, pero asegúrese de cambiar el nombre del dispositivo que corresponda a su caso. En el mío, quiero ocultar sda1 y sdb2.
El formato general es (distingue entre mayúsculas y minúsculas):
KERNEL=="device name", ENV{UDISKS_PRESENTATION_HIDE}="1"
En mi caso, escribiré lo siguiente en 99-hide-disks.rules:
KERNEL=="sda1", ENV{UDISKS_PRESENTATION_HIDE}="1" KERNEL=="sdb2", ENV{UDISKS_PRESENTATION_HIDE}="1"
No olvide guardar cuando haya terminado.
Ahora copie el archivo a
/etc/udev/rules.d/
con el comando,sudo cp 99-hide-disks.rules /etc/udev/rules.d/
Ahora hemos terminado. El sistema lo habrá notado de inmediato porque udev (la administración de dispositivos para Linux) busca cambios en la carpeta de reglas a través de inotify (este es un servicio de notificador de eventos del sistema de archivos). Sin embargo, no se aplicará hasta que reinicie. Supuestamente puede usar el comando udevadm para activar las nuevas reglas, pero todavía no lo he probado. Reinicie su Ubuntu y observe cómo las particiones ya no son visibles en Nautilus.
Editar:
Al menos para Ubuntu 12.10, las líneas anteriores ya no funcionan y deberían cambiarse para usar este formato en su lugar:
KERNEL=="sda1", ENV{UDISKS_IGNORE}="1" KERNEL=="sdb2", ENV{UDISKS_IGNORE}="1"
Tachyons presenta una gran respuesta que muestra cómo ocultar una partición a aplicaciones udisks (como Dolphin). Sin embargo, confiar en un nombre de partición fijo es propenso a errores, es mejor usar UUID que son únicos para una partición. Esta respuesta fue probada con Kubuntu 13.10.
Para hacerlo, primero hay que encontrar un UUID. Eso se puede encontrar de varias formas, una de ellas es ejecutando el comando udisksctl info -b /dev/sda1
(dónde /dev/sda1
es tu partición, por supuesto). El UUID es visible debajo IdUUID y la partición no está marcada como oculta (ignorada):
/org/freedesktop/UDisks2/block_devices/sda1: org.freedesktop.UDisks2.Block: Configuration: [] CryptoBackingDevice: "https://foroayuda.es/" Device: /dev/sda1 DeviceNumber: 2049 Drive: '/org/freedesktop/UDisks2/drives/...' HintAuto: false HintIconName: HintIgnore: false HintName: HintPartitionable: true HintSymbolicIconName: HintSystem: true Id: by-id-ata-...-part1 IdLabel: SystemReserved IdType: ntfs IdUUID: A10CDE7682786D73 IdUsage: filesystem IdVersion: MDRaid: "https://foroayuda.es/" MDRaidMember: "https://foroayuda.es/" PreferredDevice: /dev/sda1 ReadOnly: false Size: 104857600 Symlinks: /dev/disk/by-id/ata-...-part1 /dev/disk/by-id/wwn-...-part1 /dev/disk/by-label/SystemReserved /dev/disk/by-uuid/A10CDE7682786D73
Ahora, para ocultar esta partición, cree una regla udev que coincida con la partición por este UUID y ocúltela de los udisks. Por ejemplo, si desea ocultar la partición NTFS anterior (con UUID A10CDE7682786D73) y otra partición ext4 (con UUID faae2c6a-0545-4bfa-a545-440c63467467), tu /etc/udev/rules.d/99-hide-partitions.rules
el archivo debe contener:
# hide "SystemReserved" partition in UI SUBSYSTEM=="block", ENV{ID_FS_UUID}=="A10CDE7682786D73", ENV{UDISKS_IGNORE}="1" # hide /home partition in left panel SUBSYSTEM=="block", ENV{ID_FS_UUID}=="faae2c6a-0545-4bfa-a545-440c63467467", ENV{UDISKS_IGNORE}="1"
Los comentarios son opcionales, pero se recomiendan para que el UUID sea menos mágico. Estar seguro no mezclar =
con ==
, uno establece la variable, el otro se compara con una variable.
Después de crear el archivo de reglas, aplíquelo reiniciando o mediante la ejecución:
sudo udevadm control --reload
sudo udevadm trigger --subsystem-match=block
Ahora ejecuta el udisksctl info -b /dev/sda1
comando de nuevo y debe contener:
HintIgnore: true