---
title: Хавсралт A. FreeBSD-г олж авах нь
part: хэсэг V. Хавсралтууд
prev: books/handbook/partv
next: books/handbook/bibliography
showBookMenu: true
weight: 39
params:
  path: "/books/handbook/mirrors/"
---

[appendix]
[[mirrors]]
= Se procurer FreeBSD
: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]]
== CDROM болон DVD Нийтлэгчид

=== CD болон DVD цуглуулгууд

FreeBSD CD болон DVD цуглуулгуудыг олон жижиглэн худалдаалагчдаас шууд худалдан авах боломжтой байдаг:

* FreeBSD Mall, Inc. +
2420 Sand Creek Rd C-1 #347 +
Brentwood, CA  94513 +
USA +
Утас: +1 925 240-6652 +
Факс: +1 925 674-0821 +
Email: <info@freebsdmall.com> +
WWW: http://www.freebsdmall.com/

* Dr. Hinner EDV +
Kochelseestr. 11 +
D-81371 München +
Germany +
Утас: (0177) 428 419 0 +
WWW: http://www.hinner.de/linux/freebsd.html

* Linux Distro UK +
42 Wharfedale Road +
Margate +
CT9 2TB +
United Kingdom +
WWW: https://linux-distro.co.uk/

* The Linux Emporium +
The Techno Centre, Puma Way +
Parkside +
CV1 2TT +
United Kingdom +
Утас: +44 (0)247 615 8121 +
Факс: +44 1491 837016 +
WWW: http://www.linuxemporium.co.uk/products/bsd/

* LinuxCenter.Ru +
Galernaya Street, 55 +
Saint-Petersburg +
190000 +
Russia +
Утас: +7-812-3125208 +
Email: <info@linuxcenter.ru> +
WWW: http://linuxcenter.ru/shop/freebsd

[[mirrors-ftp]]
== FTP сайтууд

FreeBSD-д зориулсан абан ёсны эхүүдийг дэлхий даяар байрласан толин тусгал сайтуудаас авч болно. link:ftp://ftp.FreeBSD.org/pub/FreeBSD/[ftp://ftp.FreeBSD.org/pub/FreeBSD/] сайт нь сайн холбогдсон бөгөөд маш олон тооны холболтуудыг зөвшөөрдөг. Гэхдээ та "илүү ойр" толин тусгал сайтыг хайж олсон нь дээр биз ээ (ялангуяа хэрэв та ямар нэгэн толин тусгал маягийн сайт тохируулж ажиллуулахыг хүсвэл).

Мөн FreeBSD нь дараах толин тусгал сайтууд дахь нэргүй FTP-ээс авч болохоор байдаг. Хэрэв та нэргүй FTP-ээс FreeBSD-г авахыг сонговол өөртөө аль болох ойр сайтыг ашиглаад үзээрэй. "Primary Mirror Sites" буюу үндсэн толин тусгал сайтууд дахь толин тусгал сайтууд нь бүхэл FreeBSD архивыг (архитектур болгонд зориулсан одоо байгаа бүх хувилбарууд) ихэвчлэн агуулдаг боловч танай улс юм уу эсвэл бүсэд байрлаж байгаа сайтаас татаж авахад танд илүү хурдан байх болов уу. Бүсийн сайтууд нь хамгийн түгээмэл архитектуруудад зориулсан хамгийн сүүлийн үеийн хувилбаруудыг агуулдаг боловч FreeBSD-ийн бүх архивыг агуулаагүй байж болох юм. Бүх сайтууд нь нэргүй FTP-ээр хандах боломжийг олгодог. Зарим сайтууд нь бас бусад аргуудаар хандах боломжийг олгодог. Сайт болгоны хувьд хандах аргууд нь хостын нэрийн дараа хаалтанд өгөгдсөн байгаа болно.

<<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]]
== Нэргүй CVS(хуучирсан)

=== Анхааруулга

[WARNING]
====

CVS нь төслийн хувьд хуучирсан бөгөөд ашиглахыг зөвлөдөггүй. Түүний оронд Subversion-г ашиглах ёстой.
====

[[ctm]]
== CTM-г ашиглах нь

CTM нь алсын сангийн модыг төвтэй синхрончлол хийхэд зориулсан арга юм. Энэ нь FreeBSD-ийн эх моднуудтай ашиглахад зориулагдаж хөгжүүлэгдсэн бөгөөд цаг хугацаа өнгөрөх тусам бусад хүмүүс бусад зорилгоор хэрэглэхэд ашигтайг мэдэж болох юм. Дельтанууд үүсгэх процессийн талаар бараг баримт байхгүй болохоор бас хэрэв та CTM-г бусад зүйлсэд зориулж ашиглахыг хүсэж байгаа бол дэлгэрэнгүй мэдээллийн талаар link:{ctm-users-url}[ctm-users-desc] захидлын жагсаалтад хандана уу.

=== CTM-г би яагаад ашиглах ёстой вэ?

CTM нь танд FreeBSD эх моднуудын локал хуулбарыг өгдөг. Модны төрөл бүрийн "хэлбэрүүд" байдаг. Таны бүхэл CVS мод эсвэл аль нэг салбаруудын нэгийг дагахыг хүсэж байгаагаас хамаарч CTM нь танд мэдээлэл өгч чадна. Та FreeBSD-ийн идэвхтэй хөгжүүлэгч боловч олиггүй юм уу эсвэл TCP/IP холболт байхгүй эсвэл өөрчлөлтүүдийг автоматаар тан руу илгээгддэг байлгахыг хүсэж байгаа бол CTM нь танд зориулагджээ. Та хамгийн идэвхтэй салбаруудын хувьд өдөрт гурав хүртэлх дельтануудыг авах хэрэгтэй болно. Гэхдээ та тэдгээрийг автомат цахим захидлаар илгээгддэг байхыг бодох хэрэгтэй. Шинэчлэлтүүдийн хэмжээг үргэлж аль болох бага байлгадаг. Энэ ихэвчлэн 5K-с бага байдаг, хааяа (арваас нэгт) 10-50K хэмжээтэй байдаг бөгөөд заримдаа том 100K+ эсвэл илүү бас байдаг.

Та урьдчилан багцалсан хувилбарын оронд хөгжүүлэлтийн эхүүд дээр шууд ажиллахтай холбоотой гардаг төрөл бүрийн анхааруулгуудын талаар бас мэдэж байх хэрэгтэй болно. Энэ нь таныг "current" эхүүдийг сонгох тохиолдолд ялангуяа үнэн байдаг. Таныг crossref:cutting-edge[current,FreeBSD-ийн одоо үеийн хэлбэрт байх нь] хэсгийг уншихыг зөвлөдөг.

=== CTM-г ашиглахад надад юу хэрэгтэй вэ?

Танд хоёр зүйл хэрэгтэй: CTM програм болон түүнийг тэжээх эхний дельтанууд ("current" түвшингүүдэд хүрэхийн тулд).

CTM програм нь хувилбар 2.0 гарснаас хойш FreeBSD-ийн хэсэг болж ирсэн бөгөөд хэрэв танд эх байгаа бол энэ нь [.filename]#/usr/src/usr.sbin/ctm# санд байдаг.

CTM-г тэжээх "дельтануудыг" нь FTP эсвэл цахим захидал гэсэн хоёр аргаар авч болно. Хэрэв танд Интернет уруу хандах ерөнхий FTP хандалт байгаа бол дараах FTP сайтууд нь CTM-д хандахыг дэмждэг:

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

эсвэл <<mirrors-ctm,толин тусгалууд>> хаягийг үзнэ үү.

тохирох сан руу FTP хийгээд [.filename]#README# файлыг татаж аваад тэндээс эхлээрэй.

Хэрэв та өөрийн дельтануудыг цахим захидлаар авахыг хүсэж байгаа бол:

CTM түгээлтийн жагсаалтуудын аль нэгэнд бүртгүүлэх хэрэгтэй. link:{ctm-cvs-cur-url}[ctm-cvs-cur-desc] нь бүхэл CVS модыг дэмждэг. link:{ctm-src-cur-url}[ctm-src-cur-desc] нь хөгжүүлэлтийн салбарын толгойг дэмждэг. link:{ctm-src-9-url}[ctm-src-9-desc] нь 9.X хувилбарыг дэмждэг, гэх мэт. (Хэрэв та өөрийгөө жагсаалтад хэрхэн бүртгүүлэхийг мэдэхгүй байгаа бол дээрх жагсаалтын нэрэн дээр дарах юм уу эсвэл {mailing-lists-url} уруу очоод өөрийн хүсэж байгаа жагсаалтан дээрээ дарах хэрэгтэй. Бүртгэхэд шаардлагатай бүгдийг жагсаалтын хуудас агуулсан байх ёстой.)

