Hoe te Monteren en Opslag Apparaten uit de Linux Terminal

0
396

Bestand systemen in de Linux-en Unix-achtige besturingssystemen, zoals mac os kan worden gemonteerd, niet gemonteerd en gedemonteerd worden met behulp van de terminal. Dit is een krachtige en veelzijdige tool voor het—hier is alles wat u moet weten.

Het Linux Bestandssysteem

De bestandssystemen in Linux, macOS, en andere Unix-achtige operating systemen gebruiken geen aparte volume-id ‘ s voor de opslag apparaten in de weg dat, zegt Windows dat doet. Windows kent elk volume een stationsletter (bijvoorbeeld C: of D:, en het bestandssysteem voor elk volume is een boomstructuur van mappen zitten onder die letter.

In Linux, het file systeem is een alles-in-één directory-boom. Een gemonteerd opslag apparaat heeft de bestands-systeem geënt op de boom, zodat het lijkt te zijn een integraal onderdeel van een samenhangend bestandssysteem. Het nieuwe gekoppelde bestand systeem toegankelijk via de map waarin het is gemonteerd. Die map heet het mountpunt voor dat bestandssysteem.

Veel bestand systemen worden automatisch aangekoppeld wordt tijdens het opstarten of on-the-fly als opslagvolumes aangesloten op de computer tijdens runtime. Voorzichtig system admins kunnen uitschakelen van de runtime-auto-mount functies, zodat zij kunnen controleren aansluitingen op het systeem.

Dit betekent opslag apparaten verbonden tijdens runtime kan niet auto-mount en moeten voor de montage handmatig. De montage van een bestandssysteem handmatig kunt u beslissingen nemen over dat bestandssysteem, zoals waar het mount point zullen worden en of het bestand systeem gaat worden alleen-lezen of lezen-schrijven.

Of het is uit noodzaak of uit vrije keuze, de mount, umount en breng de commando ‘ s geven u de mogelijkheid om de controle van dit belangrijke aspect van uw Linux-systeem.

Ondervragen van Je bestandssysteem Met mount

De berg heeft een groot aantal opties, maar om een lijst van alle gemounte bestandssystemen op uw computer vereist geen opties. Typ gewoon de berg en druk op Enter:

de berg geeft een lijst van alle aangesloten bestandssystemen in het terminal-venster.

Het kan moeilijk zijn om te kiezen, die dump van de data om te vinden wat u zoekt.

U kunt het verfijnen van de uitvoer door het stellen van de berg lijst van de bestandssystemen voor u van belang. De -t (type) optie vertelt de berg wat voor soort bestand het systeem aan te melden.

mount-t tmpfs
mount-t ext4

Als voorbeeld, we hebben vroeg de berg op de lijst alleen tmpfs bestandssystemen. We krijgen een veel beter beheersbare uitgang.

Een tmpfs bestandssysteem wordt weergegeven alsof het een gewone, gemonteerd bestand systeem, maar het is eigenlijk opgeslagen in niet-vluchtig geheugen—de tmp staat voor tijdelijke—in plaats van op een permanente opslag apparaat.

U wilt vervangen door de tmpfs parameter voor het type bestand waarin u geïnteresseerd bent.

We hebben ook uitgegeven in een opdracht om een lijst te ext4 bestandssystemen. Op deze test computer, er is een één ext4-bestandssysteem, is het op apparaat hda—de eerste opslag apparaat aangekoppeld is, meestal de belangrijkste harde schijf—en aangekoppeld zijn op /, de root van het file systeem van de boom.

De andere indicatoren betekenen:

  • rw: Het bestandssysteem is leesbaar en beschrijfbaar.
  • relatime: De kernel is het gebruik van een geoptimaliseerde regeling opnemen bestand openen en wijzigen de meta-gegevens.
  • errors=remount-o: Als een voldoende ernstige fout wordt gedetecteerd, wordt het bestand systeem zal worden geplaatst in alleen-lezen modus om de diagnose.

GERELATEERD: Welke Linux bestandssysteem Moet U Gebruiken?

Ondervragen van Je bestandssysteem Met df

Het df commando kan ook worden gebruikt om weer te geven welke bestandssystemen gemount zijn en waar hun “mount points” zijn.

df gebruikt zonder parameters geeft u dezelfde informatie-overload probleem als mount. Als een voorbeeld, in Ubuntu Linux, is er een squashfs pseudo-bestandssysteem gemaakt voor elke toepassing die is geïnstalleerd met behulp van de module opdracht. Wie wil zien alle van hen?

Om kracht df om ze te negeren—of een ander bestandssysteem type— selecteer met de-x (uitsluiten) optie:

df -x squashfs

U kunt gemakkelijk zien de namen van de bestandssystemen, hun capaciteiten, de gebruikte en vrije ruimte en de mount punten.

GERELATEERD: Hoe Bekijk de Vrije Ruimte op de Schijf en Schijf Gebruik Van het Linux Terminal

Uitbouwen van Alle bestandssystemen die in / etc / fstab

Alle bestandssystemen aangekoppeld wordt tijdens het opstarten de inzendingen in een bestand genaamd / etc / fstab, dat is het bestandssysteem tabel gelegen binnen /etc.

U kunt gebruik maken van de berg te dwingen een “refresh” en breng alle bestandssystemen die in / etc / fstab. Onder normale omstandigheden is dit niet nodig. Het is echt tot zijn recht komt als u problemen hebt met meerdere bestandssystemen.

U moet gebruik maken van sudo, dus je zult worden gevraagd om uw wachtwoord.

sudo mount -a

Toegegeven, op een goed werkende computer, het is een beetje teleurstellend.

Op een computer met bestands-systeem problemen, echter, het weer kunnen de problemen. Als dat niet gebeurt, dan in ieder geval krijgt u de diagnostische boodschappen op het scherm en in de systeem logs die zal u begeleiden bij het zoeken naar de oorzaak van het probleem.

GERELATEERD: Wat Is de Linux fstab Bestand, en Hoe Werkt Het?

Het monteren van een ISO Image

Het is eenvoudig te monteren een ISO image, zodat u toegang kunt krijgen tot de inhoud ervan als onderdeel van het bestandssysteem.

Dit zal werken met een ISO-image. In dit voorbeeld toevallig worden met behulp van een Tiny Core Linux ISO want het is gunstig klein en snel te downloaden. (Een kleine Linux distributie met een GUI, in 18 MB! U hebt waarschijnlijk .mp3-bestanden groter dan dat.)

In dezelfde map als de ISO-installatiekopie met dit commando. Vervangen door de naam van het ISO bestand dat u de montage.

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

Want we moeten sudo gebruiken moet u uw wachtwoord invoeren.

De -t (type) optie vertelt de berg wat voor type bestand systeem zijn wij in de montage. Het is een ISO bestand, zodat wij bieden de iso9660 type aanduiding.

De -o (opties) vlag wordt gebruikt om extra parameters te monteren. Onze parameter is lus.

We gebruiken lus om de berg om een lus te gebruiken apparaat bestand om verbinding te maken met onze ISO-image. Een lus-apparaat-bestand kunt u een bestand (als het een ISO image) te worden gemonteerd en behandeld alsof het een opslag apparaat.

Apparaatbestanden zijn speciale bestanden gebruikt als een interface, zodat verbonden apparaten worden weergegeven alsof ze een normale bestandssysteem bestand. Dit is een onderdeel van de alles in Linux is een bestand design filosofie.

Er zijn veel verschillende soorten bestanden. We zagen een eerder, toen we merkten dat de enige ext4 bestandssysteem op deze test machine is gemonteerd op / en de naam van de sda.

Om preciezer te zijn, dat ext4 bestandssysteem is op een opslag apparaat verbonden met het bestand systeem door middel van de /dev/hda het apparaat bestand en het bestand op dat opslag apparaat aangekoppeld op /.

We hebben de naam is van het ISO image van de cursus, en moeten we laten monteren weten waar we willen graag dat het bestandssysteem gemount worden. We hebben gekozen /mnt.

De ISO-image is gemonteerd. Een herinnering dat de ISO images zijn altijd gemonteerd in alleen-lezen modus verschijnt in het terminal-venster.

Het verkennen van de ISO Image

Nu is gemonteerd kunnen we navigeren door de mappen op de ISO image op dezelfde manier als ieder ander onderdeel van het bestandssysteem. Laten we de lijst van de bestanden in het ISO image-bestand. Het is gemount op /mnt onthouden.

ls /mnt
ls /mnt/cde/

Het deactiveren van de ISO Image

Het ontkoppelen van een gekoppeld bestand systeem, gebruik je het commando umount. Let op dat er geen “n” tussen de “u” en de “m”—het commando umount en niet “deactiveren”.

Je moet het vertellen umount welk bestandssysteem u deactiveren. Dit doen door het verstrekken van het bestandssysteem mount-punt.

sudo umount /mnt

Geen nieuws is goed nieuws. Als er niets te melden, dan is het allemaal goed gegaan is.

Het maken van een Mount Point

U kunt maken en gebruiken van uw eigen mount punten. We maken een zogenaamde isomnt en mount de ISO image. Een mount point is een directory. Zo kunnen we gebruik maken van mkdir te maken van onze nieuwe mount-punt.

sudo mkdir /media/dave/isomnt

Nu kunnen we gebruik maken van het commando format naar mount de ISO image. Deze keer gaan we niet de berg op /mnt, zullen we de berg op /media/dave/isomnt/:

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

We hebben nu toegang tot de gemounte bestandssysteem van onze nieuwe mount-punt.

ls /media/dave/isomnt/cde/optioneel

Maar die paden zijn erg lang. Dat is snel gaan irriteren. Laten we daar iets aan doen.

Binding van een Mount Point

U kunt binden van een koppelpunt naar een andere directory. Het gekoppelde bestand systeem kan dan worden benaderd door middel van de originele koppel-punt of via de map die is gekoppeld.

Hier is een uitgewerkt voorbeeld. We maken een directory in onze home directory met de naam iso. Dan zullen we binden de mount punt van de ISO image /media/dave/isomnt naar de nieuwe iso-map is in onze home directory.

We zullen in staat zijn om toegang te krijgen tot de ISO image door middel van de originele koppel-punt /media/dave/isomnt en door de nieuwe iso map. De -B (bind) optie moet de naam van de berg punt en de naam van de map om het te binden.

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

Met umount Met zich Bindt

Een bestandssysteem dat heeft de mount punt gebonden aan een andere directory vereist ontkoppelen van het aankoppelpunt en het binden punt.

Zelfs als we het ontkoppelen van het bestandssysteem van de originele koppel-punt, u kunt nog steeds toegang krijgen tot het bestandssysteem van de gebonden directory. Het bestandssysteem moet worden afgekoppeld van die map ook.

sudo umount /media/dave/isomnt
ls iso

sudo umount iso
ls iso

De montage van een Diskette

Een diskette drive (met een floppy-disk) is een opslag apparaat. Dat betekent een sd – (opslag-apparaat) in het apparaat bestand zal worden gebruikt om verbinding te maken met het fysieke apparaat. We moeten vaststellen dat de volgende gratis sd-apparaat-bestand. Dit kunnen We doen door de leidingen van de uitvoer van het commando df via grep en op zoek naar vermeldingen met “sd”.

df | grep /dev/sd

Op deze computer, is er een interne sd-apparaat bestand in gebruik is. Dit is /dev/sda. De volgende sd-apparaat bestand uitgegeven op /dev/sdb. Dat betekent dat wanneer we aansluiten van het diskettestation op de computer, Linux /dev/sdb sluit aan op het diskettestation.

We vertellen de berg mount het bestandssysteem op de diskette in het diskette-station dat is aangesloten op /dev/sdb naar de /mnt mount-punt.

Plaats de diskette in het diskette station en sluit het diskettestation aan op een USB-poort op de computer. Geef de volgende opdracht:

sudo mount /dev/sdb /mnt

Aan Bestandssysteem Labels

We kunnen gebruik maken van de optie-l (label) optie met de berg om uit te vinden wat, indien enige, label is aangebracht op een bestandssysteem. Labels zijn niet meer dan een willekeurige namen. Ze hebben geen functioneel doel.

We zijn met de-t (type) om toestemming te vragen berg te melden op vfat bestandssystemen alleen.

mount-l -t vfat

Vindt u het label in vierkante haakjes aan het einde van de lijst. Het label voor dit diskettestation is NORTUN.

We kunnen de toegang tot het diskettestation door op de /mnt mount-punt.

cd /mnt
ls
ls -l AMATCH.C

De diskette bevat de taal C source code bestanden. De datum van een bestand voor het laatst werd gewijzigd op oktober 1992. Het is waarschijnlijk ouder dan veel van onze lezers. (Onnodig te zeggen dat de betekenis van NORTUN als een label is verloren in de nevelen van de tijd.)

Als we herhalen onze df doorgesluisd door grep commando uit om een lijst van de sd-apparaat bestanden, zullen we zien dat er nu twee van hen.

df | grep /dev/sd

Onze floppy drive wordt weergegeven als aangekoppeld zijn op /dev/sdb, zoals we hadden verwacht. Het bestandssysteem op de diskette in het station is gemount op /mnt .

Door het ontkoppelen van de diskette gebruiken we umount en geeft het toestel bestand als parameter.

sudo umount /dev/sdb

De umount Luie Optie

Wat gebeurt er als u (of een andere gebruiker) zijn met het bestandssysteem wanneer u probeert om het te deactiveren? Het koppel zal mislukken.

sudo umount /dev/sdb

Het is mislukt omdat de huidige werk-directory van de gebruiker wordt in het bestandssysteem probeert hij te ontkoppelen. Linux is slim genoeg niet om u te laten zagen de tak af waar je op zit.

Om dit te voorkomen gebruik de optie-l (luie) optie. Dit veroorzaakt umount te wachten tot de file-systeem is in staat om veilig ontkoppeld worden.

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

Hoewel het umount commando is uitgegeven, wordt het bestand systeem is nog gemonteerd, en kan de gebruiker een lijst van de bestanden als normaal.

Zodra de gebruiker verandert van directory naar hun home directory van de diskette bestandssysteem is uitgebracht en is gedeactiveerd. Proberen om een lijst van de bestanden in /mnt levert geen resultaten op.

De montage van een Samba Share

Samba is een set van software diensten waarmee de netwerk-shares te worden benaderd door elkaar tussen Linux en Unix-achtige besturingssystemen en Windows-besturingssystemen.

Het opzetten van Samba is buiten het bestek van dit artikel. Maar, als u hebt toegang tot een Samba share die beschikbaar is gesteld aan u, dit is hoe je kunt mounten in Linux.

Een Raspberry Pi met hetzelfde netwerk zijn verbonden als de test machine heeft een Samba share. Het is een map met de naam Back-up dat is gegeven de Samba naam van ‘delen’. Laten we het maken van een SSH verbinding naar en kijk op de inhoud van de gedeelde map. De gedeelde map op een USB-stick gemonteerd op de Pi.

De gebruikersnaam is pi en de naam van het netwerk van de Raspberry Pi is marineville.lokale.

ssh pi@marineville.local
ls /media/pi/USB64/Backup
afsluiten

De gebruiker problemen met het commando SSH en is gevraagd naar hun Raspberry Pi wachtwoord.

Ze bieden hun wachtwoord en zijn geverifieerd. Het terminal venster verandert naar pi@marineville omdat het is verbonden met de Raspberry Pi.

Ze lijst met de inhoud van de gedeelde map op /media/pi/USB64/Back-up . De inhoud van twee mappen, één genaamd dave heet pat. Dus nu we weten wat te verwachten wanneer we monteren de Samba share.

Ze typt u exit om de verbinding met de Raspberry Pi en de aanwijzing verandert terug naar dave@howtogeek.

Voor het gebruik van Samba, moet u de cifs-utils pakket.

Apt-get gebruiken om deze package installeren op uw systeem als u gebruikmaakt van Ubuntu of een andere Debian-gebaseerde distributie. Op andere Linux distributies, gebruik maken van uw Linux-distributie is de package beheer tool voor in de plaats.

sudo apt-get install cifs-utils

Wanneer de installatie is voltooid, monteer de delen met een commando zoals in het volgende, het wijzigen van het IP-adres, de naam van de share en mount point (welke reeds moet bestaan) aan te passen aan uw omstandigheden.

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

Laten we breken de onderdelen van die opdracht.

  • -t cifs: Het type bestandssysteem is cifs.
  • -o referenties=/etc/samba/creds,uid=1000,gid=1000: De opties parameters zijn het pad naar een bestand met de naam creds die is beveiligd en bevat de gebruikersnaam en het wachtwoord voor de Raspberry Pi gebruiker; de gebruiker-ID (UID) en Group ID (GID) die worden gebruikt om de eigenaar en groep van de root van het file systeem.
  • //192.168.4.13/delen: De netwerk locatie van het apparaat met de Samba share op, en de Samba naam van de gedeelde map. De wortel van het aandeel een map met de naam Back-up, maar de Samba share-naam is ingesteld om te delen.
  • /media/dave/NAS: De naam van het mount-punt. Moet u uw ” mount-punt vooraf.

Door het bezoeken van onze mountpoint /media/dave/NAS we zijn toegang tot de gedeelde map op de Raspberry Pi via het netwerk. We zien de twee mappen op de Raspberry Pi genaamd dave en pat.

cd /media/dave/NAS

Het aanmaken en Aankoppelen van een bestandssysteem

U kunt gebruik het dd commando om een imagebestand te maken, gebruik dan mkfs om een bestand te maken systeem binnen. Dat bestand systeem kan dan gemonteerd worden. Dit is een goede manier om te oefenen en te experimenteren met de berg.

We gebruiken het als (input-bestand) optie om te vertellen dd gebruik van de stroom van de nul-waarden van /dev/zero als het input bestand.

De of (output file) wordt een nieuw bestand met de naam geek_fs.

We zijn met behulp van de bs (grootte van het blok) optie voor het aanvragen van een blok grootte van 1 MB.

We maken gebruik van de graaf optie om te vertellen dd om 20 blokken in het output-bestand.

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

Dat maakt ons image bestand voor ons. Het bevat niets anders dan nul waarden.

We maken een bestand systeem binnen de geek_fs-bestand met behulp van de mkfs opdracht. De -t (type) optie kunt u het type bestandssysteem. We maken een ext4-systeem.

mkfs -t ext4 ./geek_fs

Dat is allen die het neemt om een bestand systeem.

Laten we de berg op /media/dave/geek en dan met chown om de eigenaar en groep eigendommen om toegang toe te staan.

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

Werkt het? We veranderen in het nieuwe bestandssysteem en kopiëren in een bestand om te zien.

cd /media/dave/geek
cp /etc/fstab .

ls -l

We waren in staat om van map te wijzigen in het nieuwe bestand systeem, en wij met succes een kopie van het /etc/fstab bestand. Het werkt!

Als we de berg voor een lijst van de gemounte bestandssystemen, maar beperken de uitvoer naar ext4 bestandssystemen met de-t (type) optie, we zullen zien, zijn er nu twee gemonteerd ext4 bestandssystemen.

mount-t ext4

Uitbouwen van een Systeem van het Dossier

Uitbouwen van een bestand op het systeem gebruikt de -o remount optie. Het wordt meestal gedaan om een bestand te wijzigen systeem van een alleen-lezen (testen) staat te lezen-schrijven van (productie) staat.

Laten we monteren onze floppy drive opnieuw. Deze keer gebruiken we de -r (alleen-lezen) vlag. Vervolgens zullen we de pijp monteren door middel van grep en de details van de floppy-bestandssysteem.

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

Zoals je kunt zien de gemarkeerde ro geeft aan dat het bestandssysteem wordt alleen-lezen aangekoppeld.

Met behulp van de -o remount optie met de rw-station (lezen-schrijven) vlag kunnen we ontkoppelen en opnieuw aankoppelen van het bestandssysteem met de nieuwe instellingen, dit alles in een commando.

sudo mount-o remount,rw /mnt

Het herhalen van de leidingen van de berg door grep laat ons zien dat de ro is vervangen door rw (gemarkeerd). Het bestandssysteem is nu in read-write modus.

mount | grep /mnt

(Niet) het Verplaatsen van een Bestand Systeem

U gebruikt te kunnen ontkoppelen van een bestandssysteem en breng het op een andere mount point met een enkel commando.

De -M (move) optie in mount bestaat specifiek voor het toestaan van u om dat te doen. Maar het werkt niet meer in Linux-distributies die zijn verschoven naar systemd. En dat de meeste van de grote namen.

Als we proberen te bewegen een bestand systeem van de /mnt/geek, het mislukt, en geeft de volgende foutmelding. Proberen om een lijst van de bestanden in de bestanden ystem door ./geek geeft geen resultaten.

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

De oplossing is het gebruik van de -B (bind) optie die we eerder gebruikt voor het binden van de originele koppel-punt naar de nieuwe mount-punt.

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

Afgezien van niet vrijmaken van de originele koppel-punt, deze hebben dezelfde praktische uitkomst.

Laatste Opmerkingen

Het gebruik van de –make-private optie was het mogelijk om de kracht van het bewegen om plaats te nemen op systemd versies van Linux. Die techniek is niet hier zijn twee redenen voor.

  1. Het kan onvoorspelbare gedrag.
  2. Het was niet blijvend is en zou moeten herhalen bij elke reboot.

Devuan Linux gebruikt SysV init niet systemd. Een computer is geladen met de nieuwste versie van Devuan en getest. De -M (move) optie, zoals verwacht werkte op dat systeem.

Afgezien van de systemd problemen met de -M (move) optie, moet u het gebruik van de mount en umount eenvoudig. Dit zijn de commando ‘ s om uw mouw wanneer u geconfronteerd wordt met een beschadigd systeem, en je hebt om te beginnen met patchwork het bestandssysteem weer bij elkaar met de hand.