Com muntar i desmuntar dispositius d'emmagatzematge des del terminal Linux

Els sistemes de fitxers de Linux i sistemes operatius similars a Unix com macOS es poden muntar, desmuntar i tornar a muntar mitjançant el terminal. Aquesta és una eina potent i versàtil; aquí teniu tot el que heu de saber.

El sistema de fitxers Linux

Els sistemes de fitxers de Linux, macOS i altres sistemes operatius similars a Unix no fan servir identificadors de volum separats per a dispositius d’emmagatzematge de la mateixa manera que, per exemple, Windows. El Windows assigna a cada volum una lletra de la unitat com C: o D: i el sistema de fitxers de cada volum és un arbre de directoris que es troba sota aquesta lletra de la unitat.

A Linux, el sistema de fitxers és un arbre de directoris tot en un. Un dispositiu d'emmagatzematge muntat té el seu sistema de fitxers empeltat en aquest arbre de manera que sembla ser una part integral d'un sistema de fitxers cohesionat. El sistema de fitxers recentment muntat serà accessible a través del directori on està muntat. Aquest directori s’anomena punt de muntatge d’aquest sistema de fitxers.

Molts sistemes de fitxers es munten automàticament en arrencar o sobre la marxa com a volums d’emmagatzematge connectats a l’ordinador durant el temps d’execució. Els administradors de sistemes prudents poden desactivar les funcions de muntatge automàtic en temps d’execució per poder controlar les connexions al sistema.

Això vol dir que els dispositius d'emmagatzematge connectats durant l'execució poden no muntar-se automàticament i necessitaran un muntatge manual. Muntar un sistema de fitxers manualment us permet prendre decisions sobre aquest sistema de fitxers, com ara on serà el punt de muntatge i si el sistema de fitxers serà de només lectura o escriptura de lectura.

Ja sigui per necessitat o per elecció, el muntar, umount i remuntar les ordres us donen la possibilitat de controlar aquest important aspecte del vostre sistema Linux.

Interrogeu el vostre sistema de fitxers amb mount

Mount té moltes opcions, però no es necessiten opcions per llistar tots els sistemes de fitxers muntats a l’ordinador. Simplement escriviu muntar i premeu Retorn:

muntar llistarà tots els sistemes de fitxers connectats a la finestra del terminal.

Pot ser difícil triar entre aquestes dades per trobar allò que busqueu.

Podeu refinar la sortida preguntant muntar per enumerar només els sistemes de fitxers que us interessin. El -t (tipus) opció diumuntar sobre quin tipus de sistema de fitxers cal informar.

muntar -t tmpfs
muntar -t ext4

Com a exemple, ho hem preguntat muntar només per llistartmpfs sistemes de fitxers. Tenim una sortida molt més manejable.

Atmpfs el sistema de fitxers apareix com si es tractés d’un sistema de fitxers muntat habitualment, però en realitat s’emmagatzema en una memòria volàtil: el tmp significa temporal, en lloc de fer-ho en un dispositiu d'emmagatzematge persistent.

Voleu substituir el fitxer tmpfs paràmetre del tipus de fitxer que us interessa.

També hem emès una ordre per fer una llista ext4 sistemes de fitxers. En aquest ordinador de prova, n’hi ha un de sol ext4 sistema de fitxers, està al dispositiu sda—El primer dispositiu d’emmagatzematge muntat, generalment el disc dur principal — i muntat a sobre /, que és l'arrel de l'arbre del sistema de fitxers.

Els altres indicadors signifiquen:

  • rw: El sistema de fitxers es pot llegir i escriure.
  • relatime: El nucli utilitza un esquema optimitzat per registrar l'accés als fitxers i modificar les metadades.
  • errors = remuntar -o: Si es detecta un error prou greu, el sistema de fitxers es tornarà a muntar en mode de només lectura per permetre el diagnòstic.

