Yleisimmin käytetyt Linux-komennot, jotka sinun pitäisi tietää


Linux on erittäin suosittu käyttöjärjestelmä (OS) ohjelmoijien ja tavallisten käyttäjien keskuudessa. Yksi tärkeimmistä syistä sen suosioon on sen poikkeuksellinen komentorivituki. Voimme hallita koko Linux-käyttöjärjestelmää vain komentoriviliittymän (CLI) kautta. Tämän ansiosta voimme suorittaa monimutkaisia tehtäviä muutamalla komennolla.

Tässä oppaassa käsittelemme joitain yleisesti käytettyjä komentoja, jotka ovat hyödyllisiä kokeneille sysadminille tai aloittelijoille. Tämän oppaan noudattamisen jälkeen käyttäjät voivat käyttää Linux-järjestelmää luotettavasti.

Järjestyksen parantamiseksi nämä komennot on ryhmitelty kolmeen osaan – tiedostojärjestelmä, verkko ja järjestelmätiedot.

Linuxin tiedostojärjestelmän komennot

Tässä osiossa käsittelemme joitain hyödyllisiä komentoja, jotka liittyvät tiedostoihin ja hakemistoihin Linuxissa.

Cat-komentoa käytetään pääasiassa tiedoston sisällön näyttämiseen. Se lukee tiedoston sisällön ja näyttää ne vakiotulosteessa (stdout).

Cat-komennon yleinen syntaksi on:

$ cat [OPTIONS] [FILE1] [FILE2] ...

Näytetään /etc/os-release-tiedoston sisältö cat-komennolla:

$ cat /etc/os-release

Lisäksi voimme myös käyttää komennon vaihtoehtoa -n näyttääksemme sisällön rivinumerolla:

$ cat -n /etc/os-release

cp-komento on hyödyllinen tiedostojen, tiedostoryhmien ja hakemistojen kopioimiseen.

cp-komennon yleinen syntaksi on:

$ cp [OPTIONS]  

Tässä hakasulkeet ([]) edustavat valinnaisia argumentteja, kun taas kulmasulut (<>) edustavat olennaisia argumentteja.

Kopioidaan /etc/os-release tiedosto /tmp-hakemistoon:

$ cp /etc/os-release /tmp/new-file.txt

Näytetään nyt tiedoston sisältö varmistaaksesi, että tiedosto on kopioitu:

$ cat /tmp/new-file.txt

Samoin voimme kopioida hakemiston cp-komennolla. Kopioidaan /etc/cron.d-hakemisto /tmp-hakemiston sisällä:

$ cp -r /etc/cron.d /tmp

Olemme käyttäneet valitsinta -r cp-komennon kanssa, joka edustaa rekursiivista toimintoa. Se kopioi rekursiivisesti hakemiston, joka sisältää sen tiedostot ja alihakemistot.

Seuraavassa esimerkissä näemme, kuinka varmistetaan, että hakemisto on kopioitu onnistuneesti.

$ ls /tmp/cron.d
$ ls -l /tmp/cron.d

Ls-komentoa käytetään luetteloimaan hakemiston sisältö ja lajittelemaan tiedostoja koon ja viimeisimmän muokkauksen ajan mukaan laskevassa järjestyksessä.

ls-komennon yleinen syntaksi on:

$ ls [OPTIONS] [FILE1] [FILE2] ...

Jos emme anna argumentteja ls-komennolle, se luettelee nykyisen hakemiston sisällön.

$ ls

Edellisessä esimerkissä kopioimme /etc/cron.d-hakemiston /tmp-hakemistoon. Varmistetaan, että se on siellä ja sisältää vaaditut tiedostot:

$ ls /tmp/cron.d

Voimme käyttää -l-vaihtoehtoa ls-komennon kanssa näyttääksemme tarkempia tietoja, kuten - tiedoston käyttöoikeudet, omistaja, aikaleima, koko jne.

Katsotaanpa lisätietoja /tmp/cron.d-hakemistossa olevista tiedostoista:

$ ls -l /tmp/cron.d

Luomme usein hakemistorakenteen sisällön järjestämiseksi. Linuxissa voimme käyttää mkdir-komentoa luodaksesi hakemiston tai useita hakemistoja ja asettaaksesi hakemistoille oikeat käyttöoikeudet.

