linux parancsok - doksi.atw.hu

Upload: anonimusz-zsenialis

Post on 07-Jul-2015

117 views

Category:

Documents


1 download

TRANSCRIPT

A dokumentum sajt jegyzetem alapjt kpezi, a teljessg ignye nlkl. Klnbz disztribcikon a parancsok eltrek lehetnek, jelen lers Debian GNU/Linux alatt tesztelt s hasznlhat parancsokat tartalmaz. A programok, parancsok hasznlatrt semmilyen felelssget nem vllalok. Amennyiben hibt tallsz, krlek ne kritizld, hanem jelezd! J tanulst! Utols frissts.: 2010-07-05 letix

Linux alapparancsok, kezdknekAz els lpsek Knyvtrszerkezet llomnykezels Rendszeradminisztrci Folyamatok Idztett parancsfeldolgozs Kernel, modulok,fordts Csomagkezels Hlzat Bash programozs Egyb programok Hasznos linkek

Az els lps

top

Egy alaprendszer teleptsnek menete rszletesen, kpekkel illusztrlva az albbi linken tallhat.: Debian GNU/Linux 4.0 rendszer teleptse A telepts utn ajnlatos parancsok.: dpkg-reconfigure debconf # Ha a lehetsgek kzl a low-t "alacsonyt" vlasztjuk, a ksbbi programok (repository-bl trtn) # teleptsekor minden apr rszletre, belltsra rkrdez a rendszer. Ajnlatos. apt-get update apt-get upgrade # A rendszer frisstse. (a trolk (repository) az /etc/apt/sources.list file-ban vannak megadva.) Sok keresglstl kmlhetjk meg magunkat, ha a kvetkez parancsokat elsajttjuk.: man parancs # A parancs manual oldalait nyitja meg, rvid, tmr, clratr lers man -k sz # Az apropos program kimenete

apropos sz # Minden olyan parancsot megad, mely manual oldalaiban szerepel a "sz" parancs --help # Informci a "parancs" hasznlatrl info parancs # Informci a "parancs" hasznlatrl whatis parancs # Egysoros az parancsrl. whereis parancs # Hol is van a parancs? which parancs # A program futtathat llomnynak elrsi tvonalt adja meg (ltalban /usr/bin) file:///usr/share/doc # bngszbe rva, a legtbb teleptett program lerst megtallhatjuk # (ltalban html formtumban is) Fontos! Nem minden (a lersban felsorolt) parancs tartozka egy alaprendszernek, elfordulhat hogy teleptennk kell.

Knyvtrszerkezet/ /boot /bin /sbin /lib # # # # #

top

A hierarchikus knyvtrfa kiindulpontja (gykr knyvtr) A rendszer indtshoz szksges llomnyok helye (grub, vmlinuz, stb) A futtathat parancsok knyvtra -binaries A rendszergazda parancsai -superuser bin Az indulshoz szksges osztott rendszerknyvtrak -libraries Tovbb tartalmazza a rendszerhez csatolhat modulokat, meghajtprogramokat /dev # A rendszerhez csatlakozott, csatolhat klnleges llomnyok -devices /etc # Belltfjlok, helyi indt parancsok, jelszavak, hlzati-belltk, etc. helye. /home # Minden felhasznl sajt knyvtra itt foglal helyet. (Otthon, des otthon) /mnt # A felcsatolt (mountolt) perifrik knyvtra. -mount /proc # Itt lthatjuk, ahogy a rendszernk "l s llegzik". (szellem a gpben) -process information rdemes tzetesebben tnzni, hiszen rdekes dolgokat tallhatunk itt. pl.: /proc/cpuinfo fjl kiratsval informcit kapunk processzorunkrl. /root # A rendszer gazdjnak knyvtra. /tmp # Ideiglenes adatok trolsra hasznlt knyvtr. -temp /usr # Alkalmazsok, rendszereszkzk tmkelege, a legforgalmasabb knytr. (pl X Window) /var # Vltoz adatokat tartalmaz llomnyok knyvtra. /pl.: nyomtatsi munkk, levelek, etc) /var/log : napl fjlok, klns jelentsggel brnak a rendszer biztonsgnak szempontjbl

llomnykezelsalias

top

