Ebben a cikkben bemutatom a Linux alap parancsait és használatukat és egyéb olyan információkat amikre szükség lehet. Kezdőknek tökéletes lehet, illetve akkor sem jön rosszul ha van egy vps-ünk és konzolból szeretnénk managelni vagy bármilyen munkát kell linuxon végeznünk.

 

man parancs
# A parancs manual oldalait nyitja meg, rövid, tömör, célratörő leírás

man -L en parancs
# parancs manual oldalainak angol nyelvű megjelenítése

apropos szó
# Minden olyan parancsot megad, mely manual oldalaiban szerepel a “szó”

man -k 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 a 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ása megtalálható,
# általában html formátumban is.

Fontos! Nem minden (a leírásban felsorolt) parancs tartozéka egy alaprendszernek, előfordulhat hogy telepítened 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átható, ahogy a rendszer “é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 kaphatsz processzorodró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

pwd
# Az éppen aktuális könyvtár munkakönyvtár kiíratása

cd
# Könyvtár váltás parancs
cd : az aktuális felhasználó /home könyvtárába való belépéshez
cd .. : az aktuális könyvtárhoz képest egy szinttel feljebb lépés a könyvtár fában.

mkdir
# Könyvtár létrehozása (make directory)
-p /home/user/1/2/3 : A teljes struktúra létrehozása, almappákkal együtt.

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)

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

tree
# Könyvtárstruktúrát írja ki
-d : csak a mappákat adja meg.
-f : teljes path-al írja ki a file-ok elérési útvonalát

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)
–mime file: A file karakterkódolását mutatja meg.

cp
# Fájl, könyvtár másolásra használható program
file1 file2 : file1 állományból készít file2 nevű másolatot file1 megtartásával
-R /honnan/mit /hova : rekurzívan mindent másol a /honnan/mit-ből a /hova mappába

cat
file : Fájl tartalmát írja ki.
> file : várja a bemenetet, amely a “file” tartalma lesz. Ctrl + D kombinációval menthető.
-n filel: beszámozza a filel sorait
??.sh : Minden .sh kiterjesztésű, 2 betűs file tartalmát kiírja a képernyőre.

/dev/cdrom > /eleresi/utvonal/cd.iso : A CD tartalmának ISO-ban örténő mentése.
/etc/passwd |grep “/home” | cut -d: -f1 : A rendszerbe felvett felhasználók kiíratása

cat < bemenet.txt > kimenet.txt
# a cat beolvassa a bemenet.txt tartalmát és a kimenet.txt-be irányítja.

cat file.txt 1> file2.txt 2>&1
# A hibacsatorna is a kimenetre keverhető, azaz a file1.txt tartalma ÉS a lehetséges hibák
# is bekerülnek a file2.txt-be. A hibacsatornáról a bash programozás részben bővebben.

echo szoveg
# Kiírja a képernyőre a szoveg-et
echo szoveg > file : a szoveg-et file-ba írja
echo $HOME : $HOME nevű változó értékét adja meg, ami az aktuális user home-ja. pl /home/letix

touch file
# létrehoz egy file nevű ü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
-r file file2 : file időbélyegei alapján állítja be file2 időbélyegeit.
-a -t 03091315 file : a file létrehozási dátumát állítja Március 9., 13:15-re.
-m -t 03091315 file : a file módosítási dátumát állítja Március 9., 13:15-re.

find dir/ -name “*.*” -exec touch {} \;
# dir nevű mappa összes állományának módosítási dátumát megváltoztatja az aktuális dátumra.

du
# Az aktuális könyvtár fájljainak méretét adja meg
-H : Olvashatóbb formátumban írja ki a méreteket (MByte, GByte, stb.)
–si : A -h helyett már ezt a kapcsolót ajánlatos használni.
–max-depth=1 : 1 könyvtár mélységig vizsgál

df
# Szabad terület számítása, partíciónként
-H : Olvashatóbb formátumban írja ki a méreteket (MByte, GByte, stb.)
–si : A -H helyett már ezt a kapcsolót ajánlatos használni.

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.

find -iname *.avi -a -size +1000M -o -iname *.ISO -a -size +500M
# Keresési feltételek.: avi kiterjesztésű ÉS 1000MB fölötti, VAGY ISO kiterjesztéső ÉS 500MB fölötti file-ok.
# (Kis-nagy betű nem számít a kiterjesztésben.)

find . -name “*.txt” -print | xargs grep “tcp80”
# a gyökérben olyan txt állományokat keres, melyek tartalmában szerepel a “tcp80” kifejezés

chmod
# Linuxon a fájlokra, könyvtárakra vonatkozó jogok állíthatóak be ezen paranccsal
-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
#
# Általános jogosultság lista felépítése: (ls -la paranccsal lekérdezhető)
# tulajdonos (jele:U) | csoport felhasználó (jele:G) | mindenki más (jele:O)
# rwx | rwx | rwx
#
# A sor elején található “d” a directory, “-” a file jele.
# Jogok nem csak szimbólikus jelekkel de számokkal is meghatározhatóak.
#
# 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. (4+2+1 4+2+1 4+2+1)
chmod 751 file : U-nak minden, G-nek írási és futtatási, O-nak futtatási jog.

# Betűkkel.: kinek+mit
#

chmod u+rwx file : Tulajdonosnak (U) r,w,x jog adása az adott file-ra.
chmod g+rx file : Csoport felhasználónak (G) r,x jog beáll.
chmod a-rwx : Mindenkitől (A-all) elveszünk minden jogot.

