Erinevus lehekülje "FreeBSD pakihaldus" redaktsioonide vahel

Allikas: Kuutõrvaja
(FreeBSD portsud)
54. rida: 54. rida:
 
  bash# export HTTP_PROXY="cache.server.ee:3128"
 
  bash# export HTTP_PROXY="cache.server.ee:3128"
  
V2imalik on kasutada ka mirroreid ,et kiirendada tarkvara t2mbamist
+
Võimalik on kasutada ka mirroreid ,et kiirendada tarkvara tõmbamist
v2i v2imaldades saada tarkvara k2tte ka siis kui selle originaalne allikas on k2ttesaamatu. N2iteks lisades /etc/make.conf faili rea
+
või võimaldades saada tarkvara kätte ka siis kui selle originaalne allikas on kättesaamatu. Näiteks ,et kasutada EENet'i mirrorit tuleb lisada /etc/make.conf faili rida
  
 
  MASTER_SITE_OVERRIDE?=http://ftp.eenet.ee/pub/FreeBSD/distfiles/${DIST_SUBDIR}/
 
  MASTER_SITE_OVERRIDE?=http://ftp.eenet.ee/pub/FreeBSD/distfiles/${DIST_SUBDIR}/
  
Mille puhul siis p22rdutakse alati kui pordist mingit tarkvara kompileeritakse
+
Mille puhul pöördutakse alati kui pordist mingit tarkvara kompileeritakse
antud softi algkoodi otsima ftp.eenet.ee masina poole.
+
antud softi algkoodi otsima '''ftp.eenet.ee''' nimelise masina poole.
  
 
Iseseisvatest lähtetekstidest kompileerimine
 
Iseseisvatest lähtetekstidest kompileerimine

Redaktsioon: 13. aprill 2008, kell 11:21

Sissejuhatus

FreeBSD süsteemile saab tarkvara lisada kolmel erineval moel

   * prekompileeritud paketid - neid pakette sisaldub omajagu näiteks FreeBSD CD-plaadil, samuti saab neid Internetist FreeBSD serveritest kopeerida. Sel juhul harutatakse programmid teie süsteemi sobivatesse kataloogidesse lahti kusjuures kontrollitakse ka sõltuvusi ja vajadusel installeeritakse vastavad muud programmid.
   * FreeBSD portsud - see on eelistatud tarkvara lisamise moodus. Portse kasutades kopeeritakse Insternetist vajalikud programmid ning kompileeritakse kohapeal; lisaks installeeritavale tarkvarale kontrollitakse sõltuvusi, so et olemas oleks ka kõik paketid, mida see konkreetne tarkvara kasutab.
   * iseseisvatest lähtetekstid - kui kuskil tarkvara kirjutatakse, siis on võimalik, et autorid näevad ette, et seda võidakse soovida ka kompileerida FreeBSD platvormil. Näiteks on lähtetekstidega kaasas configure skript mis moodustab sobiva Makefile. 

Prekompileeritud paketid

Prekompileeritud pakettidest tarkvara lisamine on kõige lihtsam, sest sisuliselt harutakse arhiiv sobivatesse kataloogidesse lahti ja tekitatakse vajalikud lingid. Seda moodust sobib kasutada näiteks FreeBSD CD-plaadil olevate iseseisvate programmide installeerimiseks, mida vaikimisi ei installeerita või mis unusid süsteemi installeerimise ajal näidata, näiteks Bash koorik, Joe tekstiredaktor, Less pager.

See toimub käsude pkg_add, fetch, pkg_delete abil. Näiteks installeerime Bash kooriku

bash# pkg_add /cdrom/packages/All/bash-2.03.tgz

Soovides näha pakettidest lisatud programmide nimesid, kasutage käsku pkg_info ilma arumendita; soovides näha konkreetse paketi kohta enam, kasutage paketi nime argumendina, näiteks

bash# pkg_info joe-2.8

Prekompileeritud pakette on aga võimalik installeerida ka kasutades FreeBSD süsteemi konfiguratsiooniprogrammi /stand/sysinstall -> Configuration -> Packages. Seejuures saate installeerida samadel meediumitelt nagu süsteemi ennastki so FTP, NFS, CD-plaat jne.

FreeBSD portsud

Reeglina eeldab portsude kasutamine kompileerimisvahendite ja võrguühenduse olemasolu ning seda, et Portsude Kogumik (ingl. k. Ports Collection) on installeeritud.

