21 March 2013

Instalacija Zabbixa 2 na Centosu 6.3 x64

Zabbix je jedan od najpoznatijih monitoring sistema, a uz to i besplatan, tj. pod GPL licencom. Ovo uputstvo je rađeno za Centos 6.3 x64 i podrazumijeva se da ga čitaoc ima instaliranog sa podešenom mrežom i izlazom na Internet. Uputstvo obuhvata kompajliranje source paketa. Na Zabbixovom sajtu se mogu naći i paketi za određene distribucije, kao i gotovi appliance-i za razne platforme. Zabbix se nalazi i u repozitorijima nekih poznatijih distribucija, te ga je moguće i tako instalirati, ali takav način instalacije daje znatno manju kontrolu od instaliranja iz source-a.

Instalacija


  1. Prvo se instaliraju komponente koje su neophodne za kompajliranje paketa za Zabbix (zajedno sa dependency-jima):
    # yum install gcc
    # yum install automake
    # yum install make
  2. Instalirati sljedeće pakete (takođe sa svim dendency-jima). Oni su uslov za normalno funkcionisanje Zabbixa: mysql-server, mysql-devel, curl-devel, net-snmp-devel, OpenIPMI-devel, libssh2-devel.
  3. Sa adrese http://www.zabbix.com/download.php skinuti Zabbix source pakete i raspakovati ih u neki folder, npr. zabbix-2.0.5. Zatim ove raspakovane pakete WinSCP-om prebaciti na naš Linux (nekome će jednostavnije biti raspakivati na samom Linuxu).
  4. Ući u taj folder i setovati execute permission za fajl configure:# cd /root/zabbix-2.0.5
    # chmod +x configure
  5. Izvršiti sljedeće komande za konfigurisanje instalacije i kompajliranje:
    # ./configure --enable-server --with-mysql --with-net-snmp --with-libcurl --with-openipmi --enable-agent

    Trebao bi da se dobije sljedeći output:
    Enable server: yes
    With database: MySQL
    WEB Monitoring via: cURL
    SNMP: net-snmp
    IPMI: openipmi
    Enable agent: yes

    Zatim se odradi:
   # make install
  1. Dodati korisnike za Linux:
    # groupadd zabbix
    # useradd -g zabbix zabbix
  2. U folderu /usr/local/etc/ postoje fajlovi zabbix_server.conf i zabbix_agentd.conf. U konfiguraciji servera će biti potrebno izmijeniti stavke DBName, DBUser i DBPassword. Za DBName ćemo ostaviti podrazumijevano podešavanje - baza će se zvati zabbix. Sa ostala dva parametra će biti potrebno skinuti komentar i takođe im setovati vrijednost na zabbix.  
  3. Podešavanje MySQL-a:
    # mysql_install_db
    - Inicijalizacija MySQL-a
    # /usr/bin/mysqladmin
    -u root password 'pa$$w0rd' - Setovanje passworda za korisnika root
    # chkconfig mysqld on
    - Podešavanje MySQL daemona da se pokreće automatski sa sistemom
    # mysql -u root -p
    - logovanje roota na MySQL server
    mysql> create database zabbix character set utf8;
    - Kreiranje baze zabbix
    mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix'; - Podešavanje permisija za korisnika zabbix. Koristi se isti password koji smo setovali u fajlu zabbix_server.conf. Sada je potrebno otići u sljedeći folder:
    # cd /root/zabbix-2.0.5/database/mysql
    Zatim izvršiti sljedeće komande kojima se importuju inicijalne baze Zabbixa:

    # mysql -u zabbix -p zabbix < schema.sql
    # mysql -u zabbix -p zabbix < images.sql
    # mysql -u zabbix -p zabbix < data.sql

    Poslije svake unesene komande mysql će pitati za password za korisnika
    zabbix, to je takođe zabbix. Bitan je redoslijed importovanja baza, moraju se importovati navedenim redoslijedom.
  4. Zabbix server i agent su sada spremni da se pokrenu. To se radi komandama
    # /usr/local/sbin/zabbix_server
    # /usr/local/sbin/zabbix_agentd
  5. Podešavanje automatskog pokretanja. Iz foldera /root/zabbix-2.0.5/misc/init.d/fedora/core5/ iskopirati skripte zabbix_agentd i zabbix_server u folder /etc/init.d/. Zatim se komandama
    # chmod +x /etc/init.d/zabbix_agentd

    # chmod +x /etc/init.d/zabbix_server
    ove skripte učine izvršnim (dodaju im se execute permisije). Onda se ove skripte dodaju u servise na sljedeći način:

    # chkconfig --add zabbix_agentd
    # chkconfig --add zabbix_server

    Takođe je potrebno setovati automatsko pokretanje ovih servisa:

    # chkconfig zabbix_agentd on
    # chkconfig zabbix_server on

    Kada se poslije ovoga izvrši komanda

    # chkconfig

    u listi servisa bi trebali biti i
    zabbix_agentd i zabbix_server i trebalo bi biti setovano "on" za runlevele 2, 3, 4 i 5.
    Ubuduće će se ovim servisima moći upravljati kao i sa svakim drugim servisom (npr.
    service zabbix_server restart).
  6. Instalacija web servera. Zabbix može raditi na bilo kojem web serveru koji podržava PHP. Slijedi instalacija Apache-a sa podrškom za PHP:
    # yum install httpd mod_ssl
    - Osnovna instalacija Apache-a.
    # service httpd start
    - Startovanje web servera.
    Normalno je da se prilikom prvog pokretanja pojavi poruka
    "Starting httpd: httpd: apr_sockaddr_info_get() failed for zabbix.racunari-bl.com httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName". Da bi se riješio ovaj problem, potrebno je otvoriti fajl:
    # nano /etc/httpd/conf/httpd.conf

    U njemu, pri kraju, postoji stavka
    #ServerName www.example.com:80. Ispod nje upisati (u novom redu)
    ServerName zabbix
    .
    Sačuvati izmjene i resetovati Apache komandom

    # service httpd restart
    .
    Potrebno je i otvoriti port za web saobraćaj na firewallu, npr.

    # iptables -A INPUT -p tcp -m state --state NEW, ESTABLISHED -m tcp --dport 80 -j ACCEPT

    # service iptables save - Ovim se trenutna Iptables pravila snimaju permanentno.
    # chkconfig httpd on
    - Uključivanje automatskog startovanja Apache-a
    # yum install php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml php-bcmath
    - Instalacija PHP-a i njegovih dodataka.
    U fajlu
    /etc/php.ini treba setovati nekoliko parametara:
    date.timezone = Europe/Belgrade
    post_max_size = 16M
    max_execution_time = 300
    max_input_time = 300
    # service httpd restart
    - Prilikom sljedećeg startovanja Apache-a, trebali bi biti loadovani i moduli za PHP.
  7. Instaliranje Web interfejsa. Folder /root/zabbix-2.0.5/frontends/php iskopirati u /var/www/html i preimenovati ga u zabbix. Na nekom računaru koji je u istoj mreži u web browseru otići na adresu http://172.18.2.95/zabbix (pretpostavimo da je 172.18.2.95 adresa našeg Linuxa). Trebao bi da se pojavi prvi ekran Zabbix-ovog Setupa. Na ovom ekranu kliknuti Next.
    Otvara se ekran "Check of pre-requisites". Ovdje će Zabbix provjeriti da li su instalirani i podešeni svi moduli koji su mu potrebni. Trebalo bi da pored svih stavki bude zelenim slovima ispisano "OK".  Kliknuti Next.
    Na sljedećem ekranu se konfigurišu parametri za pristup bazi: Database type: MySQL, Database host: localhost, Database port: 0 (0 označava korištenje standardnog porta za MySQL - TCP 3306), Database name: zabbix, User: zabbix, Password: zabbix. Ispod ovih polja se nalazi dugme "Test connection" - poslije pritiska na njega bi se trebao pojaviti zeleni znak OK, ako je sve u redu. Kliknuti Next.
    Na ekranu "Zabbix server details" unijeti puno ime hosta računara na kojem se pokreće zabbix. U mom slučaju je to bilo zabbix.test.local. Bitno je da se ovo ime može razriješiti preko DNS-a ili preko hosts fajla. Moguće je navesti i IP adresu umjesto imena. Ostaviti podrazumijevani port 100051 i opciono unijeti ime Zabbix instalacije, to sam podesio na "Zabbix server". Kliknuti Next.
    Sljedeći ekran prikazuje ukratko sve parametre koje smo podešavali. Klikom na dugme Next počinje instalacija. Ako se pojavi poruka "Configuration file "/var/www/html/zabbix/conf/zabbix.conf.php" created: Fail", potrebno je na dnu ekrana kliknuti "Download configuration file". i ručno ga snimiti na navedenu lokaciju. Poslije ovoga kliknuti "Retry" i na kraju Finish.

