Soluții - PC Magazine Romania, Aprilie 2004
Luna lui Mărțișor
Răzvan Sandu
Ionel Teodoreanu - "Să vie Bazarcă!"
Stau în fața panoului mare din sticlă și privesc afară. Liziera pădurii din
depărtare a început să capete o nuanță verzuie, ca și pâlcurile de salcâmi de
vis-à-vis. Jos, în parcare, doi băieți descarcă, în joacă, dintr-o dubiță, buchete
multicolore de flori de primăvară, care vor râde pe birourile fetelor, cu ocazia
Mărțișorului. Alături, pe asfaltul abia zvântat, o colegă nu-și poate lua ochii
de la mașina ei mică, albastră, nou cumpărată - și parcă bucuria ni se transmite
tuturor. E-atâta soare și-atâta optimism în jur, încât mă simt cu cel puțin
zece ani mai tânăr… Aproape că am uitat de servere, de firewall-uri, de
RFC-uri, de importantele mașini Unix…
De-aceea, prieteni, astăzi am să vă spun câteva nimicuri. Așa, ca de 1 Martie…
Poate vreți să plecați în vacanță…
În sfârșit, ai reușit s-o convingi pe roșcata de la parter să îți accepte invitația
de a petrece un weekend la munte! N-ai vrea ca vreun server "căzut"
să-ți strice momentul, nu? Ei bine, e cazul să afli ce mai face UPS-ul ăla pe
care
l-ai cumpărat anul trecut și care zace pe undeva, prin magazie, fiindcă n-ai
avut timp să te ocupi de el. Pentru început, adu-l în birou, pufăie-l de praf
- pe biroul colegului de-alături, bineințeles J - pune-l în priză și pornește-l.
Majoritatea UPS-urilor trebuie să se încarce cel puțin opt ore înainte de a
"intra în sarcină" - adică exact timpul care-ți va fi necesar să accepți
ideea că trebuie să faci efortul de a citi documentația J.
Pentru că voi, toți cei de pe-aici, lucrați mai demult cu aceste mașini inteligente
care se cheamă calculatoare, nu m-aș lansa să vă explic ce este acela un UPS.
Și totuși, pentru cei care nu cunosc acronimul: UPS (Uninterruptible Power
Source) este un dispozitiv pe bază de acumulatori care permite computerului
vostru să "supraviețuiască" unei căderi de tensiune. Mai precis, el
realizează câteva funcții foarte utile:
- pentru o perioadă determinată, alimentează computerul cu energie în cazul
în care nu mai aveți curent din rețeaua electrică;
- în funcționare normală, când aveți curent, "filtrează" neregularitățile
alimentării, vârfurile de tensiune etc., protejând placa de bază și celelalte
componente;
- în cazul în care alimentarea s-a întrerupt pentru o perioadă mai lungă, iar
acumulatorii s-au descărcat, închide normal computerul, pentru a preveni distrugerea
sistemului de fișiere de pe disc. În funcție de setările din BIOS, dacă alimentarea
revine, calculatorul va putea reporni automat.
Conectat corect, orice UPS va continua să alimenteze computerul cu energie,
în caz de pană, pentru o perioadă stabilită (care depinde doar de capacitatea
acumulatorilor). Aceasta este o funcție fundamentală, care se realizează, bineînțeles,
indiferent de tipul computerului sau de sistemul de operare instalat. Probleme
apar numai în cazul în care dorim să oprim normal computerul atunci când acumulatorii
s-au descărcat. Detectarea stării acumulatorilor și comanda de închidere se
fac prin intermediul unui cablu serial conectat la UPS și la un port COM (/dev/ttySx)
al calculatorului. Evident, acesta trebuie să "știe" de existența
UPS-ului de care este legat. Și, pentru ca software-ul de comandă să funcționeze,
sunt necesare drivere pentru UPS-ul pe care îl avem.
Din păcate, în acest domeniu nu există (încă) o standardizare, astfel încât
fiecare model de UPS are nevoie de driverele sale specifice.
Dacă ai norocul ca UPS-ul să fie nou-nouț, probabil că pe undeva, prin cutie
se găsesc cablul serial și un CD. Vom începe prin a afla dacă producătorul oferă,
pe acest CD, informații legate de funcționarea sub Linux, drivere etc. Sau,
măcar, adresa Web a vreunui sit de unde acestea pot fi descărcate. Dacă nu,
va trebui să ne bazăm pe driverele generice existente în distribuție - mai precis,
în pachetul Network UPS Tools (NUT) - http://us1.networkupstools.org/
Eu, personal, am avut puțin noroc. Pentru UPS-ul meu Mustek PowerMust 600Plus
și pentru Fedora Core 1, driverele NUT sunt disponibile, în format binar la:
http://students.fct.unl.pt/~cer09566/nut/index.html
Și funcționează excelent !
S-ar putea ca modelul vostru de UPS să nu fie suportat de NUT. Dacă nici driverul
generic nu funcționează (genericups), atunci poate că pe CD se găsește un alt
software care vă va permite să comandați UPS-ul (cum ar fi UPSMON de la PowerCom).
Spărgătorul de nuci
Funcționalitatea pachetului NUT, destul de complexă, este asigurată de trei
arhive RPM: nut, nut-clients și nut-cgi, care se găsesc și pe CD-ul 3 al Fedora
Core. Pe scurt, programul se compune din:
- drivere (pentru diverse modele de UPS-uri)
- serverul upsd - care face disponibilă informația de stare furnizată de UPS
în întreaga rețea
- clienți - care intră în legătură cu upsd și execută anumite acțiuni în funcție
de semnalele furnizate de acesta
- cgi-bin - sunt clienți speciali care pot fi folosiți pentru afișarea informațiilor
furnizate de UPS pe o pagină Web
Poate că mulți dintre voi se vor întreba de ce NUT are o asemenea structură
complicată. Ideea care stă în spatele acestei construcții este simplă: mai multe
calculatoare (rulând, eventual, sisteme de operare diferite) pot fi deservite
de un singur UPS de capacitate mai mare și fiecare trebuie să poată ști cum
să reacționeze la schimbările din rețeaua de alimentare. Existența driverelor
face posibilă separarea detaliilor hardware de construcție a UPS-ului de restul
programului, iar monitorizarea se poate face atât local, cât și de la distanță.
Punerea în funcțiune a UPS-ului începe cu alegerea driverului corect. Pentru
UPS-ul meu PowerMust 600Plus, am descărcat acest driver de la adresa arătată,
sub forma unui pachet .rpm și l-am instalat - driverul propriu-zis este executabilul
/sbin/powermust, pe care l-am lansat și…atât. Dacă nu aveți același noroc
ca și mine, s-ar putea să fie nevoie să efectuați câteva teste, ca să identificați
un driver compatibil, dintre cele generice. Pagina manual a driverului generic
descrie în detaliu ce aveți de făcut - man genericups.
Odată găsit driverul care deservește UPS-ul vostru, editați fișierul /etc/ups/up.conf
și adăugați acolo informațiile despre acest dispozitiv:
[powermust600plus] driver = powermust port = /dev/ttyS0 desc = "UPS-ul de la calculatorul lui Gigel" Porniți, apoi, driverul ales folosind utilitarul upsdrvctl: /sbin/upsdrvctl start
Următorul pas înseamnă punerea în funcțiune a serverului upsd, care va furniza
informații despre starea UPS-ului atât mașinii locale, cât și altor clienti,
prin rețea. Pentru asta, trebuie să stabiliți, mai întâi, cine are dreptul de
a controla UPS-ul vostru. De aceea, pentru controlul UPS-ului se vor defini
un nume de utilizator și o parolă. În fișierul /etc/ups/upsd.conf scrieți (dacă
nu există deja) o regulă de acces de forma:
ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 ACCESS grant monitor localhost ACCES deny all all
Această regulă va permite ca UPS-ul vostru să poată fi monitorizat doar de
pe mașina locală, pe care o deservește. Desigur, puteți modifica regula după
cum doriți - amănunte vă stau la dispoziție în pagina manual a fișierului upsd.conf-
tastați man upsd.conf.
În /etc/ups/upsd.users trebuie să definiți utilizatorul care va monitoriza
UPS-ul și parola acestuia. De exemplu:
[monuser] password = foartesecret allowfrom = localhost upsmon master
Secțiunea de mai sus a creat utilizatorul monuser, care poate da comenzi UPS-ului
folosind parola "foartesecret". Acest utilizator se poate conecta
de la stația localhost (mașina locală, definită în regula de acces anterioară).
În fine, ultima linie arată faptul că UPS-ul este direct conectat la portul
serial al acestui computer (poate exista și situația în care UPS-ul alimentează
și computerul B din rețea, dar legătura serială este făcută la computerul A).
În acest caz, linia corespunzătoare în fișierul de configurare al computerului
B este upsmon slave.
Odată realizate toate acestea, porniți serverul upsd:
/usr/sbin/upsd
El va începe să primească informații de la driverul UPS-ului și să le distribuie
în rețea. Puteți verifica acest lucru folosind comanda upsc:
/usr/sbin/upsc powermust600plus@localhost
care va afișa câteva date de stare despre UPS
Ultimul pas constă în a porni programul de monitorizare upsmon. Pentru asta,
trebuie să editați, mai întâi, fișierul său de configurare /etc/ups/upsmon.conf
și să adăugați o linie pentru UPS-ul pe care doriți să-l monitorizați:
MONITOR powermust600plus@localhost 1 monuser foartesecret master
Desigur, monitorizarea nu este completă fără să vă asigurați că totul va funcționa
după un restart. Dincolo de metoda "manuală" de editare a scripturilor
din directorul /etc/rc.d, pe sisteme Red Hat și Fedora trebuie să specificați
tipul driverului de UPS și portul serial folosit în /etc/sysconfig/ups și să
porniți serviciul ups folosind utilitarul ntsysv.
Desigur, fiind vorba despre o funcție critică, veți dori să testați noua instalare.
Dacă aveți încredere în tot
ce-ați lucrat este momentul să smulgeți cablul de alimentare al UPS-ului din
priză J! UPS-ul meu Mustek mi-a semnalizat imediat, printr-un mesaj, faptul
că s-a trecut pe baterii. Iar după aproximativ zece minute a închis normal computerul,
aducându-mi aminte că mai trebuie să plec și acasă… J!
O situație specială, dar foarte des întâlnită, apare atunci când, după o pană
de curent, alimentarea electrică revine în timp ce computerul se închide. Această
situație, denumită power race, poate lăsa sistemul într-o stare instabilă. UPS-urile
de bună calitate tratează acest eveniment închizând și redeschizând imediat
computerul. Însă unele modele mai ieftine nu pot realiza acest lucru. De aceea,
se programează o repornire a sistemului după un anumit interval de timp.
În pas cu moda
Dacă totul funcționează așa cum ne-am propus, ați mai făcut un pas către obținerea
unui sistem cu grad foarte înalt de disponibilitate. Personal, la prima experiență
cu NUT, am fost uimit de rezultat: un fel de Hopa-Mitică ce revine mereu în
starea stabilă pe care mi-o doream, fără să resimtă șocurile și capriciile condițiilor
exterioare. Ce altceva v-ar mai putea tulbura vacanța despre care vorbeam la
început?
Ei bine, ca administratori de rețea, una dintre atribuțiile voastre, prieteni,
este și ținerea "la zi" a sistemelor pe care lucrați. În lumea Unix,
sunt extrem de rare situațiile în care instalarea versiunii mai noi a unui program
să aducă probleme în funcționarea mașinii, așa cum se întâmplă uneori sub Windows.
Dimpotrivă, instalând software cât mai nou creșteți gradul de securitate a rețelei
-vă asigurați că bug-urile descoperite au fost corectate.
Dar ținerea "la zi" a unui număr mare de calculatoare poate fi o
operație consumatoare de timp și resurse. Ar fi ideal dacă ați putea face asta
în afara programului de lucru, nu ? Ei bine, instrumente care să vă ajute există.
Programele up2date și yum sunt două utilitare, existente în Red Hat Linux și
Fedora Core 1, care rulează ca daemoni și "se ocupă" cu descărcarea
celor mai noi pachete din Internet. Pe sisteme Red Hat Linux, această funcție
era realizată exclusiv de up2date și necesită existența unei subscrieri plătite
la Red Hat Network. Sistemul descarcă cele mai noi pachete .rpm numai de pe
situl oficial Red Hat, verificând semnătura digitală care le probează autenticitatea
și integritatea după download. Apoi instalați pachetele aduse, împrospătându-le
pe cele existente inițial.
În noua Fedora Core 1, instrumentul principal de download automat este yum,
deși s-a menținut și vechiul up2date. Funcția realizată este aceeași, dar yum
folosește ca sursă situl public al Fedora și mirror-urile sale. Pentru a introduce
această îmbunătățire și în Red Hat Linux 9, descărcați și instalați pachetul
yum pentru Red Hat Linux 9 de la adresa http://www.hut.fi/~tkarvine/yum-package-manager.html
Cu comenzile:
yum -y update
respectiv
yum -y update <numepachet>
se realizează împrospătarea întregului sistem sau doar a pachetului <numepachet>.
yum își arată adevărata sa putere numai atunci când legătura Internet este bună
și descărcarea noilor pachete se face rapid. O soluție care îmbunătățeste dramatic
viteza sistemului este downloadul de pe un mirror local Red Hat în loc de situl
oficial, destul de aglomerat. Editați fișierul /etc/yum.conf și, la secțiunea
[updates-released], adăugați serverul FTP al Grupului Utilizatorilor Români
de Linux (RLUG) ca primă opțiune de download:
[updates-released] name=Fedora Core $releasever - $basearch - Released Updates baseurl=ftp://ftp.lug.ro/fedora/linux/core/ updates/$releasever/i386/ http://fedora.redhat.com/updates/released/ fedora-core-$releasever
Dacă viteza de acces la situl RLUG este bună, veți obține un sistem care se
menține automat "la zi", fără ca măcar să vă avertizeze J! Tot ce
trebuie să faceți este să porniți yum ca serviciu, bifând-ul în lista furnizată
de utilitarul ntsysv.
De final
Sper că am reușit măcar să vă dau câteva idei despre cum să vă îmbunătățiți
sistemul și să mai scăpați de problemele de zi cu zi. Între timp, voi adăuga
câteva noutăți și la pagina http://www.linuxwill.go.ro
unde vă aștept oricând. À-propos, vă rămăsesem dator cu câte ceva, vă amintiți?
Ultima dată, căutam împreună soluția potrivită pentru a viziona discuri DVD
sub Linux și ea rămăsese doar o posibilitate teoretică… Ei bine, între
timp, soluțiile practice nu au întârziat să apară: le găsiți în documentul DVD-Playing-HOWTO
de la http://www.tldp.org și la
următoarele adrese Web:
Mplayer - player DVD pentru Linux - http://www.mplayerhq.hu
Xine - player DVD pentru Linux - http://www.xinehq.de/
și
http://cambuca.ldhs.cetuc.puc-rio.br/xine/
Inutil să vă spun că vă aștept cu întrebări la [email protected],
nu? Mă scuzați, trebuie să cobor, să ajut și eu la descărcatul buchetelor de flori…
Ne vedem mai târziu!
|