Kogumik ise võtab ca 100 MB ruumi ning sisaldab andmeid praktiliselt kõigi vabalt kasutada olevate FreeBSD programmide kohta. Portsude Kogumik asub vaikimisi kataloogis /usr/ports moodustades teemadeks jaotatud kataloogistruktuuri. Igale programmile vastab üks kataloog infot millistest teistest pakettidest kõnealune programm sõltub ning kust veebi või FTP serverist Internetist seda programmi kopeerida. Portsude Kogumik ei sisalda programmide lähtetekste, vaid ainult viiteid Interneti serveritele kust vajaduselt tarkvara lähtetekstid kopeeritakse ning seejärel teie masinas kompileeritakse ja ära installeeritakse.

cvs'ist portide kogumiku paigaldamine ja uuendamine on FreeBSDs korraldatud portsnap vahendiga. Esimenekord käivitamisel tasuks anda käsk

portsnap fetch extract

Mis tõmbab viimase portside snapshoti ja pakib selle /usr/ports alla lahti Edaspidi kui on vaja uuendada portse piisab kui anda käsk

portsnap fetch update


Portsudest süsteemi tarkvara lisamine toimub praktiliselt selliselt, et valite Kogumikus sobiva programmi välja, sisenete vastavasse kataloogi ning annate korralduse

bash# make install

Seejärel kontrollitakse kas süsteemis leiduvad muud programmid, mille olemasolu installeeritav programm eeldab. Vajadusel kopeeritakse Internetist esmalt nende lähtetekstid ning nad kompileeritakse ja installeeritaks. Seejärel kopeeritakse installeeritava programmi lähtetekstid ning tarkvara kopileeritakse ja installeeritakse.

Seesugune asjakorraldus teeb tarkvara lisamise ja sõltuvuste lahendamise kasutaja jaoks põhimõtteliselt väga mugavaks. Kuivõrd programmide lähtetekste kopeeritakse otse võrgust, siis on lihtne tarkvara arendajatel teha kasutajale kättesaadavaks värsked versioonid.

Portsudest installeeritud tarkvara eemaldamiseks sisnege taas Kogumiku vastavasse kataloogi ning andke korraldus

bash# make deinstall

Kuna programmide lähtetekstid kopeeritakse võrgust veebi või FTP serveritest, siis on mõistlik näidata keskkonnamuutujale HTTP_PROXY sobiv väärtus, sarnaselt

bash# export HTTP_PROXY="cache.server.ee:3128"

Võimalik on kasutada ka mirroreid ,et kiirendada tarkvara tõmbamist või võimaldades saada tarkvara kätte ka siis kui selle originaalne allikas on kättesaamatu. Näiteks ,et kasutada EENet'i mirrorit tuleb lisada /etc/make.conf faili rida

MASTER_SITE_OVERRIDE?=http://ftp.eenet.ee/pub/FreeBSD/distfiles/${DIST_SUBDIR}/

Mille puhul pöördutakse alati kui pordist mingit tarkvara kompileeritakse antud softi algkoodi otsima ftp.eenet.ee nimelise masina poole.

Iseseisvatest lähtetekstidest kompileerimine

Soovides oma FreeBSD tundmise ja programmeerimise oskust proovile panna, või kuid teid huvita programmi portsu ega paketti pole, siis ei jää muud üle kui asuda otse lähtetekste kompileerima.

Näiteks kopeerige lähtetekstid kataloogi /usr/src ja pakkige lahti. Seejärel talitage tarkvaraga kaasas olevate juhiste kohtaselt.

Lähtetekstidest paigaldatud tarkvara eemaldamiseks ei paku süsteem automaatseid mooduseid. Võimalik, et tarkvaraga on ühes sellised vahendid või tuleb teha seda tõepoolest käsitsi.

Portide abivahendid

Kaks mõistlikumat vahendit oleksid portupgrade ja portaudit mida süsteemis esmasena kasutada

portupgrade

Tegemist automaatse pordi uuendamise vahendiga.

cd /usr/ports/ports-mgmt/portupgrade && make install

Kasutamine

portupgrade pordinim

Selleks ,et vaadata mis pordid omavad uuemaid versioone sobib lihtne käsk

pkg_version -v | grep "<"

Üldiselt ei tasu uisapäisa tormata kõiki porte uuendama sest sageli võib näiteks portupgrade -a lõppeda mitme mittetöötava tarkvara vaid uuendada mõistlikult vastavalt vajadusele ja juhul kui tarkvaras on avastatud ohtlik viga. Vigade avastaiseks on järgnev soft

portaudit

Portaudit kontrollib kõiki installitud tarkvara versioone vastu keskset andmebaasifaili mille ta igal käivitamisel allatõmbab ning teatab antud tarkvaras asuvaid turvavigu

cd  /usr/ports/ports-mgmt/portaudit && make install

kasutamine

portaudit -F -a


Lingid

Põhjalik tekst bsd.ee wikis tarkvara uuendamisest ja installimisest

http://bsd.ee/dwiki/doku.php?id=bsdeesti:securefest.workshop