To je sve, vezano za instalaciju Zabbixa. Sada se može otići na adresu http://172.18.2.95/zabbix. Korisničko ime je Admin, a password zabbix.


Reference


  1. Zabbix 1.8 Network Monitoring, PACKT Publishing, April 2010
  2. linux.about.com

11 March 2013

Linux komande podsjetnik

Ovaj članak treba da predstavlja podsjetnik Linux komandi koje sam koristio u radu i eksperimentisanju i biće mijenjan s vremena na vrijeme tako što će se non-stop unositi nove ili mijenjati postojeće definicije komandi. Komande su raspoređene po abecednom redu. Većina definicija je preuzeta sa sajta linux.about.com, kao i iz man stranica za datu komandu.

bg - Šalje navedeni proces u background. Ima isti efekt kao i kada se iza naredbe navede znak &. ID pokrenutih procesa se ​​može očitati komandom jobs. Primjer: bg1. Ako se navede bez ičega, bg će u pozadini startovati posljednji proces koji je bio pokrenut.

cat - Prikaz sadržaja fajla

cd - Change Directory. Kretanje kroz foldere u konzoli.
  1. cd .. - Vraćanje na nivo iznad.
  2. cd - - Vraćanje na prethodni folder (back)

chgrp - Mijenjanje grupe koja je asocirana za fajl/folder. Ovo isto se može uraditi i komandom chown. Sintaksa: chgrp [options] GroupName file/folder.