# Klnbz parancsokat sajt elkpzelseink szerint tnevezhetnk. # /home knyvtrunk .bashrc fjlja tartalmazza belltsainkat. alias rm='rm -i' : A trls parancs kiadsa utn rkrdez, hogy valban akarjuk e. Ajnlatos! unalias bl.) cat # Fjl tartalmt rja ki. > fjl : vrja a bemenetet, amely a "fjl" tartalma lesz -n fjl : beszmozza a fjl sorait # Knyvtr vlts parancs. cd : /home knyvtrunkba jutunk cd .. : egy knyvtrral feljebb kerlnk chmod # Fjlok-, knyvtrakra vonatkoz jogokat llthatjuk be -R : Rekurzvan vltoztatja meg a jogosultsgokat. # DAC (hromszint diszkrcionlis maszk) szerinti bellts. # r-read (olvass), w-write (rs), x-executable (futtats) jogot jelent # # tulajdonos (jele:U) | csoport felhasznl (jele:G) | mindenki ms (jele:O) # rwx | rwx | rwx # # Adjuk ki az ls -la parancsot s mris vilgoss vlik a dolog. # A sor elejn tallhat "d" a directory, "-" a file jele. # # Jogokat szmokkal, vagy szimblikus jelekkel hatrozhatunk meg. # Szmokkal.: 4-read, 2-write, 1-executable jog, sszeadva, kln U,G,Ochmod 777 file : UGO-nak egyarnt minden jog. chmod 751 file : U-nak minden, G-nek rsi, futtatsi, O-nak futtatsi # Betkkel.: kinek+mit chmod u+rwx file : Tulajdonosnak (U) r,w,x jog adsa. chmod g+rx file : Csoport felhasznlnak (G) r,x jog adsa. chmod a-rwx : Mindenkitl (A-all) elvesznk minden jogot. chown # Fjlok, knyvtrak tulajdonosnak (ltrehozjnak vltoztatsa) -R : Rekurzvan vltoztatja meg a tulajdonos(oka)t -f : Nem kapunk vissza hibazenetet, ha valami nem sikerlt --no-dereference : Szimblikus linkeknl, a link jogosultsgait lltjuk --dereference : Szimblikus linkeknl, a file (amire a link mutat) jogait vltoztatjuk chgrp # Fjlok tulajdonosi csoportjnak megvltoztatsa -R : Rekurzvan vltoztatja meg a csoportokat -f : Nem kapunk vissza hibazenetet, ha valami nem sikerlt -c : csak azokat a file-okat rja ki, amelyeknek valban megvltozott a # Az elzekben belltott rtkek visszalltsa. (trli a .bashrc-

cd

nak jog.

csoportjuk lsattr # Fjlok, knyvtrak attribtumt mutatja meg -R : Rekurzvan mutatja meg az attribtumokat -a : minden file-t kilistz, belertve a .-al kezddeket is chattr +tulajdonsg file # Fjlok, knyvtrak attribtumt vltoztatja # Tulajdonsgok.: A : Nem vltoztatja meg a fjlok utols mdostsnak dtumt. (rendszergyorst hats) a : Csak hozzfzni tudunk a fjlhoz c : Autmatikusan tmrtve kerl a lemezre, s kitmrtve kerl beolvassra d : Ezekrl az llomnyokrl nem kszl biztonsgi msolat a dump parancs futtatsakor s : Paranoia md. Trlskor azonnal megsemmisl minden bit-je. S : Minden vltoztats azonnal lemezre rdik (sync hats) u : A Fjl trlsekor az adat megmarad, ksbb visszallthat cfdisk # Lemezkezel, partcionl

cp -r /honnan/mit /hova/milyen_nven # Fjl, knyvtr msols cmp file1 file2 # sszehasonltja a file1 s file2 fjlok tartalmt cut megadott # Bement (stdin), vagy paramterknt megadott fjl minden sornak egy # rszt vgja ki -c2 fjl : msodik mez rtke -c3,5 : harmadik, tdik mez, sorrend nem szmt -c-4,6- : negyedik mezig s a hatodiktl diff -u file1 file2 > eredmeny # sszehasonltja a fjlok tartalmt, a klnbsget pedg az eredmny-be rja du df # Szabad terlet szmtsa, partcinknt -H : Megabyte, Gigabyte-okban rja ki echo szoveg # Kirja a kpernyre a szoveg-et echo szoveg > file : a szoveg-et file-ba rja echo VegyEs | tr a-z A-Z : a VegyEs szban a kis betket nagyra cserli. echo egyesek | tr -d e : az egyesek szbl kiveszi az e betket find # Keress find / -name "*.jpg" -print : az sszes kp keresse a gykrben, majd az eredmny kirsa find / -iname ... : kis s nagybet klnbsg nincs! # Az aktulis knyvtr fjljainak mrett adja meg

find -perm 777 : minden 777-es joggal rendelkez llomny keresse find -perm 4000 : Az sszes SUID joggal rendelkez llomnyt keresi find /home -size +1024 : 500kb-nl nagyobb llomnyok keresse a /homeban find -type "kapcsol" : klnbz tpus fjlokat keres -type l : szimblikus link -type d : knyvtr -type f : fjl find /etc -empty -maxdepth 1 -printf "%p-%m\n" : az /etc knyvtrban lv res knyvtrakat rja ki, a jogosultsgaival egytt. find /home -size +1024 \( -mtime +365 -o -atime +365 \) -ls -exec file{} \; : 512kb-nl nagyobb,maximum 365*24 rja mdostott llomnyokat, valamint a file parancs kimenett -exec file{} \; jelenti, hogy az exec utn lev parancsnak adja t az eredmnyt. file sajt # megvizsglja a sajt fjl tpust -f filelista : Egy ltez filelista llomnyban felsorolt file-okat vizsglja meg -L : Kveti a szimblikus link ktst (nem a linket, hanem az arra mutat file-t vizsglja) fsck fgrep # Fjlokban, vagy stdin-ben keresek szveget "abc" file.txt : Megkeresi az sszes olyan sort a file.txt-ben, ami tartalmat "abc"-t grep # Szvegrszleteket keres fjlokban, valamint a kimenetben. -i : nem tesz klnbsget kis s nagybetk kztt -l : nem az elfordulsi sorokat, hanem csak a fjl neveket listzza -v : azoakt rja ki, amiben nem szerepel a keresett sz # szkzt grep sz" "sz2 -vel brzolunk # Szr eszkz. A fjl els 10 sort rja ki -n-7 fjl : utols 7 sort mr nem rja ki -c4 fjl1 fjl2 : mindkt fjl els 4 karaktert rja ki tail # Szr eszkz. A fjl utols sorait rja ki. -n+2 fjl : A fjl tartalmt a msodik sortl mutatja meg # lemezellenrz

