Linux parancsok

Nyomtatóbarát változatOldal küldése ismerősnek

Linux alapparancsok, kezdőknek

Az első lépések
Könyvtárszerkezet
Állománykezelés
Rendszeradminisztráció
Folyamatok
Időzített parancsfeldolgozás
Kernel, modulok,fordítás
Csomagkezelés
Hálózat

Bash programozás
Egyéb programok
Hasznos linkek

 

 

Egy alaprendszer telepítésének menete részletesen, képekkel illusztrálva az alábbi linken található.:
Debian GNU/Linux 4.0 rendszer telepítése A telepítés után ajánlatos parancsok.: dpkg-reconfigure debconf # Ha a lehetőségek közül a low-t "alacsonyt" választjuk, a későbbi programok (repository-ból történő) # telepítésekor minden apró részletre, beállításra rákérdez a rendszer. Ajánlatos. apt-get update apt-get upgrade # A rendszer frissítése. (a tárolók (repository) az /etc/apt/sources.list file-ban vannak megadva.) Sok keresgéléstől kímélhetjük meg magunkat, ha a következő parancsokat elsajátítjuk.: man parancs # A parancs manual oldalait nyitja meg, rövid, tömör, célratörő leírás man -k szó # Az apropos program kimenete apropos szó # Minden olyan parancsot megad, mely manual oldalaiban szerepel a "szó" parancs --help # Információ a "parancs" használatáról info parancs # Információ a "parancs" használatáról whatis parancs # Egysoros az parancsról. whereis parancs # Hol is van a parancs? which parancs # A program futtatható állományának elérési útvonalát adja meg (általában /usr/bin) file:///usr/share/doc
# böngészőbe írva, a legtöbb telepített program leírását megtalálhatjuk
# (általában html formátumban is)

Fontos! Nem minden (a leírásban felsorolt) parancs tartozéka egy alaprendszernek, előfordulhat hogy telepítenünk kell. 

Könyvtárszerkezet

      


/ # A hierarchikus könyvtárfa kiindulópontja (gyökér könyvtár)
/boot # A rendszer indításához szükséges állományok helye (grub, vmlinuz, stb)
/bin # A futtatható parancsok könyvtára -binaries
/sbin # A rendszergazda parancsai -superuser bin
/lib # Az induláshoz szükséges osztott rendszerkönyvtárak -libraries
    Továbbá tartalmazza a rendszerhez csatolható modulokat, meghajtóprogramokat
/dev # A rendszerhez csatlakozott, csatolható különleges állományok -devices
/etc # Beállítófájlok, helyi indító parancsok, jelszavak, hálózati-beállítók, etc. helye.
/home # Minden felhasználó saját könyvtára itt foglal helyet. (Otthon, édes otthon)
/mnt # A felcsatolt (mountolt) perifériák könyvtára. -mount
/proc # Itt láthatjuk, ahogy a rendszerünk "él és lélegzik". (szellem a gépben) -process information
    Érdemes tüzetesebben átnézni, hiszen érdekes dolgokat találhatunk itt.
    pl.: /proc/cpuinfo fájl kiíratásával információt kapunk processzorunkról.
/root  # A rendszer gazdájának könyvtára.
/tmp # Ideiglenes adatok tárolására használt könyvtár. -temp
/usr # Alkalmazások, rendszereszközök tömkelege, a legforgalmasabb könytár. (pl X Window)
/var # Változó adatokat tartalmazó állományok könyvtára. /pl.: nyomtatási munkák, levelek, etc)
    /var/log : napló fájlok, különös jelentőséggel bírnak a rendszer biztonságának szempontjából 

Á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
-R : Rekurzívan változtatja meg a jogosultságokat.

# DAC (háromszintű diszkrécionális maszk) szerinti beállítás.
# r-read (olvasás), w-write (írás), x-executable (futtatás) 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.
# A sor elején található "d" a directory, "-" a file jele.
#
# Jogokat számokkal, vagy szimbólikus jelekkel határozhatunk meg.
# Számokkal.: 4-read, 2-write, 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)
-R : Rekurzívan változtatja meg a tulajdonos(oka)t
-f : Nem kapunk vissza hibaüzenetet, ha valami nem sikerült
--no-dereference : Szimbólikus linkeknél, a link jogosultságait állítjuk
--dereference : Szimbólikus linkeknél, a file (amire a link mutat) jogait változtatjuk

chgrp
# Fájlok tulajdonosi csoportjának megváltoztatása
-R : Rekurzívan változtatja meg a csoportokat
-f : Nem kapunk vissza hibaüzenetet, ha valami nem sikerült
-c : csak azokat a file-okat írja ki, amelyeknek valóban megváltozott a csoportjuk

lsattr
# Fájlok, könyvtárak attribútumát mutatja meg
-R : Rekurzívan mutatja meg az attribútumokat
-a : minden file-t kilistáz, beleértve a .-al kezdődőeket is

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 a kis betűket nagyra cseréli.
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
-f filelista : Egy létező filelista állományban felsorolt file-okat vizsgálja meg
-L : Követi a szimbólikus link kötést (nem a linket, hanem az arra mutató file-t vizsgálja)

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ájlok 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
-v : bőbeszédű
-vv : még bőbeszédűbb

lsusb
# Usb eszközök kiíratása

lshw
# Hardver információk, kicsit bővebben
-X : Grafikus felületű eredmény
-html : HTML formátumban menthetjük a kimenetet
-short : Az eszközök fa-szerű megjelenítése

mv
# Fájlokat könyvtárakat mozgat, vagy nevez át
-i : A módosítások előtt rákérdez, hogy valóban akarjuk-e
-U : Nem mozgatja az újabb (módosítás dátuma szerint) célfájlal rendelkező állományokat.
-f : force, a célfájlok törlése, kérdés nélkül

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) 

bővebben

 # 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

      

 

 # 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

clamav
# víruskereső szoftver

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 konfiguráló

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ő

 

Forrás

 

Tóth Szabi

Cimkék: