CURSO DESDE 0 DE GNU/LINUX. Versión 2.
Entrega 24. Montando unidades.
% ^What is saccharine?
Bad substitute.
Preámbulo.
Según mi experiencia por los foros (sobre todo en los de www.noticias3d.com que no son precisamente específicos de Linux), hay 3 cosas que realmente se llevan la palma en cuanto a generación de dudas puesto que se repiten con mucha frecuencia. Son las siguientes: la instalación y/o compilación de programas, cómo montar dispositivos (entiéndase discos duros, pen usb, grabadoras, multilectores...), y las referentes a la configuración de las X (entorno gráfico) y conseguir la aceleración por Hardware de la tarjeta de vídeo.
La primera más o menos está ya vista o se han visto las nociones para defenderse. La segunda es lo que vamos a ver en esta entrega, cosa que aunque puede llegar a ser compleja lo intentaremos ver de una forma sencilla y práctica. Y la tercera puede ser un tema bastante avanzado que creo conveniente ver aún más adelante, sobre todo por lo extenso que puede llegar a ser.
¿Qué necesitamos saber y repasar?
Para la presente entrega es necesario saber cómo se nombran los dispositivos en Linux, cosa que ya vimos en la entrega 2 y si a estas alturas no lo sabes debes repasar la entrega 2, teniendo en cuenta que hay una errata ya que los ratones usb se referencian generalmente por '/dev/input/mice', pero concretamente dentro de /dev/usb veremos los dispositivos para esos puertos como el ratón, escáner e impresoras entre otros.
En cuanto a las unidades de almacenamiento como son discos duros, disqueteras, unidades ópticas, pen usb y demás, ya sean locales o de forma remota (a través de la red por ejemplo), saber que no se accede directamente a ellas por su dispositivo.
En los sistemas Unix no existen las unidades como en Windows (A:, B:, C: ...). Existe, como ya comentábamos en las primeras entregas, un directorio '/' a partir del cual cuelga todo. Para acceder a una unidad (como una partición) hay que montarla en un directorio dentro de nuestro árbol de directorios. Con esto conseguimos un 'todo' uniforme y accedemos a todo de la misma manera, ya sean particiones FAT (las propias de Linux) o una tarjeta de memoria o la memoria de una cámara digital, esté dentro de tu ordenador o en la China. Es importante entender esto y el por qué se montan y se desmontan unidades, que no es más que enlazar y desenlazar con el árbol de directorios, para no escuchar cosas tan absurdas como que “Linux está muy atrasado porque hay que montar unidades”.
Por convenio, consenso o costumbre, los dispositivos son montados en un directorio dentro '/mnt', y en muchas distribuciones los dispositivos removibles como disqueteras y dispositivos ópticos dentro de '/media'. Aunque realmente podemos montarlos en cualquier otro directorio que no sea '/', si bien es completamente absurdo montar unidades en sitios del sistema como '/boot' , '/bin', '/usr' y similares.
Y por último, 1 dispositivo se monta en un único directorio para él solito, nada de montar todo en el mismo sitio. Si se os ocurre montar en un directorio que no esté vacío observaréis que lo anterior desaparece, realmente lo que sucede es que queda oculto e inaccesible hasta que se desmonte el dispositivo.
Tanto monto, monto tanto...
Para montar unidades tenemos un comando muy interesante y útil:
mount [-o Opciones] [-t tipo] [dispositivo] [directorio]
Evidentemente esta no es la única forma de utilizar mount ya que existen más opciones y parámetros, pero sí la que nos será de utilidad para nosotros que estamos aprendiendo. Lo primero que vamos a ver es el uso de mount sin parámetros:
matados2k@fortaleza:~$ mount
/dev/hda11 on / type ext3 (rw,errors=remount-ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/hda10 on /boot type ext3 (rw)
/dev/hda6 on /home type ext3 (rw)
/dev/hda12 on /usr type ext3 (rw)
/dev/hda9 on /mnt/auxi2 type vfat (rw,noexec,nosuid,nodev,umask=0)
/dev/hda8 on /mnt/auxi1 type vfat (rw,noexec,nosuid,nodev,umask=0)
/dev/hda7 on /mnt/juegos type vfat (rw,noexec,nosuid,nodev,umask=0)
/dev/hda1 on /mnt/win_xp type ntfs (ro,noexec,nosuid,nodev,umask=0)
usbfs on /proc/bus/usb type usbfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
matados2k@fortaleza:~$