chkconfig - Alatka za upravljanje folderom /etc/rc[0-6].d, tj servisima koji se pokreću automatski sa sistemom. Ovo se radi preko simboličkih linkova u ovim folderima koji najčešće pokazuju na skripte koje se nalaze u folderu /etc/init.d/. Ova komanda može da doda/ukloni servise, izlista trenutnu startup konfiguraciju servisa, mijenja startup konfiguracije servisa, kao i da izlista ili promijeni trenutni status nekog servisa. Ako se koristi bez parametara, prikazaće konfiguraciju startovanaj svih servisa po runlevelima. Preko flagova on i off se setuje startup informacija za pojedinačni servis. Podrazumijevano, ovi flagovi setuju startup vrijednosti za runlevele 2, 3, 4 i 5, a ako postoji potreba za setovanjem samo na određenim runlevelima, koristi se opcija --level.
chkconfig mysql on - Primjer jednostavnog podešavanja servisa MySQL da se startuje prilikom dizanja sistema.
  1. --add name - Dodavanje novog servisa u chkconfig menadžment. Kada se doda novi servis, chkconfig provjerava sve foldere /etc/rc[0-6].d/ za simboličke linkove za taj servis i kreira ih ukoliko ne postoje. Primjer:# chkconfig --add zabbix_server - podrazumijeva se da u /etc/init.d/ folderu postoji skripta zabbix_server i da ima execute permission)
  2. --del name - Uklanja servis iz chkconfig menadžmenta i automatski briše sve simboličke linkove iz foldera /etc/rc[0-6].d/  za taj servis.
  3. --level levels - Označavanje na koje runlevele se odnosi uključivanje/isključivanje servisa u initu. Vrijednosti se zadaju kao string brojeva od 0 do 7. Na primjer, chkconfig --level 35 zabbix_server on će setovati vrijednost on za navedeni servis samo na runlevelima 3 i 5.
  4. --list - Izlistavanje svih servisa sa prikazom koji pokazuje da li se servisi startuju sa sistemom, u raznim runlevel mode-ovima. Takođe, moguće je ispitati i pokretanje pojedinačnih servisa. Primjer:
    #
    chkconfig postfix --list

chmod - Komanda za podešavanje prava pristupa fajlovima i folderima. Sintaksa je chmod permissions filename. Prava pristupa se mogu vidjeti kada se koristi naredba ls sa opcijom -l. Permisije mogu biti r (read), w (write) i x (execute) i kada izlistamo permisije, vidjećemo da za svaki fajl/folder postoji set rwx puta tri. Ako neko pravo nije setovano, na njegovom mjestu se nalazi znak -. Prvi set rwx se odnosi na vlasnika (owner), drugi na grupu kojoj korisnik pripada, a treći za sve ostale korisnike. Simbolička reprezentacija koja se koristi u komandi je sljedeća: u (user), g (group), o (others). Prvi znak u permisijama može biti d (directory), l (symbolic link), ili - u slučaju da se radi o fajlu. Za dodavanje permisije se koristi znak +, a za uklanjanje znak -. Primjeri:
  1. chmod u+x test.sh - Dodavanje execute dozvole za fajl test.sh, za korisnika.
  2. chmod u+r, g+x test.sh - Dodavanje više dozvola odjednom.
  3. chmod u-rx test.sh - Uklanjanje dozvola.
  4. chmod a+x test.sh - Dodavanje dozvole izvršavanja za sve (korisnika, grupu i ostale).
  5. chmod -R 755 test/ - Setovanje permisija za folder test rekurzivno, tj. za njega i sve njegove podfoldere.

chown - change ownership. Mijenjanje ownership-a i grupe za fajlove ili foldere. Opcija -R se koristi za rekurzivno primjenjivanje na sve podfoldere i fajlove unutar navedenog foldera.  
Sintaksa:
chown owner-user file
chown owner-user:owner-group file
chown owner-user:owner-group directory
chown options owner-user:owner-group file
Primjeri:
  1. chown jovan.malesevic test/ - Mijenja ownership foldera test - vlasnik foldera je sada korisnik jovan.malesevic.
  2. chown :jovan.malesevic test/ - Mijenja grupu kojoj fajl/folder pripada.

chroot  - Mijenjanje putanje root foldera.

clear - Brisanje sadržaja ekrana.

cp - Ekvivalent naredbe copy iz DOS-a. Primjer:
cp /etc/postfix/main.cf /mnt/image

date - Setovanje i prikazivanje datuma i vremena. Samo root može setuje vrijeme i datum. Sintaksa: date mmddHHmmyyyyPrimjer:date 111212402012

df - Informacija o slobodnom prostoru na fajlsistemu.
  1. -h - Human readable. Prikazuje informacije u KB, MB, GB umjesto u procentima, kako je podrazumijevano.
  2. -T - Prikazuje informaciju o vrsti fajlsistema. Na izlazu dodaje još jednu kolonu Type u kojoj je označen filesystem za svaki mount.
  3. --total - Na kraju prikaže zbirno slobodni prostor na fajlsistemu.

du - disk usage. Prikazuje zauzeće diska po folderima ili fajlovima, rekurzivno.

echo - Ispisuje poruku na ekranu ili u fajl. Moguće je korištenje escape sekvenci. Često se koristi u skriptama da bi se pojasnile određene faze izvršavanja i pravljenja interakcije s korisnikom. Primjeri:
  1. echo 'Welcome' - Ispisuje navedenu poruku na ekranu.
  2. echo 'Fajl je izbrisan' > /tmp/log.txt - U fajl /tmp/log.txt upisuje poruku 'Fajl je izbrisan'.
  3. echo 'Fajl je izbrisan' >> /tmp/log.txt - appenduje (dodaje) poruku 'Fajl je izbrisan' u fajl /tmp/log.txt.

fg - Vraća navedeni proces u foreground i setuje ga kao current job. Sintaksa: fg [jobspec]. jobspec je ID procesa. ID pokrenutih procesa se ​​može očitati komandom jobs.

free - Zauzeće RAM memorije na sistemu.

grep - Izlistava linije tekstualnog fajla koje sadrže određeni dio teksta ili izraz. Takođe filtrira rezultate bilo koje naredbe (izlistava sve stavke u kojima se pojavljuje navedeni string).
Primjer: grep relayhost /etc/postfix/main.cf
Izlistaće svaku liniju fajla
main.cf koja sadrži riječ relayhost.
  1. -i - Ignore case. Ignoriše velika/mala slova.

groupadd - Dodavanje korisničke grupe. Primjer: groupadd zabbix
 

