---
title: A. Függelék - A FreeBSD beszerzése
part: V. Rész - Függelék
prev: books/handbook/partv
next: books/handbook/bibliography
showBookMenu: true
weight: 37
params:
  path: "/books/handbook/mirrors/"
---

[appendix]
[[mirrors]]
= A FreeBSD beszerzése
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: A
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/handbook/mirrors/

ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]

ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]

[[mirrors-cdrom]]
== CD és DVD kiadók

=== Kiskereskedelmi dobozos termékek

A FreeBSD beszerezhetõ számos kiskereskedõtõl dobozos termék formájában is (FreeBSD CD-k, egyéb szoftverek és nyomtatott dokumentáció):

* CompUSA +
WWW: http://www.compusa.com/

* Frys Electronics +
WWW: http://www.frys.com/

=== CD- és DVD-készletek

FreeBSD CD- és DVD-készletek rengeteg helyrõl rendelhetõek:

* FreeBSD Mall, Inc. +
700 Harvest Park Ste F +
Brentwood, CA  94513 +
Egyesült Államok +
Telefon: +1 925 240-6652 +
Fax: +1 925 674-0821 +
e-mail: <info@freebsdmall.com> +
WWW: http://www.freebsdmall.com/

* Dr. Hinner EDV +
St. Augustinus-Str. 10 +
D-81825 München +
Németország +
Telefon: (089) 428 419 +
WWW: http://www.hinner.de/linux/freebsd.html

* Ikarios +
22-24 rue Voltaire +
92000 Nanterre +
Franciaország +
WWW: http://ikarios.com/form/#freebsd

* JMC Software +
Írország +
Telefon: 353 1 6291282 +
WWW: http://www.thelinuxmall.com

* The Linux Emporium +
Hilliard House, Lester Way +
Wallingford +
OX10 9TA +
Egyesült Királyság +
Telefon: +44 1491 837010 +
Fax: +44 1491 837016 +
WWW: http://www.linuxemporium.co.uk/products/bsd/

* Linux+ DVD Magazine +
Lewartowskiego 6 +
Warsaw +
00-190 +
Lengyelország +
Telefon: +48 22 860 18 18 +
e-mail: <editors@lpmagazine.org> +
WWW: http://www.lpmagazine.org/

* Linux System Labs Australia +
21 Ray Drive +
Balwyn North +
VIC - 3104 +
Ausztrália +
Telefon: +61 3 9857 5918 +
Fax: +61 3 9857 8974 +
WWW: http://www.lsl.com.au

* LinuxCenter.Ru +
Galernaya utca, 55 +
Szentpétervár +
190000 +
Oroszország +
Telefon: +7-812-3125208 +
e-mail: <info@linuxcenter.ru> +
WWW: http://linuxcenter.ru/shop/freebsd

=== Terjesztõk

Ha viszonteladók vagyunk és szeretnénk CD-s FreeBSD termékeket forgalmazni, akkor az alábbi terjesztõk valamelyikével vegyük fel a kapcsolatot:

* Cylogistics +
809B Cuesta Dr., #2149 +
Mountain View, CA 94040 +
Egyesült Államok +
Telefon: +1 650 694-4949 +
Fax: +1 650 694-4953 +
e-mail: <sales@cylogistics.com> +
WWW: http://www.cylogistics.com/

* Ingram Micro +
1600 E. St. Andrew Place +
Santa Ana, CA  92705-4926 +
Egyesült Államok +
Telefon: 1 (800) 456-8000 +
WWW: http://www.ingrammicro.com/

* Kudzu, LLC +
7375 Washington Ave. S. +
Edina, MN 55439 +
Egyesült Államok +
Telefon: +1 952 947-0822 +
Fax: +1 952 947-0876 +
e-mail: <sales@kudzuenterprises.com>

* LinuxCenter.Kz +
Uszty-Kamenogorszk +
Kazahsztán +
Telefon: +7-705-501-6001 +
e-mail: <info@linuxcenter.kz> +
WWW: http://linuxcenter.kz/page.php?page=fr

* LinuxCenter.Ru +
Galernaya utca, 55 +
Szentpétervár +
190000 +
Oroszország +
Telefon: +7-812-3125208 +
e-mail: <info@linuxcenter.ru> +
WWW: http://linuxcenter.ru/freebsd

* Navarre Corp +
7400 49th Ave South +
New Hope, MN 55428 +
Egyesült Államok +
Telefon: +1 763 535-8333 +
Fax: +1 763 535-0341 +
WWW: http://www.navarre.com/

[[mirrors-ftp]]
== FTP oldalak

A FreeBSD hivatalos forrásai anonim FTP-n keresztül is elérhetõek különféle tükrözésekrõl. Az link:ftp://ftp.FreeBSD.org/pub/FreeBSD/[ftp://ftp.FreeBSD.org/pub/FreeBSD/] oldal ugyan jó minõségû kapcsolattal rendelkezik és rengeteg felhasználót is enged egyidejûleg kapcsolódni, azonban valószínûleg jobban járunk, ha egy "hozzánk közelebbi" tükrözést választunk (különösen abban az esetben, amikor mi magunk is egy tükrözést akarunk készíteni).

A http://mirrorlist.FreeBSD.org/[FreeBSD tükrözések adatbázisá]ban az itt megtalálhatónál sokkal pontosabb leltárt kaphatunk az elérhetõ tükrözésekrõl, mivel közvetlenül a névfeloldás segítségével állapítja meg a szükséges adatokat és nem egy rögzített listát tárol.

Emellett az alábbi tükrözésekrõl a FreeBSD elérhetõ anonim FTP-n keresztül is. Amennyiben az anonim FTP használata mellett döntenénk, igyekezzünk a hozzánk legközelebb levõ szervert használni. Az "Elsõdleges tükrözésekként" feltüntetett oldalak általában a teljes FreeBSD archívumot tartalmazzák (az összes jelenleg elérhetõ változatot az összes architektúrára), de a környékünkön vagy országunkban elhelyezkedõ tükörszerverekrõl többnyire gyorsabban tudunk majd letölteni. A regionális oldalakon gyakorta csak a népszerûbb architektúrákon futó népszerûbb változatokat találjuk meg, nem a teljes FreeBSD archívumot. Minden szerver elérhetõ anonim FTP-vel, de közülük néhány még további más módszereket is támogat. Az egyes oldalak által ismert konkrét módszereket a nevük után zárójelben közüljük.

<<central, {central}>>, <<primary, {mirrors-primary}>>, <<armenia, {mirrors-armenia}>>, <<australia, {mirrors-australia}>>, <<austria, {mirrors-austria}>>, <<brazil, {mirrors-brazil}>>, <<czech-republic, {mirrors-czech}>>, <<denmark, {mirrors-denmark}>>, <<estonia, {mirrors-estonia}>>, <<finland, {mirrors-finland}>>, <<france, {mirrors-france}>>, <<germany, {mirrors-germany}>>, <<greece, {mirrors-greece}>>, <<hong-kong, {mirrors-hongkong}>>, <<ireland, {mirrors-ireland}>>, <<japan, {mirrors-japan}>>, <<korea, {mirrors-korea}>>, <<latvia, {mirrors-latvia}>>, <<lithuania, {mirrors-lithuania}>>, <<netherlands, {mirrors-netherlands}>>, <<new-zealand, {mirrors-new-zealand}>>, <<norway, {mirrors-norway}>>, <<poland, {mirrors-poland}>>, <<russia, {mirrors-russia}>>, <<saudi-arabia, {mirrors-saudi-arabia}>>, <<slovenia, {mirrors-slovenia}>>, <<south-africa, {mirrors-south-africa}>>, <<spain, {mirrors-spain}>>, <<sweden, {mirrors-sweden}>>, <<switzerland, {mirrors-switzerland}>>, <<taiwan, {mirrors-taiwan}>>, <<ukraine, {mirrors-ukraine}>>, <<uk, {mirrors-uk}>>, <<usa, {mirrors-us}>>.

(as of UTC)

[[central]]
*{central}*

{central-ftp} (ftp / ftpv6 / {central-http} / {central-httpv6}) 

[[primary]]
*{mirrors-primary}*

In case of problems, please contact the hostmaster `<{mirrors-primary-email}>` for this domain.

* {mirrors-primary-ftp1} (ftp)
* {mirrors-primary-ftp2} (ftp)
* {mirrors-primary-ftp3} (ftp)
* {mirrors-primary-ftp4} (ftp / ftpv6 / {mirrors-primary-ftp4-http} / {mirrors-primary-ftp4-httpv6})
* {mirrors-primary-ftp5} (ftp)
* {mirrors-primary-ftp6} (ftp)
* {mirrors-primary-ftp7} (ftp)
* {mirrors-primary-ftp10} (ftp / ftpv6 / {mirrors-primary-ftp10-http} / {mirrors-primary-ftp10-httpv6})
* {mirrors-primary-ftp11} (ftp)
* {mirrors-primary-ftp13} (ftp)
* {mirrors-primary-ftp14} (ftp / {mirrors-primary-ftp14-http}) 

[[armenia]]
*{mirrors-armenia}*

In case of problems, please contact the hostmaster `<{mirrors-armenia-email}>` for this domain.

* {mirrors-armenia-ftp} (ftp / {mirrors-armenia-ftp-http} / rsync) 

[[australia]]
*{mirrors-australia}*

In case of problems, please contact the hostmaster `<{mirrors-australia-email}>` for this domain.

* {mirrors-australia-ftp} (ftp)
* {mirrors-australia-ftp2} (ftp)
* {mirrors-australia-ftp3} (ftp) 

[[austria]]
*{mirrors-austria}*

In case of problems, please contact the hostmaster `<{mirrors-austria-email}>` for this domain.

* {mirrors-austria-ftp} (ftp / ftpv6 / {mirrors-austria-ftp-http} / {mirrors-austria-ftp-httpv6}) 

[[brazil]]
*{mirrors-brazil}*

In case of problems, please contact the hostmaster `<{mirrors-brazil-email}>` for this domain.

* {mirrors-brazil-ftp2} (ftp / {mirrors-brazil-ftp2-http})
* {mirrors-brazil-ftp3} (ftp / rsync)
* {mirrors-brazil-ftp4} (ftp) 

[[czech-republic]]
*{mirrors-czech}*

In case of problems, please contact the hostmaster `<{mirrors-czech-email}>` for this domain.

* {mirrors-czech-ftp} (ftp / {mirrors-czech-ftpv6} / {mirrors-czech-ftp-http} / {mirrors-czech-ftp-httpv6} / rsync / rsyncv6)
* {mirrors-czech-ftp2} (ftp / {mirrors-czech-ftp2-http}) 

[[denmark]]
*{mirrors-denmark}*

In case of problems, please contact the hostmaster `<{mirrors-denmark-email}>` for this domain.

* {mirrors-denmark-ftp} (ftp / ftpv6 / {mirrors-denmark-ftp-http} / {mirrors-denmark-ftp-httpv6}) 

