Állománykezelés

 
alias
               # Különböző parancsokat saját elképzeléseink szerint átnevezhetünk.
               # /home könyvtárunk .bashrc fájlja tartalmazza beállításainkat.
               alias rm='rm -i' : A törlés parancs kiadása után rákérdez, hogy valóban akarjuk e. Ajánlatos!
 
unalias
               # Az előzőekben beállított értékek visszaállítása. (törli a .bashrc-ből.)
 
cat
               # Fájl tartalmát írja ki.
               > fájl : várja a bemenetet, amely a "fájl" tartalma lesz
               -n fájl : beszámozza a fájl sorait
 
cd 
               # Könyvtár váltás parancs.
               cd : /home könyvtárunkba jutunk 
               cd .. : egy könyvtárral feljebb kerülünk
 
chmod
               # Fájlok-, könyvtárakra vonatkozó jogokat állíthatjuk be
               # DAC (háromszintű diszkrécionális maszk) szerinti beállítás.
               # r-read, w-write, x-executable jogot jelent
               # tulajdonos (jele:U) | csoport felhasználó (jele:G) | mindenki más (jele:O)
               #          rwx        |             rwx              |          rwx
               # Adjuk ki az ls -la parancsot és máris világossá válik a dolog.
               # Jogokat számokkal, vagy szimbólikus jelekkel határozhatunk meg.
               # Számokkal.: 4-write,2-read,1-executable jog, összeadva, külön U,G,O-nak
               chmod 777 file : UGO-nak egyaránt minden jog.
               chmod 751 file : U-nak minden, G-nek írási, futtatási, O-nak futtatási jog.
               # Betűkkel.: kinek+mit
               chmod u+rwx file : Tulajdonosnak (U) r,w,x jog adása.
               chmod g+rx file : Csoport felhasználónak (G) r,x jog adása.
               chmod a-rwx : Mindenkitől (A-all) elveszünk minden jogot.
 
chown     
               # Fájlok, könyvtárak tulajdonosának (létrehozójának változtatása)
 
chgrp
               # Fájlok tulajdonosi csoportjának megváltoztatása
 
lsattr
               # Fájlok, könyvtárak attribútumát mutatja meg
 
chattr +tulajdonság file
               # Fájlok, könyvtárak attribútumát változtatja
               # Tulajdonságok.:
               A : Nem változtatja meg a fájlok utolsó módosításának dátumát. (rendszergyorsító hatás)
               a : Csak hozzáfűzni tudunk a fájlhoz
               c : Autómatikusan tömörítve kerül a lemezre, és kitömörítve kerül beolvasásra
               d : Ezekről az állományokról nem készül biztonsági másolat a dump parancs futtatásakor
               s : Paranoia mód. Törléskor azonnal megsemmisül minden bit-je.
               S : Minden változtatás azonnal lemezre íródik (sync hatás)
               u : A Fájl törlésekor az adat megmarad, később visszaállítható
 
cfdisk
               # Lemezkezelő, partícionáló
 
cp -r /honnan/mit /hova/milyen_néven
               # Fájl, könyvtár másolás
 
cmp file1 file2
               # Összehasonlítja a file1 és file2 fájlok tartalmát
 
cut
               # Bement (stdin), vagy paraméterként megadott fájl minden sorának egy megadott
               # részét vágja ki
               -c2 fájl : második mező értéke
               -c3,5 : harmadik, ötödik mező, sorrend nem számít
               -c-4,6- : negyedik mezőig és a hatodiktól
               
 
diff -u file1 file2 > eredmeny
               # Összehasonlítja a fájlok tartalmát, a különbséget pedíg az eredmény-be írja
 
du
               # Az aktuális könyvtár fájljainak méretét adja meg
 
df
               # Szabad terület számítása, partíciónként
               -H : Megabyte, Gigabyte-okban írja ki
 
echo szoveg
               # Kiírja a képernyőre a szoveg-et
               echo szoveg > file : a szoveg-et file-ba írja
               echo VegyEs | tr  a-z A-Z : a VegyEs szóban felcseréli a kis és nagybetűket
               echo egyesek | tr -d e : az egyesek szóból kiveszi az e betűket
 
find
               # Keresés
               find / -name "*.jpg" -print : az összes kép keresése a gyökérben, majd az eredmény kiírása
               find / -iname ... : kis és nagybetű különbség nincs!
               find -perm 777 : minden 777-es joggal rendelkező állomány keresése
               find -perm 4000 : Az összes SUID joggal rendelkező állományt keresi
               find /home -size +1024 : 500kb-nál nagyobb állományok keresése a /home-ban
               find -type "kapcsoló" : különböző típusú fájlokat keres
                               -type l : szimbólikus link
                               -type d : könyvtár
                               -type f : fájl
               find /etc -empty -maxdepth 1 -printf "%p-%m\n" : az /etc könyvtárban lévő üres könyvtárakat 
                               írja ki, a jogosultságaival együtt.
               find /home -size +1024 \( -mtime +365 -o -atime +365 \) -ls -exec file{} \; :
                               512kb-nál nagyobb,maximum 365*24 órája módosított állományokat, valamint a file parancs kimenetét
                               -exec file{} \; jelenti, hogy az exec után levő parancsnak adja át az eredményt.
 
file sajt
               # megvizsgálja a sajt fájl típusát
 
fsck
               # lemezellenőrző
 