RELACIONATS:Quin sistema de fitxers Linux heu d'utilitzar?

Interrogeu el vostre sistema de fitxers amb df

El df L'ordre també es pot utilitzar per mostrar quins sistemes de fitxers es munten i on es troben els seus punts de muntatge.

df utilitzat sense paràmetres us proporciona el mateix problema de sobrecàrrega d'informació que muntar. Com a exemple, a Ubuntu Linux hi ha un squashfs pseudo-sistema de fitxers creat per a totes les aplicacions instal·lades amb encaixar comandament. Qui vol veure-ho tot?

Forçar df per ignorar-los —o qualsevol altre tipus de sistema de fitxers— utilitzeu el fitxer -x (excloure) opció:

df -x squashfs

Podeu veure fàcilment els noms dels sistemes de fitxers, les seves capacitats, l’espai utilitzat i lliure i els seus punts de muntatge.

RELACIONATS:Com es visualitza l'espai lliure del disc i l'ús del disc des del terminal Linux

Remuntant tots els sistemes de fitxers a fstab

Tots els sistemes de fitxers muntats en arrencar tenen entrades en un fitxer anomenat fstab, que és la taula del sistema de fitxers ubicada dins / etc.

Pots fer servir muntar per forçar una "actualització" i tornar a muntar tots els sistemes de fitxers llistats a fstab. En condicions normals de funcionament, això no és necessari. Realment entra en compte si teniu problemes amb diversos sistemes de fitxers.

Haureu d’utilitzar sudo, de manera que se us demanarà la contrasenya.

sudo mount -a

És cert que en un ordinador que funciona correctament és una mica decebedor.

Tanmateix, en un equip amb problemes de sistema de fitxers, la remuntatge pot esborrar els problemes. Si això no passa, almenys rebreu missatges de diagnòstic a la pantalla i als registres del sistema que us guiaran a buscar la causa del problema.

RELACIONATS:Què és el fitxer fstab de Linux i com funciona?

Muntatge d’una imatge ISO

És fàcil muntar una imatge ISO perquè pugueu accedir al seu contingut com a part del sistema de fitxers.

Això funcionarà amb qualsevol imatge ISO. En aquest exemple, utilitzem un Tiny Core Linux ISO perquè és convenientment petit i ràpid de descarregar. (Una petita distribució de Linux amb una interfície gràfica d’usuari, de 18 MB! Probablement tingueu fitxers .mp3 més grans que això).

Emeteu aquesta ordre al mateix directori que la imatge ISO. Substituïu el nom del fitxer ISO que esteu muntant.

sudo mount -t iso9660 -o loop TinyCore-current.iso / mnt

Perquè hem d’utilitzar sudo haureu d’introduir la contrasenya.

El -t (tipus) opció diu muntar quin tipus de sistema de fitxers muntem. És un fitxer ISO, de manera que proporcionem el fitxer iso9660 especificador de tipus.

El -o (opcions) s'utilitza per passar paràmetres addicionals a muntar. El nostre paràmetre és bucle.

Estem utilitzantbucle forçar muntar per utilitzar un fitxer de dispositiu de bucle per connectar-nos a la nostra imatge ISO. Un fitxer de dispositiu de bucle permet muntar un fitxer (com la imatge ISO) i tractar-lo com si fos un dispositiu d'emmagatzematge.

Els fitxers de dispositiu són fitxers especials que s’utilitzen com a interfície perquè els dispositius connectats apareguin com si fossin un fitxer normal del sistema de fitxers. Això és part de tot el que Linux té una filosofia de disseny de fitxers.

Hi ha molts tipus diferents de fitxers de dispositiu. N'hem vist un abans quan vam observar que l'únic ext4 es va muntar el sistema de fitxers d'aquesta màquina de prova / i es deia sda.

