Ponukan čestim pitanjima o Linux , odlučio sam podijeliti bilješke sa Osnove administracije Linux OS:
Uvod u administraciju Linuxa 1 – Bilješke 🐧
Ispod se nalaze bilješke iz materijala
„Osnove administracije operacijskog sustava 1 (Linux)“– Ivan Rako
Materijal je odličan uvod za sve koji se počinju baviti administracijom Linux operacijskog sustava.
📖 SADRŽAJ
• 📖 1. UVOD
• 📖 2. INSTALACIJA LINUXA
• 📖 3. NAREDBENA LINIJA
• 📖 4. UPRAVLJANJE DATOTEKAMA I DIREKTORIJIMA
• 📖 5. OBRADA TEKSTA
• 📖 6. NAPREDNO UPRAVLJANJE TEKSTOM
• 📖 7. UREĐIVAČ TEKSTA VI
• 📖 8. UPRAVLJANJE UREĐAJIMA (/dev)
• 📖 9. DATOTEČNI SUSTAV
• 📖 10. UPRAVLJANJE PROCESIMA
📖 1. UVOD
Linux je ime za jezgru (kernel) operacijskog sustava sličnog Unixu, nazvanu po Linusu Torvaldsu.
Godine 1991. Linus Torvalds objavio je izvorni kod na internetu i pozvao zajednicu na razvoj.
Danas je Linux kernel rezultat rada tisuća programera diljem svijeta.
Linux je slobodan softver, a njegov razvoj potaknut je:
• brzim razvojem Interneta
• licencom GPL
Godine 1996. nastaje KDE
Zbog zatvorenosti KDE-a u početku, 1997. nastaje GNOME
Prednosti Linuxa
SIGURNOST
Osnovni dizajn otežava ozbiljne napade na sustav.
STABILNOST
Modularan kernel omogućava ponovno pokretanje dijelova sustava bez gašenja.
FLEKSIBILNOST
Linux može raditi i na slabijem hardveru, za razliku od Windowsa.
Filozofija slobodnog softvera
Slobodni softver omogućava:
• slobodno korištenje
• proučavanje i izmjene
• distribuciju kopija
• javno dijeljenje poboljšanja
Da bi softver bio slobodan, mora biti dostupan u izvornom kodu
Richard Stallman definira 4 slobode:
- Pokretanje programa u bilo koju svrhu
- Proučavanje i prilagodbu
- Dijeljenje kopija
- Poboljšavanje i dijeljenje izmjena
Najpopularnije Linux distribucije
Linux OS se sastoji od:
• Linux kernela
• GNU alata
• Xorg grafičkog sustava
• grafičkog okruženja
Upravljanje paketima
• RPM – RedHat, Fedora, openSUSE…
• DPKG – Debian, Ubuntu…
Serveri i servisi
Web serveri
• Apache – najrašireniji web server
• Nginx – brz, učinkovit, mali RAM footprint
Baze podataka
• PostgreSQL – robustan, objektno orijentiran
• MySQL – brz, popularan u open-source projektima
Mail serveri
• Sendmail – moćan, ali kompleksan
• Postfix – sigurnija i jednostavnija alternativa
DNS
• BIND – de facto standard DNS server
DHCP
• ISC DHCP – najpoznatija open-source implementacija
📖 2. INSTALACIJA LINUXA
Struktura datotečnog sustava
Linux koristi hijerarhijsko stablo direktorija s korijenom:
/
Važniji direktoriji:
/bin – osnovne naredbe
/dev – uređaji
/etc – konfiguracija
/lib – sistemske biblioteke
/mnt – privremeni mount
/proc – virtualni FS (kernel)
/sbin – sistemske naredbe
/root – home za root korisnika
SWAP
Virtualna memorija koja se koristi kad ponestane RAM-a.
Tradicionalna preporuka: 2× RAM (danas fleksibilnije).
Instalacija Debian GNU/Linuxa
Načini instalacije:
• mrežna (netinstall – ~200 MB)
• puna instalacija s medija
Zadani DE: GNOME
Alternativni:
• KDE
• XFCE
• LXDE
Koraci instalacije:
mrežne postavke
regionalne postavke
korisnici i lozinke
particioniranje + swap
instalacija softvera
GRUB bootloader
📖 3. NAREDBENA LINIJA
man stranice
man mkdir
whatis mkdir
Shell (ljuska)
Najčešća: bash
Prompt:
• $ – običan korisnik
• # – root
Varijable
echo $HOME
export VAR
env | grep VAR
Preusmjeravanje
naredba > izlaz.txt
naredba < ulaz.txt
naredba 2> greske.txt
naredba >> dodavanje.txt
Pipes
ls | grep conf | tee popis.txt
📖 4. DATOTEKE I DIREKTORIJI
Putanje
• Apsolutna: /etc/passwd
• Relativna: ../bin
Navigacija
pwd
cd /usr/local/bin
cd ~
cd -
Rad s direktorijima
mkdir -p /tmp/novi/dir
rm -rf /dir/*
cp -r /dir/* /dir2/
mv staro novo
Poveznice
• simboličke: ln -s
• hard link: ln
📖 5. OBRADA TEKSTA
cat, tac
head, tail -f
wc
od, hexdump
split
sort | uniq
📖 6. NAPREDNO – REGEX, GREP, SED
grep '^root' /etc/passwd
grep -v "^$" file
sed 's/root/tux/g'
📖 7. VI UREĐIVAČ
Načini rada:
• command
• insert
• last line
Najčešće naredbe:
i, a, o
:w :q :wq :q!
📖 8. /DEV – DISKOVI I PARTICIJE
Diskovi:
• IDE → hdX
• SATA/SCSI → sdX
Alati:
• fdisk (MBR)
• parted (GPT)
Bootloader:
• GRUB 2
• konfiguracija: /boot/grub/grub.cfg
📖 9. DATOTEČNI SUSTAVI
Najčešći:
• ext2 / ext3 / ext4
• XFS
• ReiserFS
• FAT / NTFS
Popis podržanih:
[code]
cat /proc/filesystems
📖 10. UPRAVLJANJE PROCESIMA
Proces je instanca pokrenutog programa.
Svaki proces ima jedinstveni PID
Pregled procesa
ps
ps aux
top
htop
• ps aux – svi procesi, svi korisnici
• top – dinamički prikaz (CPU, RAM)
• htop – napredniji, pregledniji (ako je instaliran)
Stanja procesa
• R – running
• S – sleeping
• Z – zombie
• T – stopped
Upravljanje procesima
kill PID
kill -9 PID
pkill ime
bg
fg
jobs
kill -9 koristi se samo ako proces ne reagira normalno.
📖 11. KORISNICI I GRUPE
Linux je višekorisnički sustav.
Važne datoteke
/etc/passwd
/etc/shadow
/etc/group
Rad s korisnicima
useradd korisnik
passwd korisnik
usermod -aG sudo korisnik
userdel -r korisnik
Rad s grupama
groupadd grupa
groupdel grupa
groups korisnik
id korisnik
root korisnik
• ima potpune ovlasti
• koristi se pažljivo
• preporuka: sudo
📖 12. DOZVOLE (PERMISSIONS)
Linux koristi vlasnika + grupu + dozvole
Vrste dozvola
• r – read (čitanje)
• w – write (pisanje)
• x – execute (izvršavanje)
Prikaz
ls -l
-rwxr-xr--
• vlasnik → rwx
• grupa → r-x
• ostali → r--
Promjena dozvola
chmod 755 skripta.sh
chmod u+x skripta.sh
chmod g-w datoteka
Promjena vlasnika
chown korisnik:grupa datoteka
Posebne dozvole
• SUID
• SGID
• sticky bit (/tmp)
chmod +s datoteka
chmod 1777 /tmp
📖 13. MREŽA (NETWORKING)
Pregled mreže
ip a
ip link
ip route
ss -tuln
Testiranje mreže
ping google.com
traceroute google.com
nslookup bug.hr
dig bug.hr
Konfiguracija (Debian/Ubuntu)
• NetworkManager
• /etc/network/interfaces (starije)
Alati
• curl
• wget
• netcat (nc)
📖 14. SYSTEMD I SERVISI
systemd je init sustav (PID 1).
Upravljanje servisima
systemctl status ssh
systemctl start ssh
systemctl stop ssh
systemctl restart ssh
systemctl enable ssh
systemctl disable ssh
Pregled boot-a
systemctl list-units
systemctl list-unit-files
journalctl
journalctl -u ssh
journalctl -b
Runlevels → Targets
• multi-user.target
• graphical.target
• rescue.target
systemctl get-default
systemctl set-default multi-user.target
📖 15. LOGOVI
Linux intenzivno koristi logove za dijagnostiku.
Lokacije
/var/log/syslog
/var/log/auth.log
/var/log/kern.log
/var/log/dmesg
Praćenje u realnom vremenu
tail -f /var/log/syslog
journalctl -f
📖 16. ARHIVIRANJE I KOMPRESIJA
tar
tar -cvf backup.tar dir/
tar -xvf backup.tar
tar -czvf backup.tar.gz dir/
tar -xzvf backup.tar.gz
zip / unzip
zip -r backup.zip dir/
unzip backup.zip
📖 17. PAKETNI SUSTAVI
Debian / Ubuntu (APT)
apt update
apt upgrade
apt install nginx
apt remove nginx
apt purge nginx
apt search ime
RedHat / Fedora
• dnf
• yum
ZAKLJUČAK
Ovim dijelom pokriveni su:
✔ procesi
✔ korisnici i dozvole
✔ mreža
✔ servisi
✔ logovi
✔ paketi
To je temelj svakog Linux admina.
