20 naredbi terminala koje morate znati za nove korisnike Linuxa


Dakle, planirate li prijeći sa Windowsa na Linux ili ste nedavno prešli na Linux? Ups! sta pitam? Zašto bi inače bio ovdje?

U mom ranijem iskustvu kao novajlija, Linux komande i terminali su bili prilično zastrašujući. Bio sam zabrinut oko komandi i pitao sam se u kojoj mjeri ih trebam zapamtiti i zapamtiti da bih postao stručan i potpuno funkcionalan s Linuxom.

Nesumnjivo, online dokumentacija, Linux knjige, man stranice i korisnička zajednica pružili su značajnu pomoć.

Međutim, čvrsto vjerujem da bi trebao postojati članak koji sadrži osnovne Linux komande na jeziku koji se lako uči i razumije.

Ove motivacije su me inspirisale da savladam Linux i učinim ga lakšim za upotrebu. Ovaj članak je korak ka tom cilju.”

1. ls Command

Naredba 'ls' je skraćenica od 'List Directory Contents', koja se koristi za prikaz sadržaja foldera, bilo da su datoteke ili podmape, iz kojih je komanda izvršeno.

ls

Komanda 'ls -l' navodi sadržaj fascikle u detaljnom, dugačkom formatu.

ls -l

Komanda 'ls -a' navodi sadržaj fascikle, uključujući skrivene datoteke koje počinju sa '.'.

ls -a

U Linuxu, naziv fajla koji počinje sa '.' se smatra skrivenim. U Linuxu se svaka datoteka, mapa, uređaj ili naredba tretira kao datoteka.

Rezultat naredbe ls -l je:

  • Vrsta datoteke – Prvi znak predstavlja tip datoteke ('-' za običan fajl, 'd' za direktorij, 'l' za simboličku vezu, itd.).
  • Dozvole – Sljedećih devet znakova predstavljaju dozvole fajla za vlasnika, grupu i druge. Ovi znakovi mogu uključivati 'r' za čitanje, 'w' za pisanje i 'x' za dozvole izvršavanja.
  • Broj veza – Označava broj tvrdih veza koje upućuju na datoteku ili direktorij.
  • Vlasnik i grupa – Određuje korisnika (vlasnika) i grupu pridruženu datoteci ili direktoriju.
  • Veličina datoteke – Prikazuje veličinu datoteke u bajtovima.
  • Vrijeme izmjene – Prikazuje datum i vrijeme kada je datoteka ili direktorij posljednji put izmijenjen.
  • Naziv datoteke ili direktorija – Stvarni naziv datoteke ili direktorija.

Za više primjera naredbi “ls” pročitajte našu seriju članaka:

2. Naredba lsblk

Naredba 'lsblk', skraćenica za 'List Block Devices,' prikazuje blok uređaje prema njihovim dodijeljenim imenima (isključujući RAM) u formatu nalik stablu na standardnom izlazu.

lsblk

Naredba 'lsblk -l' navodi blok uređaje u strukturi 'list', a ne u obliku stabla.

lsblk -l

lsblk je vrlo koristan i jednostavan način za identifikaciju imena novog USB uređaja koji ste upravo priključili, posebno kada morate raditi s diskovima ili blokovima u terminalu.

3. Naredba md5sum

"md5sum" je skraćenica za "Compute and Check MD5 Message-Digest". MD5 kontrolni zbroj (koji se obično naziva 'heš') koristi se za podudaranje ili provjeru integriteta datoteka koje su se možda promijenile zbog neispravnog prijenosa datoteka, greške na disku ili ne-zlonamjernih smetnji.

md5sum teamviewer_linux.deb 

47790ed345a7b7970fc1f2ac50c97002  teamviewer_linux.deb

Korisnik može uporediti generirani md5sum sa onim koji je službeno dostavljen. MD5sum se smatra manje sigurnim od sha1sum, o čemu ćemo kasnije raspravljati.

4. dd komanda

Naredba dd je skraćenica za 'Konvertuj i kopiraj datoteku' i može se koristiti za pretvaranje i kopiranje datoteke. Najčešće se koristi za kopiranje ISO datoteke (ili bilo koje druge datoteke) na USB uređaj (ili drugu lokaciju), što ga čini pogodnim za kreiranje USB sticka za pokretanje.

dd if=debian.iso of=/dev/sdb1 bs=512M; sync

Napomena: U gornjem primjeru usb uređaj bi trebao biti sdb1 (Trebali biste ga provjeriti pomoću naredbe lsblk, inače ćete prepisati svoj disk i OS), koristite naziv diska vrlo oprezno!