head

tail -n+3 fjl | head -n1 vagy head -n3 fjl | tail -n1 # Egy fjl harmadik sort gy rhatjuk ki mc # Midnight Commander fjlkezel mcedit install # Fjlok msolsa, attribtumok mdostsa # Az mc szvegszerkesztje

less ls

# Szrprogram fjlok adatainak megjelentshez.

# A knyvtrstruktrt jelent meg ls -lt : mret szerint sorrendben ls -ls : utols mdosts szerint sorrendben ls ??????? : minden 7 karakteres llomnyt jelent meg ls -a : a rejtett fjlokat is kirja ls -r ? fordtott sorrendben rja ki. pl.: -nr : ABC fordtott sorrendjben ls [aes]? : azokat a 3 bets fjlokat, melyek kzps betje a,e,s kzl brmelyik ls [nm]* : azokat a fjlokat melyek n,m betvel kezddnek ls *c : amelyek c-betre vgzdnek ls [^s]* : amely fjlok nem s-el kezddnek ls I sz : kilistzza a knyvtr tartalmt, de a sz-t kihagyja lsof # Nyitott fjlok kilistzsa -p pid : Folyamat azonost szerinti szrs | egrep ":port1|:port2" : A megadott portokat hasznl fjlokat listzza

ki lspci # Hardver informcik -v : bbeszd -vv : mg bbeszdbb # Usb eszkzk kiratsa lshw # Hardver informcik, kicsit bvebben -X : Grafikus fellet eredmny -html : HTML formtumban menthetjk a kimenetet -short : Az eszkzk fa-szer megjelentse

lsusb

mv

# Fjlokat knyvtrakat mozgat, vagy nevez t -i : A mdostsok eltt rkrdez, hogy valban akarjuk-e -U : Nem mozgatja az jabb (mdosts dtuma szerint) clfjlal rendelkez llomnyokat. -f : force, a clfjlok trlse, krds nlkl mkfs # Fjlrendszer ltrehozsa -t filesystem eszkz [blokkmret] -t ext2 -V /dev/eszkz : ext2-es fjlrendszer ltrehozsa slocate -u # A hdd tartalmrl kszt adatbzist. -e knyvtr1 konyvtr2 : knyvtrakat tudunk kivenni az adatbzisbl locate fjl # Az elzekben ltrehozott adatbzisban megkeresi a fjl-t. (Azonnal meg van az eredmny) ln -s # Soft link-et hoz ltre -s fjl1 fjl2 : fjl1 rl kszt fjl2 nev soft-link-et.

mkdir -t ext2 /dev/ram0 4096 mount /dev/ram0 ramdisk/ # 4Mbyte os ramdisk-et hozunk ltre, s felcsatoljuk. mount # Eszkz felcsatlakoztats (CD,partci, pendrive, hdd, etc.) -o loop cdimage.iso./cd-rom : cdimage.iso felmountolsa megtekintsre. (kell cd-rom knyvtr) /dev/hda2 /mnt/vinyo : hda2-es eszkzt csatolja fel a vinyo knyvtrba (ltre kell eltte hozni!) -o noatime /dev/hdX : noatime attribtummal csatlakoztatja a lemezt. (I/0 mvelet cskkents!) umount /dev/eszkz # Lecsatlakoztats pwd recode # file karakterkdolsnak konvertrlsa iso-8859-15..utf8 modositando_file : Nyugat eurpai kdols konvertlsa UTF8-ra rmdir rm # llomnyok eltvoltsa -d : knyvtrat -i : rkrdez a trls eltt (Ajnlott!) -rf : Knyvtrstruktrt trl (akkor is, ha nem res) sed # Stream editor, folyamatszerkeszt. A bemenetet a kimenetre msolja mikzben megszerkeszti. echo "hablabda" | sed 's/a/K/g' : kimenete.: hKblKbdK, azaz "a" betket "K"-ra cserli '/ *#/d; /^ *$/d' file : a file-bl kiszrjk a kommenteket, res sorokat. sort # Knyvtr trls # Kirja az aktulis knyvtrat

# Sorba rendezs -b fjl > kimenet : ABC sorrendbe rendezi a fjlt, az eredmnyt a kimenetbe rja. -r fjl : fordtott sorrendben rendez -n fjl : a sor elejn lev szmok szerint rendez -u fjl : az azonos sorokat cask egyszer rja ki sync # A Rambl a merevlemezre mg ki nem rt adatok szinkronizlsa (Fontos) touch fjl # ltrehoz egy res llomnyt -t MMDDHHmm fjl : A fjl ltrehozs dtumt vltoztatja meg. MM-Hnap DD-Nap HH-ra mm-Perc tree # Knyvtrstruktrt rja ki tar

# Ki-be tmrt zxvf file.tar.gz : Kitmrti a gz-t, majd a tar-t, s egy /file knyvtrba teszi xvfj file.bzip2 : bzip2-t tmrti ki tf mentes.tar : megmutatja a mentes.tar tartalmt tvvf mentes.tar : rszletes listzs, jogok, tulajdonos etc. uniq # Tbb sorbl ll szvegben az ismtld sorokkal kezd valamit -c fjl : az egyms utni azonos sorokbl egyet hagy meg, s kirja a sorok elejn # hogy hnyszor ismtldtt az adott sor vi # Parancssoros szvegszerkeszt # Kilps mentssel.: ESC, majd :wq # Kilps ments nlkl.: ECS, majd :q!

