2020. március 27., péntek

Command Line Interface (CLI)

A Command Line Interface (CLI) vagy Command Language Interpreter (CLI) néven is ismert eszköz egy olyan felület, aminek a segítségével a felhasználók (kliensek) – begépelt szöveg formájában – parancsokat tudnak kiadni a számítógépnek. A beadott parancsokat a parancsnyelvi feldolgozó kezeli, ami operációs rendszerenként eltérő lehet. Ilyen parancssori felület szinte mindegyik operációs rendszeren van, Linuxon például shell-nek hívják. A feldolgozott, vagy végrehajtott parancsok kimenete a képernyőre kerül, de átirányítható fájlokba is, vagy akár a különböző perifériákra. A parancssori felület hatékony módja a számítógépek kezelésének, mivel sok olyan feladatot is el lehet végezni a segítségével, amit grafikus felületen nem lehet megoldani. Továbbá a legtöbb parancssori felület támogatja a különböző script programok futtatását, ezeknek köszönhetően a munka automatizálható, a gyakran ismétlődő feladatok könnyen elvégezhetők. Ezért a haladó felhasználók, rendszergazdák előnyben részesítik a különböző menü vezérelt grafikus felületekkel szemben. A mai modern Unix-szerű operációs rendszerek mindegyike rendelkezik valamilyen rendszerhéj (shell) programmal, amiket használhatunk a parancssori felületen, és ezek tetszőlegesen cserélhetőek. A legelterjedtebb ezek közül a Bash (Bourne Again Shell), de ismertebbek még a dash, zsh, ksh shellek is. A parancssori felületen működő rendszerhéj programok általában rendelkeznek saját utasításkészlettel, vezérlési szerkezetekkel (pl. ciklusok, elágazások, stb) is, és képesek külső programok, parancsok futtatására is, amik az operációs rendszerbe lettek telepítve. Ezeknek a kombinációjával különböző script programok írhatók, melyekkel hatékonyan lehet vezérelni az operációs rendszert, vagy a többi programot. Továbbá a script-ek futtatásán kívül a shell-ek képesek más szerver oldali programozási nyelveket is futtatni, az adott programnyelv értelmezője segítségével. Ilyen nyelvek például a PHP, Python, Perl, Ruby, stb. Az Unix-szerű operációs rendszereken a parancssori felületet távolról is el lehet érni (többnyire felhasználónévvel és jelszóval), ezáltal az ilyen operációs rendszereket futtató számítógépeket bárhonnan lehet felügyelni, menedzselni. Régebben ezt a Telnet nevű hálózati protokoll/szoftver segítségével lehetett elvégezni, azonban ez a protokoll nem biztosított titkosítást, így a vonal lehallgatható volt a két számítógép között. Emiatt már a mai biztonsági elvárásoknak megfelelő SSH protokollt használják erre a célra, ami erős titkosítást használ. ki használt korábban MS-DOS-t, talán ismerős lehet a command.com, a DOS parancsértelmezője. Ez a program jeleníti meg a C:\> promptot. A Windowsban ezt a promptot láthatjuk, ha megnyitunk egy parancssori ablakot (Start menü -> Futtatás -> "cmd" parancs).
A Linux parancsértelmezője kicsit hasonlít a DOS-os vagy Windows-os parancsértelmezőre, de annál jóval többet tud. A Linux parancsértelmezője az úgynevezett shell. Számos Linux-disztribúcióban a bash az alapértelmezett shell. Amikor megnyitunk egy terminálablakot, vagy bejelentkezünk a szöveges konzolon, a bash shell az, ami várja a parancsokat. Aztán amikor beírunk egy parancsot, a shell végrehajtja azt. Csakúgy, mint ahogy több GUI is van (pl. GNOME vagy KDE), a bash mellett is választhatunk más shellt is. A chsh paranccsal könnyedén megváltoztatható az alapértelmezett shell. A normál Linux parancsok mellett a bash bármilyen Linuxos programot is képes futtatni. Így a shell promptnál begépelhetjük egy alkalmazás nevét is (a név általában sokkal rejtélyesebb, mint amivel a grafikus felület menüiben találkozhatunk) és a shell elindítja azt. Terminál módban a parancssoros felület segítségével igen hatékonyan végezhetjük el a rendszerfelügyeleti tevékenységeinket. A legtöbb esetben nem ülhetünk a gép előtt amin dolgoznunk kell, hanem távolról kell rácsatlakoznunk a szerverre és csak úgy végezhetjük el a teendőinket. Ilyenkor nagyban meghatározó tényező a parancssoros kapcsolat által igénybe vett alacsony sávszélesség és ezáltal a szerver gyors reakcióideje. Ma már természetesen a modern szélessávú internetkapcsolatoknak köszönhetően lehetőség van távoli asztal kapcsolatok létesítésére (RDP), így akár a teljes asztalkörnyezet is gond nélkül távirányítható. Azonban sok esetben a feladatokat nem lehet csak a grafikus felületen megoldani, mert nincs minden problémára beépített menü vagy panel. Ilyen helyzetekben szükséges a parancssor vagy parancssori scriptek segítségével elhárítani a problémákat, vagy kivédeni egy esetleges támadást. Továbbá arról sem szabad megfeledkezni, hogy egy élesben használt szervergépen - normál esetben - nem szoktak grafikus felületeket telepíteni, minimalizálva az erőforrások felesleges igénybevételét. Összegzésképpen, - ha csak nem otthoni multimédiás vagy irodai asztali gépnek/laptopnak használjuk a Linuxot - nem kerülhetjük el a terminál és a parancssor használatát. Így ha a Linuxot választjuk operációs rendszerünknek, célszerű minél előbb megbarátkozni vele.

Nincsenek megjegyzések:

Megjegyzés küldése