Zoeken op website

LFCS #5: Hoe (Samba en NFS) bestandssystemen in Linux te mounten


De Linux Foundation lanceerde de LFCS-certificering (Linux Foundation Certified Sysadmin), een gloednieuw programma dat tot doel heeft individuen uit alle hoeken van de wereld in staat te stellen zich te certificeren in basis- tot middelmatige systeembeheertaken voor Linux-systemen , inclusief het ondersteunen van lopende systemen en services, samen met algemene monitoring en analyse, plus slimme besluitvorming als het gaat om het voorleggen van problemen aan hogere ondersteuningsteams.

De serie krijgt de titel Voorbereiding op de LFCS (Linux Foundation Certified Sysadmin) delen 1 tot en met 33 en behandelt de volgende onderwerpen:

Part 1

Hoe u het ‘Sed’-commando gebruikt om bestanden in Linux te manipuleren

Part 2

Hoe Vi/Vim onder Linux te installeren en te gebruiken

Part 3

Bestanden en directoires comprimeren en bestanden zoeken in Linux

Part 4

Hoe opslagapparaten te partitioneren in Linux

Part 5

Hoe (Samba en NFS) bestandssystemen in Linux te mounten

Part 6

Partities samenstellen als RAID-apparaten – Systeemback-ups maken en beheren

Part 7