gunzip - Raspakivanje .gz arhiva. Slično kao i god gzip-a, ako izvršimo gunzip test.txt.gz, dobićemo raspakovani fajl test.txt, a arhiva će se obrisati. Opcije:
  1. -r - rekurzivno raspakuje čitav folder sa podfolderima. Primjer: gunzip -r somedir.

gzip - Komanda za kompresiju - pravljenje .gz arhiva, koristi Lempel-Ziv coding (LZ77) algoritam. Važno je napomenuti da ovaj alat mijenja originalnu verziju kompresovanom. Ako izvršimo naredbu gzip test.txt, dobiće se fajl test.txt.gz, a originalni fajl će biti izbrisan. Nivo kompresije se podešava vrijednošću od 1 do 9, a podrazumijevan je 6. Nivo 1 nudi najbržu i najslabiju kompresiju, a 9 najsporiju i najbolju. Primjer: gzip -9 test.txt. Opcije:
  1. -r - Rekurzivno kompresuje čitav folder sa podfolderima. Primjer: gzip-r somedir.

history - Prikaz ranije korištenih naredbi.
  1. -c - Clear history - brisanje history-ja.

host - Pandan naredbi nslookup. Služi za uvid u vrijednosti DNS zapisa. Navođenjem naredbe uz samo ime domena će dati A DNS rekord za taj domen. Ima nekoliko opcija:
  1. -a - Pravi upit tipa ANY za navedeni domen. Izlistaće sve DNS zapise do kojih može doći.
  2. -C - Prikazuje SOA  DNS zapis (autoritativni nameserver).
  3. -t - Tip DNS upita. Vrijednosti mogu biti: A, AAAA, CNAME, MX, NS, SOA, SIG, KEY, AXFR itd.
    Primjer: host -t NS test.net

hwclock - Alat za podešavanje sata na računaru. Moguće je prikazati trenutno vrijeme, setovati hardverski sat sa sistemskog sata i setovati sistemsko vrijeme sa hardverskog sata. Naredba ima više opcija i nije moguće koristiti više opcija odjednom. Obavezno je biranje neke od opcija. Opcije su: (show, set, hctosys, systohc, adjust, getepoch, setepoch, version, date, epoch, utc, localtime, noadjfile, directisa, badyear, sram, arc, funky-toy, test, debug).
  1. --systohc - Setuje hardverski sat na trenutno vrijeme na sistemu.

ifconfig - Prikaz i mijenjanje mrežnih parametara. Sama naredba bez parametara prikazuje IP konfiguraciju.
  1. ifconfig eth0 down
    ifconfig eth0 up -
    Primjer disable-ovanja i ponovnog enable-ovanja mrežnog interfejsa eth0.
  2. ifconfig eth0 172.10.2.97 netmask 255.255.255.0 up - Osnovno setovanje interfejsa eth0

iptables -Podešavanje firewalla na Linuxu. Zbog obimnosti ove komande, u pripremi je howto koji se samo njom bavi.
Primjer: iptables -L | grep smtp - Ispitivanje firewalla, tj. status porta za
SMTP.

jobs - Alternativni način prikaza aktivnih procesa.

kill - Komanda za stopiranje procesa. Obvezno je navođenje PID-a (Process Identification Number-a). U naredbi je moguće navesti i više PID-ova ako ima potrebe da se stopira više procesa odjednom. Primjer:
kill 465

killall - Sestrinska naredba od naredbe kill. Umjesto PID-ova se navodi ime programa koji želimo zaustaviti i on "ubija" sve instance navedenog programa. Pojedinačni korisnik može zaustaviti sve svoje procese, a root može zaustaviti procese od bilo kojeg korisnika.
  1. -g - Zaustavlja kompletnu grupu procesa kojoj navedeni proces pripada.
  2. -i - Interactive. Pita za potvrdu prije ubijanja svakog procesa.

last - Iz fajla /var/log/wtmp iščitava koji korisnik se kada logovao na sistem, sa kojeg hosta, u koje vrijeme i koliko je trajala sesija i sve to prikazuje na izlazu. Takođe su prikazani i restarti sistema - kada su se desili i ko ih je inicirao. Postoji slična komanda, lastb - Ona loguje neuspješne pokušaje logovanja.

less - Slično naredbi more, navodi se iza neke naredbe koja ima tekstualni izlaz i pritom omogućuje navigaciju prema gore i prema dole u tekstu. Izlazi se na q.
Primjer: rpm -ql iptables | less

ln -Pravljenje linka ka nekom fajlu.
  1. -s - Pravljenje simboličkog linka na fajl ili folder.

ls - Izlistavanje sadržaja foldera. Ima nekoliko parametara:
  1. -a - prikaz skrivenih fajlova
  2. -h - human readable - Veličinu fajlova prikazuje u MB, GB...
  3. -l - prikaz detalja.
  4. -r - reverse. Rezultate sortira po obrnutom redoslijedu.
  5. -t - time. Rezultate sortira po vremenu modifikacije fajlova.

lspci - Prikaz informacija o PCI uređajima na računaru.

mail - Konzolni program za slanje/čitanje mailova. Primjer slanja maila:echo "Goodbye cruel world" | mail-s "Testni mail" jovan.malesevic Ova naredba će poslati mail na lokalno korisničko ime jovan.malesevic. Pod echo se nalazi tijelo poruke, dok opcija -s označava Subject. Na kraju se navodi adresa primaoca. U navedenom slučaju mail će biti isporučen lokalnom korisniku jovan.malesevic. Čitanje maila se vrši navođenjem same naredbe mail. Kada se pokrene, program će odmah izlistati sve poslane i primljene mailove. Da bi se vidio određeni mail, navede se samo broj ispred njega. Postoji čitav sistem slovnih komandi unutar ovog programa, a više informacija o ovome vidjeti na man mail.