Өөрийн CTM шинэчлэлтүүдийг хүлээн авч эхлэхдээ та тэдгээрийг задалж ашиглахдаа `ctm_rmail` тушаал ашиглаж болох юм. Хэрэв та процессийг бүрэн автомат загвараар ажилладаг байлгахыг хүсэж байгаа бол [.filename]#/etc/aliases# файл дахь оруулгаас `ctm_rmail` програмыг шууд ашиглаж болох юм. Илүү дэлгэрэнгүйг `ctm_rmail`-ийн гарын авлагын хуудаснаас шалгана уу.

[NOTE]
====
CTM дельтануудыг авах ямар аргыг ашиглаж байгаагаас үл хамааран та link:{ctm-announce-url}[ctm-announce-desc] захидлын жагсаалтад бүртгүүлэх хэрэгтэй. Ирээдүйд CTM системийн ажиллагааны тухай зарлалууд илгээгдэх газар нь зөвхөн энэ болох юм. Дээрх жагсаалтын нэрэн дээр дарж жагсаалтад бүртгүүлэхийн тулд заавруудыг дагах хэрэгтэй.
====

=== CTM-г эхний удаа хэрэглэх

CTM дельтануудыг ашиглаж эхлэхээсээ өмнө дельтанууд дараа дараагийн удаа үүсгэгдэхэд нь зориулж та эхлэх цэг дээр ирэх хэрэгтэй болно.

Танд юу байгааг эхлээд тодорхойлох хэрэгтэй. Бүгд "хоосон" сангаас эхэлж болно. Өөрийн CTM-ээр дэмжигдсэн модыг эхлүүлэхийн тулд та эхний "Empty" буюу хоосон дельтаг ашиглах ёстой. Тодорхой нэг цэгт эдгээр "started" буюу эхэлсэн дельтануудын аль нэгийг өөрийн хүслээр CD дээр түгээж болохоор энэ нь зориулагдсан боловч одоогоор тийм юм болоогүй байгаа билээ.

Моднууд нь хэдэн арван мегабайт байдаг болохоор өөртөө байгаагаас эхлэхийг эрхэмлэх ёстой юм. Хэрэв танд -RELEASE CD байгаа бол та эхний эхийг түүнэс хуулж эсвэл задалж болох юм. Энэ нь өгөгдлийн чухал дамжуулалтыг хэмнэх болно.

Та эдгээр "starter" буюу эхлэх дельтануудыг дугаарт нэмэгдсэн `X`-ээр таньж болно (жишээ нь [.filename]#src-cur.3210XEmpty.gz#). `X`-ийн дараах тэмдэглээс нь таны эхний "seed" буюу үрийн үүсэлд харгалзана. Дүрмээр бол `Empty` буюу хоосноос шилжих үндсэн шилжилт нь 100 дельта бүрээс үүсгэгдэнэ. Ингэхэд тэдгээр нь том байна! [.filename]#XEmpty# дельтануудын хувьд 70-аас 80 мегабайт `gzip` хийгдсэн өгөгдөл нь нийтлэг байдаг.

Эхлэх анхдагч дельтаг сонгосны дараа танд түүний дараах өндөр дугааруудтай бүх дельтанууд хэрэгтэй болно.

=== Өөрийн өдөр тутмын амьдралдаа CTM-г ашиглах нь

Дельтануудыг өгөхийн тулд ердөө л доор дурдсаныг хийнэ:

[source,shell]
....
# cd /where/ever/you/want/the/stuff
# ctm -v -v /where/you/store/your/deltas/src-xxx.*
....

CTM нь `gzip`-ээр тавигдсан дельтануудыг ойлгодог болохоор та тэдгээрийг эхлээд `gunzip` хийх хэрэггүй юм. Энэ нь дискний зай хэмнэх болно.

Бүх процессийн талаар маш нууцлаг гэж бодоогүй л бол CTM нь таны модыг хөндөхгүй байх болно. Дельтаг шалгахын тулд та `-c` тугийг бас ашиглаж болох бөгөөд CTM нь таны модыг үнэндээ хөндөхгүй; энэ нь зөвхөн дельтаны бүрэн бүтэн байдлыг шалгаж таны одоогийн модонд цэвэр хийгдэх эсэхийг л үздэг.

CTM-д өгөгдөх бусад сонголтууд бас байдаг бөгөөд эдгээрийг гарын авлагын хуудаснуудаас үзнэ үү, эсвэл илүү дэлгэрэнгүйг эхүүдээс хайна уу.

Ингээд л бүгд бараг болж байна. Шинэ дельта авах бүртээ өөрийн эхүүдийг хамгийн сүүлийн хувилбарт аваачихын тулд түүнийг CTM-ээр ажиллуулах хэрэгтэй.

Дельтануудыг дахин татаж авахад хэцүү байгаа бол битгий устгаарай. Ямар нэг муу юм болж болзошгүй гэж үзээд тэдгээрийг та хаа нэгтэй хадгалахыг хүсэж болох юм. Танд зөвхөн уян диск байсан ч гэсэн `fdwrite` тушаалыг ашиглан хуулбар хийх нь зүйтэй.

=== Өөрийн локал өөрчлөлтүүдийг хадгалах нь

Хөгжүүлэгчийн хувьд эх модыг өөрчлөх эсвэл түүн дээр турших хүсэл төрж болох юм. CTM нь локал өөрчлөлтүүдийг хязгаарлалттайгаар дэмждэг: [.filename]#foo# файлыг байгаа эсэхийг шалгахын өмнө [.filename]#foo.ctm# файлыг эхлээд хайдаг. Хэрэв энэ файл байвал CTM нь [.filename]#foo#-ийн оронд энэ файл дээр ажилладаг.

Энэ нь бидэнд локал өөрчлөлтүүдийг хялбараар арчлах боломжийг олгодог: өөрийн өөрчлөх төлөвлөгөөтэй байгаа файлуудаа [.filename]#.ctm# өргөтгөлтэй болгон хуулах хэрэгтэй. Дараа нь та кодыг чөлөөтэй оролдож болох бөгөөд CTM нь [.filename]#.ctm# файлыг хамгийн сүүлийн хэлбэрт байлгах болно.

=== CTM-ийн бусад сонирхолтой сонголтууд

==== Шинэчлэлтээр яг юу хөндөгдөхийг олох

Та өөрийн эх архивт CTM-ийн хийх өөрчлөлтүүдийн жагсаалтыг `-l` сонголтыг CTM-д өгөн тодорхойлж болно.

Та өөрчлөлтүүдийн бүртгэлүүдийг хадгалах, өөрчлөгдсөн файлуудад урьдчилан эсвэл дараа нь боловсруулалт хийх эсвэл ердөө л хэтэрхий зовниж байгаа бол энэ нь ашигтай юм.

==== Шинэчлэхээсээ өмнө нөөцлөлтүүд хийх

Заримдаа та CTM шинэчлэлтээр өөрчлөгдөх бүх файлуудыг нөөцөлж авахыг хүсэж болох юм.

`-B backup-file` сонголтыг зааснаар CTM-ийг өгөгдсөн CTM дельтагаар хөндөгдөх бүх файлуудыг нөөцөлж [.filename]#backup-file# руу хадгалахад хүргэнэ.

==== Шинэчлэлтээр хөндөгдөх файлуудыг хязгаарлах

Заримдаа та өгөгдсөн CTM шинэчлэлтийн хүрээг хязгаарлах сонирхолтой эсвэл дельтануудын дарааллаас цөөн хэдэн файлуудыг задлах сонирхолтой байж болох юм.

CTM-ийн ажилладаг файлуудын жагсаалтыг та `-e` болон `-x` сонголтуудыг ашиглан шүүлт хийх регулар илэрхийллүүдийг заан хянаж болно.

Жишээ нь өөрийн хадгалсан CTM дельтануудын цуглуулгаас [.filename]#lib/libc/Makefile#-ийн хамгийн сүүлийн хуулбарыг задалж авахын тулд дараах тушаалуудыг ажиллуулна:

[source,shell]
....
# cd /where/ever/you/want/to/extract/it/
# ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
....

CTM дельтанд заагдсан файл бүрийн хувьд тушаалын мөрөнд өгөгдсөн дарааллаар `-e` болон `-x` сонголтуудыг өгсөн. Файл нь бүх `-e` болон `-x` сонголтууд түүнд өгөгдсөний дараа зөвхөн сонгогдох эрхтэй гэж тэмдэглэгдсэн бол CTM-ээр боловсруулагддаг.

=== CTM-ийн ирээдүйн төлөвлөгөөнүүд

Маш их:

* CTM-ийн хуурамч шинэчлэлтүүдийг илрүүлэхийн тулд CTM системд ямар нэгэн нэвтрэлт танилт ашиглах.
* CTM-ийн сонголтуудыг цэвэрлэх, тэдгээр нь толгой эргүүлэм, зөн совингийн эсрэг болсон.

=== Бусад зүйлс

`ports` цуглуулгад зориулсан дельтануудын дараалал бас байдаг боловч сонирхол тийм ч өндөр байдаггүй.

[[mirrors-ctm]]
=== CTM толин тусгалууд

<<ctm,CTM>>/FreeBSD нь дараах толин тусгал сайтууд дахь нэргүй FTP-ээр хандаж авах боломжтой байдаг. Хэрэв та CTM-г нэргүй FTP-ээр авахыг сонгосон бол өөртөө ойр сайтыг оролдож үзнэ үү.

Асуудал гарсан тохиолдолд link:{ctm-users-url}[ctm-users-desc] захидлын жагсаалтад хандана уу.

Калифорни, Bay Area, албан ёсны эх::

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

Өмнөд Африк, хуучин дельтануудад зориулсан нөөц сервер::

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

Тайвань/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/]