mkdir-komennon yleinen syntaksi on:

$ mkdir [OPTIONS] <DIRECTORY1> <DIRECTORY2> ...

Luodaan /tmp-hakemistoon hakemisto, jonka nimi on dir-1:

$ mkdir /tmp/dir-1

Tarkistetaan nyt, että hakemisto on luotu:

$ ls /tmp/dir-1

Täällä voimme nähdä, että ls-komento ei ilmoita virheestä, mikä tarkoittaa, että hakemisto on siellä.

Joskus meidän on luotava sisäkkäinen hakemistorakenne parantaaksemme tietojen järjestämistä. Tällaisissa tapauksissa voimme käyttää komennon vaihtoehtoa -p luodaksesi muutaman sisäkkäisen hakemiston /tmp/dir-1-hakemiston alle:

$ mkdir -p /tmp/dir-1/dir-2/dir-3/dir-4/dir-5

Yllä olevassa esimerkissä olemme luoneet 4 sisäkkäisten hakemistojen tasoa. Vahvistataan se ls-komennolla:

$ ls -R /tmp/dir-1

Tässä olemme käyttäneet vaihtoehtoa -R komennon kanssa näyttääksesi hakemiston sisällön rekursiivisella tavalla.

Viimeksi suoritettujen komentojen tarkastamiseen voit käyttää historiakomentoa, joka näyttää luettelon viimeksi suoritetuista komennoista pääteistunnon aikana.

$ history

Jos haluat tarkastella komentohistoriaa aikaleimalla, sinun on asetettava aikaleima bash-historiassa, suorita:

$ HISTTIMEFORMAT="%d/%m/%y %T "             #Temporarily set the history timestamp
$ export HISTTIMEFORMAT="%d/%m/%y %T "      #Permanently set the history timestamp
$ history

Kuinka tarkistat 10 parasta tiedostoa, jotka syövät levytilaasi? Yksinkertainen yksilinjainen komentosarja, joka on tehty du-komennolla, jota käytetään ensisijaisesti tiedostotilan käyttöön.

$ du -hsx * | sort -rh | head -10

Selitys yllä olevista du komentovaihtoehdoista ja kytkimistä.

  • du – Arvioi tiedostotilan käyttö.
  • -hsx – (-h) ihmisen luettavissa oleva muoto, (-s) yhteenvetotulostus, (-x) yksi tiedostomuoto, ohittaa hakemistot muissa tiedostomuodoissa.
  • lajittele – Lajittele tekstitiedoston rivit.
  • -rh – (-r) Käännä vertailun tulos käänteiseksi, (-h) vertaillaksesi ihmisen luettavaa muotoa.
  • head – tulostaa tiedoston ensimmäiset n riviä.

Stat-komennolla saadaan tietoa tiedoston koosta, käyttöoikeuksista, käyttöajasta sekä tiedoston käyttäjätunnuksesta ja ryhmätunnuksesta.

$ stat anaconda-ks.cfg

Linuxin verkkokomennot

Tässä osiossa keskustelemme joistakin verkkoon liittyvistä vianmäärityksestä.

Yksi hyvin yleisimmistä toiminnoista missä tahansa verkossa on tarkistaa, onko tietty isäntä tavoitettavissa vai ei. Voimme käyttää ping-komentoa tarkistaaksemme yhteyden toiseen isäntään.

Ping-komennon yleinen syntaksi on:

$ ping [OPTIONS] <destination>

Tässä kohde voi olla IP-osoite tai Fully Qualified Domain Name (FQDN), kuten google.com. Varmistetaan, että nykyinen järjestelmä pystyy kommunikoimaan Googlen kanssa:

$ ping -c 4 google.com

Yllä olevassa esimerkissä komento näyttää verkkoviestinnän tilastot, jotka osoittavat, että vastaus vastaanotetaan kaikkiin neljään verkkopyyntöön (pakettiin). On tärkeää huomata, että olemme käyttäneet valitsinta -c komennon kanssa rajoittaaksemme tietylle isännälle lähetettävien pyyntöjen määrää.

Katsotaanpa esimerkkiä, kun kahden isännän välinen viestintä katkeaa.

Tämän skenaarion simuloimiseksi yritämme saavuttaa IP-osoitteen, johon ei ole yhteyttä. Tässä tapauksessa se on 192.168.10.100:

$ ping -c 4 192.168.10.100

Tässä näemme, että emme saaneet vastausta mihinkään verkkopyyntöön. Siksi komento ilmoittaa virheestä - Kohdeisäntä ei tavoitettavissa.

Joskus meidän on löydettävä tietyn verkkotunnuksen IP-osoite. Tämän saavuttamiseksi voimme käyttää isäntäkomentoa, joka suorittaa DNS-haun ja kääntää FQDN:n IP-osoitteeksi ja päinvastoin.

Isäntäkomennon yleinen syntaksi on:

$ host [OPTIONS] <destination>

Tässä kohde voi olla IP-osoite tai FQDN.

Selvitetään google.comin IP-osoite käyttämällä isäntäkomentoa:

$ host google.com

Kaikki tiedot rekisteröidyistä verkkotunnuksista tallennetaan keskitettyyn tietokantaan ja niitä voi tiedustella whois-komennolla, joka näyttää tiedot tietystä toimialueesta.

Whois-komennon yleinen syntaksi on:

$ whois [OPTIONS] <FQDN>

Katsotaanpa google.comin tiedot:

$ whois google.com

Täällä voimme nähdä paljon yksityiskohtaisia tietoja, kuten verkkotunnuksen rekisteröinti/uusiminen/vanhenemispäivä, verkkotunnuksen tarjoaja ja niin edelleen.

On tärkeää huomata, että whois-komento ei ole oletusarvoisesti käytettävissä kaikissa järjestelmissä. Voimme kuitenkin asentaa sen paketinhallinnan avulla. Esimerkiksi apt paketinhallinnassa:

$ sudo apt install whois

RHEL-pohjaisissa ja muissa jakeluissa voit asentaa sen kuvan osoittamalla tavalla.

$ sudo yum install whois         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a net-misc/whois  [On Gentoo Linux]
$ sudo apk add whois             [On Alpine Linux]
$ sudo pacman -S whois           [On Arch Linux]
$ sudo zypper install whois      [On OpenSUSE]    

Linuxin järjestelmätietojen komennot

Tässä osiossa käsittelemme joitain komentoja, jotka voivat antaa tietoja nykyisestä järjestelmästä.

On hyvin yleinen vaatimus selvittää, milloin järjestelmä käynnistettiin uudelleen viimeksi käyttämällä uptime-komentoa, joka kertoo kuinka kauan järjestelmä on ollut käynnissä.

Selvitetään nykyisen järjestelmän käyttöaika:

$ uptime -p

12:10:57 up  2:00,  1 user,  load average: 0.48, 0.60, 0.45

Tässä esimerkissä olemme käyttäneet vaihtoehtoa -p näyttääksesi tulosteen kauniissa muodossa.

Käyttäjien on usein löydettävä tietoja asennetusta, käytettävissä olevasta ja käytetystä muistista. Näillä tiedoilla on tärkeä rooli suorituskykyongelmien vianmäärityksessä. Voimme käyttää ilmaista komentoa löytääksesi tiedot muistista:

$ free -m

Tässä olemme käyttäneet valitsinta -m komennon kanssa, joka näyttää lähdön mebitavuina.

Samalla tavalla voimme vaihtoehdoilla -g, -t ja -p näyttää tulosteen gibitavuina, tebitavuina ja pebitavuja.

Tietokonejärjestelmät tallentavat tietoja lohkolaitteisiin. Esimerkkejä lohkolaitteista ovat kiintolevyasemat (HDD), solid State Drives (SSD) ja niin edelleen. Voimme käyttää lsblk-komentoa yksityiskohtaisten tietojen näyttämiseen lohkolaitteista:

$ lsblk

Tässä esimerkissä voimme nähdä, että on vain yksi lohkolaite ja sen nimi on /dev/sda. Tälle lohkolaitteelle on luotu kolme osiota.

Tässä artikkelissa käsittelimme joitain komentoja, jotka ovat hyödyllisiä Linux-aloittelijoille. Ensin keskustelimme tiedostojärjestelmän komennoista. Sitten keskustelimme verkkokomennoista. Lopuksi keskustelimme joistakin komennoista, jotka antoivat tietoja nykyisestä järjestelmästä.