Per ser més precisos, això ext4 El sistema de fitxers es troba en un dispositiu d 'emmagatzematge connectat al sistema de fitxers mitjançant/ dev / sda fitxer del dispositiu i el sistema de fitxers del dispositiu d'emmagatzematge muntat a /.

Per descomptat, hem de proporcionar el nom de la imatge ISO i hem de deixar-ho muntar saber on voldríem muntar el sistema de fitxers. Hem escollit / mnt.

La imatge ISO està muntada. A la finestra del terminal apareix un recordatori que les imatges ISO sempre es munten en mode de només lectura.

Exploració de la imatge ISO

Ara que està muntat, podem navegar pels directoris de la imatge ISO de la mateixa manera que qualsevol altra part del sistema de fitxers. Anem a enumerar els fitxers de la imatge ISO. Es munta a / mnt recorda.

ls / mnt
ls / mnt / cde /

Desmuntatge de la imatge ISO

Per desmuntar un sistema de fitxers muntat, utilitzeu el fitxer umount comandament. Tingueu en compte que no hi ha cap "n" entre la "u" i la "m": l'ordre és umount i no "desmuntar".

Ho has de dir umount quin sistema de fitxers esteu desmuntant. Feu-ho proporcionant el punt de muntatge del sistema de fitxers.

sudo umount / mnt

Cap notícia és una bona notícia. Si no hi ha res a denunciar, tot ha anat bé.

Creació d’un punt de muntatge

Podeu crear i utilitzar els vostres propis punts de muntatge. En crearem un anomenat isomnt i muntar la nostra imatge ISO en això. Un punt de muntatge és només un directori. Així ho podem utilitzar mkdir per crear el nostre nou punt de muntatge.

sudo mkdir / media / dave / isomnt

Ara podem utilitzar el mateix format d’ordres que abans per muntar la nostra imatge ISO. Aquesta vegada no el muntarem / mnt, el muntarem a sobre / media / dave / isomnt /:

sudo mount -r -t iso9660 -o bucle TinyCore-current.iso / media / dave / isomnt /

Ara podem accedir al sistema de fitxers muntat des del nostre nou punt de muntatge.

ls / media / dave / isomnt / cde / opcional

Però aquests camins s’estan allargant molt. Això es convertirà ràpidament en fatigós. Fem alguna cosa al respecte.

Enquadernació d’un punt de muntatge

Podeu enllaçar un punt de muntatge a un altre directori. Aleshores es pot accedir al sistema de fitxers muntat a través del punt de muntatge original o bé a través del directori que hi està lligat.

Aquí teniu un exemple funcionat. Crearem un directori al nostre directori inicial anomenat iso. A continuació, enllaçarem el punt de muntatge de la imatge ISO / media / dave / isomnt al nou iso al directori inicial.

Podrem accedir a la imatge ISO a través del punt de muntatge original / media / dave / isomnt i a través del nou iso directori. El -B L'opció (bind) requereix el nom del punt de muntatge i el nom del directori per lligar-lo.

mkdir iso
sudo mount -B / media / dave / isomnt / iso
ls iso
ls / media / dave / isomnt
cd iso
ls
cd cde

Utilitzant umount With Binds

Un sistema de fitxers que tingui el punt de muntatge lligat a un altre directori requereix desmuntar-lo del punt de muntatge i el punt d’unió.

Fins i tot si desmuntem el sistema de fitxers des del punt de muntatge original, encara podeu accedir al sistema de fitxers des del directori vinculat. El sistema de fitxers també s'ha de desmuntar d'aquest directori.

sudo umount / media / dave / isomnt
ls iso 
sudo umount iso
ls iso

Muntatge d'un disquet

