Linux-filsystem forklart: Oppstartslasting, diskpartisjonering, BIOS, UEFI og filsystemtyper


Konseptet med oppstartslasting, diskpartisjonering, partisjonstabell, BIOS, UEFI, filsystemtyper osv. er lite kjent for de fleste av oss. Vi kommer over denne terminologien veldig ofte, men tok sjelden smerten for å kjenne disse og deres betydning i detaljer. Denne artikkelen i et forsøk på å oppfylle dette gapet på enklest mulig måte.

Partisjonstabell

En av de aller første beslutningene vi kommer over når vi installerer en Linux-distribusjon er partisjoneringen av disken, filsystemet som skal brukes, implementere kryptering for sikkerhet som varierer med endringen i arkitektur og plattform. En av de mest brukte arkitekturene, INTEL, gjennomgår noen endringer og det er viktig å forstå disse endringene som på den annen side krever kunnskap om oppstartsprosessen.

Mange utviklere kjører både Windows og Linux på samme maskin, noe som kan være et spørsmål om preferanse eller behov. De fleste av dagens oppstartslastere er smarte nok til å gjenkjenne et hvilket som helst antall operativsystemer på samme boks og gi en meny for å starte opp i det foretrukne. En annen måte å oppnå det samme målet på er å bruke virtualisering ved å bruke Xen, QEMU, KVM eller et annet foretrukket visualiseringsverktøy.

BIOS vs UEFI

Hvis jeg husker feil, var til sent 90s BIOS, som står for Basic Input/Output System, den eneste måten å starte et Intel-system på. BIOS holder partisjoneringsinformasjonen i et spesielt område kalt Master Boot Record (MBR), slik at tilleggskode blir lagret i første sektor av hver oppstartbare partisjon.

På slutten av 90-tallet resulterte Microsofts intervensjon med Intel i Universal Extensible Firmware Interface (UEFI) hvis opprinnelige formål var å starte opp sikkert. Denne oppstartsmekanismen viste seg å være en utfordring for rootkits, spesielt som kobles til oppstartssektorer og var vanskelig å oppdage med BIOS.

Start med BIOS

Oppstart med BIOS krever plassering av oppstartskoder eller oppstartssekvens i MBR som er plassert i den første sektoren på oppstartsdisken. Hvis mer enn ett operativsystem er installert, erstattes den installerte oppstartslasteren med en vanlig oppstartslaster som plasserer oppstartskoder på hver oppstartbar disk under installasjon og oppdatering automatisk, noe som betyr at brukeren har valget mellom å starte opp i hvilket som helst av de installerte operativsystemene.

Uansett ser man, spesielt på Windows at en ikke-Windows-oppstartslaster ikke vil oppdatere systemet, spesielt visse programmer, nemlig IE, men igjen er det ingen hard og rask regel, og det er heller ikke dokumentert noen steder .

Start med UEFI

UEFI er den nyeste oppstartsteknologien utviklet i nært samarbeid mellom Microsoft og Intel. UEFI krever at fastvaren som skal lastes er digitalt signert, en måte å forhindre at rootkits kobles til oppstartspartisjonen. Problemet med å starte Linux ved hjelp av UEFI er imidlertid komplekst. Oppstart av Linux i UEFI krever at nøklene som brukes må offentliggjøres under GPL som er mot Linux-protokollen.

Det er imidlertid fortsatt mulig å installere Linux på UEFI-spesifikasjonen ved å deaktivere «Sikker oppstart» og aktivere «Legacy Boot». Oppstartskoder i UEFI er plassert under underkataloger til /EFI, spesiell partisjon i den første sektoren på disken.

Typer Linux-filsystemer

En standard Linux-distribusjon gir valget mellom partisjoneringsdisk med filformatene som er oppført nedenfor, som hver har spesiell betydning knyttet til den.

  1. ext2
  2. ext3
  3. ext4
  4. jfs
  5. ReiserFS
  6. XFS
  7. Btrfs

Dette er den progressive versjonen av Extended Filesystem (ext), som først og fremst ble utviklet for MINIX. Den andre utvidede versjonen (ext2) var en forbedret versjon. Ext3 la til ytelsesforbedring. Ext4 var en ytelsesforbedring i tillegg til tilleggsfunksjoner.