[[estonia]]
*{mirrors-estonia}*

In case of problems, please contact the hostmaster `<{mirrors-estonia-email}>` for this domain.

* {mirrors-estonia-ftp} (ftp) 

[[finland]]
*{mirrors-finland}*

In case of problems, please contact the hostmaster `<{mirrors-finland-email}>` for this domain.

* {mirrors-finland-ftp} (ftp) 

[[france]]
*{mirrors-france}*

In case of problems, please contact the hostmaster `<{mirrors-france-email}>` for this domain.

* {mirrors-france-ftp} (ftp)
* {mirrors-france-ftp1} (ftp / {mirrors-france-ftp1-http} / rsync)
* {mirrors-france-ftp3} (ftp)
* {mirrors-france-ftp5} (ftp)
* {mirrors-france-ftp6} (ftp / rsync)
* {mirrors-france-ftp7} (ftp)
* {mirrors-france-ftp8} (ftp) 

[[germany]]
*{mirrors-germany}*

In case of problems, please contact the hostmaster `<{mirrors-germany-email}>` for this domain.

* ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ (ftp)
* ftp://ftp1.de.FreeBSD.org/freebsd/ (ftp / http://www1.de.FreeBSD.org/freebsd/ / rsync://rsync3.de.FreeBSD.org/freebsd/)
* ftp://ftp2.de.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp2.de.FreeBSD.org/pub/FreeBSD/ / rsync)
* ftp://ftp4.de.FreeBSD.org/FreeBSD/ (ftp / http://ftp4.de.FreeBSD.org/pub/FreeBSD/)
* ftp://ftp5.de.FreeBSD.org/pub/FreeBSD/ (ftp)
* ftp://ftp7.de.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp7.de.FreeBSD.org/pub/FreeBSD/)

[[greece]]
*{mirrors-greece}*

In case of problems, please contact the hostmaster `<{mirrors-greece-email}>` for this domain.

* {mirrors-greece-ftp} (ftp)
* {mirrors-greece-ftp2} (ftp) 

[[hong-kong]]
*{mirrors-hongkong}*

{mirrors-hongkong-ftp} (ftp) 

[[ireland]]
*{mirrors-ireland}*

In case of problems, please contact the hostmaster `<{mirrors-ireland-email}>` for this domain.

* {mirrors-ireland-ftp} (ftp / rsync) 

[[japan]]
*{mirrors-japan}*

In case of problems, please contact the hostmaster `<{mirrors-japan-email}>` for this domain.

* {mirrors-japan-ftp} (ftp)
* {mirrors-japan-ftp2} (ftp)
* {mirrors-japan-ftp3} (ftp)
* {mirrors-japan-ftp4} (ftp)
* {mirrors-japan-ftp5} (ftp)
* {mirrors-japan-ftp6} (ftp)
* {mirrors-japan-ftp7} (ftp)
* {mirrors-japan-ftp8} (ftp)
* {mirrors-japan-ftp9} (ftp) 

[[korea]]
*{mirrors-korea}*

In case of problems, please contact the hostmaster `<{mirrors-korea-email}>` for this domain.

* {mirrors-korea-ftp} (ftp / rsync)
* {mirrors-korea-ftp2} (ftp / {mirrors-korea-ftp2-http}) 

[[latvia]]
*{mirrors-latvia}*

In case of problems, please contact the hostmaster `<{mirrors-latvia-email}>` for this domain.

* {mirrors-latvia-ftp} (ftp / {mirrors-latvia-ftp-http}) 

[[lithuania]]
*{mirrors-lithuania}*

In case of problems, please contact the hostmaster `<{mirrors-lithuania-email}>` for this domain.

* {mirrors-lithuania-ftp} (ftp / {mirrors-lithuania-ftp-http}) 

[[netherlands]]
*{mirrors-netherlands}*

In case of problems, please contact the hostmaster `<{mirrors-netherlands-email}>` for this domain.

* {mirrors-netherlands-ftp} (ftp / {mirrors-netherlands-ftp-http} / rsync)
* {mirrors-netherlands-ftp2} (ftp) 

[[new-zealand]]
*{mirrors-new-zealand}*

* {mirrors-new-zealand-ftp} (ftp / {mirrors-new-zealand-ftp-http}) 

[[norway]]
*{mirrors-norway}*

In case of problems, please contact the hostmaster `<{mirrors-norway-email}>` for this domain.

* {mirrors-norway-ftp} (ftp / rsync) 

[[poland]]
*{mirrors-poland}*

In case of problems, please contact the hostmaster `<{mirrors-poland-email}>` for this domain.

* {mirrors-poland-ftp} (ftp)
* ftp2.pl.FreeBSD.org

[[russia]]
*{mirrors-russia}*

In case of problems, please contact the hostmaster `<{mirrors-russia-email}>` for this domain.

* {mirrors-russia-ftp} (ftp / {mirrors-russia-ftp-http} / rsync)
* {mirrors-russia-ftp2} (ftp / {mirrors-russia-ftp2-http} / rsync)
* {mirrors-russia-ftp5} (ftp / {mirrors-russia-ftp5-http} / rsync)
* {mirrors-russia-ftp6} (ftp) 

[[saudi-arabia]]
*{mirrors-saudi-arabia}*

In case of problems, please contact the hostmaster `<{mirrors-saudi-arabia-email}>` for this domain.

* {mirrors-saudi-arabia-ftp} (ftp) 

[[slovenia]]
*{mirrors-slovenia}*

In case of problems, please contact the hostmaster `<{mirrors-slovenia-email}>` for this domain.

* {mirrors-slovenia-ftp} (ftp) 

[[south-africa]]
*{mirrors-south-africa}*

In case of problems, please contact the hostmaster `<{mirrors-south-africa-email}>` for this domain.

* {mirrors-south-africa-ftp} (ftp)
* {mirrors-south-africa-ftp2} (ftp)
* {mirrors-south-africa-ftp4} (ftp) 

[[spain]]
*{mirrors-spain}*

In case of problems, please contact the hostmaster `<{mirrors-spain-email}>` for this domain.

* {mirrors-spain-ftp} (ftp / {mirrors-spain-ftp-http})
* {mirrors-spain-ftp3} (ftp) 

[[sweden]]
*{mirrors-sweden}*

In case of problems, please contact the hostmaster `<{mirrors-sweden-email}>` for this domain.

* {mirrors-sweden-ftp} (ftp)
* {mirrors-sweden-ftp2} (ftp / {mirrors-sweden-ftp2-rsync})
* {mirrors-sweden-ftp3} (ftp)
* {mirrors-sweden-ftp4} (ftp / {mirrors-sweden-ftp4v6} / {mirrors-sweden-ftp4-http} / {mirrors-sweden-ftp4-httpv6} / {mirrors-sweden-ftp4-rsync} / {mirrors-sweden-ftp4-rsyncv6})
* {mirrors-sweden-ftp6} (ftp / {mirrors-sweden-ftp6-http}) 

[[switzerland]]
*{mirrors-switzerland}*

In case of problems, please contact the hostmaster `<{mirrors-switzerland-email}>` for this domain.

* {mirrors-switzerland-ftp} (ftp / {mirrors-switzerland-ftp-http}) 

[[taiwan]]
*{mirrors-taiwan}*

In case of problems, please contact the hostmaster `<{mirrors-taiwan-email}>` for this domain.

* {mirrors-taiwan-ftp} (ftp / {mirrors-taiwan-ftpv6} / rsync / rsyncv6)
* {mirrors-taiwan-ftp2} (ftp / {mirrors-taiwan-ftp2v6} / {mirrors-taiwan-ftp2-http} / {mirrors-taiwan-ftp2-httpv6} / rsync / rsyncv6)
* {mirrors-taiwan-ftp4} (ftp)
* {mirrors-taiwan-ftp5} (ftp)
* {mirrors-taiwan-ftp6} (ftp / {mirrors-taiwan-ftp6v6} / rsync)
* {mirrors-taiwan-ftp7} (ftp)
* {mirrors-taiwan-ftp8} (ftp)
* {mirrors-taiwan-ftp11} (ftp / {mirrors-taiwan-ftp11-http})
* {mirrors-taiwan-ftp12} (ftp)
* {mirrors-taiwan-ftp13} (ftp)
* {mirrors-taiwan-ftp14} (ftp)
* {mirrors-taiwan-ftp15} (ftp) 

[[ukraine]]
*{mirrors-ukraine}*

* {mirrors-ukraine-ftp} (ftp / {mirrors-ukraine-ftp-http})
* {mirrors-ukraine-ftp6} (ftp / {mirrors-ukraine-ftp6-http} / {mirrors-ukraine-ftp6-rsync})
* {mirrors-ukraine-ftp7} (ftp) 

[[uk]]
*{mirrors-uk}*

In case of problems, please contact the hostmaster `<{mirrors-uk-email}>` for this domain.

* {mirrors-uk-ftp} (ftp)
* {mirrors-uk-ftp2} (ftp / {mirrors-uk-ftp2-rsync})
* {mirrors-uk-ftp3} (ftp)
* {mirrors-uk-ftp4} (ftp)
* {mirrors-uk-ftp5} (ftp) 

[[usa]]
*{mirrors-us}*

In case of problems, please contact the hostmaster `<{mirrors-us-email}>` for this domain.

* {mirrors-us-ftp} (ftp)
* {mirrors-us-ftp2} (ftp)
* {mirrors-us-ftp3} (ftp)
* {mirrors-us-ftp4} (ftp / ftpv6 / {mirrors-us-ftp4-http} / {mirrors-us-ftp4-httpv6})
* {mirrors-us-ftp5} (ftp)
* {mirrors-us-ftp6} (ftp)
* {mirrors-us-ftp8} (ftp)
* {mirrors-us-ftp10} (ftp)
* {mirrors-us-ftp11} (ftp)
* {mirrors-us-ftp13} (ftp / {mirrors-us-ftp13-http} / rsync)
* {mirrors-us-ftp14} (ftp / {mirrors-us-ftp14-http})
* {mirrors-us-ftp15} (ftp) 

[[anoncvs]]
== Anonim CVS

[[anoncvs-intro]]
=== Bevezetés

Az anonim CVS (vagy más néven _anoncvs_) a FreeBSD-hez mellékelt CVS-es segédprogramok által nyújtott olyan lehetõség, amivel távoli CVS repositorykkal tudunk szinkronizálni. Több más dolog mellett lehetõvé teszi a FreeBSD felhasználói számára, hogy kiemelt jogosultságok nélkül képesek legyenek olvasással kapcsolatos CVS mûveleteket végrehajtani a FreeBSD Projekt hivatalos anoncvs szerverein. A használatához egyszerûen csak a kiválasztott anoncvs szervert kell beállítani a `CVSROOT` környezeti változó értékének, ahol aztán a `cvs login` parancsnak a szerver által ismert "anoncvs" jelszót kell megadni. Ezután a man:cvs[1] paranccsal a többi CVS szerverhez hasonlóan lehetõségünk nyílik hozzáférni.

