Tengo varias preguntas estrechamente relacionadas sobre lo que sucede cuando inserto un CD. Los archivos en el CD /media/Ubuntu\ 11.04\ i386/
, pero por lo que he visto, /dev/cdrom
también están involucrados.
¿Qué es la diferencia entre
/dev
,/media
y/mnt
? Lo siguiente es lo que he encontrado en Internet, pero todavía tengo poca idea:/dev
- esta carpeta contiene archivos del dispositivo/media
- este es un punto de montaje para dispositivos extraíbles/mnt
- este es un punto de montaje temporal
¿Para qué sirve
mount
? En otras palabras, si el sistema operativo ha representado un dispositivo como un archivo de dispositivo/dev
, ¿por qué no se puede acceder a él directamente a través del archivo del dispositivo sin montarlo?¿El soporte solo se usa para dispositivos de almacenamiento, no para dispositivos que no son de almacenamiento, como tarjetas gráficas, tarjetas de red, cámaras, ...?
¿Dónde está
/dev
montado un archivo de dispositivo debajo , debajo/media
o debajo/mnt
? Recuerdo que he visto ambos, pero tengo curiosidad por saber cuándo montar.Encontré que mi CD fue montado automáticamente
/media/Ubuntu 11.04 i386
. Supongo que el archivo del dispositivo del CD es/dev/cdrom
, pero no puedo confirmarlo buscando/dev/cdrom
y/media/Ubuntu 11.04 i386
:$ ls -l /media/Ubuntu\ 11.04\ i386/ total 3522 -r--r--r-- 1 Tim Tim 143 2011-04-27 13:04 autorun.inf ... $ ls -l /dev/cdrw lrwxrwxrwx 1 root root 3 2011-05-28 15:12 /dev/cdrw -> sr0 $ ls -l /dev/cdrom lrwxrwxrwx 1 root root 3 2011-05-28 15:12 /dev/cdrom -> sr0
¿Cómo puedo averiguar qué archivo de dispositivo es para mi CD?
fuente
Respuestas:
Aquí hay muchas preguntas y haré todo lo posible para responderlas. Estoy seguro de que aquellos que tienen más conocimiento que yo podrán ayudarlo más. (Agradecería si esas personas también pudieran ayudarme).
En * nix, todo es un archivo. Por ejemplo, su CD-ROM es un archivo.
/dev
- Aquí encontrará dispositivos físicos, así como cosas que normalmente no consideraría como dispositivos como / dev / null ./media
&/mnt
son directorios en los que puede montar un dispositivo físico, como un CD-ROM, una partición HDD, una memoria USB, etc.El propósito de
mount
(y lo contrarioumount
) es permitir el montaje dinámico de dispositivos. Lo que quiero decir aquí es que tal vez es posible que solo desee montar un dispositivo bajo ciertas circunstancias, y en otras ocasiones no sea accesible. Es posible que desee montar un sistema de archivos completo en / mnt cuando repare un sistema. Es posible que desee montar una imagen de disco (por ejemplo, foo.iso) de vez en cuando. Etc.Puede elegir montar un dispositivo en / dev en / media o / mnt. Hay formas más o menos correctas de hacerlo. Por ejemplo, de tu pregunta dices:
Eso es bastante correcto. Lea aquí para saber cómo / media y / mnt deben usarse de acuerdo con el Estándar de jerarquía del sistema de archivos . Hago esto incorrectamente, optando por usar / media cuando de hecho debería usar / mnt, la mayoría de las veces. También vale la pena señalar que un HDD interno con particiones asociadas puede referirse, de manera algo confusa, a medios extraíbles.
Estoy en OS X aquí, así que no puedo comprobarlo ahora (BSD hace las cosas de manera ligeramente diferente con respecto a las unidades ópticas) pero / dev / cdrom es un archivo de dispositivo para su CD-ROM. Como es / dev / cdrw. ¿Ves el '->' en el
ls -l
resultado de tu pregunta? Eso indica que tanto / dev / cdrom como / dev / cdrw están simbólicamente vinculados a / dev / sr0. ' sr ' es el nombre del controlador del dispositivo; 'sr0' es el nombre del archivo del dispositivo./media/Ubuntu 11.04 i386
es simplemente una imagen .iso que se ha montado automáticamente en/media
.Espero que ayude un poco.
fuente
/mnt
tienden a usarse mis administradores de sistemas, por ejemplo, cuando queremos restaurar una copia de seguridad o migrar una partición a un nuevo disco, creamos (por ejemplo)/mnt/homebackup
y montamos la imagen del disco de copia de seguridad en ese punto de montaje, copiamos los archivos perdidos a/home
y luego suelte el punto de montaje.La respuesta de boehj explica las piezas básicas en juego aquí. Lo único que agregaría es sobre la diferencia entre un dispositivo y un sistema de archivos montado. El hecho es que puede acceder a un nodo de dispositivo directamente. Por ejemplo, podría utilizar
dd if=/dev/sda of=/dev/sdb
para hacer que su segundo dispositivo ATA sea una copia exacta del primero, o puedecat /dev/sr0 > mycd.iso
extraer un CD y hacer una imagen iso de él.La diferencia es que cuando monta un dispositivo en una ubicación, crea una ruta en la estructura de su directorio que accede al dispositivo utilizando un controlador del sistema de archivos. El controlador del sistema de archivos maneja todas las cosas especiales que deben suceder, como el almacenamiento en caché, la indexación, la búsqueda, etc., para que su dispositivo de disco sin procesar aparezca con todas las comodidades de un sistema de archivos.
fuente
cat /dev/sr0 > mycd.iso
- Nunca pensé en esto.cat
ydd
re: los nodos de dispositivos. Pasé completamente por alto estas cosas.Basándose en la respuesta de boehj,
mount
se utiliza detrás de escena en el momento del arranque para verificar/etc/fstab
dónde cada una de las particiones existentes sobre las que se supone que debe saber se debe montar en el sistema de archivos real.A diferencia de, por ejemplo, Windows, donde no tiene muchas opciones más allá de qué letra de unidad obtiene una partición, esto permite que cualquier dispositivo o partición se monte en cualquier parte del árbol del sistema de archivos si así lo desea, por ejemplo, la universidad las computadoras de red típicamente solo tendrían
/bin/
y/lib
algunas particiones temporales montadas localmente, mientras que/usr/
(que contiene casi todo el software que no se requiere durante la fase de arranque) y/home/
(que contiene todos los directorios de inicio de los usuarios) se montarían desde un NFS accesible desde el centro servidor.Es también responsable de montaje en silencio varios sistemas de archivos temporales y virtuales, tales como
/dev/shm/
,/sys/
,/dev/pts/
, y en los sistemas más modernos/run/
. Lo más probable es que rara vez haga algo directamente con estos, pero una gran cantidad de software depende de que existan detrás de escena. Eche un vistazo a la salida delmount
comando simple , o en/etc/fstab
- podría aprender algo interesante.fuente