fgrep
               # Fájlokban, vagy stdin-ben keresek szöveget
               "abc" file.txt : Megkeresi az összes olyan sort a file.txt-ben, ami tartalmat "abc"-t
 
grep
               # Szövegrészleteket keres fájlokban, valamint a kimenetben.
               -i : nem tesz különbséget kis és nagybetűk között
               -l : nem az elűfordulási sorokat, hanem csak a fájl neveket listázza
               -v : azoakt írja ki, amiben nem szerepel a keresett szó
               # szóközt grep szó" "szó2 -vel ábrázolunk
 
head
               # Szűrő eszköz. A fájl első 10 sorát írja ki
               -n-7 fájl : utolsó 7 sort már nem írja ki
               -c4 fájl1 fájl2 : mindkét fájl első 4 karakterét írja ki
 
tail
               # Szűrő eszköz. A fájl utolsó sorait írja ki.
               -n+2 fájl : A fájl tartalmát a második sortól mutatja meg
 
tail -n+3 fájl | head -n1
               vagy
head -n3 fájl | tail -n1
               # Egy fájl harmadik sorát így írhatjuk ki
 
mc
               # Midnight Commander fájlkezelő
 
mcedit
               # Az mc szövegszerkesztője
install
               # Fájlok másolása, attribútumok módosítása
 
less
               # Szűrőprogram fájlok adatainak megjelenítéséhez.
 
ls
               # A könyvtárstruktúrát jelenít meg
               ls -lt : méret szerint sorrendben
               ls -ls : utolsó módosítás szerint sorrendben
               ls ??????? : minden 7 karakteres állományt jelenít meg
               ls -a : a rejtett fájlokat is kiírja
               ls -r ? fordított sorrendben írja ki. pl.: -nr : ABC fordított sorrendjében
               ls [aes]? : azokat a 3 betűs fájlokat, melyek középső betűje a,e,s közül bármelyik
               ls [nm]* :  azokat a fájlokat melyek n,m betűvel kezdődnek
               ls *c : amelyek c-betűre végződnek
               ls [^s]* : amely fájlok nem s-el kezdődnek
               ls I szó : kilistázza a könyvtár tartalmát, de a szó-t kihagyja
 
lsof
               # Nyitott fájlo kilistázása
               -p pid : Folyamat azonosító szerinti szűrés
               | egrep ":port1|:port2" : A megadott portokat használó fájlokat listázza ki.
 
lspci
               # Hardver információk
 
lsusb
               # Usb eszközök kiíratása
 
lshw
               # Hardver információk, kicsit bővebben
 
mv
               # Fájlokat könyvtárakat mozgat, vagy nevez át
               
mkfs 
               # Fájlrendszer létrehozása
               -t filesystem eszköz [blokkméret]
               -t ext2 -V /dev/eszköz : ext2-es fájlrendszer létrehozása
 
slocate -u
               # A hdd tartalmáról készít adatbázist.
               -e könyvtár1 konyvtár2 : könyvtárakat tudunk kivenni az adatbázisból
 
locate fájl
               # Az előzőekben létrehozott adatbázisban megkeresi a fájl-t. (Azonnal meg van az eredmény)
 
 
ln -s
               # Soft link-et hoz létre
               -s fájl1 fájl2 : fájl1 ről készít fájl2 nevű soft-link-et.
 
mkdir -t ext2 /dev/ram0 4096
mount /dev/ram0 ramdisk/
               # 4Mbyte os ramdisk-et hozunk létre, és felcsatoljuk.
 
mount 
               # Eszköz felcsatlakoztatás (CD,partíció, pendrive, hdd, etc.)
               -o loop cdimage.iso./cd-rom : cdimage.iso felmountolása megtekintésre. (kell cd-rom könyvtár)
               /dev/hda2 /mnt/vinyo : hda2-es eszközt csatolja fel a vinyo könyvtárba (létre kell elötte hozni!)
               -o noatime /dev/hdX : noatime attribútummal csatlakoztatja a lemezt. (I/0 művelet csökkentés!)
 
umount /dev/eszköz
               # Lecsatlakoztatás 
 
pwd
               # Kiírja az aktuális könyvtárat
 
recode
               # file karakterkódolásának konvertárálása
               iso-8859-15..utf8 modositando_file : Nyugat európai kódolás konvertálása UTF8-ra
 
rmdir
               # Könyvtár törlés
 
rm
               # Állományok eltávolítása
               -d : könyvtárat
               -i : rákérdez a törlés előtt (Ajánlott!)
               -rf : Könyvtárstruktúrát töröl (akkor is, ha nem üres)
 
sed
               # Stream editor, folyamatszerkesztő. A bemenetet a kimenetre másolja miközben megszerkeszti.
               echo "hablabda"  | sed 's/a/K/g' : kimenete.: hKblKbdK, azaz "a" betűket "K"-ra cseréli
               '/ *#/d; /^ *$/d' file : a file-ból kiszűrjük a kommenteket, üres sorokat.
 
 
sort
               # Sorba rendezés
               -b fájl > kimenet : ABC sorrendbe rendezi a fájlt, az eredményt a kimenetbe írja.
               -r fájl : fordított sorrendben rendez
               -n fájl : a sor elején levő számok szerint rendez
               -u fájl : az azonos sorokat cask egyszer írja ki
