Ruby rendszergazdák számára
Ruby - gazdag, freeware, egyszerű, rugalmas, tömör, objektum-orientált programozási nyelv. Mostanában nagyon népszerű a hálózaton. Ez népszerűsége részben annak köszönhető, hogy egy nagyon erős platform fejlesztése a web-alapú alkalmazások, sínek, írt Ruby. A Rails, vagy a Ruby on Rails (ROR), ahogy nevezik, amely egy nagyon erőteljes platform gyors és hatékony fejlesztését web-alapú alkalmazások. Ez jól skálázható és számos meglévő web-oldalak segítségével létrehozott Ruby on Rails.
Amellett, hogy a Ruby on Rails, mint a fejlesztési platform, web-alapú alkalmazások, van egy másik, kevésbé ismert Ruby oldalon. Ruby - egy igen hatékony nyelv írásra scriptek, amely áll egy par Python és Perl. Ő óriási lehetőségeket nyújt beépített és külső könyvtárakat, a hatalom, amely lehet, hogy megoldja a problémákat, script - ilyen problémák felbukkannak bármilyen munkakörnyezetben.
Rendszerfelügyelet - az egyik ilyen munkakörnyezetben igénylő írni egy csomó script, hogy megkönnyítse a munka, és növeli a hatékonyságot. a felhasználók kezelése, folyamat-menedzsment, fájlkezelő, szoftvercsomag kezelése, és egyéb alapvető automatikus működés jobban kezeli a forgatókönyvet, mint a rutin manuális műveleteket. Ruby nagyon alkalmas ilyen helyzetekben. Ehhez itt van egy jó meg a könyvtárakban.
Ebben a cikkben fogom kezdeni példa mutatja, hogyan Ruby alkalmazás használható egyszerűsítése néhány alapvető rendszerfelügyelet igényeik script. Ezek a példák igazolják a lehetőséget Ruby, mint egy erős alternatívája a shell szkriptek. Természetesen ezek a példák javítható, bővítik vagy módosítják, ha szükséges. Miután a fő példa fogok bemutatni egy nagyon erős rendszerfelügyelet könyvtár Ruby nevű Cfruby. Ez a könyvtár tartalmazza a széles körű funkciók, amelyek megkönnyítik a rendszer adminisztrációs és menedzsment.
Ruby akcióban
Az első példa (1. lista). Ruby keres fájlokat, amelyek megfelelnek egy adott mintát ilyen módon, és részletes tájékoztatást nyújt a fájlok felhasználóbarát formában. A példa csak egy beépített Ruby felület, ezért a példa működni fog minden platformon fut a Ruby.
Ezen túlmenően, ez a példa azt mutatja, a hatalom a Ruby, nagyban egyszerűsíti ezeket a feladatokat. Ez nem csak egy vetélkedés a find parancsot * nix, de a felépítmény felette, bemutatva Ruby lehetőségeket.
1. listán Fájlok keresése, amelyek megfelelnek egy adott mintát a keresési útvonalat és megjeleníti azok adatait
- vonal 5-11 - kéri a felhasználót, hogy az útvonal és a keresési mintát;
- 16. sor - használja Ruby módszer „megtalálják” az osztály „Find” nyomon követni a megadott keresési útvonalat;
- 17. sor - ellenőrzi, hogy a könyvtár a fájlt talált. ( „”) Ha igen, és ha ez nem rejtett, akkor végre rekurzív át;
- 24. sor - a módszer alkalmazására „fnmatch” osztály „Fájl”, hogy ellenőrizze, hogy a megtalált fájlra meghatározott minta;
- vonal 25-34 - kinyomtatja részletes információt a fájlt, ha a fájl egyezik a minta.
Itt egy példa a kimenő e szkript (2. listát).
Felsorolása a 2. példa első kimeneti
A szisztémás adagolás gyakran van szükség ahhoz, hogy hatékony munkát zip fájlokat kezeli mentések vagy áthelyezni egy sor fájlokat egyik gépről a másikra. Ruby kényelmes itt. A második példa alapján a föld, beleértve egy olyan forgatókönyvet, amit kell archiválni fájlok listája nyert minta megfelelő.
Beépített Zlib-modul segít kezelése gzip-fájlok és elég kényelmes a legtöbb esetben. De itt, hogy hozzon létre egy zip-archívumok és velük dolgozni, az általunk használt egyéb könnyű Ruby nevű könyvtárat „rubyzip” (akkor letölthető a linkre a „források” című részben). Megjegyzendő, hogy ez a példa Ruby «tiszta» és a minta nem függ jelenlétében meghajtó parancssori segédprogramok (3. listát).
- letöltés gem csomag rubyzip képviseli a linkre, és másolja át a rendszer. (Abban az időben az írás volt „rubyzip-0.9.1.gem”);
- run gem install rubyzip-0.9.1.gem
3. lista Munka archív fájlokat
A fájlokat a kereséssel megtalált alapján megadott útvonal és a sablon, a szkript létrehoz egy fájlt nevű test.zip ".
- vonal 9-15 - azt kéri, hogy a felhasználó a keresési útvonalat és a keresési maszk;
- 23. sorban - archívum létrehozása zip-fájl neve "test.zip.
- 25 vezetéken - a módszer használatát a Ruby a lelet az osztály „Find” átadni a megadott keresési útvonalat;
- vonal 26 - ellenőrzi, hogy a könyvtár a fájlt talált. ( „”) Ha igen, és ha ez nem rejtett, akkor végre rekurzív át;
- 33. sor - a módszer alkalmazására „fnmatch” class' fájl „, hogy ellenőrizze, hogy a modell fájl található;
- 35. sor - hozzá a megfelelő fájlsablont zip-archívum.
Itt egy példa kimenetet (lásd a 4. listát).
4. lista példa konzol kimenetet a második példa
Cfruby - fejlett rendszerfelügyelet
Amint azt a honlapján Cfruby: «Cfruby kezelését teszi lehetővé, rendszerfelügyelet a Ruby. Egyesíti a funkciók egy Ruby-könyvtárak rendszeradminisztrációért cfengine-szerű klón (sőt, egy speciális területe nyelv vagy DSL rendszerfelügyelethez). "
Cfruby egy olyan csomag, amely két részből áll:
Cfruby tölthető be Ruby gyöngyszem vagy tar formátumban. Gem módszer egyszerűbb. Töltse le és telepítse a gem "gem install" parancsot.
- Másolja a letöltött gem-fájlt a rendszer (az írást ezt a cikket a „cfruby-1.01.gem”);
- futni gem install cfruby-1.01.gem.
Most Cfruby alkalmazás telepítve van a rendszeren.
Elkezdjük használni Cfruby
Cfruby bizonyítani lehetőségeket, és hogyan lehet jelentősen egyszerűsíti a rendszer adminisztrációs és menedzsment.
Két fő módon lehet elérni a funkciókat, Cfruby:
- a használata Ruby osztályok libcfgruby közvetlenül;
- használat göngyölő cfrubyscript, amely egy egyszerű felületen libcfruby.
A Ruby osztályok közvetlenül libcfgruby
Libcfruby - ez a lényege Cfruby, egyesület modulokat biztosít a különböző funkciók, amelyek egyszerűsítik a karbantartási és a rendszer beállítását. Ahhoz, hogy használni libcfruby, meg kell adni „require_gem” cfruby 'elején a forgatókönyvet, telepítése után Cfruby gem. Ez közvetlen hozzáférést biztosít az összes alapvető modulokat libcfruby, amelyeket fel lehet használni a forgatókönyvet, amit akar. Az egyetlen hátránya ennek a módszernek, a méret libcfruby, és az összes osztályok és módszerek, amelyek található saját névtér. Ezért, annak érdekében, hogy hozzáférjen minden osztályban, meg kell megfeleltetni azt a névteret. Például libcfruby eljárást biztosít, hogy milyen típusú a rendszer. Ahhoz, hogy ez végre az alábbi lépéseket (lásd az 5. listát).
5. lista Első típusú operációs rendszerét libcfruby
Ez csak egy módja annak, hogy megtudja a nevét az operációs rendszert. Mivel a további munka libcfruby script véletlenszerűen töltött összes névterek leírás. Itt a következő eljárás alkalmas használni Cfruby.
A „csomagolóanyagok» cfrubyscript, amely egy intuitív interfész libcfruby
Felhasználásra cfrubyscript hozzá (6. lista):
Listing 6. A cfrubyscript
Ez a parancs magában cfrubyscript script, amely pontos és egyszerűbb felület eléréséhez libcfruby funkciókat.
Mi úgy érjük el cfrubyscript:
- exportálni egy sor változót a globális névtér, mint például a $ os, $ user, $ proc és $ sched;
- kitermelése legtöbb nagy modulok a fő névtérben - okozhat FileEdit.set helyett Cfruby :: FileEdit.set;
- add helper módszerek String és Array, ami végre konkrét Cfruby csapat (szoftver, szerkeszti a fájlokat, és így tovább.);
- is van egy részletes naplót.
Szóval, a nehézkes névtér leírások a script kész. A fenti példa, kiadó egy operációs rendszer típusát, mára annyira (lásd 7. listán).
Listing 7. Ismerkedés az OS típusát a cfrubyscript
Egészen egyszerűen lefordítva egy hívást egy globális változó $ os. Cfruby - nagyon erős alkalmazás, amely sokféle funkciót kezelni * nix-szerű rendszerek.
Nézzünk néhány közülük, és néhány egyszerű példát.
a felhasználók kezelése
Az egyik leggyakoribb és legfontosabb feladat minden adminisztrációs rendszerek kezelése a felhasználók és csoportok. Cfruby egy sor erőteljes módszereket a fenti feladatok elvégzéséhez egy kompakt és egyszerű módon.
Ezt a célt úgy érjük el, alkalmazásával UserManager nyerhető az operációs rendszer modul, amint azt a 8. példában.
Listing 8. előállítás UserManager objektumot libcfruby
Ha minden kész a stílus cfrubyscript, akkor mi lesz, hogy részt vegyen a globális felhasználói kezelő létesítmény kapható $ user, amely közvetlenül használható metódusokat. Követni fogom ezt a módszert, mint a legegyszerűbb és tiszta olvasni.
Itt van, hogyan kell használni, hogy hozzon létre és törölhet egy felhasználó (lásd lista 9).
Listing 9. kezelése használó felhasználók cfrubyscript
Mi történik ebben a példában:
- 1. sor, 2 - a szokásos módon, és tartalmazza libcfruby cfrubyscript a forgatókönyvet;
- 3. sor - Hozzon létre egy új felhasználót a megadott néven a „newusername”, és a megadott jelszót a második érv;
- 4. sor - eltávolítja a felhasználót a felhasználói név szerepel az „newusername”. A második érv lehet igaz vagy hamis, azt jelzi, hogy el kell távolítani a felhasználó saját könyvtárat kell távolítani.
Hasonlóképpen, az A csoport lehetséges műveleteket addgroup () és deletegroup () az objektum UserManager.
folyamatmenedzsment
Egy másik fontos feladata a rendszergazda - Monitoring futó folyamatok és azok kezelése. Cfruby akkor is hasznos lehet itt, ami lehetővé teszi a hatékony folyamatok nyomon követésére.
Itt van, hogy ezt a problémát úgy oldja meg Cfruby (Listing 10).
Listing 10. Process Management használatával cfgrubyscript
Mi történik ebben a példában:
- 3. sor - használata a globális objektum $ proc befejezése érdekében a folyamat „vim”, amely argumentumként. $ Proc.vim - egy objektum típusú ProcessInfo folyamat „vim” indított a rendszerben. Cfrubyscript létrehozza azokat automatikusan;
- 4. sor - elkezd egy új eljárás egy speciális parancs „ps-AKG”. fut módszer neve közvetlenül a parancssorból.
csomagkezelő
Management szoftver a rendszer - egy nagyobb kihívást jelent, hogy kell adnia a rendszergazda. Cfruby eljárásokat biztosít könnyű telepítését és eltávolítását szoftvert a rendszer (lásd Listing 11).
Listing 11. Programirányítás keresztül cfrubyscript
- 3 sor - használata a globális objektum $ pkg PackageManager létrehozott cfrubyscript és fogadását minden csomagot jelen a rendszerben, hívja csomagok () metódus;
- 4. sor - egy listát az összes telepített csomag;
- 5. sor - állítja a Ruby csomagban hívja telepíteni. Az a lehetőség, közvetlen hívó kiegészítő telepítési módszer közvetlenül a csomag nevét.
Ez az a szint, amelyre minden leegyszerűsödik.
fájlkezelés
Cfruby is segít a fájlok kezelése. Létrehozása, szerkesztése, törlése, tulajdonos hozzárendelése, a változás hozzáférést, és még sok mást tennie, csak módszereivel Cfruby (Listing 12).
Listing 12. fájlkezelés cfrubyscript
- 3. sor - változtassa meg a tulajdonos, a csoport és jogosultságokat a fájlt „/ etc / ssh” Közvetlen hívás chown_mod () metódus közvetlenül fájlból. Ez megint tette lehetővé a támogatási tárgyak és módszerek cfrubyscript. Figyeljük meg, hogy minden úgy van, csak egy sort.
Így a fenti példák kellett mutatni, milyen erős ez Cfruby és hogy mennyire könnyű adminisztrálni és kezelni a rendszer egyszerű és hatékony módon. Ezen kívül az alkalmazás nem a rendszer összes adminisztrációs feladatok egyszerűbb és könnyebb az intuitív sor osztályok és módszerek, hiszen ez biztosítja.
következtetés
Ruby - ez nem csak a fejlesztési web-alapú alkalmazás, amely a Rails. Azt is fel lehet használni, mint egy erős programozási nyelv és egy nagyon hatékony alternatívája lehet a szokásos írásban szkriptek a héj, a legtöbb esetben használt írni rendszerfelügyelet szkripteket.
A saját, beépített modulok és számos külső könyvtárakat, Ruby teheti rendszerek hatékonyabbá és minden bizonnyal könnyebb. Ruby - ez egy nagyon hasznos és hatékony eszköz, hogy meg kell állítani az egyes rendszergazda.
Letölthető Resources
Kapcsolódó témák
- Eredeti cikk: Ruby rendszergazdáknak (EN)
- Ruby programozási nyelv. hivatalos oldal Ruby (EN)
- Programozás Ruby. A pragmatikus programozó útmutató. Egy jó vezető tanulási programozni Ruby. (EN)
- Ruby. Töltse le a legújabb verzióját Ruby (EN)
- Cfruby. letöltés rendszerfelügyelet könyvtár Ruby. (EN)
- RubyZip. terhelés könyvtár feldolgozó zip-archívumok Ruby. (EN)