umask
# A file és könyvtár jogok beállítása kapcsán érdemes megemlíteni az umask-ot.
# Az umask meghatározza, hogy milyen jogosultságot kapjanak az újonnan létrehozott file-ok, mappák.
# Értéke alapértelmezés szerint 022.
# Jelentése.: File-ok 644-et, Mappák 755 jogokat kapnak.
# File-ok esetén 666-ból,
# Mappák esetében pedig 777-ből kell levonni a 022-t, így kapjuk meg a jogokat.

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 küld vissza hibaüzenetet a rendszer, ha valami nem sikerült
–no-dereference : Szimbólikus linkeknél a link jogosultságainak beállítása
–dereference : Szimbólikus linkeknél a file (amire a link mutat) jogok változtathatóak meg.

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ó

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
-d: -f1 : Kettősponttal elválasztott sorokban az első helyen lévő adatot adja vissza.

echo ELSO:MASODIK:HARMADIK | cut -d: -f1
ELSO

colrm
# Fájlból oszlopok távolíthatóak el
1 5 file: adott bemeneti állomány első oszloptól az ötödikig töröl minden sorból

letix@microserver:~$ cat colrmtest
1234567890
2345678910
3456789101
letix@microserver:~$ cat colrmtest | colrm 1 5
67890
78910
89101

diff -u file1 file2 > eredmeny
# Összehasonlítja a fájlok tartalmát, a különbséget pedíg az eredmény-be írja

–y -–left-column file1 file2
# file1 és file2 összehasonlítása, az eredményt két egymás melletti oszlopba írja,
# de az egyezőségeket csak a bal oszlopban tűnteti fel.

tr
# karakterek lecserélése, változtatása adott karaktersorban
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 kitörli az e betűket

cat file.txt | tr -cs ‘[a-zA-Z0-9]’ ‘[\n*]’ > file2.txt
# ha a file.txt több szóból álló szöveget tartalmaz, a szavak mögötti szóközt újsor karakterre cseréli,
# azaz minden szó új sorba kerül egymás alá, a file2.txt-be irányítva