vi -b +/mikulas fjl b : Binris llomny szerkeszthetsgt teszi lehetv +/mikulas : a fjl-ban a mukilas kifejezshez ugrik wc fjl # sor, sz, -m fjl : a -c fjl : a -w fjl : a -l fjl : a karakter szmtsa fjlban lv karakterek szma fjlban lv bjtok szma fjlban lv szavak szma fjlban lv sorok szma

which program # A program futtathat llomnynak elrsi tvonalt adja meg (ltalban /usr/bin)

Kvtk belltsaApt-vel teleptsk a quota csomagot. quota # Trol kvtzs programja quota -v # A bejelentkezett felhasznl kvtabejegyzsei

quotacheck -uagv # Vgignzi a fjlrendszert, a trkorltok adatainak begyjtse rdekben # Majd feltlti az adatbzist (aquota.user, aquota.grp) -u : alaprtelmezett -a : minden fjlrendszer ellenrzsre kerl -g : csoportadatok keresse -v : verbose, bbeszd quotaon -augv # kvtk bekapcsolsa quotaoff -av # kvtk kikapcsolsa

repquota -av # megtekinthetjk

felhasznlnknt a kvtabejegyzseket

edquota -u user edquota -g group # Felhasznl, csoport kvtk belltsa # Alaprtelmezett szerkesztnk tmeneti llomnyaknt llthatjuk be # Ezrt rdemes: export EDITOR=kedvenc_szerkesztnk -et belltani. -p user user2: user2 kvtit lltja be, user mintjra /etc/fstab file-ban, az adott partcihoz meg kell adnunk az options-ba a usrquota, grpquota kapcsolkat.

Rendszeradminisztrcilogin

top

# Bejelentkezs logout who # Bejelentkezett felhasznlk kiratsa whoami users # Kirja az rendszeren lev felhasznlk nevt adduser useradd # j felhasznl hozzadsa # Ha opcikat hasznlunk, a user-nevet a sor vgre rjuk! -u szm : felhasznli azonost megadsa (UID) -g csoport : csoport tagsg belltsa -G csooport1,csoport2 : vesszkkel elvlasztva, ha egyb csoportnak is tagja a felhasznl -m -k /home/letezo_user uj:user : egy ltez felhasznl mintjra pti fel az j user home-jt. Minden fjl s knyvtr is belekerl a fikba, + a belltsok is. usermod # Felhasznli fikok mdostsa -u rtk user : a felhasznl azonostjt vltoztatja (UID) -g csoport user : a felhasznl csoportjt vltoztatja -G csoport1,csoport2 : a jzer-t tbb csoporthoz is rendeli -L user : lock-olja a felhasznl hozzfrst (nem tud belpni) -U user : unlockolja a hozzfrst userdel # Felhasznl trlse -r user : home-al egytt trli # j felhasznl ltrehozsa (felhasznlbart) # Milyen nven is jelentkeztnk be? # Kijelentkezs

deluser groupadd

# Felhasznl trlse

# Csoport ltrehozsa -g szm csoportnv : Egynileg vlasztott csoportazonostval (GUID)-el hozunk ltre csoportot # /etc/group : csoportlista groups user # A user csoportjai groupmod # Csoport fikjt vltoztatja -n nv jnv : csoport nevt vltoztatja # Felhasznlkkal val kommunikls egyik eszkze # Felhasznl informcii chfn mkswap # Swap terlet ltrehozsa swapon swapoff # Swap kikapcsolsa last alapjn) lastlog passwd # A bejelentkezett felhasznl jelszavnak mdostsa stat # File vagy filesystem sttusz # /var/log/lastlog kimenete # Ki jelentkezett be utoljra s honnan (felhasznl vagy terminl # Swap bekapcsolsa # Felhasznli informcik megvltoztatsa (finger kimenete)

talk finger

su - user # Indt egy msik shell-t, user felhasznlknt write user tty # A felhasznlknak zenet klds

Folyamatokw

top

# Nemes egyszersggel megmutatja, ki van belpve, s mit csinl

pidof folyamat # A folyamat azonostjt adja meg (PID) parancs & # Parancs futtatsa a httrben fg : felleszts, majd eltrben futs bg : felleszts, majd httrben futs jobs ps # Fut folyamatok kirsa -u pisti : pisti felhasznl ltal futtatott folyamatok aux : minden folyamatot kir, szinte minden informcival alxww : minden folyamatot, mg tbb infval (pl.: PPID) -t1 : tty1-es terminl kilistzsa f : erd szer megjelents l : kirja a folyamatok PID-jt s PPID-jt is. (parent's process identifier) ww : a programok parancssori kapcsolit rja ki. nice # Priortsa lekrdezse, belltsa -n --20 program : a rendszer a legtbbet ezzel a programmal fog foglalkozni. (+19-tl -20 ig) renice -10 1124 # 1124-es folyamat -10-es prioritsra lltsa kill "pid" # Folyamat lelltsa PID szerint -9 pid : erszakos bezrs -s "signal" : megadja, hogy miylen jelet kldnk a folyamatnak. signal-ok: TERM, QUIT, ABRT, KILL -1 : jelentse SIGHUP, mely a folyamat bezrsa, config fjl beolvassa, folyamat jraindtsa -9 : jelentse SIGKILL, folyamat erltetett bezrsa. (Csak vgszksg esetn) -15 : jelentse SIGTERM, szablyos programlellts killall parancs # Ha tbb "parancs"-fut (pl.: iceweasel), mindet lelltja nohup find / name t* > ~/nohup.log & # A "t" betvel kezdd fjlok keresse a httrben, az eredmny a nohup.log-ba kerl. init # Futtatsi szint belltsa 0 : kikapcsols 1 : single-user md 2-5 : multi-user md 6 : reboot # /etc/inittab -ban llthat be a gp indulsi init szintje. # /etc/rcX.d knyvtrak a megfelel szinteken indul programok linkjeit tartalmazza # j szolgltats hozzadsa init szintekhez : Progtam bemsolsa /etc/init.d-be, majd errl # egy link ltrehozsa a kivlaszottt init szint knyvtrba (pl.: rc2.d) Ha S betvel kezddik # Httrben fut programok kiratsa