sync
               # A Ramból a merevlemezre még ki nem írt adatok szinkronizálása (Fontos)
 
touch fájl
               # létrehoz egy üres állományt
               -t MMDDHHmm fájl : A fájl létrehozás dátumát változtatja meg. MM-Hónap DD-Nap HH-Óra mm-Perc
 
tree
               # Könyvtárstruktúrát írja ki     
 
tar 
               # Ki-be tömörítő
               zxvf file.tar.gz : Kitömöríti a gz-t, majd a tar-t, és egy /file könyvtárba teszi
               xvfj file.bzip2 : bzip2-t tömöríti ki
               tf mentes.tar : megmutatja a mentes.tar tartalmát
               tvvf mentes.tar : részletes listázás, jogok, tulajdonos etc.
 
uniq
               # Több sorból álló szövegben az ismétlődő sorokkal kezd valamit
               -c fájl : az egymás utáni azonos sorokból egyet hagy meg, és kiírja a sorok elején
               # hogy hányszor ismétlődött az adott sor
               
vi
               # Parancssoros szövegszerkesztő
               # Kilépés mentéssel.: ESC, majd :wq
               # Kilépés mentés nélkül.: ECS, majd :q!
 
vi -b +/mikulas fájl
               b : Bináris állomány szerkeszthetőségét teszi lehetővé
               +/mikulas : a fájl-ban a mukilas kifejezéshez ugrik
 
wc fájl
               # sor, szó, karakter számítása
               -m fájl : a fájlban lévő karakterek száma
               -c fájl : a fájlban lévő bájtok száma
               -w fájl : a fájlban lévő szavak száma
               -l fájl : a fájlban lévő sorok száma
 
which program
               # A program futtatható állományának elérési útvonalát adja meg (általában /usr/bin)
 

Kvóták beállítása
Apt-vel telepítsük a quota csomagot.
 
 
quota
               # Tároló kvótázás programja
 
quota -v
               # A bejelentkezett felhasználó kvótabejegyzései
 
quotacheck -uagv
               # Végignézi a fájlrendszert, a tárkorlátok adatainak begyűjtése érdekében
               # Majd feltölti az adatbázist (aquota.user, aquota.grp)
               -u : alapértelmezett
               -a : minden fájlrendszer ellenőrzésre kerül
               -g : csoportadatok keresése
               -v : verbose, bőbeszédü
 
quotaon -augv
               # kvóták bekapcsolása
 
quotaoff -av
               # kvóták kikapcsolása
 
repquota -av
               # megtekinthetjük  felhasználónként a kvótabejegyzéseket
 
edquota -u user
edquota -g group
               # Felhasználó, csoport kvóták beállítása
               # Alapértelmezett szerkesztőnk átmeneti állományaként állíthatjuk be
               # Ezért érdemes: export EDITOR=kedvenc_szerkesztőnk -et beállítani.
 
               -p user user2: user2 kvótáit állítja be, user mintájára
               
               /etc/fstab file-ban, az adott partícióhoz meg kell adnunk az options-ba a usrquota, grpquota kapcsolókat.
 
 






Rendszeradminisztráció

login
               # Bejelentkezés
 
logout
               # Kijelentkezés
 
who
               # Bejelentkezett felhasználók kiíratása
 
whoami
               # Milyen néven is jelentkeztünk be?
 
users
               # Kiírja az rendszeren levő felhasználók nevét
adduser
               # Új felhasználó létrehozása (felhasználóbarát)
               
useradd
               # Új felhasználó hozzáadása
               # Ha opciókat használunk, a user-nevet a sor végére írjuk!
               -u szám : felhasználói azonosító megadása (UID)
               -g csoport : csoport tagság beállítása
               -G csooport1,csoport2 : vesszőkkel elválasztva, ha egyéb csoportnak is tagja a felhasználó
               -m -k /home/letezo_user uj:user : egy létező felhasználó mintájára építi fel az új user home-ját.
                               Minden fájl és könyvtár is belekerül a fiókba, + a beállítások is.
 
usermod
               # Felhasználói fiókok módosítása
               -u érték user : a felhasználó azonosítóját változtatja (UID)
               -g csoport user : a felhasználó csoportját változtatja
               -G csoport1,csoport2 : a júzer-t több csoporthoz is rendeli
               -L user : lock-olja a felhasználó hozzáférését (nem tud belépni)
               -U user : unlockolja a hozzáférést
 
userdel 
               # Felhasználó törlése
               -r user : home-al együtt törli
 
deluser 
               # Felhasználó törlése
 
groupadd 
               # Csoport létrehozása
               -g szám csoportnév : Egyénileg választott csoportazonosítóval (GUID)-el hozunk létre csoportot
               # /etc/group : csoportlista
 
groups user
               # A user csoportjai
 
groupmod
               # Csoport fiókját változtatja
               -n név újnév : csoport nevét változtatja
 
talk
               # Felhasználókkal való kommunikálás egyik eszköze
 
finger
               # Felhasználó információi
 
chfn
               # Felhasználói információk megváltoztatása (finger kimenete)
 
mkswap 
               # Swap terület létrehozása
 
swapon 
               # Swap bekapcsolása
 
swapoff
               # Swap kikapcsolása
               
last
               # Ki jelentkezett be utoljára és honnan (felhasználó vagy terminál alapján)
 
lastlog
               # /var/log/lastlog kimenete
 