man - Osnovni help sistem.

mkdir - Pravljenje novog foldera. Uz navođenje opcije -p, može se kreirati više foldera/podfoldera odjednom. Npr.: mkdir -p prvi/drugi/treci
Ukoliko ne postoje, ova naredba će kreirati navedene foldere.

mount -"Montiranje" nekog fajlsistema u određeni folder. Potrebno je da taj folder postoji. Suprotna naredbi unmount. Fajl /etc/fstab može sadržavati linije koje opisuju šta treba mountovati i gdje. Primjer: mount /media/cdrom /tmp. Ima nekoliko opcija:
  1. -a - Inicira mountovanje svih fajlsistema opisanih u fajlu /etc/fstab.

mysql - Podešavanje MySQL servera. Kada se navede naredba bez parametara, ulazi se u MySQL prompt. Primjeri:
  1. mysql -u root -p - Logovanje root korisnika na MySQL server.

nano - Vrlo jednostavan tekst editor.

nc - Jednostavan alat koji čita i piše podatke kroz mrežu koristeći TCP ili UDP protokol. Jedan je od osnovnih alata za dijagnostiku mreže jer može kreirati bilo koju vrstu konekcije.

netstat - Prikazuje mrežne konekcije, routing tabele, statistike interfejsa i masquerade konekcije.
  1. -a - Prikaz listening i non-listening socketa.
  2. -l - Prikaz listening socketa - koji program sluša na kojem portu.
  3. -n - Prikazuje brojčane vrijednosti, umjesto da ih pokušava prevesti u simboličke nazive portova, imena hostova ili korisničkih imena.
  4. -p - Prikazuje PID i ime programa za svaki socket, odnosno ime programa koji sluša na nekom portu.
  5. -r - Prikazuje ruting tabelu.
  6. -t - Filtrira stavke sa TCP portovima.
  7. -u - Filtrira stavke sa UDP portovima.

newaliases - Pokreće se poslije izmjene fajla /etc/aliases.

nice - Pokretanje naredbe s određenim prioritetom. Vrijednost prioriteta ide od -20 (najviši) do 19 (najniži). Sintaksa: nice -n [priority] COMMAND. Priority je brojčana oznaka prioriteta, a COMMAND je naredba na koju se odnosi. Ako se koristi bez parametra -n, podrazumijeva se da se prioritet izvršavanja poveća za 10. Primjer korištenja: nice -n -15 openvpn (startuje naredbu OpenVPN sa prioritetom -15).

ntpdate - Omogućuje da se sa NTP servera provjeri vrijeme i datum i sinhronizuje računar s njim. Naredba je pogodna za korištenje u skriptama ili u crone taskovima. Moguće je korištenje i više servera zbog veće preciznosti. Naredba koristi port UDP 123. Ukoliko je na računaru pokrenut lokalni NTP server, naredba može raditi samo u query mode-u, tj. može samo provjeriti vrijeme na nekom od servera, ali ne i da ga setuje na računaru. Primjeri:
  1. ntpdate -q time.nist.gov - Provjera datuma i vremena na navedenom poslužitelju.
  2. ntpdate clock.redhat.com - Jednokratno sinkronizacija vremena s navedenim serverom.

passwd - Mijenjanje korisničkog passworda.

pgrep - Provjerava je li navedeni proces pokrenut. Kao rezultat vraća PID tog procesa. Primjer:pgrep openvpn

pkill - "Ubija" procese po imenu i sve potprocese koji su za njega vezani (slično kao naredba killall). Procese podrazumijevano ubija signalom 15. Primjer: pkill openvpn

postconf - Alat za podešavanje Postfix mail servera. Navođenje naredbe bez parametara će izlistati kompletnu trenutnu konfiguraciju Postfixa. Ako se uz naredbu navede neki parametar, izlistaće trenutnu vrijednost samo tog parametra. Neke od opcija:
  1. -d - Prikazuje podrazumijevane vrijednosti parametara unutar fajla /etc/postfix/main.cf, umjesto trenutno aktivnih vrijednosti.
  2. -e - Editovanje fajla /etc/postfix/main.cf tako što se parametri specifikuju na komandnoj liniji. Primjer: postconf-e "relayhost =smtp.teol.net" -n
  3. -n - Prikazuje parametre unutar fajla /etc/postfix/main.cf koji nemaju svoju podrazumijevanu vrijednost, tj. razlike u odnosu na podrazumijevanu konfiguraciju.

 ps - Process Status. Prikazuje pokrenute procese.
  1. -a - Selektuje sve procese koji imaju tty, osim session leaders-a.
  2. -e - Selektuje sve procese.
  3. -f - Pravi full listing procesa.
  4. -u - Prikazuje procese koje je pokrenuo navedeni korisnik.
  5. -x - Bira procese bez kontrolisanja tty-a.
Primjeri:
  1. ps-ef
  2. ps-aux

pstree - Prikazuje pokrenute procese u obliku stabla.

pwd - Prikazivanje trenutnog foldera.

rdesktop - Alat za RDP na Linux- u.
  1. -a - Postavljanje rezolucije prikaza.
  2. -g - Postavljanje dubine boja.