# elindul , mssal nem. A Kezdbet utn lev szm az indul folyamatok sorrendjt befolysoljk runlevel # Megadja, hanyas init szinten voltunk s vagyunk. (kimenet pl.: N 3 , vagy 3 2.) tpus. # 3 N jelenti, hogy 3-ason voltunk s vagyunk, 3 2 pedg hogy 3-ason voltunk 2-esen vagyunk shutdown # Kikapcsols -h now : Azonnali kikapcsols (idt is megadhatunk) -r 0 : Azonnali jraindts

Idztett parancsfeldolgozsat

top

# Megadott idpontban futtathatunk programokat -f todo 23.59 : elre megrt parancsainkat (todo fjlban) 23:59-kor lefuttatja az at. # Id formtumok # 13.13 01.01.02 : 13 ra 13 perc, 2002, janur 1 # 2pm tomorrow : honlap dlutn 2 # 1am Sun : hajnali 1 ra, vasrnap atq atrm pid # Az at vrakozsi sorbl val eltvolts cron # Parancs temez # /etc/cron.d ; /etc/cron.daily ; /etc/cron.weekly crontab -l : kilistzza a belpett belltott temezseit crontab -e : Editljuk a belpett user temezseit @reboot parancs : A kvetkez indtsnl lefut parancs. # Az at vrakozsi sorrendjt ismerteti

sleep 5 parancs # 5 Msodperc mlva indtja a "parancs"-ot. schedutils # Linux rendszer temez screen # Ablakkezel, virtulis terminl emultorral. # Httrbeli programok futtatshoz alkalmazhat program. screen parancs : Egy j VT-t nyit, (1 shell-en) melyben a "parancs" fut. Ctrl+a+d : bill. kombincival tehetjk httrbe. screen -R $(pidof SCREEN) : paranccsal tudjuk eltrbe hozni. Ctrl+a+? : elhozhatjuk a legfontosabb bill. kombincikat Ctrl+a+c : j ablakot hozhatunkltre. Ctrl+a+p VAGY n : elz vagy kvetkez ablakra ugrs. (previous, next) time -v parancs # A parancs lefutsi idejt mri

Kernel,modulok,fordtslsmod

top

# Betlttt modulok kilistzsa

rmmod modulnv # Betlttt modul lekapcsolsa a kernelbl modprobe modulnv # Modult tlt be a kernelbe modinfo modulnv # a modulrl kapunk informcit ldd program # Kirja a programhoz szksges megosztott knyvtrakat, fggsgeket # A fordts menete, rviden. (ez csak az egyik mdszer)

bvebben# Megfelel kernel verzi beszerzse (www.kernel.org, pl.: linux2.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) # Belps a ltrejtt knyvtrba # make mrproper (ha mr prblkoztunk belltsokal) # 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 llomny)

Csomagkezels

top

./configure make make install # Csomag teleptse forrsbl alien apt # Csomag konverter program (pl.: .rpm .deb etc.) /Advanced Package Tools, csomagkezel/ -cache search : keress -cache showpkg csomag : megmutatja a csomag fggsgeit -cache policy csomag : a csomag teleptett s telepthet verziit adja -get -get -get -get install csomag : telepts remove csomag : trls autoclean : nem hasznlt csomagok trlse update : frissts

meg

-get upgrade : frisstsek teleptse -get dist-upgrade : distro frissts -get -f install : trtt, hinyz csomagoknl a bartunk. -get clean : apt cache tiszttsa -get build-dep csomag : telepts minden egyes csomagjval egyt -get source csomag : a csomag forrsnak letltse -file list csomag : kilistzza a csomag tartalmt dpkg /Debian packages/ # .deb csomagkezel -i csomag : telepts -r vagy --purge : trls -reconfigure csomag : csomag jrakonfigurlsa -l : csomagok listzsa -I csomag : csomag informcik megjelentse -S fjl : megmutatja melyik csomaghoz tartozik a fjl # A dpkg bartsgosabb arca

dselect

A Red Hat csomagkezeljerpm # Red Hat Package Manager rpm -ivh csomag.rpm # csomag teleptse rpm -Uvh csomag.rpm # Frissts vagy telepts. # Ha nincs teleptve , telepti, ha teleptve van, megprblja frissteni rpm -Fvh csomag.rpm # Csak frissts. Ha nincs teleptve a csomag, kilp rpm -e csomag.rpm # Trls rpm -q csomag.rpm # Megvizsglja, hogy teleptve van e a csomag, s milyen verzi rpm -qa # Az sszes teleptett csomag vizsglata

Hlzatarp ifconfig

top# ARP cache manipullsa # Hlzati informcik lekrse, konfigurlsa

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 hlkrtya) # 255.255.255.0 a netmask. ifdown eth0

# eth0 eszkzt lekapcsolja ifup eth0 # eth0 eszkzt felkapcsolja ( dhcp esetn kr IP-t a kiszolgltl) host