passwd
               # A bejelentkezett felhasználó jelszavának módosítása
 
stat
               # File vagy filesystem státusz
 
su - user
               # Indít egy másik shell-t, user felhasználóként
 
 
write user tty
               # A felhasználóknak üzenet küldés






Folyamatok

w
               # Nemes egyszerűséggel megmutatja, ki van belépve, és mit csinál
 
pidof folyamat
               # A folyamat azonosítóját adja meg (PID)
 
parancs &
               # Parancs futtatása a háttérben
               fg : felélesztés, majd előtérben futás
               bg : felélesztés, majd háttérben futás
 
jobs
               # Háttérben futó programok kiíratása
               
ps
               # Futó folyamatok kiírása
               -u pisti : pisti felhasználó által futtatott folyamatok
               aux : minden folyamatot kiír, szinte minden információval
               alxww : minden folyamatot, még több infóval (pl.: PPID)
               -t1 : tty1-es terminál kilistázása
               f : erdő szerű megjelenítés
               l : kiírja a folyamatok PID-jét és PPID-jét is. (parent's process identifier)
               ww : a programok parancssori kapcsolóit írja ki.
 
nice
               # Priorítása lekérdezése, beállítása
               -n --20 program : a rendszer a legtöbbet ezzel a programmal fog foglalkozni. (+19-től -20 ig)
 
renice -10 1124
               # 1124-es folyamat -10-es prioritásra állítása
 
kill "pid"
               # Folyamat leállítása PID szerint
               -9 pid : erőszakos bezárás      
               -s "signal" : megadja, hogy miylen jelet küldünk a folyamatnak.
                               signal-ok: TERM, QUIT, ABRT, KILL
               -1 : jelentése SIGHUP, mely a folyamat bezárása, config fájl beolvasása, folyamat újraindítása
               -9 : jelentése SIGKILL, folyamat erőltetett bezárása. (Csak végszükség esetén)
               -15 : jelentése SIGTERM, szabályos programleállítás
 
killall parancs
               # Ha több "parancs"-fut (pl.: iceweasel), mindet leállítája
 
nohup find / name t* > ~/nohup.log &
               # A "t" betűvel kezdődő fájlok keresése a háttérben, az eredmény a nohup.log-ba kerül.
 
init
               # Futtatási szint beállítása
               0 : kikapcsolás
               1 : single-user mód
               2-5 : multi-user mód
               6 : reboot
               # /etc/inittab -ban állítható be a gép indulási init szintje.
               # /etc/rcX.d könyvtárak a megfelelő szinteken induló programok linkjeit tartalmazza
               # Új szolgáltatás hozzáadása init szintekhez : Progtam bemásolása /etc/init.d-be, majd erről 
               # egy link létrehozása a kiválaszottt init szint könyvtárába (pl.: rc2.d) Ha S betűvel kezdődik
               # elindul , mással nem. A Kezdőbetű után levő szám az induló folyamatok sorrendjét befolyásolják
 
runlevel
               # Megadja, hanyas init szinten voltunk és vagyunk. (kimenet pl.: N 3 , vagy 3 2.) típusú.
               # 3 N jelenti, hogy 3-ason voltunk és vagyunk, 3 2 pedíg hogy 3-ason voltunk 2-esen vagyunk
 
shutdown 
               # Kikapcsolás
               -h now : Azonnali kikapcsolás (időt is megadhatunk)
               -r 0 : Azonnali újraindítás




Időzített parancsfeldolgozás

at
               # Megadott időpontban futtathatunk programokat
               -f todo 23.59 : előre megírt parancsainkat (todo fájlban) 23:59-kor lefuttatja az at.
               # Idő formátumok
                               # 13.13 01.01.02 : 13 óra 13 perc, 2002, január 1
                               # 2pm tomorrow : honlap délután 2
                               # 1am Sun : hajnali 1 óra, vasárnap
               
atq
               # Az at várakozási sorrendjét ismerteti
               
atrm pid
               # Az at várakozási sorából való eltávolítás
 
cron
               # Parancs ütemező
               # /etc/cron.d ; /etc/cron.daily ; /etc/cron.weekly
 
sleep 5 parancs
               # 5 Másodperc múlva indítja a "parancs"-ot.
 
schedutils
               # Linux rendszer ütemező
 
screen
               # Ablakkezelő, virtuális terminál emulátorral.
               # Háttérbeli programok futtatásához alkalmazható program.
               screen parancs : Egy új VT-t nyit, (1 shell-en) melyben a "parancs" fut.
               Ctrl+a+d : bill. kombinációval tehetjük háttérbe.
               screen -R $(pidof SCREEN) : paranccsal tudjuk előtérbe hozni.
               Ctrl+a+? : előhozhatjuk a legfontosabb bill. kombinációkat
               Ctrl+a+c : új ablakot hozhatunklétre.
               Ctrl+a+p VAGY n : előző vagy következő ablakra ugrás. (previous, next)
               
 
time -v parancs
               # A parancs lefutási idejét méri




Kernel,modulok,fordítás

               
lsmod
               # Betöltött modulok kilistázása
 
rmmod modulnév
               # Betöltött modul lekapcsolása a kernelből
 
modprobe modulnév
               # Modult tölt be a kernelbe
 
modinfo modulnév
               # a modulról kapunk információt
 
ldd program
               # Kiírja a programhoz szükséges megosztott könyvtárakat, függőségeket
 
# A fordítás menete, röviden. (ez csak az egyik módszer) 

 

               # Megfelelő kernel verzió beszerzése (www.kernel.org, pl.: linux-2.6.20.3.tar.bz2)
               # apt-get install wget bzip2 binutils kernel-package module-init-tools initrd-tools yaird         
               # tar zxvf linux-2.6.20.3.tar.bz2 (érdemes a /usr/src-be)
               # Belépés a létrejött könyvtárba
               # make mrproper (ha már próbálkoztunk beállításokal)
               # apt-get install libncurses5-dev
               # make menuconfig (az érdemi munka)
               # make-kpkg clean
               # make-kpkg --initrd kernel-image kernel-headers
               # cd ..
               # dpkg -i *.deb (2db állomány)

Csomagkezelés

./configure
make
make install
               # Csomag telepítése forrásból
 
alien
               # Csomag konverter program (pl.: .rpm .deb etc.)
 
apt           /Advanced Package Tools, csomagkezelő/
               -cache search : keresés
               -cache showpkg csomag : megmutatja a csomag függőségeit
               -cache policy csomag : a csomag telepített és telepíthető verzióit adja meg
               -get install csomag : telepítés
               -get remove csomag : törlés
               -get autoclean : nem használt csomagok törlése
               -get update : frissítás
               -get upgrade : frissítések telepítése
               -get dist-upgrade : distro frissítés
               -get -f install : törött, hiányzó csomagoknál a barátunk.
               -get clean : apt cache tisztítása
               -get build-dep csomag : telepítés minden egyes csomagjával együt
               -get source csomag : a csomag forrásának letöltése
               -file list csomag : kilistázza a csomag tartalmát
               
dpkg        /Debian packages/
               # .deb csomagkezelő
               -i csomag : telepítés
               -r vagy --purge : törlés
               -reconfigure csomag : csomag újrakonfigurálása
               -l : csomagok listázása
               -I csomag : csomag információk megjelenítése
               -S fájl : megmutatja melyik csomaghoz tartozik a fájl
 
dselect
               # A dpkg barátságosabb arca

A Red Hat csomagkezelője

rpm
               # Red Hat Package Manager
 
rpm -ivh csomag.rpm
               # csomag telepítése 
 
rpm -Uvh csomag.rpm
               # Frissítés vagy telepítés.
               # Ha nincs telepítve , telepíti, ha telepítve van, megpróbálja frissíteni
 
rpm -Fvh csomag.rpm
               # Csak frissítés. Ha nincs telepítve a csomag, kilép
 
rpm -e csomag.rpm
               # Törlés
 
rpm -q csomag.rpm
               # Megvizsgálja, hogy telepítve van e a csomag, és milyen verzió
 
rpm -qa
               # Az összes telepített csomag vizsgálata




Hálózat

arp
               # ARP cache manipulálása
               
ifconfig
               # Hálózati információk lekérése, konfigurálása
               
ifconfig eth0 192.168.10.1 netmask 255.255.255.0 up
               # 192.168.10.1-es IP-t osztunk az eth0-ra (0-s hálókártya)
               # 255.255.255.0 a netmask.
 
ifdown eth0
               # eth0 eszközt lekapcsolja      
 
ifup eth0
               # eth0 eszközt felkapcsolja ( dhcp esetén kér IP-t a kiszolgálótól)
host
               # Lekérdezéseket kezdeményez a DNS kiszolgáló felé, tartományokról, zónákról.
               -t ns valami.hu : valami.hu nameserverét adja meg
               -t mx valami.hu : valami.hu levelező szervereiről ad információt 
 
hostname
               # Beállítja vagy megjeleníti a rendszer host-nevét.
 
curlftpfs -o allow_other username:password@ftp.domain.dom /csatolasi/pont
               # Felcsatolhatunk ftp tárhelyeket, lokális fájlrendszerünkbe. (fusermount segítségével)
               
               # Ha a hiba.:
               # "If you don't use udev, you may get this error message:
               # fusermount: failed to open /dev/fuse: No such fdevice or address
               # Before loading the fuse kernel module, create the device node manually:
               # A megoldás.:
               mknode -m 666 /dev/fuse c 10 229
 
echo 0 > /proc/sys/net/ipv4/ip_forward
               # Ha gépünket router-ként használjuk, érdemes beállítanunk a csomag továbbítást
               # 1-es engedélyezi a tiltást, 0 tiltja a tiltást!
 
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
               # Beállítjuk, hogy broadcast ping-re ne válaszoljon gépünk
 
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
               # Beállítjuk, hogy ne válaszoljon gépünk a ping-re
 
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
               # Engedélyezzük a hamis csomagok szűrését
 
...etc
 
               --------------
               # Ezek a beállítások rendszerleállításkor elvesznek, érdemes őket valamely induláskor 
               # lefutó script-be tenni, a hálózati interfészeket konfiguráló script elé.
               --------------
 
etherwake
               # Magic packet-et küld a wake-on-lan enabled hálókártyára
 
ethtool
               # Ethernet kártya beállítások megjelenítése, változtatása
 
iptraf
               # Hálózat terhelést figyelő program
 
mii-tool
               # Hálózati tesztelő
 
nbtscan
               # NetBIOS információkat adja meg, a hálózaton
 
net usershare add megosztasnev /eleresi_ut comment acl
               # Megoszt könyvtárakat a hálózaton
               # Ha a fenti parancs ilyen hibát dob.: "(net usershare: usershare are currently disabled)"
               # az alábbiakban kell eljárnunk:
 
               # mkdir /usr/local/samba/lib/usershares
               # chgrp userneved /usr/local/samba/lib/usershares
               # chmod 1770 /usr/local/samba/lib/usershares
 
               #smb.conf global részébe a következőket.:
               # usershare path = /usr/local/samba/lib/usershares
               # usershare max shares = szám # (or the desired number of shares)
 
 
netstat
               # Információkat ír ki a hálózati alrendszerről
               -r : route kimenete 
               -i : interfész tábla
               -tp : TCP/IP -t használó processzek listája 
 
netstat      -tn|grep ':80'|tr -s ' '|cut -d ' ' -f5|cut -d':' -f1
               # kik csatlakoznak a gépünkre a 80-as porton? 
 
netcat
               # TCP/IP swiss army knife
 
nload
               # Network load - Hálózati terhelés vizsgálat
 
ngrep
               # grep, hálózati forgalomhoz
 
netsed
               # Hálózati csomagok valós idejű megváltoztatására alkalmas program
 
nslookup www.host.com
               # host.com IP címének vizsgálata
 
nmap
               # Elsősorban port scanner, de igen sokrétű alkalmazás
               -O ip_cim : Op.rendszer detektálás
               -p 1-10 ip_cim : Portok vizsgálata 1-10 ig.
               -p U:53,111,137,T:21-25,80,139,8080 ip_cim : UDP-n 53,111,137, TCP-n 21-25,80,139,8080-at vizsgál.
               
 
ping host
               # Ping jelet küld a host-nak
               -b ip_tartomány : broadcast üzenet küldés
 
 
route
               # Útválasztó tábla megjelenítése (Routing table)
 
route add -net 192.168.10.0 netmask 255.255.255.0 eth0
               # A 192.168.10.0-s hálózatra menő csomagokat az eth0-ra irányítja a rendszer
               # A hálót így már látnunk kell
 
route add defaul gw 192.168.10.254
               # 192.168.10.154-es IP-vel rendelkező router (gateway) hozzáadása a routing table-hez.
 
route del default gw
               # Alapértelmezett átjáró törlése a routing table-ből.
 
rsh
               # Távoli shell
               -l user gepnev parancs : a "parancs"-ot lefuttatja a távoli gépen, user nevében
 
smbclient
               # SMB hálózati erőforrások tallózása
 
smbclient -M gépnév
               # Üzenet küldése Windows-os gépekre (net-send szolgáltatás). Elküldés:Ctrl + D az üzenet végén
               echo üzenet | smbclient -M gépnév : azonnal küldi, nem kell Ctrl+D
               
ssh host   /Secure SHell/
               # Titkosított hálózati bejelentkezés
               # config file-k.: /etc/ssh/sshd_config, /usr/local/etc
               ssh-keygen -t rsa : RSA kulcs létrehozása ssh-hoz.
 
scp
               # Biztonságos távoli fájl átvitel
 
tcpdump
               # Hálózaton átmenő forgalmat figyeli.
               -i ethX : Az ethX csatolón átmenő forgalmat figyeli.
 
traceroute host
               # A hálózati útvonal kiírása a célszerverig (host) /IP hálózaton/
 
proftpd
               # FTP kiszolgáló démon
               # config file.: /etc/proftpd         
 
pure-ftp
               # FTP kiszolgáló
 
rdesktop
               # Remote desktop kliens
 
stunnel
        # SSL (Secure Socket Layer) titkosított kapcsolatba csomagolhatunk protokollokat. 
               # pl.: POP3, IMAP, etc.
 
squid
               # Proxy kiszolgáló
               # config file.: /etc/squid/squid.conf
 
vsftpd      /Very Secure FTP daemon/
               # config file.: /etc/vsftpd
               # Néhány fontos kérdés.:
               -anonymus_enable : anonymus ftp engedélyezése. Szükség van egy ftp nevű user-re.
               -local_enable : normal felhasználókat engedjük be. (kell az anonymus hoz is)
               -write_enable : engedi az írást
               -local_umask : felhasználók autómatikus jogai (default 022)
               -anon_upload_enable : anonymusként feltülthetünk
               -anon_mkdir_write_enable : anonymusként mkdir engedélyezés
               -xferlog_enable : xfer log-ot ír a daemon
               -connet_from_port_20 : 20-as portot használ
               -chown_uploads : anonymusként feltöltött fájlok tulajdonosának megváltoztatása
               -chown_username : Kinek a tulajdona legyen a file
               -idle_session_timeout : inkatív kapcsolatok bontási ideje
 
wireshark
               # Hálózati forgalom figyelő (GUI)




Bash programozás       top

               # A batch fájlhoz hasonló eljárás.
               # Programunk első sorában minden esetben meg kell adnunk a futtató programot, jelen esetben a bash-t.
               # Tehát a fájlunk kezdete legyen: #!/bin/bash
               # Felkiáltójel nélkül más futtató programot is megadhatunk a programunk első sorában.
               # Futtatási jog nélkül nem tudjuk használni, ezért chmod +x file 
               # Programunk futtatásához ./program_nev parancsot kell használnunk.

Írásjelek

               # Escape-karakter: \
                               Bourne Again Shell escape-karaktere. Többek között ezzel a jellel lehet elérni,
                               hogy az őt követő speciális karakter elveszítse módosító hatását.
 
               # Dollárjel: $
                               Segítségével változó neve és értéke között tudunk különbséget tenni.
                               Ha $valtozo-t írunk, az a változónk értékét fogja visszaadni.
 
               # Kétszeres idézőjel: " " 
                               Az idézőjelek arra valók, hogy egyes karakterek vagy lefoglalt szavak speciális
                               jellegét feloldják.
               
               # Egyszeres idézőjel: ' '
                               Megakadályozza a héjat (shell), hogy a $-t a változók jelzésének tekintse
 
               # Szögletes zárójel: []
                               Intervallumok meghadására szolgáló eszköz
               
               # Kérdőjel: ?
                               Egy elem helyettesítésére szolgáló jel
               
               # Csillag: *
                               Joker karakter, bármennyi karakter helyettesítésére
 
               # Felsővessző: ` (jobbra tartó - AltGr + 7)
                               Operátor, mely a két ` ` között lévő jelsort végrehajtja, és a kimenetét adja vissza
                               úgy, hogy az új sor karakter helyére szőközt rak.
 
               # Kettőskereszt: #
                               Kommentezés eszköze. (megjegyzés)
 

Dedikált környezeti változók

               
               EDITOR : Az alapértelmezett szövegszerkesztőnk
               HOME : Felhasználói könvvtárunk elérési útvonala
               MAIL : Beérkező email-jeink alapértelmezett könyvtára
               PATH : Azok az elérési útvonalak, melyekben a shell futtatható állományokat keres
               OSTYPE : Az operációs rendszerünk típusa
               PAGER : Az alapértelmezett file nézegetőnk elérési útvonalát kell tartalmaznia
               PWD : A könyvtár, ahol éppen vagyunk. (Szimbólikus linknél nem egyezik meg a pwd kimenetével!)
               SHELL : A jelenleg futú shell-ünk teljes elérési útvonala
               TERM : A Terminálunk típusát tartalmazza
 
Ezek értékeinek kiíratására a következő parancs használható:
 
echo $VALTOZO_NEV
 

Shell változók

Értékadó utasítással.:
 
               valtozo=érték : a változónk értéke legyen "ertek"
               valtozo=$(echo 2+3 | bc) : a változónk értéke legyen 2+3, bc-vel kiszámolva.
               export valtozo : shell változónkat környezeti változóvá tesszük
               unset valtozo : ha már nincs szükség rá, mint környezeti változó.
 

Belső változók

echo $0
               # A futó program neve
 
echo $$
               # A futó program PID-je
 
echo $?
               # A legutolsó parancs visszatérési értéke
               

Csővezetékek

               # " | " segítségével tudjuk egy program kimenetét (stdout) egy másik program
               bemenetére (stdin) csatolni. pl.:
 
ps aux | grep iceweasel
               # Az összes folyamat kimenetét a grep szűrő bemenetére irányítjuk, amely az iceweasel-t keresi.
 
               # stdin - standard input, jele.: fd0 (alapértelmezett bemenet, pl.: monitor)
               # stdout - standard output, jele.: fd1 (alapértelmezett kimenet, pl.: billentyűzet)
               # stderr - standard error, jelen.: fd2 (alapértelmezett hibacsatorna)
 
./program 2> hiba.txt
               # Programunkat lefuttatjuk, az esetleges hibákat (stderr) a hiba.txt-be irányítjuk,
               # az stdout helyett.
 
./program 1> kimenet.txt 2>&1
               # Programunkat lefuttatjuk, kimenetét (stdout) a kimenet.txt-be mentjük, valamint
               # az esetleges hibákat (stederr) hozzáfűzzük a kimenet.txt-hez.
 
cat file1 | sort | wc -w > file2
               # file1-et tartalmát a sort-nak adja át, az rendezi, majd átadja a wc-nek, majd a wc 
               # kimenete a file2-be íródik
 

Néhány egyszerű példa.:

#!/bin/bash
echo Hello World!
               # A szokásos Hello World kiírása, programunk futtatásakor.
 
 
#!/bin/bash
STR="Hello World"
echo $STR
               # Az STR változó deklarálása, majd értékének kiíratása.
 
 
#!/bin/bash
tar -cZf /var/backup.tgz /home/user
               # /home/user tartalmát menti és tömöríti a /var/backup-ba.
 
 
#!/bin/bash
OF= /home/user/$date +%Y%m%d).tgz
tar -cZf $OF /home/user/sajt
               # Egyszerű backup script, mely a /hme/user/sajt tartalmát, napi dátummal
               # ellátva egy .tgz állományba tömörítve menti.
 
 
