De ce (nu) Linux?
Linux are deja o istorie care, tehnic vorbind, il impune ca un competitor puternic
pe piata sistemelor de operare. Nu stiu daca in scurt timp vom „trece"
sau nu toti la Linux. Dar intrebarea din titlu trebuie in mod sigur pusa. In
continuare vom incerca sa-i schitam raspunsurile. d5i18id
Linux este foarte probabil cea mai importanta realizare din domeniul software-ului
liber, de la originalul si binecunoscutul Razboi al Stelelor sau mai recentul
Emacs. Acest sistem de operare este croit atat pe masura companiilor cat si
a institutiilor de in-vatamant sau pentru utilizatorii particulari. Nu mai este
vorba despre un sistem de operare pentru initiatii UNIX care isi petrec ore
in sir in fata consolei (desi, probabil, un numar important de utilizatori intra
in aceasta categorie).
Avem de-a face cu o imitatie de UNIX care ruleaza pe calculatoare echipate cu
procesoare Intel de 32 de biti (80386 sau mai recente). Sub Linux se poate rula
o mare varietate de software: procesoare de documente cum este TeX, interfata
grafica X-Windows, compilatoare cum este GNU C/C++ sau software-ul de comunicatie
TCP/IP. Este o implementare versatila si de buna calitate de UNIX, ce poate
fi obtinuta si distribuita liber in termenii licentei publice generale GNU (GPL,
GNU _ General Public Licence _ act care stipuleaza in principal dreptul de acces
neingradit la programele GNU).
Linux transforma un calculator personal intr-o statie de lucru. Va pune la dis-pozitie
intregul potential al UNIX-ului. Firmele instaleaza Linux pe intregi retele
de calculatoare in scopul gestiunii de date, pentru crearea unui mediu de cal-cul
distribuit sau pentru telecomunicatii. In intreaga lume, universitatile folosesc
Linux pentru predarea proiectarii si implementarii sistemelor de operare. si,
bi-neinteles, entuziasti ai calculatorului de pretutindeni folosesc Linux acasa
pentru a programa cele mai diverse aplicatii.
Sarea si piperul Linux-ului este faptul ca a fost si inca mai este dezvoltat
de un grup de voluntari care comunica in principal prin Internet, facand schimb
de coduri sursa, raportand erori si rezolvand probleme intr-un mediu complet
deschis. Oricine se alatura acestui efort de dezvoltare este binevenit: tot
ceea ce i se cere este interesul de a sapa prin codul unui sistem de operare
de tip UNIX si ceva cunostinte de programare.
Scurta istorie
UNIX este unul din cele mai populare sisteme de operare din lume datorita bazei
sale largi de distributie si asistenta. Initial a fost dezvoltat ca un sistem
multitasking pentru minicalculatoare si mainframe-uri (calculatoare mari) la
mijlocul anilor 70, dar cu timpul a devenit unul dintre cele mai utilizate sisteme
de operare, in ciuda unei interfete uneori confuze si a lipsei de standardizare.
Care este motivul popularitatii UNIX-ului? Multi programatori simt ca este
cel mai potrivit _ Adevaratul Sistem de Operare. De unde si dezvoltarea Linux-ului
de catre un grup in continua crestere de programatori UNIX care vor sa-si vare
miinile (si cunostintele) in propriul sis-tem de operare.
Versiuni de UNIX exista pentru multe platforme, de la calculatoare personale
ca cel pe care il aveti acasa pana la super-computere precum Cray Y-MP. Cele
mai multe versiuni de UNIX pentru PC-uri sunt insa scumpe si greoaie.
Linux este o versiune de UNIX distribuita liber, dezvoltata in principal de
Linus Torvalds la Universitatea din Helsinki, Finlanda. Mai multi programatori
dedicati, asa numitii hackeri, si-au unit fortele prin intermediul Internetului,
dand astfel oricarui amator cu destule cunostinte si pricepere posibilitatea
sa participe la dezvoltarea si modificarea sistemului. Nucleul Linux-ului nu
utilizeaza de loc cod care sa fie in vreun fel proprietatea cuiva, mare parte
din programele disponibile pentru Linux fiind dezvolta-te in cadrul proiectului
GNU al Fundatiei pentru Software Liber (Free Software Foundation) din Cambridge,
Massachusetts. In plus, programatori din intreaga lume au contribuit la software-ul
pentru Linux, care este in continua crestere si di-versificare.
Initial a vazut lumina zilei un proiect-hobby al lui Linus Torvalds, inspirat
din Minix, un mic sistem UNIX dezvoltat de Andrew Tannenbaum. Primele discutii
despre Linux au avut loc prin Internet, prin newsgroup-ul comp.os.minix.
Aceste discutii vizau in principal dezvoltarea unui mic sistem UNIX academic
pentru utilizatorii de Minix care isi doreau ceva mai mult.
Stadiul timpuriu de dezvoltare al Li-nux-ului se ocupa in primul rand de faci-litatile
de comutare de task-uri din modul protejat al procesorului 386 si era scris
in limbaj de asamblare. Versiunea 0.01 nu a fost anuntata niciodata. Sursele
acesteia nici macar nu erau executabile: contineau un rudiment de nucleu si
se presupunea ca ai acces la un sistem Minix pentru a-l compila si a te juca
cu el.
Prima versiune oficiala, 0.02, a fost anuntata de Linus Torvalds pe 5 octombrie
1991. Pana in acel moment, Linus reusise sa execute interpretorul de comenzi
bash si compilatorul de C GNU ... si cam atat. Din nou era vorba de un sistem
pentru hackeri. Principala preocupare era dezvoltarea nucleului. Nici una din
problemele de suport pentru utilizatori, documentatie sau distributie nu fusese
inca tratata. si astazi aceste probleme sunt considerate de comunitatea Linux
ca secundare, principala fiind „programarea adevarata", dezvoltarea
nucleului.
Dupa 0.03 s-a facut un salt la 0.10, mai multi programatori incepand sa contribuie
la proiect. Dupa cateva revizii, Linus a crescut numarul versiunii la 0.95 exprimand
astfel speranta sa ca sistemul era pregatit pentru o noua versiune oficiala.
(In general, programele capata numarul de versiune 1.0 numai cand sunt teo-retic
complete si nu contin erori). Acest lucru se petrecea in martie 1992. Un an
si jumatate mai tarziu, la sfarsitul lui decembrie 1993, nucleul se afla inca
la versiunea 0.99.pl14, apropiindu-se asimptotic de numarul 1.0.
Astazi, Linux este o varianta de UNIX completa, capabila sa execute X Windows,
TCP/IP, Emacs, posta electronica si stiri. Aproape toate pachetele de programe
distribuite liber au fost transportate si pe Linux, tot mai multe aplicatii
comerciale devin disponibile si pentru acest sistem de operare. Din ce in ce
mai mult hardware este suportat de Linux. Testele arata ca un sistem 486 cu
Linux este comparabil ca performanta cu statii de lucru comerciale.
Documentatie Linux
Unul din reprosurile care se pot aduce software-ului liber este lipsa documentatiei.
Daca nu puteti sa va procurati manualele tiparite, va ramane totusi accesul
la documentatia electronica, sosita odata cu kit-ul de instalare. Aceasta documentatie
este foarte bine realizata, chiar luxurianta am putea spune. Ea inglobeaza know-how-ul
tuturor celor care prin intermediul Internet-ului au contribuit la realizarea
Linux-ului.
Intai sunt paginile de manual. Orice instalare de Linux ne pune pe disc, mai
mult sau mai putin implicit sectiunile manualului Linux, ale caror pagini sunt
accesibile cu comanda man. Din ce in ce mai mult este folosit sistemul info,
apelat cu comanda respectiva.
Tot in distributiile uzuale se gaseste, in directorul /usr/doc, o seama de documentatie
cu diverse subiecte. De tinut minte sunt subdirectorul HOWTO (literal „Cum
sa facem?") in care sunt tratate in detaliu diverse probleme, cum ar fi
X11, conectarea la retea, tiparirea sau utilizarea SCSI. Subdirectorul are un
index pe care este bine sa il consultati cand aveti probleme. De cele mai multe
ori, raspunsul se afla acolo. De obicei plasate in alt subdirector sunt selectii
din intrebarile puse mai des (Frequently Asked Questions, pe scurt FAQ), legate
de Linux si de componentele sale.
Preocuparile legate de documentatia Linux au condus incet incet la conturarea
unui proiect de realizare a unor manuale pentru Linux (Linux Documentation Project,
pe scurt LDP). Ne face placere sa va spunem ca sunt incluse in CD-ul dum-neavoastra
aceste carti remarcabile. Daca stiti englezeste porniti la lectura lor fara
intarziere:
Ghid de instalare si inceput de Matt Welsh _ ghid utilizator perfect pentru
in-cepatori;
Ghidul utilizatorului de Larry Greenfield _ ghid de lucru ca utilizator (fara
administratie);
Ghidul administratorului de sistem de Lars Wirzenius _ ghid complet de ope-rare
si configurare Linux acoperind toate necesitatile in acest sens;
Ghidul administratorului de retea de Olaf Kirch _ ghid complet de utilizare
a retelelor cu Linux, in principal TCP/IP, SLIP sau PPP, carte foarte importanta
pentru utilizatorii activi in domeniu;
Ghidul programatorului Linux _ de B.Scott Burkrtt, Sven Gold, John Harper, Sven
van der Meer, Mat Welsh;
Ghidul hackerului de nucleu _ de Michael Johnson pentru hackerii dornici sa
„umble" in nucleul Linux;
Daca ne amintim de Internet, vom spune in primul rand ca toata documentatia
de care am pomenit plus multe altele se afla pe WEB. Sursa principala de documentatie
este https://sunsite.umn.edu/mdw/linux.html
Pentru cei foarte interesati, atragem atentia asupra forumurilor USENET legate
de Linux. Aparut in 1992, comp.os. linux a trebuit repede impartit in subgrupuri:
comp.os.linux.announce _ celebrul cola: anunturi si alte lucruri importante
din viata Linux; comp.os.linux.help _ cel mai popular site pentru obtinerea sfaturilor, daca
aveti probleme scrieti aici; comp.os.linux.admin _ probleme serioase de administrare; comp.os.linux.development _ pentru programatori; comp.os.linux.misc _ diverse: spre exemplu, razboiul cu NT se poarta aici.
Caracteristicile sistemului
Linux este un sistem complet multitasking, multiuser, exact ca ori-ce alta
varianta de UNIX. Ceea ce inseamna ca mai multi utiliza-tori pot avea acces
simultan la acelasi sistem de calcul, ruland in-dependent programe multiple.
Linux este compatibil in mare masura cu un numar de standarde UNIX, incluzand
caracteristici IEEE POSIX.1, System V si BSD, la nivel de sursa. Scopul principal
in timpul dezvoltarii acestui sistem de operare a fost acela de a asigura un
nivel de compatibilitate cat mai mare cu restul sistemelor si aplicatiilor UNIX.
Un numar mare de programe pentru UNIX, accesibile li-ber, disponibile prin Internet
sau altfel, pot fi compilate imediat pe Linux. In plus, tot codul sursa al Linux-ului,
incluzand nucleul, driverele pentru periferie, bibliotecile, programele utilizator
si utilajul de dezvoltare sunt distribuite liber.
Caracteristicile Linux-ului includ controlul executiei joburilor tip POSIX,
pseudoterminalele, suportul pentru versiuni nationale sau particularizate de
tastatura folosind drivere de tastatura incarcate di-namic si console virtuale.
Nucleul poate emula instructiuni in virgula mobila astfel incat toate programele
pot fi executate si pe procesoare fara coprocesor integrat.
Pot fi memorate date in varii sisteme de gestiune a fisierelor: cel nativ, ext2fs,
dar si Minix-1, Xenix, DOS si ISO 9660 pentru discuri compacte.
Linux poseda o implemetare comple-ta a suitei de protocoale de comunicatie TCP/IP.
Sunt incluse drivere pentru cele mai raspandite placi de retea Ethernet, implementari
pentru SLIP, PLIP si PPP, sistem de fisiere in retea (NFS). De asemenea este
inclusa gama completa de servicii client si server TCP/IP, cum sunt ftp, telnet,
smtp, nntp.
Nucleul Linux este programat sa utilizeze facilitatile speciale ale modului
protejat al procesoarelor Intel 80386. In particular, Linux foloseste facilitatile
acestor procesoare pentru gestiunea memoriei si multitasking.
In sarcina nucleului Linux intra si executia programelelor cu ajutorul tehnicii
de paginare la cerere. Aceasta inseamna ca numai acele portiuni de program nece
sare pentru executie intr-un anumit moment sunt citite de pe disc in memoria
calculatorului. De asemenea, Linux utilizeaza partajarea de memorie intre programe
cu copiere la scriere. Acest lucru inseamna o reducere a necesarului de me-morie
si deci o mai buna utilizare globala a acesteia.
In vederea cresterii memoriei disponibile pentru executia programelor, Linux
implementeaza paginarea pe disc, permitand alocarea a pana la 256 MB a ceea
ce se numeste spatiu de swap. Cand programele au nevoie de mai multa memorie
interna, o parte din informatie este evacuata in acest spatiu de pe disc, iar
locul ei este refolosit. Portiuni de date si programe circula intre disc si
memoria interna, in functie de necesitati. Asadar, spatiul de swap este o extensie
utila a memoriei RAM, dar nu o poate inlocui, fiind mult mai lenta.
Gnu nu este Unix dar Linux este in mare masura GNU. In software asta inseamna
libertate de circulatie plus garantii de calitate.
Nucleul Linux gestioneaza intreaga memorie interna atat pentru executia programelor
cat si pentru accesul mai rapid la fisiere, de tip cache. In acest fel,toata
memoria disponibila este utilizata pentru cache de fisiere. Cand se ruleaza
programe mai mari, zona de cache este diminuata corespunzator.
Programele executabile pot folosi le-garea dinamica la biblioteci partajate:
codul bibliotecii, utilizat in comun, se ga-seste intr-un unic fisier pe disc.
Astfel, programele executabile pot ocupa mult mai putin spatiu. Exista si posibilitatea
folosirii legarii statice, cand codul este inclus in intregime in fisierul executabil,
pentru cei care doresc depanarea sau intretinerea unor executabile complete,
care sa poata fi executate independent de prezenta bibliotecilor partajate.
Legarea dinamica a bibliotecilor partajate se produce numai in momentul executiei,
permitand programatorului sa inlocuiasca module din biblioteca cu unele proprii.
Pentru a usura depanarea programelor, nucleul face posibil vidajul de memorie
si analiza lui in cazul terminarii anormale, pentru a putea determina cauzele
caderii.
Software disponibil
Cea mai importanta parte a sistemului este gama de software de aplicatie disponibil
pentru acesta. Majoritatea acestor programe sunt distribuite liber, dar exista
si un numar tot mai mare de programe comerciale care merg pe Linux.
Comenzi si utilitare de baza
Virtualmente, toata gama de utilita- re disponibile in implementarile UNIX standard
au fost portate si pe Linux. Linux este deci un mediu familiar pentru toti utilizatorii
de UNIX, care pot sa-si fo-loseasca in intregime experienta de lucru cu sistemul
preferat.
Linux dispune de multe editoare de texte, incepand cu clasicul vi, trecand prin
joe, editorul compatibil WordStar si sfarsind cu Emacs, un mediu pentru editare
integrat, cu acces la posta electronica si stiri, cu facilitati de macroprelucrare
bazate pe LISP.
Este important de notat ca toate utilitarele sunt software GNU, cu facilitati
deosebite, de negasit in versiunile BSD sau AT&T. Pe de alta parte, aceste
utilitare raman compatibile cu originalele, iar multi le considera superioare.
Cel mai important utilitar este shell-ul, interpretorul de comenzi. Acesta este
un program care citeste si executa comenzile introduse de catre utilizator.
Aceste comenzi permit in principal rularea programelor si controlul executiei
acestora. Comenzile sunt citite de la tastatura sau din fisiere de comenzi numite
script-uri. Shell-ul permite executia simultana a mai multor programe, redirectarea
intrarilor si iesirilor precum si script-uricomplexe cu instructiuni asemanatoare
limbajelor de programare, similar fisierelor .BAT (batch) din DOS. Linux dispune
si de shell-urile UNIX standard: Bourne Shell (sh), C Shell (csh) si Korn Shell
(ksh). Shell-uri populare in Linux sunt in primul rand bash, shell-ul implicit,
o va-rianta de Bourne Shell cu extensii foarte puternice, si tcsh, o versiune
de C Shell cu extensii asemanatoare bash. Fiecare administrator de sistem va
intretine toate utilitarele necesare. Pe sistemele personale putem instala doar
strictul necesar: un singur shell, de exemplu bash, si un singur editor de texte,
de exemplu vi.
Prelucrarea documentelor
Toti utilizatorii calculatoarelor au nevoie de un sistem de pregatire a documentelor:
editarea si manipularea textelor precum si producerea de exemplare tiparite
a acestora, continand in plus desene, tabele si imagini. Aceste cerinte re-prezinta
in majoritatea cazurilor minimul de functionalitate pe care utilizatorii o asteapta
de la un sistem de calcul.
In lumea UNIX, sistemele de pregatire a documentelor sunt diferite de conceptul
clasic WYSWYG, raspandit in Windows. In sistemele WYSIWYG (What You See Is What
You Get _ ce vezi pe ecran este ceea ce vei obtine) textul este introdus si
modificat cu ajutorul unui editor special care afiseaza pe ecran in permanenta
o imagine cat mai apropiata, daca nu identica, cu aceea a documentului tiparit.
Sub UNIX, textele sunt introduse cu ajutorul unui editor familiar, cum este
vi sau joe. Totodata se introduc in fisier si comenzi care descriu modul in
care se formateaza textul. In final, fisierul obtinut este prelucrat cu un program
separat care converteste textul initial intr-un format potrivit pentru tiparire.
Exista mai multe programe care permit vizualizarea rezultatului inaintea tiparirii.
Exista doua sisteme de prelucrare de texte mai cunoscute sub Linux. Unul este
groff, versiunea GNU a programu-lui nroff, procesor de texte dezvoltat initial
in laboratoarele Bell si inca folosit in sistemele UNIX. Al doilea, mai modern
si mai sofisticat, se numeste TeX si a fost creat de legendarul Donald Knuth.
O ver-siune de TeX numita LaTeX dezvoltata de Leslie Lamport este foarte raspandita
printre utilizatorii de Linux.
In timp ce groff e capabil sa produca si o iesire ASCII, afisabila pe un terminal
text, TeX este destinat in primul rand producerii de documente tiparite. O extensie
TeX este texinfo, un procesor de texte folosit in primul rand pentru documentatie
de programe de Free Software Foundation. Texinfo poate produce documente tiparite,
sau un format hypertext care poate fi vizualizat pe ecran.
Avantajele procesoarelor de texte din UNIX este si faptul ca fisierul sursa,
cel introdus de utilizator este un fisier ASCII, cu format cunoscut. Astfel,
utilizatorul poate genera automat astfel de fisiere sau le poate prelucra, analizandu-le
sau transformandu-le dupa necesitati, extinzand astfel sistemul de prelucrare
a textelor de care dispune.
Folosirea unui procesor de texte impune un anumit standard tipografic. Forma
documentelor ramane consistenta, permitand autorilor sa se concentreze asupra
continutului si nu asupra aspectului pagi nii. Desi sistemele WYSIWYG ofera o interfata vizuala complexa si puternica,
nu trebuie uitat nici reversul: daca tot ceea ce vezi poate fi controlat, complementara
este si ea adevarata _ numai ce vezi poate fi controlat.
Alte programe, cum este xfig, permit crearea de diagrame si figuri care pot
fi ulterior convertite si utilizate de procesoarele de texte. In mod obisnuit,
procesoarele de texte sunt insotite de o colectie de utilitare asociate cum
ar fi cele pentru verificat si corectat erori de scriere, indexare de documente,
pachete de macro-uri pentru generat formule matematice sau convertoare dintr-un
format in altul.
Limbaje de programare si utilitare
Linux ofera un mediu complet UNIX pentru dezvoltarea de programe si aplicatii,
incluzand bibliotecile standard, compilatoarele, depanatoarele si intregul set
de utilitare software necesar. In mod obisnuit,dezvoltarea de programe pentru
UNIX se face in limbajele C/C++. Compilatorul standard pentru aceste limbaje
este compilatorul GNU, gcc.
In afara de C si C++, multe alte limbaje compilate sau interpretate sunt disponibile
sub Linux, cum ar fi Smalltalk, FORTRAN, Pascal, Lisp, Scheme si Ada. In plus,
sunt disponibile asambloare pentru scrierea de cod in mod protejat pentru 80386.
Interpretoare sofisticate, raspandite in lumea UNIX, cum este Perl sau Tcl/Tk
pentru dezvoltarea de aplicatii sub X Windows sunt disponibile si sub Linux.
Depanatorul standard sub Linux este gdb, care permite executia controlata a
unui program sau analiza unui vidaj de memorie. Cu ajutorul utilitarului Gprof
se realizeaza culegerea de statistici referitoare la executia unui program in
scopul ameliorarii performantelor lui. Emacs este un editor de programe sofisticat
care ofera un mediu integrat de editare si compilare interactiva programelor
in diverse limbaje de programare. Alte utilitare includ make, pentru compilarea
de aplicatii mari si RCS, un sistem pentru intretinerea versiunilor unui program.
https://sal.kachinatech.com contine raspunsul detaliat la intrebarea: care sunt
aplicatiile pentru Linux?
Legarea bibliotecilor se poate face dinamic, permitand fisiere executabile mici
sau inlocuirea de rutine de biblioteca cu rutine utilizator. Linux este astfel
un me-diu ideal pentru dezvoltarea de programe: modern, standard si bine echipat.
Portarea pe alte sisteme de tip UNIX este foarte mult usurata. Linux poate fi
utilizat ca o solutie economica pentru dezvoltarea de programe, acasa sau in
firme specializate, pentru diverse alte sisteme tinta. Studiul programarii sub
Linux este usurat si de faptul ca toate sursele sistemului de operare sunt disponibile.
Sistemul X Windows
Sistemul X-Windows este interfata grafica standard pentru masini UNIX. Este
un mediu puternic, utilizat practic de orice aplicatie UNIX cu pretentii. Folosind
X Windows, utilizatorul poate avea mai multe ferestre terminal, fiecare executand
un program diferit. Cel mai adesea, utilizarea X-Windows se face cu un echipament
indicator, cum este mouse-ul, desi acest lucru nu este obligatoriu.
Exista foarte multe aplicatii specifice pentru X, cum sunt jocurile, utilitare
pen-tru grafica, utilaj software pentru programare si documentare. Linux formeaza
impreuna cu X-Windows o adevarata sta-tie grafica. Cuplata la o retea TCP/IP,
sta-tia grafica poate constitui un terminal X pentru aplicatii ruland pe alte
masini.
Sistemul X-Windows a fost dezvoltat initial la MIT (Massachusets Institute of
Technology) si este distribuit liber. Cu toate acestea, multi producatori comercializeaza
versiuni imbunatatite ale acestui sistem. Pentru Linux este disponibila o varianta
a versiunii X11R6 care se nu-meste XFree86. Hardware-ul video pe care il suporta
aceasta varianta porneste de la standardul VGA si merge pana la Super VGA. Este
acoperita o gama foarte larga de adaptoare grafice, cu sau fara ac-celerator
grafic. XFree86 este o distribu-tie completa, si contine serverul de terminal,
aplicatii, utilitare, biblioteci si do- cumentatie.
Aplicatiile standard sunt xterm _ un emulator de terminal pentru aplicatiile
in mod text, xdm _ pentru gestiunea sesiunilor, xclock _ un ceas analogic etc.
Exista foarte multe aplicatii X disponibile pentru Linux, dar versiunea XFree86
de baza contine doar aplicatiile standard ale versiunii originale MIT. Multe
alte aplicatii X sunt disponibile separat si, teoretic, orice aplicatie scrisa
pentru X-Windows trebuie sa compileze fara probleme pe Linux.
Aspectul interfetei X-Windows este in buna masura controlat de managerul de
ferestre. Acest program se ocupa de plasarea ferestrelor precum si de interfata
utilizator pentru redimensionarea si mutarea ferestrelor. Distributia XFree86
include twm, gestionarul de ferestre clasic MIT, olvwm (Open Look Virtual Window
Manager) si fvwm, foarte popular printre utilizatorii de Linux. Fvwm este mic,
ofe-ra un aspect tridimensional pentru ferestre si un desktop virtual care poate
fi chiar mai mare decat ecranul fizic. Fvwm poate fi personalizat in mare masura,
permite accesul la functiile proprii atat de la tas-tatura cat si de la mouse
si este managerul de ferestre implicit in multe distributii Linux. Astazi, el
capata o raspandire tot mai mare sub forma fvwm-95 datorita look-ului sau asemanator
cu cel al inter fetei de sub Windows 95.
Distributia XFree86 contine biblio-teci de programare pentru cei care doresc
sa dezvolte aplicatii X. Sunt suportate se-turi de widget-uri variate, cum sunt
Athena, Open Look sau Xaw3D. Sunt incluse fonturile standard, imaginile bitmap
si documentatia. Este suportata si PEX, o interfata de programare pentru grafica
tridimensionala.
Multi programatori de aplicatii X utilizeaza setul de widget-uri proprietar
Motif. Mai multi furnizori ofera licente pentru distributii ale versiunii binare
Motif pe Linux pentru unul sau mai multi utilizatori. Motif insusi este scump
si putini utilizatori de Linux isi permit achizitia. Cu toate acestea, distribuirea
programelor legate static la Motif este permisa si deci oricine poate rula aplicatii
Motif fa-ra a avea licenta Motif.
Cea mai importanta observatie in legatura cu X-Windows este necesarul de hardware
pentru a putea fi rulat. Se poate rula X in 4 MB de memorie de lucru, dar 8
MB sau mai mult sunt recomandati pentru executia confortabila a acestui software.
Un procesor mai rapid este in-dicat, insa tot mai importanta este memoria RAM.
In plus, o placa video cu coprocesor accelerator, de exemplu cu cip S3, este
recomandata in cazul in care se do-resc performante deosebite. Cu suficien-te
resurse, executia X pe Linux poate fi la fel de rapida sau mai rapida comparativ
cu alte statii de lucru UNIX.
Reteaua
Asa cum azi nu mai putem discuta despre calculatoare individuale ci numai despre
retele, nu putem discuta nici despre o varianta de UNIX fara TCP/IP. In conditiile
in care Internet-ul este la capatul celalalt al telefonului nu vom accepta un
sistem fara PPP. Ei bine, Linux are posibilitatea realizarii tuturor acestor
tipuri de conexiuni, de la retele locale Eth-ernet la retele pe fir telefonic.
Toate serviciile, atat cele de tip server (ftp sau web) cat si cele client,
bazate in primul rand pe browserul de web sunt disponibile pe Linux. Vom putea
organiza serviciul de posta electronica si accesul la newsgroup-uri (forumuri
de discutii).
In plus, integrarea in reteaua locala se poate face in cele mai diverse moduri:
utilizare de sisteme de fisiere NFS, proprii UNIX, partajare de resurse in retele
de tip Netware (novell) sau de tuip LanManager (Ms Windows).
Instalarea
Puteti avea un sistem Linux operational in circa 20 minute. Insta-larea poate
fi facuta folosind unitatea CD-ROM care se afla co-nectata la un calculator
dintr-o retea Windows.
Ce veste mai buna va puteti dori in acest moment? Poate faptul ca intrebarile puse de procedura de instalare sunt foarte simple, iar distributia
RedHat de pe CD-ul pe care il aveti la indemina se poate instala folosind aproape
orice metoda de acces la date in retea pe care v-ati putea-o dori.
O scurta privire
Inainte de a incepe instalarea unui nou sistem de operare este bine sa vedem
ce presupune aceasta operatiune, pentru a ne putea pregati corespunzator. Trebuie
discutate trei aspecte:
1. Sursa distributiei, sau suportul pe care este disponibil noul sistem de operare.
Cazul dumneavoastra: dispuneti de un CD pe care se afla tot ceea ce este necesar.
Mai rar, distributia se poate afla pe un harddisk. Instalari interesante si
comode se pot face prin retea, de la un server care exporta un sistem de fisiere
in retea de tip NFS, sau chiar prin FTP. Aceste doua modalitati de instalare
pot fi luate in con-siderare daca aveti o legatura buna si ief-tina la Internet.
Un detaliu legat de citirea CD-ului este unitatea CD-ROM: este posibil sa avem
o asemenea unitate instalata pe cal-culatorul pe care vrem sa punem sistemul
sau doar pe un server din retea. Daca ser-verul este UNIX, trebuie sa ne asiguram
ca putem vedea CD-ul fie prin NFS fie prin FTP. In cazul in care serverul este
Windows, va trebui ca unitatea CD-ROM sa fie partajata si sa avem o legatura
TCP/IP cu serverul.
Daca nu avem acces la un CD local si nici la unul din retea..., ei bine, nu
trebuie sa disperam, poate gasim un prieten sa ni-l imprumute pe al lui.
2.Destinatia instalarii, care trebuie sa fie o partitie de disc.
Ne putem decide ca tot discul sa fie o singura partitie. Nu este cea mai buna
idee decat daca discul este prea mic pentru a fi partitionat. Avand insa un
harddisk cu o capacitate de minim 1GB, este indicata partitionarea harddisk-ului.
O a doua instalare, alta versiune de Linux sau chiar alt sistem de operare vor
fi adaptate mai usor pe un disc partitionat. De asemenea, in general este recomandabil
ca spatiul pentru fisierul de swap sa fie disponibil intr-o partitie, desi aceasta
opera- tiune este posibila si intr-un fisier.
Daca aveti deja Windows instalat pe disc si va e lehamite sa va ganditi la rein-stalare,
puteti sa va ganditi serios la folosirea programului FIPS.EXE, care poate redimensiona
o partitie. In ciuda avertismentelor care insotesc acest program, riscurile
de a strica totul sunt destul de mici si se pare ca pana in prezent nimeni nu
s-a plans ca ar fi patit asa ceva. Cititi oricum documentatia programului.
3.Procedura de instalare, sau mai bine zis, modul in care se executa aceasta.
Instalarea Linux-ului se face tot sub Linux, un sistem minimal care se incar-ca
de pe discheta. In cazul in care instalarea este locala, aveti nevoie de o singura
discheta, numita de boot (incarcare). Daca folositi reteaua pentru a avea acces
la un calculator cu CD sau la un alt server de fisiere sau daca instalati de
pe un CD atasat prin PCMCIA, veti avea nevoie de o discheta suplimentara. Cele
doua dischete, de boot si cea suplimentara, vor fi create pe un calculator cu
CD.
Crearea dischetelor
In cazul in care ati achizitionat distributia Red Hat din comert, este posibil
ca aceasta sa contina si cele doua dischete de pornire. In caz contrar va trebui
sa le creati singuri.
Vom incepe deci cu crearea respectivelor dischete. Aveti nevoie de una sau doua
dischete de 3.5". Pe CD se gasesc fisiere care contin imagini ale dischetelor
necesare. Sub UNIX exista un utilitar ca-pabil sa scrie fizic un fisier pe floppy:
el se numeste dd. Sub sistemul de operare DOS neexistand asa ceva, a fost scris
un pro gram numit RAWRITE.EXE care se afla tot pe CD.
Crearea dischetelor sub DOS devine simpla din momentul in care CD-ul este vazut
de sistem. Sa presupunem ca drive-ul de CD este D:. Luati o discheta goala,
scrieti pe ea „Linux BOOT", introduceti-o in unitate si tastati comenzile
urmatoare:
D:
CD \IMAGES
\DOSUTILS\RAWRITE.EXE
Programul va va cere sa introduceti intai numele fisierului cu imaginea discheta.
Tastati: boot.img. Apoi va intreba despre unitatea de discheta in care sa copieze
aceasta imagine. Introduceti a:. Daca aveti nevoie de discheta suplimentara,
etichetati-o „Linux SUPLIMENTAR", reluati comenzile si, la numele
fisierului tastati supp.img.
Sub UNIX,singura complicatie ar putea fi accesul la CD si la floppy: trebuie
sa va asigurati ca puteti monta CD-ul si ca aveti drept de scriere pe /dev/fd0.
Ambele probleme vi le rezolva administratia sistemului. Comenzile de creare
sunt: dd if=boot.img of=/dev/fd0 bs=1440k dd if=supp.img of=/dev/fd0 bs=1440k
Puteti incarca sistemul sub DOS direct de pe floppy cu secventa de comenzi:
D:
CD \DOSUTILS
AUTOBOOT.BAT dar si in acest caz este de preferat sa aveti dischete.
Partitionarea discului
Daca va hotarati ca pe harddisk sa nu existe numai o singura partitie, este
foarte util sa stati 5 minute cu un creion in mana si sa scrieti pe hartie un
mic plan despre cum sa faceti impartirea. Acest lucru este obligatoriu in situatia
in care instalatia va deservi mai multi utilizatori in retea. Di-mensiunea de
plecare poate varia intre 50 MB (sistem minimal) si 500 MB pentru instalarea
completa a distributiei Red Hat. Un sistem tipic va avea undeva intre 200 MB
si 300 MB. La aceasta se adauga alte aplicatii precum si datele utilizator,
ale caror dimensiuni depind de destina-tia sistemului. Va trebui sa tineti cont
de urmatoarele:
Partitia de swap _ cu cat mai mare cu atat mai bine; chiar daca aveti multa
memorie interna in calculator, faceti o partitie de swap de 16 MB sau 32 MB.
Sunt programe care obisnuiesc sa aloce o cantitate mare de memorie virtuala,
chiar daca n-o folosesc niciodata pe toata. In sisteme de tip server cu mai
multi utilizatori creati pana la 128 MB de spatiu de swap. Daca in mod exceptional
aveti ne-voie de mai mult, va trebui sa faceti mai multe partitii fiindca, din
motive tehnice, o partitie de swap nu poate fi mai mare de 128 MB.
Partitia radacina _ de aici se va incarca sistemul de operare; aceasta partitie
si trebuie sa contina strictul necesar. O dimensiune rezonabila este cuprinsa
intre 50 _ 80 MB.
Partitia /usr _ puteti opta pentru separarea ierarhiei /usr de restul sistemului.
Este cea mai voluminoasa parte a sis-temului, avand intre 200 MB si 500 MB.
Daca nu o realizati separat, adaugati spatiul corespunzator la partitia radacina.
Partitia /home _ daca exista multi utilizatori si gestiunea lor va fi o problema
in sine, e mai bine sa faceti o partitie separata si sa o dimensionati corespunzator.
Utilizatorul tipic nu foloseste decat cativa megabyte pentru fisierele personale,
cu conditia ca toate programele de care are nevoie sa fie disponibile in sistem.
Partitia /usr/local _ este bine sa rupem distributia Red Hat de alte pachete
de programe care nu sunt distribuite in formatul gestionat de aceasta (RPM).
Pentru servere in retele mai mari, consideratiile de partitionare sunt mai ample:
intretinerea sistemului, gestiunea unor volume mari de date, arhive, partajarea
unor fisiere program sau fonturi, si asa mai departe. De exemplu, ierarhia /var
va trebui instalata separat.
Rezultatul analizei va trebui sa-l constituie un tabel cu partitii, dimensiune
si punct de montare (mount). Un exemplu ar putea fi:
/dev/hda1 / 100MB
/dev/hda2 swap 32MB
/dev/hda3 /usr 200MB
/dev/hda4 /var 500MB
Partitionarea discului se face cu programul fdisk, care este ceva mai flexibil
decat omonimul sau de sub DOS. Apelarea sa se face avand ca argument discul
ce urmeaza a fi partitionat, de exemplu fdisk /dev/hda
Programul afiseaza urmatorul prompt (mesaj): vom putea citi o lista cu parametrii comenzii fdisk. Am aminti aici pe cei care
sunt mai importanti: a _ modifica indicatorul „partitie bootabila" d _ sterge o partitie l _ listeaza tipurile cunoscute de partitii n _ creeaza o noua partitie p _ tipareste tabela de partitii t _ schimba tipul unei partitii q_ termina programul abandonand modificarile
w _ scrie tabela de partitii pe disc si termina
Comenzile sunt usor de folosit. Raman de facut cateva comentarii. Fdisk creeaza
implicit partitii de tipul Linux nativ. In definitiv de aceea il folosim. Este
posibil sa facem spatiu de swap si din partitii de acest tip, dar este mai convenabil
sa folosim comanda t si sa modificam tipul in Linux swap. Pe de alta parte,
traditia face sa nu poata fi create mai mult de 4 partitii pri-mare pe un singur
disc. Daca ne dorim mai mult de 4 partitii,va trebui ca una din ele sa fie de
tip extins si sa acopere tot restul spatiului. Apoi vom putea sa cream oricate
partitii dorim. In cazul in care fa-cem, de exemplu, partitia 4 de tip extins,
vor fi disponibile partitiile 1, 2, 3 si apoi 5 etc. Acest lucru se intampla
din cauza ca partitia extinsa nu este accesibila explicit,ci prin intermediul
partitiilor logice pe care a fost creata.
Console virtuale si taste functionale
Procedura de instalare ne prilejuieste primul contact cu ceea ce in lumea Linux
este cunoscut drept console virtuale. O consola virtuala este o sesiune distincta
cu sistemul de operare care utilizeaza aceeasi consola fizica. Procedura de
instalare are cinci astfel de console virtuale intre care se poate comuta apasand
simultan <Alt> impreuna cu una din tastele functionale F1, F2, F3, F4
sau F5. Fiecare din ele este utilizata intr-un scop distinct.
1 Alt+F1 _ dialogul de instalare
2 Alt+F2 _ interpretor de comenzi
3 Alt+F3 _ jurnalul instalarii
4 Alt+F4 _ jurnalul sistem
Cursorul poate fi manevrat prin intermediul tastelor cursor. Intre campuri se
poate comuta cu aTabi sau aAlti+aTabi.
Selectarea unui element dintr-o lista se face prin intermediul tastei aSpacei
(spatiu). Apasarea tastei aF12i produce acceptarea valorilor introduse in dialogul
curent si trecerea la urmatorul camp de dialog.
Instalarea pas cu pas
Pentru a incepe instalarea se introduce in unitate discheta etichetata „Linux
BOOT" creata anterior si se reseteaza calculatorul. Daca sistemul de operare
pe care ruleaza calculatorul este DOS, putem incarca procedura de instalare
de pe CD prin intermediul comenzii autoboot.bat asa cum a fost descris anterior.
Dupa exe-cutia acestui, sistemul va afisa urmatorul prompt: boot: la care va trebui sa apasam aEnteri. La acest prompt, utilizatorul avizat poate
in-troduce optiuni de incarcare. De exemplu, in cazul in care hardware-ul nu
este detectat corect, putem specifica aici linux hdc=cdrom
Dupa incarcare, procedura de instalare incepe prin a ne intreba daca avem un
monitor color. Daca raspunsul este cel implicit, adica da, putem sa apasam aEnteri
si sa continuam. In cazul in care mo-nitorul nu este unul color, apasam aTabi
pentru a trece pe optiunea nu si apoi aEnteri. Daca dorim, acum sau mai tarziu
sa abandonam procedura de instalare, putem sa scoatem discheta din unitate si
sa reboot-am calculatorul.
Urmatorul meniu ne permite sa alegem dispunerea sau layout-ul tastaturii. Tastaturile
tipice in Romania sunt de tip US. In unele cazuri sunt germane si trebuie sa
selectam de/latin1. Apoi trebuie sa raspundem la intrebarea daca CD-ul este
pe PCMCIA sau SCSI, caz in care ni se va cere sa introducem discheta suplimentara.
Selectia urmatoare se refera la metoda de instalare. Asa cum am aratat, exista
urmatoarele posibilitati:
CD-ROM _ distributia se afla pe un CD si exista o unitate CD-ROM atasata local;
NFS _ prin retea avem acces la un server care exporta prin NFS o distributie
Linux;
Harddisk _ distributia a fost copiata pe discul local;
FTP _ un server FTP are stocata pe harddisk o distributie;
SMB _ CD-ul cu distributia este partajat intr-o retea TCP/IP sub Windows NT
sau 95 (LanManager).
In functie de metoda de instalare, procedura continua diferit.
In ceea ce priveste unitatea CD-ROM care va fi instalata, programul se intereseaza
de tipul acestuia: IDE (ATAPI), SCSI sau altele.
In cazul instalarilor din retea (NFS, FTP sau SMB) se va configura mai intai
placa de retea. Procedura da posibilitatea selectiei tipului de placa pentru
a putea incarca driverul adecvat. Configurarea placii de retea se poate face
prin autodetectie sau cu parametri introdusi manual. In cele mai frecvente cazuri,
driverul poate detecta corect parametrii placii. In altele, foarte rare, autodetectia
poate bloca sistemul de calcul. Caz in care va trebui sa reluati toate operatiunile
realizate pana in prezent si, reajunsi in aceasta faza, sa configurati manual
driverul placii de retea.
In continuare vi se vor cere date necesare configurarii protocolului TCP/IP.
Daca aveti posibilitatea sa faceti o instalare din retea, administratia retelei
va fi capabila sa va furnizeze datele necesare. Acestea sunt:
Adresa IP 193.254.33.1
Masca de retea 255.255.255.0
Poarta implicita 10.0.2.254
Server de nume primar 10.0.2.1
Nume de domeniu chip.ro
Nume de calculator linux.chip.ro
Numai primele doua campuri sunt strict necesare. Adresa portii poate fi la fel
cu adresa IP. Daca nu avem server de nume (DNS _ Domain Name Server) vom folosi
doar adrese IP, insa nu si nume de calculatoare.
Dupa configurarea propriului calculator ni se vor solicita, dupa caz, referin-te
despre serverul NFS, FTP sau SMB. In toate cazurile va trebui sa identificam
intai serverul in retea prin adresa IP sau prin nume (nu folositi nume daca
nu aveti server de nume!). Pentru NFS si FTP va trebui sa specificam directorul
care contine distributia. In ceea ce priveste SMB, va trebui sa dam numele volumului
Configurarea nucleului simplificata: interfata grafica produsa cu „make
xconfig" va permite sa modificati usor ce va, intereseaza lasand pe loc
valorile implicite in rest. bila sa aduca la zi versiuni mai vechi Red Hat, dar in acest moment nu avem
in vedere acest lucru. Vom presupune deci ca realizam o instalare completa.
Dupa aceasta confirmare, procedura de instalare ne intreaba daca avem adaptoare
SCSI sau nu.
In continuare ne este prezentata o lista cu discurile pe care programul le-a
detectat in calculator si avem posibilitatea sa-l alegem pe cel care va gazdui
Linux-ul. Daca este necesara partitionarea harddisk-ului, mutam cursorul pe
el si apasam aEnteri. Programul de instalare va lansa utilitarul fdisk cu care
vom putea creea partitiile conform schemei proiectate anterior.
Dupa terminarea partitionarii se revine in meniul de instalare care continua
cu configurarea spatiului de swap. Procedura va cauta si va lista partitiile
de swap, le va afisa si ne va intreba pe care sa o ini-tializeze. Va trebui
sa plasam cu aTabi cursorul pe cele dorite, iar cu bara de spa-tiu aSpacei sa
determinam selectarea lor. Vor fi initializate unitatile sau partitiile marcate
cu asterisc.
Instalarea continua cu configurarea sistemului de fisiere. Programul ne afiseaza
o lista a partitiilor din care va trebui sa o selectam pe cea care urmeaza sa
gaz-duiasca sistemul de fisiere radacina. Urmatorul dialog poate fi folosit
pentru a monta alte partitii. Se selecteaza partitia si se introduce punctul
de montare proiectat. Dupa introducerea punctelor de montare, cu ajutorul meniului
urmator se vor selecta partitiile a caror formatare este necesara.
Pentru o instalare completa se vor marca pentru formatare toate partitiile.
In scopul actualizarii vom marca partitii ca /usr/local sau /home.
Urmeaza selectarea si instalarea pachetelor software. Diferite componente sistem
sunt grupate in functii pe care instalatia ar trebui sa le execute: Dezvoltare
de programe in C, Server Web sau Statie de lucru in retea. Putem sa selectam
fiecare functie in parte sau sa selectam ultima optiune: Instaleaza tot (Everything).
Exista o optiune importanta, si anume selectarea pachetelor individuale.
Selectarea pachetelor individuale este gestionata abil de procedura de instalare.
In primul rand, un pachet poate fi nece-sar pentru mai multe functii. In al
doilea rand, exista dependente functionale in-tre pachete. De exemplu, interfata
grafica pentru administrarea sistemului in Red Hat este facuta cu mediul de
programare numit python si, deci, necesita pachetele python si pythonlib. La
sfarsit vom fi in-trebati daca dorim sa fie rezolvate automat aceste dependente
si pachetele necesare sa fie instalate.
Dupa terminarea selectiei incepe procesul de copiere a pachetelor pe harddisk,
proces care dureaza aproximativ de 10 -15 minute
Harddisk-uri, floppy, unitati de CD sau de streamer pot fi incluse in configuratie
dupa dorinta. In plus suportul software poate fi cablat in nucleu sau compilat
in-tr-un modul separat incarcabil la cerere
Configurarea
Ultima etapa consta intr-o prima configurare a sistemului care tocmai a fost
instalat. Este important sa stim ca putem reveni, si in unele cazuri vom fi
obligati sa revenim, asupra oricarui parametru de configurare. Primul meniu
va configura mouse-ul, oferind o lista cu tipuri de ase-menea periferice precum
si optiunea de a emula 3 butoane pe un mouse cu numai doua butoane.
In continuare va fi configurat serverul X. Pentru detalii de configurare ale
sistemului X-Window puteti parcurge sectiunea respectiva. Miza acestei configurari
este mica si este posibil sa nu o folositi niciodata. Trebuie sa alegeti o placa
video si un monitor care sa corespunda cat mai exact cu hardware-ul pe care
il aveti pe sistem. Neavand date exacte, alegeti echipamente mai putin performante.
Daca in rest optiunile sunt destul de evidente, una poate parea mai obscura:
ceasul procesorului de pe placa video. Selectia recomandata este cea implicita:
fara setarea ceasului, deci cu detectie automata. Oricum, notati ca o prima
sarcina, dupa ce obtineti un sistem functional,configurarea sistemului X cu
XF86Setup.
Dupa configurarea serverului X programul de instalare ne propune sa ne ocupam
de configurarea retelei. In cazul in care facem o instalare locala suntem intrebati
daca dorim configurarea retelei. Un refuz duce la obtinerea unui calculator
individual. Daca am facut o instalare din retea, avem deja o configuratie TCP/IP
si putem opta pentru pastrarea acesteia sau pentru modificarea ei. Pentru parametrii
retelei va propunem sa revedeti exemplul anterior.
Urmeaza configurarea imprimantei. Va trebui sa specificam daca:
- imprimanta este locala, adica legata la calculatorul la care lucram;
- imprimanta la distanta se afla pe un calculator UNIX la care avem acces prin
retea;
- imprimanta LAN-Manager este o imprimanta partajata in retea de catre Windows
sau LAN-Manager cu SMB prin TCP/IP.
Apoi va trebui sa introducem numele imprimantei, directorul de spool, tipul
imprimantei, tipul hartiei, rezolutia si culoarea.
Imprimanta locala va avea nevoie de numele calculatorului la care este atasata,
adresa IP a acestuia, numele imprimantei partajate, numele de utilizator si
parola de acces la imprimanta.
Meniul urmator ne propune configurarea ceasului. Vom putea alege cu satisfactie
ora Europe/Bucharest. Daca ne mutam in alta zona geografica, putem folosi /usr/sbin/timeconfig
pentru modificarea fusului orar. Dupa fusul orar ni se cere sa introducem o
parola pentru uti-lizatorul root. Este important sa prote-jam accesul cu aceasta
identificare. Parola trebuie sa aiba minim 6 caractere.
Ultima secventa a acestei operatiuni de configurare este setarea incarcatorului
LILO (LInux LOader). Acesta urmeaza sa fie scris pe disc si sa fie executat
la pornirea sistemului. LILO poate fi scris in mai multe locuri diferite: MBR,
Master Boot Record, de unde este pornit au-tomat si poate controla incarcarea
sistemului. Cand este executat, LILO afiseaza pe ecran promptul boot:. LILO
poate fi configurat sa boot-eze si alte sisteme de operare cum ar fi de exemplu
sistemul Windows.
Primul sector al partitiei de root. Acest lucru este posibil daca in MBR avem
un alt manager de boot cum este cel al OS/2. In acest caz LILO se incarca sub
contro-lul acelui boot manager.
Dupa terminare, procedura de instalare va reincarca sistemul. Nu uitati dischete
in unitate. La promptul boot: apasati aEnteri. Cand se afiseaza login: tastati
root si apoi parola configurata mai sus. si... pregatiti-va sa introduceti comenzi!
Legatura la Internet
Daca nu ati configurat reteaua, este momentul sa o faceti acum. Ca root lansati
X-Windows cu startx si de acolo mergeti in Control Panel. Acesta are o functie
speciala de gestiune a retelei: Network Configuration. In primul rand va trebui
sa configurati o interfata la retea. Selectati Interfaces si apoi Add (adauga).
Vi se va oferi o lista cu tipurile (destul de multe) de legaturi posibile. Daca
sunteti conectati la o retea locala va va interesa tipul Ethernet. In caz contrar
va va interesa probabil legatura PPP. Configurarea unei legaturi Ethernet este
ceva mai simpla, fiind necesara doar adresa IP si masca de retea pe care le
obtineti de la administratia retelei. Legatura PPP este ceva mai complicat de
sta-bilit. Parametri sunt de doua feluri: cei ale caror valori vor fi furnizate
de administratie si ceilalti, pentru care valorile implicite sunt de cele mai
multe ori suficiente. Ce este mai sensibil la legatura PPP este dialogul (chat)
intre cele doua modemuri care incearca sa stabileasca legatura si deci modul
in care calculatorul va controla acest dialog. Acest mod de control difera de
la modem la modem.
Dupa configurarea interfetei puteti sa o activati. Dupa aceea sunteti conectat
si nu va mai ramane decat sa utilizati reteaua. Pana la aparitia browser-ului
de Web fiecare serviciu avea clientul lui, a carui utilizare trebuie sa o invatati.
Din pacate, acele vremuri au cam trecut si acest capitol, in care ar fi intrat
utilizarea programelor ca telnet sau ftp se reduce la o propozitie: luati un
broswer de isprava (exista Netscape pentru Linux, e liber pentru uz personal!)
si invatati sa-l folositi. Pentru detalii despre conectarea la retea, cititi
capitolul urmator.
Putem sa compilam nucleul?
Raspunsul este da, e chiar mai simplu decat multe alte activitati in sistem:
daca nu va reuseste, in mod sigur ati gresit un-deva. In primul rand, daca sunteti
incepator, nu faceti aceasta operatie decat la nevoie: un motiv ar fi ca aveti
hardware care nu a fost inclus in nucleul implicit. In al doilea rand nu este
indicata inceperea unei operatiuni de optimizare. Ramaneti la modificarile strict
necesare si anume la includerea hardware-ului care va intereseaza.
Lansati X-Window cu startx. Asigurati-va ca aveti sursele nucleului pe sistem.
Altfel, copiati si despachetati nucleul in /usr/src. Schimbati directorul curent
prin intermediul instructiunii cd /usr/src/linux.
Acest director exista dupa instalarea surselor nucleului. Tastati comanda make xconfig care va va ajuta sa configurati nucleul. Configuratorul, veti vedea, este interactiv
si placut in utilizare. Alegeti sectiunea de configurare dorita si includeti
suportul software necesar in nucleu. Salvati si terminati configuratorul. Apoi
tastati make dep; make clean
Putem selecta mai multe placi de retea suportate de Linux apasand butonul „y"
de pe toate liniile. Obtinem un nucleu mai flexibil dar mai mare.
Prelucrarea nu va necesita mult timp, va genera dependentele intre componente
si va sterge eventualele urme ale unor compilari anterioare. Apoi tastati make zImage care va compila nucleul. Comanda dureaza 10-20 de minute, in functie de calculator
si complexitatea nucleului configurat. In situatia in care aveti module in nucleu
(daca nu stiti, aproape sigur aveti) tastati doua comenzi suplimentare: make modules make modules- install
Dupa ce se termina tot, dispuneti de nucleul dorit. Ramane sa il puneti in functiune
Exista multe tipuri de sisteme de fisiere si Linux poate utiliza o buna parte
din ele. Nu uitati ca, in cazul in care aveti unitate CD-ROM, sa selectati iso9660
Copiati nucleul obtinut in /boot sub numele zDebug prin intermediul urmatoarei
instructiuni: cp arch/i386/boot/zImage /boot/zDebug
Mergeti in /etc si editati lilo.conf: cd /etc joe lilo.conf
La sfarsitul fisierului adaugati: image=/boot/zDebug label=debug root=/dev/hda1 read-only
In loc de /dev/hda1, scrieti numele partitiei din care boot-ati de obicei. Salvati,
iesiti si rulati lilo: lilo
Acum puteti reboot-a sistemul. tineti tasta aShifti apasata pentru ca incarcatorul
sa se opreasca la promptul boot. Introduceti debug, numele noului nucleu. Daca
lucrurile nu merg, reveniti la incarcarea normala (fara tasta aShifti). In caz
contrar puteti sterge celelalte nuclee din /etc/lilo.conf si rula din nou.
Reteaua TCP/IP
In continuare ne vom ocupa de conectarea calculatorului la retea. Modul de conectare
si functiile pe care le poate indeplini calculatorul pot determina configuratii
complexe, a caror explicare ar trebui sa recurga la concepte care nu isi au
locul aici. Pe de alta parte, situatiile cele mai frecvente sunt simple si reduse
la numar. Putem de fapt avea in vedere doar doua astfel de situatii: conec-tarea
Linux-ului la o retea locala de tip Ethernet si conectarea la un furnizor de
servicii Internet printr-o legatura de tip PPP.
Reteta functioneaza aproape in totdeauna, desi detalii cum sunt comunicatii imperfecte, hardware incompatibil sau inexactitati de administratie
pot face conexiunea la retea inutilizabila si stabilirea cauzelor poate fi dificila.
Pe de alta parte, situatii particulare, complexe si rare, pot face necesara
interventia unui administrator profesionist de sistem UNIX.
Daca nu puteti apela pe moment la asemenea solutii sau nu aveti suficienta rabdare,
curiozitate si timp, puteti sa va apucati sa cititi pe indelete documentatia
aferenta acestui sistem de operare: in pri-mul rand superbul ghid de administrare
a retelei al lui Olaf Kirch si apoi cele cateva documente de tip HOWTO (Cum
sa facem?), ca NET-2-HOWTO sau PPP-HOWTO.
Inainte de a incepe configurarea retelei ar trebui sa ne asiguram ca urmatoarele
conditii sunt indeplinite: suportul pentru TCP/IP si PPP este compilat in nucleu.
Apoi va trebui sa ne asiguram ca principalele componente ale pachetului de utilitare
TCP/IP sunt prezente: programele ifconfig si route pentru configurare si utilitarele
de baza ping, ftp sau telnet. Daca instalati Linux folosind kit-ul Red Hat de
pe CD, nu aveti decat sa selectati functiile de retea dorite. Nucleul instalat
implicit va contine suportul necesar. O minima configurare implicand conectarea
la reteaua locala se face inca din timpul instalarii.
Configurarea consta in principal in completarea unor fisiere de configurare,
aflate de obicei in directorul /etc. Desi nu atat de obscura pe cat pare, aceasta
metoda tinde sa fie inlocuita prin metode mai intuitive, folosind interfete
grafice de administrare cum ar fi panoul de comanda propus de Red Hat.
Configuratia retelei
Inainte de a incepe configurarea retelei trebuie sa capatam cateva informatii
despre reteaua la care ne conectam. Aceste informatii sunt de obicei furnizate
de ad-ministratia retelei. adresa IP: o adresa unica a calculatorului in retea; este formata din patru
numere intre 1 si 254 separate prin „.". Un exemplu ar fi 192.168.1.3.
O adresa IP particulara, anume 127.0.0.1 este rezervata pentru a desemna calculatorul
propriu si este singura adresa necesara cand nu avem nici placa Ethernet nici
legatura PPP. masca de retea: este alcatuita tot din patru valori numerice separate prin puncte,
asemanator adresei IP. In cazul de fata, un exemplu tipic ar putea fi 255.255.255.0.
Masca de retea arata ca-re parte din adresa IP este adresa retelei la care suntem
conectati direct si care parte desemneaza calculatoarele din retea. Masca de
retea arata ca primele trei cifre ale adresei IP constituie adresa de retea.
Se mai spune ca suntem conectati direct la reteaua 192.168.1.0. Toate calculatoarele
conectate la aceasta retea vor avea adresa IP cu primele trei cifre cele din
adresa de retea. Ultima cifra, corespunzand lui 0 din masca de retea, va di-feri
de la calculator la calculator. adresa de retea: se obtine prin operatia AND (sI) logic intre bitii adresei
IP si bitii mastii de retea. In exemplul inceput mai sus, primele trei numere
255 din masca de retea lasa pe loc numerele de pe pozitii-le corespunzatoare
din adresa IP, iar ultimul 0 determina 0 de pe ultima pozitie. Deci, adresa
de retea va fi 192.168.1.0. adresa de difuzare: difuzarea (broadcast) este folosita (mai rar) pentru transmiterea
de date simultan tuturor calculatoarelor conectate la aceeasi retea. Calculatoarele
recunosc prin conventie o adresa de difuzare care este in aceeasi retea si are
numarul care corespunde cal-culatorului format numai din biti 1. In cazul nostru:
192.168.1.255.
Configurarea retelei incepe cu configurarea interfetelor. adresa de poarta: poarta (gateway) este un calculator din reteaua proprie prin
intermediul caruia se poate comunica cu exteriorul, cu alte retele. In principiu,
pot exista mai multe porti, fiecare catre retele diferite. In practica, de cele
mai multe ori, este numai una. Se obisnuieste sa se dea portii un numar de masina,
numar care poate fi 1 sau 254 (adica o adresa IP avand valoarea 192.168.1.1
sau 192.168.1.254). adresa serverului de nume: servi-ciul de nume (DNS _ Domain Name Server) este
cel care permite utilizarea numelor in locul adreselor IP. Serverul de nume
este un calculator care are o baza de date cu nume si atributele acestora, in
principal adresele IP asociate. In acest stadiu, serviciul de nume poate fi
omis.
Script-uri de pornire a retelei
Script-urile de initializare a retelei sunt executate la initializarea sistemului.
Ele contin comenzile de baza care configureaza interfata de retea si adresarea.
Implicit se afla in /etc/rc.d si se numesc rc.inet1 si rc.inet2. rc.inet1 configureaza parametrii de baza ai retelei, iar rc.inet2 porneste principalele
servicii de retea, executate de programe care ruleaza in background, numite
demoni.
Pentru configurarea parametrilor de baza ai retelei rc.inet1 foloseste doua
programe: ifconfig si route. Ifconfig configureaza si initializeaza o interfata
de retea. Route este necesara pentru gestiunea tabelei de rutare, necesara dirijarii
datelor printr-o interfata sau alta.
In majoritatea situatiilor, un fisier rc.inet1, precum cel din oglinda alaturata,
(fireste, cu parametrii modificati) va functiona corect.
Acest script este bun pentru majoritatea cazurilor, dar nu pentru toate. Daca
de exemplu calculatorul dumneavoastra e conectat la doua retele locale prin
interfete Ethernet,lucrurile pot fi sensibil mai complicate.
Script-ul rc.inet2 porneste programele care realizeaza serviciile de baza TCP/IP.
Cel mai important dintre programe este inetd sau superserverul. Acesta intercepteaza
toate cererile adresate prin retea calculatorului pe care ruleaza. Le examineaza
si apoi comanda executia programului care presteaza serviciul solicitat. Este
un mod simplu si standardizat de a dispeceriza cererile adresate calculatorului
dumneavoastra.
Un alt program server foarte important este syslogd _ programul de jurnalizare.
Configuratia acestui server este memorata in /etc/syslog.conf. Acolo sunt listate
categoriile de mesaje si fisierele jurnal in care sunt trimise fiecare. In practica
sunt utilizate unul sau doua jurnale ca /var/log/messages sau /var/log/syslog.
Trebuie sa va ingrijiti periodic si sa goliti aceste jurnale care, chiar la
o activitate minima cum este cea a unui calculator casnic, in timp pot creste
oricat de mult. Nu luati masuri radicale si nu opriti jurnalizarea! Va privati
de o sursa importanta de informatii in cazul unor anomalii de functionare.
Un alt demon important este routed, un program care intretine tabela de rutare
a sistemului fara interventia utilizatorilor.
Script-ul de mai jos porneste cateva procese server mai importante.
Daca ati instalat Red Hat, folositi opti-unea de configurare a retelei din panoul
de comanda (Control Panel) care este lansat automat la intrarea in sistem. Nu
va hazardati sa editati de mana script-uri. Cititi insa exemplele de mai sus
pentru ca sunt instructive: oricat de frumoasa este interfata utilizator tot
la ele se ajunge.
#! /bin/sh
# /etc/rc.d/rc.inet2
# Start syslogd if a -f /usr/sbin/syslogd i then
/usr/sbin/syslogd fi
# Start inetd if a -f /usr/sbin/inetd i then
/usr/sbin/inetd fi
# Start routed if a -f /usr/sbin/routed i then
/usr/sbin/routed -q fi
# Gata!
#!/bin/sh
# /etc/rc.d/rc.inet1
HOSTNAME=`CHIP`
/etc/ifconfig lo 127.0.0.1 # adresa locala cu masca implicita;
/etc/route add 127.0.0.1 # ruta pentru adresa locala;
# Interfete Ethernet. Modificati dupa caz:
IPADDR="192.168.1.3" # Inlocuiti cu adresa dumneavoastra IP
NETMASK="255.255.255.0" # Inlocuiti cu masca dumneavoastra de retea
NETWORK="192.168.1.0" # Inlocuiti cu adresa retelei dumneavoastra
BROADCAST="192.168.1.255" # Inlocuiti cu adresa dumneavoastra de difuzare
GATEWAY="192.168.1.1" # Inlocuiti cu adresa portii dumnevoastra
/etc/ifconfig eth0 $AIPADDRS netmask $ANETMASKS broadcast #$ABROADCASTS
# Daca in reteaua dumneavoastra nu se poate difuza
# comentati (puneti un # la inceput) linia de mai sus
# si decomentati (stergeti # de la inceput) linia de mai jos.
# /etc/ifconfig eth0 $AIPADDRS netmask $ANETMASKS
/etc/route add $ANETWORKS
# Cele mai multe retele nu au poarta sau iesire spre exterior.
# Daca dumneavoastra aveti, decomentati comanda de mai jos
# /etc/route add default gw $AGATEWAYS metric 1
# End of Ethernet Configuration linux:$ ifconfig lo Link encap:Local Loopback inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
RX packets:26 errors:0 dropped:0 overruns:0
TX packets:26 errors:0 dropped:0 overruns:0 eth0
Link encap:10Mbps Ethernet HWaddr 52:54:4C:00:60:F1 inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:153 errors:0 dropped:0 overruns:0
TX packets:56 errors:0 dropped:0 overruns:0
Interrupt:3 Base address:0x300 linux:$ ping -c 3 -v 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=0.8 ms
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.7 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.6 ms
— 192.168.1.1 ping statistics —-
3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 0.6/0.7/0.8 ms
Configuratia PPP
Cel mai simplu mod de configurare este sa folosim interfata de administrare
a distributiei Red Hat. Acolo putem adauga cu usurinta o interfata de tip PPP.
In cazul cel mai favorabil (culmea, este si cel mai frecvent) vom avea nevoie
numai de numarul de telefon, numele de utilizator si o parola pentru a putea
stabili o legatura imediat, prin activarea interfetei de tip PPP.(Point to Point
Protocol) considerate depasite tehnologic. Din aceste motive nu ne vom ocupa
decat de configurarea unei legaturi PPP. PPP este un protocol destinat transmiterii
de pachete IP (unitati de baza de date in TCP/IP) prin intermediul unei linii
seriale. PPP poate fi folosit atat pe linie