Journaled File System (JFS) ble utviklet av IBM for AIX UNIX som ble brukt som et alternativ til system ext. JFS er et alternativ til ext4 for tiden og brukes der stabilitet er nødvendig med bruk av svært få ressurser. Når CPU-kraften er begrenset, er JFS nyttig.

Den ble introdusert som et alternativ til ext3 med forbedret ytelse og avanserte funksjoner. Det var en tid da SuSE Linuxs standard filformat var ReiserFS, men senere gikk Reiser ut av virksomheten og SuSe hadde ikke noe annet valg enn å gå tilbake til ext3 . ReiserFS støtter filsystemutvidelse dynamisk, noe som var relativt en avansert funksjon, men filsystemet manglet et bestemt ytelsesområde.

XFS var en høyhastighets JFS som tok sikte på parallell I/O-behandling. NASA bruker fortsatt dette filsystemet på deres 300+ terabyte lagringsserver.

B-Tree File System (Btrfs) fokuserer på feiltoleranse, morsom administrasjon, reparasjonssystem, stor lagringskonfigurasjon og er fortsatt under utvikling. Btrfs anbefales ikke for produksjonssystem.

Clustered filsystem er ikke nødvendig for oppstart, men best egnet i delt miljø fra lagringssynspunkt.

Det er mange filformater som ikke er tilgjengelige under Linux, men brukes av andre operativsystemer. Nemlig NTFS av Microsoft, HFS av Apple/Mac os osv. De fleste av disse kan brukes under Linux ved å montere dem ved å bruke visse verktøy som ntfs-3g for å montere NTFS-filsystem, men ikke foretrukket under Linux.

Unix filformat

Det er visse filformater som brukes mye i Linux, men ikke foretrukket under Linux spesielt for å installere Linux-rotsystem. f.eks. UFS av BSD.

Ext4 er det foretrukne og mest brukte Linux-filsystemet. I visse spesielle tilfeller brukes XFS og ReiserFS. Btrfs brukes fortsatt i eksperimentelt miljø.

Diskpartisjonering

Det første trinnet er diskpartisjonering. Under partisjonering bør vi huske på punktene nedenfor.

  1. Partisjon med sikkerhetskopiering og gjenoppretting i tankene.
  2. Merke for plassbegrensning i partisjonen.
  3. Diskbehandling – Administrativ funksjon.

Logisk volumstyring

LVM er en kompleks partisjonering som brukes i storlagringsinstallasjon. LVM-strukturen overlegger den faktiske fysiske diskpartisjoneringen.

Swap brukes til minnesøking i Linux, spesielt under dvalemodus. Det nåværende stadiet av systemet skrives til Swap når systemet er satt på pause (Dvalemodus) på et tidspunkt.

Et system som aldri vil gå i dvalemodus trenger en bytteplass som er lik størrelsen på RAM.

Kryptering

Det siste trinnet er kryptering som sikrer data trygt. Kryptering kan være på nivået Disk så vel som Directory. I diskkryptering er hele disken kryptert, og det kreves en slags spesielle koder for å dekryptere den.

Det er imidlertid et komplekst problem. Dekrypteringskoden kan ikke forbli på den samme disken som gjennomgår kryptering, derfor trenger vi spesiell maskinvare eller lar hovedkortet gjøre det.

Diskkrypteringen er relativt enkel å oppnå og er mindre kompleks. I dette tilfellet forblir dekrypteringskoden på samme disk, et sted i en annen katalog.

Diskkryptering er nødvendig i serverbygging og kan være et juridisk problem basert på den geografiske plasseringen du implementerer den.

Her i denne artikkelen prøvde vi å kaste lys over Filsystembehandling så vel som diskbehandling på mye mer dyptgående måte. Det er alt for nå. Jeg vil være her igjen med en annen interessant artikkel som er verdt å vite. Inntil da Hold deg oppdatert og koblet til Tecmint, og ikke glem å gi oss din verdifulle tilbakemelding i kommentarfeltet nedenfor.