Хэрэв та өөртөө ойрхон толин тусгалыг олоогүй бол эсвэл толин тусгал нь бүрэн биш байгаа бол http://www.alltheweb.com/[alltheweb] зэрэг хайлтын системийг ашиглаад үзээрэй.

[[svn]]
== Subversion ашиглах нь

[[svn-intro]]
=== Танилцуулга

2012 оны 7 сараас FreeBSD-н бүх эх код, баримтжуулалт болон портын цуглуулгыг хадгалахдаа http://subversion.apache.org/[Subversion] (_svn_)-г үндсэн хувилбар удирдах систем болгон ашиглаж эхэлсэн.

[NOTE]
====
Subversion хөгжүүлэлтийн хэрэгсэл юм. Ихэнх хэрэглэгчид crossref:cutting-edge[updating-upgrading-freebsdupdate,FreeBSD-г шинэчлэх] хэсэгт зааснаар FreeBSD-н үндсэн системийг шинэчлэх ёстой бөгөөд FreeBSD-н портын цуглуулгыг шинэчлэхдээ crossref:cutting-edge[updating-upgrading-portsnap,Portsnap]-г ашиглах ёстой.
====

Subversion-д URL-г ашиглан репозиторыг заадаг бөгөөд `protocol://hostname/path` хэлбэрийн байна. Доор заасан шиг толин тусгалууд өөр өөр протоколуудыг дэмжиж болно. Замын эхний хэсэг нь хандаж болох FreeBSD-н репозитор юм. Гурван өөр репозитор байдаг: FreeBSD-н үндсэн системийн эх кодод зориулсан `base`, Портын цуглуулгад зориулсан `ports`, баримтжуулалтад зориулсан `doc` байдаг. Жишээ нь URL `svn://svn0.us-east.FreeBSD.org/ports/head/` нь svn протоколыг ашиглан `svn0.us-east.FreeBSD.org` толин дээрх портын репозиторын гол салбарыг зааж байна.

[[svn-install]]
=== Суулгах

Subversion-г аль ч репозиторын агуулгыг татаж авахаас өмнө суулгасан байх шаардлагатай. Хэрэв портын мод байгаа бол Subversion-г ингэж суулгаж болно:

[source,shell]
....
# cd /usr/ports/devel/subversion
# make install clean
....

Хэрэв портын мод байхгүй бол Subversion-г багц хэлбэрээр суулгаж болно:

[source,shell]
....
# pkg_add -r subversion
....

Хэрэв pkgng ашиглан багцыг удирддаг бол Subversion-г ингэж суулгана:

[source,shell]
....
# pkg install devel/subversion
....

[[svn-usage]]
=== Subversion-г ажиллуулах

Эхийн цэвэр хувилбарыг татаж локал сан руу авахад `svn` тушаалыг ашиглаж болно. Энэ санд байгаа файлуудыг _локал ажлын хувилбар_ гэдэг.

[WARNING]
====

Локал сан нь үүссэн боловч `svn` тушаалаар үүсгэгдээгүй бол татаж авахаасаа өмнө нэрийг солих юм уу устгаарай. `svn`-ээр үүсгэгдээгүй сан дээр татаж авах тохиолдолд татаж авч байгаа файлууд нь байгаа файлуудтай зөрөх асуудал үүсч болзошгүй.
====

Өгөгдсөн репозитороос татаж авахдаа энэ маягийн тушаалыг:

[source,shell]
....
# svn checkout svn-mirror/repository/branch lwcdir
....

гэж ажиллуулах бөгөөд:

* _svn-mirror_ нь <<svn-mirrors,Subversion толин сайтууд>> дахь аль нэгийн URL юм.
* _repository_ нь төслийн аль нэг репозитор бөгөөд жишээ нь `base`, `ports`, эсвэл `doc`.
* _branch_ нь ашиглаж байгаа репозитороос хамаарна. `ports` ба `doc` нь `head` салбарт ихэвчлэн шинэчлэгддэг бол `base` нь -CURRENT-н хамгийн сүүлийн хувилбарыг `head` дотор агуулж байдаг бөгөөд -STABLE салбарын сүүлийн хувилбарууд нь `stable/8` ( 8._x_) болон `stable/9` (9._x_) дотор байдаг.
* _lwcdir_ нь зааж өгсөн салбарын агуулга байрлах сан юм. Энэ нь ихэвчлэн `ports`-н хувьд [.filename]#/usr/ports#, `base`-н хувьд [.filename]#/usr/src#, `doc`-н хувьд [.filename]#/usr/doc# байдаг.

Энэ нь Портын цуглуулгыг АНУ-н баруунд байрлах репозитороос HTTPS протокол ашиглан локал ажлын хуулбарыг [.filename]#/usr/ports#-д санд байршуулж байгаа жишээ юм. Хэрэв [.filename]#/usr/ports# сан байгаа бөгөөд `svn`-ээр үүсгэгдээгүй бол өөрчлөх юм уу устгахаа мартуузай.

[source,shell]
....
# svn checkout https://svn0.us-west.FreeBSD.org/ports/head /usr/ports
....

Алсын репозиторын бүрэн салбарыг эхний удаа татаж авах учраас удаж магадгүй. Тэвчээртэй байгаарай.

Эхний удаа татсаныхаа дараа локал ажлын хуулбарыг шинэчлэхдээ:

[source,shell]
....
# svn update lwcdir
....

Дээрх жишээн дээр үүсгэсэн [.filename]#/usr/ports#-г шинэчлэхдээ:

[source,shell]
....
# svn update /usr/ports
....

Татаж авахаас шинэчлэх нь хурдан бөгөөд өөрчлөгдсөн файлуудыг л татаж авдаг.

Татаж авсныхаа дараа локал ажлын хуулбарыг шинэчлэх өөр нэг арга нь [.filename]#/usr/ports#, [.filename]#/usr/src#, ба [.filename]#/usr/doc# сангууд дахь [.filename]#Makefile#-д байдаг. `SVN_UPDATE`-г зааж өгөөд `update` гэж хэрэглэнэ. Жишээ нь [.filename]#/usr/src#-г шинэчлэхийн тулд:

[source,shell]
....
# cd /usr/src
# make update SVN_UPDATE=yes
....

=== Дэлгэрэнгүй мэдээлэл

Subversion ашиглах талаар бусад мэдээллийг http://svnbook.red-bean.com/[Version Control with Subversion] нэртэй "Subversion ном", эсвэл http://subversion.apache.org/docs/[Subversion баримтжуулалт]аас үзнэ үү.

[[svn-mirrors]]
== Subversion толин сайтууд

Бүх толин тусгалууд бүх репозиторыг агуулдаг.

