Avatar of tothgab

írta

Linux parancsok – kezdőknek, haladóknak (folyamatosan frissül)

2011. szeptember 23. péntek in Dokumentáció

Ma már a felhasználóbarát Linuxoknak köszönhetően rendszerünkön elég sok beállítás elvégezhető a grafikus felületű programok segítségével. Azonban még manapság is célravezető lehet, ha a felhasználó ismer néhány parancsot, amit a Terminálba begépelve gyorsan, egyszerűen használhatunk. És ne felejtsük el azt az esetet, amikor a grafikus felületünk valami (frissítés, konfigurációs fájlok átírása) miatt elszáll. A Linux Mint is egy felhasználóbarát rendszer és az Ubuntu alapú kiadások mellett egyre nagyobb teret hódítanak a Debian alapú kiadások is. Amihez azért jól jön pár hasznos parancs.

Ez a dokumentáció folyamatosan frissül és az Internetről összegyűjtött írásokat tartalmazza. Célja, hogy egy helyen megtalálhatóak legyenek a rendszer használatához szükséges parancsok – a teljesség igénye nélkül.

Utolsó frissítés: -

 

Az első lépés

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 és sikeres belépé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. Telepítés után ajánlatos még a következő két parancsot kiadni.

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ó # Minden olyan parancsot megad, mely manual oldalaiban szerepel a “szó”

apropos szó # Az apropos program kimenete

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. A /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. Ctrl + D kombinációval mentjük.

-n fájl : beszámozza a fájl sorait

/dev/cdrom > /eleresi/utvonal/cd.iso : A CD-nk tartalmát ISO állományba mentjük.

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. A 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

fgrep “abc” file.txt : Megkeresi az összes olyan sort a file.txt-ben, ami tartalmaz “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 : azokat írja ki, amiben nem szerepel a keresett szó

B.r: azokat a sorokat adja meg, melyekben a “B” és az “r” között bármilyen karakter szerepel.

[ha]: a kimenetben találhatóak meg azok a találatok, melyekben szerepel “h” vagy “a” betű.

[^sajt]: minden sor megtalálható a kimenetben, kivéve amelyben szerepel a “sajt” kifejezés.

^$ : Azokat a sorokat adja meg, melyek üresek.

^h : A sor elején található kis “h” betűre illeszkedik.

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

mkisofs (korábbi verziókban cdrtools csomag tartalmazza!) # Hasznos segédprogram ISO-k készítéséhez.

-r -o cd.iso /cdrom/ : ISO készítése a CD lemezünkről

mkisofs -J -V “Label” adat/ | sudo cdrecord dev=0,0,0 speed=32 -data -v -eject driveropts=burnfree – # adat mappa kiírása 32x-es sebességgel, Label nevű, verbose, az írás végén CD kiadással.

cdrecord -scanbus # dev érték lekérdezése

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

updatedb # Az slocate -u helyett, már ez a parancs használatos.

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 # könyvtár létrehozása

mkdir -t ext2 /dev/ram0 4096 majd ezután a mount /dev/ram0 ramdisk/ # 4Mbyte os ramdisk-et hozunk létre, és felcsatoljuk.

mount # Eszköz felcsatlakoztatás (CD,partíció, pendrive, hdd, etc.)

mount /ahol/a/fajl/van/izemize.iso /mnt/cdrom -o loop

mount /eleresi/ut/cdimage.iso /mnt/cdrom -o loop: cdimage.iso felmountolása megtekintésre. (kell /mnt/cdrom mappa!)

mount /dev/hda2 /mnt/vinyo : hda2-es eszközt csatolja fel a vinyo könyvtárba (létre kell elötte hozni!)

mount -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)

rsync # Hasznos file másoló, szinkronizáló program

-a : Archive módban másol. Tulajdonosok, attributumok, linkek megmaradnak.

-v : Bőbeszédű a kimenetkor.

-z : Tömörítve küldi el.

-b : Biztonsági mentésekhez használatos. *.~ végű file keletkezik.

–exclude ‘*~’ : kivéve a ~ végü file-ok.

