Slik lærer du mer om Linux-kjernen fra din egen maskin
Lære å jobbe med GNU / Linux innebærer generelt å lære å jobbe med et skrivebordsmiljø. Tema teknologi tillater disse skrivebordsmiljøene å etterligne grensesnittene til iOS, Microsoft Windows og OS X-enheter. Dette bidrar til å minimere dette som det var. Mange mennesker går videre og lærer Unix kommandolinjeadministrasjon med Bash eller tcsh-skjellene. Men å bli kjent med internals av Linux-kjernen kan hjelpe deg å bedre forstå hvordan ulike deler av opcode samhandler med hverandre.
Noen mennesker ville hevde at det ville være best å gå flere skritt videre og i tillegg lære hvordan kompilatorer overfører C-kode til maskininstruktører for en mikroprosessor. Assembly Code advokater vil da hevde at det er best å lære ASM å virkelig forstå programmering på x86 og x86_64 plattformene. Uavhengig av disse stillingene kan grunnleggende Linux-kommandoer gi et vell av informasjon om hvordan kjernen ser datamaskinen din. Lære gjennom en titt, men ikke berør paradigmet er en fin måte å mestre selve kjernen på. Mens rotkontoen ble brukt til eksemplene på denne siden, anbefales det sterkt at du bare ser kjernelinkede kataloger gjennom en brukerkonto.
Metode 1: The / proc Directory
/ Proc-katalogen sitter i en av de primære områdene i hovedkatalogen på toppnivå i en hvilken som helst Unix-filstruktur. Den inneholder det som kalles proc filsystemet, bedre kjent som procfs som inneholder informasjon om hvordan forskjellige ressurser åpner kjerneminnet. Det er kartlagt til / proc på det tidspunktet systemet starter. Siden denne proxy-filstrukturen tjener som et grensesnitt til den interne datastrukturen i Linux-kjernen, er det igjen enda bedre å utforske dette via en brukerkonto. De fleste filer blir klassifisert av den synlige systemfilstrukturen som skrivebeskyttet uansett, men det er best å være på den sikre siden.
Når det er sagt, er hver av disse en tekstfil, så du kan se dem hvis du ønsker det. Bruk cd-kommandoen til å legge inn / proc-katalogen, og deretter utgav ls for å se hva som er der. Bruk katten, mindre eller mer kommando med noen av filene for å se på dem. Cpuinfo-filen er et godt sted å starte, siden det viser hvordan kjernen ser mikroprosessoren din. Se på statfilen for å se på løpende prosesser.
Skriving av katteapparater vil gi deg en titt på hvilke ting som er festet til maskinen din.
Forresten, kan du alltid utstede kommandoproceduren for å få en oversikt over hvordan / proc-filstrukturen er knyttet til kjernen. Siden servert kommer fra Linux Programmeringshåndboken.
Metode 2: Den / sys Directory
Din neste stopp på turen til kjernen din er / sys, som er en annen katalog som er kartlagt til en låtsom filstruktur. Dette følger det samme generelle Unix-konseptet som / proc gjør, men det eksporterer i stedet aktivt informasjon om tilhørende enhetsdrivere og en rekke kjernedelsystemer. Hvis du noen gang har jobbet med et BSD-basert system, kan du være mer kjent med sysctl som gir disse funksjonene. PCI-, USB- og S / 390-bussenheter er alle kartlagt til / sys-katalogen.
Bruk cd / sys til å gå over til katalogen og deretter utstede kommandoen ls eller dir. Du kan ha kataloger med tittelen blokk, klasse, enheter, fs, kjerne og kanskje andre. Du kan utforske disse for ytterligere flate filer som inneholder informasjon om systemet, men gjør det igjen fra en brukerkonto og ta en titt, men ikke berør mentaliteten om deg selv.
Metode 3: The / dev Directory
Bruk kommandoen cd / dev til å gå over til / dev-katalogen, som kan være den virtuelle strukturen med kjernen du er mest kjent med allerede. Navnet betyr enheter, og inneholder filrepresentasjon av enheter som er koblet til systemet. En ls-kommando i denne katalogen vil returnere mange filer på selv den enkleste serverfordelingen.
Noen av disse er veldig spesielle. Filen / dev / null er en null-enhet som ikke gjør noe. Hvis du skriver katt / dev / null, får du ingenting ut av det. Det kalles litt bøtte, og produksjonen kan omdirigeres til den for å holde skjermen ren. En fil som heter / dev / null inneholder ingenting, men nulldata, som kan skrives til en disk for å nullstille den. De tilfeldige og urandom-filene inneholder tilfeldig søppelpost for å opprette sikkerhetspakker.
PRO TIPS: Hvis problemet er med datamaskinen eller en bærbar PC / notatbok, bør du prøve å bruke Reimage Plus-programvaren som kan skanne arkiver og erstatte skadede og manglende filer. Dette fungerer i de fleste tilfeller der problemet er oppstått på grunn av systemkorrupsjon. Du kan laste ned Reimage Plus ved å klikke herHvis du noen gang har formatert en disk, har du sannsynligvis minst erfaring med hvordan Linux-kjernen ser dem. Hver disk knyttet til systemet får et navn som sda, sdb og så videre for hver disk. Ulike disktyper får forskjellige navn. Husk at / dev-katalogen utnytter en potensiell formell datavitenskapsdefinisjon av disk i stedet for den måten vi vanligvis bruker den termen på. Dette betyr at en harddisk, en SSD, et SD-kort, et microSDHC-kort, et montert smarttelefonfilsystem som er festet via USB, USB-pinner og til og med monterte tabletter, er alle disker til kjernen.
Hvert disknavn i Linux mottar deretter et tall etter at det angir et partisjonsnummer. Hvis du hadde en SSD med to primære partisjoner, kan du ha / dev / sda1 og / dev / sda2 som gyldige volumer. Mer enn sannsynlig hvis du kjører Linux fra en stasjonær eller bærbar datamaskin med MBR-stilpartisjonering, har du / dev / sda1 satt til ext4-partisjonen som faktisk har Linux installert på den. Mer enn sannsynlig / dev / sda2 er en utvidet partisjon som deretter inneholder / dev / sda5 som en swap-partisjon. Denne ordningen er vanlig, men på ingen måte nødvendig. Merk at siden byttepartisjonen i dette vanlige eksemplet er en logisk disk inne i en utvidet partisjon, mottar den 5 i stedet for 3 som tall.
Hvis du vil lære mer om måten kjernen ser på og formaterer partisjoner, kan du faktisk se en støttet partisjonsliste med fdisk-kommandoen. Mens fdisk ikke skriver partisjonstabeller til du forteller det, er det fortsatt best å prøve dette med noe du ikke bryr deg om å riste. Det anbefales å peke på det som en tom USB-pinne du bare kunne enkelt omformatere.
La oss si at din pinne vises som / dev / sdc, da kan du bruke sudo fdisk / dev / sdc for å få det lastet opp. Hvis du har en gyldig partisjon i den, skriver du t for å endre typen og typen L for å laste en hexekode liste. Legg merke til at MBR- og GUID-partisjonssystemer snakker med kjernen annerledes, og derfor har forskjellige oppgaver.
Oftere enn ikke vil du ha stasjoner satt til type 83, som er for Linux-stasjoner, 82, som er for Linux-byttepartisjoner, eller en av FAT-filtyper. FAT dateres tilbake i en eller annen form til 1977, og er fortsatt foretrukket for mange typer mobile enheter, så vel som mange flyttbare stasjoner. Vær oppmerksom på at enkelte partisjonstyper, for eksempel type 0x0c, inneholder noe som kalles LBA-støtte.
Når en programmerer designer en kjerne for et operativsystem, har de noen forskjellige måter de kan se på disker. Den ene er å dele fatene i sylindere, hoder og sektorer. Dette var den klassiske måten å referere til harddisker for lengst. Ekte disk geometri har aldri vært viktig for Linux, og denne ordningen går dessverre ut av adresser etter omtrent 8 binære Gigabyte. Den andre måten er å bruke Logisk C / H / S adressering, som gjør dette, men lar deretter styrekontrolleren kartlegge sylinder-, hode- og sektornummer hvor de vil. Derfor kan et operativsystem teoretisk påstå at det var hodene i et SD-kort eller en USB-pinne når dette er fysisk umulig.
Den tredje metoden er gjennom logisk blokkadressering, noe som LBA står for. Hver fysisk blokk i et volum mottar et tall i denne ordningen. Operativsystemet forteller at diskkontrolleren skal skrive til en bestemt nummerert blokk, men vet faktisk ikke om det er direkte blokk på disken. Dette er ordningen som er mest brukt i dag, og det er sikkert brukt på de aller fleste harddisker siden midten av 1990-tallet.
Linux tilbyr kjernestøtte for å montere et bredt spekter av partisjonstyper uten direkte inngang, men det er fortsatt best å ikke være for outlandish når du velger dem. Du kan skryte dataene dine hvis du lagde en veldig merkelig partisjonstype til valg av filsystem.
Metode 4: Systemanrop fra Linux Programmeringshåndboken
Ombord mansider lesere som følger med et flertall av Linux distribusjoner kan faktisk gi deg et krasj kurs på systemanrop, noe som kan hjelpe uhyre med å lære om kjernen. Start xman grafisk man sidebrowser enten fra en .desktop-kobling hvis du har en, eller alternativt ved å holde nede supernøkkelen og R samtidig som du skriver xman og trykker på enter. Velg alternativet Manuell side, og velg deretter Seksjoner og til slutt (2) Systemanrop fra rullegardinmenyen.
Når en valgliste vises, velg det. En side fra Linux Programmeringshåndboken som vil lære deg ganske mye om systemanrop, hilser deg deretter.
PRO TIPS: Hvis problemet er med datamaskinen eller en bærbar PC / notatbok, bør du prøve å bruke Reimage Plus-programvaren som kan skanne arkiver og erstatte skadede og manglende filer. Dette fungerer i de fleste tilfeller der problemet er oppstått på grunn av systemkorrupsjon. Du kan laste ned Reimage Plus ved å klikke her