Una unitat de disquet (amb un disquet) és un dispositiu d'emmagatzematge. Això significa que s'utilitzarà un fitxer de dispositiu sd (per a dispositiu d'emmagatzematge) per connectar-se al dispositiu físic. Hem d’establir quin és el següent fitxer de dispositiu sd gratuït. Ho podem fer canviant la sortida de df a través grep i buscant entrades amb "sd".

df | grep / dev / sd

En aquest equip, hi ha un sol fitxer de dispositiu sd en ús. Això és / dev / sda. El següent fitxer de dispositiu sd emès serà / dev / sdb. Això significa que quan connectem la unitat de disquet a l'ordinador, Linux utilitzarà / dev / sdb per connectar-se a la unitat de disquet.

Ja ho direm muntar per muntar el sistema de fitxers al disquet a la unitat de disquet a la qual està connectat / dev / sdb fins al / mnt punt de muntatge.

Inseriu el disquet a la unitat de disquet i connecteu-lo a un port USB de l'ordinador. Emeteu l'ordre següent:

sudo mount / dev / sdb / mnt

Etiquetes del sistema de fitxers

Podem utilitzar el -l (etiqueta) amb muntar per saber quina etiqueta s'adjunta, si n'hi ha, al sistema de fitxers. Les etiquetes no són més que noms arbitraris. No tenen cap finalitat funcional.

Estem utilitzant el -t (tipus) opció per demanarmuntar per informar vfat només sistemes de fitxers.

mount -l -t vfat

Trobareu l’etiqueta entre claudàtors al final de la llista. L'etiqueta d'aquesta unitat de disquet és NORTUN.

Podem accedir a la unitat de disquet a través de / mnt punt de muntatge.

cd / mnt
ls
ls -l AMATCH.C

El disquet conté fitxers de codi font de llenguatge C. El segell de data d’un fitxer mostra que es va modificar per última vegada l’octubre de 1992. Probablement sigui més antic que molts dels nostres lectors. (No cal dir que el significat de NORTUN com a etiqueta es perd en la boira del temps.)

Si repetim el nostre df canviat grep per llistar els fitxers del dispositiu sd, veurem que ara n’hi ha dos.

df | grep / dev / sd

La nostra unitat de disquet es mostra tal com està muntada / dev / sdb com esperàvem. El sistema de fitxers del disquet de la unitat està muntat a / mnt .

Per desmuntar el disquet que fem servir umount i passeu-lo com a paràmetre al fitxer del dispositiu.

sudo umount / dev / sdb

La mínima opció Lazy

Què passa si (o un altre usuari) utilitzeu el sistema de fitxers quan intenteu desmuntar-lo? El desmuntatge fallarà.

sudo umount / dev / sdb

Ha fallat perquè el directori de treball actual de l'usuari es troba dins del sistema de fitxers que intenta desmuntar. Linux és prou intel·ligent per no deixar-vos apartar de la branca on esteu assegut.

Per superar això utilitzeu el fitxer -l opció (mandrosa). Això provoca umount esperar fins que es pugui desmuntar amb seguretat el sistema de fitxers.

sudo umount -l / dev / sdb
ls
cd ~
ls / mnt

Tot i que el umount s'emet l'ordre, el sistema de fitxers encara està muntat i l'usuari pot llistar els fitxers amb normalitat.

Tan bon punt l’usuari canvia el directori al directori inicial, el sistema de fitxers de disquet s’allibera i es desmunta. Intentant llistar els fitxers a / mnt no produeix resultats.

Muntatge d'un Samba Share

Samba és un conjunt de serveis de programari que permeten accedir indistintament als recursos compartits de xarxa entre sistemes operatius similars a Linux i Unix i sistemes operatius Windows.

La configuració de Samba està fora de l’abast d’aquest article. Però, si teniu accés autoritzat a un recurs compartit de Samba que us ha estat disponible, així podeu muntar-lo a Linux.

Un Raspberry Pi connectat a la mateixa xarxa que la màquina de prova té un recurs compartit de Samba. És un directori anomenat Còpia de seguretat que ha donat el nom Samba de "compartir". Fem-hi una connexió SSH i examinem el contingut del directori compartit. El directori compartit es troba en una memòria USB muntada al Pi.

El nom d’usuari és Pi i el nom de la xarxa del Raspberry Pi és marineville.local.

ssh [email protected]
ls / media / pi / USB64 / Backup
sortir

L'usuari emet el fitxer SSH i se li demana la contrasenya de Raspberry Pi.

Proporcionen la seva contrasenya i estan autenticats. La finestra de la finestra del terminal canvia a pi @ marineville perquè està connectat al Raspberry Pi.

Enumeren el contingut del directori compartit a / media / pi / USB64 / Còpia de seguretat . Els continguts són dos directoris, un anomenat dave i un anomenat pat. Ara sabem què podem esperar quan muntem la quota Samba.

Escriuen sortir per desconnectar del Raspberry Pi i la sol·licitud torna a canviar a dave @ howtogeek.

Per utilitzar Samba, heu d'instal·lar el fitxer cifs-utils paquet.

Ús apt-get per instal·lar aquest paquet al vostre sistema si utilitzeu Ubuntu o una altra distribució basada en Debian. En altres distribucions Linux, utilitzeu l'eina de gestió de paquets de la vostra distribució Linux.

sudo apt-get install cifs-utils

Quan la instal·lació s'hagi completat, munteu el recurs compartit amb una ordre com la següent, canviant l'adreça IP, el nom del recurs i el punt de muntatge (que ja han d'existir) per adaptar-les a les vostres circumstàncies.

sudo mount -t cifs -o credentials = / etc / samba / creds, uid = 1000, gid = 1000 //192.168.4.13/share / media / dave / NAS

Desglossem les parts d’aquesta ordre.

  • -t cifs: El tipus de sistema de fitxers és cifs.
  • -o credentials = / etc / samba / creds, uid = 1000, gid = 1000: Els paràmetres d'opcions són el camí d'accés a un fitxer anomenat crèdits que està protegit i conté el nom d'usuari i la contrasenya per a l'usuari de Raspberry Pi; l'identificador d'usuari (UID) i l'identificador de grup (GID) que s'utilitzen per establir el propietari i el grup de l'arrel del sistema de fitxers.
  • //192.168.4.13/share: La ubicació de xarxa del dispositiu amb el recurs compartit Samba i el nom Samba del directori compartit. L'arrel del recurs compartit és un directori anomenat Còpia de seguretat, però el seu nom de compartició Samba està definit a Compartir.
  • / media / dave / NAS: El nom del punt de muntatge. Heu de crear el punt de muntatge per endavant.

Accedint al nostre punt de muntatge a / media / dave / NAS accedim al directori compartit del Raspberry Pi a tota la xarxa. Podem veure les dues carpetes del Raspberry Pi anomenades dave i pat.

cd / media / dave / NAS

Creació i muntatge d’un sistema de fitxers

Podeu utilitzar el fitxer dd per crear un fitxer d'imatge i, a continuació, utilitzeu mkfs per crear un sistema de fitxers al seu interior. Aquest sistema de fitxers es pot muntar. Aquesta és una bona manera de practicar i experimentar muntar.

Utilitzem el fitxer si (fitxer d'entrada) opció per explicar dd per utilitzar el flux de valors zero des de / dev / zero com a fitxer d’entrada.

El de (fitxer de sortida) és un fitxer nou anomenat geek_fs.

Estem utilitzant elbs (mida del bloc) opció per sol·licitar una mida de bloc d’1 MB.

Utilitzem el fitxer comptar opció per explicar dd per incloure 20 blocs al fitxer de sortida.

dd if = / dev / zero of./geek_fs bs = 1 M count = 20

Això ens crea el nostre fitxer d’imatges. No conté més que zero valors.

Podem crear un sistema de fitxers de treball dins del fitxer geek_fs mitjançant el fitxer mkfs comandament. El -t L'opció (tipus) ens permet seleccionar el sistema de fitxers tipus. Estem creant un ext4 sistema.

mkfs -t ext4 ./geek_fs

Això és tot el que cal per tenir un sistema de fitxers que funcioni.

Muntem-lo a sobre / media / dave / geek i després utilitzar bufat per establir el propietari i les propietats del grup per permetre-hi l'accés.

sudo mount ./geek_fs / media / dave / geek
sudo chown dave: users / media / dave / geek

Funciona? Passem al nou sistema de fitxers i copiem-lo en un fitxer per veure-ho.

cd / media / dave / geek
cp / etc / fstab. 
ls -l

Hem pogut canviar el directori al nou sistema de fitxers i hem fet una còpia del fitxer / etc / fstab dossier. Està funcionant!

Si fem servir muntar per llistar els sistemes de fitxers muntats però restringir-ne la sortida a ext4 sistemes de fitxers mitjançant -t (tipus), veurem que ara n’hi ha dos muntats ext4 sistemes de fitxers.

muntar -t ext4

Remuntar un sistema de fitxers

Per remuntar un sistema de fitxers s'utilitza el fitxer -o remunta opció. Normalment es fa per canviar un sistema de fitxers d’un estat de només lectura (prova) a un estat de lectura-escriptura (producció).

Tornem a muntar la nostra unitat de disquet. Aquesta vegada utilitzarem el -r (només de lectura) senyalador. Després farem pipa muntar a través grep i mireu els detalls del sistema de fitxers de disquet.

sudo mount -r / dev / sdb / mnt
muntar | grep / mnt

Com podeu veure el ressaltat ro indica que el sistema de fitxers està muntat de només lectura.

Utilitzant el-o remunta opció amb el fitxer rw marca (lectura-escriptura) podem desmuntar i tornar a muntar el sistema de fitxers amb la nova configuració, tot en una sola ordre.

sudo mount -o remunta, rw / mnt

Repetint la canonada de muntar a través grep ens mostra que el ro ha estat substituït perrw (destacat). Ara el sistema de fitxers està en mode de lectura-escriptura.

muntar | grep / mnt

(No) Moure un sistema de fitxers

Abans podíeu desmuntar un sistema de fitxers i tornar-lo a muntar en un altre punt de muntatge amb una sola ordre.

El -M (moure) opció amuntar existeix específicament per permetre-ho fer. Però ja no funciona en distribucions de Linux a les quals s'ha traslladat systemd. I això és la majoria dels grans noms.

Si intentem moure un sistema de fitxers des de / mnt a ./geek, falla i dóna el missatge d'error que es mostra a continuació. Intentant llistar els fitxers dels fitxers que s'inclouen ./geek no retorna resultats.

sudo mount -M / mnt ./geek
ls ./geek

La solució consisteix a utilitzar el fitxer -B (bind) opció que hem utilitzat anteriorment per enllaçar el punt de muntatge original al nou punt de muntatge.

sudo mount -B / mnt ./geek
ls ./geek

A part de no alliberar el punt de muntatge original, tindrà el mateix resultat pràctic.

Observacions finals

Utilitzant el --fes-privat opció era és possible forçar la realització del moviment systemd versions de Linux. Aquesta tècnica no es presenta aquí per dos motius.

  1. Pot tenir un comportament imprevisible.
  2. No era persistent i hauria de repetir-se a cada reinici.

Utilitza Devuan Linux SysV init no systemd. Es va carregar un ordinador amb la versió més recent de Devuan i es va provar. El -M (moure) l’opció va funcionar com s’esperava en aquest sistema.

A part del systemd problemes amb el -M (move), hauríeu de trobar l’ús de muntar i umount directe. Es tracta d’ordres fantàstiques per tenir-vos a la màniga davant d’un sistema malmès i heu de començar a ajuntar el sistema de fitxers a mà.


$config[zx-auto] not found$config[zx-overlay] not found