3D flipper játék/Pinball Game: pinball
Admirális játék/Free Cell Card Game: freecell
Adobe Acrobat (ha telepítve van): acrobat
Adobe Designer (ha telepítve van): acrodist
Adobe ImageReady (ha telepítve van): imageready
Adobe Photoshop (ha telepítve van): photoshop
Aknakereső játék/Minesweeper Game: winmine
Automatikus frissítések/Automatic Updates: wuaucpl.cpl
Betűtípusok/Fonts: control fonts Billentyűzet tulajdonságai/Keyboard Properties: control keyboard Bluetooth alapú fájlátvitel varázsló/Bluetooth Transfer Wizard: fsquirt
chkdsk.exe/Check Disk Utility: chkdsk
Címjegyzék/Windows Address Book: wab
Címjegyzék-importáló eszköz/Windows Address Book Import Utility: wabmig
Csevegés ablak nyitása/Microsoft Chat: winchat
Csoportházirend/Group Policy Editor (XP Prof): gpedit.msc
Dátum és idő tulajdonságai/Date and Time Properties : timedate.cpl DDE megosztás/DDE Shares: ddeshare
Direct X Control Panel (ha telepítve van): directx.cpl
Direct X diagnosztikai eszköz/Direct X Troubleshooter: dxdiag
diskpart.exe/Disk Partition Manager: diskpart
Dr. Watson for Windows/Dr. Watson System Troubleshooting Utility: drwtsn32
Egér tulajdonságai/Mouse Properties: control mouse
Egér tulajdonságai/Mouse Properties: main.cpl
Energiagazdálkodási lehetőségek tulajdonságai/Power Configuration:powercfg.cpl Eseménynapló/Event Viewer: eventvwr.msc
Eszközkezelő/Device Manager: devmgmt.msc
Fájlaláírás ellenőrzése/File Signature Verification Tool: sigverif
Fájlok és beállítások átvitele varázsló/Files and Settings Transfer Tool : migwiz
Fekete macska játék/Hearts Card Game: mshearts
Fekete özvegy játék indítása/Spider Solitare Card Game: spider
Felhasználói fiókok/User Account Management: nusrmgr.cpl
Felügyeleti eszközök/Administrative Tools: control admintools
Firefox (ha telepítve van): firefox
Hálózat beállítása varázsló/Network Setup Wizard: netsetup.cpl
Hálózati kapcsolatok/Network Connections: control netconnections Hálózati kapcsolatok/Network Connections: ncpa.cpl Hangok és audioeszközök tulajdonságai/Sounds and Audio : mmsys.cpl Hardver hozzáadása varázsló/Add Hardware Wizard: hdwwiz.cpl
Helyi biztonsági beállítások/Local Security Settings: secpol.msc
Helyi felhasználók és csoportok/Local Users and Groups: lusrmgr.msc
Illesztőprogram-ellenörző/Driver Verifier Utility: verifier
Indexelő szolgáltatás/Indexing Service: ciadv.msc
Internet Explorer: iexplore
Internet tulajdonságai/Internet Properties : inetcpl.cpl
Internetcsatlakozás varázsló/Internet Setup Wizard : inetwiz
Játékvezérlők/Game Controllers: joy.cpl Karaktertábla/Character Map: charmap
Képernyő billentyűzet/On Screen Keyboard: osk
Képolvasó és fényképezőgép varázsló (kell kamerakapcsolat)/Windows Picture Import Wizard (need camera connected) : wiaacmgr
Kijelentkezés a Windowsból/Logs You Out Of Windows: logoff
Kisegítő lehetőségek varázsló/Accessibility Wizard : accwiz
Kisegítő lehetőségek/Accessibility Controls/: access.cpl Komponensszolgáltatások/Component Services: dcomcnfg
Lemezkezelés/Disk Management: diskmgmt.mscMappabeállítások/Folders Properties: control folders
Megjelenítés tulajdonságai/Display Properties: control desktop
Megjelenítés tulajdonságai/Display Properties: desk.cpl
Megjelenítés tulajdonságai/Megjelenítés/Display Properties (w/Appearance Tab Preselected): control color Megosztott mappák/Shared Folders: fsmgmt.msc
Microsoft Access (ha telepítve van): access.cpl Microsoft Excel (ha telepítve van): excel
Microsoft Frontpage (ha telepítve van): frontpg
Microsoft Movie Maker: moviemk
Microsoft nagyító/Windows Magnifier: magnify
Microsoft Paint: mspaint
Microsoft Powerpoint (ha telepítve van): powerpnt
Microsoft Word (ha telepítve van): winword
Nero (ha telepítve van): nero
Notepad indítása: notepad
Nyomtatók és faxok/Printers and Faxes: control printers
Objektumcsomagoló/Object Packager: packager
ODBC adatforrás: felügyelő/ODBC Data Source Administrator: odbccp32.cplOutlook Express: msimn
Paint: pbrush
Parancssor/Command Prompt: cmd
Programok telepítése és törlése/Add/Remove Programs: appwiz.cpl Real Player (ha telepítve van): realplay
Regisztrációs adatbázis szerkesztő/Registry Editor: regedit
Regisztrációs adatbázis szerkesztő/Registry Editor: regedit32
Rendszer-beállítás szerkesztő/System Configuration Editor: sysedit
Rendszerkonfigurációs segédprogram/System Configuration Utility: msconfig
Rendszertulajdonságok/System Properties : sysdm.cpl Saját karakterek szerkesztése/Private Character Editor: eudcedit
Segédprogram-kezelő/Utility Manager: utilman
Súgó és támogatás/Help and Support : helpctr
Számítógép-kezelés/Computer Management: compmgmt.msc
Számológép/Calculator: calc
Szinkronizálandó elemek/Microsoft Syncronization Tool : mobsync
Tanúsítványok/Certificate Manager: certmgr.msc
Távoli asztali kapcsolat/Remote Desktop: mstsc
Teljesítmény/Rendszermonitor/Performance Monitor: perfmon.msc
Teljesítmény/Rendszermonitor/Performance Monitor: perfmon
Területi és nyelvi beállítások/Regional Settings : intl.cpl Tördezettségmentesítő/Disk Defragment: dfrg.msc
Tweak UI (ha telepítve van): tweakui
Új kapcsolat varázsló/Internet Connection Wizard : icwconn1
Ütemezett feladatok/Scheduled Tasks: control schedtasks
Vágókönyv megjelenítő/Clipboard Viewer: clipbrd
Vezérlőpult/Control Panel: control
Windows Backup Utility (ha telepítve van): ntbackup
Windows bezárása/Shuts Down Windows: shutdown
Windows biztonsági központ/Security Center: wscui.cpl
Windows Explorer: explorer
Windows feladatkezelő/Task Manager: taskmgr
Windows Media Player: wmplayer
Windows Messenger: msmsgs Windows névjegye/Windows Version (to show which version of windows):winver
Windows tűzfal/Windows Firewall: firewall.cpl
Windows XP fiókadatbázisának titkosítása/Windows System Security Tool: syskey
Wordpad: writeA Parancssor me
gnyitásakor az aktuális mappa alapértelmezés szerint
mindig a Documents and Settings\felhasználónév, ahol a felhasználónév az éppen
bejelentkezett felhasználó nevével megegyező könyvtár. Persze, megtanultuk,
hogy milyen egyszerűen válthatunk akár partíciót, akár könyvtárt, mégis sokkal
gyorsabb és kényelmesebb volna, ha a Windows Intézőben bandukolva, egyszerűen
egy mappa nevén a jobb egérgombbal kattintva a megjelenő menüből megnyithatnánk
a Parancssort úgy, hogy az a kijelölt mappában nyíljon meg. A Windows nem ismer
lehetetlent: nézzük, hogyan oldható ez meg!
A Sajátgép ablakban válasszuk ki az Eszközök -> Mappa beállításai
menüpontot, és lépjünk a Fájltípusok fülre. Keressük ki a fenti listából a
Mappa bejegyzést. (Figyelem! Néhány sorral feljebb van egy Fájlmappa sor - ne
azon végezzük el az alábbi műveletet, mert ezzel alaposan összekavarhatjuk a
Windows működését!) Kattintsunk alul a Speciális gombra. A megjelenő panelen
kattintsunk az Új gombra. Az Új művelet ablakban a Művelet feliratú mezőbe
írjuk be: Parancssor, az alatta levő mezőbe pedig a következőt: cmd.exe /k
"cd %1". Az OK gombok megnyomásával sorban zárjuk be a paneleket. Már
csak a tesztelés maradt hátra: a Sajátgép ablakban kattintsunk bármelyik
meghajtóra vagy mappára a jobb egérgombbal, és a megjelenő menüből válasszuk ki
a Parancssor menüpontot.
Novemberben belekóstoltunk a parancssor, más néven a konzol használatába,
megtanultunk néhány alapvető parancsot (lásd Alapvető fájlműveletek című táblázatunkat),
szó esett a könyvtárakról, az elérési útról és az átirányításról is. Most, a
folytatásban először ismerkedjünk meg a Windows néhány kevésbé ismert, bár
annál érdekesebb programjával, amelyet a parancssorból érdemes használni.
Lássuk akkor a kínálatot!
Az attribútum kifejezés talán sokak számára nem hangzik túl ismerősen. Ha
az Intézőben egy tetszőleges állományra állva a jobb gombos menüből
kiválasztjuk a Tulajdonságok menüpontot, a megjelenő panel legalján találjuk az
adott állomány attribútumait (más szóval tulajdonságait), ami esetünkben lehet
írásvédett vagy rejtett. Az előbbi azt jelenti, hogy a fájl nem felülírható,
míg az utóbbival arra utasíthatjuk az operációs rendszert, hogy ne mutassa meg
nekünk az állományt. (Az Eszközök -> Mappa beállításai panel Nézet fülén
bekapcsolhatjuk a Rejtett fájlok és mappák megjelenítését, ilyenkor az
Intézőben a rejtett állományok némileg halványabb betűkkel jelennek meg.)
Az attribútumok állítása parancssorból is megoldható, mégpedig az attrib
paranccsal. Ez nemcsak a fenti két tulajdonságot tudja állítani, hanem az
archív és a rendszerattribútumot is. Az előbbi az operációs rendszerek
hőskorában komoly feladatot töltött be: ennek bekapcsolásával jelölte a
rendszer a biztonsági mentést végző alkalmazások számára, hogy az állomány
tartalma megváltozott az utolsó mentés óta. Néhány alkalmazás azonban a mai
napig használja, például a Neróban beállítható, hogy CD-írás után kapcsolja ki
az archív attribútumot a kiírt állományokon. A rendszerattribútum - könnyen
kitalálható - az operációs rendszerhez tartozó fontos állományokat jelölte. Ez
a Windows XP-ben érdekes lehetőséget kínál: előfordulhat, hogy bekapcsoljuk
ugyan a rejtett fájlok megjelenítését, ám bizonyos mappákat vagy állományokat
mégsem szeretnénk megjeleníteni az Intézőben. Például a Program Files
könyvtárban akad néhány olyan bosszantó mappa (xerox, windows nt), amellyel nem
tudunk mit kezdeni; semmire sem használhatók, a Windows azonban nem hagyja őket
letörölni. Dugjuk el őket, ha nincsenek szem előtt, nem bosszantanak.
Nyissuk meg a konzolablakot (ismétlésképpen: Start -> Minden Program
-> Kellékek -> Parancssor vagy Start -> Futtatás -> cmd -> ), és
lépjünk át a Program Files mappába a cd /Prog* parancs kiadásával. (Ugye emlékszünk
a csillag dzsókerkarakterre, amellyel bármit helyettesíthetünk? Esetünkben
megkímél minket a „ram Files" szöveg és a szükséges idézőjelek
begépelésétől.) A következő paranccsal rejthetjük el az orrunk elől a xerox
mappát: attrib +s +h xerox
Először a beállítandó attribútumokat soroljuk fel: az s a rendszert, a h
a rejtett tulajdonságot jelöli (az angol system és hidden szavak első
betűiként), az előttük levő pluszjel pedig a bekapcsolást. Ezt követi a
könyvtár neve - természetesen akár egy állományt is megadhatunk paraméterként,
vagy fájlok csoportját, megint csak a csillagot használva. Próbáljuk ki, és
látni fogjuk, hogy a xerox mappa eltűnik a Program Filesból. (Ez persze csak
akkor igaz, ha a Mappa beállításaiban nem kapcsoltuk ki az operációs rendszer
védett állományainak megjelenését.)
Essen szó a másik két attribútumról is: az r írásvédettséget (read-only)
az a pedig az archív tulajdonságot állítja. Az attribútumok kikapcsolásához a
mínuszjelet használhatjuk, például az attrib -r akarmi.txt parancs írhatóvá
teszi az akarmi.txt szövegállományt. Van a parancsnak két további kapcsolója
is: a /s kiterjeszti a művelet hatását a megadott mappában, valamint az összes
alkönyvtárban levő állományokra, míg a /d magukra az alkönyvtárakra is. Ne feledjük,
a parancs paramétereit és működésének leírását bármikor lekérhetjük, ha a /?
paraméterrel hívjuk meg!
Sokakkal előfordult már, hogy a Windows XP mellé kísérletképpen egy másik
Windows operációs rendszert - vagy éppen egy másik XP-t - is telepítettek
valamilyen célból. Később ezt az állapotot megszüntették, ám a számítógép
minden bekapcsoláskor konokul megkérdezte, hogy melyik rendszert akarjuk
betölteni, noha ez a bizonyos másik rendszer már rég nem volt sehol. Megoldás lehet
erre a C: partíció gyökerében levő rejtett rendszerállomány, a boot.ini
szerkesztése - de van egy sokkal egyszerűbb lehetőség is, a bootcfg parancs
használata.
A bootcfg roppant érdekes és a rendszergazdák számára nagyon hasznos
parancs, ugyanis bizonyos paraméterek megadásával akár távoli gépek
bejelentkezési szokásait is megváltoztathatjuk vele. Másik érdekessége, hogy
külön főparaméterekkel, valamint azokhoz tartozó különböző alparaméterekkel is
ellátták, tehát használata első látásra nem is olyan egyszerű, ráadásul
meglehetősen veszélyes is, ha nem figyelünk oda, mit csinálunk.
Nekünk jelen pillanatban a /delete főparaméterre lesz szükségünk amelyhez
a /s, /u, /p és /id alparaméterek tartoznak. Az első hármat rögtön figyelmen
kívül is hagyhatjuk - koncentráljuk az utolsóra! Erről azt mondja a súgó, hogy
ezzel kell megadni, a boot menü hányadik menüpontját akarjuk törölni. Ha a
másodikat, akkor a bootcfg /delete /id 2 parancsot adjuk ki, és máris
megszabadultunk a felesleges bejegyzéstől, egyszersmind magától a bootmenütől
is, amely többé nem jelenik meg, ha már csak egy operációs rendszer adatai
vannak benne.
Amennyiben hosszabb távon használunk két rendszert, esetleg szükség lehet
arra, hogy megváltoztassuk az alapértelmezettet, azt, amelyiket a menü
automatikusan elindítja, ha lejárt a választásra fenntartott idő. Ehhez a
parancs /default főparaméterét kell használnunk, a fentihez hasonló módon.
Például a bootcfg /default /id 2 a második operációs rendszert állítja be
alapértelmezettnek, legközelebb újraindulásnál már ez fog elindulni, ha nem
avatkozunk közbe a bootmenüben.
Segélyvonal fórumunkon szinte havonta felbukkanó probléma, hogy valaki
korábban kisajátított magának egy könyvtárt (általában a Dokumentumokat), majd
egy Windows-újratelepítés után nem tud hozzáférni. A háttérben zajló folyamatok
megmagyarázásától most eltekintünk, viszont emlékeztetnénk arra, hogy a
megoldás korántsem egyszerű: előbb ki kell kapcsolni az egyszerű
fájlmegosztást, utána pedig a mappa tulajdonságaiban kell turkálni egy
biztonsági fülön. Ugyanezt megoldhatjuk két egyszerű cacls parancs kiadásával,
amely a paraméterként megadott állományok és mappák hozzáférési jogosultságait
állítja be. Segítségével tetszőleges felhasználónak vagy felhasználói
csoportnak adhatunk jogosultságot tetszőleges mappákhoz vagy állományokhoz való
hozzáférésre, illetve el is vehetjük tőlük ezt a jogot. Példánknál maradva,
tételezzük fel, hogy a Kati néven bejelentkezett felhasználó a Windows
újratelepítése után nem tudja megnyitni a d:\iratok mappát. A cacls d:\iratok
/G Kati:F parancs kiadásával máris teljes hozzáférést adtunk neki az iratok
mappához, a cacls d:\iratok\*.* /G Kati:F paranccsal pedig a benne levő összes
állományhoz. Mindkét parancs kiadásakor egy biztonsági kérdésre kell az
<I> (vagy angol rendszereken az <Y>) billentyű lenyomásával (mint
Igen vagy Yes) válaszolnunk, ezután hajtódik végre a művelet.
Az első paraméter a mappa vagy állomány, amelynek meg szeretnénk
változtatni a hozzáférési jogait. A /G paraméter ehhez a listához adja hozzá a
felhasználót vagy felhasználói csoportot a megadott jogosultságokkal. Ennek a
formátuma a következő: felhasználó:jogosultság, ahol a jogosultságok a
következők lehetnek:
N - nincs
R - olvasás (read)
W - írás (write)
C - módosítás (change)
F - teljes jogosultság (full control)
Érdemes tanulmányozni a parancs többi paraméterét is, sokkal egyszerűbben
és hatékonyabban használható, mint az intézős, kattintgatós változat, és még az
egyszerű fájlmegosztást sem kell ki-be kapcsolgatni hozzá.
Hálózatos varázslatok
A Windows számos parancsot (programot) tartalmaz, amellyel lekérdezhetjük
számítógépünk hálózatos működésének paramétereit.
Az egyik ilyen parancs, amit bizonyára sokan ismernek, az ipconfig. Ha
csak így simán, paraméter nélkül beírjuk, akkor rövid választ kapunk, amelyből
kiderül, hogy az aktuális hálózati kapcsolatnak mi az IP-címe, mi az alhálózati
maszkja és az átjáró IP-címe. Ugyanezt az információt megkaphatjuk úgy is, ha a
Start -> Vezérlőpult -> Hálózati kapcsolatok ablakban kétszer kattintunk
egy kapcsolatra, majd egyszer a Tulajdonság gombra, a felső listán kiválasztjuk
a TCP/IP protokoll listaelemet, és ismét rákattintunk a Tulajdonságok gombra.
Vajon melyik az egyszerűbb?
Ha kicsit bővebb információra vágyunk, írjuk be az ipconfig /all
parancsot. Ez az összes aktív kapcsolat részletes adatait adja vissza, amihez a
Windowsban végig kéne kattintgatni úgy fél napot.
Jó hasznát vehetjük az ipconfignak akkor is, ha DHCP-kiszolgáló oszt
IP-címet hálózati kapcsolatunk számára. Az ipconfig /release paranccsal
visszaadhatjuk a korábban kapott IP-címet (ezzel tulajdonképpen kikapcsoljuk a
TCP/IP kapcsolatot adott hálózati kártyánkon), míg az ipconfig /renew
kiadásával újat kérhetünk, vagy megújíthatjuk a korábbit. A DHCP-kiszolgáló
működésétől függően vagy egy másik IP-címet kapunk, vagy ugyanazt, amelyik
korábban volt (például a UPC chellós internetkapcsolatoknál).
Érdekességképpen kipróbálhatjuk a /displaydns paramétert is: ez azoknak a
hálózati címeknek a listáját adja vissza, amelyekkel a közelmúltban kapcsolatba
kerültünk. Azért, hogy ne kelljen folyton a DNS-kiszolgálóhoz fordulni a
hálózati név IP-címre történő fordításáért, az utolsó néhány cím eltárolódik
ebben a pufferben. A puffert a /flushdns paraméterrel üríthetjük ki, illetve a
/registerdns-sel kézzel vihetünk bele címeket.
Amennyiben csak a környezetünkben (szűkebb értelemben: a gépünkben) levő
hálózati eszközök MAC-címére (a Media Access Control kifejezés rövidítése, a
hálózati eszközök egyedi hardverazonosítója, amelynek alapján a hálózati csomag
eltalál az adott eszközhöz) vagyunk kíváncsiak, használjuk a getmac parancsot.
Érdemes rögtön a /v paraméterrel meghívni, különben a címeken kívül normál
halandó számára jobbára értelmezhetetlen krikszkrakszot ad vissza (már ha a
MAC-címek 16-os számrendszerbeli számértékeit nem tekintjük annak). A parancs
jól használható nagyobb hálózati környezetben, illetve érdekessége, hogy az
eredményt nemcsak táblázatos formában, hanem a /fo csv paramétert használva
vesszővel elválasztott listán is vissza tudja adni, amely könnyen
feldolgozható, például egy táblázatkezelővel. Ehhez persze az eredményt nem árt
átirányítani egy állományba, valahogy így (a /nh az oszlopfejlécek kiírását
tiltja le): getmac /v /nh /fo csv >maccimek.csv
Valószínűleg mindenki találkozott már az internet kapcsán a ping
kifejezéssel. Gyakran alkalmazzák az internetkapcsolat minőségének mérésére. A
ping elküld egy speciális hálózati csomagot a paraméterben megadott címre, és
méri, hogy mennyi idő telik el azalatt, míg a csomag célhoz ér, és onnan a
válasz visszaérkezik a mi gépünkhöz. Nyilván minél kisebb ez az időérték, annál
jobb, azaz gyorsabb a kapcsolat. Ha semmilyen más paramétert nem adunk meg,
akkor négy ilyen oda-vissza utat mér meg, és ezekből készít egy kis
statisztikát. Amennyiben időtúllépési üzenetet kapunk, az azt jelenti, hogy a
csomag elveszett útközben. Ez önmagában még nem feltétlenül utal hálózati
hibára, ugyanis sok kiszolgáló egyszerűen „eldobja" a pingcsomagokat, hogy
csökkentse a terhelést hálózati eszközein.
Leggyakrabban használt paramétere a -n, amellyel azt adjuk meg, hogy hány
csomagot küldjön ki, és mérjen meg a ping, valamint a -t, amellyel arra
utasítjuk, hogy mindaddig küldözgessen csomagokat, és mérje az időket, amíg le
nem állítjuk a + megnyomásával. Például a ping www.pcworld.hu /n 10 tíz csomag
idejét méri meg, és ezt követően készít statisztikát. Érdekes lehet még a /w
paraméter, amely után megadhatjuk, hogy mennyi idő elteltével tekintse
elveszettnek a csomagot. A számot ezred másodpercben kell megadni, az alapérték
4000, tehát 4 másodperc.
Akik használták már a pinget, biztosan ismerik a tracert (hivatalos nevén
traceroot) parancsot is, amely a számítógépünk és a paraméterben megadott cím
között hálózati eszközök (például útválasztók) címét és a visszatérési időket
listázza ki, illetve hiba esetén megmutatja, hol szakad meg a kommunikáció. A
kedvenc szerverünkig tartó utat így deríthetjük fel: tracert www.pcworld.hu.
Ez a parancs tulajdonképpen pingcsomagokat küld ki a címzett felé, de
korlátozza, hogy a csomag hány útválasztón mehet keresztül. A korlátot
egyesével növelgetve „végigpingeli" a teljes útvonalat, így nemcsak a
közbülső hálózati eszközök címét tudja meg, de időeredményei is lesznek
mindegyik eszközhöz. Alapértelmezés szerint a korlát maximum értéke 30, ha
tehát ennél „messzebb" van a megadott cél, akkor a tracert nem tudja
visszaadni a teljes útvonalat (ezt egyébként felülbírálhatjuk a -h paraméter
után megadott számmal).
Ha statisztikára vágyunk, használjuk inkább a pathping parancsot. A
pathping pontosan ugyanazt teszi, mint a tracert, azzal a különbséggel, hogy
előbb megállapítja a gépünk és a megadott hálózati cím közti eszközök címét,
majd ezeket 150 másodpercen keresztül pingeli, és ebből készít statisztikát.
Ennek eredményét is érdemes inkább egy szövegállományba átirányítani, hogy
utána könnyebben értelmezhető, feldolgozható legyen.
Végül a netstat kiváló biztonsági eszközként megmutatja, hogy
számítógépünk milyen portokon (kommunikációs kapukon) keresztül milyen más
gépekkel vagy hálózati eszközökkel áll kapcsolatban. Számos paraméterével a
legkülönbözőbb információkat csikarhatjuk ki belőle. Érdemes először a netstat
/a /o változattal próbálkozni. Az eredményül kapott listából kiderülnek a
jelenlegi TCP és UDP kapcsolatok adatai, illetve az, hogy gépünk milyen
portokon „figyeli" a hálózatot vagy az internetet, azaz, hol lehet hozzá
kapcsolódni. A /o paraméter egy külön PID-oszloppal egészíti ki az
eredménytáblát; ez a gépünkön futó azon programok vagy folyamatok azonosítója,
amelyek korábban kommunikáltak a külvilággal, vagy csak várják a lehetőséget. A
PID alapján azonosíthatjuk ezeket a programokat a Feladatkezelővel is, de ha
már a Parancssorban vagyunk, használjuk inkább a tasklist parancsot ezek
listázására (és a taskkillt a kilövésükre).
Visszatérve a netstatra, a /s paraméterrel igazi összefoglalót kérhetünk
az eddig kommunikációk számszerű eredményéről, bár az egyes adatok valószínűleg
inkább a hálózat és az internet működésében jártas szakemberek számára lesz
érdekes. Ők okvetlenül ismerkedjenek meg a többi paraméter jelentésével is!
Eddig tartott mai kirándulásunk a Parancssor világában. Ha bírjuk még
szusszal, a következő alkalommal is előásunk néhány, talán kevésbé ismert
kincset, majd elkezdünk ismerkedni a batch programokkal - sőt írunk is
néhányat. Aki nem bírja ki addig parancsok nélkül, látogassa meg a
hopp.pcworld.hu/2421-es címen a Microsoft angol nyelvű tudásbázisát.
Linux parancsok, kezdőknek
Egy Debian GNU/Linux alaprendszer telepítésének menete részletesen, képekkel illusztrálva az alábbi linkeken található.:
Debian GNU/Linux 4.0 rendszer telepítése - Expert módban
Debian GNU/Linux 5.0 rendszer telepítése - GUI módban
A telepítés és sikeres belépés után ajánlatos parancsok.:
dpkg-reconfigure debconf
# A lehetőségek közül a low-t "alacsonyt" választva 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élheted meg magad, ha a következő parancsokat elsajátítod.:
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.
/ # 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
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.
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.
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
'/ *#/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 csak egyszer írja ki
-k +2 fi: fi nevű 2 oszlopos file-ban a második oszlop alapján rendezi sorba
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.
mkdir -t ext2 /dev/ram0 4096
mount /dev/ram0 ramdisk/
# 4Mbyte os ramdisk-et hozunk létre, és felcsatoljuk.
updatedb
A PC-n található file-okról készít adatbázist, melyben az mlocate/locate parancsokkal könnyen és gyorsan lehet keresni.
/etc/updatedb.conf-ban meghatározható paraméterek:
--------------------------------------------------
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
/var/lib/mlocate/mlocate.db :A default adatbázis elérési útvonala
mlocate 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
# lokális meghajtókról nem készül bejegyzés, csak a server-ről!!
mlocate -d dbdir/dbname.db macilaci
# a fent létrehozott dbname.db-ben olyan állományokat keres, melyeknek a nevében szerepel macilaci
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
# 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
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 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 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
umount /dev/eszköz
# Lecsatlakoztatás
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
rsync
# Hasznos file másoló, szinkronizáló program
-a : Archive módban másol. Tulajdonosok, attributumok, linkek megmaradnak.
-v : Bőbeszédű a kimenetkor.
-z : Tömörítve küldi el.
-b : Biztonsági mentésekhez használatos. *.~ végű file keletkezik.
--exclude '*~' : kivéve a ~ végü file-ok.
-avz /eleresi/ut/honnan/* 192.168.1.1:/eleresi/ut/hova
# Relatív elérési úttal megadva, archive módban tömörítve menti a hálózati gépre.
tar
# Ki-be tömörítő
Listázás
--------
-tvf file.tar : megmutatja a mentes.tar tartalmát
-tvfz file.tar.gz : megmutatja a mentes.tar.gz tartalmát
-tvfj 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.
-cvfz file.tar.gz /eleresi/ut/amit/mentunk : az elérési útvonal alatt levő adat gzip-be tömörítése.
-cvfj 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
-xvfz file.tar.gz : Kitömöríti a gz-t, majd a tar-t, és egy /file könyvtárba teszi
-xvfj file.bz2 : bzip2-t tömöríti ki
Exclude példa
-------------
-cvfz 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.
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.
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)
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 é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 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
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)
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áéható 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.
-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
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 parancs ü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
Crontab 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.
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)
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)
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
# Linux kernel fordítás menete, röviden. (ez csak az egyik módszer)
# 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)
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
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
# A Netfilter (hálózati csomagok feldolgozására szolgáló eszköz) kezelője.
# Az iptables a hálózati csomagok feldolgozási szabályait szerepük alapján szervezett
# táblák formájában kezeli.
#
# Szerepek (táblák - a feldolgozási folyamat típusát jelentik).:
# Csomagszűrés (filter)
# Hálózati címfordítás (nat)
# Egyéb csomagmódosítás (mangle)
# Ezen táblák mindegyikére feldolgozási szabályok (rules) lánca (chain) vonatkozik.
# A szabályok illesztésekből (match - mely csomagokra vonatkozik,) és célokból (target - mit kell
# tennünk az illeszkedő csomaggal) épülnek fel.
#
# Az iptables öt kapcsolódási pontot határoz meg a feldolgozás során.:
# PREROUTING : A hálózati csatolótol kapott csomag, még az INPUT lánc előtt ide kerül.
# INPUT : Épp mielőtt megérkezne a csomag egy helyi folyamathoz. (itt illik szűrni a bejővő forgalmat)
# FORWARD : Egy átjáró gépen a továbbított csomagok itt áramlanak keresztül
# OUTPUT : Miután egy helyi folyamat létrehozta a csomagot, itt távozik (kimenő csomag szűrés!)
# POSTROUTING : Mielőtt elhagyná a hálózati csatolót a csomagunk, az OUTPUT lánc után.
#
# A táblák, és beépített láncaik:
# filter tábla: FORWARD, INPUT, OUTPUT
# nat tábla: PREROUTING, OUTPUT, POSTROUTING
# mangle tábla: PREROUTING, FORWARD, INPUT, OUTPUT, POSTROUTING
#
# A láncok házirendje (policy).:
# Ezt a policy-t lánconként (INPUT, OUTPUT, FORWARD) a tűzfal szkriptünk legelején fixálnunk kell.
# Azok a csomagok, amelyek a tűzfal láncaiban felsorolt szabályokra nem illeszkednek, azokra a default
# policy vonatkozik, azaz vagy ACCEPT, vagy DROP.
# Pl.: Ha a tűzfalunk INPUT láncában csak a 80-as portot engedéjezzük, a policy-nk pedig DROP,
# akkor minden más porton érkező csomagot (amely nem illeszkedik a 80-as portot definiáló szabályra) eldob.
#
# Lánc műveletek, szabály módosítások:
# -N : új lánc létrehozása
# -X : üres láncok törlése
# -P : default policy beállítása
# -L : a láncok szabályainak megjelenítése
# -F : a lánc összes szabályának törlése
# -A : új szabály hozzáadása egy lánchoz
# -D : törlés az adott láncból
#
# Forrás (-s, --source, --src) és célcímek (-d, --destination, --dst) megadásának módjai.:
# Teljes név használata.: localhost, vagy pl.: www.debian.org
# IP cím alapján a meghatározás.: 127.0.0.1
# IP cím tartomány(ok) alapján.: 192.168.1.0/24 vagy 192.168.1.0/255.255.255.0
# (Mindkét tartomány 192.168.1.1-től 192.168.1.254-ig fedi le az IP címeket.)
# Inverz módon is megadhatunk forrást és célt, "-s !" localhost" formájában.
#
# Protokollok megadása.:
# -p TCP vagy UDP vagy ICMP formájában történik.
# Itt is alkalmazható az inverz, azaz "-p ! TCP", minden csomagra illeszkedik a szabály amely nem TCP.
#
# Interface meghatározása.:
# Az interface maga a fizikai eszköz amelyen bejön, vagy távozik a csomag.
# INPUT láncon "-i eth0" értelmezhető, nincs kimeneti interface-ük.
# OUTPUT láncon "-o eth0" adható meg, "-i" kapcsolóra egy csomag sem fog illeszkedni.
# FORWARD láncon alkalmazhatóak a "-i eth0" és "-o eth0" interface-ek.
# Alkalmazható joker karater az interface-eknél, ez a "+" jel. "-i eth+" -> az összes eth iface.
#
# Portok, port tartományok megadása
# A portok megadhatóak számmal, vagy névvel. (utóbbi esetben.: /etc/services).
# Port tartományokat "port:port" formában kell alkalmaznunk. Invertálás itt is alkalmazható.
# --source-port VAGY --sport : a csomagok forrásportját adjuk meg
# --destination-port VAGY --dport : a csomagok cél portját határozuk meg.
Folytatás később. Addig emésszétek! :)
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.
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
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.
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.
-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
ssh host /Secure SHell/
# Titkosított hálózati bejelentkezés
# config file-k.: /etc/ssh/sshd_config, /usr/local/etc
ssh-keygen -t rsa : RSA kulcs létrehozása ssh-hoz.
scp
# Biztonságos távoli fájl átvitel
sntop
# Top-szerű hálózati forgalom figyelő szoftver.
tcpdump
# Hálózaton átmenő forgalmat figyeli.
-i ethX : Az ethX csatolón átmenő forgalmat figyeli.
traceroute host
# A hálózati útvonal kiírása a célszerverig (host) /IP hálózaton/
trickle
# Sávszélesség korlátozásra használatos program.
-u 100 -d 200 proftpd : A proftpd démon számára biztosít 100KB fel, 200KB letöltési sávszélt.
tsclient
# Terminal Services Client
proftpd
# FTP 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 vennünk 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.1.43
netmask 255.255.255.0
auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static
address 192.168.1.44
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.
# A parancsértelmező által ismert parancsok fűzhetőek össze egy "programba" vagy más néven shell script-be. (lásd .bat)
# A program első sorában minden esetben meg kell adni a futtató programot (shell-t), jelen esetben a bash-t.
# Tehát a fájl kezdete legyen bash esetén:
#!/bin/bash
# Felkiáltójel nélkül más futtató program (parancsértelmező) is megadható a program első sorában.
# Futtatási jog nélkül nem futtatható, ezért
chmod +x programnev
# Program futtatásához a lehetséges parancs(ok)
./programnev
sh programnev
bash programnev
Írásjelek
\ Escape-karakter:
# Bourne Again Shell escape-karaktere. Többek között ezzel a jellel lehet elérni,
# hogy az őt követő speciális karakter elveszítse módosító hatását.
$ Dollárjel
# Segítségével változó neve és értéke között tudunk különbséget tenni.
# Ha $valtozo-t írunk, az a változónk értékét fogja visszaadni.
" " Kétszeres idézőjel
# Az idézőjelek arra valók, hogy egyes karakterek vagy lefoglalt szavak speciális
# jellegét feloldják.
' ' Egyszeres idézőjel
# Megakadályozza a héjat (shell), hogy a $-t a változók jelzésének tekintse
[] Szögletes zárójel
# Intervallumok megadá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)
& And jel
# Parancsok háttérbeli futtatására szolgáló eszköz.
# Pl.: updatedb &
&& v. ; Kettős And jel, vagy pontosvessző:
# Parancsok futtathatóak egymás után.
# Pl.: cp -R /var/www /home/backup && shutdown -h now
Dedikált
környezeti változók
EDITOR : Az alapértelmezett szövegszerkesztő
HOME : Aktuális felhasználói könvvtár elérési útvonala
MAIL : Beérkező emailek 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 típusa
PAGER : Az alapértelmezett file nézegető elérési útvonalát kell tartalmaznia
PWD : Az éppen aktuális munkakönyvtár (Szimbólikus linknél nem egyezik meg a pwd kimenetével!)
SHELL : A jelenleg futó shell teljes elérési útvonala
TERM : A terminál típusát tartalmazza
Ezek értékeinek kiíratására a következő parancs használható:
echo $VALTOZO_NEV
Shell
változók
Értékadó utasítással.:
valtozo=érték : a változónk értéke legyen "ertek"
valtozo=$(echo 2+3 | bc) : a változónk értéke legyen 2+3, bc-vel kiszámolva.
export valtozo : shell változó környezeti változóvá alakítása
# Amennyiben szükséges permanens beállítás, úgy:
# az /etc/profile -ba is szükséges felvenni
unset valtozo : ha már nincs szükség rá, mint környezeti változó.
Belső
változók
echo $0
# A futó program neve
echo $$
# A futó program PID-je
echo $?
# A legutolsó parancs visszatérési értéke
Csővezetékek
(pipe-ok)
# " | " segítségével lehet egy program kimenetét (stdout) egy másik program
bemenetére (stdin) csatolni. pl.:
ps aux | grep iceweasel
# Az összes folyamat listázásának kimenetét a grep szűrő bemenetére irányítja, amely az iceweasel-t keresi.
# stdin - standard input, jele : fd0 (alapértelmezett bemenet, pl.: billentyűzet)
# stdout - standard output, jele : fd1 (alapértelmezett kimenet, pl.: monitor)
# stderr - standard error, jele : fd2 (alapértelmezett hibacsatorna)
./program 2> hiba.txt
# program lefuttatása és az esetleges hibacsatorna (stderr) hiba.txt-be irányítása
# az stdout helyett.
./program 1> kimenet.txt 2>&1
# program lefuttatását követően a kimenetet (stdout) a kimenet.txt be menti, valamint
# az esetleges hibák (stederr) hozzáfűzésre kerülnek a txt-hez.
cat file1 | sort | wc -w > file2
# file1-et tartalmát a sort-nak adja át, az rendezi, majd átadja a wc-nek, majd a wc
# kimenete a file2-be íródik
Néhány
egyszerű példa.:
#!/bin/bash
echo Hello World!
# A szokásos Hello World kiírása, a program futtatásakor.
#!/bin/bash
STR="Hello World"
echo $STR
# Az STR változó deklarálása, majd értékének kiíratása.
#!/bin/bash
tar -cZf /var/backup.tgz /home/user
# /home/user tartalmát menti és tömöríti a /var/backup-ba.
#!/bin/bash
OF= /home/user/$(date +%Y%m%d).tgz
tar -cZf $OF /home/user/sajt
# Egyszerű backup script, mely a /hme/user/sajt tartalmát, napi dátummal
# ellátva egy .tgz állományba tömörítve menti.
#!/bin/bash
if ["foo" = "foo1" ]; then
echo "a feltétel igaz"
else
echo "a feltétel hamis"
fi
# Egyszerű if-else szerkezet
Egyszerű
szerkezetek.: if, while, until, for
-if szerkezet.:
---------------
#!/bin/bash
T1="foo"
T2="bar"
if [ "$T1" = "$T2" ]; then
echo "a feltetel igaz"
else
echo "a feltetel hamis"
fi
# eldönti T1 és T2 értékéről, hogy egyenlőek e.
#!/bin/bash
if [ -f /etc/passwd ]
then
echo "letezik!"
else
echo "nem letezik!"
fi
# eldönti, hogy /etc/passwd file létezik-e vagy sem.
# Blokkos eszköz (pl. pendrive) esetén -b kapcsolót kell használni!
#!/bin/bash
test -f /etc/passwd && echo "letezik" || echo "nem letezik"
# A egyel feljebb levő probléma másik megoldása.
# Blokkos eszköz (pl. pendrive) esetén -b kapcsolót kell használni!
-File szintű kapcsolók
if [ -a file ] then ...
-a : igaz, ha létező file
-e : igaz, ha létező file
-b : igaz, ha blokkos eszköz (pl /dev/sda)
-c : igaz, ha "karakterspeciális" file Pl.: (/dev/ttyACM0 - ez egy nokia telefon.)
-d : igaz, ha könyvtár
-f : igaz, ha regular file
-G : igaz, ha a futtató user csoportjáé a file
-N : igaz, ha módosították az utolsó olvasás óta
-O : igaz, ha a futtató useré a file
-r : igaz, ha olvasható?
-L : igaz, ha symbolic link
-s : igaz, hogy nem üres
-z : igaz, hogy üres
-w : igaz, ha írható a scriptet futtató user számára
# Tagadás mindenhol használható, azaz.:
! -f : nem regular file?
-Változó szintű kapcsolók
if [ file == file2 ] then ...
file1 == file2 egyenlőek?
file1 != file2 igaz hogy nem egyenlőek?
if [ "$(cat tibi)" != "$(cat peti)" ]; then
echo "Tibi nem Peti! :)"
exit 1 # Stop!
fi
-Szám szintű kapcsolók
if [ $foo -eq 3 ] then ...
$foo -eq 3 : igaz, ha foo értéke egyenlő 3-al (equal)
$foo -ne 3 : igaz, ha foo értéke nem egyenlő 3-al (not-equal)
$foo -gt 3 : igaz, ha foo értéke nagyobb 3-nál (greater than)
$foo -ge 3 : igaz, ha foo értéke nagyobb egyenlő 3-al (Greater or equal)
$foo -lt 3 : igaz, ha foo értéke kisebb 3-nál (Less than)
$foo -le 3 : igaz, ha foo értéke kisebb egyenlő 3-al (less than or equal)
"$foo" == "10" foo értéke 10?
# Dupla zárójellel használhatóak ==, !=, >=, >, <, <=..
(($foo <= 3)) foo értéke nagyobb egyenlő 3-nál
-while szerkezet.:
------------------
#!/bin/bash
COUNTER=0
while [ $COUNTER -lt 10 ]; do
echo a szamlalo erteke: $COUNTER
let COUNTER=COUNTER+1
done
# COUNTER változót 1-el növeli 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ót 20-as kezdőértékről 1-el csökkenti, 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ó felveszi 1-től 10-ig az értékeket, majd ki is írja 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írja a képernyőre az aktuális könyvtár elemeit
Egyszerű
függvények.:
#!/bin/bash
function quit {
exit
}
function hello {
echo Hello!
}
hello
quit
echo foo
# Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 10. sor sosem fut le!)
#!/bin/bash
function quit {
exit
}
function e {
echo $1
}
e Hello
e World
quit
echo foo
# Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 11. sor sosem fut le!)
echo "Most `w -h | wc -l` felhasználó van bejelentkezve."
# Kiírja, hogy hány felhasználó van bejelentkezve
test -d /home/user && echo "van" || echo "nincs"
# Megvizsgálja, hogy van e /home/user könyvtár, két kimenetű elágazással (&&)
# Ha van.: van
# Ha nincs.: nincs
# -d : van-e ilyen?
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
if [ -s /etc/motd ]; then echo "nagyobb"; else echo "zerus";
fi
# Megvizsgálja, 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.
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.
< /dev/urandom tr -dc A-Za-z0-9_ | head -c8
# 8 karakteres random jelszó generátor
for i in $(ls); do cat $i >> 123.txt; done
# aktuális könyvtárban található file-ok 123.txt file-ba összefűzése.
host -t mx mydomain.com
nslookup -q=mx mydomain.com
dig -t mx mydomain.com
# MX record check-re használható parancsok
net rpc shutdown -I IP -U DOMAIN/user
# shell-ből Windows klienst állíthatunk le távolról. (ha tudjuk a local admin jelszavát..)
net rpc shutdown -I IP -U DOMAIN/user -f -t 60
# Előbbi parancs, időzítve 60sec-re.
echo tartalom | mailsend -to sendto@domain.dom -from from@domain.dom -starttls
-port 587 -auth -smtp STMP.server.address -sub targy +cc +bc -v -user Username -pass Password
# 587-es porton (TLS) levélküldés. A fenti változók jelentései:
#
# tartalom : az levél tartalma
# sendto@domain.dom : címzett
# from@domain.dom : feladó
# SMTP.server.address : milyen SMTP-n keresztül
# targy : az üzenet tárgya
# user/pass : SMTP user neve, jelszava.
File-ban egymás alá felsorolt számok összegének kiszámítása
---------------------------------
awk '{ sum += $1 } END { print sum }' file
paste -sd+ file | bc
sum=0;for i in $(cat file);do sum=$((sum+$i));done;echo $sum
s=0;while read l; do s=$((s+$l));done
Rengeteg slmgr parancs létezik Windows rendszerek
alatt, viszont ami sokaknak hasznos lehet aktiválással kapcsolatban, most megemlítjük,
mi mit is jelent.
Azt tudnunk kell, hogy az slmgr egy script, ami a
Windows aktiválásáért felelős (nem teljes mértékben). Ezért a rendszer egyik fő
elemének számít, emiatt is figyeljünk oda, hogy mit pötyögünk majd be.
Nyissuk meg a parancssort (CMD), majd ide kell,
bepötyögünk a következőket, amelyek számunkra kelleni fognak.
• slmgr
-dli: a licensszel kapcsolatos információkat közli, az aktiváció állapotát,
milyen kulccsal aktiváltuk (RETAIL) és a termékkulcs utolsó 5 karakterét
mutatja.
• slmgr
-dlv: a -dli parancshoz képest sokkal bővebb információkat kapunk az
aktiválásról.
• slmgr
–ipk kulcs: új termékkulcsot adhatunk meg, ezáltal felülírva a régit. A „kulcs”
helyére kell beírni az új termékkulcsot.
• slmgr
-xpr: megmutatja, hogy még mennyi idő van hátra a Windows (következő)
aktiválásáig, feltéve hogy még nem aktiváltuk azt vagy nem reatil kulccsal
rendelkezünk.
• slmgr
-upk: a termékkulcsot törli és visszatér a 30 napos próbaidőre.
• slmgr
-ato: aktiválja a kulcsot és a licenszet a Microsoft szerverén.
• slmgr
-ckms: alapra állítja a KMS szerver nevét.
• slmgr
-rearm: visszaállítja a türelmi időt, ha még nem aktiváltuk volna a rendszert.
Maximum 3-szori alkalom, tehát 120 nappal tolhatjuk ki a rendszer aktiválását,
próbaverziós (90 napos)
calc
|
Számológép (Calculator)
|
gpedit.msc
|
Helyi csoportházirend-szerkesztő (Local Group Policy Editor)
|
mspaint
|
Microsoft Paint
|
mstsc
|
Távoli asztali kapcsolat (Remote Desktop)
|
perfmon.msc
|
Teljesítményfigyelő (Performance Monitor)
|
inetcpl.cpl
|
Internet tulajdonságok (Internet Properties)
|
diskpart
|
diskpart.exe (Disk Parmelonion Manager)
|
azman.msc
|
Engedélyezéskezelő (Authorization Manager)
|
eventvwr.msc
|
Eseménynapló (Event Viewer)
|
billentyűzet (control keyboard)
|
Billentyűzet tulajdonságok (Keyboard Properties)
(magyar nyelvű Windowsnál a Start Menü keresőjébe a billentyűzet-et kell írni, a
Futtatás mezőbe pedig az angol nyelvű szöveget)
|
timedate.cpl
|
Dátum és idő ( Date and Time Properties)
|
dxdiag
|
DirectX diagnosztikai eszköz (Direct X Troubleshooter)
|
secpol.msc
|
Helyi biztonsági házirend (Local Security Settings)
|
ncpa.cpl
|
Hálózati kapcsolatok (Network Connections)
|
snippingtool
|
Képmetsző (Snipping Tool)
|
credwiz
|
Tárolt felhasználónevek és jelszavak (Stored User Names and Passwords)
|
mmsys.cpl
|
Hang (Sounds and Audio)
|
telephon.cpl
|
Helyinformáció (Phone and Modem Options)
|
powercfg.cpl
|
Energiagazdálkodási lehetőségek (Power Configuration)
|
certmgr.msc
|
Tanúsítványok (Certificate Manager)
|
sigverif
|
Fájlaláírás ellenőrzése (File Signature Verification Tool)
|
diskmgmt.msc
|
Lemezkezelés (Disk Management)
|
charmap
|
Karaktertábla (Character Map)
|
dcomcnfg
|
Komponensszolgáltatások (Component Services)
|
main.cpl
|
Egér tulajdonságok (Mouse Properties)
|
snippingtool
|
Képmetsző (Snipping Tool)
|
regedit
|
Registry Editor
|
sndvol
|
Hangerő (Sound Volume)
|
wf.msc
|
Fokozott biztonságú Windows tűzfal (Windows Firewall with Advanced
Security)
|
logoff
|
Kijelentkezés (Log out)
|
taskmgr
|
Feladatkezelő (Task Manager)
|
write
|
Wordpad
|
chkdsk
|
Lemezellenőrző (Check Disk Utility)
|
lusrmgr.msc
|
Helyi felhasználók és csoportok (Local Users and Groups)
|
desk.cpl
|
Képernyőfelbontás (Display Properties)
|
soundrecorder
|
Hangrögzítő (Sound Recorder)
|
odbcad32
|
ODBC adatforrás-figyelő (ODBC Data Source Administrator)
|
msdt
|
Microsoft-támogatási diagnosztikai eszköz (Microsoft Support
Diagnostic Tool)
|
sdclt
|
Biztonsági mentés és visszaállítás (Windows Backup Utility)
|
dpiscaling
|
Képernyő (DPI Scaling)
|
iexplore
|
Internet Explorer
|
slui
|
A Windows aktiválása (Windows Activation)
|
dfrgui
|
Lemeztöredezettség-mentesítő (Defragment User Interface)
|
notepad
|
Jegyzettömb (Notepad)
|
compmgmt.msc
|
Számítógép-kezelés (Computer Management)
|
appwiz.cpl
|
Program eltávolítása vagy módosítása (Add/Remove Programs)
|
intl.cpl
|
Terület és nyelv (Regional Settings)
|
utilman
|
Kezeléstechnikai központ (Utility Manager)
|
StikyNot
|
Sticky Notes
|
cmd
|
Parancssor (Command Prompt)
|
cleanmgr
|
Lemezkarbantartó (Disk Cleanup Utility)
|
services.msc
|
Szolgáltatások (Services)
|
msinfo32
|
Rendszerinformáció (System Information)
|
downloads
|
Letöltések (Downloads)
|
osk
|
Képernyő-billentyűzet (On Screen Keyboard)
|
msconfig
|
Rendszerkonfiguráció (System Configuration Utility)
|
wmimgmt.msc
|
WMI vezérlő (Windows Management Infrastructure)
|
devmgmt.msc
|
Eszközkezelő (Device Manager)
|
rekeywiz
|
Titkosított fájlrendszer (Encryption File System)
|
msra
|
Windows Távsegítség (Remote Assistance)
|
firewall.cpl
|
Windows Tűzfal (Windows Firewall)
|
soundrecorder
|
Hangrögzítő (Sound Recorder)
|
PrintBrmUi
|
Nyomtatóáttelepítés (Printer Migration)
|
rsop.msc
|
Eredő házirend (Resultant Set of Policy)
|
eudcedit
|
Saját karakterszerkesztő (Private Character Editor)
|
shrpubw
|
Megosztott mappa létrehozása (Windows Share Creation Wizard)
|
shutdown
|
Kikapcsolás (Shutdown)
|
verifier
|
Illesztőprogram ellenőrző (Driver Verifier Utility)
|
fxscover
|
Fax fedőlap szerkesztő (Fax Cover Sheet Editor)
|
wscui.cpl
|
Műveletközpont (Security Center)
|
magnify
|
Nagyító (Magnify)
|
netplwiz
|
Felhasználói fiókok (User Accounts)
|
fsmgmt.msc
|
Megosztott mappák (Shared Folders)
|
wfs
|
Windows faxoló és képolvasó (Windows Fax and Scan)
|
syskey
|
A Windows fiókadatbázisának biztonságossá tétele (Windows System
Security Tool)
|
sysdm.cpl
|
Rendszer tulajdonságai (System Properties)
|
sysedit
|
Rendszer konfiguráció szerkesztő (System Configuration Editor)
|
wuapp
|
Windows Update
|