FreeBSD-н мастер Subversion сервер `svn.FreeBSD.org`-д олон нийт хандах боломжтой байх бөгөөд зөвхөн уншигдах боломжтой байдаг. Энэ нь ирээдүйд өөрчлөгдөж болох бөгөөд хэрэглэгчдийг аль болох албан ёсны толин тусгалуудыг ашиглахыг зөвлөдөг. FreeBSD Subversion репозиториудыг хөтөч ашиглан харахын тулд http://svnweb.FreeBSD.org/[http://svnweb.FreeBSD.org/] хаягийг ашиглаарай.

[NOTE]
====
FreeBSD svn толин тусгалын сүлжээ нь эхний шатандаа байгаа бөгөөд өөрчлөгдөх магадлалтай. Эдгээр толин тусгалуудыг статик гэж тооцоолж болохгүй. Ялангуяа серверүүдийн SSL сертификатууд хэзээ нэг цагт шинэчлэгдэх болно.
====

[.informaltable]
[cols="1,1,1,1", options="header"]
|===
| Нэр
| Протоколууд
| Байрлал
| SSL хээ

|`svn0.us-west.FreeBSD.org`
|svn, http://svn0.us-west.FreeBSD.org/base/[http], https://svn0.us-west.FreeBSD.org/base/[https]
|USA, California
|SHA1 `79:35:8F:CA:6D:34:D9:30:44:D1:00:AF:33:4D:E6:11:44:4D:15:EC`

|`svn0.us-east.FreeBSD.org`
|svn, http://svn0.us-east.FreeBSD.org/base/[http], https://svn0.us-east.FreeBSD.org/base/[https]
|USA, New Jersey
|SHA1 `06:D1:23:DE:5E:7A:F7:2B:7A:7E:74:95:5F:54:8D:5C:B0:D6:2E:8F`
|===

HTTPS нь FreeBSD толин тусгалыг хуурамчаар дуурайх ("man in the middle" халдлага гэгддэг) эсвэл эцсийн хэрэглэгч рүү муу агуулга шидэх зэргээс хамгаалах боломжтой ашиглахыг зөвлөдөг протокол юм.

HTTPS толин тусгал руу хийх эхний холболтын үеэр хэрэглэгчээс серверийн _fingerprint_-г асуудаг:

[source,shell]
....
Error validating server certificate for 'https://svn0.us-west.freebsd.org:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
Certificate information:
 - Hostname: svnmir.ysv.FreeBSD.org
 - Valid: from Fri, 24 Aug 2012 22:04:04 GMT until Sat, 24 Aug 2013 22:04:04 GMT
 - Issuer: clusteradm, FreeBSD.org, CA, US
 - Fingerprint: 79:35:8f:ca:6d:34:d9:30:44:d1:00:af:33:4d:e6:11:44:4d:15:ec
(R)eject, accept (t)emporarily or accept (p)ermanently?
....

Fingerprint-г дээрх хүснэгттэй харьцуулж хараарай. Хэрэв хурууны хээ таарч байгаа бол серверийн аюулгүй байдлын сертификатыг түр эсвэл бүрмөсөн зөвшөөрч болно. Түр зуурын сертификат нь сервертэй хийх нэг удаагийн сессээр дуусгавар болох бөгөөд дараагийн удаа шалгах алхам дахин хийгдэх болно. Сертификатыг бүрмөсөн зөвшөөрснөөр нэвтрэх эрхийг [.filename]#~/.subversion/auth/# санд хадгалж сертификатын хугацаа дуустал хэрэглэгчээс хурууны хээг дахин шалгахыг асуудаггүй.

Хэрэв HTTPS-г галт хана эсвэл бусад асуудлаас болоод хэрэглэх боломжгүй бол арай илүү хурдан `SVN` дараагийн сонголт байж болох юм. Алийг ч ашиглах боломжгүй бол HTTP-г ашиглаарай.

[[cvsup]]
== CVSup-г ашиглах нь (хуучирсан)

[[cvsup-intro]]
=== Танилцуулга

[WARNING]
====

CVS нь төслийн хувьд хуучирсан бөгөөд ашиглахыг зөвлөдөггүй. Түүний оронд Subversion-г ашиглах ёстой.
====

CVSup нь алсын сервер хост дээр байгаа мастер CVS архиваас эх модыг шинэчлэх болон түгээхэд зориулагдсан програм хангамжийн багц юм. FreeBSD-ийн эхүүд Калифорни дахь төв хөгжүүлэлтийн машин дээрх CVS архивт арчлагдаж байдаг. CVSup-ийн тусламжтай FreeBSD хэрэглэгчид өөрсдийн эх модыг хялбараар хамгийн сүүлийн хэлбэрт аваачиж чаддаг байна.

CVSup нь шинэчлэлтийн _pull_ буюу _татах_ загварыг ашигладаг. Татах загвар дээр клиент бүр серверээс шинэчлэлтийг хүссэн үедээ эсвэл хэрэгтэй үедээ асуудаг. Сервер нь өөрийн хэрэглэгчдээс ирэх хүсэлтүүдийг идэвхгүйгээр хүлээж байдаг. Сервер хэзээ ч хүсээгүй шинэчлэлтүүдийг илгээдэггүй. Хэрэглэгчид нь шинэчлэлтийг авахын тулд CVSup клиентийг гараар ажиллуулах юм уу эсвэл түүнийг автоматаар давтамжтайгаар ажиллуулахын тулд `cron` ажил тохируулах ёстой болно.

Ингэж том үсгээр бичсэн CVSup ухагдахуун нь бүхэл програм хангамжийн багцыг хэлнэ. Түүний гол бүрэлдэхүүн хэсгүүд нь хэрэглэгч бүрий машин дээр ажилладаг `cvsup` клиент, ба FreeBSD-ийн толин тусгал сайтууд дээр ажиллаж байдаг `cvsupd` сервер юм.

[NOTE]
====
csup хэрэгсэл нь CVSup-г C дээр бичсэн хувилбар юм. Үүний хамгийн том давуу тал бол илүү хурдан бөгөөд Modula-3 хэлээс хамаардаггүй, тиймээс та түүнийг суулгах шаардлагагүй байдаг. Мөн түүнийг шууд ашиглаж болно, учир нь энэ нь үндсэн системд орсон байдаг. Хэрэв та csup-г ашиглахаар шийдсэн бол CVSup-ийн суулгалт дахь алхмуудыг алгасаж энэ нийтлэлийн үлдсэн хэсгийг дагаж байхдаа CVSup гэснийг csup болгож солиорой.
====

[[cvsup-install]]
=== Суулгалт

CVSup-г суулгах хамгийн хялбар арга бол FreeBSD-ийн crossref:ports[ports,багцын цуглуулга]ас урьдчилан эмхэтгэсэн package:net/cvsup[] багцыг ашиглах явдал юм. Хэрэв та CVSup-г эхээс бүтээхийг эрхэмлэж байгаа бол package:net/cvsup[] портыг ашиглаарай. Гэхдээ урьдчилан анхааруулъя: package:net/cvsup[] порт нь Modula-3 системээс хамаардаг бөгөөд үүнийг татан авч суулгахад ихээхэн хэмжээний дискний зай болон хугацаа шаарддаг.

[NOTE]
====
Хэрэв та Xorg суулгагдаагүй сервер машин дээр CVSup-г ашиглах гэж байгаа бол CVSupGUI-г агуулаагүй package:net/cvsup-without-gui[] портыг ашиглах хэрэгтэй.
====

[[cvsup-config]]
=== CVSup тохиргоо

CVSup-ийн ажиллагаа [.filename]#supfile# гэгддэг тохиргооны файлаар хянагддаг. link:file://localhost/usr/shared/examples/cvsup/[/usr/shared/examples/cvsup/] санд зарим жишээ [.filename]#supfiles# байдаг.

[.filename]#supfile# дахь мэдээлэл CVSup-д зориулж дараах асуултуудад хариулдаг:

* <<cvsup-config-files,Ямар файлуудыг та хүлээн авахыг хүсэж байна вэ?>>
* <<cvsup-config-vers,Тэдгээрийн ямар хувилбаруудыг та хүсэж байна вэ?>>
* <<cvsup-config-where,Тэдгээрийг та хаанаас авахыг хүсэж байна вэ?>>
* <<cvsup-config-dest,Та тэдгээрийг өөрийн машиныхаа хаана байрлуулахыг хүсэж байна вэ?>>
* <<cvsup-config-status,Та өөрийн төлвийн файлуудыг хаана байрлуулахыг хүсэж байна вэ?>>

