Göm menyn

TDDI41 Grundläggande systemadministration

Från bitar till filsystem

Nu har ni kommit till den sista delen i att skapa ett fleranvändarsystem; lagring av användardata (hem-kataloger). Denna laboration är uppdelad i två steg den första kommer ni jobba med de fysiska diskarna och tekniker för att kombinera ihop diskar på olika sätt (RAID och LVM). Den andra delen handlar om att dela ut och montera lagringsytor (diskar) över ert lokal nätverk (nfs, automount).

Förberedelser

Filsystem och grundläggande kommandon

Läs på om mount(8), mkfs(8), mke2fs(8), lsblk(8), df(1) samt fstab(5) och besvara kortfattat följande frågor:
  • Vad är syftet med /etc/fstab?
  • Vad används kommandot mke2fs (mkfs.ext{2..4}) till?
  • Vad skriver kommandot df -h ut?
  • Förklara vad kommandot mount -t ext3 /dev/sdb2 /mnt/media innebär

RAID

Er server har de 4 diskarna vd{a..d}, ni kommer åt dem via /dev/vd*. Det är dessa fyra diskar vi ska jobba med i denna laboration. Börja att läsa på om RAID, Software RAID on Debian samt mdadm(8). Besvara sedan kortfattat följande frågor:
  • Vad står förkortningen RAID för?
  • Förklara i grova drag hur RAID-0 fungerar
  • Förklara i grova drag hur RAID-1 fungerar
  • Vad innebär kommandot mdadm --stop /dev/md0 ?

Övning

  • Installera mdadm
  • Skapa RAID-1 arrayen /dev/md0 av diskarna /dev/vda och /dev/vdb
  • Skapa ett ext4 filsystem på /dev/md0
  • Montera /dev/md0 under /mnt och verifiera storleken på disken
  • Avmontera /dev/md0
  • Skapa RAID-0 arrayen /dev/md1 av diskarna /dev/vdc och /dev/vdd
  • Skapa ett ext4 filsystem på /dev/md1
  • Montera /dev/md1 under /mnt och verifiera storleken på disken
  • Avmontera /dev/md1

Logical Volume Manager (LVM)

LVM är en volymhanterare för Linux som låter dig arbeta med logiska, snarare än fysiska, volymer. Logiska volymer tillåter en viss flexibilitet som fysiska volymer helt enkelt inte kan erbjuda. Varje operativsystem har sitt eget sätt att hantera logiska volymer, men de flesta fungerar mer eller mindre som LVM. du kan läsa på om LVM på debian här. Innan du börjar med det praktiska arbetet besvara kortfattat följande frågor:
  • Förklara följande begrepp: fysisk volym (PV: Physical Volume), volymgrupp (VG: Volume Group) och logisk volym (LV: Logical Volume) och hur de hänger ihop
  • Vad är kommandot för att göra klart en fysisk volym för lvm?
  • Vad är kommandot för att skapa en volymgrupp?
  • Vad är kommandot för att utöka en volymgrupp med ytterligare en PV?
  • Hur skapar du en logisk volym på 100MB från en volymgrupp?

Övning

  • Installera lvm2
  • Initiera/förbered /dev/md0 och /dev/md1 för anvädning i LVM. (detta kommer ta bort filsystemet du skapade på dom)
  • Lägg till /dev/md0 till volymgruppen vgvirt
  • Utöka volymgruppen vgvirt med /dev/md1
  • Skapa 2 logiska volymer lvvol1 och lvvol2
  • Formatera dina nya logiska volymer med ett ext4 filsystem och se till att de monteras in vid boot under /home1 respektive /home2

Network File System (NFS)

En av de viktigaste anledningarna till att ha en server är att lagra filer på den. Genom att använda en central filserver kan alla användare i ett nätverk komma åt alla filer, och tjänster som säkerhetskopiering och återställning är mycket lättare att implementera på en server än på en mängd olika arbetsstationer. Det finns flera nätverksfilsystem som kan användas för att implementera en filserver. I unixvärden är NFS, Network File System ett av de vanligaste systemen. Innan du börjar med det praktiska arbetet läs på om NFS server setup (Debian wiki) samt exports(5).