#!/bin/bash
if ["foo" = "foo1" ]; then
               echo a feltétel igaz
               else
               echo a feltétel hamis
fi
               # Egyszerű if-else szerkezet
 

 

 

Egyszerű szerkezetek.: if, while, until, for

-if szerkezet.:
#!/bin/bash
               T1="foo"
               T2="bar"
               if [ "$T1" = "$T2" ] then
                               echo a feltetel igaz
               else
                               echo a feltetel hamis
               fi
               # eldöntjük T1 és T2 értékéről, hogy egyenlőek e.
 
-while szerkezet.:
#!/bin/bash
               COUNTER=0
               while [ $COUNTER -lt 10 ]; do
                               echo a szamlalo erteke: $COUNTER
                               let COUNTER=COUNTER+1
               done        
               # COUNTER változónkat 1-el növeljük addíg, amíg el nem éri a 10-et.
 
-until szerkezet.:
#!/bin/bash
               COUNTER=20
               until [ $COUNTER -lt 10 ]; do
                               echo a szamlalo erteke: $COUNTER
                               let COUNTER-=1
               done
               # COUNTER változónkat 20-as kezdőértékről 1-el csökkentjük, amíg el nem éri a 10-et.
 
-for ciklus (C szerű)
#!/bin/bash
               for i in `seq 1 10`;do
               echo $1
               done
               # az i változónkat felveszi 1-től 10-ig az értékeket, majd ki is írjuk a képernyőre
 