Дараах хэсгүүдэд бид эдгээр асуултуудад хариулан түгээмэл [.filename]#supfile#-г бүтээх болно. Эхлээд бид [.filename]#supfile#-ийн ерөнхий бүтцийг тайлбарлах болно.

[.filename]#supfile# нь текст файл юм. Тайлбарууд нь `#` тэмдэгтээс эхэлж мөр дуустал үргэлжилнэ. Хоосон мөрнүүд болон зөвхөн тайлбараас тогтох мөрүүдийг орхидог.

Үлдэж байгаа мөр болгон хэрэглэгчийн авахыг хүсэж байгаа файлуудын цуглуулгыг тайлбарладаг. Мөр нь файлуудын "цуглуулга" буюу файлуудын логик бүлэглэлийн нэрээс эхэлдэг бөгөөд эдгээрийг сервер тодорхойлдог. Цуглуулгын нэр таны аль файлуудыг хүсэж байгааг серверт хэлдэг. Цуглуулгын нэрийн дараа талбарууд байхгүй эсвэл байж болох бөгөөд зайгаар тусгаарлагдсан байна. Эдгээр талбарууд нь дээрх асуултуудад хариулдаг. Хоёр төрлийн талбар байдаг: тугны талбарууд ба утгын талбарууд. Тугны талбар нь ганцаараа байгаа түлхүүр үгнээс тогтдог, өөрөөр хэлбэл `delete` эсвэл `compress` байна. Утгын талбар нь бас түлхүүр үгээс эхлэх боловч хоосон зайгаар тусгаарлагдалгүйгээр `=` болон хоёр дахь үгээс тогтоно. Жишээ нь `release=cvs` нь утгын талбар юм.

[.filename]#supfile# ихэвчлэн нэгээс илүү цуглуулгыг хүлээн авахаар заасан байдаг. [.filename]#supfile#-г зохион байгуулах нэг арга нь цуглуулга бүрийн хувьд харгалзах бүх талбаруудыг зааж өгөх явдал юм. Гэхдээ энэ нь [.filename]#supfile#-ий мөрүүдийг нэлээн урт болгодог бөгөөд [.filename]#supfile# дахь цуглуулгуудын бүгдийн хувьд ихэнх талбарууд нь ижил байдаг болохоор таагүй юм. CVSup нь эдгээр асуудлуудыг тойрон гарах анхдагч болгох арга замтай байдаг. Тусгай псевдо цуглуулгын нэр `*default`-р эхэлсэн мөрүүд нь тугнууд болон [.filename]#supfile# дахь дараа дараачийн цуглуулгуудын хувьд анхдагч болж ашиглагдах утгуудыг заахад хэрэглэгддэг. Анхдагч утгыг цуглуулгатай цуг өөр утгыг заан өгч тухайн цуглуулгын хувьд өөрчилж болдог. Анхдагчуудыг дундын supfile-д нэмэлт `*default` мөрүүдээр өөрчилж эсвэл дарж болдог.

Ийм мэдээлэлтэйгээр бид одоо crossref:cutting-edge[current,FreeBSD-CURRENT]-ийн гол эх модыг хүлээн авч шинэчлэхэд зориулсан [.filename]#supfile#-г бүтээх болно.

* [[cvsup-config-files]]Ямар файлуудыг та хүлээн авахыг хүсэж байна вэ?
+ 
CVSup-аар авах боломжтой файлууд нь "collections" буюу цуглуулгууд гэгддэг бүлгүүдэд хуваагдан зохион байгуулагддаг. Байгаа цуглуулгууд нь crossref:cutting-edge[cvsup-collec,дараах хэсэгт] тайлбарлагдсан байгаа. Энэ жишээн дээр бид FreeBSD-ийн хувьд бүх гол эхийг авахыг хүсэж байна. `src-all` гэсэн ганц том цуглуулга бидэнд үүнийг өгөх болно. [.filename]#supfile#-аа бүтээх эхний алхам болгож бид цуглуулгуудыг нэг мөрөнд нэгийг тавьж жагсаана (энэ тохиолдолд зөвхөн нэг мөр байна):
+
[.programlisting]
....
src-all
....

* [[cvsup-config-vers]]Тэдгээрийн ямар хувилбаруудыг та хүсэж байна вэ?
+ 
CVSup-ийн тусламжтай та хэзээ ч юм байсан эхүүдийн бараг ямар ч хувилбарыг хүлээн авч чадна. cvsupd сервер нь бүх хувилбаруудыг агуулсан CVS архиваас шууд ажилладаг болохоор энэ нь боломжтой юм. Та тэдгээрийн алийг хүсэж байгаагаа `tag=` болон `date=` утга талбаруудыг ашиглан зааж өгч болно.
+
[WARNING]
====

`tag=` талбарыг зөв зааж өгөхдөө анхааралтай байх хэрэгтэй. Зарим хаягууд нь зөвхөн файлуудын зарим цуглуулгуудын хувьд зөв байдаг. Хэрэв та буруу эсвэл буруу бичсэн хаягийг зааж өгөх юм бол магадгүй таны устгахыг хүсээгүй файлуудыг CVSup нь устгах юм. Ялангуяа `ports-*` цуглуулгуудын хувьд _зөвхөн_ `tag=.`-г ашиглаарай.
====
+ 
`tag=` талбар нь симболын хаягийг архивт нэрлэдэг. Хоёр төрлийн хаяг байдаг бөгөөд эдгээр нь залруулалтын хаягууд болон салбарын хаягууд юм. Залруулалтын хаяг нь тухайн нэг залруулалтыг заадаг. Үүний утга нь өдрөөс өдөрт ижил хэвээр байна. Нөгөө талаас салбарын хаяг нь ямар ч үед хөгжүүлэлтийн өгөгдсөн шугам дахь хамгийн сүүлийн залруулалтыг заадаг. Салбарын хаяг нь тухайн нэг залруулалтыг заадаггүй болохоор үүний маргаашийн утга нь өнөөдрийнхөөс өөр байж болох юм.
+ 
<<cvs-tags>> нь хэрэглэгчдийн сонирхож болох салбарын хаягуудыг агуулдаг. CVSup-ийн тохиргооны файлд хаягийг зааж өгөхдөө өмнө нь `tag=` гэж өгөх ёстой (`RELENG_8` нь `tag=RELENG_8` болно). Зөвхөн `tag=.` нь портын цуглуулгад хамааралтай болохыг санаарай.
+
[WARNING]
====

Хаягийн нэрийг яг үзүүлсэн шиг бичихдээ анхааралтай байгаарай. CVSup нь зөв болон буруу хаягуудыг ялгаж чаддаггүй. Хэрэв та хаягийг буруу бичвэл CVSup нь таныг зөв хаяг өгсөн гэж ойлгон ажиллах бөгөөд энэ нь ямар ч файлуудыг заагаагүйд хүргэж болох юм. Энэ тохиолдолд энэ нь танд байгаа эхүүдийг устгах болно.
====
+ 
Салбарын хаягийг заахад та тэр хөгжүүлэлтийн шугамын файлуудын хамгийн сүүлийн хувилбаруудыг авах болно. Хэрэв та ямар нэг өнгөрсөн хувилбарыг авахыг хүсвэл `date=` талбарт огноог заан хийж өгч болно. man:cvsup[1] гарын авлагын хуудас үүнийг хэрхэн хийхийг тайлбарладаг.
+ 
Бидний жишээний хувьд FreeBSD-CURRENT-г авахыг бид хүсэж байна. Бид энэ мөрийг өөрсдийн [.filename]#supfile#-ийн эхэнд нэмнэ:
+
[.programlisting]
....
*default tag=.
....
+ 
Хэрэв та `tag=` талбар эсвэл `date=` талбарын алийг ч зааж өгөөгүй бол чухал тусгай тохиолдол гарч ирнэ. Энэ тохиолдолд тодорхой нэг хувилбарыг хүлээн авахын оронд серверийн CVS архиваас RCS файлуудыг шууд хүлээн авдаг. Ажиллагааны ийм горимыг хөгжүүлэгчид ерөнхийдөө эрхэмлэдэг. Өөрсдийн системүүд дээр архивын хуулбарыг арчилснаар тэд залруулалтын түүхийг хайж файлуудын өнгөрсөн хувилбаруудыг шалгах боломжтой болох юм. Гэхдээ энэ хонжоо нь дискний зайны хувьд их өртөгтэйгээр орж ирдэг.
* [[cvsup-config-where]]Тэдгээрийг та хаанаас авахыг хүсэж байна вэ?
+ 
Бид `host=` талбарыг ашиглан `cvsup`-д өөрийн шинэчлэлтүүдийг хаанаас авахыг хэлж өгдөг. <<cvsup-mirrors,CVSup толин тусгал сайтууд>>ын аль нь ч болох боловч та өөрийн кибер ертөнцдөө ойрхныг турших хэрэгтэй. Энэ жишээн дээр бид зохиомол FreeBSD түгээлтийн сайт `cvsup99.FreeBSD.org`-г ашиглах болно:
+
[.programlisting]
....
*default host=cvsup99.FreeBSD.org
....
+ 
Та CVSup-г ашиглахаасаа өмнө үнэн хэрэг дээрээ байгаа жинхэнэ хостоор солих хэрэгтэй болно. `cvsup`-г ажиллуулах үедээ та хостын тохируулгыг тушаалын мөрөөс `-h _hostname_` сонголтоор өөрчлөн дарж болно.
* [[cvsup-config-dest]]Та тэдгээрийг өөрийн машиныхаа хаана байрлуулахыг хүсэж байна вэ?
+ 
`prefix=` талбар нь хүлээн авсан файлуудыг хаана байрлуулахыг `cvsup` хэлнэ. Энэ жишээн дээр бид эх файлуудыг өөрсдийн гол эх модны [.filename]#/usr/src# байрлалд шууд байрлуулах болно. [.filename]#src# сан нь бидний хүлээн авахаар сонгосон цуглуулгад далд байгаа болохоор энэ нь зөв юм:
+
[.programlisting]
....
*default prefix=/usr
....