cat file.txt | tr -s ‘\n’ > file2.txt
# Ha a file.txt-ben több üres sor is van, az összes újsor karaktert összevonja, azaz üres sorokat töröl.

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. A kapcsolók után kell megadni a file-t.
-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
-L : azokat a fájl neveket adja meg, melyben nem szerepel a “minta”.
-v : azokat a sorokat adja meg, amikben nem szerepel a keresett szó
-e : “-” -el kezdődő minta keresésekor hasznos kapcsoló. (nélküle érvénytelen kapcsoló hibát dob.)
-x : csak teljes sorokkal való illeszkedést vizsgál.
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ű.
1[5678]: azon sorok megadása, melyben szerepel 15,16,17,18
1[5-8] : azon sorok megadása, melyben szerepel 15,16,17,18
[^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.
A[-]4 : olyan sorokat ad vissza, melyben A-4 karaktersor szerepel

-i -E ‘(ertek1|ertek2)’ file : ertek1 vagy ertek2 -re keresése a file-ban, kis és nagybetű különbség nélkül.
-i -E ‘ertek1|ertek2’ file : ertek1 vagy ertek2 -re keresése a file-ban, kis és nagybetű különbség nélkül.
-i -e ertek1 -e ertek2 file : ertek1 vagy ertek2 -re keresése a file-ban, kis és nagybetű különbség nélkül.

-A1 B1 ertek file : a file-ban az ertek-et tartalmazó sorokat adja meg úgy, hogy az egyel előtte és
: utána levő sorokat is kiírja

-r minta /etc : azon fájlok elérését és illeszkedő sorait adja meg a /etc-n belül, melyben szerepel
a minta.

grep ‘^[^#;]’ /etc/samba/smb.conf
# smb.conf tartalmának kiíratása úgy, hogy a # ÉS ; jelekkel kezdődő sorokat nem írja ki.

# 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 100 fájl : A fájl első 100 sorát adja meg
-n-7 fájl : utolsó 7 sort már nem írja ki
-n+4 fájl : A fájl első 4 sorát írja ki. (megadható “-n 4”-el és “-n4”-el is. Az előjel mindig pozitív.)
-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 lehet kiíratni

paste
# adatoszlopok vagy adatfájlok oszlopainak összemásolása egymás mellé tabulátorral
# file1 tartalma: Peti
# Jeno
# Anna
# file2 tartalma: 1980
# 1950
# 2007
# file3 tartalma: December
# Februar
# Julius

paste file[123]
# file1,2,3 állományok oszlopainak osszemásolása
# Kimenet:

Peti 1980 December
Jeno 1950 Februar
Anna 2007 Julius

paste -d ‘:’ file[123]
# ugyanaz mint a fenti, de tabulátor helyett “:” az elválasztó.

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

sed ‘/ *#/d; /^ *$/d’ file
# a file-ból kiszűrjük a kommenteket, üres sorokat.

sed ‘s:/mnt/test:\\\\server\\share:g’ file > out
# file ban található /mnt/test elérési útvonalakat cseréli \\server\share -re az out file-ba
# irányítva.

sed s/DST=// file
# file tartalmának kiíratása úgy, hogy a DST= karaktersort kihagyja.

sed -n ‘/aaa/,/cdn/p’ file
# adott file-ban a kezdő “aaa” és végző “cdn” sorok közötti sorokat adja meg, beleértve a kezdő és végző sort is.
# fontos, hogy az “aaa” illeszkedni fog “aaaa” vagy “aaaaa”-ra is!

# a file tartalma:
zdk
aaa
b12
cdn
dke
kdn

# a fenti parancs kimenete:
aaa
b12
cdn

# ugyanez awk-val:
awk ‘/aaa/,/cdn/’ file

sed -n ‘/^aaa$/,/^cdn$/p’ file
# ugyanaz mint a fenti sed parancs, annyi különbséggel, hogy a kezdő és végző karaktersor pontosan az lehet ami, tehát
# itt már az “aaa” nem fog illeszkedni az “aaaa”-ra.

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 csak egyszer írja ki
-k 2 fájl : 2 oszlopos file-ban a második oszlop alapján rendezi sorba
-k 2.2 fájl : a fájl 2. oszlopának második karaktere alapján rendez
-k 3.3,3.5 fájl : a fájl 3. oszlopának 3,4 és 5. karaktere alapján rendez

rev (reverse lines)
# adott állományban a karakterek sorrendjének megfordítása

cat file4
ABCDEFGH
12345678
rev file4
HGFEDCBA
87654321

nl (number lines of files)

# file-ok soronkénti beszámozása.
-n ln : sorszámozás balra zárt, nullák nélkül
-n rn : sorszámozás jobbra zárt, nullák nélkül
-n rz : sorszámozás jobbra zárt, nullázva
-w4 : rz kapcsolóval együtt a nullák számát lehet megadni
-s: : separator “:”

nl -n rz -w4 -s: file1
0001:Peti
0002:Jeno
0003:Anna

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

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

mc
# Midnight Commander fájlkezelő

mcedit
# Az mc szövegszerkesztője

update-alternatives –config editor
# Alapértelmezett szövegszerkesztőnket a fenti paranccsal tudjuk módosítani (pl mcedit-re)

mkisofs
# Hasznos segédprogram ISO-k készítéséhez.
# korábbi verziókban cdrtools csomag tartalmazza!
-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.

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

ln -s
# Szimbolikus link létrehozása
-s fájl1 fájl2 : fájl1 ről készít fájl2 nevű soft-link-et.

readlink
# szimbolikus link tartalmának kiíratása

letix@debian-ssd:~$ ln -s /home/letix/raidtest/testlink link
letix@debian-ssd:~$ readlink link
/home/letix/raidtest/testlink

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

yes > file
# Csupa y-t ír a file-ba, elég gyorsan. 🙂

false
# nem csinál semmit, sikertelenül. Visszatérési értéke 1

true
# nem csinál semmit, sikeresen. Visszatérési értéke 0

letix@debian-ssd:~$ false
letix@debian-ssd:~$ echo $?
1
letix@debian-ssd:~$ true
letix@debian-ssd:~$ echo $?
0

updatedb
Adott gépről, vagy felcsatolt eszközökön található adatokról adatbázis készítése, melyben az
mlocate/locate parancsokkal könnyen és gyorsan lehet keresni.

Adatbázisa : /var/lib/mlocate/mlocate.db
Paraméterei : /etc/updatedb.conf

pl.:
PRUNENAMES : bizonyos kiterjesztésű állományokat ki lehet hagyni a vizsgálatból. pl: .svn
PRUNEPATHS : megadható, mely mappákban ne keressen. pl: /tmp
PRUNEFS : definiálható, mely fájlrendszereket hagyjon figyelmen kívül. pl: CIFS

locate fájl
# általánosan létrehozott updatedb adatbázisában (/var/lib/mlocate/mlocate.db) keres fájl-t

updatedb -l 0 -o dbdir/dbname.db -U /mnt/server
# /mnt/server felcsatolt fájlrendszer tartalmáról adatbázis készítése dbdir/dbname.db állományba
# Ezesetben lokális meghajtókról nem készül bejegyzés, csak a server-ről!

locate -d dbdir/dbname.db macilaci
# a fent létrehozott dbname.db-ben olyan állományokat keres, melyeknek a nevében szerepel macilaci

locate -d dbdir/dbname.db –statistics
# dbname.db nevű adatbázis statisztikáinak megjelenítése

Database /var/lib/mlocate/mlocate.db:
6146 directories
57770 files
3564748 bytes in file names
1612746 bytes used to store database

locate / >/tmp/locatedb.txt
# a teljes fájlrendszerről készít listát a megadott text állományba.

 

Fstab állomány

Az /etc/fstab fájl definiálja, hogy a diszkek partícióit, más blokkos eszközöket, vagy távoli fájlrendszereket
hogyan csatolunk a fájlrendszerbe, Pl a mount parancs is ezen beállító állományt használja.
Ha az fstab helyesen van kitöltve, a mount-al elég csak az eszközt megadni, pl mount /dev/sdb7

Felépítése
file system mount point type options dump pass
/dev/sda1 / ext4 defaults,noatime 0 1
/dev/sda2 none swap defaults 0 0
/dev/sda3 /home ext4 defaults,noatime 0 2

file system : csatolandó partíció vagy tároló eszköz
mount point : csatolási pont
type : fájlrendszer típusa (pl: ext2-3-4, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap)
options : csatolási opciók, melyek csak az adott csatolásra érvényesek
auto : automatikus csatolás indításkor. inverze: noauto
exec : bináris futtatható fájlok végrehajtásának engedélyezése. inverze: noexec
ro : read-only, azaz csak olvasható lesz a felcsatolt fs.
rw : írás és olvasás engedélyezett
user : bármely felhasználó felcsatolhatja az adott eszközt. inv: nouser, azaz csak root.
users : a users csoport tagjai felcsatolhatják az eszközt.
owner : csatk az eszköz tulajdonosa csatolhat
sync : I/O műveletek szinkronban zajlanak le. inv: async
dev : speciális blokkeszközök használata. inv: nodev
noatime, nodiratime : file-ok, mappák elérési, módosítási adatait nem menti.
discard : TRIM parancsok futtatása az adott blokkeszközön. SSD lemezeknél ajánlatos.
nofail : amennyiben az eszköz nem elérhető, úgy nem vesz róla tudomást a rendszer. (pl külső HDD)
defaults: alaértelmezett beállítás. Tartalma: rw, suid, dev, exec, auto, nouser, async
dump : Értéke: 0 vagy 1. Készüljön-e az fs-ről biztonsági másolat vagy sem. Általában 0 -> nem.
pass : Értéke: 0,1,2. Lemezellenőrzés (fsck) prioritásának beállítása. Rootfs 1, minden mást érdemes 2-re.

Lemezek azonosítása
-Kernel leíró alapján : pl /dev/sda
-UUID alapján : ls /dev/disk/by-uuid vagy lsblk -f
-label alapján : ls /dev/disk/by-label

lsblk
# List block devices – diszkek és a rajtuk lévő partíciók alapvető információi (name, fs, size, type, mount point…)
-f : UUID információkat is megadja
/dev/sda : sda eszköz partíciói
-no UUID /dev/sda : az eszköz partícióinak felsorolása UUID alapján

pl:NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 16G 0 disk
\sda1 8:1 0 487M 0 part [SWAP]
\sda2 8:2 0 7.5G 0 part /

Szóköz kezelése fstab-ban
Szóköz használata esetén a „\040” karaktert szükséges az elérés útvonalba szúrni a szóköz helyére.
External Storage esetén az fstab-ba irandó:

/mnt/External\040Storage

lsblk -io KNAME,TYPE,SIZE,MODEL,VENDOR
# beépített eszközzel a HDD-k adatainak lekérdezése

udevadm info –query=all –name=/dev/sda
# ugyanez.

mount
# Szimplán kiadva a rendszerbe felcsatolt eszközök listáját adja meg. (/etc/mtab file is)

/dev/hda2 /mnt/usbhdd
# hda2-es eszközt csatolja fel a usbhdd könyvtárba (létre kell elötte hozni!)
# IDE csatolófelülető eszközöknél volt használatos a Hda

-o noatime /dev/hdX
# noatime attribútummal csatlakoztatja a lemezt. (I/0 művelet csökkentés!)

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

-t ntfs-3g /dev/sdb1 /mnt/ntfs
# ntfs-3g csomag telepítését követően a /dev/sdb1 (NTFS fájlrendszerű) eszköz felcsatolása /mnt/ntfs-be.

-t vfat /dev/sdc1 /mnt/usb
# vfat rendszerű (általában a FAT/FAT32 pendrive-ok ilyenek) felcsatolása /mnt/usb-re

-t cifs -ro username=NEV,password=JELSZO //server/megosztas /mnt/hova
# CIFS fájlrendszert csatolunk read-only módban a server megosztásából, USER/JELSZO nevében.

-t cifs //192.168.1.1/D$ /mnt/cifs -o username=admin,password=password
# CIFS fájlrendszer felcsatolása a 192.168.1.1 D$ adminisztratív megosztásából a megadott helyre a megadott névben.
#
# FONTOS:
# Windows 7 esetében csak azt követően működik a felcsatolás, hogy az alábbi registry kulcs fel lett véve!

Hely : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
Típus : Key DWORD (32-bit)
Kulcs : LocalAccountTokenFilterPolicy
Érték : 1

e2label /dev/sda1
# sda1 partíció LABEL értékének kiíratása, amennyiben van.

e2label /dev/sda1 NEWLABEL
# sda1 partícióra új label beállítása

umount /dev/eszköz
# Lecsatlakoztatás

eject
# leválasztja a hordozható eszközt
sda : első SCSI (sata) eszköz leválasztása

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

tar
# Ki-be tömörítő

Listázás
——–
-tvf file.tar : megmutatja a mentes.tar tartalmát
-ztvf file.tar.gz : megmutatja a mentes.tar.gz tartalmát
-jtvf file.tar.bz2 : megmutatja a mentes.tar.bz2 tartalmát
-tvvf mentes.tar : részletes listázás, jogok, tulajdonos etc.

Betömörítés
———–
-cvf file.tar /eleresi/ut : az elérési útvonal alatt levő adat tar-ba tömörítése.
-zcvf file.tar.gz /eleresi/ut/amit/mentunk : az elérési útvonal alatt levő adat gzip-be tömörítése.
-jcvf file.tar.bz2 /eleresi/ut/amit/mentunk : az elérési útvonal alatt levő adat bz2-be tömörítése.

Kitömörítés
———–
-xvf file.tar : Kitmöröíti a tar-t és egy /file mappába teszi
-zxvf file.tar.gz : Kitömöríti a gz-t, majd a tar-t, és egy /file könyvtárba teszi
-jxvf file.bz2 : bzip2-t tömöríti ki

Exclude példa
————-
-zcvf file.tar.gz /home/mit/ –exclude={„/home/MIT_NE”,”/home/MIT_NE2”}
# /home/mit mappa tartalmát betömörítjük gzip-be, kivéve /home/MIT_NE, /home/MIT_NE2-t.

tar jcvf – sourcedir/ | ssh user@IPADDRESS “cat > /home/user/destdir/test.tar.bz2”
# tar over ssh, azaz lokális állományok betömörítése és ssh-n történő átmozgatása távoli gépre

# jcvf : verbose kimenettel tar.bz2-t készít
# sourcedir : ezen mappa tartalmának betömörítése
# ssh user1@.. : user nevében bejelentkezik az IPADDRESS című gépre
# cat > .. : user felhasználó adott mappájába menti a tar.bz2 állományt.

mcrypt file.txt
# mcrypt-el történő jelszóval védett file titkosítás. (mcrypt csomag telepítése szükséges)
# a kimeneti állomány file.txt.nc, tartalma visszafejtés nélkül olvashatatlan.

mdecrypt file.txt.nc
# fentebb titkosított file.txt.nc állomány visszafejtése
# érdemes az eredeti file.txt-vel nem azonos mappában kiadni visszafejtési parancsot, ugyanis
# felülírhatja az eredetit.

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é
+/mikulas : a fájl-ban a mikulas kifejezéshez ugrik

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.

alias
# A parancsok saját elképzelések szerint átnevezhetőek.
# /home könyvtár .bashrc fájlja tartalmazza beállításokat.
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.)

Kvóták beállítása Linux alatt

APT-vel szükséges telepíteni a quotea 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
# kvótabejegyzések listázása felhasználónként.

edquota -u user
edquota -g group
# Felhasználó, csoport kvóták beállítása
# Alapértelmezett szerkesztő átmeneti állományaként állítható 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 szükséges az options-be megadni: usrquota, grpquota kapcsolókat.

 

Rendszeradminisztráció

login
# Bejelentkezés

logout
# Kijelentkezés

who
# Bejelentkezett felhasználók kiíratása

w
# Nemes egyszerűséggel megmutatja, ki van belépve, és mit csinál

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)