[NOTE]
====
A `cvs login` parancs a bejelentkezésekhez szükséges jelszavakat a `HOME` könyvtárunkban levõ [.filename]#.cvspass# állományban tárolja. Ha ez az állomány nem létezik, akkor a `cvs login` elsõ használatakor hibát kapunk. Ilyenkor csak hozzunk létre egy üres [.filename]#.cvspass# állományt, majd próbálkozzunk újra.
====

Habár azt mondhatnánk, hogy a <<cvsup,CVSup>> és az _anoncvs_ lényegében egyazon feladatot oldják meg, mind a két esetben léteznek olyan kompromisszumok, amelyek befolyásolhatják a felhasználó választását a két szinkronizációs módszer között. Dióhéjban ezt úgy tudnánk összefoglalni, hogy a CVSup a hálózati erõforrásokat hatékonyabban kihasználja és kettejük közül ez a fejlettebb, azonban ennek meg kell fizetnünk az árát. A CVSup használatához elõször ugyanis telepítenünk kell és be kell állítanunk egy speciális klienst, illetve az adatokat a CVSup által _gyûjteményeknek_ (collection) nevezett, viszonylag nagy méretû egyeségekben érhetjük el.

Ezzel szemben az anoncvs használata során a megfelelõ CVS modul nevének felhasználásával tetszõlegesen megvizsgálhatunk önálló állományokat vagy akár programokat (mint az `ls` vagy a `grep`). Természetesen az anoncvs segítségével csupán az olvasást igénylõ CVS mûveleteket végezhetjük el, ezért ha a FreeBSD Projekt keretein belül fejleszteni is szeretnénk, akkor inkább érdemes a CVSup alkalmazást választani.

[[anoncvs-usage]]
=== Az anonim CVS használata

A man:cvs[1] parancsot nagyon könnyû beállítani az anonim CVS repositoryk használatához, hiszen mindössze annyit kell tennünk, hogy a `CVSROOT` környezeti változó értékének megadjuk a FreeBSD Projekt valamelyik _anoncvs_ szerverét. Ezen sorok írásának pillanatában a következõ szerverek érhetõek el:

* _Franciaország_: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver módban a jelszó "anoncvs", az SSH pedig nincs jelszó)
* _Tajvan_: :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs (pserver módban a `cvs login` használatával tetszõleges jelszó megadható, az SSH esetén pedig nincs jelszó)
+
[.programlisting]
....
SSH2 HostKey: 1024 02:ed:1b:17:d6:97:2b:58:5e:5c:e2:da:3b:89:88:26 /etc/ssh/ssh_host_rsa_key.pub
SSH2 HostKey: 1024 e8:3b:29:7b:ca:9f:ac:e9:45:cb:c8:17:ae:9b:eb:55 /etc/ssh/ssh_host_dsa_key.pub
....

* _Egyesült Államok_: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (csak SSH v2 - nincs jelszó)
+
[.programlisting]
....
SSH2 HostKey: 2048 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62 /etc/ssh/ssh_host_dsa_key.pub
....

Mivel a CVS használatával "kikérhetjük" (check out) tulajdonképpen a FreeBSD forrásainak akármelyik eddigi (vagy majd ezután keletkezõ) változatát, érdemes megismerkednünk a man:cvs[1] által alkalmazott revízió (revision) (az `-r` opcióval állítható) fogalmával és a FreeBSD Projekt repositoryjain belül engedélyezett értékeivel.

Címkéket (tag) két esetben használhatunk: a revíziók és az ágak esetén. A revíziós címkék mindig egy adott revízióra hivatkoznak, ami állandóan ugyanazt jelenti. Ezzel szemben az ágak címkéi a fejlesztés adott irányú menetének az adott pillanatban legfrissebb revízióját hivatkozzák. Mivel az ágak címkéi nem egy adott revízióra vonatkoznak, ezért elmondhatjuk róluk, hogy naponta változik a jelentésük.

Az <<cvs-tags>> tartalmazza a felhasználók számára fontos revíziós címkéket. Ezek azonban nem igazak a Portgyûjteményre, mivel a Portgyûjteménynek nincs egyszerre több fejlesztési iránya.

Egy ág címkéjének megadásával általában az adott irányhoz tartozó állományok legfrissebb változatát kapjuk meg. Ha viszont az állományok egy korábbi változatára lenne szükségünk, akkor a `-D dátum` opció megadásával meg tudjuk adni annak idõpontját. Errõl részletesebben a man:cvs[1] man oldalán olvashatunk.

=== Példák

Habár a továbbhaladáshoz mindenképpen javasoljuk a man:cvs[1] man oldalának részletes áttanulmányozását, mutatunk néhány gyors példát az anonim CVS használatának tömör illusztrálására:

.Valami (az man:ls[1]) kikérése a -CURRENT ágból
[example]
====

[source,shell]
....
% setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
% cvs login
"Jelszóként" ezután bármit megadhatunk.
% cvs co ls
....

====

.Az [.filename]#src/# fa kikérése SSH-n keresztül
[example]
====

[source,shell]
....
% cvs -d anoncvs@anoncvs1.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs1.freebsd.org (216.87.78.137)' can't be established.
DSA key fingerprint is 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs1.freebsd.org' (DSA) to the list of known hosts.
....

====

.Az man:ls[1] 6-STABLE ágban szereplõ változatának kikérése
[example]
====

[source,shell]
....
% setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
% cvs login
Amikor kéri,  "jelszóként" bármit megadhatunk.
% cvs co -rRELENG_6 ls
....

====

.Az man:ls[1] változásainak (Unified Diff formátumú) listázása
[example]
====

[source,shell]
....
% setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
% cvs login
Itt "jelszóként" bármit megadhatunk.
% cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
....

====

.A használható modulok nevének kiderítése
[example]
====

[source,shell]
....
% setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
% cvs login
Ezután  "jelszóként" bármit megadhatunk.
% cvs co modules
% more modules/modules
....

====

=== Egyéb helyek

A következõ helyeken találhatunk még hasznos információkat a CVS használatáról:

* http://users.csc.calpoly.edu/~gfisher/classes/308/handouts/cvs-basics.html[A CVS bemutatása] (forrás: Kaliforna Állami Mûszaki Egyetem).
* http://ximbiot.com/cvs/wiki/[A CVS honlapja], a CVS fejlesztésével és alkalmazásával foglalkozó közösség oldala.
* A http://www.FreeBSD.org/cgi/cvsweb.cgi[CVSweb] a FreeBSD Projekt által használt CVS rendszerének webes felülete.

[[ctm]]
== A CTM használata

A CTM használatáva a távoli könyvtárakat tudunk egy központi változattal szinkronban tartani. Eredetileg a FreeBSD forrásaihoz fejlesztették ki, de idõvel mások más célokra is alkalmasnak találhatják majd. Az eltérések (delták) feldolgozásával kapcsolatban kevéske dokumentáció áll rendelkezésre, ezért a link:{ctm-users-url}[ctm-users-desc] levelezési listát érdemes felkeresni, ha többet szeretnénk megtudni a CTM egyéb célú alkalmazásairól.

=== Miért használnánk a CTM-et?

A CTM segítségével a FreeBSD forrásainak helyi másolatát hozhatjuk létre. A források több különbözõ "kivitelben" is hozzáférhetõek. A CTM minden esetben képes eleget tenni az igényeinknek, akár az egész CVS fát, akár annak egy részét kívánjuk csak figyelemmel követni. Ha netalán FreeBSD fejlesztõk lennénk, és híján vagyunk vagy éppen gyenge TCP/IP kapcsolattal rendelkezünk, esetleg egyszerûen csak automatikusan értesülni szeretnénk a változásokról, a CTM-et nekünk találták ki. A leggyorsabban fejlõdõ ágakból is naponta legfeljebb három deltát fogunk kapni, azonban érdemes megfontolni a változások automatikus elküldését levélben. A szükséges frissítések méretét mindig igyekszünk minimalizálni. Ez egyébként általában alig 5 KB, de néha (tízbõl egyszer) elõfordul, hogy 10 és 50 KB között van, és idõnként 100 KB vagy afeletti mennyiségû frissítés is érkezhet.

Amikor a fejlesztõk által használt forrásokat töltjük le, magunknak kell gondoskodnunk a menet közben felmerülõ különbözõ problémák megoldásáról. Ez kiváltképp igaz abban az esetben, amikor az aktuális, vagy hivatalos nevén "CURRENT" ágat követjük. Mielõtt azonban egy ilyenbe belevágnánk, érdemes fellapozni a crossref:cutting-edge[current,FreeBSD legfrissebb változatának használatáról] szóló fejezetet.

=== Mire van szükségünk a CTM használatához?

A mûködéshez két komponens szükségeltetik: a CTM kliensprogramja és hozzá a kezdeti delták (amivel majd letöltjük a "CURRENT" forrásait).

A CTM program már a 2.0 kiadástól kezdve a FreeBSD része, és a források között a [.filename]#/usr/src/usr.sbin/ctm# könyvtárban találjuk meg (amennyiben felraktuk).

A CTM mûködéséhez kellõ "deltákat" két módon, FTP-n vagy e-mailen keresztül szerezhetjük be. Ha el tudunk érni interneten levõ FTP oldalakat, akkor az alábbi FTP helyeken találunk a CTM-hez használható adatokat:

link:ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/[ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/]

valamint lásd a <<mirrors-ctm,tükrözéseket>>.

FTP-n keresztül lépjünk be a könyvtárba, töltsük le a [.filename]#README# nevû állományt és kövessük a benne szereplõ utasításokat.

Ha viszont e-mailen keresztül akarjuk megszerezni a deltákat:

Iratkozzunk fel a CTM terjesztési listáinak egyikére. A link:{ctm-cvs-cur-url}[ctm-cvs-cur-desc] lista az egész CVS-fát, míg a link:{ctm-src-cur-url}[ctm-src-cur-desc] a fõ fejlesztési ágat teszi elérhetõvé. A {ctm-src-4} a 4.X kiadásaihoz ágakat tartalmazza, és így tovább. (Ha nem tudjuk, hogyan kell feliratkozni egy levelezési listára, akkor kattintsunk a lista nevére vagy kövessük a {mailing-lists-url} linket, majd kattintsunk arra a listára, ahova fel akarunk iratkozni. Ezen az oldalon az összes, a feliratkozáshoz nélkülözhetetlen információnak szerepelnie kell.)

Miután elkezdenek megérkezni a CTM-frissítéseket tartalmazó levelek, a tartalmukat a `ctm_rmail` programmal tudjuk kicsomagolni és felhasználni. Az [.filename]#/etc/aliases# állományba akár közvetlenül is beírhatjuk a `ctm_rmail` programot, és ezzel a önállósítani tudjuk a levélben érkezõ frissítések feldolgozását. A `ctm_rmail` man oldalán olvashatjuk ennek részleteit.