* [[cvsup-config-status]]`cvsup` өөрийн төлвийн файлуудыг хаана арчлах ёстой вэ?
+ 
CVSup клиент нь "base" буюу үндсэн гэгддэг сан дахь зарим төлвийн файлуудыг арчилж байдаг. Эдгээр файлууд нь ямар шинэчлэлтүүдийг та аль хэдийн хүлээн авсныг хянаж CVSup-ийг илүү үр ашигтай ажиллахад тусалдаг. Бид стандарт үндсэн сан [.filename]#/var/db#-г ашиглах болно:
+
[.programlisting]
....
*default base=/var/db
....
+ 
Хэрэв таны үндсэн сан байхгүй байгаа бол одоо түүнийг үүсгэх хугацаа болсон байна. Хэрэв үндсэн сан байхгүй бол `cvsup` ажиллахаас татгалзах болно.
* [.filename]#supfile#-ийн бусад тохиргоонууд:
+ 
[.filename]#supfile#-д ерөнхийдөө байх ёстой бас нэг мөр байдаг:
+
[.programlisting]
....
*default release=cvs delete use-rel-suffix compress
....
+ 
`release=cvs` нь сервер гол FreeBSD CVS архиваас өөрийн мэдээллийг авах ёстойг зааж байна. Энэ нь бараг үргэлж тохиолддог, хэдийгээр бусад боломжууд байдаг боловч энэ хэлэлцүүлгийн хүрээнээс хальдаг.
+ 
`delete` нь CVSup-д файлууд устгах зөвшөөрөл өгдөг. CVSup нь таны эх модыг байнга хамгийн сүүлийн хэлбэрт байлгадаг байхын тулд та үүнийг үргэлж зааж өгөх хэрэгтэй. CVSup нь өөрийн хариуцдаг зөвхөн тэр файлуудыг устгах тал дээр их анхааралтай ажилладаг. Танд байж болох нэмэлт файлууд тэр хэвээрээ үлддэг.
+ 
`use-rel-suffix` нь ... ойлгоход төвөгтэй юм. Хэрэв та үүний тухай жинхэнээсээ мэдье гэж хүсэж байгаа бол man:cvsup[1] гарын авлагын хуудаснаас үзнэ үү. Хэрэв тийм биш бол ердөө заагаад л тэгээд санаа зовох хэрэггүй юм.
+ 
`compress` нь холбооны суваг дээр gzip загварын шахалтын хэрэглээг идэвхжүүлдэг. Хэрэв таны сүлжээний холболт T1 эсвэл түүнээс хурдан бол та магадгүй шахалтыг ашиглах хэрэггүй юм. Хэрэв үгүй бол энэ нь бодитойгоор тусалдаг.
* Бүгдийг нийлүүлбэл:
+ 
Энд бидний жишээнд зориулсан бүхэл [.filename]#supfile# байна:
+
[.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]]
==== [.filename]#refuse# файл

Дээр дурдсанаар CVSup нь _татах аргыг_ ашигладаг. Энэ нь юу гэсэн үг вэ гэхээр та CVSup сервер руу холбогдох бөгөөд энэ нь "Над дээрээс татаж авах боломжтой зүйлс энэ байна..." гэж хэлэх бөгөөд таны клиент "OK, Би энэ,энэ, энийг авна." гэж хариулна гэсэн үг юм. Анхдагч тохиргоон дээр CVSup клиент нь таны тохиргооны файлд сонгосон хаяг болон цуглуулгатай холбоотой бүх файлыг авна. Модыг хэсэгчлэн татахын тулд [.filename]#refuse#-г ашиглана.

[.filename]#refuse# файл нь үндсэндээ CVSup-д цуглуулгаас файл болгоныг татаж авахгүй гэдгийг хэлдэг; өөрөөр хэлбэл клиентэд серверээс зарим файлууд татаж авахаас _татгалзахыг_ хэлж өгдөг. [.filename]#refuse# файл нь [.filename]#base/sup/# сангаас олдож болно (эсвэл хэрэв танд ийм файл байхгүй байгаа бол түүнийг дээрх санд байрлуулах хэрэгтэй). _base_ нь таны [.filename]#supfile#-д тодорхойлогдсон байдаг; бидний тодорхойлсон _base_ нь [.filename]#/var/db# бөгөөд энэ нь анхдагчаар [.filename]#refuse# файл нь [.filename]#/var/db/sup/refuse# гэсэн үг юм.

[.filename]#refuse# файл нь маш хялбар хэлбэршилттэй байдаг; энэ нь таны татаж авахыг хүсээгүй файлууд эсвэл сангуудын нэрийг агуулдаг. Жишээ нь:

[.programlisting]
....
bin/
usr.bin/
....

Удаан холболттой юм уу эсвэл өөрсдийн Интернэтийн холболтод минутаар төлдөг хэрэглэгчид үнэ цэнэтэй хугацаагаа хэмнэх болно. Учир нь тэд өөрсдийн хэзээ ч ашиглахгүй файлаа татаж авах шаардлагагүй болох юм. CVSup-ийн [.filename]#refuse# файлууд болон бусад сайхан боломжуудын талаар илүү мэдээллийг түүний гарын авлагын хуудаснаас үзнэ үү.

=== CVSup-г ажиллуулах нь

Одоо та шинэчлэлт хийж үзэхэд бэлэн боллоо. Үүнийг хийх тушаалын мөр их амархан:

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

энд байгаа [.filename]#supfile# нь таны дөнгөж үүсгэсэн [.filename]#supfile#-ийн нэр юм. Таныг X11 дээр ажиллаж байна гэж үзвэл `cvsup` нь энгийн зүйлсийг хийх зарим товчлууруудтай GUI цонхыг үзүүлэх болно. btn[go] товчлуурыг дарж ажиллахыг нь хараарай.

Та энэ жишээн дээр өөрийн жинхэнэ [.filename]#/usr/src# модыг шинэчилж байгаа болохоор `cvsup` нь таны файлуудыг шинэчлэхэд шаардлагатай зөвшөөрлүүдтэй байхын тулд та програмыг `root` эрхээс ажиллуулах хэрэгтэй болно. Өөрийн тохиргооны файлыг дөнгөж үүсгэсэн бөгөөд урьд нь энэ програмыг хэзээ ч ашиглаж байгаагүй бол таныг бухимдуулж магадгүй юм. Өөрийн файлуудыг хөндөлгүйгээр туршилтын журмаар ажиллуулах хялбар арга байдаг. Хаа нэгтээ хоосон сан үүсгээд түүнийг тушаалын мөрөнд нэмэлт өгөгдлөөр оруулж өгнө:

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