adduser –home /dev/null –shell /bin/false –no-create-home –uid 65533 –disabled-password guest
# home, shell és jelszó nélküli guest account létrehozása (pl samba guest userhez..)

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
-d /home/user : A felhasználó HOME mappáját állítjuk be /home/user -re.
-s /bin/false : Alapértelmezésként nem kap shell-t bejelentkezéskor.
-G csoport1,csoport2 : vesszőkkel elválasztva, ha egyéb csoportnak is tagja a felhasználó
-m -k /home/letezo uj : 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 1110 user : a felhasználó azonosítóját változtatja 1110-re (UID)
-g csoport user : a felhasználó csoportját változtatja
-g user1 group1 : user1 elsődleges csoportja legyen group1
-G grp1,grp2 user : user felhasználót több (másodlagos) 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
-s /bin/false user : adott user shell tulajdonságának módosítása /bin/false-ra.
-m -d /home/def user1 : user1 home mappájának módosítása def-re.

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 csoportjait adja meg.

id -nG user
# Szintén.

groupmod
# Csoport fiókját változtatja
-n név újnév : csoport nevét változtatja

gpasswd
# Csoport adminisztráció.
groupka : groupka nevű csoport létrehozása
-a Peti groupka : Peti nevű user-t hozzáadja groupka csoporthoz.
-d Peti groupka : Peti-t kitörli groupka csoportból