[NOTE]
====
Nem számít, milyen módon jutunk hozzá a CTM által használt deltákhoz, minden esetben fel kell iratkoznunk a link:{ctm-announce-url}[ctm-announce-desc] levelezési listára. Az elkövetkezendõkben ez lesz az egyetlen hely, ahová a CTM rendszer mûködtetésével kapcsolatos bejelentések beküldésre kerülnek. A feliratkozáshoz kattinsunk a fenti lista nevére és kövessük a mellette szereplõ utasításokat.
====

=== A CTM elsõ használata

Mielõtt nekilátnánk a CTM-hez tartozó delták használatának, elõször el kell jutnunk egy kiindulási ponthoz, ahonnan majd létre tudjuk hozni a rákövetkezõ deltákat.

Ehhez elsõként vegyük számba, pontosan mink is van. Általában mindenki egy "üres" könyvtárral kezd. Ilyenkor egy kezdeti "Empty" (mint "üres") elnevezésû deltával tudjuk megkezdeni az CTM által ismert fa szinkronizálását. Erre a célra lesznek majd szintén alkalmasak a "megkezdett" delták is, amelyek valamikor a CD-re fognak felkerülni.

Mivel a fák maguk több tíz megabyte-nyi méretûek, ezért érdemes inkább valami kéznél levõ eszközzel megkezdeni a folyamatot. Ha van -RELEASE verziójú CD-nk, akkor másoljuk le róla és bontsuk ki a kiindulásként használt forrásokat. Ezzel jelentõs mennyiségû adat átvitelét takaríthatjuk meg.