# Lekrdezseket kezdemnyez a DNS kiszolgl fel, tartomnyokrl, znkrl. -t ns valami.hu : valami.hu nameservert adja meg -t mx valami.hu : valami.hu levelez szervereirl ad informcit hostname iperf # Svszlessg korltozsra hasznlatos program. curlftpfs -o allow_other username:[email protected] /csatolasi/pont # Felcsatolhatunk ftp trhelyeket, loklis fjlrendszernkbe. (fusermount segtsgvel) # # # # manually: 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 # Belltja vagy megjelenti a rendszer host-nevt.

# A megolds.: mknode -m 666 /dev/fuse c 10 229 echo 0 > /proc/sys/net/ipv4/ip_forward # Ha gpnket router-knt hasznljuk, rdemes belltanunk a csomag tovbbtst # 1-es engedlyezi a tiltst, 0 tiltja a tiltst! echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Belltjuk, hogy broadcast ping-re ne vlaszoljon gpnk echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all # Belltjuk, hogy ne vlaszoljon gpnk a ping-re echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter # Engedlyezzk a hamis csomagok szrst ...etc -------------# Ezek a belltsok rendszerlelltskor elvesznek, rdemes ket valamely indulskor # lefut script-be tenni, a hlzati interfszeket konfigurl script el. -------------etherwake # Magic packet-et kld a wake-on-lan enabled hlkrtyra ethtool # Ethernet krtya belltsok megjelentse, vltoztatsa iptraf # Hlzat terhelst figyel program

mii-tool # Hlzati tesztel nbtscan # NetBIOS informcikat adja meg, a hlzaton

net usershare add megosztasnev /eleresi_ut comment acl # Megoszt knyvtrakat a hlzaton # Ha a fenti parancs ilyen hibt dob.: "(net usershare: usershare are currently disabled)" # az albbiakban kell eljrnunk: # mkdir /usr/local/samba/lib/usershares # chgrp userneved /usr/local/samba/lib/usershares # chmod 1770 /usr/local/samba/lib/usershares #smb.conf global rszbe a kvetkezket.: # usershare path = /usr/local/samba/lib/usershares # usershare max shares = szm # (or the desired number of shares) netstat

# Informcikat r ki a hlzati alrendszerrl -r : route kimenete -i : interfsz tbla -tp : TCP/IP -t hasznl processzek listja

netstat -tn|grep ':80'|tr -s ' '|cut -d ' ' -f5|cut -d':' -f1 # kik csatlakoznak a gpnkre a 80-as porton? netcat # TCP/IP swiss army knife nload ngrep # grep, hlzati forgalomhoz netsed # Hlzati csomagok vals idej megvltoztatsra alkalmas program # Network load - Hlzati terhels vizsglat

nslookup www.host.com # host.com IP cmnek vizsglata nmap # Elssorban port scanner, de igen sokrt alkalmazs -O ip_cim : Op.rendszer detektls -p 1-10 ip_cim : Portok vizsglata 1-10 ig. -p U:53,111,137,T:21-25,80,139,8080 ip_cim : UDP-n 53,111,137, TCP-n 2125,80,139,8080-at vizsgl. ping host # Ping jelet kld a host-nak -b ip_tartomny : broadcast zenet klds route # tvlaszt tbla megjelentse (Routing table) route add -net 192.168.10.0 netmask 255.255.255.0 eth0

# A 192.168.10.0-s hlzatra men csomagokat az eth0-ra irnytja a rendszer # A hlt gy mr ltnunk kell

route add defaul gw 192.168.10.254 # 192.168.10.154-es IP-vel rendelkez router (gateway) hozzadsa a routing table-hez. route del default gw # Alaprtelmezett tjr trlse a routing table-bl. rsh nevben # Tvoli shell -l user gepnev parancs : a "parancs"-ot lefuttatja a tvoli gpen, user

smbclient # SMB hlzati erforrsok tallzsa smbclient -M gpnv # zenet kldse Windows-os gpekre (net-send szolgltats). Elklds:Ctrl + D az zenet vgn echo zenet | smbclient -M gpnv : azonnal kldi, nem kell Ctrl+D ssh host /Secure SHell/ # Titkostott hlzati bejelentkezs # config file-k.: /etc/ssh/sshd_config, /usr/local/etc ssh-keygen -t rsa : RSA kulcs ltrehozsa ssh-hoz. # Biztonsgos tvoli fjl tvitel # Hlzaton tmen forgalmat figyeli. -i ethX : Az ethX csatoln tmen forgalmat figyeli. traceroute host # A hlzati tvonal kirsa a clszerverig (host) /IP hlzaton/ trickle # Svszlessg korltozsra hasznlatos program. -u 100 -d 200 proftpd : A proftpd dmon szmra biztost 100KB fel, 200KB letltsi svszlt. tsclient # Terminal Services Client proftpd # FTP kiszolgl dmon # config file.: /etc/proftpd # FTP kiszolgl # Remote desktop kliens stunnel # SSL (Secure Socket Layer) titkostott kapcsolatba csomagolhatunk protokollokat. # pl.: POP3, IMAP, etc.

scp tcpdump

pure-ftp rdesktop

squid # Proxy kiszolgl # config file.: /etc/squid/squid.conf vsftpd /Very Secure FTP daemon/ # config file.: /etc/vsftpd # Nhny fontos krds.: -anonymus_enable : anonymus ftp engedlyezse. Szksg van egy ftp nev -local_enable : normal felhasznlkat engedjk be. (kell az anonymus hoz