Таны заасан сан бүх файлын шинэчлэлтүүдийн хувьд очих сан болдог. CVSup нь [.filename]#/usr/src# сан доторх таны энгийн файлуудыг шалгадаг, гэхдээ тэдгээрийн алийг ч өөрчлөх буюу устгахгүй. Файлын шинэчлэлтүүд харин [.filename]#/var/tmp/dest/usr/src# санд хийгдэнэ. CVSup нь ингэж ажиллахдаа бас өөрийн үндсэн сангийн төлвийн файлуудыг өөрчлөлгүйгээр үлдээдэг. Тэдгээр файлуудын шинэ хувилбарууд заагдсан сан уруу бичигдэх болно. Танд [.filename]#/usr/src# сан уруу унших эрх л байхад иймэрхүү туршилтын ажиллагааг гүйцэтгэхэд `root` эрх байх заавал шаардлагагүй юм.

Хэрэв та X11-г ажиллуулахгүй байгаа юм уу эсвэл танд GUI таалагддаггүй бол `cvsup`-г ажиллуулахдаа тушаалын мөрөн дээр хоёр сонголтыг нэмж өгөх хэрэгтэй:

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

`-g` сонголт нь CVSup-д өөрийн GUI-г ашиглахгүйг хэлнэ. Хэрэв та X11-ийг ажиллуулахгүй байгаа бол энэ автомат байдаг, үгүй бол та үүнийг зааж өгөх хэрэгтэй.

`-L 2` нь CVSup-д хийж байгаа бүх шинэчлэлтүүдийнхээ талаар дэлгэрэнгүй мэдээллийг үзүүлэхийг хэлж өгнө. Гурван түвшний харуулах горим байдаг бөгөөд энэ нь `-L 0`-с `-L 2` хүртэл байна. Анхдагч нь 0 байх бөгөөд энэ нь алдааны мэдэгдлээс бусдыг харуулахгүй.

Бусад олон сонголтууд байдаг. Тэдгээрийн товч жагсаалтыг үзэхийн тулд `cvsup -H` гэж бичнэ. Илүү дэлгэрэнгүй тайлбаруудын талаар гарын авлагын хуудсыг үзнэ үү.

Шинэчлэлт ажилладаг аргад сэтгэл ханамжтай болсныхоо дараа та CVSup-г давтамжтайгаар ажиллуулахын тулд man:cron[8] ашиглан хийж өгч болно. Мэдээж та man:cron[8]-с CVSup-г ажиллуулахдаа өөрийнхөө GUI-г ашиглахгүй болгох хэрэгтэй.

[[cvsup-collec]]
=== CVSup-ийн файлын цуглуулгууд

CVSup-ийн файлын цуглуулгууд нь шатлалтайгаар зохион байгуулагдсан байдаг. Цөөн том цуглуулгууд байдаг бөгөөд тэдгээр нь арай жижиг дэд цуглуулгуудад хуваагддаг. Том цуглуулгыг хүлээн авах нь түүний дэд цуглуулгууд тус бүрийг хүлээн авахтай адил юм. Цуглуулга хоорондын шаталсан холбоонууд нь доорх жагсаалт дахь догол ашиглалтаар тусгагддаг.

Хамгийн түгээмэл хэрэглэгддэг цуглуулгууд нь `src-all` юм.

`cvs-all release=cvs`::
Криптограф кодыг оролцуулаад FreeBSD-ийн гол CVS архив.

`distrib release=cvs`:::
FreeBSD-ийн түгээлт болон толин тусгал хийхтэй холбоотой файлууд.

`projects-all release=cvs`:::
FreeBSD төслийн архив дахь эхүүд.

`src-all release=cvs`:::
Криптограф кодыг оролцуулаад FreeBSD-ийн гол эхүүд.

`src-base release=cvs`::::
[.filename]#/usr/src# сангийн дээр байрлах бусад файлууд.