A "kezdõ" deltákat könnyen megismerjük a szám után `X` karakterrel leválasztott nevükrõl (például [.filename]#src-cur.3210XEmpty.gz#). Az `X` után szereplõ megnevezés a kezdeti "kiindulás" (seed) fokának felel meg. Az [.filename]#Empty# egy üres könyvtárra utal. A szabályok szerint az `Empty` állapotból 100 deltánként jön létre újabb (kiindulásra alkalmas) alapváltozat. Ezek azonban nagyon nagyok is lehetnek. A 70 vagy 80 megabyte-os ``gzip``pel csomagolt adatok gyakoriak az [.filename]#XEmpty# delták esetén.

Miután kiválasztottuk a számunkra megfelelõ alapváltozatot, szükségünk lesz a tõle nagyobb sorszámú összes deltára is.

=== A CTM használata a hétköznapokban

A delták felhasználásához egyszerûen csak ennyit kell tennünk:

[source,shell]
....
# cd /ahol/tárolni/akarjuk/az/adatokat
# ctm -v -v /ahol/tároljuk/a/deltákat/src-xxx.*
....

A CTM képes értelmezni a `gzip` által csomagolt adatokat, ezért nincs szükség a delták elõzetes kitömörítésére, amivel tárhelyet tudunk spórolni.

Hacsak nem tekinti tökéletesen biztonságosnak az egész folyamatot, akkor a CTM nem fog módosítani a fán. A deltákat a CTM `-c` kapcsolójával is ellenõrizhetjük, aminek során egyáltalán nem fog módosulni a forrásfa. Ekkor egyszerûen csak ellenõrzi a delták sértetlenségét és megnézi, hogy minden rendben zajlana-e az alkalmazásuk során.

A CTM-nek vannak még további kapcsolói is, melyekrõl bõvebben a man oldalakból és a forráskódokból tájékozódhatunk.

Most már minden megvan, ami kellhet. Amikor kapunk egy újabb deltát, a forrásaink frissítéséhez csak futtassuk át a CTM-en.

Ne töröljük le azokat a deltákat, melyeket nehezen tudtunk letölteni. Helyette érdemes inkább megtartani ezeket arra az esetre, ha valami rossz történne. Még ha csak floppylemezek is állnak rendelkezésünkre, mindenképpen másoljuk le ezeket az `fdwrite` paranccsal.

=== A saját változtatásaink megtartása

Fejlesztõként biztosan szeretnénk kísérletezni és állományokat megváltoztatni a forrásfában. A CTM a helyben elkövetett változtatásokat csak korlátozottan támogatja: az [.filename]#ize# nevû állomány meglétének vizsgálata elõtt az [.filename]#ize.ctm# állományt fogja keresni. Ha létezik, akkor a CTM az [.filename]#ize# helyett ezen fog dolgozni.

Ezzel a viselkedéssel nyerjük a saját változtatásaink megtartásának egyszerû módját: csak másoljuk le [.filename]#.ctm# kiterjesztéssel a módosítani tervezett állományokat. Ezután már szabadon módosíthatjuk a forrásokat, miközben a CTM a [.filename]#.ctm# kiterjesztésû állományokat folyamatosan szinkronban tartja.

=== A CTM egyéb érdekes beállításai

==== Derítsük ki pontosan miket is fog érinteni a frissítés

A CTM által a forrásokon elvégzendõ változtatások listáját az `-l` kapcsolóval kérdezhetjük le.

Ez akkor esik kézre, ha szeretnénk feljegyezni a bekövetkezõ változásokat, vagy bármilyen módon elõ- vagy utófeldolgozni a módosított állományokat, esetleg szimplán elõvigyázatosak akarunk lenni.

==== Biztonsági másolat készítése a frissítés elõtt

Néha egyszerûen csak szeretnénk az összes érintett állományról biztonsági másolatot készíteni a CTM által elvégzett frissítés elõtt.

A `-B _mentés-állomány_` beállítás megadásával az adott CTM delta által módosítandó összes állomány tárolásra kerül a _mentés-állomány_ nevû állományba.

==== A frissíthetõ állományok korlátozása

Egyes esetekben érdekünkben állhat leszûkíteni a CTM által eszközölt frissítések hatáskörét, vagy egyszerûen csak néhány állomány szinkronizálására van szükségünk.

A CTM számára feldolgozható állományok listáját reguláris kifejezés formájában az `-e` és `-x` opciók mentén határozhatjuk meg.

Például ha a [.filename]#lib/libc/Makefile# állomány az összegyûjtött CTM delták szerinti legfrissebb verziójához kívánunk hozzájutni, akkor futtassuk az alábbi parancsot:

[source,shell]
....
# cd /akarhova/ahova/ki/akarjuk/bontani/
# ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
....

A CTM deltákban megadott minden egyes állomány esetén az `-e` az `-x` opciók a parancssorban történt megadásuk sorrendjében kerülnek feldolgozásra. Egy állományt kizárólag csak akkor dolgoz fel a CTM, ha az az `-e` és `-x` opciók kiértékelése után is indokolt.

=== További tervek a CTM-mel kapcsolatban

Rengeteg van:

* Valamiféle hitelesítés bevezetése a CTM rendszerbe, amivel észlelhetõek a meghamisított CTM-frissítések.
* A CTM beállításainak letisztázása, mivel eléggé megtévesztõek és nehézkesen használhatóak.

=== Egyebek

Léteznek delták a `portok` gyûjteményéhez is, azonban még nem mutatkozott túlzottan nagy érdeklõdés irántuk.

[[mirrors-ctm]]
=== CTM tükrözések

A <<ctm,CTM>>/FreeBSD anonim FTP-n keresztül elérhetõ az alábbi tüköroldalak valamelyikérõl. Amennyiben ezen a módon kívánjuk letölteni a CTM rendszerhez tartozó állományokat, elõször próbálkozzunk a hozzánk legközelebb levõ szerverrel.

Ha bármilyen gond merülne fel, értesítsük a link:{ctm-users-url}[ctm-users-desc] levelezési listát.

Kalifornia, Bay Area (hivatalos forrás)::

** link:ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CTM/[ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CTM/]

Dél-Afrika (a korábbi delták biztonsági másolatai)::

** link:ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/[ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/]

Tajvan/R.O.C.::

** link:ftp://ctm.tw.FreeBSD.org/pub/FreeBSD/development/CTM/[ftp://ctm.tw.FreeBSD.org/pub/FreeBSD/development/CTM/]
** link:ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/development/CTM/[ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/development/CTM/]
** link:ftp://ctm3.tw.FreeBSD.org/pub/FreeBSD/development/CTM/[ftp://ctm3.tw.FreeBSD.org/pub/FreeBSD/development/CTM/]

Ha nem találtunk volna hozzánk közel esõ tükrözést, vagy ha talált tükör nem elég friss, akkor próbálkozzunk egy olyan keresõmotor használatával, mint például az http://www.alltheweb.com/[alltheweb].

[[cvsup]]
== A CVSup használata

[[cvsup-intro]]
=== Bevezetés

A CVSup távoli szervereken található központi repositorykban levõ forrásfák terjesztésére és a rajtuk keresztüli frissítésre alkalmas programcsomag. A FreeBSD forrásait egy CVS repositoryban tartják karban Kaliforniában egy fejlesztéseket tároló központi számítógépen. A CVSup segítségével a FreeBSD felhasználói könnyen szinkronban tudják vele tartani a saját forrásaikat.

A CVSup az ún. _lehúzással_ frissít. Ilyenkor a kliensek csak akkor kérnek a szervertõl frissítéseket, amikor szükségük van rá, miközben a szerver passzívan várja a frissítési kérelmeket. Ennek megfelelõen tehát minden esetben a kliens kezdeményezi a frissítést, a szerver pedig önmagától sosem küld ilyeneket kéretlenül. A felhasználóknak így vagy maguknak kell meghívniuk a CVSup kliensét, vagy a frissítések rendszeres automatikus letöltéséhez be kell állítaniuk a `cron` rendszerprogramot.

A CVSup kifejezés ebben az írásmódban az egész programcsomagra utal. Fõ alkotórészei a a felhasználó gépén futó `cvsup` nevû kliens, és a FreeBSD tüköroldalain futó `cvsupd` nevû szerver.

A FreeBSD dokumentációjának és levelezési listáinak fürkészése során rengeteg hivatkozást találhatunk egy sup nevû alkalmazásra. A sup a CVSup elõdje volt, és hasonló célokat szolgált. A CVSup használat tekintetében nagyon hasonlít a sup-hoz, és ami azt illeti, a a `sup` konfigurációs állományaival visszafele kompatibilis formátumot használ. Mivel a CVSup sokkal gyorsabb és rugalmasabb, a supot már nem használja a FreeBSD Projekt.

[NOTE]
====
A csup a CVSup C nyelven újraírt változata. Legnagyobb elõnye, hogy gyorsabb és nincs szüksége a Modula-3 nyelv futtató környezetére, ezért azt nem kell a használatához telepíteni. Ráadásul, ha a FreeBSD 6.2 vagy annál késõbbi változatát használjuk, akkor minden további nélkül a rendelkezésünkre áll, hiszen az alaprendszer része. A FreeBSD korábbi verzióinak alaprendszerei ugyan nem tartalmazzák a man:csup[1] parancsot, viszont a package:net/csup[] port vagy csomag segítségével pillanatok alatt telepíteni tudjuk. Amennyiben a csup mellett tennénk le a voksunkat, a szakasz fennmaradó részében egyszerûen hagyjuk ki a CVSup telepítésérõl szóló lépéseket és a CVSup hivatkozásait helyettesítsük a csup programmal.
====

[[cvsup-install]]
=== Telepítés

A CVSup telepítésének legegyszerûbb módja a FreeBSD crossref:ports[ports,csomaggyûjteményében] található elõrefordított package:net/cvsup[] csomag használata. Ha viszont inkább forrásból akarjuk telepíteni a CVSupot, akkor helyette használjuk a package:net/cvsup[] portot. De legyünk elõvigyázatosak: a package:net/cvsup[] portnak szüksége van a Modula-3 rendszerre, aminek letöltése és lefordítása pedig meglehetõsen sok idõt és tárhelyet igényel.

[NOTE]
====
Ha olyan gépen akarjuk használni a CVSupot, ahol nincs XFree86(TM), Xorg vagy bármilyen más ilyen szerver, akkor használjuk a package:net/cvsup-without-gui[] portot, ami nem tartalmazza a hozzá tartozó grafikus felületet.
====

Ha a FreeBSD 6.1 vagy korábbi változatain szeretnénk telepíteni a csupot, használjuk a FreeBSD crossref:ports[ports,csomaggyûjteményében] megtalálható package:net/csup[] csomagot. Ha viszont forrásból kívánjuk telepíteni a csup programot, akkor helyette használjuk a package:net/csup[] portot.

[[cvsup-config]]
=== A CVSup beállítása

A CVSup mûködését a [.filename]#supfile# elnevezésû állomány vezérli. A link:file://localhost/usr/shared/examples/cvsup/[ /usr/shared/examples/cvsup/] könyvárban találhatunk néhány példát a [.filename]#supfile# állományokra.

A [.filename]#supfile# állományban szereplõ információk a CVSup használatával kapcsolatban a következõ kérdéseket válaszolják meg:

* <<cvsup-config-files,Milyen állományokat akarunk letölteni?>>
* <<cvsup-config-vers,Milyen verzióikra van szükségünk?>>
* <<cvsup-config-where,Honnan akarjuk ezeket beszerezni?>>
* <<cvsup-config-dest,Hova akarjuk rakni a számítógépünkön?>>
* <<cvsup-config-status,Hova akarjuk rakni az állapotot tároló állományokat?>>

Az imént feltett kérdésekre a következõ szakaszokban összeállítandó [.filename]#supfile# segítségével fogunk válaszolni. Ehhez elõször bemutatjuk a [.filename]#supfile# formátumú állományok általános szerkezetét.

A [.filename]#supfile# állományok szöveget tartalmaznak. A megjegyzések `#` karakterrel kezdõdnek és a sor végéig tartanak. A kizárólag csak megjegyzéseket tartalmazó vagy üres sorok nem kerülnek feldolgozásra.

Az összes többi fennmaradó sorban pedig azokat az állományokat írjuk le, amelyeket a felhasználó le akar tölteni. Az ilyen fajtájú sorok egy "gyûjtemény" (collection) nevével kezdõdnek, ami állományok egy szerver által meghatározott logikai csoportjára utal. A gyûjtemény neve ennek megfelelõen elárulja a szervernek, hogy pontosan milyen állományokra van szükségünk. Ezután következik whitespace-szel elválasztva nulla vagy több mezõ, amelyek a korábban feltett kérdéseinket válaszolják meg rendre. Ezeknek a mezõknek két típusa létezik: a beállításokat és a konkrét értéket tároló mezõk. A beállításokat tároló mezõk különbözõ kulcsszavakat tartalmaznak, például a `delete` (törlés) vagy `compress` (tömörítés). Az értéket tároló mezõk is egy kulcsszóval kezdõdnek, azonban utána közvetlenül egy `=` (egyenlõségjel) jön, amelyet egy második szó követ szorosan. Így például a `release=cvs` pontosan egy ilyen értékmezõ lesz.

Egy [.filename]#supfile# általában egynél több gyûjtemény letöltését írja le. Ezért az ilyen állományok felépítésének egyik módja, ha az egyes gyûjteményhez explicite megadjuk a hozzá tartozó mezõket. Azonban így a [.filename]#supfile# állományok gyorsan megnövekednek és kényelmetlenné válnak, mivel a legtöbb gyûjtemény esetén szinte ugyanazokat a mezõket kellene megadnunk. A CVSup az ilyen típusú bonyodalmak elkerülésére egy alapértelmezési megoldást javasol. A `*default` nevû álgyûjteménnyel kezdõdõ sorok segítségével meg tudunk adni olyan beállításokat és értékeket, amelyek az utána következõ gyûjtemények számára alapértelmezésnek fognak számítani a [.filename]#supfile# állományban. Az itt megadott alapértelmezések természetesen az egyes gyûjteményekben tetszõleges módon felülbírálhatóak, a mezõk magán a gyûjteményen belüli megadásával. Az állományban az alapértelmezések is megváltoztathatóak vagy bõvíthetõek további `*default` sorok hozzáadásával.

Mindezek tudatában most már megkezdhetjük a crossref:cutting-edge[current,FreeBSD-CURRENT] ág tartalmának letöltésére és frissen tartására alkalmas [.filename]#supfile# állomány összeállítását.

* [[cvsup-config-files]]Milyen állományokat akarunk letölteni?
+ 
A CVSupon keresztül elérhetõ állományok "gyûjteményeknek" hívott nevesített csoportokra bontva érhetõek el. A hivatkozható gyûjtemények leírását a <<cvsup-collec,következõ szakaszban>> találjuk. Ebben a példában most szeretnénk letölteni az egész FreeBSD rendszer forrását. Ezt a `src-all` nevû gyûjteményre hivatkozva érhetjük el. A [.filename]#supfile# állományunk létrehozásának elsõ lépéseként soronként egyet megadva felsoroljuk a letölteni kívánt gyûjteményeket (jelen esetünkben csak egyetlen egyet):
+
[.programlisting]
....
src-all
....
+
* [[cvsup-config-vers]]Milyen verzióikra van szükségünk?
+ 
A CVSup használatával tulajdonképpen a források összes valaha létezett verziójához hozzá tudunk férni. Ez annak köszönhetõ, hogy a cvsupd szerver közvetlenül a CVS repositoryból dolgozik, ami pedig az összes verziót tartalmazza. A `tag=` és `date=` értékmezõk segítségével adhatjuk meg az igényelt verziókat.
+
[WARNING]
====

Legyünk óvatosak azonban a `tag=` mezõk helyes megadásával. Egyes címkék ugyanis csak bizonyos állománygyûjtemények esetén élnek. Ha hibás vagy elírt címkét adunk meg, akkor a CVSup törölni fog olyan állományokat, amelyeket valószínûleg nem kellene. A `ports-*` gyûjtemények esetében pedig kifejezetten _csak_ a `tag=.` mezõk használhatóak!
====
+ 
A `tag=` mezõk a tárházban található szimbolikus címkéket nevezik meg. A címkéknek két típusa van: a revíziókhoz és az ágakhoz tartozó címkék. A revíziós címkék mindig egy adott revíziót hivatkoznak, jelentésük állandó. Ezzel szemben az ágak címkéi egy adott fejlesztési ág adott idõpontjában elérhetõ revíziót címkézi. Mivel az ágak címkéi nem egy konkrét revízióra vonatkoznak, ezért akár olyanra is utalhatnak, ami pillanatnyilag még nem is létezik.
+ 
Az <<cvs-tags>>ban megtalálhatjuk a fontosabb ágak címkéit. A CVSup konfigurációs állományában a címkéket a `tag=` elõtaggal kell bevezetni (így tehát a `RELENG_4` címke hivatkozása `tag=RELENG_4` lesz). Ne felejtsük el, hogy a Portgyûjtemény esetében csak `tag=.` mezõ megadásának van értelme.
+
[WARNING]
====

Igyekezzünk pontosan lemásolni a címkék neveit, mivel a CVSup nem képes megkülönböztetni az érvényes és az érvénytelen címkéket. Ha véletlen elírjuk a címkét, akkor a CVSup úgy fog viselkedni, mintha olyan érvényes címkére hivatkozhatunk volna, amihez nem tartoznak állományok. Ennek következtében pedig egyszerûen letörli a már meglevõ forrásainkat.
====
+ 
Egy ág címkéjének megadása során általában az adott fejlesztési vonal legfrissebb verzióját kapjuk meg. Ha viszont az adott ág valamelyik korábbi változatára lenne szükségünk, akkor a `date=` értékmezõ felhasználásával meg tudjuk adni a hozzá tartozó dátumot. Ennek mûködésérõl a man:cvsup[1] man oldala részletesebben értekezik.
+ 
A példában mi most a FreeBSD-CURRENT verziót akarjuk letölteni. Ezért a következõ sort tesszük a [.filename]#supfile# állományunk elejére:
+
[.programlisting]
....
*default tag=.
....
+ 
Ha nem adunk meg sem `tag=`, sem pedig `date=` mezõket, akkor egy fontos eset következik be. Ilyenkor ugyanis egy konkrét verzió helyett közvetlenül a szerver CVS repositoryjából kapjuk meg az állományokat, az összes kiegészítõ információjukkal együtt. A fejlesztõk általában ezt a típusú megoldást kedvelik, mivel így a saját rendszerükön is könnyen karban tudnak tartani egy példányt, amiben tudnak keresni a revíziók között és ki tudják kérni akár az állományok korábbi változatait is. Természetesen ennek függvényében jóval több tárhelyre van szükségük.
* [[cvsup-config-where]]Honnan akarjuk ezeket beszerezni?
+ 
A `host=` mezõ beállításával közöljük a `cvsup` klienssel, honnan töltse le a frissítéseket. A <<cvsup-mirrors,CVSup tükrözések>> közül bármelyik megfelel erre a célra, habár leginkább azt érdemes választani, ami a kibertérben a hozzánk legközelebb esik. A példában most egy kitalált FreeBSD terjesztési oldalt választunk, a `cvsup99.FreeBSD.org`-ot:
+
[.programlisting]
....
*default host=cvsup99.FreeBSD.org
....
+ 
A CVSup futtatása elõtt tehát ne felejtsük el megváltoztatni ezt a létezõ számítógép hálózati nevére. A `cvsup` futtatásakor a `-h _hálózati név_` opció megadásával lehetõségünk ennek felülbírálására.
* [[cvsup-config-dest]]Hova akarjuk rakni a számítógépünkön?
+ 
A `prefix=` mezõ adja meg a `cvsup` számára, hogy hova tegye a kapott állományokat. A példában a forrásokat közvetlenül a forrásokat tároló központi könyvtárba, a [.filename]#/usr/src# könyvtárba tettük. Mivel a [.filename]#src# könyvtár neve már hallgatólagosan benne foglaltatik a letöltésre kiválasztott gyûjtemény nevében, ezért itt csak ennyit kell megadnunk:
+
[.programlisting]
....
*default prefix=/usr
....
+
* [[cvsup-config-status]]Hova akarjuk rakni az állapotot tároló állományokat?
+ 
A CVSup kliens egy "bázisnak" (base) nevezett könyvtárban folyamatosan fenntart bizonyos állományokban állapotokat (status file). Ezek a már letöltött állományok nyilvántartásával segítik a CVSup hatékony munkavégzését. Mi most a szabványos bázist, a [.filename]#/var/db# könyvtárat fogjuk használni:
+
[.programlisting]
....
*default base=/var/db
....
+ 
Amennyiben még nem létezne a bázisként használni kívánt könyvtár, ideje létrehoznunk. A `cvsup` ugyanis egy nem létezõ könyvtár esetén nem lesz hajlandó mûködni.
* További beállítások a [.filename]#supfile# állományban:
+ 
Általában még egy sor szokott szerepelni a [.filename]#supfile# állományokban:
+
[.programlisting]
....
*default release=cvs delete use-rel-suffix compress
....
+ 
A `release=cvs` mezõ jelzi, hogy a szervernek a FreeBSD fõ CVS repositoryból kell kikeresnie az információkat. Tulajdonképpen majdnem mindig errõl van szó, és az itt megadható többi lehetõség ismertetése most egyébként is meghaladná a szakasz határait.
+ 
A `delete` hatására a CVSup képes lesz állományokat törölni. Mindig érdemes megadnunk, hiszen a CVSup csak így tudja teljes mértékben frissentartani a forrásokat. A CVSup természetesen csak azokat az állományokat igyekszik letörölni, amelyek miatt valóban felelõs. A kóbor állományokat nem fogja bántani.
+ 
A `use-rel-suffix` hatása egy igazi... Rejtély. Ha tényleg érdekel minket a mûködése, lapozzuk fel bátran a man:cvsup[1] man oldalát. Nyugodtan adjuk meg és különösebben ne törõdjünk vele.
+ 
A `compress` beállítás segítségével a kommunikációs csatornán vándorló adatokat tudjuk gzip-szerû módon tömöríteni. Ha a hálózati kapcsolatunk sebessége meghaladja a 1,5 Mbitet másodpercenként (T1), akkor ezt már nem érdemes használni, viszont minden más esetben lényeges gyorsulást hozhat.
* Összegezzük az eddigieket:
+ 
Íme a példaként összerakott [.filename]#supfile# állományunk teljes tartalma:
+
[.programlisting]
....
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress

src-all
....

[[cvsup-refuse-file]]
==== A [.filename]#refuse# állomány

Ahogy arról már korábban szó esett, a CVSup _lehúzással_ frissít. Ez alapvetõen annyit jelent, hogy feltárcsázunk egy CVSup szervert, aki a következõt mondja nekünk: "A következõket tudod tõlem letölteni...", amire a kliensünk ezt válaszolja: "Rendben, akkor nekem kell ez, ez, ez meg ez." Alapértelmezés szerint a CVSup kliense azokat az állományokat fogja letölteni, amelyeket a konfigurációs állományban szereplõ gyûjtemények és címkék által megneveztünk. Ez azonban nem mindig felel meg az igényeinknek, különösen akkor, amikor a [.filename]#doc#, [.filename]#ports# vagy [.filename]#www# fákat akarjuk letölteni - az emberek többsége ugyanis nem beszél négy vagy öt nyelven, ezért nincs is szükségük a nyelvfüggõ állományok letöltésére. A Portgyûjtemény letöltése során a _ports-all_ helyett egyszerûen egyenként is felsorolhatjuk a számunkra érdekes kategóriákat (például _ports-astrology_, _ports-biology_ stb). Azonban mivel a [.filename]#doc# és a [.filename]#www# fákhoz nincsenek nyelvfüggõ gyûjtemények, ezért elõ kell halásznunk a CVSup egyik remek funkcióját, a [.filename]#refuse# állományt.

A [.filename]#refuse# állománnyal lényegében arra utasítjuk a CVSup alkalmazást, hogy a gyûjteményekbõl ne töltse le az összes állományt. Úgy is fogalmazhatnánk, hogy javaslatára a kliens _visszautasít_ (refuse) bizonyos szervertõl érkezõ állományokat. Ezeket a visszautasításokat tároló [.filename]#refuse# állományt a [.filename]#bázis/sup/# könyvtárban találhatjuk meg (illetve ha még nincsenek, akkor ide kell rakunk ezeket). Itt a _bázis_ a [.filename]#supfile# állományban megadott `base=` mezõre utal, ami a példánkban a [.filename]#/var/db# könyvtár volt. Ennek megfelelõen tehát a [.filename]#refuse# állomány a [.filename]#/var/db/sup/refuse# lesz.

A [.filename]#refuse# állomány felépítése igen egyszerû: a letölteni nem kívánt állományok és könyvtárak neveit tartalmazza. Például ha az angolul mellett esetleg még beszélünk egy kevés németet is, de nincs szükségünk az angol dokumentáció német fordítására sem, akkor a következõket írjuk a [.filename]#refuse# állományba:

[source,shell]
....
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/hu_*
doc/it_*
doc/ja_*
doc/mn_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
....

és így tovább a többi nyelvre is (melyeket a http://www.FreeBSD.org/cgi/cvsweb.cgi/[FreeBSD CVS repository] böngészésével deríthetjük ki).

Ezzel az alkalmas funkcióval a lassú vagy drága internetes kapcsolattal rendelkezõ felhasználók nagyon jól tudnak gazdálkodni, mivel így nem kell letölteniük az egyáltalán nem használt állományokat. A [.filename]#refuse# állományokról és a CVSup más hasonlóan elegáns funkcióiról a saját man oldaláról tudhatunk meg többet.

=== A CVSup futtatása

Most már készen állunk egy próba frissítés elvégzésére. A parancssorban nem sok mindent kell beírnunk ehhez:

[source,shell]
....
# cvsup supfile
....

ahol a [.filename]#supfile# a frissen létrehozott [.filename]#supfile# állományunk neve lesz. Feltételezve, hogy a parancsot X11 alatt adtunk ki, az `cvsup` erre feldob egy grafikus ablakot néhány gombbal. Nyomjuk meg a btn:[go] feliratú gombot és dõljünk hátra.

Mivel a példában a [.filename]#/usr/src# könyvtárunk frissítését állítottuk be, az állományok aktualizálásához szükséges jogosultságok biztosításához a `cvsup` programot `root` felhasználóként kell elindítanunk. Teljesen érthetõ, ha egy kicsit izgatottak vagyunk ezekben a pillanatokban, hiszen az elõbb hoztunk létre egy általunk eddig ismeretlen programhoz egy konfigurációs állományt. Ezért megemlítenénk, hogy ilyenkor elõször mindig próbáljuk ki a konfigurációkat, mielõtt azok bármilyen módosítást végeznének a fontos állományainkon. Ehhez hozzunk létre valahol egy üres könyvtárat, majd adjuk meg a parancssorban ennek a nevét:

[source,shell]
....
# mkdir /var/tmp/proba
# cvsup supfile /var/tmp/proba
....

Az így megadott könyvtárba kerülnek a frissítés eredményeképpen keletkezõ állományok. A CVSup elõször megvizsgálja a [.filename]#/usr/src# könyvtárban található állományokat, viszont egyiküket sem módosítja vagy törli. A frissítések ehelyett a [.filename]#/var/tmp/proba/usr/src# könyvtárba fognak kerülni. A CVSup emellett még a báziskönyvtárában tárolt állapotokat sem fogja megváltoztatni. A módosított állományok új változatai a megadott könyvtárba jönnek létre. Mivel a [.filename]#/usr/src# könyvtárt ehhez csak olvasni fogjuk, a próba lefuttatásához még `root` felhasználónak sem kell lennünk.

Ha nem használunk X11-et vagy egyszerûen csak nincs szükségünk a grafikus felületre, a parancssorban pár további opció megadásával így is kiadhatjuk a `cvsup` parancsot:

[source,shell]
....
# cvsup -g -L 2 supfile
....

A `-g` hatására a CVSup nem hozza be a grafikus felületét. Ha nem talál X11-et, akkor ez természetesen automatikus, de ellenkezõ esetben ezt is meg kell adnunk.

Az `-L 2` megadásával a CVSup az összes elvégzendõ frissítésrõl részletes értesítést ad. A részletességnek három foka van, `-L 0`-tól indulva egészen `-L 2`-ig. Itt az alapértelmezett érték a 0, amivel a hibaüzenetek kivételével egyetlen üzenetet sem kapunk.

Rengeteg egyéb beállítás adható még meg, ezeket a `cvsup -H` kiadásával kérdezhetjük le. A beállítások pontosabb leírását a man oldalon találjuk meg.

Miután elégedetten tapasztaltuk, hogy a frissítés remekül mûködik, a man:cron[8] segítségével próbáljuk meg az egész folyamatot önmûködövé tenni a CVSup szabályos idõközönkénti futtatásával. Ekkor viszont magától értetõdik, hogy a CVSup számára ne engedjük használni a grafikus felületet.

[[cvsup-collec]]
=== A CVSup állománygyûjteményei

A CVSup révén elérhetõ állománygyûjtemények egy hierarchikus rendszert alkotnak. Van néhány nagyobb állománygyûjtemény, amelyek kisebb al-állománygyûjteményekre bonthatóak. A nagyobb gyûjtemények letöltése ezért a kisebb algyûjtemények letöltésével egyenlõ. A gyûjtemények közt fennálló hierarchikus rendszer a lentebb szereplõ lista behúzásaiban érhetõ tetten.

A leggyakrabban használt gyûjtemények a `src-all` és a `ports-all` neveket viselik. A többi gyûjteményt általában csak kevesen és csak speciális célokra használják, ezért egyes tükrözéseken nem feltétlenül találjuk meg mindegyiküket.

`cvs-all release=cvs`::
A FreeBSD fõ CVS repositoryja, beleértve a titkosításhoz tartozó kódokat is.

`distrib release=cvs`:::
A FreeBSD terjesztéséhez és tükrözéséhez kapcsolódó állományok.

`doc-all release=cvs`:::
A FreeBSD kézikönyvének és a többi dokumentáció forrásai. Nem tartalmazza a FreeBSD honlapjának forrásait.

`ports-all release=cvs`:::
A FreeBSD portgyûjteménye.
+
[IMPORTANT]
====
Ha nem akarjuk a `ports-all` egészét (vagyis a teljes portfát) frissíteni, csak a lentebb szereplõ egyes algyûjteményeket letölteni, akkor _soha_ ne feledkezzünk meg a `ports-base` megadásáról! Amikor valami változik a portok mûködésében, akkor a `ports-base` által képviselt algyûjteményben szereplõ állományokat igen gyorsan elkezdik használni a "valódi" portok. Ezért ha csak a "valódi" portokat frissítjük, amelyek viszont igényt tartanak néhány újabb funkcióra is, akkor könnyen fordítási hibára vagy különbözõ rejtélyes hibaüzenetekbe futhatunk. Emiatt _legeslegelõször_ mindig tegyünk róla, hogy a `ports-base` algyûjteményünk a lehetõ legfrissebb legyen.
====
+
[IMPORTANT]
====
Ha a [.filename]#ports/INDEX# állomány egy saját példányát kívánjuk létrehozni, akkor ahhoz a `ports-all` gyûjteményt (tehát a teljes portfát) le _kell_ kérnünk. A [.filename]#ports/INDEX# állományt a portfa egy része alapján nem készíthetjük el. Errõl bõvebben lásd a extref:{faq}[GYIK, MAKE-INDEX]-ot.
====

`ports-accessibility release=cvs`::::
A fogyatékos felhasználókat segítõ szoftverek.

`ports-arabic release=cvs`::::
Arab nyelvi támogatás.

`ports-archivers release=cvs`::::
Archiváló eszközök.

`ports-astro release=cvs`::::
Csillagászathoz tartozó portok.

`ports-audio release=cvs`::::
Hangtámogatás.

`ports-base release=cvs`::::
A Portgyûjtemény saját infrastruktúrája - az [.filename]#Mk/#, [.filename]#Tools/# és [.filename]#/usr/ports# különféle alkönyvtáraiban elhelyezkedõ állományok.
+
[NOTE]
====
Ne hagyjuk figyelmen kívül <<cvsup-collec-pbase-warn,a fenti fontos figyelmeztetést>> sem: ezt az algyûjteményt _mindig_ a FreeBSD Portgyûjteményével együtt frissítsük!
====

`ports-benchmarks release=cvs`::::
Teljesítménytesztek.

`ports-biology release=cvs`::::
Biológia.

`ports-cad release=cvs`::::
Számítógépes tervezõeszközök (CAD).

`ports-chinese release=cvs`::::
Kínai nyelvi támogatás.

`ports-comms release=cvs`::::
Kommunikációs szoftverek.

`ports-converters release=cvs`::::
Karakterkódolások közti átalakítók.

`ports-databases release=cvs`::::
Adatbázisok.

`ports-deskutils release=cvs`::::
A számítógép feltalálása elõtt is már létezõ eszközök.

`ports-devel release=cvs`::::
Fejlesztõeszközök.

`ports-dns release=cvs`::::
Névfeloldással kapcsolatos szoftverek.

`ports-editors release=cvs`::::
Szövegszerkesztõk.

`ports-emulators release=cvs`::::
Más operációs rendszerek emulátorai.

`ports-finance release=cvs`::::
Pénzügyi, gazdasági és hasonló alkalmazások.

`ports-ftp release=cvs`::::
FTP kliensek és szerverek.

`ports-games release=cvs`::::
Játékok.

`ports-german release=cvs`::::
Német nyelvi támogatás.

`ports-graphics release=cvs`::::
Grafikus segédeszközök.

`ports-hebrew release=cvs`::::
Héber nyelvi támogatás.

`ports-hungarian release=cvs`::::
Magyar nyelvi támogatás.

`ports-irc release=cvs`::::
IRC-vel kapcsolatos programok.

`ports-japanese release=cvs`::::
Japán nyelvi támogatás.

`ports-java release=cvs`::::
Java(TM) segédeszközök.

`ports-korean release=cvs`::::
Koreai nyelvi támogatás.

`ports-lang release=cvs`::::
Programozási nyelvek.

`ports-mail release=cvs`::::
Levelezõ programok.

`ports-math release=cvs`::::
Numerikus számításokkal foglalkozó programok.

`ports-mbone release=cvs`::::
MBone alkalmazások.

`ports-misc release=cvs`::::
Egyéb segédprogramok.

`ports-multimedia release=cvs`::::
Multimediás szoftverek.

`ports-net release=cvs`::::
Hálózati szoftverek.

`ports-net-im release=cvs`::::
Üzenetküldõ (Instant Messaging, IM) szoftverek.

`ports-net-mgmt release=cvs`::::
Hálózati karbantartó szoftverek.

`ports-net-p2p release=cvs`::::
Egyenrangú (Peer to Peer, P2P) hálózatok.

`ports-news release=cvs`::::
USENET hírszoftverek.

`ports-palm release=cvs`::::
A Palm(TM) sorozat szoftveres támogatása.

`ports-polish release=cvs`::::
Lengyel nyelvi támogatás.

`ports-ports-mgmt release=cvs`::::
A portok és csomagok karbantartását végzõ segédeszközök.

`ports-portuguese release=cvs`::::
Portugál nyelvi támogatás.

`ports-print release=cvs`::::
Nyomdai programok.

`ports-russian release=cvs`::::
Orosz nyelvi támogatás.

`ports-science release=cvs`::::
Tudományos programok.

`ports-security release=cvs`::::
Biztonsági segédprogramok.

`ports-shells release=cvs`::::
Parancsértelmezõk.

`ports-sysutils release=cvs`::::
Rendszerprogramok.

`ports-textproc release=cvs`::::
Szövegfeldolgozást segítõ eszközök (kivéve az asztali kiadványszerkesztést).

`ports-ukrainian release=cvs`::::
Ukrán nyelvi támogatás.

`ports-vietnamese release=cvs`::::
Vietnámi nyelvi támogatás.

`ports-www release=cvs`::::
A világhálóhoz tartozó szoftverek.

`ports-x11 release=cvs`::::
Az X Window System mûködését segítõ portok.

`ports-x11-clocks release=cvs`::::
X11 órák.

`ports-x11-drivers release=cvs`::::
X11 meghajtók.

`ports-x11-fm release=cvs`::::
X11 állománykezelõk.

`ports-x11-fonts release=cvs`::::
X11 betûtípusok és a hozzájuk tartozó segédprogramok.

`ports-x11-toolkits release=cvs`::::
X11 eszközrendszerek.

`ports-x11-servers release=cvs`::::
X11 szerverek.

`ports-x11-themes release=cvs`::::
X11 témák.

`ports-x11-wm release=cvs`::::
X11 ablakkezelõk.

`projects-all release=cvs`:::
A FreeBSD projektek forrásainak repositoryja.

`src-all release=cvs`:::
A FreeBSD fontosabb forrásai, a titkosításhoz tartozó kódokkal együtt.

`src-base release=cvs`::::
A [.filename]#/usr/src# könyvtárban levõ egyéb állományok.

`src-bin release=cvs`::::
Az egyfelhasználós módban használható segédeszközök ([.filename]#/usr/src/bin#).

`src-cddl release=cvs`::::
A CDDL licenc szerint terjesztett segédprogramok és függvénykönyvtárak ([.filename]#/usr/src/cddl#).

`src-contrib release=cvs`::::
A FreeBSD Projekten kívül fejlesztett segédprogramok és függvénykönyvtárak, viszonylag kevés módosítással ([.filename]#/usr/src/contrib#).

`src-crypto release=cvs`::::
A FreeBSD Projekten kívül fejlesztett, titkosítással kapcsolatos segédprogramok és függvénykönyvtárak, viszonylag kevés módosítással ([.filename]#/usr/src/crypto#).

`src-eBones release=cvs`::::
Kerberos és DES ([.filename]#/usr/src/eBones#). A FreeBSD jelenlegi változatai nem használják.

`src-etc release=cvs`::::
A rendszer beállításait tartalmazó állományok ([.filename]#/usr/src/etc#).

`src-games release=cvs`::::
Játékok ([.filename]#/usr/src/games#).

`src-gnu release=cvs`::::
A GPL licenc szerint terjesztett segédprogramok ([.filename]#/usr/src/gnu#).

`src-include release=cvs`::::
(C nyelvi) Header állományok ([.filename]#/usr/src/include#).

`src-kerberos5 release=cvs`::::
A Kerberos5 biztonsági csomag ([.filename]#/usr/src/kerberos5#).

`src-kerberosIV release=cvs`::::
A KerberosIV biztonsági csomag ([.filename]#/usr/src/kerberosIV#).

`src-lib release=cvs`::::
Függvénykönyvtárak ([.filename]#/usr/src/lib#).

`src-libexec release=cvs`::::
Más programok által futtatott rendszerprogramok ([.filename]#/usr/src/libexec#).

`src-release release=cvs`::::
A FreeBSD kiadások elkészítéséhez szükséges állományok ([.filename]#/usr/src/release#).

`src-rescue release=cvs`::::
Statikusan linkelt programok vészhelyzet esetére, lásd man:rescue[8] ([.filename]#/usr/src/rescue#).

`src-sbin release=cvs`::::
Egyfelhasználós módban használható rendszereszközök ([.filename]#/usr/src/sbin#).

`src-secure release=cvs`::::
Titkosítással foglalkozó függvénykönyvtárak és parancsok ([.filename]#/usr/src/secure#).

`src-share release=cvs`::::
Több rendszer között megosztható állományok ([.filename]#/usr/src/share#).

`src-sys release=cvs`::::
A rendszermag ([.filename]#/usr/src/sys#).

`src-sys-crypto release=cvs`::::
A rendszermagban levõ titkosítással foglalkozó kód ([.filename]#/usr/src/sys/crypto#).

`src-tools release=cvs`::::
A FreeBSD karbantartására való különbözõ segédprogramok ([.filename]#/usr/src/tools#).

`src-usrbin release=cvs`::::
Felhasználói segédprogramok ([.filename]#/usr/src/usr.bin#).

`src-usrsbin release=cvs`::::
Rendszerszintû segédprogramok ([.filename]#/usr/src/usr.sbin#).

`www release=cvs`:::
A FreeBSD Projekt honlapjának forráskódja.

`distrib release=self`::
A CVSup szerver saját konfigurációs állományai. A CVSup tükrözései használják.

`gnats release=current`::
A GNATS hibanyilvántartó adatbázis.

`mail-archive release=current`::
A FreeBSD levelezési listáinak archívuma.

`www release=current`::
A FreeBSD Projekt honlapjának generált állományai (de nem a forrásai). A WWW tükrözések használják.

=== Bõvebb információk

A CVSup részletesebb bemutatását és a hozzá tartozó GYIK-ot http://www.cvsup.org[A CVSup honlapján] találjuk meg.

A CVSup FreeBSD-re vonatkozó tárgyalása a {freebsd-hackers}n történik. Itt és az {freebsd-announce}n jelentik be a szoftver újabb változatait.

A CVSup alkalmazással kapcsolatos kérdéseket és hibajelentéseket illetõen a http://www.cvsup.org/faq.html#bugreports[ CVSup GYIK]-ot érdemes megnéznünk.

[[cvsup-mirrors]]
=== CVSup oldalak

A FreeBSD <<cvsup,CVSup>> szerverei az alábbi oldalakon érhetõek el:

[[cvs-tags]]
== CVS címkék

Meg kell adnunk egy revízió címkéjét, amikor a cvs vagy CVSup használatával letöltjük vagy frissítjük a forrásokat. A revíziós címkék a FreeBSD egyik fejlesztési irányát vagy egy adott idõpontbeli állapotát hivatkozzák. Az elõbbi egy "ág címkéje", míg az utóbbi pedig egy "kiadás címkéje".

=== Az ágak címkéi

A `HEAD` kivételével (amely mindig egy érvényes címke) az összes címke csak a [.filename]#src/# fára vonatkozik. A [.filename]#ports/#, [.filename]#doc/# és [.filename]#www/# fák nem tartalmaznak ágakat.

HEAD::
A fõ fejlesztési ág, avagy a FreeBSD-CURRENT szimbolikus neve. Ha nem adunk meg revíziót, ez lesz az alapértelmezés.
+
A CVSup számára ezt `.` címke jelzi (itt most nem mondatvégi pontot jelöli, hanem a `.` karaktert).
+
[NOTE]
====
A CVS számára ez lesz az alapértelmezett érték, ha nem adunk meg konkrét revíziós címkét. Többnyire _nem_ túlzottan jó ötlet egy STABLE változatot használó gépen a CURRENT verziójú források kikérése, kivéve hacsak nem ez a szándékunk.
====

RELENG_8::
A FreeBSD-8.X fejlesztési ága, más néven a FreeBSD 8-STABLE

RELENG_8_1::
A FreeBSD-8.1 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_8_0::
A FreeBSD-8.0 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_7::
A FreeBSD-7.X fejlesztési ága, más néven a FreeBSD 7-STABLE

RELENG_7_3::
A FreeBSD-7.3 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_7_2::
A FreeBSD-7.2 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_7_1::
A FreeBSD-7.1 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_7_0::
A FreeBSD-7.0 kiadás ága, ahová csak a biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_6::
A FreeBSD-6.X fejlesztési ága, más néven a FreeBSD 6-STABLE

RELENG_6_4::
A FreeBSD-6.4 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_6_3::
A FreeBSD-6.3 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_6_2::
A FreeBSD-6.2 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_6_1::
A FreeBSD-6.1 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_6_0::
A FreeBSD-6.0 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5::
A FreeBSD-5.X fejlesztési ág, más néven a FreeBSD 5-STABLE.

RELENG_5_5::
A FreeBSD-5.5 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5_4::
A FreeBSD-5.4 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5_3::
A FreeBSD-5.3 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5_2::
A FreeBSD-5.2 és FreeBSD-5.2.1 kiadások ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5_1::
A FreeBSD-5.1 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_5_0::
A FreeBSD-5.0 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4::
A FreeBSD-4.X fejlesztési ága, más néven a FreeBSD 4-STABLE.

RELENG_4_11::
A FreeBSD-4.11 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_10::
A FreeBSD-4.10 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_9::
A FreeBSD-4.9 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_8::
A FreeBSD-4.8 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_7::
A FreeBSD-4.7 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_6::
A FreeBSD-4.6 és FreeBSD-4.6.2 kiadások ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_5::
A FreeBSD-4.5 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_4::
A FreeBSD-4.4 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_4_3::
A FreeBSD-4.3 kiadás ága, ahová csak biztonsági frissítések és a kritikus hibajavítások kerülnek.

RELENG_3::
A FreeBSD-3.X fejlesztési ága, más néven a 3.X-STABLE.

RELENG_2_2::
A FreeBSD-2.2.X fejlesztési ága, más néven a 2.2-STABLE. Ez az ág manapság már elavult.

=== A kiadások címkéi

Ezek a címkék a FreeBSD egyes kiadásainak dátumára hivatkoznak. Egy kiadás elõkészítésének és terjesztésének folyamatáról részleteiben a link:https://www.FreeBSD.org/releng/[kiadásokat összefoglaló lapról] és a extref:{releng}[kiadások építésérõl szóló cikkbõl, release-proc] tájékozódhatunk. Az [.filename]#src# fában `RELENG_` kezdetû címkéket találunk. A [.filename]#ports# és [.filename]#doc# fákban a címkék nevei a `RELEASE` elõtaggal kezdõdnek. Végezetül a [.filename]#www# fában nincsenek kiadásokhoz tartozó címkék.

RELENG_8_1_0_RELEASE::
FreeBSD 8.1

RELENG_8_0_0_RELEASE::
FreeBSD 8.0

RELENG_7_3_0_RELEASE::
FreeBSD 7.3

RELENG_7_2_0_RELEASE::
FreeBSD 7.2

RELENG_7_1_0_RELEASE::
FreeBSD 7.1

RELENG_7_0_0_RELEASE::
FreeBSD 7.0

RELENG_6_4_0_RELEASE::
FreeBSD 6.4

RELENG_6_3_0_RELEASE::
FreeBSD 6.3

RELENG_6_2_0_RELEASE::
FreeBSD 6.2

RELENG_6_1_0_RELEASE::
FreeBSD 6.1

RELENG_6_0_0_RELEASE::
FreeBSD 6.0

RELENG_5_5_0_RELEASE::
FreeBSD 5.5

RELENG_5_4_0_RELEASE::
FreeBSD 5.4

RELENG_4_11_0_RELEASE::
FreeBSD 4.11

RELENG_5_3_0_RELEASE::
FreeBSD 5.3

RELENG_4_10_0_RELEASE::
FreeBSD 4.10

RELENG_5_2_1_RELEASE::
FreeBSD 5.2.1

RELENG_5_2_0_RELEASE::
FreeBSD 5.2

RELENG_4_9_0_RELEASE::
FreeBSD 4.9

RELENG_5_1_0_RELEASE::
FreeBSD 5.1

RELENG_4_8_0_RELEASE::
FreeBSD 4.8

RELENG_5_0_0_RELEASE::
FreeBSD 5.0

RELENG_4_7_0_RELEASE::
FreeBSD 4.7

RELENG_4_6_2_RELEASE::
FreeBSD 4.6.2

RELENG_4_6_1_RELEASE::
FreeBSD 4.6.1

RELENG_4_6_0_RELEASE::
FreeBSD 4.6

RELENG_4_5_0_RELEASE::
FreeBSD 4.5

RELENG_4_4_0_RELEASE::
FreeBSD 4.4

RELENG_4_3_0_RELEASE::
FreeBSD 4.3

RELENG_4_2_0_RELEASE::
FreeBSD 4.2

RELENG_4_1_1_RELEASE::
FreeBSD 4.1.1

RELENG_4_1_0_RELEASE::
FreeBSD 4.1

RELENG_4_0_0_RELEASE::
FreeBSD 4.0

RELENG_3_5_0_RELEASE::
FreeBSD 3.5

RELENG_3_4_0_RELEASE::
FreeBSD 3.4

RELENG_3_3_0_RELEASE::
FreeBSD 3.3

RELENG_3_2_0_RELEASE::
FreeBSD 3.2

RELENG_3_1_0_RELEASE::
FreeBSD 3.1

RELENG_3_0_0_RELEASE::
FreeBSD 3.0

RELENG_2_2_8_RELEASE::
FreeBSD 2.2.8

RELENG_2_2_7_RELEASE::
FreeBSD 2.2.7

RELENG_2_2_6_RELEASE::
FreeBSD 2.2.6

RELENG_2_2_5_RELEASE::
FreeBSD 2.2.5

RELENG_2_2_2_RELEASE::
FreeBSD 2.2.2

RELENG_2_2_1_RELEASE::
FreeBSD 2.2.1

RELENG_2_2_0_RELEASE::
FreeBSD 2.2.0

[[mirrors-afs]]
== AFS oldalak

A FreeBSD a következõ szerverein érhetõ el AFS:

Svédország::
Az állományok a következõ helyen érhetõek el: [.filename]#/afs/stacken.kth.se/ftp/pub/FreeBSD/#
+
[.programlisting]
....
stacken.kth.se         # Stacken Computer Club, KTH, Svédország
130.237.234.43         #hot.stacken.kth.se
130.237.237.230        #fishburger.stacken.kth.se
130.237.234.3          #milko.stacken.kth.se
....
+
Karbantartó: mailto:ftp@stacken.kth.se[ftp@stacken.kth.se]

[[mirrors-rsync]]
== Rsync oldalak

A most következõ oldalakon a FreeBSD-t érhetjük el az rsync protokollal. Az rsync segédprogram mûködésében leginkább a man:rcp[1] parancshoz hasonlít, de sokkal több beállítással rendelkezik, és az rsync távoli frissítéseket kezelõ protokollja segítségével csak az állományok csoportjai között levõ eltéréseket küldi át, amivel a hálózaton keresztüli szinkronizáció rendkívül felgyorsítható. Ez olyankor jelent számunkra a legtöbbet, ha a FreeBSD FTP szerverének vagy CVS repositoryjának egyik tükrözését tartjuk karban. Az rsync több operációs rendszerre is elérhetõ, és FreeBSD-n a package:net/rsync[] port vagy csomag tartalmazza.

Cseh Köztársaság::
rsync://ftp.cz.FreeBSD.org/
+
Elérhetõ gyûjtemények:

** ftp: a FreeBSD FTP szerverének részleges tükrözése.
** FreeBSD: a FreeBSD FTP szerverének teljes tükrözése.

Hollandia::
rsync://ftp.nl.FreeBSD.org/
+
Elérhetõ gyûjtemények:

** FreeBSD: a FreeBSD FTP szerverének teljes tükrözése.

Oroszország::
rsync://ftp.mtu.ru
+
Elérhetõ gyûjtemények:

** FreeBSD: A FreeBSD FTP szerver teljes tartalma.
** FreeBSD-gnats: A GNATS hibanyilvántartó adatbázis.
** FreeBSD-Archive: A FreeBSD archívumait tároló FTP szerver tükrözése.

Tajvan::
rsync://ftp.tw.FreeBSD.org/
+
rsync://ftp2.tw.FreeBSD.org/
+
rsync://ftp6.tw.FreeBSD.org/
+
Elérhetõ gyûjtemények:

** FreeBSD: a FreeBSD FTP szerverének teljes tükrözése.

Egyesült Királyság::
rsync://rsync.mirrorservice.org/
+
Elérhetõ gyûjtemények:

** sites/ftp.freebsd.org: a FreeBSD FTP szerverének teljes tükrözése.

Amerikai Egyesült Államok::
rsync://ftp-master.FreeBSD.org/
+
Ezt a szervert csak az elsõdleges FreeBSD tükrözéseknek szabad használniuk.
+
Elérhetõ gyûjtemények:

** FreeBSD: a FreeBSD FTP szerverének központi archívuma.
** acl: a FreeBSD központi ACL listája.
+
rsync://ftp13.FreeBSD.org/
+
Elérhetõ gyûjtemények:

** FreeBSD: a FreeBSD FTP szerver teljes tükrözése.