realcrypt - Alat za enkriptovanje foldera. Prvo se kreira volume za kriptovanje (u njega treba stati folder koji se enkriptuje). Zatim se taj volume mountuje željeni folder.
  1. realcrypt -t -c - Kreiranje volume-a za enkripciju
  2. realcrypt cryptdata.tc /opt/openbd/tomcat/webapps/ROOT/projekat - Primjer enkriptovanja foldera projekat koristeći volume cryptdata.tc
  3. realcrypt -d cryptdata.tc - demountovanje enkriptovanog foldera sa volume-a cryptdata.tc.
  4. --non-interactive - Koristi se skriptovanje, a znači da se ne očekuje nikakav unos korisnika tokom izvršavanja, tj. ne pita ni za šta.
  5. -p [password] - Koristi se u neinteraktivnom modu, a služi za specifikovanje šifre za enkripciju.
  6. sshpass -p 'Pa$$w0rd' ssh root@10.11.51.9 'realcrypt -p 123Pa$$w0rd --non-interactive /root/cryptdata.tc/opt/openbd/tomcat/webapps/ROOT/projekat/'- Mountuje folder /opt/openbd/tomcat/webapps/ROOT/projekat u kriptovani folder /root/cryptdata.tc/. Naredba realcrypt se izvršava na udaljenoj mašini kojoj se pristupa preko SSH protokola. Naredba sshpass se koristi da bi se mogao navesti password u komandnoj liniji.
  7. sshpass -p 'Pa$$w0rd ssh root@10.11.51.9 'realcrypt -d' - Opcija za demountovanje svih kriptovanih foldera. Naredba realcrypt  se izvršava na udaljenoj mašini kojoj se pristupa preko SSH protokola. Naredba sshpass se koristi da bi se mogao navesti password u komandnoj liniji.

reboot - Restartovanje sistema.

rm - Najopasnija Linux komanda. Uklanja specifikovani folder, sve njegove podfoldere i fajlove. Ima nekoliko opcija:
  1. -r - Uklanja sve fajlove i foldere na specifikovanoj putanji. Ako ima read-only fajlova, pita za dozvolu.
  2. -f - Briše sve bez pitanja.

rmdir - Uklanjanje foldera, pod uslovom da je prazan.

route - Prikazuje i mijenja ruting tabelu. Navođenje naredbe bez opcija prikazuje ruting tabelu datog sistema, dok opcije add i del modifikuju ruting tabelu. Opcije:
  1. add - Dodavanje nove rute.
  2. del - Brisanje rute.
  3. dev - Navođenje interfejsa koji će biti korišten kao gateway.
  4. default gw - Dodavanje podrazumijevane rute - default gateway-a. Svi paketi za koje ne postoji eksplicitna ruta se šalju na ovaj gateway.
  5. gw - Rutiranje paketa kroz navedeni gateway. Gateway mora biti dostupan.
  6. host - target je pojedinačni host.
  7. metric - Setovanje metrike za navedenu rutu.
  8. -n - Daje prikaz u numeričkim vrijednostima, bez razrješavanja imena.
  9. -net - Ova opcija govori da je target mreža.
  10. netmask - Navođenje mrežne (subnet) maske.
  11. reject - Dodavanje rute koja blokira saobraćaj ka navedenom hostu/mreži.
  12. target - Odredišna mreža ili host.
Primjeri:
  1. route add default gw 172.10.6.1 - Postavljanje default gateway-a.
  2. route add -host 172.10.4.1 reject
    route add -net 172.10.4.0 netmask 255.255.255.0 reject
    - Zabrana pristupa hostu/mreži, samim tim i zabrana rutiranja preko tog hosta. Ako se poslije ove naredbe unese ping 172.10.4.1,dobija se poruka connect: Network is unreachable.
  3. route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.3.10 - Primjer dodavanja statičke rute na Linuxu - svi zahtjevi za mrežu 192.168.3.0 će se slati preko interfejsa na toj mašini s adresom 192.168.3.10.
  4. route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0 metric 30 - Postavljanje rute kojoj je default gateway interfejs eth0 i kod koje je setovana metrika.
  5. route del -net 10.51.40.0 netmask 255.255.255.0 - Brisanje rute 10.51.40.0

rpm - Upravljanje samoraspakujućim paketima (na Red Hat-olikim distribucijama)
  1. -qa - Provjeravanje da li je neki softverski paket instaliran. Primjer:
    rpm -q sendmail
  2. -qi - Podaci o posebnom softverskom paketu.
  3. -ql - Query list -Izlistavanje svih fajlova asociranih sa navedenim package-om. Primjer:
  4. rpm -ql iptables
  5. -U - update-uje postojeći paket, s tim što poslije instalacije novog briše stari.
  6. -v - verbose mode - Prikazuje dodatna objašnjenja prilikom instalacije.

scp - Kopiranje datoteka između hostova preko mreže. Radi preko SSH protokola i koristi se na sličan način kao i komanda ssh. Primjer:
scp [-r] user@host1:file1 user@host2:file2
  1. -r - Omogućuje rekurzivno kopiranje čitavih foldera.

service - Pokretanje, stopiranje, restartovanje servisa. Primjer:
service postfix restart
service postfix start
service postfix stop

sestatus - Provjeravanje statusa SELinux-a. Ovo se može podešavati u fajlu /etc/SELinux/config. Na primjer, da bi se isključio treba setovati SELinux=disabled u navedenom fajlu.

sleep - Pravi pauzu (delay) od zadatog broja sekundi. Sintaksa: sleep NUMBER [suffix]. NUMBER označava broj sekundi koliko će delay trajati, a suffix može imati vrijednosti s (seconds), m (minutes), h (hours) i d (days). Podrazumijevana vrijednost je u sekundama. Primjer: sleep 1m - pravi delay od 1 minute.

ssh - Koristi se za logovanje na udaljenu mašinu i izvršavanje naredbi na njoj. Osnovna sintaksa glasi: ssh username@host.

sshpass -Omogućuje neinteraktivno unošenje šifre za SSH. Najviše se koristi u skriptama. Primjer:
sshpass -p '12345678' ssh root@172.10.2.95 ifconfig

