![]() |
PkgsrcNetBSD Paketikollektsioon (pkgsrc) on raamtöö kolmanda osapoole tarkvara NetBSD-l ja teistel UNIX-ilaadsetes süsteemides ehitamiseks, sisaldades praegu üle 3500 paketi. Seda kasutatakse toetatud platvormidel vabalt saadaoleva tarkvara häälestamiseks ja ehitamise võimaldamiseks. |
Viimased uudised
Kahendkitid
|
pkgsrc-l on järgmised omadused:
Operatsioonisüsteemi jaoks on pkgsrc nii Lähteteksti levitus kui ka Kahendlevitus kujul olemas. Peale lähteteksti või kahendfailide kohaletõmbamist võib mõne minuti jooksul pkgsrc kaasabil programmi mõne minuti jooksul käivitada.
pgksrc praegu toetab järgnevaid platvorme:
Kui NetBSD-d kasutate, võite kohe pkgsrc-d kasutama hakkata. Vaata pakettide paigaldamine sektsiooni.
Teiste platvormide jaoks on bootstrap kit nii lähteteksti kui kahendfaili näol, mis koosneb paketi haldusvahenditest ja muudest pkgsrc ja ehitamiseks vajalikest vahenditest.
Kahendkitid ja algne paketide kogum on olemas järgnevate operatsioonisüsteemidele.
Table 1.
| Platvorm | Viimane tõmmis | Kahendkit | Kahendpaketid |
|---|---|---|---|
| Darwin 5.5/powerpc (Mac OS X 10.1.5) | 20021209 | kahendkit | |
| Darwin 6.2/powerpc (Mac OS X 10.2.2) | 20021219 | kahendkit | kahendpaketid |
| Darwin 6.3/powerpc (Mac OS X 10.2.3) | 20030412 | kahendkit | |
| Darwin 6.6/powerpc (Mac OS X 10.2.6) | 20030623 | kahendkit | |
| Debian GNU Linux/i386 | 20030410 | kahendkit | kahendpaketid |
| FreeBSD 3.5/i386 | 20030411 | kahendkit | |
| FreeBSD 4.7/i386 | 20021211 | kahendkit | kahendpaketid |
| FreeBSD 5.0/i386 | 20030411 | kahendkit | |
| FreeBSD 5.1/i386 | 20030630 | kahendkit | |
| IRIX 6.5 n32-bit ABI | 20030410 | kahendkit | kahendpaketid |
| IRIX 6.5 64-bit ABI | 20030626 | kahendkit | |
| OpenBSD 3.2/i386 | 20030417 | kahendkit | |
| Slackware Linux 8.1/i386 | 20030417 | kahendkit | |
| Solaris 8/sparc | 20030701 | kahendkit | |
| Solaris 8/i386 | 20030330 | kahendkit | |
| Solaris 9/sparc | 20030701 | kahendkit | kahendpaketid |
| Solaris 9/i386 | 20030411 | kahendkit |
Lihtsalt lae kahendkit oma platvormi jaoks alla ja paki
/ kataloogi lahti, e.g.
#cd /#gzip -c -d /tmp/bootstrap-pkgsrc-SunOS-5.9-sparc-20030701.tar.gz \ | tar -xpf -
Loomulikult nagu iga kahendlevitusega, peaks kontrollima SUM või CKSUM kontrollsummat enne, kui selle sisu lahti pakitakse.
Kokku pakitud bootstrap-pkgsrc saab laadida või teha AnonCVS-i kasutades viimasest lähtetekstist tõmmis:
#cvs checkout -P othersrc/bootstrap-pkgsrc
(AnonCVS häälestamist vaata arendus-NetBSD järgimine).
Peale allalaadimist ja/või lähteteksti lahtipakkimist on bootstrapkiti paigaldamine nii lihtne kui:
#cd othersrc/bootstrap-pkgsrc#./bootstrap
Vaikimisi kasutatakse /usr/pkg
eesliidet ja paketi andmebaasiks /var/db/pkg kataloogi. Seda saab määrata ka käsurea võtmetega (kasuta ./bootstrap --help käsku saadaval olevate valikute kohta).
Kui pkgsrc-i kasutatakse mitte-NetBSD süsteemis, tuleb bmake käsku ?make? asemel kasutada selleks, et käivitada NetBSD make, mis on õigeks pkgsrc töötamiseks vajalik. Lihtsalt asenda ?make? ?bmake? käsuga pkgsrc dokumentatsioonis.
NetBSD 1.5.x ja 1.6.x jaoks kahendpakettide valik on saadaval /pub/NetBSD/packages kataloogis NetBSD FTP serveris.
Enamiku kasutajate jaoks on lehitsetav veebinimekiri kasulik.
Pakette saab paigaldada kas laadides paketi ja tema sõltuvused enda kettale ja kirjutades:
#pkg_add <package>
või kirjutada täispikk URL välja:
#pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/<os_release>/<arch>/<type>/<package>
Sõltuvused käsitletakse ja paigaldatakse automaatselt, kui nad on samas kaugkataloogis olemas.
Paketid vaikimisi paigaldatakse /usr/pkg kataloogi.
Peaks kindel olema, et /usr/pkg/bin ja
/usr/pkg/sbin on keskkonna muutujas PATH kirjas (enamasti
kirjeldatakse /etc/csh.cshrc failis).
NetBSD paketikollektsioon koosneb Makefailidest, lühikesest kirjeldusest ja lappidest, mis on vajalikud kolmandate osapoolte programmide kompileerimiseks.
Pkgsrc paigaldamine lubab mõnusalt kompileerida ja paigaldada igat kollektsioonis olevat tarkvara.
On olemas mitmeid viise, kuidas pkgsrc-i hankida, võib kasutada nii AnonCVS-i kui FTP-d. Selle kohta täpsemalt pkgsrc dokumentatsioonis.
Peale pkgsrc hankimist koosneb /usr/pkgsrc kataloog
paljudest pakettidest, mis on kategooriatesse järjestatud. Võib internetist
lehitseda paketide nimekirja või kirjuta make readme
/usr/pkgsrc kataloogist selleks, et ehitada kohalik
README.html faili kõikide pakettide jaoks, mis on vaadatav iga
veebilehitsejaga nagu
www/lynx või
www/phoenix.
Vaikimisi on paigaldatavate pakettide eesliide
/usr/pkg. Kui on soov seda muuta, peaks seda tegema
määratledes LOCALBASE keskkonnamuutuja
/etc/mk.conf failis (Mis on /etc/mk.conf?). Mitmeid erinevaid
LOCALBASE määratlusi samas süsteemis ei peaks kasutatama
(välja arvatud chroot keskkonna sees).
Paketi paigaldamine on üsna lihtne. Näiteks tekstitoimeti Joe
süsteemi paigaldamiseks (editors/joe
on väike, aga
võimas tekstitoimeti, mis matkib teisi toimeteid nagu Wordstar ja
Emacs), tuleb kõigepealt muuta kataloogi:
%cd /usr/pkgsrc/editors/joe
Kui internetti pääsemiseks kasutatakse väljahelistamist, siis helistage nüüd, et tarkvara lähteteksti saaks allalaadida.
Kui kõik vajaminevad failid on
/usr/pkgsrc/distfiles kataloogis,
pole välja vaja helistada. Kui levitusefailid on CD-ROM-il, võib
CD-ROM-i /cdrom kataloogi külge haakida ja lisada:
DISTDIR=/cdrom/pkgsrc/distfiles
/etc/mk.conf faili.
Kui pakett sõltub paljudest teistest failidest (nagu
x11/kde3), võib ehitamise protsess erineda
lähtetekstide
eri ajal allalaadimiste ja kompileerimiste vahel. Selleks, et kindlustada
kõikide vajaminevate lähtetekstide allalaetus, võib kirjutada:
%make fetch-list | sh
kooriku käskude rida laeb kõik vajalikud failid
/usr/pkgsrc/distfiles kataloogi. Võib ka käsitsi
need failid
/usr/pkgsrc/distfiles kataloogi laadida.
Allalaadimiseks võib kasutada lähimat võrgus asuvat peeglit.
Selleks kopeeri oma maa jaoks MASTER_SITE_* määratlused
pkgsrc/mk/bsd/pkg.defaults.mk failist
/etc/mk.conf faili.
Nüüd kirjuta
%make
/usr/pkgsrc/editors/joe kataloogis.
Selle tulemusena laetakse alla lähtetekst ja kõik lapid, lisaks kogu
kompileerimiseks vajalik tarkvara.
Kui kogu tarkvara on alla laetud, lappidega paigatud, siis see kompileeritakse ära. See võtab, sõltuvalt arvutist ja sellest, kui palju on sõltuvaid pakette, mida samuti kompileeritakse, mõnda aega.
Järgmine samm on tegelikult uue kompileeritud programmie süsteemi paigaldamine. Tehke nii:
%make install
endiselt olles /usr/pkgsrc/editors/joe
kataloogis, (või kataloogis, kust paigaldatakse).
Nii, tarkvara peaks nüüd olema paigaldatud ja kasutamiseks häälestatud. Seejärel võib kirjutada:
%make clean
mis töökataloogist kustutab kompileeritud failid, kuna neid enam ei vajata. Kui teised (sõltuvad) paketid on süsteemi lisatud, mis lubasid programmi ära kompileerida, siis koos nendega kustutamine näeb välja:
%make clean-depends
/etc/mk.conf faili võib kasutada selleks, et
paketisüsteemi jaoks määratleda teatud muutujaid. Seda faili vaikimisi
olemas pole, aga kui on vajadus, võib seda teha. Paljude muude väärtuse seas
võib järgnevaid määratleda:
LOCALBASE=/local
Määratleb pkgsrc poolt kasutatava prefix-i, vaikimisi on
see /usr/pkg. Seda ei peaks süsteemis, mis juba pkgsrc-i
kasutab, muutma.
ACCEPTABLE_LICENSES=non-commercial-use fee-based-commercial-use
Teatab paketisüsteemile, missugused litsentsid on vastuvõetavad.
WRKOBJDIR=/usr/obj/pkg
Paketid pakitakse lahti ja ehitakse
/usr/obj/pkg kataloogis.
PACKAGES=${_PKGSRCDIR}/packages/${OS_VERSION}/${MACHINE_ARCH}
Kui kahendpaketid on tehtud, salvesta neid
OS_VERSION ja MACHINE_ARCH
spetsiifilises alamkataloogis.
USA_RESIDENT=NO
Kui ?NO?, siis mõned programmid kasutavad seda litsentsi autoriseerimise määratlemiseks. Sama ka ?YES? puhul.
USE_RSAREF2=NO
Kas või mitte RSAREF2 kasutada, vaata
security/ssh-s asuvaid näiteid.
DEPENDS_TARGET=package
Automaatselt ehitada ja salvestada sõltuvaid kahendpakette.
Samuti,
pkgsrc/mk/bsd.pkg.defaults.mk
annab pkgsrc poolt kasutatavaid vaikeväärtusi. Seda faili saab kasutada, kui
/etc/mk.conf faili juhendit - nende väärtuste määratlemine
on vajalik ainult siis, kui nende väärtus erineb vaikeväärtusest.
NetBSD turvaülema ja pakettide rühm hooldab tuntud turvaaukude nimekirja pakettidest, mis on pkgsrc-is olemas. See nimekiri on olemas FTP serveris ftp://ftp.NetBSD.org/pub/NetBSD/packages/distfiles/vulnerabilities aadressil.
Kasutades security/audit-packages paketti,
saab seda nimekirja
automaatselt allalaadida ja kõikide pakettide turvakontroll on süsteemi
paigaldatud.
security/audit-packages paketil on kaks osa.
Esimene osa on
?download-vulnerability-list?, mis on NetBSD FTP serverist
turvaaukude nimekirja allalaadimiseks. Teine on ?audit-packages?,
mis kontrollib, kas mõni pakett on turvaauguga või mitte. Kui pakett on
turvaauguga, siis võib näha järgmist väljundit:
Package samba-2.0.9 has a local-root-shell vulnerability, see http://www.samba.org/samba/whatsnew/macroexploit.html
Võib paigaldada security/audit-packages
paketi, mis iga päev laeb
turvaaugud
alla ja kaasab paketi turvakontrolli skripti ööpäevasesse turvaskripti.
Selle peensused on kirjas MESSAGE
failis, mis asub security/audit-packages kataloogis.
Paigalda pkgtools/pkglint ja kirjuta
lintpkgsrc
koos ?-i?
argumendiga selleks, et kontrollida, kas paketid on uuendatud, e.g.
%lintpkgsrc -i... Version mismatch: 'tcsh' 6.09.00 vs 6.10.00
Võib kasutada make update selleks, et uuendada süsteemi paketti ja kõik sõltuvused uuesti ehitada.
Alljärgnevalt on näidatud teised kasulikud NetBSD paketikollektsiooni käsud.
kustutab paigaldatud paketi süsteemist. Vastandtegu eelpool näidatule. Muuda vastavat töökataloogi enne kasutamist.
kustutab paketi nime järgi, hoolimata jooksvast töökataloogist.
näitab süsteemi paigaldatud pakette, kuna kõigist peetakse arvestust.
On mitmeid lisatöövahendeid, mis annavad pkgsrc süsteemile lisaomadusi. Mõned sagedamini kasutatavad on:
devel/cpuflags määrab ära parimad kompilaatori lipud, mida koodi
optimiseerimisel käesoleva protsessori ja kompilaatoriga kasutada.
pkgtools/dfdisk annab pkgsrc-le
lisafunktsionaalsuse, lubades
pakkefaile erinevatest kohtadest allalaadida. Praegu toetab järgnevaid
meetodeid: mitu CD-ROM-i ja võrgu FTP/HTTP ühendused.
pkgtools/pkglint osa, lintpkgsrc lubab
paigaldatud pakette
kontrollida vastu kohalikku pkgsrc puud, lisaks kustutada vanu kahendpakette
ja aegunuid pakkefaile.
pkgtools/pkg_chk kontrollib paigaldatud
paketide versioone
vastu kohalikku pkgsrc puud ja/või häälestusfaili, mis võib anda nimekirja
soovitud paketidest järjestatuna masinanime, arhitektuuri ja paljude
teiste erinevate parameetrite järgi.
pkgtools/pkg_comp lubab paketti
kompileerida chroot keskkonna
sees. See on näiteks kasulik paketide ehitamiseks teise NetBSD versiooni kui
paigaldatud, jaoks või silumise otstarbel.