Komme til gno GNU Utilities


GNU-prosjektet har gitt dusinvis av nyttige verktøy som du kan finne på nesten alle de store Linux-system, men mange nye Linux-brukere har ingen anelse om hvor du skal begynne å lære disse praktiske hjelpemidler . I denne opplæringen, vil jeg dekke noen av de verktøy som du kan bruke til å måle bruk filsystemet, bekrefte størrelsen på filene, og ta en titt inn i større tekstfiler som Apache logger.

Nesten stadig større Linux distro kommer med disse verktøyene installert. Noen distroer designet for ressurs begrenset systemer kan gjøre bruk av busybox, som inkluderer erstatninger for de fleste av GNU verktøy. I så fall bør du ha de samme verktøyene, men de kan mangle funksjoner som finnes i GNU utils eller har litt forskjellige alternativer, etc. Men hvis du bruker de ordinære distroer som Fedora, Debian, Ubuntu, opensuse, Mandriva, Slackware, etc., bør du ha standard utils fra starten.

Forstå GNU utils

GNU verktøyene gir de grunnleggende verktøy for å arbeide med filer, tekst og shell verktøy som man ville forvente på en standard Unix-lignende system. Dette omfatter alt fra verktøy for å administrere filer (ls, cp, dd, og så videre) til tekst manipulasjon (sort, hale, hode, Uniq, og lignende), og skallet verktøy som gir mye av funksjonaliteten som trengs for å holde et system lykkelig og sunt

Historisk disse ble brutt opp i tre samlinger av verktøy:. textutils, fileutils og shellutils. Nå er de bare distribueres som " coreutils " pakke. Hvert verktøy har sitt eget sett av alternativer og dokumentasjon, men suiten har noen vanlige alternativer og relativt standard bruk som hver bruker bør vite.

Hvis du trenger å vite hvilken versjon av programmet du arbeider med , den --version alternativet etter verktøyet skal returnere versjonen og lisensiering informasjon. (Hint, hvis du ser " GPLv2 + " så har du en eldre versjon.) Du bør også se forfatterne av programmet også. For eksempel, her er hva du får se om du sjekker ls --version:

 ls (GNU coreutils) 7.4Copyright (C) 2009 Free Software Foundation, Inc.License GPLv3 +: GNU GPL versjon 3 eller nyere < http: //gnu.org/licenses/gpl.html> .Dette er gratis programvare: du står fritt til å endre og redistribuere den.Det er INGEN GARANTI, i den grad det er tillatt ved law.Written av Richard M. Stallman og David MacKenzie. 

Enda viktigere, hver verktøyet vil ha en hjelp alternativet. Så hvis du er usikker på bruken av en gitt verktøyet, kan du be om å få hjelp, som vil spytte ut en konsis oversikt over alternativene og litt generell info om nytten. Men langt fra en fullstendig manuell. Hvis du vil ha en mye mer detaljert guide, prøv info eller mannen siden ved å kjøre man ls eller info coreutils 'ls invovation'. Det er litt av en håndfull for info, men oversikten er det foretrukne formatet for GNU-prosjektet.

GNU folk har skapt for mange nyttige og viktige verktøy for meg å dekke i en tutorial, så jeg er ll takle noen av de må-haves her, og vi vil finne igjen emnet i kommende ukene. Snarere enn å starte med de absolutte grunnleggende som ls, cp, som du kanskje har sett andre steder, skal jeg vise hvordan du bruker noen verktøy som nykommere til Linux kanskje ikke har møtt en gang.

Opprette og Kontrollere filkontrollsummer

De første utils vil vi se på er md5sum og sha1sum. Disse utils beregne og verifisere sjekksummer for filer. Hvis du noen gang har lastet ned en Linux ISO, pakker, eller kildekoden, har du sikkert lagt merke til at de fleste prosjekter inkluderer linkene for md5 Hotell og sha1
filer. Disse filene inneholder en sjekksum for filen, som hjelper deg verifisere hvorvidt filene er de samme som de er på nedlastningsserveren. Det er en god idé å kontrollere dette, for et par grunner:

Kontroller at filnedlasting er uskadet, så du vil ikke kaste bort en tom CD eller DVD (i tilfelle av ISO), eller får problemer med å installere en pakke

Kontroller at pakken eller ISO er det de er ment å være:.. En kompromittert filen bør ha en annen sjekksum enn originalen

Et notat : Hvis et nettsted er kompromittert, kan en angriper sette opp en sjekksum som matcher en fil som er blitt tuklet med. Så du er ikke noe bedre i så fall, men mesteparten av tiden du kommer til å være å flytte en fil fra et speil – noe som betyr at prosjektets summen bør beskytte deg mot tuklet filer.

De fleste prosjektene har MD5 summer, men noen prosjekter har SHA1, eller begge deler. Uten å gå dypt inn i forskjellene, er en MD5 sum det gamle formatet som gir rimelig anstendig beskyttelse – men det er vist at " kollisjoner " kan bevisst skapt for MD5 summer. En kollisjon er når to filer har samme hash, selv om de er forskjellige. SHA1 anses sikrere.

For å sjekke en fil sum, bare å kjøre md5sum filnavn
eller sha1sum filnavn
på kommandolinjen og du vil se filens sum trykt ved siden av filnavnet, som så:

 jzb @ neelix ~ /$ md5sum filename.imgb4a6bc833c6f719c1980bbe6f3f152d6 filename.img 
 jzb @ neelix ~ /$ sha1sum filename.img9f644a2b9fb10f16515e7597418da3c321453268 filename.img 