start_udev - Udev je Device Manager za Linux, a start_udev je scan for new hardware.
su - - Ekvivalent za sudo root, tj. logovanje na root account. Poslije ovoga će odmah pitati za root password.

sudo - Navodi se ispred komande za čije izvršavanje treba administrativna dozvola.

sudo -i ili su - - Prebacivanje u administratorski mod da bi se odradila operacija za koju je potrebna administratorska dozvola.

system-config-authentication - GUI alat za podešavanje autentifikacije.

system-config-network - GUI alat za podešavanje mreže.

system-config-packages - GUI alat za podešavanje softverskih paketa (instalacija/deinstalacija).

system-config-securitylevel - GUI alat podešavanje firewall-a.

system-config-securitylevel-tui - Tekstualni alat za podešavanje firewall-a.

system-config-services - GUI alat za podešavanje servisa.

system-config-time - GUI alat za podešavanje vremena.

system-config- users - GUI alat za podešavanje korisnika.

system-switch-mail - Odabir podrazumijevanog MTA (Mail Transfer Agent-a). Otvori se tekstualni meni.

tail - Ispisuje zadnjih 10 linija nekog fajla, ukoliko nije drugačije navedeno. Koristi se uglavnom za praćenje logova.
  1. -n - Broj linija koje će naredba čitati iz fajla.
  2. -f - follow. Prati promjene fajla i odmah ispisuje nove linije na ekranu.
Primjer: tail -n 5 /var/log/messages - Ispisuje zadnjih 5 linija navedenog fajla.

tar - Alat za rukovanje arhivama. Opcije:
  1. -c - Kreiraj novu arhivu.
  2. -f - filename. Navođenje imena arhive
  3. -j - Filtrira arhivu kroz bzip2 filter (koristi se i za pravljenje i za raspakivanje).
  4. -r - Dodavanje fajla ili foldera postojećoj arhivi.
  5. -t - Izlistavanje sadržaja arhive.
  6. -v - Verbose. Po završetku će izlistati fajlove u arhivi.
  7. -z - Filtrira arhivu kroz filter gzip (koristi se i za pravljenje i za raspakivanje).
  8. -x - Extract
Primjeri:
  1. tar -cvf arhiva.tar /root/Downloads/test - Pakovanje kompletnog foldera test u arhivu arhiva.tar, bez kompresije.
  2. tar -czvf arhiva.tar.gz /root/Downloads/test - Radi slično kao i prethodna naredba, međutim, kompresuje podatke gzip kompresijom.
  3. tar -xvf arhiva.tar.gz /root/test - ekstraktuje fajl arhiva.tar.gz u folder /root/test
  4. tar -tvf arhiva.rar - Prikazuje sadržaj arhive. Ukoliko se koristi neka od kompresija, koristi se još i opcija za filter kompresije (z ili j).
  5. tar-RVF arhiva.tar novi.pdf - Dodaje fajl ili folder novi.pdf u arhivu arhiva.tar. Nije moguće dodavati nove fajlove u kompresovanu arhivu.

tcpdump - Tcpdump je packet sniffer program - jedan od osnovnih alata za dijagnostiku mreže. On "hvata" pakete koji prolaze kroz mašinu i može ih sačuvati u fajl.

top - Omogućuje pregled zauzeća procesora i memorije. Takođe prikazuje informaciju o uptime-u, broju povezanih korisnika, ukupnom broju pokrenutih taskova, ukupnoj opterećenosti servera. Prikaz se podrazumijevano osvježava svakih 5 sekundi, a to se može podešavati opcijom -d. -q opcija omogućava kontinuirano osvježavanje, bez pauze. Ima interaktivni interfejs za manipulaciju procesima i može ih sortirati po zauzeću memorije, procesora, swap fajla itd. Naredbe u interaktivnom modu:
  1. A - Sortira taskove po starosti. Prvo prikazuje novije.
  2. f ili F - Dodaje ili uklanja polja koja će se prikazati.
  3. h - help.
  4. i - Ignoriše idle i "zombi" procese.
  5. k - kill. Ubija proces. Potrebno je navesti PID i signal koji se šalje. Uobičajeno je da se šalje signal 15, ali ako on ne pomogne poslati signal 9.
  6. l - Uključuje/isključuje prikaz uptime i load average informacija.
  7. m - Uključuje/isključuje prikaz zauzeća memorije.
  8. M - Sortira taskove po zauzeću memorije.
  9. n - Broj procesa koje će prikazati. Podrazumijevano je 0, kada prikazuje onoliko procesa koliko može stati na ekran.
  10. N - Sortira prikaz po PID-u.
  11. o ili O - Mijenja redoslijed prikazanih polja.
  12. P - Sortira taskove po zauzeću procesora (ovo je podrazumijevani prikaz).
  13. q - quit
  14. space - Osvježavanje ekrana
  15. t - Uključuje/isključuje sumarni prikaz pokrenutih procesa i stanja procesora.
  16. W - Trenutnu konfiguraciju upisuje u fajl ~/.toprc. Ovo je preporučeni način podešavanja ovog fajla (može i ručno).

traceroute - Ispisuje kroz koje gateway-e paket prolazi na putu do hosta.

tree - "Grafički" prikaz fajlova i foldera unutar foldera koji je specifikovan.

uname - Ispisivanje informacija o sistemu.
  1. -a - all - Prikaz svih informacija (distribucija, verzija jezgra, datum, vrijeme, arhitektura...).

uptime - Daje informaciju o vremenu koliko je sistem pokrenut, prikazuje trenutno vrijeme, koliko vremena je korisnik logovan i opterećenje sistema u zadnjih 1, 5 i 15 minuta.