history
# Sorszámozottan megadja az utolsó N parancsot, amit az aktuális felhasználó adott ki. (default: 500)

cat /home/username/.bash_history
# username nevű felhasználó saját history-jának kiíratása, root-ként engedélyezett

!n
# n-edik sorszámú parancs újra futtatás

!-n
# n-el korábbi parancs futtatása

!!
# legutóbbi parancs újra futtatása

history -c
# clear history

export HISTTIMEFORMAT=’%F %T ‘
history
# “EV-HONAP-NAP Ora:Perc:Masodperc Parancs” formátumban kapjuk meg a history kimenetét

unset export HISTTIMEFORMAT
# visszaállítás az eredeti állapotra/kimenetre

export HISTCONTROL=ignoredups
# duplikálás kiszűrése. Kikapcsoláshoz szintén unset export..

export HISTSIZE=0
# history kikapcsolása

Perzisztens beállításhoz
———————-
/home/username/.bash_profile file-ba fel kell venni a fenti sorokat.

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)

last
# Ki jelentkezett be utoljára és honnan (felhasználó vagy terminál alapján)

lastlog
# /var/log/lastlog kimenete

locale
# Kiírja az aktuális lokalizációt

dpkg-reconfigure locales
update-locale
# Újra konfiguráljuk a locales-t, ezáltal új nyelveket használhatunk a rendszeren alapértelmezettként.
# A második sor is kötelező.

passwd
# A bejelentkezett felhasználó jelszavának módosítása
# Userként kiadva saját jelszavunkat változtatjuk meg. A régit tudnunk kell hozzá.
user : user nevű felhasználó jelszavát változtatja meg. root-ként, nincs szükség a régi jelszó megadására.
-l user : lock user account. user jelszavát ideiglenesen megváltoztatja egy random karaktersorra.
-u user : unlock user account.: Az eredeti jelszót visszaállítja user számára.
-e user : expire. A user jelszavának azonnali lejárata. Következő belépésnél új jelszót kell adnia.
-S user : status. Státusz információk kiírása. 7 mezőből áll melynek értékei.:
# 1.: Usernév,
# 2.: L-locked, NP-No Password, P-Password
# 3.: Utolsó jelszó váltás dátuma
# 4.: min. év. (napokban)
# 5.: max. év (napokban)
# 6.: figyelmeztetési periódus (napokban)
# 7.: inaktív periódusa a jelszó tekintetében.

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

cfdisk
# Lemezkezelő, partícionáló

fsck
# lemezellenőrző

smartctl
# HDD vizsgálatára, SMART értékek figyelésére alkalmas program.
# smartmontools csomag tartalma, telepítenünk kell repo-ból.

-i /dev/sda : Eszközinformációk kiíratása.

# Ha a SMART support nincs bekapcsolva az eszközön, az alábbi paranccsal kapcsolhatjuk be.:
-s on /dev/eszköz

-A /dev/sda : Attributum táblák megjelenítése. Legtöbben ezekre az értékekre vagyunk kíváncsiak.
-t long VAGY –test=long /dev/sda : sda eszköz teljes vizsgálata
-t short VAGY –test=short /dev/sda : sda eszköz gyors vizsgálata