Jo større fil jo lenger dette vil ta å kjøre. Større filer (som DVD ISO) kan ta flere minutter, spesielt på tregere systemer. Hvis du har en fil med MD5 sum eller SHA1 sum og filnavn i samme format som vist ovenfor, kan du bruke -c alternativet for å kontrollere filene mot. Så du kan kjøre sha1sum -c filnavn.txt i samme katalog hvor filen ligger, og enten få en OK-melding, eller noe sånt som dette:

 filename.img: FAILEDsha1sum: ADVARSEL: 1 av 1 beregnet checksum samsvarte ikke med 

Som nevnt, det er en god idé å kontrollere eventuelle filer som du laster ned før du prøver å brenne til CD eller DVD, eller før du installerer en pakke, etc. Det tar noen få sekunder mer, men det er verdt det. Noen av programmer for Linux som brenner CDer, slik som K3b, vil evaluere MD5 sum før du brenner en ISO til plate. Alt du trenger å gjøre i dette tilfellet er ganske enkelt verifisere filen mot MD5 summen du allerede har.

rask kikk inn i tekstfiler

De neste to verktøyene er veldig nyttig når du arbeider med loggfiler eller noen lang tekstfil når du ikke ønsker å åpne hele filen. For eksempel kan jeg ønsker å se de siste oppføringene i en Apache log eller annen loggfil, men ikke ønsker å åpne hele filen fordi det er hundrevis av megabyte i størrelse (eller større). I så fall slå til hode og hale. Som navnene tilsier, vil hodet vise begynnelsen av en fil, og halen viser slutten av en fil

Her er hvordan de fungerer. Som standard, kjører halen filnavn
vil vise den siste 10 linjer i en fil, og hodet filnavn
vil vise de første 10 linjene i en fil. Ganske grei, ikke sant? Hva om du ønsker å se mer enn 10 linjer? Enkel! Bruk -n muligheten til å fortelle verktøyet hvor mange linjer du ønsker å se. For eksempel, hvis du vil ha 20 linjer, bruker halen -n 20 filnavn.

Men hva om du ønsker å se noe i midten? Det er en måte å gjøre det også ved å kombinere hale og hode verktøy. For å vise linjene 50 gjennom 60 av en fil, kjører hodet -N 60 filnavn
| hale og du vil automatisk se de siste 10 linjer med 60 linjer med utgang fra hodet: dvs.
, nøyaktig de linjene du ønsket å se

En annen hendig knep med loggfiler, spesielt. , er å bruke -f (følg) alternativet. Dette gjør at du kan se nye linjer som de er skrevet ut til en fil Anmeldelser uten at filen åpen og hindre en annen prosess fra å skrive til den. Bruker Apache loggfil eksempel å kjøre tail -f access.log se nye linjer som de er lagt til filen access.log. Dette kan være svært nyttig når feilsøking

Måle Disk Usage

Et annet par praktiske hjelpemidler er df og du, en forkortelse for ". Disken gratis " og " disk bruk " (eller i det minste det er slik jeg husker dem). Disse verktøyene lar deg vite hvor mye plass som brukes eller er tilgjengelig på en disk.

For å se hvor mye plass som er ledig på et system, bruk df -h. H alternativet forteller det å gi informasjon i " lesbar " format – nemlig i MB eller GB i stedet for 1K blokker. Dette vil gi en rapport for alle monterte filsystemer. Du vil også se omtrent hvor mye plass som brukes, hvor mange prosent av brukt og hvor filsystemer er montert, som så:

 jzb @ neelix ~ $ df -hFilesystem Size Used Nytte Bruk% Montert på /dev /sda1 19G 5,7g 13G 32% /udev 1.5G 220K 1,5 G 1% /dev 

Som du kan se, har jeg en partisjon som er montert som /og bare 32% er i bruk. Merk at df rapporterer ikke bruk av swap-partisjonen.

Ved hjelp du h vil fortelle deg størrelsen på alle filene i gjeldende katalog og den totale bruken. Hvis du bare vil den totale bruken i en katalog, bruker du -CH

Nå er det et vanlig spørsmål rundt disse verktøyene &ndash.; hvordan kan jeg få to forskjellige tall når du prøver å finne ut hvor mye plass som er brukt, kontra hvor mye plass som er gratis? Det vil si, hvorfor ikke df og du bli enige om hvor mye plass som er brukt eller tilgjengelig? Enkel. Den du verktøyet rapporterer plass bruk av filene på en disk. Den df verktøyet rapporterer plass til filer, og ser på litt forskjellig informasjon for å få det. Når et filsystem er opprettet, er noen overhead venstre for systemansvarlig, noen plass er tatt opp av filsystemet journal når du bruker et filsystem journal, og så videre. En annen ting tatt i betraktning av df er plassen tatt av filer som er slettet, men ennå ikke er merket å bli overskrevet, men du gjør ikke " se " disse filene.

df verktøyet vil gi deg en mer nøyaktig visning i hvor mye plass du har tilgjengelig, og du vil gi deg beskjed plass fortært av filer.

Merk at du kan bruke DU på en enkelt fil også, i tilfelle du ville like å vite størrelsen på en bestemt fil. Du kan også bruke du på flere filer, så hvis du ønsket å se hvor mye plass ble tatt opp i en katalog bare ved JPEG eller ISOs du kan kjøre du CH * iso eller du CH * jpg og få en grand tally (- c) av disken bruk av disse filene.

Dette er bare noen få av de verktøyene som er tilgjengelige fra GNU kjernen utils pakken. Neste gang vil vi dekke flere av tekst verktøy som du kan bruke til å arbeide med og manipulere tekstfiler med. Enjoy!