-avz /eleresi/ut/honnan/* 192.168.1.1:/eleresi/ut/hova # Relatív elérési úttal megadva, archive módban tömörítve menti a hálózati gépre.

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 időbélyegeinek 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 filenev.tar.gz : Kitömöríti a gz-t, majd a tar-t, és egy /filenev könyvtárba teszi

-xvfj filenev.bz2 : 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.

-cvzf mentes.tar.gz /eleresi/ut/amit/mentunk : az elérési útvonal alatt levő adat gzip-be tömörítése.

-cvjf mentes.tar.bz2 /eleresi/ut/amit/mentunk : az elérési útvonal alatt levő adat bz2-be tömörítése.

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.: ESC, majd :q!

vi -b +/mikulas fájl # b : Bináris állomány szerkeszthetőségét teszi lehetővé és +/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)

watch cat file # A file változásait figyeli, 2 másodperces időközönként frissítve.

 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 vagy 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

-s /bin/false : Alapértelmezésként nem kap shell-t bejelentkezéskor.

-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 # File név, relatív elérési útvonal, méret, hozzáférési jogok, access, modify, change, UID, GID, egyéb hasznos infók kiíratása

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.

pstree # Folyamat struktúra fa-szerű ábrázolása.

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

Az /etc/inittab -ban állítható be a gép indulási init szintje. Az /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.

 Daemonok kezelése.:

/etc/init.d/daemon_nev start: daemon indítása

/etc/init.d/daemon_nev stop: daemon leállítása

/etc/init.d/daemon_nev restart: daemon újraindítása

/etc/init.d/daemon_nev status: daemon status infók kiíratása

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)

-h 12:00 & : A gép kikapcsolása 12:00-kor.

-c : Az időzített kikapcsolási folyamat megszakítása

-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

crontab -l : kilistázza a belépett beállított ütemezéseit

crontab -e : Editáljuk a belépett user ütemezéseit

@reboot parancs : A következő indításnál lefutó parancs.

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

parancs & # parancs háttérbeli futtatása

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 itt.

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

Forrásból telepítésnél használatos parancsok

./configure

make

make install

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

-s kapcsoló esetén csak szimulálja a megadott feladatokat.

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

dpkg –get-selections > /eleresi/ut/csomagok.txt : TXT-be mentjük a feltelepített csomagok neveit.

dpkg –set-selections < /eleresi/ut/csomagok.txt : a TXT-ből kiolvassa a felsorolt csomagokat.

apt-get -y update

apt-get dselect-upgrade

Első lépésben a feltelepített csomagok listáját a csomagok.txt-be mentjük. Második, harmadik, negyedik lépésben pedig a telepített sw.-k listájában felsorolt csomagokat telepítjük rendszerünkre.

dselect # A dpkg barátságosabb arca

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)

iptables

A Netfilter (hálózati csomagok feldolgozására szolgáló eszköz) kezelője.

Az iptables a hálózati csomagok feldolgozási szabályait szerepük alapján szervezett táblák formájában kezeli.

Szerepek (táblák – a feldolgozási folyamat típusát jelentik).:

Csomagszűrés (filter)

Hálózati címfordítás (nat)

Egyéb csomagmódosítás (mangle)

Ezen táblák mindegyikére feldolgozási szabályok (rules) lánca (chain) vonatkozik.

A szabályok illesztésekből (match – mely csomagokra vonatkozik,) és célokból (target – mit kell

tennünk az illeszkedő csomaggal) épülnek fel.

Az iptables öt kapcsolódási pontot határoz meg a feldolgozás során.:

PREROUTING : A hálózati csatolótol kapott csomag, még az INPUT lánc előtt ide kerül.

INPUT : Épp mielőtt megérkezne a csomag egy helyi folyamathoz. (itt illik szűrni a bejővő forgalmat)

FORWARD : Egy átjáró gépen a továbbított csomagok itt áramlanak keresztül

OUTPUT : Miután egy helyi folyamat létrehozta a csomagot, itt távozik (kimenő csomag szűrés!)

POSTROUTING : Mielőtt elhagyná a hálózati csatolót a csomagunk, az OUTPUT lánc után.

A táblák, és beépített láncaik:

filter: FORWARD, INPUT, OUTPUT

nat: PREROUTING, OUTPUT, POSTROUTING

mangle: PREROUTING, FORWARD, INPUT, OUTPUT, POSTROUTING

A láncok házirendje (policy).:

Ezt a policy-t lánconként (INPUT, OUTPUT, FORWARD) a tűzfal szkriptünk legelején fixálnunk kell. Azok a csomagok, amelyek a tűzfal láncaiban felsorolt szabályokra nem illeszkednek, azokra a default policy vonatkozik, azaz vagy ACCEPT, vagy DROP. Pl.: Ha a tűzfalunk INPUT láncában csak a 80-as portot engedéjezzük, a policy-nk pedig DROP, akkor minden más porton érkező csomagot (amely nem illeszkedik a 80-as portra) eldob.

Lánc műveletek, szabály módosítások:

-N : új lánc létrehozása

-X : üres láncok törlése

-P : default policy beállítása

-L : a láncok szabályainak megjelenítése

-F : a lánc összes szabályának törlése

-A : új szabály hozzáadása egy lánchoz

-D : törlés az adott láncból

Forrás (-s, –source, –src) és célcímek (-d, –destination, –dst) megadásának módjai.:

Teljes név használata.: localhost, vagy pl.: www.debian.org

IP cím meghatározása.: 127.0.0.1

IP cím tartomány(ok) megadása.: 192.168.1.0/24 vagy 192.168.1.0/255.255.255.0

Mindkét tartomány 192.168.1.1-től 192.168.1.254-ig fedi le az IP címeket.

Inverz módon is megadhatunk forrást és célt, “-s !” localhost” formájában.

Protokollok megadása.:

-p TCP vagy UDP vagy ICMP formájában történik. Itt is alkalmazható az inverz, azaz “-p ! TCP”, minden csomagra illeszkedik a szabály amely nem TCP.

Interface meghatározása.:

Az interface maga a fizikai eszköz amelyen bejön, vagy távozik a csomag.

INPUT láncon “-i eth0″ értelmezhető, nincs kimeneti interface-ük.

OUTPUT láncon “-o eth0″ adható meg, “-i” kapcsolóra egy csomag sem fog illeszkedni.

FORWARD láncon alkalmazhatóak a “-i eth0″ és “-o eth0″ interface-ek.

Alkalmazható joker karater az interface-eknél, ez a “+” jel. “-i eth+” -> az összes eth iface.

Portok, port tartományok megadása

A portok megadhatóak számmal, vagy névvel. (utóbbi esetben.: /etc/services).

Port tartományokat “port:port” formában kell alkalmaznunk. Invertálás itt is alkalmazható.

–source-port és –sport : a csomagok forrásportját adjuk meg

–destination-port és –dport : a csomagok cél portját határozuk meg.

darkstat # Hálózati statiszkikák gyűjtésére szolgáló program.

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.

iperf # Sávszélesség korlátozásra használatos program.

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

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

iptstat # Top-szerű hálózat elemző eszköz.

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?

netstat-nat # Nat-olt kapcsolatok megjelenítésére szolgáló eszköz.

-n : Nem fordítja le a megjelenített IP-ket Hostname-ekre.

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

sntop # Top-szerű hálózati forgalom figyelő szoftver.

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/

trickle # Sávszélesség korlátozásra használatos program.

-u 100 -d 200 proftpd : A proftpd démon számára biztosít 100KB fel, 200KB letöltési sávszélt.

tsclient # Terminal Services Client

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

vconfig # virtuális eth eszközök létrehozására alkalmas program. (repo.-ból telepíteni kell!)

vconfig add eth0 1 : az eth0.1 eszköz hozzáadása, majd fel kell vennünk a /etc/interface-s-be!

 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)

wondershaper # Egyszerű sávszélesség korlátozásra használatos program.

ethX 1024 1024 : Az ethX eszköz részére biztosít 1024Kbit fel és letöltési sávszélt.

ethX clear : Törli a beállításokat.

 

 

 

 


Források:

http://www.letix.hu

 


5 responses to Linux parancsok – kezdőknek, haladóknak (folyamatosan frissül)

  1. Lementettem az oldalt, de azt hiszem ráteszema pendrájvjaimra is. Köszönöm szépen, így összeszedve még sehol nem láttam ezeket a parancsokat!

  2. Csatlakozom Attilahoz, marmint a gratulacioban …. es a lementesben is!

    Meg ilyent ha lehet, salangmentesen, osszeszedetten a lenyeg, bravo!

  3. A tartalomért főként Letix-nek jár a köszönet és azért, hogy beleegyezett az oldalon megjelentetésbe. Van még jó néhány feldolgozásra váró tartalom ebben a témában, de jelenleg idő hiányában vagyok.

  4. Köszönöm, nekem is jól jött.

  5. Örülök, hogy tetszik! :)




Szólj hozzá

Email cím (nem tesszük közzé) A kötelezően kitöltendő mezőket * karakterrel jelöljük


*

A következő HTML tag-ek és tulajdonságok használata engedélyezett: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>