-for ciklus (a könyvtár elemeire)
#!/bin/bash
               for i in $( ls );do
               echo a konyvtar elemei: $i
               done
               # kiíratjuk a képernyőre az aktuális könyvtár elemeit
 
 
 
 
 
 

Egyszerű függvények.:

#!/bin/bash
               function quit {
                               exit
               }
               function hello {
                               echo Hello!
               }
               hello
               quit
               echo foo
               # Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 10. sor sosem fut le!)
 
#!/bin/bash
               function quit {
                               exit
               }
               function e {
                               echo $1
               }
               e Hello
               e World
               quit
               echo foo
               # Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 11. sor sosem fut le!)
 

További példák.:

#!/bin/bash
echo "Most `w -h | wc -l` felhasználó van bejelentkezve."
               # Kiíratjuk programunk segítségével, hogy hány felhasználó van bejelentkezve
 
 
#!bin/bash
test -d /home/user && echo van || echo nincs
               # Megvizsgáljuk, hogy van e /home/user könyvtár, két kimenetű elágazással (&&)
               # Ha van.: van
               # Ha nincs.: nincs    
               # -d : van-e ilyen?
 
 
#!/bin/bash
if [ -d /home/user ]; then echo van; else echo nincs;
fi
               # Ugyanaz mint az előző példa, csak kicsit másként. 
               # [-test parancs, ]-test zárás
 
 