`src-bin release=cvs`::::
Ганц хэрэглэгчийн горимд хэрэг болох хэрэглэгчийн багажууд ([.filename]#/usr/src/bin#).

`src-cddl release=cvs`::::
CDDL лицензийн доор байдаг хэрэгслүүд болон сангууд ([.filename]#/usr/src/cddl#).

`src-contrib release=cvs`::::
Харьцангуй өөрчлөлтгүйгээр хэрэглэгддэг FreeBSD төслөөс гаднах хэрэгслүүд ба сангууд ([.filename]#/usr/src/contrib#).

`src-crypto release=cvs`::::
Харьцангуй өөрчлөлтгүйгээр хэрэглэгддэг FreeBSD төслөөс гаднах криптограф хэрэгслүүд ба сангууд ([.filename]#/usr/src/crypto#).

`src-eBones release=cvs`::::
Kerberos ба DES ([.filename]#/usr/src/eBones#). FreeBSD-ийн одоогийн хувилбаруудад ашигладаггүй.

`src-etc release=cvs`::::
Системийн тохиргооны файлууд ([.filename]#/usr/src/etc#).

`src-games release=cvs`::::
Тоглоомууд ([.filename]#/usr/src/games#).

`src-gnu release=cvs`::::
GNU Нийтийн Лицензтэй хэрэгслүүд ([.filename]#/usr/src/gnu#).

`src-include release=cvs`::::
Толгой файлууд ([.filename]#/usr/src/include#).

`src-kerberos5 release=cvs`::::
Kerberos5 аюулгүй байдлын багц ([.filename]#/usr/src/kerberos5#).

`src-kerberosIV release=cvs`::::
KerberosIV аюулгүй байдлын багц ([.filename]#/usr/src/kerberosIV#).

`src-lib release=cvs`::::
Сангууд ([.filename]#/usr/src/lib#).

`src-libexec release=cvs`::::
Бусад програмуудаар ажилладаг системийн програмууд ([.filename]#/usr/src/libexec#).

`src-release release=cvs`::::
FreeBSD хувилбар гаргахад шаардагдах файлууд ([.filename]#/usr/src/release#).

`src-rescue release=cvs`::::
Яаралтай сэргээлт хийхэд зориулсан статикаар холболт хийгдсэн програмууд; man:rescue[8]-г үзнэ үү ([.filename]#/usr/src/rescue#).

`src-sbin release=cvs`::::
Ганц хэрэглэгчийн горимд зориулсан системийн хэрэгслүүд ([.filename]#/usr/src/sbin#).

`src-secure release=cvs`::::
Криптограф сангууд ба тушаалууд ([.filename]#/usr/src/secure#).

`src-share release=cvs`::::
Олон системүүдийн хооронд хуваалцаж болох файлууд ([.filename]#/usr/src/share#).

`src-sys release=cvs`::::
Цөм ([.filename]#/usr/src/sys#).

`src-sys-crypto release=cvs`::::
Цөмийн криптограф код ([.filename]#/usr/src/sys/crypto#).

`src-tools release=cvs`::::
FreeBSD-г арчлахад зориулсан төрөл бүрийн хэрэгслүүд ([.filename]#/usr/src/tools#).

`src-usrbin release=cvs`::::
Хэрэглэгчийн хэрэгслүүд ([.filename]#/usr/src/usr.bin#).

`src-usrsbin release=cvs`::::
Системийн хэрэгслүүд ([.filename]#/usr/src/usr.sbin#).

`distrib release=self`::
CVSup серверийн өөрийн тохиргооны файлууд. CVSup толин тусгал сайтуудад хэрэглэгддэг.

`gnats release=current`::
GNATS алдаа мөрдөх мэдээллийн бааз.

`mail-archive release=current`::
FreeBSD захидлын жагсаалтын архив.

=== Дэлгэрэнгүй мэдээллийг

CVSup FAQ болон бусад CVSup-ийн тухай мэдээллийг http://www.cvsup.org[ CVSup гэрийн хуудас] хаягаас үзнэ үү.

Ихэнх FreeBSD-тэй холбоотой CVSup-ийн хэлэлцүүлэг {freebsd-hackers}-д болдог. Програмын шинэ хувилбар тэнд, бас {freebsd-announce}-д зарлагддаг.

CVSup-ийн талаар асуултууд эсвэл алдааны тайлангуудыг http://www.cvsup.org/faq.html#bugreports[ CVSup FAQ] холбоосоос үзнэ үү.

[[cvsup-mirrors]]
=== CVSup сайтууд

FreeBSD-д зориулсан <<cvsup,CVSup>> серверүүд дараах хаягууд дээр ажиллаж байгаа:

[[cvs-tags]]
== CVS Tags буюу хаягууд

[WARNING]
====

CVS нь төслийн хувьд хуучирсан бөгөөд ашиглахыг зөвлөдөггүй. Түүний оронд Subversion-г ашиглах ёстой.
====

cvs эсвэл CVSup ашиглан эхийг авах юм уу эсвэл шинэчилж байгаа үед revision tag буюу залруулалтын хаягийг зааж өгөх ёстой байдаг. Залруулалтын хаяг нь FreeBSD хөгжүүлэлтийн тодорхой нэг байх юм уу эсвэл хугацааны тодорхой нэг цэг байдаг. Эхнийх нь "branch tags" буюу "салбарын хаягууд" гэгддэг бөгөөд хоёр дахь нь "хувилбарын хаягууд" гэгддэг.

=== Салбарын хаягууд

`HEAD`-с (энэ нь үргэлж зөв хаяг байдаг) бусад бүх хаягууд зөвхөн [.filename]#src/# модонд хамаардаг. [.filename]#ports/#, [.filename]#doc/#, болон [.filename]#www/# моднууд нь салбарладаггүй.

HEAD::
Гол шугамын симболын нэр, эсвэл FreeBSD-CURRENT. Залруулалт заагаагүй тохиолдолд бас анхдагч байдаг.
+
CVSup-д энэ хаяг нь `.` гэсэн тэмдэгтээр илэрхийлэгддэг (цэг биш харин `.` тэмдэгт).
+
[NOTE]
====
CVS-д энэ нь залруулалт заагаагүй тохиолдолд анхдагч байдаг. Хэрэв та өөрөө хүсээгүй л бол STABLE машин дээр CURRENT эхийг татан авч шинэчлэх нь ихэвчлэн тийм ч сайн санаа _биш_ юм.
====

RELENG_9::
FreeBSD-9.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 8-STABLE гэгддэг

RELENG_9_0::
FreeBSD-9.0-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_8::
FreeBSD-8.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 8-STABLE гэгддэг

RELENG_8_3::
FreeBSD-8.3-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_8_2::
FreeBSD-8.2-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_8_1::
FreeBSD-8.1-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_8_0::
FreeBSD-8.0-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_7::
FreeBSD-7.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 7-STABLE гэгддэг

RELENG_7_4::
FreeBSD-7.4-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_7_3::
FreeBSD-7.3-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_7_2::
FreeBSD-7.2-т зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_7_1::
FreeBSD-7.1-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_7_0::
FreeBSD-7.0-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_6::
FreeBSD-6.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 6-STABLE гэгддэг

RELENG_6_4::
FreeBSD-6.4-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_6_3::
FreeBSD-6.3-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_6_2::
FreeBSD-6.2-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_6_1::
FreeBSD-6.1-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_6_0::
FreeBSD-6.0-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5::
FreeBSD-5.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 5-STABLE гэгддэг.

RELENG_5_5::
FreeBSD-5.5-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5_4::
FreeBSD-5.4-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5_3::
FreeBSD-5.3-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5_2::
FreeBSD-5.2 болон FreeBSD-5.2.1-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5_1::
FreeBSD-5.1-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_5_0::
FreeBSD-5.0-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4::
FreeBSD-4.X-д зориулсан хөгжүүлэлтийн шугам, бас FreeBSD 4-STABLE гэгддэг.

RELENG_4_11::
FreeBSD-4.11-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_10::
FreeBSD-4.10-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_9::
FreeBSD-4.9-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_8::
FreeBSD-4.8-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_7::
FreeBSD-4.7-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_6::
FreeBSD-4.6 болон FreeBSD-4.6.2-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_5::
FreeBSD-4.5-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_4::
FreeBSD-4.4-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_4_3::
FreeBSD-4.3-д зориулсан хувилбарын салбар, аюулгүй байдлын зөвлөгөөнүүд болон бусад чухал засваруудад зориулж зөвхөн ашиглагддаг.

RELENG_3::
FreeBSD-3.X-д зориулсан хөгжүүлэлтийн шугам, бас 3.X-STABLE гэгддэг.

RELENG_2_2::
FreeBSD-2.2.X-д зориулсан хөгжүүлэлтийн шугам, бас 2.2-STABLE гэгддэг. Энэ салбар нь гол төлөв хуучирсан.

=== Хувилбарын хаягууд

Эдгээр хаягууд нь FreeBSD-ийн тодорхой нэг хувилбар гарсан үеийн цагийн тодорхой цэгийг заадаг. Хувилбар инженерчлэлийн процессийн талаар link:https://www.FreeBSD.org/releng/[Хувилбар инженерчлэлийн мэдээлэл] болон extref:{releng}[Хувилбарын процесс, release-proc] баримтуудад илүү дэлгэрэнгүй баримтжуулагдсан байдаг. [.filename]#src# мод нь `RELENG_` гэж эхэлсэн хаягийн нэрсийг ашигладаг. [.filename]#ports# болон [.filename]#doc# моднууд нь `RELEASE` гэж эхэлсэн хаягийн нэрсийг ашигладаг. Төгсгөлд нь [.filename]#www# мод нь хувилбаруудад зориулсан ямар нэг тусгай нэрээр хаяглагддаггүй.

RELENG_9_0_0_RELEASE::
FreeBSD 9.0

RELENG_8_3_0_RELEASE::
FreeBSD 8.3

RELENG_8_2_0_RELEASE::
FreeBSD 8.2

RELENG_8_1_0_RELEASE::
FreeBSD 8.1

RELENG_8_0_0_RELEASE::
FreeBSD 8.0

RELENG_7_4_0_RELEASE::
FreeBSD 7.4

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-rsync]]
== rsync сайтууд

Дараах сайтууд нь FreeBSD-г rsync протоколоор түгээгдэх боломжийг бүрдүүлдэг. rsync хэрэгсэл нь man:rcp[1] тушаалтай бараг төстэйгөөр ажилладаг боловч илүү олон тохируулгуудтай бөгөөд хоёр талын файлуудын зөвхөн ялгаатайг нь дамжуулдаг. Ингэснээр сүлжээгээр хийх хамгийн сүүлийн хэлбэрт аваачих үйлдлийг ихээхэн хурдасгадаг байна. Хэрэв та FreeBSD FTP сервер юм уу эсвэл CVS архивын толин тусгал сайт бол энэ нь их ашигтай байдаг. rsync цуглуулга нь олон үйлдлийн системүүд дээр байдаг. FreeBSD-ийн хувьд package:net/rsync[] порт эсвэл багцыг үзнэ үү.

Бүгд Найрамдах Чех Улс::
rsync://ftp.cz.FreeBSD.org/
+
Байгаа цуглуулгууд:

** ftp: FreeBSD FTP серверийн хэсэгчилсэн толин тусгал.
** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.

Нидерланд::
rsync://ftp.nl.FreeBSD.org/
+
Байгаа цуглуулгууд:

** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.

Орос::
rsync://ftp.mtu.ru/
+
Байгаа цуглуулгууд:

** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.
** FreeBSD-gnats: GNATS цох хянах мэдээллийн сан.
** FreeBSD-Archive: FreeBSD архив FTP серверийн бүрэн толин тусгал.

Швед::
rsync://ftp4.se.freebsd.org/
+
Байгаа цуглуулгууд:

** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.

Тайвань::
rsync://ftp.tw.FreeBSD.org/
+
rsync://ftp2.tw.FreeBSD.org/
+
rsync://ftp6.tw.FreeBSD.org/
+
Байгаа цуглуулгууд:

** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.

Их Британи::
rsync://rsync.mirrorservice.org/
+
Байгаа цуглуулгууд:

** ftp.freebsd.org: FreeBSD FTP серверийн бүрэн толин тусгал.

Америкийн Нэгдсэн Улс::
rsync://ftp-master.FreeBSD.org/
+
Энэ серверийг FreeBSD-ийн анхдагч толин тусгал сайтууд зөвхөн хэрэглэж болно.
+
Байгаа цуглуулгууд:

** FreeBSD: FreeBSD FTP серверийн мастер архив.
** acl: FreeBSD-ийн мастер ACL жагсаалт.
+
rsync://ftp13.FreeBSD.org/
+
Байгаа цуглуулгууд:
+
** FreeBSD: FreeBSD FTP серверийн бүрэн толин тусгал.
