Montare un dispositivo - ruolo di / dev, / media e / mnt e il comando mount [chiuso]


17

Ho diverse domande strettamente correlate su cosa succede quando inserisco un CD. /media/Ubuntu\ 11.04\ i386/Sono /dev/cdromcoinvolti anche i file sul CD , ma da quello che ho visto .

  1. Qual'è la differenza tra /dev, /mediae /mnt? Di seguito è quello che ho trovato da internet ma ho ancora poca idea:

    • /dev - questa cartella contiene i file del dispositivo
    • /media - questo è un punto di montaggio per dispositivi rimovibili
    • /mnt - questo è un mount point temporaneo
  2. Qual è lo scopo di mount? In altre parole, se un dispositivo è stato rappresentato dal sistema operativo come un file del dispositivo /dev, perché non è possibile accedervi direttamente dal file del dispositivo senza montarlo?

    Il montaggio viene utilizzato solo per un dispositivo di archiviazione, non per un dispositivo non di archiviazione, come una scheda grafica, una scheda di rete, una fotocamera, ...?

  3. Dove si trova un file di dispositivo sotto /dev montato, sotto /mediao sotto /mnt? Ricordo di aver visto entrambi, ma sono curioso di sapere quando montare su quale?

  4. Ho scoperto che il mio CD è stato automaticamente montato su /media/Ubuntu 11.04 i386. Immagino che il file del dispositivo del CD sia /dev/cdrom, ma non posso confermarlo esaminando /dev/cdrome /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
    

    Come posso sapere quale file del dispositivo è per il mio CD?



Dividilo, ci sono molte domande. Ad alcuni di essi risponde il commento di @Gilles, altri dovrebbero essere descritti nel manuale utente della tua distribuzione.
vonbrand,

@vonbrand Queste domande sono comunque strettamente correlate. Non sono d'accordo con la sua chiusura, dato che ha avuto risposte adeguate. Ho modificato un po 'la domanda e ho votato per riaprire.
Gilles 'SO- smetti di essere malvagio'

Risposte:


12

Ci sono molte domande qui e farò del mio meglio per risponderle. Sono certo che quelli più informati di quanto sarò in grado di aiutarti ulteriormente. (Gradirei se anche quelle persone potessero aiutarmi.)

In * nix, tutto è un file. Ad esempio, il tuo CD-ROM è un file.

  • /dev- Qui troverai dispositivi fisici e cose che normalmente non pensi come dispositivi come / dev / null .
  • /mediae /mntsono directory in cui è possibile montare un dispositivo fisico come un CD-ROM, una partizione HDD, una chiavetta USB, ecc.

Lo scopo di mount(e il contrario umount) è consentire il montaggio dinamico dei dispositivi. Quello che intendo qui è che forse potresti voler montare un dispositivo solo in determinate circostanze, e altre volte non è prontamente accessibile. Potresti voler montare un intero file system su / mnt quando ripari un sistema. Di tanto in tanto potresti voler montare un'immagine del disco (es. Foo.iso). Eccetera.

Puoi scegliere di montare un dispositivo in / dev su / media o / mnt. Ci sono modi più o meno corretti per farlo. Ad esempio, dalla tua domanda dici:

/ media questo è un punto di montaggio per dispositivi rimovibili

/ mnt questo è un mount point temporaneo

È praticamente corretto. Leggi qui per come / media e / mnt dovrebbero essere usati secondo lo standard di gerarchia dei filesystem . Lo faccio in modo piuttosto errato, scegliendo di usare / media quando in realtà dovrei usare / mnt, la maggior parte del tempo. Vale anche la pena notare che un HDD interno con partizioni associate può essere riferito a supporti rimovibili, in qualche modo confusi.

Sono su OS X qui quindi non posso controllare ora (BSD fa le cose in modo leggermente diverso rispetto alle unità ottiche) ma / dev / cdrom è un file di dispositivo per il tuo CD-ROM. Come è / dev / cdrw. Vedi '->' ls -lnell'output nella tua domanda? Ciò indica che sia / dev / cdrom che / dev / cdrw sono simbolicamente collegati a / dev / sr0. ' sr ' è il nome del driver del dispositivo; 'sr0' è il nome del file del dispositivo.

/media/Ubuntu 11.04 i386è semplicemente un'immagine .iso che è stata montata automaticamente su /media.