#!/bin/bash
if [ -s /etc/motd ]; then echo nagyobb; else echo zerus;
fi
               # Megvizsgáljuk, hogy a /etc/motd nagyobb e nullánál, vagy zérus.
               # -s akkor ad IGAZ-at, ha a fájl létezik és nagyobb 0-nál.
 
#!/bin/bash
for i in *.mp3; do mpg123 "$i"; done
               # Az aktuális könyvtárban az összes mp3 kiterjesztésű állományt, az mpg123 
               # nevű programmal lejátszuk.




Egyéb programok

amsn
               # MSN kliens
 
acpi
               # ACPI eszközök információi
 
acpid
               # acpi program démonja
 
bitchx
               # IRC kliens (TUI)
 
badblocks
               # Lemez ellenőrző (Bad sectorokat keres)
               -o file_nev : a hibás sectorokat a file_nev állományba menti
               
cal
               # Szöveges naptár
               -y : az aktuális év teljes naptárát mutatja meg
 
clear
               # Törli a képernyőt
 
dict
               # Szótár program
               opendict
               dict-freedict-hun-eng : magyar-angol
               dict-freedict-eng-hun : angol-magyar
 
false
               # Nem csinál semmit, sikertelenül. (1-es visszatérési értékkel)
 
firestarter
               # Tűzfal
 
