UNIX System V
| UNIX System V | |
|---|---|
| Jatorria | |
| Argitaratze-data | 1983 |
| Banatze bidea | 3½-inch floppy disk (en) |
| Azken bertsioa | 4.1.4 |
| Ezaugarriak | |
| Programazio-lengoaia | C |
| Deskribapena | |
| Honen parte da | Unix |
| Ekoizpena | |
| Garatzailea | AT&T |
UNIX System V (System Five gisa ahoskatua eta sarritan SysV gisa laburtua) Unix sistema eragilearen bertsio komertzial garrantzitsuenetako bat izan zen. AT&T enpresak garatu zuen eta 1983an argitaratu zen lehen aldiz. Garai hartako Unix bertsio ezberdinak estandarizatzeko eta merkataritza-produktu profesionalei bide emateko sortu zen.
Gaur egungo Linux eta Unix bertsio moderno askok haren arkitektura eta kontzeptu ugari heredatu dituzte, batez ere sistema abiarazteko prozesuari dagokionez (SysV init).
Historia eta Eboluzioa
[aldatu | aldatu iturburu kodea]System V baino lehen, AT&Tk System III kaleratu zuen, baina unibertsitateetan eta ikerketa zentroetan Berkeley Software Distribution (BSD) bertsioa oso ezaguna bihurtzen ari zen. BSDari aurre egiteko eta Unix merkatu komertziala zentralizatzeko, AT&Tk System V plazaratu zuen.
Lau bertsio nagusi izanctxuekin (Release 1, 2, 3 eta 4):
- Release 1 (1983): Jatorrizko bertsioa, System III-an oinarritua baina hobekuntzekin.
- Release 2 (1984): Errendimendu hobea eta funtzio berriak erantsi zizkion.
- Release 3 (1987): Sare-funtzio aurreratuak (STREAMS) eta fitxategi-sistema partekatuak ekarri zituen.
- Release 4 (SVR4 - 1989): Unixen historian mugarri handia izan zen. BSD, SunOS eta System V bertsioak bateratu zituen sistema bakar eta boteretsu batean.
SysV Init: Abiarazte Sistema
[aldatu | aldatu iturburu kodea]System V-ren ekarpen tekniko ezagunenetako bat bere abio-sistema (init) da. Tradizionalki, Linux munduak hiru abio-sistema nagusi ezagutu ditu: System V init, Upstart eta systemd. Horien artean, tradizionalena eta historikoena SysV init da.
Gaur egun sistema baten SysV inplementazioa erabiltzen ari den ala ez jakiteko, `/etc/inittab` fitxategia existitzen den egiaztatu behar da. Fitxategi hori bertan badago, banaketa hori SysV-n oinarrituta dagoela esan nahi du.
Prozesuen kudeaketa sekuentziala
[aldatu | aldatu iturburu kodea]Abio-sistema honen zeregin nagusia sistema eragilearen oinarrizko prozesuak abiaraztea eta gelditzea da. Zerbitzuak modu sekuentzialean kudeatzen ditu. Adibidez, zerbitzu batek (foo-b izenekoa) beste baten menpekotasuna badu (foo-a zerbitzua), foo-b ezin da abiatu foo-a guztiz exekutatuta eta martxan egon arte.
Kudeaketa hau egiteko shell script-ak (gidoiak) erabiltzen dira. Script hauek direktorio zehatz batzuetan egoten dira eta zerbitzuen abioa zein itzaltzea kontrolatzen dute. Erabiltzaileek script pertsonalizatuak idatzi ditzaketen arren, sistema gehienek sistema eragilearen oinarrizko zerbitzuak kudeatzeko aurre-paketatuta datozen scriptekin funtzionatzen dute.
Abantailak eta desabantailak
[aldatu | aldatu iturburu kodea]- Abantailak: Planteamendu sekuentzial honen abantaila nagusia bere sinpletasuna eta aurreikusgarritasuna da. Menpekotasunen arazoak konpontzea eta diagnostikatzea oso erraza da, beti bermatzen baita foo-a zerbitzua foo-b baino lehenago abiaraziko dela.
- Desabantailak: Errendimenduan eragiten du. Zerbitzuak banan-banan eta sekuentzialki kargatzen direnez, prozesua motelagoa da sistema paralelo modernoekin alderatuta, eta horrek ordenagailuaren abio-denbora luzatzen du.
Runlevel edo Abio-mailak
[aldatu | aldatu iturburu kodea]SysV ingurune baten ordenagailuaren egoera `runlevel` edo abio-mailekin definitzen da, 0tik 6ra zenbakituak. Modu hauek Linux banaketaren arabera zertxobait aldatu daitezkeen arren, konbentzio estandar bati jarraitzen diote:
- 0: Itzaltzea (Shutdown)
- 1: Erabiltzaile bakarreko modua (Single User Mode)
- 2: Erabiltzaile anitzeko modua, sare-konexiorik gabe
- 3: Erabiltzaile anitzeko modua, sarearekin (testu moduan)
- 4: Erabili gabea
- 5: Erabiltzaile anitzeko modua, sarearekin eta ingurune grafikoarekin (GUI)
- 6: Berrabiaraztea (Reboot)
Sistemaren lehenetsitako abio-maila `/etc/inittab` fitxategian ikus eta alda daiteke.
Script-ak eta direktorio-egitura
[aldatu | aldatu iturburu kodea]Sistema abiarazten denean, konfiguratuta daukan abio-maila egiaztatzen du eta maila horri dagozkion script-ak exekutatzen ditu. Gidoi hauek `/etc/rc.d/rc[abio-maila].d/` direktorioetan edota `/etc/init.d` direktorio nagusian topatzen oars.
- S (Start) hizkiz hasten diren script-ak sistema kargatzerakoan (startup) exekutatzen dira zerbitzuak abiarazteko.
- K (Kill) hizkiz hasten direnak, berriz, sistema itzaltzerakoan (shutdown) exekutatzen dira zerbitzuak gelditzeko.
Hizkien ondoren dakarren zenbakiak exekuzio-ordena zehatza adierazten du. Adibidez, abio-maila 0ra (itzaltzea) aldatzean, honako script hauek exekutatuko lirateke ordena honetan:
- `K10updates` (eguneraketa zerbitzua gelditzen du)
- `K80openvpn` (OpenVPN zerbitzua gelditzen du geroago)
Zerbitzuen Kudeaketa: 'service' Komandoa
[aldatu | aldatu iturburu kodea]System V-ko zerbitzuekin elkarreragiteko tresna nagusia `service` komandoa da. Tresna honek babes-gidoi (wrapper script) gisa funtzionatzen du, gidoiak zuzenean exekutatzeko prozesua erraztuz. Tresna hau ez da SysV-rako esklusiboa, trantsizioak errazteko Upstart edota systemd bezalako sistema berriagoetan ere bateragarritasun-geruza gisa mantendu baita.
Zerbitzu guztiak zerrendatzea
[aldatu | aldatu iturburu kodea]Sisteman eskuragarri dauden zerbitzu guztiak eta haien uneko egoera ikusteko, `--status-all` bandera erabiltzen da:
service --status-all
Komando honek zerbitzuak zerrendatuko ditu eta haien egoera hiru ikur hauen bidez adieraziko du:
- (+) Zerbitzua martxan dago (Running).
- (-) Zerbitzua geldituta dago (Stopped).
- (?) Zerbitzuaren egoera ezezaguna da.
Zerbitzu zehatz bat kontrolatzea
[aldatu | aldatu iturburu kodea]Zerbitzu indibidual baten gainean eragiteko, zerbitzuaren izena eta egin nahi den ekintza zehaztu behar dira (`start`, `stop` edo `restart`). Ekintza hauek administrazio-baimenak behar dituzte, beraz, `sudo` erabiltzen da.
- Zerbitzu bat abiarazteko (adibidez, sareko zerbitzua):
sudo service networking start
- Martxan dagoen zerbitzu bat gelditzeko:
sudo service networking stop
- Zerbitzu bat berrabiarazteko (gelditu eta berehala berriz piztu, oso erabilgarria konfigurazio-aldaketak aplikatzeko):
sudo service networking restart
Ondarea eta gaur egungo egoera
[aldatu | aldatu iturburu kodea]Gaur egungo Linux banaketa moderno gehienetan System V sistema zaharkituta geratu da eta systemd-k ordezkatu du nagusiki. Hala ere, zerbitzuak kudeatzeko ezagutza honek balio handia du oraindik sistema-administratzaileentzat, sistema askok atzeranzko bateragarritasunari (backward compatibility) eutsi egiten baitiote legatu-zerbitzuak exekutatu ahal izateko.