useradd - Dodavanje novog korisnika.
  1. -g - Specifikovanje imena ili broja korisnikove inicijalne grupe, tj. dodavanje korisnika u određenu grupu. Grupa prethodno mora biti kreirana.  Primjer:
    #
    useradd -g zabbix zabbix
    Ovim se novi korisnik prilikom kreiranja odmah dodaje u grupu zabbix.
     
  2. -m - Kreiranje home directory-ja za navedenog korisnika, ukoliko ne postoji. 
  3. -s - Navođenje shella koji će korisnik koristiti kada se uloguje. Primjer:
    # useradd -m -s /bin/bash zabbix
    - Kreira korisnika zabbix zajedno sa njegovim home folderom i setovanjem podrazumijevanog shella na bash.
 
userdel - Uklanjanje korisnika. Primjer: userdel zabbix

vi - Najpoznatiji tekst editor. Ima dva načina rada: command i edit. U edit mod se ulazi pritiskom na taster Insert, a u komandni mod unošenjem dvotačke.

vncserver - Server za VNC. On u pozadini izvršava Xvnc. Najbolje ga je podesiti da radi kao servis i da se pokreće sa sistemom, ali ga je moguće pokretati i po potrebi. Primjeri:
vncserver :1 -name testserver -depth 16 -geometry 1024x768 - Startuje jednokratnu sesiju br. 1. Na klijentu treba unijeti imeservera :1, npr. 172.10.1.99:1.
vncserver -kill :1 - Ubija sesiju 1
Primjer konfiguracije:
http://rbgeek.wordpress.com/2012/06/26/how-to-install-vnc-server-on-centos-6/

w - Prikazuje koji su korisnici trenutno logovani i njihove procese. Header prikazuje informacije redoslijedom: trenutno vrijeme, koliko dugo je sistem pokrenut, koliko korisnika je trenutno logovano i ukupna opterećenost sistema u zadnjih 1, 5 i 15 minuta. Sve ovo može prikazati i komanda uptime. Dalje se prikazuju informacije za svakog pojedinačnog korisnika: ime, tty, sa kojeg udaljenog hosta je korisnik ulogovan, vrijeme kada se logovao, koliko vremena je bio idle, JCPU, PCPU i koju je zadnju naredbu koristio.

watch - Periodično izvršavanje navedenog programa, prikazujući na ekranu prvi full screen (onoliko informacija koliko može stati na ekran). Ovo omogućava praćenje izvršavanja nekog programa. Podrazumijevano se izvršava svake 2 sekunde i izvršavaće se sve dok se manuelno ne zaustavi. Sintaksa:
watch [-dhv] [-n <seconds>] [--differences[=cumulative]] [--help] [--interval=<seconds>] [--version] <command>
  1. -n ili --interval - Interval osvježavanja izražen u sekundama.
  2. -d ili --differences - Označava razlike (update) između izvršavanja.
Primjer:
watch tail /var/log/firewall.log - Prikazuje promjene u fajlu /var/log/firewall.log
watch -d ls -l - Prikazuje promjene u folderu. Označiće nove fajlove ili foldere.

wget - neinteraktivni download fajlova s Interneta. Podržava protokole HTTP, HTTPS i FTP, kao i skidanje preko proxyja. Moguće je da radi u pozadini i kada korisnik nije prijavljen, što je vrlo pogodno za skripte. Ova komanda može da slijedi linkove na HTML stranama i da skida sve te strane kreirajući istu strukturu lokalno, a linkovi se mogu prevesti u lokalne adrese da bi se mogle pregledati offline. Ako ima potrebe da se skida više fajlova odjednom, wget može njihove linkove čitati iz fajla. Takođe, ova naredba može i ograničiti brzinu skidanja, kao i da skida sa sajtova koji zahtijevaju logovanje. Za ovo se koriste opcije - http-user i -http-password.
  1. -i - Navođenje fajla sa linkovima koje će wget koristiti. Linkovi trebaju biti u tekstualnom fajlu, jedan ispod drugog. Primjer: wget -i /tmp/download.txt
  2. --limit-rate - Ograničavanje brzine skidanja.

whereis - Jednostavno traženje fajlova u Linuxu. Primjer: whereis openvpn.

who - Prikazuje trenutno ulogovane korisnike, kao i informaciju kada su ulogovani i sa koje adrese.

whoami - Pokazuje ime trenutno ulogovanog korisnika.

yum - Instalacija/deinstalacija softvera. Prilikom instalacije automatski s Interneta skida najnoviju verziju programa te dodatnog softvera koji je potreban za normalan rad prvog softvera.
  1. check-update - Provjerava da li ima nadogradnja za neki od instaliranih softverskih paketa.
  2. groupinstall - Instalacija kompletne grupe programa. Popis raspoloživih grupa se dobija opcijom grouplist.
  3. grouplist - Izlistava raspoložive grupe iz svih yum repozitorija.
  4. groupremove - Uklanja kompletnu grupu programa.
  5. install  - Instalacija određenog programskog paketa i potrebnih komponenata. Primjer: yum install postfix
  6. list - Izlistavanje softverskih paketa na sistemu ili udaljenom repozitoriju
  7. yum list installed [ime paketa] - Izlistava instalirane programske pakete. Na navedeni način se može provjeriti je li određeni paket instaliran.
  8. localinstall - Instalacija .rpm paketa. Automatski će s Interneta skinuti dependencies koji mu trebaju. Primjer: yum localinstall MySQL-client-5.5.25-1.el6.x86_64.rpm.
  9. remove - Uklanjanje određenog programskog paketa i komponenata koje idu uz njega. Primjer: yum remove sendmail
  10. repolist - Prikazuje repozitorije koji su omogućeni na sistemu.
  11. update - Nadogradnja navedenog paketa. Primjer: yum update sogo