[Tillagt 231211] OBS! Du behöver bara ha stöd för NFSv4. Läs NFSv4 only-delen av Debian-wikisidan ovan. Se till att inte maskera rpcbind om det förstör något som behövs för andra tjänster (som NIS).

Övning

  • Konfigurera din server som en NFS-server (installera nödvändiga paket)
  • Konfigurera din server så att den exporterar /usr/local till alla era klienter
  • Konfigurera era klienter så att de statiskt monterar in /usr/local från er server vid uppstart. (Den lokala monteringspunkten behöver inte vara /usr/local)

Automatisk montering av kataloger (autofs och automount)

Autofs är en mjukvara som automatiskt monterar fjärrfilsystem när de används. Den vanligaste användningen av autofs är att montera användarkataloger individuellt från flera diskvolymer eller filservrar, men det används ibland för t.ex. flyttbara medier. Innan du påbörjar det praktiska arbetet läs på om autofs(5) samt Autofs on ubuntu 1, och besvara följande frågor kortfattat:

  • Vad är en automount map?
  • Vilket paket behöver du installera för att använda automount?
  • Vad är det för skillnad på direkta och indirekta automount maps?
  • Vad heter huvudkonfigurations-filen för automount? (Detta är inte samma sak som auto.master)

Övning

Automount-maps, inklusive master map, kan lagras på flera olika sätt. När du slutför den här labben förväntas du ha alla konfigurationer i NIS (eller LDAP, om det är det du använder). Platsen (NIS, LDAP, lokal fil) för master-map:en kan anges i nsswitch.conf eller /etc/default/autofs (beroende på Debian-version) och platsen för alla andra maps kan anges i master-map:en.

  • Skapa två nya test-användare, men flytta en användares hemkatalog till /home2/$USERNAME och den andra användarens hemkatalog till /home1/$USERNAME (du måste antagligen skapa katalogerna /home1 och /home2 först). Se till att inga hemkataloger finns kvar i /home. Ändra inte hemkatalogens plats i användardatabasen.
  • Konfigurera din NFS-server för att exportera /home1 och /home2 med rätt behörigheter (läs/skriv-rättigheter, root_squash) till dina klienter (och endast dina klienter) .
  • Installera autofs på dina klienter och server
  • Konfigurera autofs så att den monterar /home/$USERNAME från användarens hemkatalog på NFS-servern. Gör /home till en indirekt monteringspunkt - det vill säga att automounter automatiskt monterar underkataloger för /home, men inte /home själv. Du behöver antagligen en rad per användare i konfigurationsfilen.
  • Kontrollera att dina test-användare kan logga in och att deras hemkataloger monteras in korrekt

Förläng ert skapa-användare-skript från Lab 7. NIS så att användarens hemkatalog skapas i antigen /home1 eller /home2.

Ett konto ska kunna skapas på servern, och sedan loggas in med från godtycklig klient där användarens hemkatalog ska nu monteras in vid inloggning.

Redovisning

För denna labb ska du besvara frågorna ovan (en påminnelse [231211]: glöm inte de allmänna riktlinjerna om att ha med exempelutdata) samt skriva automatiserade tester som visar att din NFS-server och autofs är korrekt uppsatta.

Några av sakerna att testa
  • Vilka kataloger exporteras till vilka klienter
  • Monteras /usr/local in vid uppstart (boot)
  • Med vilka rättigheter exporteras olika kataloger
  • Används nis för auto.master

Fotnätter

  1. Maskinerna vi kör i kursen är Debian och inte Ubuntu, dock är Ubuntu ett Debian-derivat, vilket innebär att mycket är snarlikt. return

Sidansvarig: Anders Fröberg
Senast uppdaterad: 2023-12-11