fsck         
               # Filesystem check.
               # Lemez-ellenőrző (helytelen leállítás után autómatikusan lefut.)
               # A helyre nem hozott állományokat a lost+found könyvtárba teszi.
 
fwbuilder
               # Tűzfal beállító
 
gaim
               # MSN, irc, etc, kliens
               
gpg -c file
               # Fájl titkosítása (OpenPGP)
 
gpg file
               # Fájl kititkosítása
 
gparted
               # Lemez partícionáló
 
hdparm 
               # Merevlemes információk
               -i /dev/hdx : Merevlemezünkről ad információt
               -Tt /dev/hdx : Sebességmérő eszköz
 
hddtemp /dev/hdx 
               # Lemez hőmérséklet figyelő
 
k3b
               # KDE alapú cd-dvd író program (GUI)
 
kopete
               # MSN kliens
 
mbmon
               # Motherboard monitoring
 
memtest86
               # Memória tesztelő alkalmazás
 
mplayer
               # Média lejátszó
 
qemu
               # Processzor emulátor
 
setterm
               # Konzol beállításai
               
tpconfig
               # Touchpad konfiguráló
 
tpctl
               # IBM ThinkPad hardver konfiguráló
 
true
               # Nem csinál semmit, sikeresen. (0-ás visszatérési értékkel)
 
thosutils
               # Toshiba laptop programok
 
reset
               # Visszaállítja a konzol beállításait
 
vlc
               # Média lejátszó
 
xchat
               # IRC kliens (GUI)
               
xmms
               # Audió lejátszó program
               
xmms-liveice
               # Audió kimenetet küldi a southcast-nek 
 
xdpyinfo
               # X kiszolgáló információk
               
yes > file
               # Csupa y-t ír a file-ba, elég gyorsan. :)
 
zgv
               # Konzolos képznézegető