user-re. is)

-write_enable : engedi az rst -local_umask : felhasznlk autmatikus jogai (default 022) -anon_upload_enable : anonymusknt feltlthetnk -anon_mkdir_write_enable : anonymusknt mkdir engedlyezs -xferlog_enable : xfer log-ot r a daemon -connet_from_port_20 : 20-as portot hasznl -chown_uploads : anonymusknt feltlttt fjlok tulajdonosnak megvltoztatsa -chown_username : Kinek a tulajdona legyen a file -idle_session_timeout : inkatv kapcsolatok bontsi ideje wireshark # Hlzati forgalom figyel (GUI) wondershaper # Egyszer svszlessg korltozsra hasznlatos program. ethX 1024 1024 : Az ethX eszkz rszre biztost 1024Kbit fel s letltsi svszlt. ethX clear : Trli a belltsokat.

Bash programozs

top

# A batch fjlhoz hasonl eljrs. # Programunk els sorban minden esetben meg kell adnunk a futtat programot, jelen esetben a bash-t. # Teht a fjlunk kezdete legyen: #!/bin/bash # Felkiltjel nlkl ms futtat programot is megadhatunk a programunk els sorban. # Futtatsi jog nlkl nem tudjuk hasznlni, ezrt chmod +x file # Programunk futtatshoz ./program_nev parancsot kell hasznlnunk.

rsjelek# Escape-karakter: \ Bourne Again Shell escape-karaktere. Tbbek kztt ezzel a jellel lehet elrni, hogy az t kvet specilis karakter elvesztse mdost hatst. # Dollrjel: $ Segtsgvel vltoz neve s rtke kztt tudunk klnbsget tenni. Ha $valtozo-t runk, az a vltoznk rtkt fogja visszaadni. # Ktszeres idzjel: " " Az idzjelek arra valk, hogy egyes karakterek vagy lefoglalt

szavak specilis jellegt feloldjk. # Egyszeres idzjel: ' ' Megakadlyozza a hjat (shell), hogy a $-t a vltozk jelzsnek tekintse # Szgletes zrjel: [] Intervallumok meghadsra szolgl eszkz # Krdjel: ? Egy elem helyettestsre szolgl jel # Csillag: * Joker karakter, brmennyi karakter helyettestsre # Felsvessz: ` (jobbra tart - AltGr + 7) Opertor, mely a kt ` ` kztt lv jelsort vgrehajtja, s a kimenett adja vissza gy, hogy az j sor karakter helyre szkzt rak. # Kettskereszt: # Kommentezs eszkze. (megjegyzs)

Dediklt krnyezeti vltozkEDITOR : Az alaprtelmezett szvegszerkesztnk HOME : Felhasznli knvvtrunk elrsi tvonala MAIL : Berkez email-jeink alaprtelmezett knyvtra PATH : Azok az elrsi tvonalak, melyekben a shell futtathat llomnyokat keres OSTYPE : Az opercis rendszernk tpusa PAGER : Az alaprtelmezett file nzegetnk elrsi tvonalt kell tartalmaznia PWD : A knyvtr, ahol ppen vagyunk. (Szimblikus linknl nem egyezik meg a pwd kimenetvel!) SHELL : A jelenleg fut shell-nk teljes elrsi tvonala TERM : A Terminlunk tpust tartalmazza Ezek rtkeinek kiratsra a kvetkez parancs hasznlhat: echo $VALTOZO_NEV

Shell vltozkrtkad utastssal.: valtozo=rtk : a vltoznk rtke legyen "ertek" valtozo=$(echo 2+3 | bc) : a vltoznk rtke legyen 2+3, bc-vel kiszmolva. export valtozo : shell vltoznkat krnyezeti vltozv tesszk unset valtozo : ha mr nincs szksg r, mint krnyezeti vltoz.

Bels vltozkecho $0 # A fut program neve echo $$ echo $? # A legutols parancs visszatrsi rtke # A fut program PID-je

Csvezetkek# " | " segtsgvel tudjuk egy program kimenett (stdout) egy msik program bemenetre (stdin) csatolni. pl.:

ps aux | grep iceweasel # Az sszes folyamat kimenett a grep szr bemenetre irnytjuk, amely az iceweasel-t keresi. # stdin - standard input, jele.: fd0 (alaprtelmezett bemenet, pl.: monitor) # stdout - standard output, jele.: fd1 (alaprtelmezett kimenet, pl.: billentyzet) # stderr - standard error, jelen.: fd2 (alaprtelmezett hibacsatorna) ./program 2> hiba.txt # Programunkat lefuttatjuk, az esetleges hibkat (stderr) a hiba.txt-be irnytjuk, # az stdout helyett. ./program 1> kimenet.txt 2>&1 # Programunkat lefuttatjuk, kimenett (stdout) a kimenet.txt-be mentjk, valamint # az esetleges hibkat (stederr) hozzfzzk a kimenet.txt-hez. cat file1 # nek, majd # | sort | wc -w > file2 file1-et tartalmt a sort-nak adja t, az rendezi, majd tadja a wca wc kimenete a file2-be rdik

Nhny egyszer plda.:#!/bin/bash echo Hello World! # A szoksos Hello World kirsa, programunk futtatsakor. #!/bin/bash STR="Hello World" echo $STR # Az STR vltoz deklarlsa, majd rtknek kiratsa. #!/bin/bash tar -cZf /var/backup.tgz /home/user # /home/user tartalmt menti s tmrti 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 tartalmt, napi dtummal # elltva egy .tgz llomnyba tmrtve menti. #!/bin/bash if ["foo" = "foo1" ]; then echo a felttel igaz else echo a felttel hamis fi # Egyszer if-else szerkezet

