Köszönet az oldalért: http://www.letix.hu/
Szerző: letix
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 top
/ # 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 top
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-write, 2-read, 1-executable jog, összeadva, külön U,G,O-nak
chmod 777 file : UGO-nak egyaránt minden jog.
chmod 751 file : U-nak minden, G-nek írási, futtatási, O-nak futtatási jog.
# Betűkkel.: kinek+mit
chmod u+rwx file : Tulajdonosnak (U) r,w,x jog adása.
chmod g+rx file : Csoport felhasználónak (G) r,x jog adása.
chmod a-rwx : Mindenkitől (A-all) elveszünk minden jogot.
chown
# Fájlok, könyvtárak tulajdonosának (létrehozójának változtatása)
-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 felcseréli a kis és nagybetűket
echo egyesek | tr -d e : az egyesek szóból kiveszi az e betűket
find
# Keresés
find / -name "*.jpg" -print : az összes kép keresése a gyökérben, majd az eredmény kiírása
find / -iname ... : kis és nagybetű különbség nincs!
find -perm 777 : minden 777-es joggal rendelkező állomány keresése
find -perm 4000 : Az összes SUID joggal rendelkező állományt keresi
find /home -size +1024 : 500kb-nál nagyobb állományok keresése a /home-ban
find -type "kapcsoló" : különböző típusú fájlokat keres
-type l : szimbólikus link
-type d : könyvtár
-type f : fájl
find /etc -empty -maxdepth 1 -printf "%p-%m\n" : az /etc könyvtárban lévő üres könyvtárakat
írja ki, a jogosultságaival együtt.
find /home -size +1024 \( -mtime +365 -o -atime +365 \) -ls -exec file{} \; :
512kb-nál nagyobb,maximum 365*24 órája módosított állományokat, valamint a file parancs kimenetét
-exec file{} \; jelenti, hogy az exec után levő parancsnak adja át az eredményt.
file sajt
# megvizsgálja a sajt fájl típusát
-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)
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ó top
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ésFolyamatok top
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ásIdőzített parancsfeldolgozás top
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ériKernel,modulok,fordítás top
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 top
./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
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álataHálózat top
arp # ARP cache manipulálása ifconfig # Hálózati információk lekérése, konfigurálása ifconfig eth0 192.168.10.1 netmask 255.255.255.0 up # 192.168.10.1-es IP-t osztunk az eth0-ra (0-s hálókártya) # 255.255.255.0 a netmask. ifdown eth0 # eth0 eszközt lekapcsolja ifup eth0 # eth0 eszközt felkapcsolja ( dhcp esetén kér IP-t a kiszolgálótól)
host # Lekérdezéseket kezdeményez a DNS kiszolgáló felé, tartományokról, zónákról. -t ns valami.hu : valami.hu nameserverét adja meg -t mx valami.hu : valami.hu levelező szervereiről ad információt hostname # Beállítja vagy megjeleníti a rendszer host-nevét. curlftpfs -o allow_other username:password@ftp.domain.dom /csatolasi/pont # Felcsatolhatunk ftp tárhelyeket, lokális fájlrendszerünkbe. (fusermount segítségével) # Ha a hiba.: # "If you don't use udev, you may get this error message: # fusermount: failed to open /dev/fuse: No such fdevice or address # Before loading the fuse kernel module, create the device node manually: # A megoldás.: mknode -m 666 /dev/fuse c 10 229 echo 0 > /proc/sys/net/ipv4/ip_forward # Ha gépünket router-ként használjuk, érdemes beállítanunk a csomag továbbítást # 1-es engedélyezi a tiltást, 0 tiltja a tiltást! echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Beállítjuk, hogy broadcast ping-re ne válaszoljon gépünk echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all # Beállítjuk, hogy ne válaszoljon gépünk a ping-re echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter # Engedélyezzük a hamis csomagok szűrését ...etc -------------- # Ezek a beállítások rendszerleállításkor elvesznek, érdemes őket valamely induláskor # lefutó script-be tenni, a hálózati interfészeket konfiguráló script elé. -------------- etherwake # Magic packet-et küld a wake-on-lan enabled hálókártyára ethtool # Ethernet kártya beállítások megjelenítése, változtatása iptraf # Hálózat terhelést figyelő program mii-tool # Hálózati tesztelő nbtscan # NetBIOS információkat adja meg, a hálózaton net usershare add megosztasnev /eleresi_ut comment acl # Megoszt könyvtárakat a hálózaton # Ha a fenti parancs ilyen hibát dob.: "(net usershare: usershare are currently disabled)" # az alábbiakban kell eljárnunk: # mkdir /usr/local/samba/lib/usershares # chgrp userneved /usr/local/samba/lib/usershares # chmod 1770 /usr/local/samba/lib/usershares #smb.conf global részébe a következőket.: # usershare path = /usr/local/samba/lib/usershares # usershare max shares = szám # (or the desired number of shares) netstat # Információkat ír ki a hálózati alrendszerről -r : route kimenete -i : interfész tábla -tp : TCP/IP -t használó processzek listája netstat -tn|grep ':80'|tr -s ' '|cut -d ' ' -f5|cut -d':' -f1 # kik csatlakoznak a gépünkre a 80-as porton? netcat # TCP/IP swiss army knife nload # Network load - Hálózati terhelés vizsgálat ngrep # grep, hálózati forgalomhoz netsed # Hálózati csomagok valós idejű megváltoztatására alkalmas program nslookup www.host.com # host.com IP címének vizsgálata nmap # Elsősorban port scanner, de igen sokrétű alkalmazás -O ip_cim : Op.rendszer detektálás -p 1-10 ip_cim : Portok vizsgálata 1-10 ig. -p U:53,111,137,T:21-25,80,139,8080 ip_cim : UDP-n 53,111,137, TCP-n 21-25,80,139,8080-at vizsgál. ping host # Ping jelet küld a host-nak -b ip_tartomány : broadcast üzenet küldés route # Útválasztó tábla megjelenítése (Routing table) route add -net 192.168.10.0 netmask 255.255.255.0 eth0 # A 192.168.10.0-s hálózatra menő csomagokat az eth0-ra irányítja a rendszer # A hálót így már látnunk kell route add defaul gw 192.168.10.254 # 192.168.10.154-es IP-vel rendelkező router (gateway) hozzáadása a routing table-hez. route del default gw # Alapértelmezett átjáró törlése a routing table-ből. rsh # Távoli shell -l user gepnev parancs : a "parancs"-ot lefuttatja a távoli gépen, user nevében smbclient # SMB hálózati erőforrások tallózása smbclient -M gépnév # Üzenet küldése Windows-os gépekre (net-send szolgáltatás). Elküldés:Ctrl + D az üzenet végén echo üzenet | smbclient -M gépnév : azonnal küldi, nem kell Ctrl+D ssh host /Secure SHell/ # Titkosított hálózati bejelentkezés # config file-k.: /etc/ssh/sshd_config, /usr/local/etc ssh-keygen -t rsa : RSA kulcs létrehozása ssh-hoz. scp # Biztonságos távoli fájl átvitel tcpdump # Hálózaton átmenő forgalmat figyeli. -i ethX : Az ethX csatolón átmenő forgalmat figyeli. traceroute host # A hálózati útvonal kiírása a célszerverig (host) /IP hálózaton/ proftpd # FTP kiszolgáló démon # config file.: /etc/proftpd pure-ftp # FTP kiszolgáló rdesktop # Remote desktop kliens stunnel # SSL (Secure Socket Layer) titkosított kapcsolatba csomagolhatunk protokollokat. # pl.: POP3, IMAP, etc. squid # Proxy kiszolgáló # config file.: /etc/squid/squid.conf vsftpd /Very Secure FTP daemon/ # config file.: /etc/vsftpd # Néhány fontos kérdés.: -anonymus_enable : anonymus ftp engedélyezése. Szükség van egy ftp nevű user-re. -local_enable : normal felhasználókat engedjük be. (kell az anonymus hoz is) -write_enable : engedi az írást -local_umask : felhasználók autómatikus jogai (default 022) -anon_upload_enable : anonymusként feltülthetünk -anon_mkdir_write_enable : anonymusként mkdir engedélyezés -xferlog_enable : xfer log-ot ír a daemon -connet_from_port_20 : 20-as portot használ -chown_uploads : anonymusként feltöltött fájlok tulajdonosának megváltoztatása -chown_username : Kinek a tulajdona legyen a file -idle_session_timeout : inkatív kapcsolatok bontási ideje wireshark # Hálózati forgalom figyelő (GUI)Bash programozás top
# A batch fájlhoz hasonló eljárás. # Programunk első sorában minden esetben meg kell adnunk a futtató programot, jelen esetben a bash-t. # Tehát a fájlunk kezdete legyen: #!/bin/bash # Felkiáltójel nélkül más futtató programot is megadhatunk a programunk első sorában. # Futtatási jog nélkül nem tudjuk használni, ezért chmod +x file # Programunk futtatásához ./program_nev parancsot kell használnunk.
# 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)
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
É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ó.
echo $0 # A futó program neve echo $$ # A futó program PID-je echo $? # A legutolsó parancs visszatérési értéke
# " | " 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
#!/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
-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
#!/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!)
#!/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 top
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őHasznos linkek top