Spero che sia di aiuto.


1
Grazie! Mi chiedo ancora quali sono le differenze tra "un punto di montaggio per dispositivi rimovibili" e "un punto di montaggio temporaneo"?
StackExchange per tutto

2
In funzione, sono gli stessi. La differenza teorica è che gli stessi dispositivi rimovibili potrebbero essere visualizzati ripetutamente e, se possibile, è bello averli montati nella stessa directory. Ogni volta che inserisci un CD è bello avere quel CD in un percorso unico come "/ media / My_CD_Title". La scheda di memoria della fotocamera potrebbe essere "/ media / SD_Card". Al contrario, è probabile che un punto di montaggio temporaneo abbia lo stesso percorso ma si montano unità diverse su di esso in base alla necessità del momento e solo la tua conoscenza di ciò che è stato montato identifica l'unità perché si trova nello stesso posto dell'unità ULTIMA temporanea .
Caleb,

1
Mentre /mnttende ad essere usato dai miei amministratori di sistema - diciamo, quando vogliamo ripristinare un backup o migrare una partizione su un nuovo disco, creiamo (per esempio) /mnt/homebackupe montiamo l'immagine del disco di backup su quel punto di montaggio, copiando i file persi a /homee quindi rilasciare il punto di montaggio.
Shadur,

9

La risposta di boehj spiega i pezzi di base in gioco qui. L'unica cosa che vorrei aggiungere riguarda la differenza tra un dispositivo e un file system montato. Il fatto è che è possibile accedere direttamente a un nodo del dispositivo. Ad esempio, potresti usare dd if=/dev/sda of=/dev/sdbper rendere il tuo secondo dispositivo ATA una copia esatta del primo, oppure puoi cat /dev/sr0 > mycd.isorippare un CD e crearne un'immagine iso.

La differenza è che quando si monta un dispositivo in una posizione, si crea un percorso nella struttura della directory che accede al dispositivo utilizzando un driver del file system. Il driver del file system gestisce tutte le cose speciali che devono accadere come la memorizzazione nella cache, l'indicizzazione, la ricerca, ecc. Affinché il tuo dispositivo raw drive appaia a te con tutte le comodità di un file system.


Grazie! Anche le partizioni e i filesystem su un dispositivo di archiviazione sono considerati dispositivi? Hanno driver stessi, oltre che il dispositivo di archiviazione ne ha uno?
StackExchange per tutto

Sì, le partizioni sono indirizzabili come dispositivi, così come tutti i dispositivi di archiviazione (qualunque cosa tu intenda con questo). L'intero dispositivo verrà eseguito con un driver hardware, ma ovviamente ogni partizione può avere il proprio file system, quindi il comando mount potrebbe utilizzare driver del kernel diversi per gestire i diversi file system.
Caleb,

1
Wow. cat /dev/sr0 > mycd.iso- Non ci ho mai pensato.
chiede

1
Grazie per aver attirato la mia attenzione su cate ddri: nodi di dispositivo. Ho completamente ignorato queste cose.
Boehj,

2

Basandosi sulla risposta di boehj, mountviene utilizzato dietro le quinte al momento dell'avvio per verificare /etc/fstabdove ogni partizione esistente che dovrebbe conoscere dovrebbe essere montata nel file system reale.

Diversamente da - per esempio - Windows, dove non hai molta scelta oltre a quale lettera di unità ottiene una partizione, questo consente a qualsiasi dispositivo o partizione di essere montata ovunque nell'albero del filesystem, se lo desideri, ad esempio l'università i computer di rete in genere avrebbero solo /bin/e /libe alcune partizioni temporanee montate localmente, mentre /usr/(contenente quasi tutto il software non richiesto durante la fase di avvio) e /home/(contenente tutte le home directory degli utenti) sarebbero montate da un NFS accessibile centralmente server.

E 'anche responsabile per il montaggio tranquillamente vari filesystem temporanei e virtuali, come /dev/shm/, /sys/, /dev/pts/, e sui sistemi più moderni /run/. È probabile che raramente farai qualcosa direttamente con questi, ma un sacco di software si basa su questi per esistere dietro le quinte. Dai un'occhiata all'output del mountcomando bare o in /etc/fstab- potresti imparare qualcosa di interessante.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.