Egyszer szerkezetek.: if, while, until, for-if szerkezet.: #!/bin/bash T1="foo" T2="bar" if [ "$T1" = "$T2" ] then echo a feltetel igaz else echo a feltetel hamis fi # eldntjk T1 s T2 rtkrl, hogy egyenlek e. -while szerkezet.: #!/bin/bash COUNTER=0 while [ $COUNTER -lt 10 ]; do echo a szamlalo erteke: $COUNTER let COUNTER=COUNTER+1 done # COUNTER vltoznkat 1-el nveljk addg, amg 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 vltoznkat 20-as kezdrtkrl 1-el cskkentjk, amg el nem ri a 10-et. -for ciklus (C szer) #!/bin/bash for i in `seq 1 10`;do echo $1 done # az i vltoznkat felveszi 1-tl 10-ig az rtkeket, majd ki is rjuk a kpernyre -for ciklus (a knyvtr elemeire) #!/bin/bash for i in $( ls );do

echo a konyvtar elemei: $i done # kiratjuk a kpernyre az aktulis knyvtr elemeit

Egyszer fggvnyek.:#!/bin/bash function quit { exit } function hello { echo Hello! } hello quit echo foo # Egyszer fv. deklarls, majd az rtkek kiratsa ( a 10. sor sosem fut le!) #!/bin/bash function quit { exit } function e { echo $1 } e Hello e World quit echo foo # Egyszer fv. deklarls, majd az rtkek kiratsa ( a 11. sor sosem fut le!)

Tovbbi pldk.:#!/bin/bash echo "Most `w -h | wc -l` felhasznl van bejelentkezve." # Kiratjuk programunk segtsgvel, hogy hny felhasznl van bejelentkezve #!bin/bash test -d /home/user && echo van || echo nincs # Megvizsgljuk, hogy van e /home/user knyvtr, kt kimenet elgazssal (&&) # 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 elz plda, csak kicsit msknt. # [-test parancs, ]-test zrs #!/bin/bash

if [ -s /etc/motd ]; then echo nagyobb; else echo zerus; fi # Megvizsgljuk, hogy a /etc/motd nagyobb e nullnl, vagy zrus. # -s akkor ad IGAZ-at, ha a fjl ltezik s nagyobb 0-nl. #!/bin/bash for i in *.mp3; do mpg123 "$i"; done # Az aktulis knyvtrban az sszes mp3 kiterjeszts llomnyt, az mpg123 # nev programmal lejtszuk.

Egyb programokamsn acpi

top

# MSN kliens # ACPI eszkzk informcii

acpid bitchx

# acpi program dmonja # IRC kliens (TUI)

badblocks # Lemez ellenrz (Bad sectorokat keres) -o file_nev : a hibs sectorokat a file_nev llomnyba menti cal # Szveges naptr -y : az aktulis v teljes naptrt mutatja meg # vruskeres szoftver # Trli a kpernyt dict # Sztr program opendict dict-freedict-hun-eng : magyar-angol dict-freedict-eng-hun : angol-magyar # Nem csinl semmit, sikertelenl. (1-es visszatrsi rtkkel)

clamav clear

false

firestarter # Tzfal konfigurl fsck # Filesystem check. # Lemez-ellenrz (helytelen lellts utn autmatikusan lefut.) # A helyre nem hozott llomnyokat a lost+found knyvtrba teszi.

fwbuilder # Tzfal bellt

gaim # MSN, irc, etc, kliens gpg -c file # Fjl titkostsa (OpenPGP) gpg file # Fjl kititkostsa gparted hdparm # Merevlemes informcik -i /dev/hdx : Merevlemeznkrl ad informcit -Tt /dev/hdx : Sebessgmr eszkz hddtemp /dev/hdx # Lemez hmrsklet figyel k3b # KDE alap cd-dvd r program (GUI) kopete mbmon # Motherboard monitoring memtest86 # Memria tesztel alkalmazs mplayer # Mdia lejtsz qemu setterm # Konzol belltsai tpconfig tpctl # IBM ThinkPad hardver konfigurl true # Nem csinl semmit, sikeresen. (0-s visszatrsi rtkkel) # Touchpad konfigurl # Processzor emultor # MSN kliens # Lemez partcionl

thosutils # Toshiba laptop programok reset vlc # Mdia lejtsz xchat # IRC kliens (GUI) # Visszalltja a konzol belltsait

xmms # Audi lejtsz program xmms-liveice # Audi kimenetet kldi a southcast-nek xdpyinfo # X kiszolgl informcik yes > file # Csupa y-t r a file-ba, elg gyorsan. :) zgv # Konzolos kpznzeget

Hasznos linkek

top

A nagy Linux topic - PH! Bash programozs - eng Bash programozs - hun Debian - Felhasznli dokumentci Debian Reference - eng Debian teleptsi tmutat DNS Howto - hun Hlzati programozs - Beej Hungarian Unix Portal Jtkok Linux-on - hwsw.hu Linux alkalmazsok - prog.hu Linux rendszeradminisztrtorok kziknyve Linux, a kezdet - VladimirR Squid - prog.hu Szabilinux TLDP - Magyar Linux Dokumentcis Project Ltogatk: 68067 2008.07.14-tl