# Az eredményeket utóbbi két esetben az alábbi paranccsal nézhetjük meg.:
-l selftest /dev/sda

-H /dev/sda : Az sda eszközünk jó-e vagy sem?
–all /dev/sda : Minden SMART információ kiíratása.

tty
# Bejelentkezett felhasználó terminál információi

stty
# A terminál beállításainak kiíratása
-a : verbose mód

uname # Rendszerinformációk megadása.
-a : minden információ kiírása. Linux, kernel verzió, node name (hosztnév), stb.
-r : csak a kernel verziójának megadása, pl.: 3.2.0-4-686-pae

lsb_release -a
# Adott distribúció információinak kiíratása

cat /etc/debian_version
# Debian verziójának kiíratása

write user tty
# Egy Linux gépre bejelentkezett felhasználónak üzenet küldésre szolgáló parancs

mesg
# A write üzenetküldő aktuális beállítását kérdezhetjük le. (engedélyezve vagy tiltva van)

mesg n
# A write üzenetküldő tiltása

mesg y
# A write üzenetküldő engedélyezése

mkswap
# Swap terület létrehozása

swapon
# Swap bekapcsolása

swapoff
# Swap kikapcsolása

sync
# A Ramból a merevlemezre még ki nem írt adatok szinkronizálása (Fontos)

Folyamatok

command &
# command futtatása a háttérben
fg “sorszám” : felélesztés, majd előtérben futás
bg “sorszám” : felélesztés, majd háttérben futás

Ctrl+Z
# Előtérben futó process (pl mcedit) háttérbe helyezése.

Ctrl+C
# Félresikerült/megakadt process bezárására használható billentyű kombináció

jobs
# Háttérben futó programok kiíratása
# Az itt megkapott értékek használhatóak az fg, bg parancsoknál.

command1 && command2
# command1 sikeres futását követően command2 is lefut.
# Amennyiben command1 visszatérési értéke nem 0 (tehát sikertelen), úgy az utána
# soron következő parancs(ok) nem fut(nak) le

letix@microserver:~/test$ ls && echo masodik parancs sikeres
dir1 dir2
masodik parancs sikeres
letix@microserver:~/test$ ls dir3/ && echo masodik sikeres
ls: dir3/ nem érhető el: Nincs ilyen fájl vagy könyvtár

top
# Futó folyamatok kiíratása

h : help
u : felhasználókra szűrhető lista
z,b : a táblázat színezése, illetve kivastagítása
Z,B : a táblázat színeinek, kivastagíthatóságának módosítása
l,t,m : a lista fejléce, terhelési adatok, egyebek jeleníthetőek meg/kapcsolhatóak ki

pidof folyamat
# A folyamat azonosítóját adja meg (PID – process ID)

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.
fax : fa-szerű struktúrában jeleníti meg a folyamatlistát

-o user,pid,ppid,start_time,uid,%cpu,%mem,cmd
# felhasználónév, processid, parent processid, kezdési idő, CPU, MEM, kapcsolók
# formában adja meg a folyamatokat.

USER PID PPID START UID %CPU %MEM CMD
letix 19284 19283 10:39 1000 0.0 0.1 -bash
letix 22095 19284 14:33 1000 0.0 0.0 ps -o user,pid,ppid,start_time,uid,%cpu,%mem,cmd

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

pgrep
# Folyamatlista szűrése adott minta alapján
-u user : megadja user nevében futtatott folyamatok PID-jét
-u user screen : megadja user nevében futtatott screen folyamat PID-jét
-lu 0 : megadja a 0 UID-el rendelkezeő (root) felhasználó folyamatainak nevét és PID-jét

pkill
-9 -u user screen : user nevében futtatott screen folyamat erőltetett leállítása
hasznos lehet, ha többen futtatnak screen-t

kill “pid”
# Folyamat leállítása PID szerint
-1 : jelentése SIGHUP. 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
-l : a teljes signal táblázat kiíratása. Ezek a jelek küldhetőek folyamatoknak
-s “signal” : -l átal megadott táblázatban található signal-ok küldhetőek adott processnek.

letix@microserver:~$ yes > /dev/null &
[1] 22268
letix@microserver:~$ kill -s 6 22268
[1]+ Félbeszakítva yes > /dev/null

killall command
# az összes fehasználó által futtatott “command” nevű folyamat leállítá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

init
# Futtatási szint beállítása (run levels)
# Az egész rendszer állapotjelzője, ami meghatározza, mely szolgáltatások működnek, vagy épp indulnak el
# rendszerindításkor. A futási szintek számokkal kerülnek azonosításra.
# Definiálhatóak különböző szintek annak függvényében, hogy milyen jellegű munkára lesz használva a gép.
# Például ha X-el, bluetooth-al és egyéb erőforrás igényes alkalmazásokkal lesz használva, úgy létrehozható
# egy 5-6-os init szint. Ezt a szintet az inittab-ban szükséges beállítani alapértelmezettként induláshoz,
# de akár a rendszer futása közben is módosítható az aktuális szint. -> Akár több szolgáltatás is indítható vagy
# leállítható egy paranccsal.
#
# Init szintek
# —————

0 : kikapcsolás
1 : single-user mód (speciális rendszeradminisztrációs funkciókra)
2-5 : multi-user mód, (normál működés)
6 : reboot

# Új szolgáltatás hozzáadása
# —————————–
# Program bemásolása /etc/init.d-be, majd erről egy link létrehozása a kiválaszott
# init szint könyvtárába (pl.: rc2.d) Csak akkor indulnak el, ha S betűvel kezdődnek.
# A kezdőbetű után levő számok az induló folyamatok sorrendjét befolyásolják.
#
# /etc/inittab -ban állítható be a gép alapértelmezett indulási init szintje.