Naredbi dd potrebno je neko vrijeme u rasponu od nekoliko sekundi do nekoliko minuta u izvršavanju, ovisno o veličini i vrsti datoteke i brzini čitanja i pisanja na USB stick.

5. uname komanda

Naredba uname je skraćenica od (Unix ime) i ispisuje detaljne informacije o imenu mašine, operativnom sistemu i verziji kernela.

uname -a

Linux TecMint 6.2.0-39-generic #40~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC 
Thu Nov 16 10:53:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

Rezultat naredbe uname -a je:

  • Linux“: Naziv kernela mašine.
  • tecmint“: Ime čvora mašine.
  • 6.2.0-39-generic“: Izdanje kernela.
  • 22.04.1-Ubuntu SMP“: Verzija izdanja operativnog sistema.
  • x86_64“: Arhitektura procesora.
  • GNU/Linux“: Naziv operativnog sistema.

6. istorija komanda

Naredba historije je skraćenica od Zapis historije (događaja), ispisuje historiju dugačke liste izvršenih komandi u terminalu.

history

Napomena: Pritiskom na 'Ctrl + R' možete tražiti prethodno izvršene komande, omogućavajući da se vaša naredba dovrši korištenjem funkcije automatskog dovršavanja.

(reverse-i-search)`if': ifconfig

Za više primjera naredbi historija, pogledajte našu seriju članaka:

7. naredba sudo

Komanda “sudo” (superuser do) dozvoljava korisniku sa dopuštenjem da izvrši komandu kao superkorisnik ili drugi korisnik, kako je navedeno u sigurnosnoj politici na listi sudoers.

sudo apt update

Napomena: sudo omogućava korisnicima da pozajmljuju privilegije superkorisnika, dok slična komanda 'su' omogućava korisnicima da se prijave kao superkorisnici. Sudo je sigurniji od su.

Nije preporučljivo koristiti sudo ili su za svakodnevnu normalnu upotrebu, jer može dovesti do ozbiljnih grešaka ako slučajno učinite nešto pogrešno, zbog čega je vrlo popularna izreka u Linux zajednici je:

“To err is human, but to really foul up everything, you need a root password.”

Za više primjera naredbi sudo, pogledajte našu seriju članaka:

8. mkdir komanda

(make direktorij) kreira novi direktorij s putanjom imena. Međutim, ako direktorij već postoji, vratit će poruku o grešci “ne mogu kreirati folder, folder već postoji”.

Naredba mkdir (napravi direktorij) se koristi za kreiranje novog direktorija sa specificiranom putanjom. Međutim, ako direktorij već postoji, vratit će poruku o grešci u kojoj piše: „ne mogu kreirati folder, folder već postoji“.

mkdir tecmint

Direktoriji se mogu kreirati samo unutar foldera za koje korisnik ima dozvole za pisanje.

9. dodirnite Command

Komanda dodira je skraćenica za 'ažuriraj vrijeme pristupa i modifikacije svake DATOTEKE na trenutno vrijeme'. Komanda 'dodir' kreira datoteku samo ako ne postoji. Ako datoteka već postoji, ažurirat će vremensku oznaku, ali ne i sadržaj datoteke.

touch tecmintfile

Komanda `touch` se može koristiti za kreiranje datoteke u direktoriju za koji korisnik ima pisanu dozvolu, samo ako datoteka tamo već ne postoji.

10. chmod naredba

Naredba “chmod” je skraćenica za “promijeni bitove načina datoteke”, koja mijenja način rada datoteke (dozvole) svake specificirane datoteke, foldera, skripta, itd., prema navedenom načinu rada.

Postoje 3 vrste dozvola za fajl (folder ili bilo šta, ali da stvari budu jednostavne, koristićemo fajl).

Read (r)=4
Write(w)=2
Execute(x)=1

Dakle, ako želite dati dozvolu samo za čitanje datoteke, njoj će biti dodijeljena vrijednost '4', samo za dozvolu pisanja, vrijednost '2' i za samo dopuštenje za izvršavanje, treba dati vrijednost '1'. Za čitanje i pisanje treba dati dozvolu 4+2=„6“ itd.

Sada je potrebno postaviti dozvolu za 3 vrste korisnika i korisničkih grupa. Prvi je vlasnik, zatim grupa korisnika i na kraju svijet.

rwxr-x--x   abc.sh

Ovdje je root dozvola rwx (čitanje, pisanje, i izvršavanje). korisnička grupa kojoj pripada je r-x (samo čitanje i izvršavanje, bez dozvole za pisanje) i za svijet je –x (samo izvrši).

Da promijenite njegovu dozvolu i omogućite čitanje, pisanje, i izvršavanje vlasniku, grupi i svijetu.

chmod 777 abc.sh

samo dopuštenje čitanja i pisanja za sva tri.

chmod 666 abc.sh

Čitanje, pisanje i izvršavanje vlasniku i izvršavanje samo grupi i svijet.

chmod 711 abc.sh

chmod je jedna od najvažnijih komandi koja se pokazala korisnom i za administratore sistema i za korisnike. U višekorisničkom okruženju ili na serveru, ova komanda je neophodna, jer pogrešno postavljanje dozvola može učiniti datoteku nedostupnom ili omogućiti neovlašteni pristup pojedincima.

11. chown Command

Naredba chown je skraćenica od “promijeni vlasnika i grupe fajla“, koja se koristi za promjenu vlasnika i/ili grupe datoteke ili direktorija.

Ispod je primjer kako se naredba chown obično koristi.

chown newowner:newgroup filename

Na primjer, ako želite promijeniti vlasnika datoteke pod nazivom “example.txt” u korisnika pod nazivom “tecmint” i grupu pod nazivom “users<“, naredba bi bila:

chown tecmint:users example.txt

12. apt komanda

Na Debian-baziranim distribucijama kao što su Ubuntu i Linux Mint, naredba apt je skraćenica za (Advanced Package Tool), koja se koristi za instaliranje, nadogradnju i upravljanje softverskim paketima na sustavu iz naredbenog retka.

sudo apt search wget
sudo apt install wget
sudo apt update

Komanda apt se smatra naprednijom i inteligentnijom u poređenju sa yum ili dnf komandom.

13. tar komanda

Komanda tar je Arhiva trake koja je korisna u kreiranju arhive, u nekoliko formata datoteka i njihovom izdvajanju.

tar -zxvf abc.tar.gz (Remember 'z' for .tar.gz)
tar -jxvf abc.tar.bz2 (Remember 'j' for .tar.bz2)
tar -cvf archieve.tar.gz(.bz2) /path/to/folder/abc

Napomena: „tar.gz“ znači gzip. „tar.bz2“ je komprimiran pomoću bzip-a koji koristi bolju, ali sporiju metodu kompresije.

14. cal Command

cal” (Kalendar), koristi se za prikaz kalendara tekućeg mjeseca ili bilo kojeg drugog mjeseca bilo koje godine koji napreduje ili je prošao.

cal 

Prikaži kalendar godine 1835 za februar, koji je već prošao.

cal 02 1835

Prikazuje kalendar godine 2145 za juli, koji će napredovati

cal 07 2145

Napomena: Ne morate vraćati kalendar za 50 godina unazad, niti morate izvoditi složene matematičke proračune da biste odredili dan kada ste rođeni ili dan na koji će padati vaš predstojeći rođendan.

15. naredba datuma

Komanda date se koristi za prikaz trenutnog datuma i vremena. Takođe se može koristiti za postavljanje sistemskog datuma i vremena.

Za prikaz trenutnog datuma i vremena.

date

Za prikaz trenutnog datuma u formatu „GGGG-MM-DD“.

date +"%Y-%m-%d"

Za postavljanje sistemskog datuma i vremena.

sudo date MMDDhhmm[[CC]YY][.ss]

Gornja komanda vam omogućava da postavite sistemski datum i vrijeme. Zamijenite MM, DD, hh, mm, CC, YY i ss željenim vrijednostima za mjesec, dan, sat, minut, vek, godinu i sekundu.

Napomena: Komanda datum je veoma korisna u pisanju skripti, posebno za operacije zasnovane na vremenu i datumu. Štaviše, promjena datuma i vremena pomoću terminala može učiniti da se osjećate kao pravi GEEK! (Naravno, morate imati root dozvole da izvršite ovu operaciju, jer uključuje promjenu na cijelom sistemu).

16. cat Command

Cat komanda je skraćenica od (Concatenation), što znači (pridruživanje) dva ili više običnih fajlova i/ili štampanje sadržaja datoteke na standardnom izlazu.

Za prikaz sadržaja datoteke.

cat filename

Spajanje više datoteka znači da sljedeća naredba spaja sadržaj file1 i file2 i prikazuje rezultat u terminalu.

cat file1 file2

Sadržaj a.txt, b.txt, c.txt i d.txt će biti kombinovan i dodan na kraj datoteke abcd.txt.

cat a.txt b.txt c.txt d.txt >> abcd.txt

mačka abcd.txt

Napomena: “>>” i “>” nazivaju se simboli dodavanja. Koriste se za dodavanje izlaza datoteci, a ne standardnom izlazu.

Simbol “>” će izbrisati datoteku koja je već postojala i kreirati novu datoteku, stoga se iz sigurnosnih razloga preporučuje korištenje “>>” koji će pisati izlaz bez prepisivanje ili brisanje datoteke.

Prije nego što nastavim dalje, moram vas obavijestiti o zamjenskim znakovima (bićete svjesni unosa zamjenskih znakova u većini televizijskih emisija) Zamjenski znakovi su funkcija ljuske koja čini komandnu liniju mnogo moćnijom od bilo koje datoteke GUI menadžer.

Vidite, ako želite da odaberete veliku grupu datoteka u grafičkom menadžeru datoteka, obično ih morate odabrati mišem. Ovo može izgledati jednostavno, ali u nekim slučajevima može biti vrlo frustrirajuće.

Na primjer, pretpostavimo da imate direktorij s ogromnom količinom svih vrsta datoteka i poddirektorija i odlučite da premjestite sve HTML datoteke, koje imaju riječ “Linux” negdje u sredini svog imena, iz tog velikog direktorija u drugi direktorij.

Koji je jednostavan način da se ovo uradi? Ako direktorij sadrži ogromnu količinu HTML datoteka različitih naziva, vaš zadatak je sve samo ne jednostavan!

U Linux komandnoj liniji taj zadatak je jednako jednostavan za izvođenje kao i premještanje samo jedne HTML datoteke, a tako je jednostavan zbog zamjenskih znakova ljuske. Ovo su posebni znakovi koji vam omogućavaju da odaberete nazive datoteka koji odgovaraju određenim obrascima znakova.

Ovo vam pomaže da odaberete čak i veliku grupu datoteka upisivanjem samo nekoliko znakova, a u većini slučajeva to je lakše nego odabrati datoteke pomoću miša.

Evo liste najčešće korištenih zamjenskih znakova:

Wildcard			Matches
   *			zero or more characters
   ?			exactly one character
[abcde]			exactly one character listed
 [a-e]			exactly one character in the given range
[!abcde]		any character that is not listed
 [!a-e]			any character that is not in the given range
{debian,linux}		exactly one entire word in the options given

! se ne naziva simbolom, a obrnuto od niza priloženog sa '!' je istinito.

17. cp komanda

Naredba cp je skraćenica od (copy), ona kopira datoteku s jedne lokacije na drugu lokaciju.

cp /home/user/Downloads abc.tar.gz /home/user/Desktop

Napomena: cp je jedna od najčešće korištenih naredbi u shell skriptovima i može se koristiti sa zamjenskim znakovima (opisano u gornjem bloku), za prilagođene i željene datoteke kopiranje.

18. mv komanda

Komanda mv premješta datoteku s jedne lokacije na drugu lokaciju.

mv /home/user/Downloads abc.tar.gz /home/user/Desktop

Napomena: Komanda mv se može koristiti sa zamjenskim znakovima. mv treba koristiti sa oprezom, jer premještanje sistemskih/neovlaštenih datoteka može dovesti do sigurnosti kao i kvara sistema.

19. pwd komanda

Komanda pwd (štampaj radni direktorij), ispisuje trenutni radni direktorij s punim imenom putanje sa terminala.

pwd 

/home/user/Desktop

Napomena: Komanda pwd se neće često koristiti u skriptiranju, ali je apsolutni spas za početnike koji se izgube u terminalu u ranoj vezi sa Linuxom. (Linux se najčešće naziva nux ili nix).

20. cd Command

Konačno, često korištena naredba cd označava (promijeni direktorij), koja mijenja radni direktorij za izvršavanje, kopiranje, premještanje pisanja, čitanja, itd. sa samog terminala.

cd /home/user/Desktop
pwd

/home/user/Desktop

Napomena: Komanda cd dolazi u pomoć pri prebacivanju između direktorija s terminala. "cd ~" će promijeniti radni direktorij u korisnički početni direktorij, što je vrlo korisno ako se korisnik izgubi u terminalu. "cd .." će promijeniti radni direktorij u nadređeni direktorij trenutnog radnog direktorija.

Zaključak

Ove naredbe će nesumnjivo poboljšati vašu udobnost s Linuxom. Međutim, ovo nije zaključak. Uskoro ću uvesti dodatne komande koje će se pokazati korisnim za „Korisnike srednjeg nivoa“. Promociju ćete primijetiti u svom statusu na nivou korisnika, napredujući od početnika do korisnika srednjeg nivoa.

U sljedećem članku, osmislit ću naredbe poput „Kill“, „ps“ i „grep“.