Systeemopstartprocessen en -services beheren (SysVinit, Systemd en Upstart

Part 8

Hoe u gebruikers en groepen, bestandsrechten en Sudo-toegang beheert

Part 9

Linux-pakketbeheer met Yum, RPM, Apt, Dpkg, Aptitude en Zypper

Part 10

Leren van basisshellscripts en probleemoplossing voor bestandssystemen

Part 11

LVM beheren en creëren met de opdrachten vgcreate, lvcreate en lvextend

Part 12

Hoe Linux te verkennen met geïnstalleerde Help-documentatie en -hulpmiddelen

Part 13

Grand Unified Bootloader (GRUB) configureren en problemen oplossen

Part 14

Bewaak het resourcegebruik van Linux-processen en stel proceslimieten per gebruiker in

Part 15

Kernel Runtime-parameters instellen of wijzigen in Linux-systemen

Part 16

Implementatie van verplichte toegangscontrole met SELinux of AppArmor in Linux

Part 17

Toegangscontrolelijsten (ACL's) en schijfquota instellen voor gebruikers en groepen

Part 18

Netwerkservices installeren en automatisch opstarten bij opstarten configureren

Part 19

Een ultieme handleiding voor het instellen van een FTP-server om anonieme aanmeldingen toe te staan

Part 20

Stel een Basic Recursive Caching DNS-server in en configureer zones voor domein

Part 21

Hoe u de MariaDB-databaseserver installeert, beveiligt en de prestaties afstemt

Part 22

Hoe u NFS Server installeert en configureert voor het delen van bestandssystemen

Part 23

Apache instellen met op naam gebaseerde virtuele hosting met SSL-certificaat

Part 24

Hoe u een Iptables-firewall instelt om externe toegang tot services in Linux mogelijk te maken

Part 25

Hoe u van een Linux een router kunt maken die verkeer statisch en dynamisch afhandelt

Part 26

Hoe u gecodeerde bestandssystemen kunt instellen en uitwisselen met behulp van de Cryptsetup Tool

Part 27

Systeemgebruik en -storingen controleren en problemen met Linux-servers oplossen

Part 28

Hoe u een netwerkrepository instelt om pakketten te installeren of bij te werken

Part 29

Netwerkprestaties, beveiliging en probleemoplossing controleren

Part 30

Hoe u virtuele machines en containers installeert en beheert

Part 31

Leer de basisprincipes van Git om projecten efficiënt te beheren

Part 32

Een beginnershandleiding voor het configureren van IPv4- en IPv6-adressen in Linux

Part 33

Een beginnershandleiding voor het creëren van netwerkbinding en -bridging in Ubuntu

Dit bericht is deel 5 van een reeks van 33 tutorials. Hier in dit deel zullen we uitleggen hoe je lokale en netwerkbestandssystemen in Linux kunt mounten/unmounten, die vereist zijn voor het LFCS-certificeringsexamen.

Bestandssystemen aan- en afkoppelen in Linux

Zodra een schijf is gepartitioneerd, heeft Linux een manier nodig om toegang te krijgen tot de gegevens op de partities. In tegenstelling tot DOS of Windows (waar dit wordt gedaan door aan elke partitie een stationsletter toe te wijzen), gebruikt Linux een uniforme directorystructuur waarbij elke partitie op een koppelpunt in die boom wordt aangekoppeld.

Een mountpoint is een directory die wordt gebruikt als een manier om toegang te krijgen tot het bestandssysteem op de partitie, en het mounten van het bestandssysteem is het proces waarbij een bepaald bestandssysteem (bijvoorbeeld een partitie) wordt gekoppeld aan een specifieke directory in de directorystructuur.

Met andere woorden: de eerste stap bij het beheren van een opslagapparaat is het koppelen van het apparaat aan de bestandssysteemboom. Deze taak kan eenmalig worden uitgevoerd door tools zoals mount te gebruiken (en vervolgens te ontkoppelen met umount) of permanent tijdens het opnieuw opstarten door de /etc te bewerken /fstab bestand.

Bestandssystemen mounten onder Linux

Het mount commando (zonder opties of argumenten) toont de momenteel aangekoppelde bestandssystemen.

mount

Daarnaast wordt mount gebruikt om bestandssystemen in de bestandssysteemboom te mounten. De standaardsyntaxis is als volgt.

mount -t type device dir -o options

Dit commando instrueert de kernel om het bestandssysteem op het apparaat te mounten (bijvoorbeeld een partitie die is geformatteerd met een type bestandssysteem) in de map dir, met behulp van alle opties. In deze vorm zoekt mount niet in /etc/fstab naar instructies.

Als bijvoorbeeld alleen een map of apparaat is opgegeven.

mount /dir -o options
or
mount device -o options

Het commando mount probeert een koppelpunt te vinden en als het er geen kan vinden, zoekt het vervolgens naar een apparaat (beide gevallen in het bestand /etc/fstab), en probeert ten slotte de mount-bewerking te voltooien (wat meestal lukt, behalve in het geval dat de directory of het apparaat al in gebruik is, of wanneer de gebruiker die mount aanroept niet root is).

U zult merken dat elke regel in de uitvoer van de mount het volgende formaat heeft.

device on directory type (options)

Bijvoorbeeld,

/dev/mapper/debian-home on /home type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)

Leest:

De /dev/mapper/debian-home is aangekoppeld op /home, dat is geformatteerd als ext4, met de volgende opties: rw,relatime,user_xattr,barrier=1 ,gegevens=besteld

Opdrachtopties koppelen

De meest gebruikte mount commando-opties zijn onder meer.

  • async: maakt asynchrone I/O-bewerkingen mogelijk op het bestandssysteem dat wordt aangekoppeld.
  • auto: markeert het bestandssysteem als ingeschakeld om automatisch te worden aangekoppeld met behulp van mount -a, wat het tegenovergestelde is van noauto.
  • defaults: deze optie is een alias voor async,auto,dev,exec,nouser,rw,suid. Houd er rekening mee dat meerdere opties moeten worden gescheiden door een komma zonder spaties. Als u per ongeluk een spatie tussen opties typt, interpreteert de mount de daaropvolgende tekstreeks als een ander argument.
  • loop: koppelt een afbeelding (bijvoorbeeld een .iso-bestand) als een loop-apparaat. Deze optie kan worden gebruikt om de aanwezigheid van de inhoud van de schijf in een optische medialezer te simuleren.
  • noexec: voorkomt de uitvoering van uitvoerbare bestanden op het specifieke bestandssysteem. Het is het tegenovergestelde van exec.
  • nouser: voorkomt dat gebruikers (behalve root) het bestandssysteem kunnen aan- en ontkoppelen. Het is het tegenovergestelde van de gebruiker.
  • opnieuw koppelen: koppelt het bestandssysteem opnieuw aan als het al is aangekoppeld.
  • ro: koppelt het bestandssysteem als alleen-lezen.
  • rw: koppelt het bestandssysteem met lees- en schrijfmogelijkheden.
  • relatime: zorgt ervoor dat de toegangstijd tot bestanden alleen wordt bijgewerkt als atime eerder is dan mtime.
  • user_xattr: stelt gebruikers in staat om uitgebreide bestandssysteemattributen in te stellen en op afstand te gebruiken.

Een apparaat monteren met ro- en noexec-opties

mount -t ext4 /dev/sdg1 /mnt -o ro,noexec

In dit geval kunnen we zien dat pogingen om een bestand te schrijven naar of een binair bestand uit te voeren dat zich binnen ons montagepunt bevindt, mislukken met bijbehorende foutmeldingen.

touch /mnt/myfile
/mnt/bin/echo “Hi there”

Een apparaat met standaardopties koppelen

In het volgende scenario proberen we een bestand naar ons nieuw aangekoppelde apparaat te schrijven en een uitvoerbaar bestand in de bestandssysteemboom uit te voeren met dezelfde opdrachten als in het vorige voorbeeld.

mount -t ext4 /dev/sdg1 /mnt -o defaults

In dit laatste geval werkt het perfect.

Bestandssystemen ontkoppelen in Linux

Het ontkoppelen van een apparaat (met de opdracht umount) betekent dat u alle resterende 'on transit'-gegevens schrijft, zodat deze veilig kunnen worden verwijderd. Houd er rekening mee dat als u een gekoppeld apparaat probeert te verwijderen zonder het eerst op de juiste wijze te ontkoppelen, u het risico loopt het apparaat zelf te beschadigen of gegevensverlies te veroorzaken.

Dat gezegd hebbende, moet je, om een apparaat te ontkoppelen, “buiten” de blokapparaatdescriptor of het aankoppelpunt staan. Met andere woorden: uw huidige werkmap moet iets anders zijn dan het montagepunt. Anders krijgt u een melding dat het apparaat bezet is.

Een gemakkelijke manier om het montagepunt te “verlaten” is het typen van de opdracht cd die ons, bij gebrek aan argumenten, naar de thuismap van onze huidige gebruiker zal brengen, zoals hierboven weergegeven.

Samba- en NFS-netwerkbestandssystemen aankoppelen

De twee meest gebruikte netwerkbestandssystemen zijn SMB (wat staat voor “Server Message Block ”) en NFS (“Netwerkbestand Systeem”). De kans is groot dat u NFS zult gebruiken als u een share alleen voor Unix-achtige clients wilt instellen, en voor Samba zult kiezen als u bestanden wilt delen met Windows-gebaseerde clients en misschien ook andere Unix-achtige clients.

Bij de volgende stappen wordt ervan uitgegaan dat Samba- en NFS-shares al zijn ingesteld op de server met IP 192.168.0.10 (houd er rekening mee dat het instellen van een NFS-aandeel is een van de competenties die vereist zijn voor het LFCE-examen, dat we na deze serie zullen behandelen).

Een Samba-share mounten op Linux

1. Installeer eerst de samba-client samba-common en cifs-utils pakketten op Red Hat en Debian gebaseerde distributies.

yum update && yum install samba-client samba-common cifs-utils
apt update && apt install samba-client samba-common cifs-utils

Voer vervolgens de volgende opdracht uit om te zoeken naar beschikbare samba-shares op de server.

smbclient -L 192.168.0.10

En voer het wachtwoord in voor het root-account op de externe machine.

In de bovenstaande afbeelding hebben we het aandeel gemarkeerd dat gereed is voor montage op ons lokale systeem. Om toegang te krijgen, hebt u een geldige Samba-gebruikersnaam en -wachtwoord op de externe server nodig.

2. Wanneer u een met een wachtwoord beveiligde netwerkshare aankoppelt, is het geen goed idee om uw inloggegevens in het bestand /etc/fstab te schrijven. In plaats daarvan kun je ze ergens in een verborgen bestand opslaan met de machtigingen ingesteld op 600, zoals zo.

mkdir /media/samba
echo “username=samba_username” > /media/samba/.smbcredentials
echo “password=samba_password” >> /media/samba/.smbcredentials
chmod 600 /media/samba/.smbcredentials

3. Voeg vervolgens de volgende regel toe aan het /etc/fstab bestand.

//192.168.0.10/gacanepa /media/samba cifs credentials=/media/samba/.smbcredentials,defaults 0 0

4. U kunt nu uw samba-share aankoppelen, hetzij handmatig (mount //192.168.0.10/gacanepa) of door uw machine opnieuw op te starten om de wijzigingen toe te passen die zijn aangebracht in < b>/etc/fstab permanent.

mount -a

Een NFS-share aankoppelen op Linux

1. Installeer eerst de nfs-common- en portmap-pakketten op Red Hat- en Debian-gebaseerde distributies.

yum update && yum install nfs-utils nfs-utils-lib
apt update && apt install nfs-common

2. Maak een koppelpunt voor de NFS-share.

mkdir /media/nfs

3. Voeg de volgende regel toe aan het /etc/fstab bestand.

192.168.0.10:/NFS-SHARE /media/nfs nfs defaults 0 0

4. U kunt nu uw nfs-share aankoppelen, handmatig (mount 192.168.0.10:/NFS-SHARE) of door uw machine opnieuw op te starten om de wijzigingen toe te passen die in /etc/fstab permanent.

Bestandssystemen permanent aankoppelen in Linux

Zoals getoond in de vorige twee voorbeelden, bepaalt het bestand /etc/fstab hoe Linux toegang biedt tot schijfpartities en verwisselbare media-apparaten en bestaat het uit een reeks regels die elk zes velden bevatten; de velden worden gescheiden door een of meer spaties of tabs. Een regel die begint met een hekje (#) is commentaar en wordt genegeerd.

Elke regel heeft het volgende formaat.

<file system> <mount point> <type> <options> <dump> <pass>

Waar :

  • : de eerste kolom specificeert het mount-apparaat. De meeste distributies specificeren partities nu op basis van hun labels of UUID's. Deze praktijk kan problemen helpen verminderen als partitienummers veranderen.
  • : De tweede kolom specificeert het mountpunt.
  • : De typecode van het bestandssysteem is dezelfde als de typecode die wordt gebruikt om een bestandssysteem te mounten met de opdracht mount. Met een bestandssysteemtypecode auto kan de kernel het bestandssysteemtype automatisch detecteren, wat een handige optie kan zijn voor verwijderbare media-apparaten. Houd er rekening mee dat deze optie mogelijk niet voor alle beschikbare bestandssystemen beschikbaar is.
  • : één (of meer) mount-optie(s).
  • : U zult dit waarschijnlijk op 0 laten staan (anders op 1) om het dump-hulpprogramma uit te schakelen dat een back-up maakt van het bestandssysteem tijdens het opstarten (het dump-programma was ooit een veelgebruikt back-uphulpmiddel, maar het is tegenwoordig veel minder populair.)
  • : Deze kolom specificeert of de integriteit van het bestandssysteem tijdens het opstarten moet worden gecontroleerd met fsck. Een 0 betekent dat fsck een bestandssysteem niet mag controleren. Hoe hoger het getal, hoe lager de prioriteit. De rootpartitie zal dus hoogstwaarschijnlijk de waarde 1 hebben, terwijl alle andere die moeten worden gecontroleerd de waarde 2 moeten hebben.

Monteer voorbeelden

1. Om tijdens het opstarten een partitie met het label TECMINT te mounten met de kenmerken rw en noexec, moet u toevoegen de volgende regel in het bestand /etc/fstab.

LABEL=TECMINT /mnt ext4 rw,noexec 0 0

2. Als u wilt dat de inhoud van een schijf in uw dvd-station beschikbaar is tijdens het opstarten.

/dev/sr0    /media/cdrom0    iso9660    ro,user,noauto    0    0

Waar /dev/sr0 uw dvd-station is.

Samenvatting

U kunt er zeker van zijn dat het aan- en afkoppelen van lokale en netwerkbestandssystemen vanaf de opdrachtregel deel zal uitmaken van uw dagelijkse verantwoordelijkheden als systeembeheerder. Je moet ook /etc/fstab beheersen.

Ik hoop dat u dit artikel nuttig vindt om u te helpen bij deze taken. Voel je vrij om hieronder je opmerkingen toe te voegen (of vragen te stellen) en dit artikel te delen via je sociale netwerkprofielen.

Het LFCS eBook is nu te koop. Bestel vandaag nog uw exemplaar en begin uw reis om een gecertificeerde Linux-systeembeheerder te worden!

Product Name Price Buy
The Linux Foundation’s LFCS Certification Preparation Guide $19.99 [Buy Now]

Als laatste, maar daarom niet minder belangrijk, kunt u overwegen om uw examenvoucher te kopen via de volgende links. Zo verdient u een kleine commissie, waarmee we dit boek up-to-date kunnen houden.