Terminál színezés

Balesetek mindig lehetnek, tegyünk ellenük! – írta: sh4d0w, 14 éve

Nos, próbálok egy újabb, általam hasznosnak ítélt gyakorlati tanácsot prezentálni Nektek, bízom benne, hogy valaki azért majd tényleg hasznosnak tartja.

Kezdjük el főzni a lecsót.
Igen gyakran olvastam különböző szakmai oldalak fórumain balesetekről, amikor is a saját lokális gép helyett a 300 km-re lévőt sikerült lelőni, mindenféle helybeni támogatás nélkül, így gyakran a rendszergazdi nyakába vehette az országot, hogy helyreállítsa a rendszert. Munkámból kifolyólag velem is megeshet ez a hiba, noha eddig még ilyen nem történt velem.

Az ilyen balesetek megelőzésére többféle megoldási lehetőség is nyílik, kezdve a shutdown átnevezéséről és scripteken keresztüli futtatásától egészen a parancs teljes letiltásáig, illetve hasonló mókák alkalmazhatók az iptables-re is; kellemetlen, amikor egy fizikailag nehezen hozzáférhető helyen lévő szerverről zárjuk ki magunkat.

Az általam választott védekezési lehetőség a terminál színezése. Alkalmazásánál persze még mindig észnél kell lenni, valamint nem árthat, ha a saját lokális terminál ablakaink fekete-fehér színösszeállításban játszanak. Persze ha simán csak egy másik terminál-profil alkalmazásáról lenne szó, nem érne egy blogbejegyzést, így csavarunk egyet a dolgon és a távoli terminálok előtér- és háttérszínét bizonyos korlátok között véletlenszerűen fogjuk előállítani.

Néhány scriptre lesz szükségünk, valamint egy szöveges állományra, amiben tároljuk a színkódokat - ez utóbbiból fog válogatni a színeket előállító scriptünk.

rgb.txt

Mint látható, minden színkód legalább kétszer szerepel a fájlban, némileg kivédendő a gépelési hibákat.

Jöjjön ezután az első script, ami tulképpen az rgb.txt felhasználásával előállítja nekünk a színeket:

rndclr

Ebben a fájlban kell beállítanunk az rgb.txt elérési útvonalát a

my @RGBFILE = qw(/elérési_út/rgb.txt);

sorban.

A harmadik és utolsó scriptünk összetesz mindent egy helyre és létrehozza a távoli kapcsolatunkat, ez lesz a

ch.

Itt a

USERNAME=''

sor az érdekes számunkra. Be lehet drótozni fixen, ha minden távoli rendszerre ugyanazt az ID-t használjuk, vagy a script hívásakor második paraméterként is meg lehet adni.

Ha mindezekkel megvagyunk és használjuk a fenti produktumot, azt tapasztalhatjuk, hogy igen miniatűr betűink vannak ezekben a terminálablakokban. Szükségünk lesz egy .Xresources nevű fájlra, amit a saját home-unkban kell elhelyeznünk.

Ha még ezek után is mini karaktereink vannak, adjuk ki ezt a parancsot:

xrdb -merge ~/.Xresources

Ezután rendben lesz a terminálunk. A geometriákkal lehet még játszadozni az .Xresources fájlban, illetve mivel xtermet használunk, ezért a képernyőnyi görgetés ezentúl a Shift + PgUp/PgDn gombokra hárul. Még egy apróság a .Xresources állományhoz: a beállított geometriák az én megjelenítési lehetőségeimhez mértek, másnál esetleg nagyok lehetnek, ilyenkor értelemszerűen csökkenteni kell az első értéket. Én az összes fájlt a home könyvtáram alatt lévő bin-be tettem, kivéve a .Xresources-t.

Íme a teljes csomag egyben.

Köszönet a segítségért Imolai Gábor kollégámnak!