The default runlevel.
id:2:initdefault:

# 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

fuser
# Folyamatok azonosítása nyitott file-ok vagy process-ek alapján (érdemes root-ként futtatni)
-v . : aktuális felhasználó folyamatai
-v -n tcp 80 : mely folyamat használja a TCP/80-at?
-vm /mnt/test : megadja azon folyamatot, mely fogja /mnt/test mappát.
-vmk /mnt/test : kilövi azon folyamatot, mely fogja /mnt/test-et
-v /var/run/mysqld/mysqld.sock : mely folyamat használja a mysqld.sock socketet?

root@microserver:/home/letix# fuser -v -n tcp 10000
FELHASZNÁLÓ PID HOZZÁFÉRÉS PARANCS
10000/tcp: root 1764 F…. miniserv.pl
root@microserver:/home/letix# mlocate miniserv.pl
/usr/share/webmin/miniserv.pl

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

-h `date –date “now + 30 seconds” “+%H:%M”`: aktuális dátumhoz képest 30 másodperccel későbbi leállítás kezdeményezése

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, Process ID alapján

cron
# A Linux feladatütemezője
# /etc/cron.d ; /etc/cron.daily ; /etc/cron.weekly
crontab -l : kilistázza a belépett user beállított ütemezéseit
crontab -e : Editáljuk a belépett user ütemezéseit

Cron job paraméterezése
———————–

Perc Óra Hónap napja Hónap Hét napja Parancs
(0-59) (0-23) (1-31) (1-12 v. Jan-Dec) (0-6 v Vas.-Szo.) Parancs

Példák
——

0 2 12 * 0,6 ping 192.168.1.1

Minden hónap minden szombatján és vasárnapján amelyek 12.-ére esnek, 2:00-kor megpingeli a címet.

30 10 * * * ping 192.168.1.1

Minden nap, 10:30 kor megpingeli a címet.

00 1-8,12-17 * * * ping 192.168.1.1

Minden nap, 1:00-től 8:00-ig és 12:00-től 17:00-ig minden óra 0. percében fut

Alkalmazhatunk például vesszőt is, az első rublikába írva “0,30” jelenti minden óra
0. illetve 30. percét, illetve intervallum is megadható.

További példák
————–

@reboot parancs : A következő indításnál lefutó parancs.
@weekly :”0 0 * * 0″ : Hetente egyszer fut le, vasárnap éjfélkor.
@daily :”0 0 * * *” : Naponta egyszer fut le, éjfélkor.
@midnight :”0 0 * * *” : éjfélkor, ekv. az előzővel.
@hourly :”0 * * * *” : Minden egész órakor fut le.

Cron job hibacsatorna /dev/null-ba irányítása
———————————————

0 1 5 10 * /path/script.sh >/dev/null 2>&1

# amennyiben szükséges, hogy az adott job hibacsatornája ne árassza el a /var/log-ot, úgy a fenti
# kivastagított eljárást szükséges alkalmazni

date
# Dátum kiíratása vagy beállítására használatos program
+%F : 2011-11-04 formátumban írja ki az aktuális dátumot.
+%Y%m%d : 20111104 formátumban írja ki az aktuális dátumot.
-d-2day +%F : 2011-11-02 formátumban írja ki a 2 nappal korábbi dátumot.
110411532011 : Beállítja a dátumot November 04., 11:53-ra, 2011-ben. (Honap Nap Ora Perc Ev)

-d ‘+3 hour’ +%Y.%m.%d” “%H:%M.%S : az aktuális dátumhoz kéepst 3 órával későbbi dátumot adja meg 2017.01.05 14:07.12 formátumban.

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 : Egy új VT-t (virtuális terminált) indítható
Ctrl+a+d : bill. kombinációval tehetjő háttérbe.
screen -ls : screen-ek listázása
screen -d -m -S name : elindítja a háttérben a screen-t “name” névvel
screen -x name : name nevű terminál hozható előtérbe
screen -R PID : paranccsal lehet előtérbe hozni. (PID – processID, ps aux-al megnézhető)

# SCREEN-ben kiadható billentyű kombinációk
——————————————-

Ctrl+a+d : bill. kombinációval tehető háttérbe.
Ctrl+a+? : előhozhatő a legfontosabb bill. kombinációkat
Ctrl+a+c : új ablak ltérehozása
Ctrl+a+p VAGY n : előző vagy következő ablakra ugrás. (previous, next)
Ctrl+a :kill : aktuális screen lelövése
Ctrl-a :acladd USER : USER nevű felhasználó engedélyezése becsatlakozásra (lásd MULTIUSER MODE)

# MULTIUSER MODE
# ————–
#
# A screen többfelhasználós üzemmódja
# Amennyiben kontrollált körülmények között szükséges beengedni valakit a gépre közös shellt
# használva, úgy az alábbi lépéseket kell alkalmazni

screen
# screen indítása a kiszemelt többfelhasználós gépen

Ctrl+a :multiuser on
# Ezt begépelve aktiválható az adott session-ön a többfelhasználós mód.
# Másik oldalnak szükséges ismernie az adott user nevét/jelszavát, illetve SSH-n be kell tudnia
# csatlakozni a gépre. Ha mindez megvan, és SSH-n bejött.:

screen -x
#Voila!

time command
# A command lefutási idejét méri

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

command1 && command2
# command1 visszatérési értékének függvényében command2 is lefuthat. (ha command1 sikeres volt)

Csomagkezelés

apt /Advanced Package Tools, A Linux csomagkezelője, az aptitude front-endje/
-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 jóbarát!
-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.

