miércoles, 1 de mayo de 2013

Zelan eguneratu FreeBSD-ko iturburua subversion erabiliz

Urteak dira FreeBSD erabiltzen hasi nintzenetik (14 gutxi gorabehera) eta hasieratik gustukoen izan dudan ezaugarria izan da sistemaren eguneraketa mota. Iturburua jaitsi, nire beharretara egokitu, konpilatu..(ezagun batek esan dit behin bahino gehiagotan Matrix filman bezala letrak ikusi nahi ditudala nire pantailan mugitzen etengabe… batek daki, izan leike!)


FreeBSDko iturburua jaisteko beti erabili izan dut cvsup tresna, eta ostean bere berrinplementazioa csup… baina denbora aurrera doan heinean proiektuak aldaketa batzuk egin ditu, eta haien artean eguneraketa mota, subversion sistemara aldatu. Saiatuko naiz azaltzen egun zelan egiten ditudan eguneraketak (eguneratzeko beste era batzuk egon badaude, ziurrenik errazagoak, baina nik hau nahiago dut, askotan letra gehiago ikusten baitira teminalean ;-) )


Hasi baino lehen argi izan behar dugu direktorio honetan sistemaren tresnak (userland) eta kernela daudela, arkitektura ezberdinentzako. FreeBSDko garapen modeloa ere ezagutu behar dugu, berez hiru adar nagusi topatuko ditugu:


  • FreeBSD-CURRENT: Adar horretan azkenengo garapen eta frogak egiten dira. Aldaketa hauek hurrengo bertsioan (RELEASE) izango daitezke, baina ez beti. Batzutan kode hau konpilatu daiteke arazo barik, eta bestetan akatsak direla eta ezinezkoa da, garatzileek konpondu arte. Ingelesez esaten den bezala, adar hau “bleeding edge” da, amildegi ertzean ibiltzea bezala da, batzutan eror zaitezke, beraz nik behintzat ez nuke inoiz adar hau erabiliko produkzioan, baina aldi berean oso dibertigarria da frogak egiteko makina batean (etxekoan be bai, noski, inporta ez bazaizu noizean behin aldaketa sakonak egiten egotea)

  • FreeBSD-STABLE: Adar hau esan dezakegu RELEASE baten ondorengo garapenak sartzen direla, hurrengo RELEASE prestatzeko asmoz. Egun adibidez FreeBSD 9.1 bertsioan dago (hauxe izango litzateke gure RELEASE bertsioa), STABLEa esan dezakegu 9.1-RELEASE iturburuaren fork bat dela, 9.2-RELEASE prestatzeko. Batzutan akats txiki batzuk egon daitezke, baina orokorrean nahiko egonkorra da, eta ez dira akats larriak izaten, beraz aproposa da mahaingain bezala erabiltzen dugun makina baterako. Zerbitzarietan ere erabil dezakegu, baina nik behintzat normalean ez dut erabiltzen RELEASE adarrean ez dagoen kontrolatzaile bat erabili behar ez badut.

  • FreeBSD-RELEASE: Hauxe da FreeBSDko adar egonkorrena, honetan segurtasun konponketak besterik ez da sartzen, beraz egokiena da zerbitzarietan erabiltzeko. Esan dezakegu momentu batean FreeBSD-STABLE-ko adarraren snapshot bat egiten dela eta hori da argitaratzen dena, egun 9.1-RELEASE bertsioan dago FreeBSD.

Orain gutxi gorabehera zertxobait ulertzen dugula FreeBSDko garapenari buruz, has gaitezen eguneraketekin. Subversion erabiliko dugunez ba… ohikoa den moduan:


# portmaster -d /usr/ports/devel/subversion

Jatorrizko aukerak erabiliko ditugu eta konpilatzen utzi ondoren, erabiliko dugun tresna badaukagu.



/usr/src (hemen FreeBSDko world (userland) eta kernela dago)


Lehenengo aldia subversion erabiliko dugu iturburua jaisteko, segun zein adar erabili nahi dugun hauetako bat aukeratuko dugu:


CURRENT
# svn checkout https://svn0.eu.freebsd.org/base/head /usr/src

STABLE
# svn checkout https://svn0.eu.freebsd.org/base/stable/9 /usr/src

RELEASE
# svn checkout https://svn0.eu.freebsd.org/base/releng/9.1 /usr/src


Beste zerbitzari bat aukeratu nahi badugu dagokion Handbook-eko atalean begiratuko dugu, eta beste bertsio bat kontsultatu nahi badugu FreeBSDko subversion web interfazean bilatuko dugu ( http://svnweb.freebsd.org/ )


Baina beno, badaukagu gure /usr/src datuekin, eta eguneratu nahi badugu? Erraza baino errazagoa:


# svn up /usr/src


/usr/ports


FreeBSDko portuetako sistemak beti erabiltzen du HEAD adarra (CURRENT antzekoa) beraz, /usr/src atalean azaldu dugunez:


# svn checkout https://svn0.eu.freebsd.org/ports/head /usr/ports

Eta eguneratzeko aurreko kasuan bezalaxe:


# svn up /usr/ports


/usr/doc


Eta azkenik, FreeBSDko dokumentazioak beti erabiliko du HEAD adarra (CURRENT antzekoa), ports sistemak bezala, orduan:


# svn checkout https://svn0.eu.freebsd.org/doc/head /usr/doc

Eta eguneratzeko…


# svn up /usr/doc

 … eta azkenik


Sarrera honetan aipatu dudan bezala, beste era batzuk daude FreeBSD eguneratzeko. Adibidez ports sistema eguneratzeko normalean portsnap(8) tresna erabiltzen dut, FreeBSD sistema bera (World eta Kernela) eguneratzeko beste batzuk freebsd-update(8) erabiltzen dute… Zure esku!

No hay comentarios:

Publicar un comentario