El misterio de los puntos de montaje
ArticleCategory:
UNIXBasics
AuthorImage:[Here we need a little image from you]
TranslationInfo:[Author + translation history. mailto: or
http://homepage]
original in en Guido Socher
en to es Roberto Uris
AboutTheAuthor:[A small biography about the author]
A Guido le gusta Linux debido a la comuindad que existe
alrededor de este sistema operativo. Es un proyecto enorme en
la cual diferentes personas alrededor del mundo estan trabajando,
todos con un mismo objetivo: Mejorarlo cada dia.
Desafortunadamente Linux se ha vuelto tan grande que tambi�n
atrae a los chicos malos que solamente quieren hacer dinero y no
dar nada a cambio. Cuidese de estas personas! Suelen dar la imagen
de ser empresas "pro-linux" pero en realidad solamente son oportunistas.
Abstract:
Este articulo explica el concepto the puntos the montaje, pero
tambien espero que proporcione informaci�n interesante para
lectores no muy novatos.
ArticleIllustration:
ArticleBody:
Introducci�n
Iniciar� explicando el concpeto del montaje the sistemas de
archivos y luego tocar� algunos temas m�s avanzados. Si Ud.
cree que ya es un experto en Linux, puede saltarse las primeras
secciones.
Como funciona
Bajo windows exsite,al a�adir un disco duro nuevo siempre se hace un l�o.
Lo que antes era D, de repente es E: y tanto los usuarios como los
programas instalados se confunden.
En Unix no existe este problema porque todos los discos f�sicos
se insertan en el arbol del directori�. Esto se puede ver cuando se
teclea "mount" � "df":
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda1 9070728 4701180 3908768 55% /
/dev/hda3 24950428 683412 22999584 3% /home
none 257236 0 257236 0% /dev/shm
# mount
/dev/hda1 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/shm type tmpfs (rw)
/dev/hda3 on /home type ext3 (rw)
|
Aqu� tenemos dos particiones, uno que contiene todo menos /home.
Este es la partici�n raiz "/", y se encuentra conectado fisicamente
a hda1. hda1 es la primera partici�n (1) en el disco duro ide (hda).
La tercera partici�n (hda3) en el mismo disco esta montado en /home.
Por ende, si Ud. accesa /home, entonces esta accesando los archivos
en hda3. De esta forma no tendria que preocuparse si esto es ahora D:
� E: � ??? por que siempra ser� un arbol de directori�s y esto siempre
permanecer� igual.
El problema "file-system busy"
Linux realiza operaciones de lectura y escritura en b�fer.
Esto se puede evidenciar si Ud. tiene conectado algun disco
por medio de usb version 1.1 y accesa alg�n archivo grande en
ese dispositivo. La primera vez que accesa ese archivo es muy
lento pero la segunda vez que accesa ese mismo archivo se hace
a una muy alta velocidad, tanto asi que la luz en el dispositivo
usb nisiquiera se prende.
Debido a esta caracteristica es necesario desmontar el disco antes
de quitarlo f�sicamente. Para discos duros internos esto nunca
es un problema pero si lo es para cdroms y dispositivos USB.
Si por ejemplo Ud. monta un usb-stick baj� /mnt/usb y tecl�a
"cd /mnt/usb", entonces bash esta usando ese sistema de archivos.
Si Ud. trata de desmontarlo desde otra terminal obtendr� un error
"file system busy" (sistema de archivos ocupado) y el desmontaje
fallar�. Es suficiente con salirse del directori� /mnt/usb con "cd"
y entonces s� podr� desmontar el dispositivo. A veces el problema
puede ser que Ud. se olvid� quien esta usando el dispositivo y tiene
tantas aplicaciones abiertas que es dif�cil saber que es lo que esta
causando el problema.
Le puede preguntar a su computadora!
# fuser -m -u /mnt/usb
/mnt/usb: 1347c(root) 1348c(guido) 1349c(guido)
El resultado de fuser es una lista de procesos que todav�a
estan utilizando el sistema de archivos en questi�n. Ahora puede
revisar con "ps auxw" c�al es el proceso � simplemente lo puede
detener con un "kill". Ahora s�, umount puede funcionar.
�Y windows lo puede hacer tambi�n?
�Por qu� no simplemente sacar el usb-stick? Bueno,computadoras
de anta�o con dos/win3.1 pod�an ser apagadas con simplemente
persionar el b�ton. No se necesitaba hacer un "shutdown".
Uno de mis amigos se quej� de que con Linux ten�a que hacer
un "shutdown" antes de apagar la maquina. Pero luego win95
apareci� y se acabar�n esas quejas.
Linux lo puede hacer tambi�n.
Tambi�n existen soluciones en Linux para simplemente
poder remover el disco(por ejemplo, un disco usb).
Linux Mandrake contiene una funci�n llamada supermount
que d� los mismos resultads(y problemas) que windows. Pero
no lo recomiendo por que puede causar inestabilidad y p�rdida
de archivos.
Es mejor utilizar las mtools (http://mtools.linux.lu/).
mtools es un conjunto de programas que tienen acceso a
b�sicamente todos los dispositivos removibles con un
sistema de archivos FAT sin la necesidad de montarlos.
El truco es el siguiente:
-
Edit /etc/mtools.conf and add a line that says
drive u: file="/dev/sda1" # o sda4; algunos usb-stick tienen particiones
# 4 es creado como default de fabrica.
- Ahora no es necesario montar /dev/sda1. Simplemente tecel�e
mdir u:
para ver el contenido del usb-stick.
mcopy * u:
para copiar todos los archivos en el directori� act�al
hacia el usb-stick.
mcopy u:\* .
para copiar todos los archivos del usb-stick hacia el
directori� act�al(percates� del \ en frente del *).
F�cil de utilizar.
Permitir que cualquiera monte un sistema de archvos
Normalmente necesitar� ser root para montar sistemas de archivos.
Para dispositivos como cdroms o usb-stick tal vez quiera darle
permiso a cualquier usuario para que los monte. Todo lo que
necesita hacer en este caso, es a�adir una l�nea como la
siguiente en /etc/fstab:
# dev mount point fs type flags
/dev/sda1 /mnt/usb auto noauto,user 0 0
Esta l�nea significa que sda1 (la primera partici�n en el primer disco
scsi, discos usb se map�an a discos scsi) no seran montados automat�camente
(noauto) y pueden ser montados y desmontados por cualquier
usuario(user). El campo fs-type tambi�n se pone en auto
para que al montar un usb-stick formateado con vfat o ext2
el sistema automaticamente detect� el archivo de sistemas.
Laptops y nfs
El sistema de archivos para red, NFS(Network File System), es muy
�til si necesita tener un respaldo centralizado de todos los
directori�s para varios usuarios. Todo lo que necesita hacer es
montar los directori�s /home desde un servidor central y todos los
usuarios tendran sus directori� /home disponibles en todas las
computadoras en la red a�nado a las mismas preferencias y datos en cualquier
computadora que utilicen. Es muy bueno.
�Pero como lidiamos con usuarios mobiles con laptops?
Una vez que el usuario se desconecte de la red, el directori� dejar�
de existir. Esto se puede resolver copiando todos los datos (con rsync),
pero esto puede causar inconsistencias si Ud. no es muy disciplinado, y
es que en realidadmuchas veces no necesita el directori� /home completo.
Cre� que una buena soluci�n ser�a tener un segundo directori� /home con
solamente los datos que necesito cuando voy de viaje.
Cuando montamos un sistema de archivos (cualquier sistema de archivos/disco,
incluso nfs) sobre un directori� no-vac�o, el nuevo sistema de archivos monatado
reemplaza al directori� local, permitiendonos as� ver el nuevo sistema de archivos
que fue montado.
La soluci�n a esto es la siguiente: Crear un punto de montaje para el
directori� home(/home) y automontar all� los diferentes
directorios de home cuando la computadora no esta conectada
a la red. Sin embargo,para los usuarios que utilizan sus
laptop, antes de montar cualquier sistema de archivos, deben
crear un softlink hac�a un directori� /home que no este en red:
/home/guido -> ../home_nonet/guido
Esto significa que cuando el usuario guido se conect� a la red
podr� ver su directori� /home normal. Pero cuando �l no este
conectado a la red, entonces ver� a /home_nonet/guido como su
directori� home (/home/guido).
Una soluci�n bastante buena.
Conclusi�n
Una de las metas de Unix es crear una capa de abstracci�n para
el hardware. El montar/desmontar sistemas de archivos/discos
fu� una de las formas de cumplir con su meta. Este es una idea
bastante avanzada y moderna aunque Unix es mucho mas viejo que
otros sistemas operativos modernos.