aptitude
install program : program telepítése
search program : program keresése a tárolókban
remove csomag : csomag eltávolítása, a configok megtartásával
purge csomag : csomag és configok eltávolítása
clean : gyorsítótár ürítése
show csomag : telepíthető “csomag”-ról információk
reinstall program : adott program újratelepítése
update : csomaglista frissítése
safe-upgrade : a legújabb verzióra frissíti a telepített csomagokat.
full-upgrade : a legújabb verzióra frissíti a csomagokat. és eltávolít ha szükséges
dist-upgrade : újabb verzióra való teljes rendszerfrissítés

echo “csomag hold” | dpkg –set-selections
# csomag nevű csomag visszatartása a frissítések során.
# visszaállítása: hold helyett install-t szükséges megadni

dpkg –get-selections
# feltelepített csomagjaink listáját kapjuk meg, állapotuk feltűntetésével.

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

A feltelepített csomaglista mentése, visszaállítása

dpkg –get-selections > /eleresi/ut/csomagok.txt : feltelepített csomagok neveinek mentése TXT-be.
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ája a csomagok.txt-be kerül mentésre.
# Második, harmadik, negyedik lépésben pedig a telepített sw.-k listájában felsorolt
# csomagok újratelepítése

dselect
# A dpkg barátságosabb arca

./configure
make
make install
# Csomag telepítése forrásból.
# A parancsot abban a mappában szükséges kiadni, ahova lett másolva az adott program

make clean
# Ha esetleg valamilyen kapcsolót kihagytunk a fordítás közben,
# ezzel a parancsal pucolhatunk az újrafordítás előtt.

make uninstall
# Forrásból telepített program uninstall

alien
# Csomag konverter program (pl.: .rpm .deb etc.)

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
-d cím : arp táblából adott bejegyzés törlése

cat /proc/net/arp : aktuális arp tábla kiíratá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
# Netfilter csomagszűrő, leírás lentebb található, itt:
iptables alapok

host
# Lekérdezéseket kezdeményez a DNS kiszolgáló felé, tartományokról, zónákról.
-t ns valami.hu : valami.hu Name Server-é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.

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

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

ifstat
# interface statisztikák készítése
# ifstat programot szükséges telepíteni

ifstatus
# interface státusz kiíratása (van-e link adott kártyán/kábelen)
# ifplugd program részét képezi
# újabb verzióban már az ifplugstatus -t szükséges használni.

mii-tool
# Hálózati tesztelő

nbtscan
# NetBIOS információkat adja meg, a hálózaton

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.

netstat -an | egrep ‘Proto|LISTEN’
# mely protokollon/portokon figyel a gép?

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

domainname
nisdomainname
ypdomainname
# Megjeleníti vagy beálllítja a rendszer NIS/YP-tartománynevét.

dnsdomainname
#Megjeleníti vagy beálllítja a rendszer DNS-tartománynevét.

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.
-sP 192.168.10.0/24 : komplett 10.0-s hálózat ping scan.
-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
# A Linux útválasztó táblájának 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 default 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.

Static route hozzáadás

up route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1
# Static route hozzáadása az adott eth eszközhöz. ( /etc/network/interfaces ethX szeksziójához hozzáadandó)
# Az ethX eszközünk 192.168.2.0 hálózat felé a 192.168.2.1 legyen a default gateway.

down route del -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1
# A Fenti kikapcsolása.

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

smbclient -L 192.168.1.1 -U HOSTNAME/user -W workgroup
# kilistázza a 192.168.1.1 gépen található megosztásokat HOSNAME\user nevében, workgroup tartományban.

ssh
/Secure SHell/
# Titkosított hálózati bejelentkezés
# config: /etc/ssh/sshd_config

ssh user@host -t ‘sudo sed -i “\$a text to insert” /path/to/file’
# adott user nevében a host-on lévő file-ba adott “text to ..” szöveg hozzáfűzése

ssh user@host ‘bash -s’ < script.sh
# távoli hoston adott user nevében script.sh futtatása, mely a helyi gépen van.

ssh -t user@host “sudo sh -c ‘ps aux | grep ssh > /root/1.txt'”
# távóli gépen adott sudo parancs futtatása, kimeneti állomány is a távoli gép adott mappájába kerül.

scp
# Biztonságos távoli fájl átvitel lokális gép és távoli gép, illetve távoli gépek között.
Bővebben itt olvasható róla az oldalon:
Fájlátvitel SCP segítségével

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 server

pure-ftp
# FTP server

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

Virtuális hálókártya létrehozása
vconfig
# virtuális eth eszközök létrehozására alkalmas program.
# vlan csomag tartalmazza, tehát ezt telepítenünk kell.
vconfig add eth0 1 : az eth0:1 eszköz hozzáadása, majd fel kell venni a /etc/interfaces-be!


auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.42
netmask 255.255.255.0
gateway 192.168.1.254

auto eth0:0
allow-hotplug eth0:0
iface eth0:0 inet static
address 192.168.10.42
netmask 255.255.255.0

auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static
address 192.168.100.42
netmask 255.255.255.0

ipcalc
# TUI felületű IP számláló. (hasznos lehet hálózat tervezés/bővítéskor)

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

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 le és feltöltési sávszélt.
ethX clear : Törli a beállításokat.

 

Forrás: letix.hu

2 hozzászólás

  1. letix

    Az oldalamon azt írtam, hogy a szabadon terjeszthető a forrás és szerző megjelöléssel. Ehelyett egy az egyben le lett lopva a kód az oldalamról. Nem szép dolog..
    udv
    letix

    Válasz
    • Fodor Balázs
      Fodor Balázs

      Kedves Letix!

      Elnézésedet kérjük, természetesen a cikk alján megjelöltük a forrást!

      Válasz

Válaszolj

Az e-mail címed nem publikáljuk.