diff --git a/de_DE.ISO8859-1/articles/contributing/article.xml b/de_DE.ISO8859-1/articles/contributing/article.xml
index 3e21b6b8eb..2c85e9cdf6 100644
--- a/de_DE.ISO8859-1/articles/contributing/article.xml
+++ b/de_DE.ISO8859-1/articles/contributing/article.xml
@@ -1,624 +1,624 @@
&os; unterstützen
Dieser Artikel beschreibt, wie Einzelpersonen oder
Unternehmen das &os;-Projekt unterstützen
können.
Übersetzt von Johann Kois .
Jordan
Hubbard
Beigetragen von
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
Unterstützung
Sie wollen &os; unterstützen? Das ist großartig!
&os; ist auf die Unterstützung seiner Anwender
angewiesen , um zu überleben. Ihre
Beiträge werden nicht nur begrüßt, sie sind
für die Weiterentwicklung von &os; von elementarer
Bedeutung.
Im Gegensatz zu dem, was einige Leute Ihnen einreden wollen,
müssen Sie kein Spitzenprogrammierer oder persönlicher
Freund eines Mitglieds des FreeBSD-Core-Teams sein, damit Ihre
Beiträge akzeptiert werden. Ein große und wachsende
Anzahl von internationalen Unterstützern verschiedenen
Alters und mit verschiedenen technischen Fähigkeiten
entwickelt FreeBSD weiter. Es gibt immer mehr zu tun, als
von den beteiligten Personen bewältigt werden kann, daher
freuen wir uns über jede Hilfe.
Das FreeBSD-Projekt ist für ein komplettes Betriebssytem
verantwortlich, nicht nur für einen Kernel oder ein paar
verstreute Werkzeuge. Daher umfasst unsere
TODO -Liste viele verschiedene
Aufgabenbereiche: Angefangen von der Dokumentation, über Betatests
und Präsentationen bis zu Systeminstallationen und speziellen
Weiterentwicklungen des Kernels. Da Fähigkeiten in den
verschiedensten Bereichen benötigt werden, kann fast jeder
etwas zu diesem Projekt beitragen.
Personen, die im kommerziellen Umfeld mit FreeBSD zu tun
haben, sind ebenfalls aufgefordert, sich bei uns zu melden.
Brauchen Sie eine spezielle Erweiterung, damit Ihr Produkt
funktioniert? Wir kommen Ihren Wünschen gerne entgegen,
vorausgesetzt, sie sind nicht zu speziell. Arbeiten Sie an einem
Mehrwertprodukt? Dann informieren Sie uns bitte! Wir könnten in
der Lage sein, an einem Teil davon mitzuarbeiten. Die Welt der
freien Software fordert viele bestehenden Annahmen über die
Entwicklung, den Verkauf und die Wartung von Software heraus, und
wir bitten Sie, ernsthaft darüber nachzudenken.
Was wird gebraucht?
Die folgende Liste von Aufgaben und Unterprojekten
repräsentiert eine Zusammenfassung von
verschiedenen TODO -Listen und
Benutzerwünschen.
Aufgaben für Nicht-Programmierer
Viele Menschen, die an FreeBSD beteiligt sind, sind keine
Programmierer. Es sind Leute, die an der Dokumentation
arbeiten, Internetseiten erstellen oder einfach Hilfe
anbieten. Alles, was diese Leute mitbringen müssen, sind Zeit
und die Bereitschaft, etwas zu lernen.
Lesen Sie die häufig gestellten Fragen (FAQ) und
das Handbuch gelegentlich. Wenn etwas schlecht erklärt
wird, veraltet oder einfach falsch ist, teilen Sie es uns
mit. Oder noch besser, korrigieren Sie es (SGML ist nicht
schwer zu erlernen, wir akzeptieren aber auch Vorschläge
im ASCII-Format.).
Helfen Sie dabei, die Dokumentation in Ihre
Muttersprache zu übersetzen. Wenn an der Übersetzung in
Ihre Sprache bereits gearbeitet wird, helfen Sie, indem
Sie weitere Dokumente übersetzen, oder sorgen Sie dafür,
dass die Übersetzungen aktuell sind. Lesen Sie zuerst
die
Übersetzungs-FAQ der Fibel für neue
Mitarbeiter des FreeBSD-Dokumentations-Projekts. Sie
verpflichten sich dabei nicht dazu, jede einzelne Seite zu
übersetzen — als Freiwilliger übersetzen
Sie genau so viel, wie Sie wollen. Wenn jemand mit der
Übersetzung beginnt, beteiligen sich fast immer auch
andere Personen daran. Wenn Sie nur Zeit und
Energie für einen Teil der Dokumentation haben, dann
übersetzen Sie bitte die Installationsanleitung.
Lesen Sie &a.questions; sowie die &ng.misc;
gelegentlich (oder sogar regelmäßig). Es kann
sehr befriedigend sein, wenn Sie Ihr Wissen teilen und
anderen Leuten dabei helfen können, deren Probleme zu
lösen; vielleicht lernen Sie sogar noch etwas Neues!
Diese Foren können auch eine Quelle für Ideen
sein, an denen man arbeiten könnte.
Aufgaben für Programmierer
Die meisten der hier aufgeführten Aufgaben erfordern
entweder einen bedeutenden Zeitaufwand oder eine sehr gute
Kenntnis des FreeBSD-Kernels, oder beides. Es gibt jedoch
genug Aufgaben, die auch für
Wochenendprogrammierer
geeignet sind.
Wenn Sie FreeBSD-CURRENT installiert haben und über
eine schnelle Internetanbindung verfügen, können
Sie von current.FreeBSD.org
ein täglich neu erzeugtes Release herunterladen —
versuchen Sie dann hin und wieder, das neueste Release zu
installieren und melden Sie dabei eventuell auftretende
Fehler.
Lesen Sie &a.bugs;. Es könnte ein Problem geben,
an dem Sie konstruktiv mitarbeiten könnten, oder
für das es Patches gibt, die Sie testen könnten.
Oder Sie könnten sogar versuchen, eines dieser Probleme
selbst zu beheben.
Wenn Sie von Fehlerbehebungen wissen, die zwar
erfolgreich auf -CURRENT angewendet wurden, die aber nach
einem bestimmten Zeitraum nicht in -STABLE eingebracht
wurden (normalerweise innerhalb einiger Wochen), erinnern
Sie den Committer höflich daran.
Verschieben Sie beigetragene Software im Quellcodebaum
nach src/contrib .
Stellen Sie sicher, dass der Code in
src/contrib aktuell
ist.
Bauen Sie den Quellcodebaum (oder einen Teil des
Baumes) mit aktivierten Compilerwarnungen und beheben
Sie auftretende Fehlermeldungen.
Beheben Sie Fehlermeldungen bei der Installation
von Ports, die auf unsauberen Code hinweisen (etwa die
Verwendung von gets() oder die
Einbindung von malloc.h ).
Wenn Sie einen Port beigetragen und dabei irgendwelche
&os;-spezifischen Änderungen getätigt haben, senden Sie
Ihre Patches an die ursprünglichen Autoren (das wird ihr
Leben einfacher machen, wenn die nächste Version des Ports
erscheint).
Besorgen Sie sich Kopien von wichtigen Standards wie
&posix;. Als Ausgangspunkt für Ihre Suche können
Sie die Seite des FreeBSD
C99 & POSIX Standards Conformance Project
verwenden. Vergleichen Sie das Verhalten von FreeBSD mit
dem von dem jeweiligen Standard geforderten Verhalten.
Verhält sich FreeBSD in einem Bereich unterschiedlich,
sollten Sie einen Problembericht (PR) einsenden. Wenn Sie
dazu in der Lage sind, können Sie sich auch eine Lösung
des Problems überlegen und Ihrem PR einen Patch
anfügen. Wenn Sie der Meinung sind, dass der Standard
nicht korrekt ist, können Sie auch das jeweilige
Standardgremium um weitere Informationen bitten.
Schlagen Sie weitere Aufgaben für diese Liste
vor!
Die PR-Datenbank durchsehen
problem reports database
Die FreeBSD
PR-Datenbank enthält alle derzeit offenen
Problemberichte und Verbesserungswüsche, die von
Anwendern eingereicht wurden. Die PR-Datenbank enthält
sowohl Aufgaben für Programmierer als auch für
Nichtprogrammierer. Gehen Sie die Liste der offenen PRs
durch, um festzustellen, ob Sie ein Problem interessiert. Bei
manchen Berichten geht es nur darum, zu überprüfen, ob der
bereitgestellte Patch korrekt funktioniert. Andere
Problemberichte sind hingegen komplexer, oder beinhalten
überhaupt keinen Lösungsvorschlag.
Beginnen Sie mit den PRs, die niemandem zugewiesen sind.
Ist ein PR, für den Sie eine Lösung hätten,
bereits jemandem zugewiesen, nehmen Sie mit dem dafür
Zuständigen Kontakt auf und fragen Sie ihn, ob Sie an
der Lösung mitarbeiten können — es könnte
etwa bereits ein Patch existieren, der nur noch getestet
werden muss, oder Sie könnten weitere Ideen mit ihm
diskutieren.
Wählen Sie einen der Einträge auf der
Ideen
-Seite aus
Die Liste
von Projekten und Ideen für &os; ist auch
für Freiwillige interessant, die etwas zum &os; Projekt
beitragen möchten. Diese Liste wird regelmäßig
aktualisiert und enthält Einträge für Programmierer
und Nicht-Programmierer sowie Informationen zu jedem
Projekt.
Was Sie tun können
Mögliche Beiträge lassen sich in fünf
Kategorien einteilen:
Fehlerberichte und allgemeine Vorschläge
Eine Idee oder ein Vorschlag von
allgemeinem technischen Interesse sollte
an &a.hackers; geschickt werden. Personen, die an solchen
Fragen interessiert sind (und kein Problem mit einem
hohen Mailaufkommen haben!) können
die Mailingliste &a.hackers; auch abonnieren. Informationen
zu dieser und anderen Mailinglisten finden Sie im
FreeBSD Handbuch .
Wenn Sie einen Fehler gefunden oder eine Verbesserung
entwickelt haben, vergessen Sie nicht, einen Bericht über
&man.send-pr.1; oder dessen Internetschnittstelle
zu erstellen. Versuchen Sie bitte, jedes Feld auszufüllen.
Ist Ihr Patch kleiner als 65 KB, sollten Sie ihn direkt
in den Bericht einbauen. Kann der Patch direkt auf den
Quellcodebaum angewendet werden, fügen Sie
[PATCH] im Synopsis-Feld ein. Wenn Sie
einen Patch einfügen, verwenden Sie bitte kein
copy-and-paste , weil dadurch Tabulatoren in
Leerzeichen umgewandelt werden, was den Patch unbrauchbar
macht. Sind die Patches viel größer als 20 KB, sollten
Sie sie komprimieren (z.B. mit &man.gzip.1; oder
&man.bzip2.1;) und &man.uuencode.1; verwenden, um diese in
ihren Problembericht einzufügen.
Nachdem Sie einen Bericht versandt haben, erhalten Sie
eine E-Mail, die eine Bestätigung sowie eine
Identifikationsnummer enthält. Geben Sie diese Nummer im
Betreff der Nachricht an ("Re:
kern/3377" ), wenn Sie neue Informationen zu diesem
Problem an &a.bugfollowup; senden. Zusätzliche Informationen
zu Problemberichten sollten immer auf diese Art und Weise
verschickt werden.
Sollten Sie innerhalb einer Woche keine Bestätigung
erhalten, oder &man.send-pr.1; nicht verwenden können,
können Sie über &a.bugs; jemanden bitten, dies
für Sie zu erledigen.
Weitere Informationen zum Verfassen von guten
Problemberichten finden Sie im entsprechenden
Artikel .
Änderungen der Dokumentation
documentation submissions
Änderungen der Dokumentation werden vom &a.doc;
überwacht. Lesen Sie bitte die Fibel für neue
Mitarbeiter des FreeBSD-Dokumentationsprojekts für
weitere Informationen. Korrekturen und Ergänzungen
(selbst kleine Änderungen sind willkommen!) werden mit
&man.send-pr.1; übermittelt. Lesen Sie dazu den Abschnitt
Fehlerberichte und allgemeine
Vorschläge.
Änderungen am vorhandenen Quellcode
FreeBSD-CURRENT
Änderungen des existierenden Quellcodes sind etwas
komplizierter. Entscheidend ist hier, wie
vertraut Sie mit dem aktuellen Entwicklungsstand von
FreeBSD sind. Es existiert eine spezielle, ständig
aktualisierte Version von FreeBSD, die als
FreeBSD-CURRENT
bekannt ist. Diese ist auf
verschiedenen Wegen erhältlich und stellt den
aktuellen Stand der Entwicklung dar. Lesen Sie den Abschnitt
FreeBSD-CURRENT vs. FreeBSD-STABLE des Handbuchs
für weitere Informationen zur Installation und Verwendung
von FreeBSD-CURRENT.
Arbeiten Sie mit älteren Quellcodeversionen, kann
dies leider bedeuten, das Ihre Änderungen obsolet sind,
oder sich nicht mehr in FreeBSD reintegrieren lassen. Dieses
Risiko lässt sich verringern, wenn Sie die Mailinglisten
&a.announce; und &a.current; abonnieren, auf denen aktuelle
Systemänderungen diskutiert werden.
Wenn Ihre Änderungen auf ausreichend aktuellen Quellen
beruhen, erstellen Sie als Nächstes einen Differenzensatz,
den Sie an die FreeBSD-Entwickler schicken. Eine solche
Differenz erstellen Sie mit &man.diff.1;.
Das bevorzugte &man.diff.1;-Format für das Versenden
von Patches ist das sogenannte unified
output -Format, das Sie mit
diff -u erstellen. Für
größere Änderungen kann allerdings das
context output -Format
(erzeugt mit diff -c ) die bessere Wahl
sein.
diff
Dazu ein Beispiel:
&prompt.user; diff -c oldfile newfile
oder
&prompt.user; diff -c -r olddir newdir
würde einen solchen Satz von Differenzen für die
angegebene Verzeichnishierarchie erzeugen.
Genauso hätte
&prompt.user; diff -u oldfile newfile
oder
&prompt.user; diff -u -r olddir newdir
den gleichen Effekt, allerdings erfolgt die Ausgabe
im unified diff -Format.
Lesen Sie dazu auch &man.diff.1;.
Nachdem Sie den Differenzensatz erstellt und mit
&man.patch.1; getestet haben, sollten Sie ihn an das
FreeBSD-Projekt senden. Verwenden Sie dazu &man.send-pr.1;
(wie im Abschnitt Fehlerberichte und allgemeine
Vorschläge beschrieben). Senden Sie die
Differenzen nicht nur an &a.hackers;, da
diese sonst verloren gehen. Wir freuen uns über Ihren
Beitrag (schließlich ist FreeBSD ein Freiwilligenprojekt);
wir sind aber manchmal nicht in der Lage, das Problem sofort
anzugehen. Es verbleibt aber in der PR-Datenbank, bis wir
dafür Zeit finden. Verwenden Sie den Begriff
[PATCH] im Synopsis-Feld des
Berichts.
uuencode
Sie können auch ein tar -Archiv
erzeugen (was vor allem dann sinnvoll ist, wenn Sie Dateien
hinzugefügt, gelöscht oder umbenannt haben) und
&man.uuencode.1; auf das Archiv anwenden. Mit &man.shar.1;
erzeugte Archive sind ebenfalls willkommen.
Wenn Ihre Änderungen potentielle Probleme aufweisen,
wie Unklarheiten im Hinblick auf das Copyright, oder Sie
einfach eine genaue Überprüfung Ihrer Änderungen
möchten, sollten Sie die Änderungen an das &a.core;
schicken, statt sie mit &man.send-pr.1; zu versenden. Die
Mailingliste &a.core; erreicht nur eine kleine Gruppe von
Leuten, die sich um die tägliche Arbeit an &os;
kümmern. Beachten Sie aber, dass diese Gruppe
sehr beschäftigt ist. Daher sollten
Sie nur dann eine E-Mail an sie schicken, wenn es absolut
notwendig ist.
&man.intro.9; und &man.style.9; beschreiben den zu
verwendenden Programmierstil. Bevor Sie also Code
versenden, sollten Sie diese Informationen gelesen
haben.
Neuer Code oder große Mehrwertpakete
Handelt es sich um einen bedeutenden Beitrag oder um
das Hinzufügen von neuen wichtigen Fähigkeiten zu
FreeBSD, ist es fast immer notwendig, die Änderungen
als uuencoded tar -Dateien
zu versenden, oder diese auf einer Internetseite oder einem
FTP-Server bereitzustellen. Haben Sie keinen eigenen
Speicherplatz im Internet, sollten Sie auf einer
entsprechenden Mailinglisten nachfragen, ob jemand diese
Aufgabe für Sie übernehmen kann.
Arbeitet man mit großen Codebeständen,
kommt man unweigerlich mit den unterschiedlichen Lizenzen
in Berührung. Code, der in FreeBSD enthalten ist,
kann unter den folgenden Lizenzen stehen:
BSD-Lizenz
Der BSD-Lizenz. Diese Lizenz wird von uns bevorzugt,
weil sie an keine Bedingungen
geknüpft
ist und daher für kommerzielle Unternehmen sehr
attraktiv ist. Das FreeBSD-Projekt unterstützt diese
kommerzielle Verwendung, die manchmal sogar in eine
Förderung des FreeBSD-Projekts mündet.
GPL GNU General Public License
GNU General Public License
Der GNU General Public License, oder
GPL
. Diese Lizenz ist nicht ganz so
beliebt bei uns, da sie die kommerzielle Nutzung des
Quellcodes einschränkt. In Anbetracht der schieren Menge
an GPL-Quellcode, den wir derzeit benötigen (wie Compiler,
Assembler oder Textformatierer) wären wir aber schlecht
beraten, Beiträge, die unter dieser Lizenz stehen,
abzulehnen. Code, der unter der GPL steht, befindet sich
in einem gesonderten Bereich des Quellcodebaums, und zwar
unter /sys/gnu oder
/usr/src/gnu , und
ist daher für jeden, für den die GPL ein Problem
darstellt, sofort erkennbar.
Beiträge, die unter einer dieser Lizenzen stehen,
müssen sorgfältig geprüft werden, bevor ihre
Aufnahme in FreeBSD in Betracht gezogen wird. Beiträge,
für die besonders restriktive Lizenzen gelten, werden
generell abgelehnt, obwohl die Autoren ermutigt werden,
ihre Veränderungen über ihre eigenen Kanäle
verfügbar zu machen.
Um Ihre Arbeit unter die BSD-Lizenz
zu
stellen, fügen Sie den folgenden Text am Beginn jeder
von Ihnen erstellten Quellcodedatei ein, wobei Sie den Text
zwischen den %% -Zeichen durch die
entsprechenden Informationen ersetzt:
Copyright (c) %%Jahr der Veröffentlichung%%
%%Ihr Name%%, %%Ihr Land%% %%Ihre Postleitzahl%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%Ihr Name%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%Ihr Name%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
Eine Kopie dieses Textes finden Sie unter
/usr/share/examples/etc/bsd-style-copyright .
Geld, Hardware oder Internetzugang
Wir freuen uns immer, wenn jemand das FreeBSD-Projekt
durch Spenden unterstützen will. Auch kleine Spenden
können eine große Wirkung haben. Hardwarespenden
sind ebenfalls sehr wichtig, um die Liste der von FreeBSD
unterstützten Hardware erweitern zu können, da
uns die Mittel zum Erwerb dieser Hardware fehlen.
-
- Geldspenden
+
+ Geldspenden
Die FreeBSD Foundation ist eine gemeinnützige
Gesellschaft, die zur Unterstützung des FreeBSD-Projekts
geschaffen wurde. Sie ist nach dem Paragraphen 501(c)3
sowohl von der amerikanischen Einkommenssteuer als auch von
der des Staates Colorado befreit. Spenden an solche
steuerbefreiten Gesellschaften können unter gewissen
Umständen steuermindernd geltend gemacht werden.
Sie können Spenden in Scheckform an folgende Adresse
senden:
The FreeBSD Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
Die FreeBSD Foundation ist nun auch in der Lage, Spenden
durch das PayPal-System entgegenzunehmen. Solche Spenden
können über die Homepage der
Foundation erfolgen.
Für weitere Informationen zur FreeBSD Foundation
sollten Sie den Artikel
The FreeBSD Foundation -- an Introduction lesen.
Sie erreichen die FreeBSD Foundation über die E-Mail-Adresse
bod@FreeBSDFoundation.org .
Hardwarespenden
donations
Das FreeBSD-Projekt freut sich, wenn jemand benötigte
Hardware spenden will. Sind Sie daran interessiert, setzen
Sie sich bitte mit dem Donations Liaison
Office in Verbindung.
Internetzugang zur Verfügung stellen
Wir sind ständig auf der Suche nach neuen FTP-,
WWW- oder cvsup -Spiegeln. Wenn Sie einen
solchen Spiegel einrichten wollen, lesen Sie bitte den
Artikel Mirroring
FreeBSD , der weitere Informationen enthält.
diff --git a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.xml b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.xml
index dd54a06dfe..4262d17553 100644
--- a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.xml
+++ b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.xml
@@ -1,3370 +1,3370 @@
Bezugsquellen für &os;
CD-ROM und DVD Verleger
&os;-Pakete
&os;-Pakete (&os;-CDs, zusätzliche Software und
gedruckte Dokumentation) erhalten Sie von mehreren
Händlern:
CompUSA
WWW:
Frys Electronics
WWW:
&os;-CDs und -DVDs
Die &os;-CDs und -DVDs werden von vielen Online-Händlern
angeboten:
&os; Mall, Inc.
700 Harvest Park Ste F
Brentwood , CA 94513
USA
Telefon: +1 925 240-6652
Fax: +1 925 674-0821
E-Mail: info@freebsdmall.com
WWW:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germany
Telefon: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
France
WWW:
JMC Software
Ireland
Telefon: 353 1 6291282
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
United Kingdom
Telefon: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
Telefon: +48 22 860 18 18
E-Mail: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Telefon: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Telefon: +7-812-3125208
E-Mail: info@linuxcenter.ru
WWW:
Lieferanten
Wenn Sie &os;-CD-ROM-Produkte weiterverkaufen möchten,
kontaktieren Sie einen der folgenden Lieferanten:
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
USA
Telefon: +1 650 694-4949
Fax: +1 650 694-4953
E-Mail: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
Telefon: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
Telefon: +1 952 947-0822
Fax: +1 952 947-0876
E-Mail: sales@kudzuenterprises.com
LinuxCenter.Kz
Ust-Kamenogorsk
Kazakhstan
Telefon: +7-705-501-6001
E-Mail: info@linuxcenter.kz
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Telefon: +7-812-3125208
E-Mail: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
USA
Telefon: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
FTP-Server
Die offiziellen Quellen von &os; sind mit anonymous FTP
über ein weltweites Netz von FTP-Spiegeln erhältlich.
Obwohl
über eine gute Anbindung verfügt, sollten Sie einen
Spiegel in Ihrer Nähe verwenden (insbesondere, wenn Sie
selber einen Spiegel einrichten wollen).
Sie können &os; auch über anonymous FTP von den
folgenden Spiegeln beziehen. Wenn Sie &os; über anonymous
FTP beziehen wollen, wählen Sie bitte einen Spiegel in Ihrer
Nähe. Die unter Haupt-Spiegel
aufgeführten
Spiegel stellen normalerweise das komplette &os;-Archiv
(alle momentan erhältlichen Versionen für jede
unterstützte Architektur) zur Verfügung. Wahrscheinlich
geht es aber schneller, wenn Sie einen Spiegel in Ihrer
Nähe benutzen. Die Länder-Spiegel stellen die neusten
Versionen für die beliebtesten Architekturen bereit,
sie stellen aber unter Umständen nicht das komplette
&os;-Archiv bereit. Auf alle Server kann mit
anonymous FTP zugegriffen werden, einige Server bieten
auch andere Zugriffsmethoden an. Die zur Verfügung
stehenden Zugriffsmethoden sind bei jedem Server in Klammern
angegeben.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
BitTorrent
BitTorrent
Die ISO-Images für die Release-CDs sind via BitTorrent
abrufbar. Eine Sammlung von Torrent-Dateien zum Herunterladen der
Images ist unter http://torrents.freebsd.org:8080
verfügbar.
Die BitTorrent Client-Software ist als Port net-p2p/py-bittorrent oder als vorkompiliertes
Paket erhältlich.
Nach dem Herunterladen der ISO-Images mit BitTorrent können Sie
diese auf CD oder DVD brennen, so wie im burncd- beschrieben.
Anonymous CVS
-
- Einführung
+
+ Einführung
CVS
anonymous
Anonymous CVS (oder anoncvs ) dient zum
Synchronisieren mit entfernten Repositories und steht mit
den CVS Werkzeugen, die im &os;
Basissystem enthalten sind, zur Verfügung. Benutzer von
&os; können damit unter anderem lesende Operationen
auf den Anoncvs Servern des
&os; Projects durchführen,
ohne über besondere Berechtigungen zu verfügen. Um es
zu benutzen, setzen Sie einfach die CVSROOT
Umgebungsvariable auf einen Anoncvs Server
und geben beim Login mit cvs login das
Passwort anoncvs an. Danach können
Sie mit &man.cvs.1; wie auf jedes lokale Repository (allerdings nur
lesend) zugreifen.
cvs login speichert Passwörter
zur Authentifizierung an einem CVS Server in der Datei
.cvspass in Ihrem
HOME -Verzeichnis. Wenn diese Datei beim ersten
Benutzen von cvs login nicht existiert,
erhalten Sie vielleicht eine Fehlermeldung. In diesem Fall
legen Sie einfach eine leere .cvspass
Datei an und melden sich erneut an.
CVSup und
Anoncvs bieten dieselbe
Funktionalität, die folgenden Kriterien helfen Ihnen zu
entscheiden, welche Methode Sie benutzen sollen.
CVSup
geht wesentlich effizienter mit Netzwerk-Ressourcen um und ist
auch technisch ausgereifter. Allerdings müssen Sie zuerst
einen speziellen Client installieren und konfigurieren, bevor Sie
CVSup benutzen können. Weiterhin
können Sie mit CVSup nur relativ
große Teile der Quellen, die Sammlungen
genannt werden, synchronisieren.
Im Gegensatz dazu können Sie mit
Anoncvs jede beliebige Datei oder
indem Sie einfach den CVS Namen des
Moduls angeben, ein beliebiges Programm, wie ls
oder grep , bearbeiten. Natürlich
können Sie mit Anoncvs nur lesend
auf ein CVS Repository zugreifen.
Wenn Sie lokal mit dem &os;-Repository entwickeln wollen, dann
ist CVSup die einzige Wahl.
-
- Benutzen von Anonymous CVS
+
+ Benutzen von Anonymous CVS
Setzen Sie einfach die CVSROOT
Umgebungsvariable, um &man.cvs.1; das
CVS Repository eines &os;
Anoncvs -Servers bekannt zu geben.
Zurzeit stehen folgende Server zur Verfügung:
Frankreich :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(Das Passwort für pserver ist
anoncvs , SSH-Zugriffe
verwenden kein Passwort.)
Taiwan :
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(pserver: Benutzen Sie cvs login
und ein beliebiges Passwort. SSH-Zugriffe erfordern
kein Passwort.)
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
USA :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs
(nur SSH2 ohne Passwort).
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
Mit CVS können Sie praktisch
jede Version von &os;, die schon einmal existiert hat (oder in
manchen Fällen existieren wird) auschecken. Sie sollten
daher damit vertraut sein, wie Sie mit Tags unter &man.cvs.1;
arbeiten (die -r Option). Zudem müssen Sie
die Namen der Tags im &os;-Repository kennen.
Es gibt zwei verschiedene TagsTags sind
symbolische Namen, die im Repository vergeben werden.
: Tags, die Revisionen bezeichnen und Tags, die
Zweige bezeichnen. Die Ersten sind statisch und fest an eine
Revision gebunden. Ein Tag, das einen Zweig bezeichnet,
bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf die
aktuellste Revision. Da ein Tag eines Zweiges nicht an eine
bestimmte Revision gebunden ist, kann sich dessen Bedeutung von
heute auf morgen ändern.
In finden Sie eine Liste der
gültigen Tags. Beachten Sie bitte, dass keines der
Tags auf die Ports-Sammlung anwendbar ist, da diese nicht
über Zweige verfügt.
Wenn Sie ein Tag eines Zweiges verwenden, erhalten Sie die
aktuellsten Dateien dieses Entwicklungszweiges. Wenn Sie eine
frühere Revision erhalten möchten, können Sie zum
Beispiel einen Zeitpunkt mit der -D Option
angeben. Weitere Informationen dazu entnehmen Sie bitte
&man.cvs.1;.
Beispiele
Im Folgenden finden Sie einige Beispiele für den Umgang
mit Anonymous CVS . Sie sollten sich
aber die Manualpage von &man.cvs.1; sorgfältig durchlesen,
bevor Sie anfangen.
&man.ls.1; von -CURRENT auschecken
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Wenn Sie dazu aufgefordert werden, benutzen Sie ein beliebiges Passwort
.
&prompt.user; cvs co ls
Den src/ -Baum über
SSH auschecken
&prompt.user; 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.
&man.ls.1; aus dem 8-STABLE-Zweig auschecken
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Wenn Sie dazu aufgefordert werden, benutzen Sie ein beliebiges Passwort
.
&prompt.user; cvs co -rRELENG_8 ls
Änderungen in &man.ls.1; zwischen 5.3 RELEASE und
5.4 RELEASE (als unified diff)
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Wenn Sie dazu aufgefordert werden, benutzen Sie ein beliebiges Passwort
.
&prompt.user; cvs rdiff -u -rRELENG_8_0_0_RELEASE -rRELENG_8_1_0_RELEASE ls
Gültige Modulnamen herausfinden
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Wenn Sie dazu aufgefordert werden, benutzen Sie ein beliebiges Passwort
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Weitere Ressourcen
Die folgenden Ressourcen sind nützlich, um den Umgang
mit CVS zu lernen:
CVS Tutorial von der California Polytechnic State
University.
CVS Home ,
die Homepage des CVS -Projekts.
CVSweb das
Web Interface zu CVS des &os;
Projekts.
CTM
CTM
Mit CTM
Abkürzung für CVS Through eMail
können Sie einen
entfernten Verzeichnisbaum mit einem zentralen Baum
synchronisieren. Es wurde extra zum Synchronisieren der &os;
Quellen entwickelt, obwohl es mit der Zeit vielleicht auch andere
Anwendungen geben wird. Zurzeit existiert leider so gut wie keine
Dokumentation zum Erstellen der Deltas. Wenn Sie Hilfe
benötigen oder CTM für
andere Zwecke einsetzen wollen, wenden Sie sich bitte an
die Mailingliste &a.ctm-users.name;.
Warum soll ich CTM benutzen?
Mit CTM erhalten Sie eine lokale
Kopie des &os;-Quellbaums, den es in mehreren
Varianten
gibt. Sie können das ganze
Repository oder nur einen Zweig spiegeln. Wenn Sie ein aktiver
&os;-Entwickler mit einer schlechten oder gar keiner TCP/IP
Verbindung sind, oder die Änderungen einfach automatisch
zugesandt bekommen wollen, dann ist CTM
das Richtige für Sie. Für die Zweige mit der
meisten Aktivität müssen Sie sich täglich bis zu drei
Deltas beschaffen, Sie sollten allerdings erwägen, die
Deltas automatisch über E-Mail zu beziehen. Die
Größe der Updates wird so klein wie möglich
gehalten. Normalerweise sind sie kleiner als 5 kB, manchmal
sind sie 10-50 kB groß (etwa jedes 10. Update) und ab
und an werden Sie auch einmal ein Update mit 100 kB oder
mehr erhalten.
Sie sollten sich über die Vorbehalte gegen die
Verwendung der Quellen anstelle eines offiziellen Releases
bewusst sein. Das trifft besonders auf &os.current; zu, lesen
Sie dazu bitte den Abschnitt
&os.current;.
Was brauche ich, um CTM zu
benutzen?
Zwei Sachen: Das CTM Programm und
die initialen Deltas, von denen aus Sie auf die
aktuellen
Stände kommen.
CTM ist schon seit der
Version 2.0 Teil des &os;-Basissystems. Sie finden es in
/usr/src/usr.sbin/ctm , wenn Sie eine Kopie
der Quellen besitzen.
Die Deltas, die CTM verarbeitet,
können Sie über FTP oder E-Mail beziehen. Wenn Sie
über einen FTP Zugang zum Internet verfügen, erhalten
Sie die Deltas unter der folgenden URL:
Die Deltas werden auch von
CTM Spiegeln
bereitgehalten.
Wechseln Sie in das passende Verzeichnisse zum Beispiel
src-cur für &os.current; und laden Sie
sich von dort die Deltas herunter.
Sie können die Deltas auch über E-Mail
beziehen.
Abonnieren Sie dazu eine der
CTM -Verteilerlisten.
Über &a.ctm-cvs-cur.name; erhalten Sie den kompletten
CVS -Baum, über
&a.ctm-src-cur.name; erhalten Sie &os.current; und über
&a.ctm-src-7.name; erhalten Sie den &os;
7.X-Zweig. Wenn Sie nicht wissen, wie Sie eine der
Mailinglisten abonnieren, folgen Sie einem der Verweise
von oben oder besuchen Sie die Seite &a.mailman.lists.link;.
Weitere Informationen erhalten Sie, wenn Sie dort
auf die gewünschte Liste klicken.
Benutzen Sie ctm_rmail , um die
CTM Updates, die Sie per
E-Mail empfangen, auszupacken und anzuwenden. Wenn Sie diesen
Prozess automatisiert ablaufen lassen möchten,
können Sie dazu einen Eintrag in
/etc/aliases verwenden. Genauere
Informationen finden Sie in der Manualpage von
ctm_rmail .
Sie sollten die Mailingliste &a.ctm-announce.name;
abonnieren, egal wie Sie die
CTM -Deltas erhalten.
Ankündigungen, die den Betrieb des
CTM -Systems betreffen, werden
nur auf dieser Liste bekannt gegeben. Klicken Sie
auf den Namen der Liste oder besuchen Sie die Seite
&a.mailman.lists.link;, um diese Liste zu abonnieren.
Initialisieren von CTM
Bevor Sie die CTM Deltas benutzen
können, brauchen Sie einen Startpunkt, auf den die
nachfolgenden Deltas angewendet werden.
Sie können natürlich mit einem leeren Verzeichnis
beginnen. In diesem Fall benötigen Sie ein
XEmpty -Delta, mit dem Sie den
CTM -Verzeichnisbaum initialisieren.
Wenn Sie Glück haben, finden Sie ein
XEmpty -Delta, mit dem sie beginnen können,
auf einer der CDs Ihrer Distribution.
Da die Verzeichnisbäume mehrere Megabyte groß
sind, sollten Sie nach Möglichkeit etwas schon vorhandenes
benutzen. Wenn Sie eine -RELEASE CD besitzen, können Sie
die Quellen von dieser CD benutzen. Sie ersparen sich damit das
Übertragen großer Datenmengen.
Die Deltas, mit denen Sie beginnen können, enthalten ein
X in ihrem Namen, wie in
src-cur.3210XEmpty.gz . Hinter dem
X wird der Startpunkt der Deltas
angegeben, in diesem Fall steht Empty
für ein leeres Verzeichnis. Nach etwa 100 Deltas wird ein
neues XEmpty -Delta erstellt.
Mit ungefähr 75 Megabyte komprimierter Daten sind diese
XEmpty -Deltas übrigens sehr
groß.
Nachdem Sie Ihren Startpunkt festgelegt haben, benötigen
Sie alle Deltas mit einer höheren Nummer.
Benutzen von CTM
Um ein Delta einzuspielen, benutzen Sie das folgende
Kommando:
&prompt.root; cd /Pfad/zu/den/Quellen
&prompt.root; ctm -v -v /Pfad/zu/den/Deltas/ src-xxx .*
CTM kann mit Deltas arbeiten, die
mit gzip komprimiert wurden. Sie brauchen die
Deltas vorher nicht mit gunzip zu
dekomprimieren und sparen damit Plattenplatz.
Ihr Quellbaum wird erst dann verändert, wenn
CTM die Deltas sauber verarbeiten
kann. Die Integrität der Deltas und ihre Anwendbarkeit auf
den Quellbaum lassen sich durch die Angabe des Schalters
-c überprüfen,
CTM ändert in diesem Fall Ihren
Quellbaum nicht.
CTM verfügt über weitere
Kommandozeilenoptionen, Informationen dazu finden Sie in der
Manualpage oder dem Quellcode.
Das war schon alles. Um Ihre Quellen aktuell zu halten,
verwenden Sie CTM jedes Mal, wenn Sie
neue Deltas bekommen.
Löschen Sie die Deltas nicht, wenn Sie diese nur schwer
wieder beschaffen können. Behalten Sie sie für den
Fall, das etwas passiert. Auch wenn Sie nur Disketten besitzen,
sollten Sie erwägen, die Deltas mit
fdwrite zu sichern.
Umgang mit lokalen Änderungen
Entwickler wollen mit den Dateien im Quellbaum
experimentieren und diese verändern. In beschränkter
Weise werden lokale Änderungen von
CTM unterstützt. Wenn
CTM die Datei foo
bearbeiten will, überprüft es zuerst ob die Datei
foo.ctm existiert. Wenn diese Datei
existiert, werden Änderungen in ihr anstatt in
foo vorgenommen.
Mit diesem Verfahren ist eine leichte Handhabung lokaler
Änderungen möglich. Kopieren Sie die Dateien, die Sie
ändern möchten, in Dateien, die das Suffix
.ctm tragen. Sie können dann
ungestört mit dem Quellcode arbeiten, während
CTM die
.ctm Dateien aktualisiert.
Weitere CTM -Optionen
Was wird aktualisiert?
Eine Liste der Änderungen, die
CTM an Ihrem Quellbaum vornehmen
wird, erhalten Sie, wenn Sie die Option -l
angeben.
Das ist nützlich, wenn Sie Logs über die
Änderungen führen wollen, geänderte Dateien vor-
oder nachbearbeiten wollen, oder einfach ein bisschen
paranoid sind.
Sicherungen vor einer Aktualisierung erstellen
Sie wollen vielleicht die Dateien, die durch eine
CTM Aktualisierung verändert
werden, sichern.
Mit -B
backup-file weisen Sie
CTM an, alle Dateien, die durch ein
CTM Delta verändert
würden, nach backup-file zu
sichern.
Dateien ausschließen
Manchmal wollen Sie nur bestimmte Teile aktualisieren
oder nur bestimmte Dateien aus einer Folge
von Deltas extrahieren.
Sie können die Liste der Dateien, mit denen
CTM arbeitet, einschränken,
indem Sie reguläre Ausdrücke mit den Optionen
-e und -x angeben.
Wenn Sie eine aktuelle Kopie von
lib/libc/Makefile aus den gesicherten
CTM Deltas erhalten wollen, setzen
Sie das folgende Kommando ab:
&prompt.root; cd /wo/Sie/es/auspacken/wollen/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Die Optionen -e und -x
werden in der Reihenfolge angewandt, in der sie auf der
Kommandozeile angegeben wurden. Eine Datei wird nur dann von
CTM verarbeitet, wenn dies nach der
Anwendung der Optionen -e und
-x noch erlaubt ist.
Pläne für CTM
Mehrere:
Hinzufügen eines Authentifizierungsmechanismus,
damit gefälschte CTM -Deltas
erkannt werden können.
Aufräumen der
CTM -Optionen, die mit der Zeit
unübersichtlich und irreführend wurden.
Verschiedenes
Es gibt Deltas für die Ports-Sammlung, die
aber nicht intensiv genutzt werden.
CTM-Spiegel
Die CTM-Deltas können Sie mit anonymous FTP von den folgenden
Spiegeln beziehen. Versuchen Sie bitte einen Spiegel in Ihrer
Nähe zu benutzen.
Bei Problemen wenden Sie sich bitte an die
Mailingliste &a.ctm-users.name;.
Kalifornien, Bay Area, Offizieller Server
Südafrika, Backup-Server für alte Deltas
Taiwan/R.O.C.
Wenn die Liste keinen Spiegel in Ihrer Nähe enthält
oder Sie Probleme mit dem ausgewählten Spiegel haben, versuchen
Sie einen Spiegel mit einer Suchmaschine, wie
alltheweb , zu
finden.
Benutzen von CVSup
Einführung
CVSup ist eine Anwendung, die
Verzeichnisbäume von einem entfernten
CVS -Server bereitstellt und
aktualisiert. Die Quellen von &os; werden in einem
CVS -Repository auf einer
Entwicklungsmaschine in Kalifornien gepflegt. Mit
CVSup können sich &os;-Benutzer
den eigenen Quellbaum auf aktuellem Stand halten.
Zum Aktualisieren benutzt CVSup die
Pull-Methode, bei der die Aktualisierungen vom Client angefragt
werden. Der Server wartet dabei passiv auf Anfragen von Clients,
das heißt er verschickt nicht unaufgefordert
Aktualisierungen. Somit gehen alle Anfragen vom Client aus und die
Benutzer müssen CVSup entweder
manuell starten oder einen cron Job einrichten, um
regelmäßig Aktualisierungen zu erhalten.
CVSup in genau dieser Schreibweise
bezeichnet die Anwendung, die aus dem Client cvsup
und dem Server cvsupd besteht.
cvsup läuft auf den Maschinen der Benutzer,
cvsupd läuft auf jedem der
&os;-Spiegel.
Wenn Sie die &os;-Dokumentation und die Mailinglisten lesen,
werden Sie oft auf Sup , dem
Vorgänger von CVSup stoßen.
CVSup wird in gleicher Weise wie
Sup benutzt und verfügt sogar
über Konfigurationsdateien, die kompatibel zu denen von
Sup sind. Da
CVSup schneller und flexibler als
Sup ist, wird
Sup vom &os; Project nicht mehr
benutzt.
Mit csup gibt es in inzwischen
auch eine in C geschriebene Neuimplementierung von
CVSup . Der größte
Vorteil dieser neuen Version ist neben einer höheren
Geschwindigkeit der, dass dieses Programm nicht von der
Sprache Modula-3 abhängig ist und Sie daher dieses
Paket nicht mitinstallieren müssen.
csup ist bereits im Basissystem
enthalten und kann sofort verwendet werden.
Wollen Sie künftig csup
einsetzen, überspringen Sie in den folgenden
Ausführungen einfach den Abschnitt zur Installation von
CVSup und ersetzen alle Vorkommen
von CVSup durch
csup .
Installation von CVSup
CVSup können Sie leicht
installieren, wenn Sie das vorkompilierte Paket
net/cvsup aus der
Ports-Sammlung benutzen.
Alternativ können Sie
net/cvsup auch ausgehend von
den Quellen bauen, doch seien Sie gewarnt:
net/cvsup hängt vom
Modula-3 System ab, das viel Zeit und
Platz zum Herunterladen und Bauen braucht.
Wenn Sie CVSup auf einer
Maschine ohne &xorg; (also
beispielsweise auf einem Server), benutzen, stellen Sie
bitte sicher, dass Sie den Port ohne das
CVSup -GUI ,
(net/cvsup-without-gui )
verwenden.
Konfiguration von CVSup
Das Verhalten von CVSup wird mit
einer Konfigurationsdatei gesteuert, die
supfile genannt wird. Beispiele für
Konfigurationsdateien finden Sie in dem Verzeichnis
.
Ein supfile enthält die folgenden
Informationen:
Welche Dateien Sie
erhalten wollen.
Welche Versionen der
Dateien Sie benötigen.
Woher Sie die Dateien
beziehen wollen.
Wo Sie die erhaltenen
Dateien speichern.
Wo Sie die
Status-Dateien aufbewahren wollen.
In den folgenden Abschnitten erstellen wir ein typisches
supfile indem wir nach und nach diese Punkte
klären. Zuerst beschreiben wir aber den Aufbau dieser
Konfigurationsdatei.
Ein supfile ist eine Textdatei.
Kommentare beginnen mit einem # und gelten bis zum
Zeilenende. Leerzeilen und Zeilen, die nur Kommentare enthalten,
werden ignoriert.
Die anderen Zeilen legen die Dateien fest, die ein Benutzer
erhalten will. Der Server organisiert verschiedene Dateien in
einer Sammlung
, deren Name auf einer Zeile angegeben
wird. Nach dem Namen der Sammlung können mehrere durch
Leerzeichen getrennte Felder folgen, die die oben angesprochenen
Informationen festlegen. Es gibt zwei Arten von Feldern: Felder,
die Optionen festlegen und Felder mit Parametern.
Optionen bestehen aus einem Schlüsselwort, wie
delete oder compress und
stehen alleine. Ein Parameterfeld beginnt mit einem
Schlüsselwort, dem = und ein Parameter,
wie in release=cvs ,
folgt. Dieses Feld darf keine Leerzeichen enthalten.
In einem supfile werden normalerweise
mehrere Sammlungen angefordert. Die erforderlichen Felder
können explizit für jede Sammlung angegeben werden,
dann werden jedoch die Zeilen ziemlich lang. Außerdem ist
dieses Vorgehen sehr unhandlich, da die meisten Felder für
alle Sammlungen gleich sind. CVSup
bietet die Möglichkeit, Vorgaben für die Felder der
Sammlungen festzulegen. Zeilen, die mit der Pseudo-Sammlung
*default beginnen, legen Optionen und Parameter
für nachfolgende Sammlungen im supfile
fest. Der Vorgabewert kann in der Zeile einer bestimmten Sammlung
überschrieben werden. Durch Hinzufügen weiterer
*default Zeilen können die Vorgaben auch
mitten im supfile überschrieben oder
erweitert werden.
Mit diesem Wissen können wir nun ein
supfile erstellen, das den Quellbaum von
&os;-CURRENT anfordert und
aktualisiert.
Welche Dateien wollen Sie
empfangen?
Dateien werden von CVSup in
Sammlungen
organisiert. Die erhältlichen
Sammlungen werden später
beschrieben. Wir wollen den Quellbaum von &os; empfangen,
der in der Sammlung src-all enthalten ist.
Das supfile enthält pro Zeile eine
Sammlung, in diesem Fall also nur eine einzige Zeile:
src-all
Welche Versionen der Dateien
werden benötigt?
Mit CVSup können Sie jede
Version der Quellen bekommen, da der
cvsupd -Server seine Daten direkt aus
dem CVS -Repository bezieht. Sie
können die benötigten Versionen in den
Parameterfeldern tag= und
date= angeben.
Achten Sie darauf, dass Sie das richtige
tag= -Feld angeben. Einige Tags sind nur
für spezielle Sammlungen gültig. Wenn Sie ein
falsches Tag angeben oder sich verschreiben, wird
CVSup Dateien löschen, die
Sie wahrscheinlich gar nicht löschen wollten.
Achten Sie insbesondere bei den
ports-* -Sammlungen darauf,
ausschließlich
tag=. zu verwenden.
Mit tag= wird ein symbolischer Name aus
dem Repository angegeben. Es gibt zwei verschiedene Tags:
Tags, die Revisionen bezeichnen und Tags, die Zweige
bezeichnen. Die ersteren sind statisch und fest an eine
Revision gebunden. Ein Tag, das einen Zweig bezeichnet,
bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf
die aktuellste Revision. Da ein Tag eines Zweiges nicht an
eine bestimmte Revision gebunden ist, kann sich dessen
Bedeutung von heute auf morgen ändern.
zählt für Benutzer
relevante Tags auf. Wenn Sie in der Konfigurationsdatei ein
Tag, wie RELENG_8 , angeben, müssen Sie
diesem tag= vorstellen:
tag=RELENG_8 . Denken Sie daran, dass
es für die Ports-Sammlung nur tag=.
gibt.
Achten Sie darauf, dass Sie den Namen eines Tags
richtig angeben. CVSup kann nicht
zwischen richtigen und falschen Tags unterscheiden. Wenn Sie
sich bei der Angabe eines Tags vertippen, nimmt
CVSup an, Sie hätten ein
gültiges Tag angegeben, dem nur keine Dateien zugeordnet
sind. Die Folge davon ist, dass Ihre vorhandenen Quellen
gelöscht werden.
Wenn Sie ein Tag angeben, das sich auf einen Zweig bezieht,
erhalten Sie die aktuellsten Revisionen der Dateien auf diesem
Zweig. Wenn Sie eine frühere Revision erhalten
möchten, können Sie diese im date=
Feld angeben. Einzelheiten dazu finden Sie in der Manualpage
von cvsup .
Wir möchten gerne &os;-CURRENT beziehen und
fügen die folgende Zeile am Anfang
der Konfigurationsdatei ein:
*default tag=.
Eine wichtige Ausnahme ist wenn Sie weder ein
tag= -Feld noch ein date= -Feld
angeben. In diesem Fall erhalten Sie anstelle einer speziellen
Revision die wirklichen RCS-Dateien aus dem CVS-Repository
des Servers. Diese Vorgehensweise wird von Entwicklern
bevorzugt, da sie mit einem eigenen Repository leicht die
Entwicklungsgeschichte und Veränderungen von Dateien
verfolgen können. Dieser Vorteil muss allerdings mit
sehr viel Plattenplatz bezahlt werden.
Woher sollen die Dateien
bezogen werden?
Im host= -Feld wird angegeben, woher
cvsup die Dateien holen soll. Sie
können hier jeden der CVSup-Spiegel angeben, doch
sollten Sie einen Server in Ihrer Nähe auswählen.
Für dieses Beispiel wollen wir den erfundenen Server
cvsup99.FreeBSD.org
verwenden:
*default host=cvsup99.FreeBSD.org
Bevor Sie CVSup laufen
lassen, sollten Sie hier einen existierenden Server
einsetzen. Den zu verwendenden Server können Sie auf der
Kommandozeile mit -h
hostname
überschreiben.
Wo sollen die Dateien
gespeichert werden?
Im prefix= -Feld teilen Sie
cvsup mit, wo die Dateien gespeichert werden
sollen. In diesem Beispiel werden wir die Quelldateien direkt
im Verzeichnisbaum für Quellen
/usr/src ablegen. Das Verzeichnis
src ist schon in der Sammlung, die wir
beziehen enthalten, so dass wir die folgende Zeile
angeben:
*default prefix=/usr
Wo sollen die
Statusinformationen von cvsup gespeichert
werden?
cvsup legt in einem Verzeichnis
Statusinformationen ab, die festhalten, welche Versionen schon
empfangen wurden. Wir verwenden das Verzeichnis
/var/db :
*default base=/var/db
Wenn das Verzeichnis für die Statusinformationen nicht
existiert, sollten Sie es jetzt anlegen, da
cvsup ohne dieses Verzeichnis nicht
startet.
Verschiedene Einstellungen:
Eine weitere Zeile sollte normalerweise in jedem
supfile sein:
*default release=cvs delete use-rel-suffix compress
Mit release=cvs wird angegeben,
dass der Server das &os;-Haupt-Repository abfragen soll,
was praktisch immer der Fall ist (die Ausnahmen werden in
diesem Text nicht diskutiert).
delete erlaubt es
CVSup , Dateien zu löschen.
Diese Option sollten Sie immer angeben, damit
CVSup Ihren Quellbaum auch wirklich
aktuell halten kann. CVSup
löscht nur Dateien für die es auch verantwortlich
ist. Andere Dateien, die sich in einem Baum unter Kontrolle
von CVSup befinden, werden nicht
verändert.
Wenn Sie wirklich etwas über das obskure
use-rel-suffix erfahren wollen, lesen Sie
bitte in der Manualpage nach, ansonsten geben Sie es einfach an
und vergessen es.
Wenn Sie compress angeben, werden Daten
auf dem Kommunikationskanal komprimiert. Wenn Sie über
eine T1-Leitung oder eine schnellere Netzanbindung
verfügen, brauchen Sie diese Option vielleicht nicht. In
allen anderen Fällen beschleunigt sie aber den
Ablauf.
Zusammenfassung:
Das vollständige supfile unseres
Beispiels sieht nun so aus:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
Die refuse Datei
CVSup benutzt die Pull-Methode, das
heißt wenn sich ein Client mit einem Server verbindet,
erhält er eine Liste der verfügbaren Sammlungen und
wählt aus diesen die herunterzuladenden Dateien aus. In der
Voreinstellung wählt der Client alle Dateien aus, die zu
einer gegebenen Sammlung und zu einem gegebenen Tag passen.
Dieses Verhalten ist aber nicht immer erwünscht, besonders
wenn Sie die doc , ports
oder www Verzeichnisbäume
synchronisieren. Die wenigsten Leute beherrschen vier oder fünf
Sprachen und benötigen Dateien mit speziellen Anpassungen
für eine Sprache. Wenn Sie die Ports-Sammlung
synchronisieren, können Sie anstelle von
ports-all einzelne Ports, wie
ports-astrology oder
ports-biology angeben. Die
doc und www
Verzeichnisbäume verfügen aber nicht über
Sammlungen für spezielle Sprachen. In diesem Fall
müssen Sie eines der vielen eleganten Merkmale von
CVSup benutzen: Die
refuse Datei.
Mit einer refuse Datei können Sie
bestimmte Dateien einer Sammlung von der Übertragung
ausschließen. Der Ort der refuse ist
base /sup/refuse ,
wobei base in Ihrem
supfile festgelegt wurde.
Wir verwenden das Verzeichnis
/var/db , der Ort der
refuse Datei ist daher
/var/db/sup/refuse .
Das Format der refuse Datei ist einfach:
Sie enthält eine Liste der Dateien und Verzeichnisse, die Sie
nicht herunterladen wollen. Wenn Sie zum Beispiel die
Dokumentation nicht in anderen Sprachen als Englisch
lesen wollen, könnte Ihre
refuse -Datei wie folgt aussehen:
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_*
Die Aufzählung setzt sich für andere Sprachen fort.
Eine vollständige Liste finden Sie im
&os;
CVS Repository .
Die refuse Datei spart Anwendern von
CVSup , die über eine langsame
Internetanbindung verfügen oder deren Internetverbindung
zeitlich abgerechnet wird, wertvolle Zeit, da sie Dateien, die sie
nicht benötigen, nicht mehr herunterladen müssen.
Weitere Informationen zu refuse Dateien und
anderen Eigenschaften von CVSup
entnehmen Sie bitte der Manualpage.
Ausführen von CVSup
Wir können nun eine Aktualisierung mit der folgenden
Kommandozeile starten:
&prompt.root; cvsup supfile
supfile gibt
dabei das eben erstelle supfile an. Wenn Sie
X11 benutzen, wird
cvsup ein GUI starten.
Drücken Sie go und schauen Sie
zu.
Das Beispiel aktualisiert die Dateien im Verzeichnisbaum
/usr/src . Sie müssen
cvsup als root starten,
damit Sie die nötigen Rechte haben, die Dateien zu
aktualisieren. Sie sind vielleicht ein bisschen nervös
weil Sie das Programm zum ersten Mal anwenden und möchten
zuerst einmal einen Testlauf durchführen. Legen Sie dazu ein
temporäres Verzeichnis an und übergeben es auf der
Kommandozeile von cvsup :
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
Aktualisierungen werden dann nur in dem angegebenen Verzeichnis
vorgenommen. CVSup untersucht die
Dateien in /usr/src , wird aber keine dieser
Dateien verändern. Die veränderten Dateien finden Sie
stattdessen in /var/tmp/dest/usr/src . Die
Statusdateien von CVSup werden ebenfalls
nicht geändert, sondern in dem angegebenen Verzeichnis
abgelegt. Wenn Sie Leseberechtigung in
/usr/src haben, brauchen Sie das Programm
noch nicht einmal unter root laufen zu
lassen.
Wenn Sie X11 nicht benutzen wollen
oder keine GUI s mögen, sollten Sie
cvsup wie folgt aufrufen:
&prompt.root; cvsup -g -L 2 supfile
-g verhindert den Start des
GUI s. Wenn Sie kein
X11 laufen haben, passiert das
automatisch, ansonsten müssen Sie diesen Schalter
angeben.
Mit -L 2 gibt CVSup
Einzelheiten zu jeder Aktualisierung aus. Die Wortfülle der
Meldungen können Sie von -L 0 bis
-L 2 einstellen. In der Voreinstellung
-L 0 werden nur Fehlermeldungen ausgegeben.
Eine Zusammenfassung der Optionen von
CVSup erhalten Sie mit
cvsup -H . Genauere Informationen finden Sie in
der Manualpage von CVSup .
Wenn Sie mit dem Ablauf der Aktualisierung zufrieden sind,
können Sie CVSup
regelmäßig aus &man.cron.8; ausführen. In diesem
Fall sollten Sie natürlich nicht das GUI
benutzen.
CVSup Sammlungen
Die CVSup Sammlungen sind
hierarchisch organisiert. Es gibt wenige große Sammlungen,
die in kleinere Teilsammlungen unterteilt sind. Wenn Sie eine
große Sammlung beziehen, entspricht das dem Beziehen aller
Teilsammlungen. Der Hierarchie der Sammlung wird in der folgenden
Aufzählung durch Einrückungen dargestellt.
Die am häufigsten benutzen Sammlungen sind
src-all und ports-all . Die
anderen Sammlungen werden von wenigen Leuten zu speziellen Zwecken
benutzt und es kann sein, dass diese nicht auf allen Spiegeln
zur Verfügung stehen.
cvs-all release=cvs
Das &os;-Haupt-Repository einschließlich der
Kryptographie-Module.
distrib release=cvs
Dateien, die zum Verteilen und Spiegeln von &os;
benötigt werden.
doc-all release=cvs
Quellen des &os;-Handbuchs und weiterer
Dokumentation. Diese Sammlung enthält nicht die
&os;-Webseite.
ports-all release=cvs
Die &os;-Ports-Sammlung.
Wenn Sie nicht die gesamte Ports-Sammlung
(ports-all ) aktualisieren wollen,
sondern nur eine der nachstehend aufgeführten
Teilsammlungen, aktualisieren Sie
immer die Teilsammlung
ports-base . Diese Teilsammlung
enthält das Bausystem der Ports. Immer wenn
ports-base geändert wird,
ist es so gut wie sicher, dass diese Änderung
auch tatsächlich von einem Port benutzt wird.
Der Bau eines Ports, der auf Änderungen
im Bausystem angewiesen wird, wird fehlschlagen,
wenn das Bausystem noch auf einem alten Stand ist.
Aktualisieren Sie vor allen Dingen
ports-base , wenn Sie bei
einem Bau merkwürdige Fehlermeldungen
erhalten und kein aktuelles Bausystem benutzen.
Wenn Sie die Datei
ports/INDEX selbst
erzeugen, brauchen Sie unbedingt die
Sammlung ports-all (den
ganzen Ports-Baum). Es ist nicht möglich,
ports/INDEX nur mit
einem Teilbaum zu erstellen. Lesen Sie dazu
bitte die FAQ .
ports-accessibility
release=cvs
Werkzeuge für behinderte Benutzer.
ports-arabic
release=cvs
Arabische Sprachunterstützung.
ports-archivers
release=cvs
Werkzeuge zum Archivieren.
ports-astro
release=cvs
Astronomie-Programme.
ports-audio
release=cvs
Audio-Programme.
ports-base
release=cvs
Das Bausystem der Ports-Sammlung.
Dazu gehören verschiedene Dateien in den
Unterverzeichnissen Mk/
und Tools/ von
/usr/ports .
Aktualisieren Sie diese Teilsammlung
jedes Mal , wenn Sie
einen Teil der Ports-Sammlung aktualisieren.
Lesen Sie dazu auch den obigen
Hinweis zur Ports-Sammlung.
ports-benchmarks
release=cvs
Benchmarks.
ports-biology
release=cvs
Biologie.
ports-cad
release=cvs
Computer Aided Design Werkzeuge.
ports-chinese
release=cvs
Chinesische Sprachunterstützung.
ports-comms
release=cvs
Programme zur Datenkommunikation.
ports-converters
release=cvs
Zeichensatz Konvertierer.
ports-databases
release=cvs
Datenbanken.
ports-deskutils
release=cvs
Sachen, die sich vor dem Computer-Zeitalter
auf dem Schreibtisch befanden.
ports-devel
release=cvs
Werkzeuge für Entwickler.
ports-dns
release=cvs
Software für DNS.
ports-editors
release=cvs
Editoren.
ports-emulators
release=cvs
Programme, die andere Betriebssysteme
emulieren.
ports-finance
release=cvs
Finanz-Anwendungen.
ports-ftp
release=cvs
Werkzeuge für FTP Clients und Server.
ports-games
release=cvs
Spiele.
ports-german
release=cvs
Deutsche Sprachunterstützung.
ports-graphics
release=cvs
Graphik-Programme.
ports-hebrew
release=cvs
Hebräische Sprachunterstützung.
ports-hungarian
release=cvs
Ungarische Sprachunterstützung.
ports-irc
release=cvs
Internet Relay Chat Werkzeuge.
ports-japanese
release=cvs
Japanische Sprachunterstützung.
ports-java
release=cvs
&java; Werkzeuge.
ports-korean
release=cvs
Koreanische Sprachunterstützung.
ports-lang
release=cvs
Programmiersprachen.
ports-mail
release=cvs
E-Mail Programme.
ports-math
release=cvs
Programme zur numerischen Mathematik.
ports-misc
release=cvs
Verschiedene Werkzeuge.
ports-multimedia
release=cvs
Multimedia-Anwendungen.
ports-net
release=cvs
Netzwerk-Programme.
ports-net-im
release=cvs
Diverse Instant-Messenger.
ports-net-mgmt
release=cvs
Software zum Verwalten von Netzwerken.
ports-net-p2p
release=cvs
Software für die Nutzung von
Peer-to-Peer-Netzwerken.
ports-news
release=cvs
USENET News Werkzeuge.
ports-palm
release=cvs
Programme für den
Palm .
ports-polish
release=cvs
Polnische Sprachunterstützung.
ports-ports-mgmt
release=cvs
Werkzeuge zum Management von Ports und
Paketen.
ports-portuguese
release=cvs
Portugiesische Sprachunterstützung.
ports-print
release=cvs
Druckprogramme.
ports-russian
release=cvs
Russische Sprachunterstützung.
ports-science
release=cvs
Wissenschaft.
ports-security
release=cvs
Werkzeuge zum Thema Sicherheit.
ports-shells
release=cvs
Kommandozeilen-Shells.
ports-sysutils
release=cvs
System-Werkzeuge.
ports-textproc
release=cvs
Programme zur Textverarbeitung (ohne Desktop
Publishing).
ports-ukrainian
release=cvs
Ukrainische Sprachunterstützung.
ports-vietnamese
release=cvs
Vietnamesische
Sprachunterstützung.
ports-www
release=cvs
Software rund um das World Wide Web.
ports-x11
release=cvs
X-Window Programme.
ports-x11-clocks
release=cvs
X11-Uhren.
ports-x11-drivers
release=cvs
X11-Treiber.
ports-x11-fm
release=cvs
X11-Dateiverwalter.
ports-x11-fonts
release=cvs
X11-Zeichensätze und Werkzeuge dazu.
ports-x11-toolkits
release=cvs
X11-Werkzeuge.
ports-x11-servers
release=cvs
X11-Server.
ports-x11-themes
release=cvs
X11-Themes.
ports-x11-wm
release=cvs
X11-Fensterverwalter.
projects-all release=cvs
Quelltexte der verschiedenen &os;-Projekte.
src-all release=cvs
Die &os;-Quellen einschließlich der
Kryptographie-Module.
src-base
release=cvs
Verschiedene Dateien unter
/usr/src .
src-bin
release=cvs
Benutzer-Werkzeuge die im Einzelbenutzermodus
gebraucht werden
(/usr/src/bin ).
src-cddl
release=cvs
Werkzeuge und Bibliotheken, die der
CDDL-Lizenz unterliegen
(/usr/src/cddl ).
src-contrib
release=cvs
Werkzeuge und Bibliotheken, die nicht aus dem
&os; Project stammen und wenig verändert
übernommen werden.
(/usr/src/contrib ).
src-crypto release=cvs
Kryptographische Werkzeuge und Bibliotheken,
die nicht aus dem &os; Project stammen und
wenig verändert übernommen werden.
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos und DES
(/usr/src/eBones ). Wird
in aktuellen Releases von &os; nicht
benutzt.
src-etc
release=cvs
Konfigurationsdateien des Systems
(/usr/src/etc ).
src-games
release=cvs
Spiele
(/usr/src/games ).
src-gnu
release=cvs
Werkzeuge, die unter der GNU Public License
stehen (/usr/src/gnu ).
src-include
release=cvs
Header Dateien
(/usr/src/include ).
src-kerberos5
release=cvs
Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
KerberosIV
(/usr/src/kerberosIV ).
src-lib
release=cvs
Bibliotheken
(/usr/src/lib ).
src-libexec
release=cvs
Systemprogramme, die von anderen Programmen
ausgeführt werden
(/usr/src/libexec ).
src-release
release=cvs
Dateien, die zum Erstellen eines &os;
Releases notwendig sind
(/usr/src/release ).
src-rescue
release=cvs
Statisch gelinkte Programme zur
Wiederherstellung eines defekten Systems.
Lesen Sie dazu auch die Manualpage
&man.rescue.8;
(/usr/src/rescue ).
src-sbin release=cvs
Werkzeuge für den Einzelbenutzermodus
(/usr/src/sbin ).
src-secure
release=cvs
Kryptographische Bibliotheken und Befehle
(/usr/src/secure ).
src-share
release=cvs
Dateien, die von mehreren Systemen
gemeinsam benutzt werden können
(/usr/src/share ).
src-sys
release=cvs
Der Kernel
(/usr/src/sys ).
src-sys-crypto
release=cvs
Kryptographie Quellen des Kernels
(/usr/src/sys/crypto ).
src-tools
release=cvs
Verschiedene Werkzeuge zur Pflege von &os;
(/usr/src/tools ).
src-usrbin
release=cvs
Benutzer-Werkzeuge
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
System-Werkzeuge
(/usr/src/usr.sbin ).
www release=cvs
Die Quellen der &os;-WWW-Seite.
distrib release=self
Die Konfigurationsdateien des
CVSup Servers. Diese werden von
den CVSup benutzt.
gnats release=current
Die GNATS Datenbank, in der Problemberichte verwaltet
werden.
mail-archive release=current
Das Archiv der &os;-Mailinglisten.
www release=current
Die formatierten Dateien der &os;-WWW-Seite (nicht die
Quellen). Diese werden von den WWW-Spiegeln benutzt.
Weiterführende Informationen
Die CVSup FAQ und weitere
Informationen über CVSup finden Sie
auf The CVSup Home Page .
&os; spezifische Diskussionen über
CVSup finden auf der Mailingliste
&a.hackers; statt. Dort und auf der Liste &a.announce; werden neue
Versionen von CVSup
angekündigt.
Bei Fragen und Problemberichten zu
CVSup lesen Sie bitte die
CVSup FAQ .
CVSup-Server
Die folgende Aufzählung enthält
CVSup Server für &os;:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
CVS-Tags
Wenn Sie Quellen mit CVS oder
CVSup erhalten oder aktualisieren wollen,
müssen Sie ein Tag angeben. Ein Tag kann einen bestimmten
&os;-Zweig oder einen bestimmten Zeitpunkt
(Release-Tag) bestimmen.
Tags für Zweige
Mit Ausnahme von HEAD (das immer
ein gültiges Tag ist), können die folgenden
Tags nur im src/ -Quellbaum verwendet
werden. Die Quellbäume ports/ ,
doc/ und www/
sind nicht verzweigt.
HEAD
Symbolischer Name für den Hauptzweig, auch
&os.current; genannt. Dies ist die Vorgabe, wenn keine
Revision angegeben wird.
In CVSup wird dieses Tag mit
einem . (Punkt) bezeichnet.
In CVS ist das die Vorgabe,
wenn Sie kein Tag oder eine Revision angeben. Außer
Sie wollen einen -STABLE Rechner auf -CURRENT aktualisieren,
ist es nicht ratsam, die -CURRENT
Quellen auf einem -STABLE Rechner einzuspielen.
RELENG_8
Der Entwicklungszweig für &os;-8.X, auch bekannt
als &os; 8-STABLE.
RELENG_8_2
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 8.2
durchgeführt werden.
RELENG_8_1
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 8.1
durchgeführt werden.
RELENG_8_0
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 8.0
durchgeführt werden.
RELENG_7
Der Entwicklungszweig für &os;-7.X, auch als
&os; 7-STABLE bekannt.
RELENG_7_4
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 7.4
durchgeführt werden.
RELENG_7_3
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 7.3
durchgeführt werden.
RELENG_7_2
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 7.2
durchgeführt werden.
RELENG_7_1
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 7.1
durchgeführt werden.
RELENG_7_0
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 7.0
durchgeführt werden.
RELENG_6
Der Entwicklungszweig für &os;-6.X, auch als
&os; 6-STABLE bekannt.
RELENG_6_4
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 6.4
durchgeführt werden.
RELENG_6_3
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 6.3
durchgeführt werden.
RELENG_6_2
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 6.2
durchgeführt werden.
RELENG_6_1
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 6.1
durchgeführt werden.
RELENG_6_0
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 6.0
durchgeführt werden.
RELENG_5
Der &os; 5.X Entwicklungszweig, der
auch &os; 5-STABLE genannt wird.
RELENG_5_5
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.5
durchgeführt werden.
RELENG_5_4
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.4
durchgeführt werden.
RELENG_5_3
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.3
durchgeführt werden.
RELENG_5_2
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.2 und
&os; 5.2.1 durchgeführt werden.
RELENG_5_1
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.1 durchgeführt
werden.
RELENG_5_0
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 5.0 durchgeführt
werden.
RELENG_4
Der &os; 4.X Entwicklungszweig,
der auch &os; 4-STABLE genannt wird.
RELENG_4_11
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.11 durchgeführt
werden.
RELENG_4_10
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.10 durchgeführt
werden.
RELENG_4_9
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.9 durchgeführt
werden.
RELENG_4_8
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.8 durchgeführt
werden.
RELENG_4_7
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.7 durchgeführt
werden.
RELENG_4_6
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.6 und
&os; 4.6.2 durchgeführt werden.
RELENG_4_5
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.5 durchgeführt
werden.
RELENG_4_4
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.4 durchgeführt
werden.
RELENG_4_3
Der Zweig, auf dem sicherheitsrelevante oder kritische
Fehlerbehebungen für &os; 4.3 durchgeführt
werden.
RELENG_3
Der &os;-3.X Entwicklungszweig, der auch 3.X-STABLE
genannt wird.
RELENG_2_2
Der &os;-2.2.X Entwicklungszweig, der auch 2.2-STABLE
genannt wird.
Release-Tags
Diese Tags geben den Zeitpunkt an, an dem eine bestimme
&os;-Version veröffentlicht wurde. Das Erstellen einer
Release ist in den Dokumenten
Release Engineering
Information und
Release
Process beschrieben. Der
src -Baum benutzt
Tags, deren Namen mit RELENG_ anfangen.
Die Bäume ports
und doc benutzen
Tags, deren Namen mit RELEASE anfangen.
Im Baum www werden
keine Release-Tags verwendet.
RELENG_8_2_0_RELEASE
&os; 8.2
RELENG_8_1_0_RELEASE
&os; 8.1
RELENG_8_0_0_RELEASE
&os; 8.0
RELENG_7_4_0_RELEASE
&os; 7.4
RELENG_7_3_0_RELEASE
&os; 7.3
RELENG_7_2_0_RELEASE
&os; 7.2
RELENG_7_1_0_RELEASE
&os; 7.1
RELENG_7_0_0_RELEASE
&os; 7.0
RELENG_6_4_0_RELEASE
&os; 6.4
RELENG_6_3_0_RELEASE
&os; 6.3
RELENG_6_2_0_RELEASE
&os; 6.2
RELENG_6_1_0_RELEASE
&os; 6.1
RELENG_6_0_0_RELEASE
&os; 6.0
RELENG_5_5_0_RELEASE
&os; 5.5
RELENG_5_4_0_RELEASE
&os; 5.4
RELENG_4_11_0_RELEASE
&os; 4.11
RELENG_5_3_0_RELEASE
&os; 5.3
RELENG_4_10_0_RELEASE
&os; 4.10
RELENG_5_2_1_RELEASE
&os; 5.2.1
RELENG_5_2_0_RELEASE
&os; 5.2
RELENG_4_9_0_RELEASE
&os; 4.9
RELENG_5_1_0_RELEASE
&os; 5.1
RELENG_4_8_0_RELEASE
&os; 4.8
RELENG_5_0_0_RELEASE
&os; 5.0
RELENG_4_7_0_RELEASE
&os; 4.7
RELENG_4_6_2_RELEASE
&os; 4.6.2
RELENG_4_6_1_RELEASE
&os; 4.6.1
RELENG_4_6_0_RELEASE
&os; 4.6
RELENG_4_5_0_RELEASE
&os; 4.5
RELENG_4_4_0_RELEASE
&os; 4.4
RELENG_4_3_0_RELEASE
&os; 4.3
RELENG_4_2_0_RELEASE
&os; 4.2
RELENG_4_1_1_RELEASE
&os; 4.1.1
RELENG_4_1_0_RELEASE
&os; 4.1
RELENG_4_0_0_RELEASE
&os; 4.0
RELENG_3_5_0_RELEASE
&os;-3.5
RELENG_3_4_0_RELEASE
&os;-3.4
RELENG_3_3_0_RELEASE
&os;-3.3
RELENG_3_2_0_RELEASE
&os;-3.2
RELENG_3_1_0_RELEASE
&os;-3.1
RELENG_3_0_0_RELEASE
&os;-3.0
RELENG_2_2_8_RELEASE
&os;-2.2.8
RELENG_2_2_7_RELEASE
&os;-2.2.7
RELENG_2_2_6_RELEASE
&os;-2.2.6
RELENG_2_2_5_RELEASE
&os;-2.2.5
RELENG_2_2_2_RELEASE
&os;-2.2.2
RELENG_2_2_1_RELEASE
&os;-2.2.1
RELENG_2_2_0_RELEASE
&os;-2.2.0
AFS-Server
Die folgende Aufzählung enthält AFS Server für
&os;:
Schweden
Die Dateien sind unter dem Pfad
/afs/stacken.kth.se/ftp/pub/FreeBSD/
erreichbar.
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Betreuer ftp@stacken.kth.se
rsync-Server
rsync wird ähnlich wie
&man.rcp.1; verwendet, besitzt aber mehr Optionen und
verwendet das rsync remote-update
Protokoll, das nur
geänderte Dateien überträgt und damit viel schneller
als ein normaler Kopiervorgang ist. rsync
ist sehr nützlich, wenn Sie einen &os;-FTP-Spiegel oder einen
CVS-Spiegel betreiben. Das Programm ist für viele
Betriebssysteme erhältlich, mit &os; können Sie den
Port net/rsync oder das fertige
Paket benutzen. Die folgenden Server stellen &os; über das
rsync Protokoll zur Verfügung:
Großbritannien
rsync://rsync.mirrorservice.org/
Verfügbare Sammlungen:
sites/ftp.freebsd.org: Kompletter Spiegel des
&os;-FTP-Servers.
Niederlande
rsync://ftp.nl.FreeBSD.org/
Verfügbare Sammlungen:
&os;: Kompletter Spiegel des
&os;-FTP-Servers.
Russland
rsync://ftp.mtu.ru/
Verfügbare Sammlungen:
&os;: Kompletter Spiegel des
&os;-FTP-Servers.
&os;-gnats: Die GNATS-Datenbank
zur Verwaltung von Problemberichten.
&os;-Archive: Ein Spiegel des
&os;-Archive-FTP-Servers.
Schweden
rsync://ftp4.se.freebsd.org/
Verfügbare Sammlungen:
&os;: Kompletter Spiegel des
&os;-FTP-Servers.
Taiwan
rsync://ftp.tw.FreeBSD.org/
rsync://ftp2.tw.FreeBSD.org/
rsync://ftp6.tw.FreeBSD.org/
Verfügbare Sammlungen:
&os;: Kompletter Spiegel des
&os;-FTP-Servers.
Tschechische Republik
rsync://ftp.cz.FreeBSD.org/
Verfügbare Sammlungen:
ftp: Unvollständiger Spiegel des
&os;-FTP-Servers.
&os;: Vollständiger Spiegel des
&os;-FTP-Servers.
USA
rsync://ftp-master.FreeBSD.org/
Dieser Server darf nur von primären Spiegeln benutzt
werden.
Verfügbare Sammlungen:
&os;: Das Hauptarchiv des &os;
FTP Servers.
acl: Die primäre ACL-Liste.
rsync://ftp13.FreeBSD.org/
Verfügbare Sammlungen:
&os;: Kompletter Spiegel des
&os;-FTP-Servers.
diff --git a/el_GR.ISO8859-7/articles/contributing/article.xml b/el_GR.ISO8859-7/articles/contributing/article.xml
index 8709fb6070..969529f8c2 100644
--- a/el_GR.ISO8859-7/articles/contributing/article.xml
+++ b/el_GR.ISO8859-7/articles/contributing/article.xml
@@ -1,621 +1,621 @@
ÓõíåéóöÝñïíôáò óôï &os;
Áõôü ôï Üñèñï ðåñéãñÜöåé äéÜöïñïõò ôñüðïõò ìå ôïõò ïðïßïõò ìðïñåß
Ýíá Üôïìï Þ ìéá ïñãÜíùóç íá óõíåéóöÝñåé óôï &os;.
Jordan
Hubbard
ÃñÜöôçêå áðü ôïí
ÊõñéÜêïò
ÊåíôñùôÞò
ÌåôáöñÜóôçêå áðü ôïí
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
contributing
ÈÝëåôå íá óõìâÜëëåôå óôï &os; ëïéðüí; Áõôü åßíáé õðÝñï÷ï! Ôï
&os; âáóßæåôáé óôç óõíåéóöïñÜ ôùí ÷ñçóôþí ãéá íá
åðéâéþóåé ùò Ýñãï. Ïé óõíåéóöïñÝò óáò äåí åßíáé áðëþò êáëïäå÷ïýìåíåò, áëëÜ åßíáé
ïõóéáóôéêÝò ðñïêåéìÝíïõ ôï &os; íá óõíå÷ßóåé íá áíáðôýóóåôáé.
Äåí åßíáé áíÜãêç íá åßóôå ðñïãñáììáôéóôÞò Þ ößëïò ìå ôçí êåíôñéêÞ ïìÜäá ôïõ &os; ãéá íá
ãßíåé ç óõíåéóöïñÜ óáò áðïäåêôÞ. Ôï &os; áíáðôýóóåôáé áðü Ýíá ìåãÜëï
áñéèìü áíèñþðùí áðü üëï ôïí êüóìï. Óôçí ïìÜäá áíÜðôõîçò õðÜñ÷ïõí Üôïìá
äéáöüñùí çëéêéþí Þ ãíùóôéêþí áíôéêåéìÝíùí. Ïé åñãáóßåò ïé ïðïßåò ðñÝðåé
íá ãßíïõí åßíáé áñêåôÝò üìùò. ÐïëëÝò öïñÝò åßíáé ðåñéóóüôåñåò áðü üôé ìðïñïýí íá êÜíïõí ïé
Üíèñùðïé ðïõ åßíáé äéáèÝóéìïé óôçí ïìÜäá ôïõ &os;. Ãé áõôü åßíáé
ðÜíôïôå êáëïäå÷ïýìåíç êÜèå âïÞèåéá.
Ôï &os; åßíáé õðåýèõíï ãéá Ýíá ïëüêëçñï ëåéôïõñãéêü ðåñéâÜëëïí,
êé ü÷é ìüíï ãéá Ýíá ðõñÞíá Þ ìåñéêÜ äéÜóðáñôá åñãáëåßá. ¸ôóé,
ç ëßóôá ôùí åñãáóéþí ðïõ ðñÝðåé íá ãßíïõí êáëýðôåé Ýíá áñêåôÜ ìåãÜëï åýñïò:
áðü ôçí ôåêìçñßùóç, ôç äïêéìÞ êáé ôçí ðáñïõóßáóç, ìÝ÷ñé ôï ðñüãñáììá
åãêáôÜóôáóçò ôïõ óõóôÞìáôïò êáé ôá ðïëý åîåéäéêåõìÝíá èÝìáôá ôçò áíÜðôõîçò
ôïõ ðõñÞíá. ¸ôóé åßíáé ó÷åäüí óßãïõñï üôé üëïé ìðïñïýí íá óõíåéóöÝñïõí ìå
åðïéêïäïìçôéêü ôñüðï óôï Ýñãï áíÜðôõîçò ôïõ &os;, üðïéåò ãíþóåéò êáé íá
Ý÷ïõí.
Ìáò åíäéáöÝñåé åðßóçò êáé êÜèå åðéêïéíùíßá ìå åìðïñéêïýò ïñãáíéóìïýò,
åöüóïí äñáóôçñéïðïéïýíôáé óå êÜðïéï ÷þñï ó÷åôéêü ìå ôï &os;. ×ñåéÜæåóôå
ìéá åéäéêÞ åðÝêôáóç ãéá íá äïõëÝøåé ôï ðñïúüí óáò; Èá ìáò âñåßôå äåêôéêïýò
óôá áéôÞìáôá óáò· åéäéêÜ üôáí åßíáé ñåáëéóôéêÜ. Äïõëåýåôå ðÜíù óå Ýíá
ðñïúüí âáóéóìÝíï óôï &os;; Ðáñáêáëïýìå åíçìåñþóôå ìáò. Ìðïñåß íá
óõíåñãáóôïýìå ìå êÜðïéï ôñüðï ÷ñÞóéìï êáé óôéò äýï ðëåõñÝò. Ï êüóìïò ôïõ
åëåýèåñïõ ëïãéóìéêïý Ý÷åé åíäéáöÝñïõóåò åðéðôþóåéò óå ðïëëÝò õðÜñ÷ïõóåò
èåùñßåò ó÷åôéêÜ ìå ôçí áíÜðôõîç, ôçí ðþëçóç êáé ôç óõíôÞñçóç ôïõ
ëïãéóìéêïý. Áîßæåé, áí ü÷é íá áó÷ïëçèåßôå ìáæß ôïõ, ôïõëÜ÷éóôïí íá Ý÷åôå
õðüøç óáò ðùò ëåéôïõñãåß.
Ôé ÷ñåéÜæåôáé
Ç ëßóôá åñãáóéþí êáé ìéêñüôåñùí Ýñãùí ðïõ áêïëïõèåß åßíáé ìéá
åíäåéêôéêÞ óõëëïãÞ áðü éäÝåò ãéá õëïðïßçóç êáé áéôÞìáôá ôùí ÷ñçóôþí ôïõ
&os;.
Åñãáóßåò ðïõ äå ÷ñåéÜæïíôáé ðñïãñáììáôéóôÝò
Áñêåôïß Üíèñùðïé ðïõ ó÷åôßæïíôáé ìå ôï &os; äåí åßíáé
ðñïãñáììáôéóôÝò. Ôï Ýñãï ðåñéëáìâÜíåé óõããñáöåßò ôåêìçñßùóçò,
ó÷åäéáóôÝò éóôïóåëßäùí êáé áíèñþðïõò ðïõ ôï õðïóôçñßæïõí. Ôï ìüíï ðïõ
÷ñåéÜæåôáé ãéá íá óõíåéóöÝñåé êÜðïéïò óôï Ýñãï áõôÞò ôçò ïìÜäáò åßíáé
ç äéÜèåóç íá åðåíäýóåé ëßãï ÷ñüíï êáé ç èÝëçóç ãéá ãíþóç.
ÄéáâÜóôå ôç ëßóôá óõ÷íþí åñùôÞóåùí (FAQ) êáé ôï Åã÷åéñßäéï ôïõ
&os;. Áí êÜôé äåí åîçãåßôáé óùóôÜ, ðåñéÝ÷åé îåðåñáóìÝíåò
ðëçñïöïñßåò Þ åßíáé åíôåëþò ëÜèïò, åéäïðïéÞóôå ìáò. Áêüìá
êáëýôåñá, óôåßëôå ìáò ìéá äéüñèùóç (ç SGML äåí åßíáé äýóêïëç óôçí
åêìÜèçóç, áëëÜ ðÜíôá äå÷üìáóôå êáé äéïñèþóåéò óå ìïñöÞ áðëïý
êåéìÝíïõ ASCII).
ÂïçèÞóôå óôç ìåôÜöñáóç ôçò ôåêìçñßùóçò ôïõ &os; óôç ìçôñéêÞ
óáò ãëþóóá. Áí õðÜñ÷åé Þäç ôåêìçñßùóç óôç ãëþóóá óáò, ìðïñåßôå íá
âïçèÞóåôå óôç ìåôÜöñáóç åðéðñüóèåôùí êåéìÝíùí Þ íá åðéâåâáéþíåôå
üôé ç ìåôÜöñáóç åßíáé åíçìåñùìÝíç. Ðñþôá, êïéôÜîôå
óôéò áðáíôçìÝíåò
åñùôÞóåéò ó÷åôéêÜ ìå ôéò ìåôáöñÜóåéò óôï Âáóéêü Ïäçãü ãéá
ôçí Ôåêìçñßùóç ôïõ &os;. Ôï íá óôåßëåôå ìßá ìåôÜöñáóç äåí óáò
êáèéóôÜ õðåýèõíï íá ìåôáöñÜóåôå üëç ôçí ôåêìçñßùóç ôïõ &os;. Ùò
åèåëïíôÞò ìðïñåßôå íá ìåôáöñÜóåôå üóá êåßìåíá èÝëåôå Þ ìðïñåßôå·
üóï ðïëëÜ, ìåãÜëá, ìéêñÜ Þ ëßãá åßíáé áõôÜ. Ìüëéò áñ÷ßóåé êÜðïéïò
ôç ìåôÜöñáóç ôçò ôåêìçñßùóçò ôïõ &os; óå ìéá ãëþóóá, ó÷åäüí áìÝóùò
áñ÷ßóïõí íá óõíåéóöÝñïõí êé Üëëïé óôçí ðñïóðÜèåéá. Áí Ý÷åôå ôï
÷ñüíï Þ ôçí åíÝñãåéá íá ìåôáöñÜóåôå
ìüíï Ýíá ìÝñïò ôçò ôåêìçñßùóçò, ðáñáêáëïýìå ìåôáöñÜóôå ôéò ïäçãßåò
åãêáôÜóôáóçò.
Íá äéáâÜæåôå ðåñéóôáóéáêÜ (Þ êáèçìåñéíÜ) ôéò &a.questions; êáé
&ng.misc;. Ôï íá ìïéñÜæåóôå ôçí åìðåéñßá óáò êáé íá âïçèÜôå
áíèñþðïõò íá ëýóïõí ôá ðñïâëÞìáôÜ ôïõò ìðïñåß íá åßíáé éäéáßôåñá
éêáíïðïéçôéêü. ÌåñéêÝò öïñÝò ìðïñåß íá ìÜèåôå êáé êÜôé íÝï ìÝóá
áðü áõôÞ ôç äéáäéêáóßá! Åðßóçò áõôÝò ïé óõæçôÞóåéò ìðïñåß íá óáò
äþóïõí éäÝåò ãéá êáéíïýñéá åíäéáöÝñïíôá ðñÜãìáôá ìå ôá ïðïßá
ìðïñåßôå íá áó÷ïëçèåßôå.
Åñãáóßåò ãéá ðñïãñáììáôéóôÝò
Óôéò ðåñéóóüôåñåò áðü ôéò åñãáóßåò ðïõ áíáöÝñïíôáé åäþ ÷ñåéÜæåôáé
åßôå óçìáíôéêÞ åðÝíäõóç ÷ñüíïõ Þ ìßá óå âÜèïò ãíþóç ôïõ ðõñÞíá ôïõ
&os; Þ êáé ôá äýï. ÕðÜñ÷ïõí åðßóçò ðïëëÝò åñãáóßåò ïé ïðïßåò åßíáé
ôáõôü÷ñïíá ÷ñÞóéìåò êáé áñêåôÜ åýêïëåò áêüìç êáé ãéá
êÜðïéïí hacker ôïõ óáââáôïêýñéáêïõ
.
Áí ôñÝ÷åôå &os;-CURRENT êáé Ý÷åôå ãñÞãïñç óýíäåóç óôï
Internet, õðÜñ÷åé Ýíáò åîõðçñåôçôÞò
óôï current.FreeBSD.org ðïõ ÷ôßæåé
ìéá
ðëÞñç Ýêäïóç êÜèå ìÝñá. ÐñïóðáèÞóôå íá åãêáôáóôÞóåôå ôçí
ôåëåõôáßá Ýêäïóç áðü åêåß êáé êÜíôå áíáöïñÜ ãéá ïðïéïäÞðïôå
ðñüâëçìá óõíáíôÞóåôå êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò Þ ìåôÜ áðü
áõôÞí.
ÄéáâÜóôå ôç &a.bugs;. Ðéèáíüí íá õðÜñ÷åé êÜðïéï ðñüâëçìá ôï
ïðïßï ìðïñåßôå íá ó÷ïëéÜóåôå åðïéêïäïìçôéêÜ Þ êÜðïéï patch ôï
ïðïßï ìðïñåßôå íá äïêéìÜóåôå. Áêüìá êáëýôåñá, ìðïñåß íá âñåßôå
êÜðïéï ðñüâëçìá ôï ïðïßï óáò öáßíåôáé åíäéáöÝñïí êáé ìðïñåß íá ôï
äéïñèþóåôå ïé ßäéïé.
Áí ãíùñßæåôå ïðïéåóäÞðïôå äéïñèþóåéò ðñïâëÞìáôïò ïé ïðïßåò
Ý÷ïõí åöáñìïóôåß åðéôõ÷çìÝíá óôïí êëÜäï áíÜðôõîçò -CURRENT áëëÜ
äåí Ý÷ïõí óõã÷ùíåõôåß ìå ôïí êëÜäï -STABLE ìåôÜ áðü êÜðïéï ëïãéêü
äéÜóôçìá (óõíÞèùò ìåñéêÝò âäïìÜäåò), óôåßëôå óôïí committer ìéá
åõãåíéêÞ õðåíèýìéóç.
ÂïçèÞóôå ìáò íá îå÷ùñßóïõìå ôï ëïãéóìéêü áðü åîùôåñéêÝò ïìÜäåò
êáé íá ìåôáêéíÞóïõìå ôÝôïéá ðñïãñÜììáôá óôïí
êáôÜëïãï src/contrib ôïõ ðçãáßïõ
êþäéêá.
Óéãïõñåõôåßôå üôé ôá ðñïãñÜììáôá
ôïõ src/contrib Ý÷ïõí åíçìåñùèåß óôéò
ôåëåõôáßåò äéáèÝóéìåò åêäüóåéò.
Ìåôáãëùôôßóôå ôïí ðçãáßï êþäéêá (Þ Ýíá ìÝñïò ôïõ êþäéêá) ìå
åðéðëÝïí åéäïðïéÞóåéò ðéèáíþí ëáèþí (compiler warnings) êáé
äéïñèþóôå üôé ëÜèç âñåßôå.
Äéïñèþóôå ôéò ðñïåéäïðïéÞóåéò ëÜèïõò (warnings) ãéá ôá ports
ôá ïðïßá ÷ñçóéìïðïéïýí ìç áðïäåêôÝò êëÞóåéò, üðùò ç
óõíÜñôçóç gets() , Þ óõìðåñéëáìâÜíïõí ðáëéÜ
áñ÷åßá include, üðùò ôï malloc.h .
Áí Ý÷åôå óõíåéóöÝñåé áëëáãÝò ãéá êÜðïéá ports êáé ÷ñåéÜóôçêáí
áëëáãÝò ãéá íá äïõëÝøåé ôï áíôßóôïé÷ï ëïãéóìéêü óùóôÜ óå &os;,
óôåßëôå ôéò áëëáãÝò óáò óôïõò áñ÷éêïýò äçìéïõñãïýò ôïõ ëïãéóìéêïý
(áõôü èá êÜíåé ôç æùÞ óáò åõêïëüôåñç üôáí èá êõêëïöïñÞóïõí ôç íÝá
Ýêäïóç).
Ðñïóðáèåßóôå íá âñåßôå áíôßãñáöá áðü åðßóçìá ðñüôõðá üðùò ôï &posix;. Ìðïñåßôå
íá âñåßôå óõíäÝóìïõò ó÷åôéêÜ ìå áõôÜ ôá ðñüôõðá óôçí
éóôïóåëßäá &os;
C99 & POSIX Standards Conformance Project . Óõãêñßíåôå ôçí
óõìðåñéöïñÜ ôïõ &os; ìå ôçí áðáéôïýìåíç áðü ôá ðñüôõðá. Áí ç
óõìðåñéöïñÜ äéáöÝñåé, éäéáßôåñá óå ëåðôÜ Þ äõóäéÜêñéôá óçìåßá ôùí
ðñïäéáãñáöþí, óôåßëôå ìéá áíáöïñÜ ðñïâëÞìáôïò ó÷åôéêÜ ìå áõôü. Áí åßíáé äõíáôüí
óêåöôåßôå Ýíá ôñüðï íá äéïñèþóåôå ôï ðñüâëçìá êáé óõìðåñéëÜâåôå ôï patch óôçí
áíáöïñÜ óáò. Áí èåùñåßôáé üôé ôá ðñüôõðá åßíáé ëáíèáóìÝíá, èÝóôå åñþôçìá
óôïí ïñãáíéóìü ôïõ ðñïôýðïõ íá åîåôÜóåé ôï èÝìá.
Ìðïñåßôå áêüìç íá ðñïôåßíåôå åðéðëÝïí åñãáóßåò ãéá áõôÞ ôç
ëßóôá!
Åñãáóßá ÌÝóù ôçò ÂÜóçò Áíáöïñþí ÐñïâëçìÜôùí (PR database)
problem reports database
âÜóç áíáöïñþí ðñïâëçìÜôùí
Ç ëßóôá
áíáöïñþí ðñïâëçìÜôùí ôïõ &os; ðåñéÝ÷åé üëåò ôéò ãíùóôÝò
áíáöïñÝò ðñïâëçìÜôùí êáé ôá áéôÞìáôá áíáâÜèìéóçò ôá ïðïßá Ý÷ïõí
õðïâÜëëåé óå áõôÞ ïé ÷ñÞóôåò ôïõ &os;. Óå áõôÞ õðÜñ÷ïõí åñãáóßåò ôüóï
ãéá ðñïãñáììáôéóôÝò üóï êáé ãéá ìç ðñïãñáììáôéóôÝò. ¸íáò ôñüðïò íá
âïçèÞóåôå ôçí áíÜðôõîç ôïõ &os; åßíáé íá äéáôñÝîåôå (ìßá ç
ðåñéóóüôåñåò öïñÝò) ôç ëßóôá ðñïâëçìÜôùí, øÜ÷íïíôáò ãéá êÜôé ðïõ óáò
åíäéáöÝñåé. ÌåñéêÝò áðü áõôÝò ôéò áíáöïñÝò ðñïâëçìÜôùí ó÷åôßæïíôáé ìå
ðïëý áðëÝò åñãáóßåò. ÐïëëÝò öïñÝò áñêåß ìßá óýíôïìç ìáôéÜ ãéá íá
åðéâåâáéùèåß üôé ç ðñïôåéíüìåíç äéüñèùóç êÜðïéïõ ðñïâëÞìáôïò åßíáé
óùóôÞ. ¶ëëåò öïñÝò ïé áëëáãÝò ðïõ ÷ñåéÜæïíôáé åßíáé ðéï äýóêïëåò Þ
äåí Ý÷åé âñåèåß êÜðïéá ëýóç áêüìá.
Áñ÷ßóôå ìå ôéò áíáöïñÝò ðñïâëçìÜôùí ðïõ äåí Ý÷ïõí åê÷ùñçèåß óå
êÜðïéïí Üëëïí. Áí ç áíáöïñÜ åßíáé êáôá÷ùñçìÝíç óå êÜðïéïí, áëëÜ
âëÝðåôå üôé åßíáé êÜôé ðïõ ìðïñåßôå íá ÷åéñéóôåßôå, åéäïðïéÞóôå ìå
email ôïí õðåýèõíï ôçò áíáöïñÜò êáé ñùôÞóôå áí ìðïñåßôå íá äïõëÝøåôå
ðÜíù ó' áõôÞí. ºóùò ï õðåýèõíïò Ý÷åé Þäç îåêéíÞóåé êÜðïéåò
äéïñèþóåéò êáé óáò äþóåé êÜôé ãéá äïêéìÞ Þ Ý÷åé Þäç êÜðïéåò éäÝåò ðïõ
ìðïñåßôå íá óõæçôÞóåôå ìáæß ôïõ.
ÄéáëÝîôå êÜðïéï áíôéêåßìåíï áðü ôçí óåëßäá ìå
ôéò éäÝåò
.
Ç ëßóôá &os; ôùí Ýñãùí êáé
ôùí éäåþí ãéá åèåëïíôÝò åßíáé åðßóçò äéáèÝóéìç ãéá áíèñþðïõò
ìå äéÜèåóç íá óõíåéóöÝñïõí óôï Ýñãï ôïõ &os;. Ç ëßóôá áíáíåþíåôáé
ôáêôéêÜ êáé ðåñéëáìâÜíåé áíôéêåßìåíá ãéá åíáó÷üëçóç ôüóï ãéá
ðñïãñáììáôéóôÝò üóï êáé ãéá ìç ðñïãñáììáôéóôÝò êáé ðáñÝ÷åé ðëçñïöïñßåò
ãéá êÜèå Ýñãï.
Ðùò ìðïñåßôå íá óõíåéóöÝñåôå
Ïé óõíåéóöïñÝò óôï óýóôçìá êáôáôÜóóïíôáé ãåíéêÜ óå ìéá áðü ôéò
áêüëïõèåò 5 êáôçãïñßåò:
ÁíáöïñÝò ðñïâëÞìáôïò êáé ãåíéêÝò åðåîçãçìáôéêÝò ðáñáôçñÞóåéò-ó÷üëéá
Ìéá éäÝá Þ ðñüôáóç ãåíéêïý ôå÷íéêïý
åíäéáöÝñïíôïò èá ðñÝðåé íá áðïóôáëåß óôç ëßóôá &a.hackers;. ÅðéðëÝïí,
Üíèñùðïé ìå åíäéáöÝñïí ãéá ôÝôïéá èÝìáôá (áëëÜ êáé áíåêôéêüôçôá
óå ìåãÜëï áñéèìü åéóåñ÷üìåíùí ìçíõìÜôùí!) ìðïñïýí
íá ãñáöôïýí óôç ëßóôá &a.hackers;. Äåßôå
ôï Åã÷åéñßäéï
ôïõ &os; ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå áõôÞí áëëÜ
êáé Üëëåò ëßóôåò.
Áí âñåßôå êÜðïéï bug Þ áí Ý÷åôå êÜíåé êÜðïéá óõãêåêñéìÝíç áëëáãÞ,
ðáñáêáëïýìå êÜíôå áíáöïñÜ ÷ñçóéìïðïéþíôáò ôï ðñüãñáììá &man.send-pr.1;
Þ ôçí áíôßóôïé÷ç
éóôïóåëßäá . ÐñïóðáèÞóôå íá óõìðëçñþóåôå üëá ôá ðåäßá ôçò
áíáöïñÜò. Áí ïé áëëáãÝò ðïõ êÜíáôå äåí îåðåñíïýí ôá 65KB óå ìÝãåèïò,
óõìðåñéëÜâåôå ôéò áëëáãÝò óáò áðåõèåßáò óôçí áíáöïñÜ. Áí ïé áëëáãÝò
åßíáé êáôÜëëçëåò ãéá åöáñìïãÞ óôïí ðçãáßï êþäéêá, ðñïóèÝóôå ôçí åôéêÝôá
[PATCH] óôçí ðåñßëçøç ôçò áíáöïñÜò. ¼ôáí
óõìðåñéëáìâÜíåôå patches, ìç ÷ñçóéìïðïéåßôå
áíôéãñáöÞ-êáé-åðéêüëëçóç, äéüôé ç áíôéãñáöÞ êáé åðéêüëëçóç ìåôáôñÝðåé
óõ÷íÜ ôïõò óôçëïèÝôåò (TAB) óå êåíÜ êáé á÷ñçóôåýåé ôï patch. Áí ôá patches åßíáé
ðïëý ìåãáëýôåñá áðü 20KB, äïêéìÜóôå íá ôá óõìðéÝóåôå (ð.÷. ìå ôï
&man.gzip.1; Þ ôï &man.bzip2.1;) êáé ÷ñçóéìïðïéÞóôå ôï åñãáëåßï
&man.uuencode.1; ãéá íá åéóÜãåôå ôç óõìðéåóìÝíç ìïñöÞ óôçí áíáöïñÜ
óáò.
ÌåôÜ ôçò õðïâïëÞ ìéáò áíáöïñÜò èá ëÜâåôå åðéâåâáßùóç ðáñÜëëçëá ìå
Ýíáí áñéèìü áíáöïñÜò. ÊñáôÞóôå ôïí áñéèìü þóôå íá ìðïñåßôå íá ìáò
åíçìåñþíåôå ìå ðëçñïöïñßåò ó÷åôéêÜ ìå ôï ðñüâëçìá óôÝëíïíôáò mail óôï
&a.bugfollowup;. ×ñçóéìïðïéÞóôå ôïí áñéèìü ôçò áíáöïñÜò óáò óôï èÝìá
ôïõ ìçíýìáôïò, ð.÷. "Re: kern/3377" . Åðéðñüóèåôåò
ðëçñïöïñßåò ãéá ïðïéïäÞðïôå áíáöïñÜ ðñïâëÞìáôïò èá ðñÝðåé íá
õðïâÜëëïíôáé ìå ôïí ðáñáðÜíù ôñüðï.
ÅÜí äå ëÜâåôå åðéâåâáßùóç åãêáßñùò (3 ìÝñåò ùò ìéá âäïìÜäá,
áíÜëïãá ìå ôç áîéïðéóôßá ôïõ email) Þ ãéá êÜðïéï ëüãï áäõíáôåßôå íá
÷ñçóéìïðïéÞóåôå ôçí åíôïëÞ &man.send-pr.1;, ìðïñåßôå íá áðåõèõíèåßôå
óå êÜðïéïí ðñïêåéìÝíïõ íá ôçí áñ÷åéïèåôÞóåé ãéá åóÜò óôÝëíïíôáò mail
óôç &a.bugs;.
Äåßôå
åðßóçò áõôü
ôï Üñèñï ó÷åôéêÜ ìå ôï ðþò íá ãñÜöåôå êáëÝò áíáöïñÝò
ðñïâëçìÜôùí.
ÁëëáãÝò óôçí ôåêìçñßùóç
documentation submissions
óõíåéóöïñÝò ôåêìçñßùóçò
Ïé áëëáãÝò óôçí ôåêìçñßùóç åðéâëÝðïíôáé áðü ôçí &a.doc;. Ãéá
ðëÞñåéò ïäçãßåò ó÷åôéêÜ ìå ôïí ôñüðï ðïõ ìðïñåßôå íá óõíåéóöÝñåôå óôçí
ôåêìçñßùóç ôïõ &os;, äåßôå
ôïí Ïäçãü ôåêìçñßùóçò
ôïõ &os; . Óôåßëôå ôá êáéíïýñéá óáò êåßìåíá Þ ôéò áëëáãÝò
óáò (áêüìç êáé ìéêñïäéïñèþóåéò åßíáé ðÜíôá êáëïäå÷ïýìåíåò)
÷ñçóéìïðïéþíôáò ôçí åíôïëÞ &man.send-pr.1; üðùò ðåñéãñÜöåôå
óôï ÁíáöïñÜ bugs êáé ãåíéêÜ ó÷üëéá -
ðáñáôçñÞóåéò.
ÁëëáãÝò óôïí Ðçãáßï Êþäéêá
&os;-CURRENT
Ìßá ðñïóèÞêç Þ áëëáãÞ óôïí õðÜñ÷ïíôá êþäéêá åßíáé êáôÜ êÜðïéï ôñüðï
ðåñßôå÷íç õðüèåóç êáé åîáñôÜôáé áñêåôÜ áðü ôïí âáèìü ôçò åíçìÝñùóçò
ðïõ Ý÷åôå ìå ôçí ôñÝ÷ïõóá êáôÜóôáóç ôçò áíÜðôõîçò ôïõ &os;. ÕðÜñ÷åé
ìéá åéäéêÞ óõíå÷þò áíáðôõóóüìåíç Ýêäïóç ôïõ &os; ãíùóôÞ
ùò &os;-CURRENT
ç ïðïßá åßíáé äéáèÝóéìç ìå äéÜöïñïõò
ôñüðïõò ãéá ôçí åõêïëßá ôùí ðñïãñáììáôéóôþí ðïõ äñáóôçñéïðïéïýíôáé
åíåñãÜ óôçí áíÜðôõîç ôïõ óõóôÞìáôïò.
Äåßôå ôï
Åã÷åéñßäéï ôïõ &os; ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå
ôï ðïõ èá âñåßôå êáé ðþò ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï &os;-CURRENT.
Äïõëåýïíôáò áðü ðáëéüôåñï êþäéêá äõóôõ÷þò óçìáßíåé üôé ïé áëëáãÝò
óáò ìðïñåß ìåñéêÝò öïñÝò íá åßíáé áñêåôÜ îåðåñáóìÝíåò Þ íá
áðïêëßíïõí ðïëý, ïðüôå íá äõóêïëåýåé êÜðùò ç åíóùìÜôùóÞ ôïõò óôï &os;.
Ñßóêá óáí ãé' áõôÜ ìðïñïýí íá åëá÷éóôïðïéçèïýí êÜðùò ìå ôçí óõììåôï÷Þ
óôéò ëßóôåò &a.announce; êáé &a.current;, óôéò ïðïßåò äéåîÜãïíôáé
óõæçôÞóåéò ãéá ôçí ôñÝ÷ïõóá êáôÜóôáóç ôïõ óõóôÞìáôïò.
Áöïý åîáóöáëßóåôå êÜðùò Ýíá ó÷åôéêÜ åíçìåñùìÝíï áíôßãñáöï ôïõ
ðçãáßïõ êþäéêá ùò âÜóç ãéá ôéò áëëáãÝò óáò, ôï åðüìåíï âÞìá åßíáé íá
äçìéïõñãÞóåôå diffs ãéá áðïóôïëÞ óôçí ïìÜäá áíÜðôõîçò ôïõ &os;. Áõôü
ãßíåôáé ìå ôçí åíôïëÞ &man.diff.1;.
Ôï ðñïôéìþìåíï format ôïõ &man.diff.1; ãéá ôçí õðïâïëÞ patches
åßíáé ç åíïðïéçìÝíç ìïñöÞ åîüäïõ (unified diff), ðïõ äçìéïõñãåßôáé áðü
ôçí åíôïëÞ diff -u . Ìéá ìéêñÞ åîáßñåóç åßíáé ôá ôá
patches ðïõ áëëÜæïõí ìåãÜëá êïììÜôéá êþäéêá, ïõóéáóôéêÜ
áíôéêáèéóôþíôáò ôá ó÷åäüí ìå ìéá êáéíïýñéá Ýêäïóç. Ãéá ôÝôïéåò
áëëáãÝò ìðïñåß íá åßíáé ðéï åõáíÜãíùóôç ç ìïñöÞ åîüäïõ ðïõ
äçìéïõñãåßôáé áðü ôçí åíôïëÞ diff -c .
diff
Ãéá ðáñÜäåéãìá ôï:
&prompt.user; diff -c ðáëéü_áñ÷åßï íÝï_áñ÷åßï
Þ ôï
&prompt.user; diff -c -r ðáëéüò_êáôÜëïãïò íÝïò_êáôÜëïãïò
èá äçìéïõñãÞóåé Ýíá óåô áðü context diffs ãéá ôïí êþäéêá ôïõ
óõãêåêñéìÝíïõ áñ÷åßïõ Þ ôçò éåñáñ÷ßáò êáôáëüãùí.
Ïìïßùò ôï,
&prompt.user; diff -u ðáëéü_áñ÷åßï íÝï_áñ÷åßï
Þ ôï
&prompt.user; diff -u -r ðáëéüò_êáôÜëïãïò íÝïò_êáôÜëïãïò
èá êÜíåé ôï ßäéï, áëëÜ èá ðáñÜãåé diff åíïðïéçìÝíç ìïñöÞ.
Äåßôå ôç âïÞèåéá ôïõ åñãáëåßïõ &man.diff.1; ãéá ðåñéóóüôåñåò
ëåðôïìÝñåéåò.
Áðü ôç óôéãìÞ ðïõ Ý÷åôå êÜðïéá diffs, (ôá ïðïßá ìðïñåßôå íá
åëÝãîåôå ìå ôçí åíôïëÞ &man.patch.1;), èá ðñÝðåé íá ôá õðïâÜëëåôå ãéá
åíóùìÜôùóç óôï &os;. ×ñçóéìïðïéÞóôå ôï ðñüãñáììá
&man.send-pr.1;, üðùò ðåñéãñÜöåôå óôï
êåßìåíï ÁíáöïñÜ Bugs êáé ãåíéêüò
ó÷ïëéáóìüò - ðáñáôçñÞóåéò. Ìç óôÝëíåôå
ìüíï Ýíá ìÞíõìá ìå ôá patches óôç &a.hackers; áëëéþò èá ÷áèïýí!
Óáò åõ÷áñéóôïýìå ðñïêáôáâïëéêÜ ãéá ïðïéáäÞðïôå ðñïóöïñÜ êþäéêá (ôï
Ýñãï áíÜðôõîçò ôïõ &os; åßíáé åèåëïíôéêÞ ðñïóðÜèåéá ðïõ âáóßæåôáé
áêñéâþò óå ôÝôïéåò ðñïóöïñÝò!). ÅðåéäÞ åßìáóôå áðáó÷ïëçìÝíïé, ìðïñåß
íá ìç ÷åéñéóôïýìå ôçí áßôçóç ãéá áëëáãÞ áìÝóùò, ùóôüóï ìÝ÷ñé íá ôï
êÜíïõìå áõôü, èá ðáñáìåßíåé óôçí âÜóç áíáöïñþí. Èõìçèåßôå íá
åðéóçìÜíåôå ôçí õðïâïëÞ óáò ìå ôçí åôéêÝôá [PATCH]
óôçí ðåñßëçøç ôçò áíáöïñÜò.
uuencode
Áí íïìßæåôå üôé ÷ñåéÜæåôáé (ð.÷. Ý÷åôå ðñïóèÝôåé, áöáéñÝóåé Þ
ìåôïíïìÜóåé êÜðïéá áñ÷åßá), ÷ñçóéìïðïéåßóôå ôï åñãáëåßï
tar ãéá íá ðáêåôÜñåôå ôéò áëëáãÝò óáò, êáé ôï
åñãáëåßï &man.uuencode.1; ãéá íá ôéò åíóùìáôþóåôå óôçí áíáöïñÜ ðïõ èá
óôåßëåôå. ÅíáëëáêôéêÜ, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï åñãáëåßï
&man.shar.1; áíôß ãéá ôï &man.tar.1;.
Áí ç öýóç ôùí áëëáãþí ðïõ èÝëåôå íá êÜíåôå åßíáé êÜðùò åõáßóèçôç,
ð.÷. áí äåí åßóôå óßãïõñïé ãéá ôá ðíåõìáôéêÜ äéêáéþìáôá êáé ôç äéáíïìÞ
ôùí áëëáãþí Þ áí áðëÜ äåí åßóôå Ýôïéìïé íá äþóåôå óôç äçìïóéüôçôá
êÜðïéåò áëëáãÝò ÷ùñßò Ýíá review áêüìá, ôüôå åßíáé êáëýôåñá íá
óôåßëåôå ôéò áëëáãÝò óáò áðåõèåßáò óôçí &a.core; áíôß íá ôéò
ðñïùèÞóåôå ìÝóù ôïõ &man.send-pr.1;. Ç &a.core; áðïôåëåßôáé áðü Ýíá
ðïëý ìéêñüôåñï áñéèìü áôüìùí. ¸÷åôå õðüøéí üìùò üôé áõôÞ ç ïìÜäá
åßíáé ðïëý áðáó÷ïëçìÝíç , ïðüôå êáëü åßíáé íá ôïõò
óôÝëíåôå ìçíýìáôá ìüíï üôáí åßóôå áñêåôÜ óßãïõñïé üôé åßíáé
áðáñáßôçôï.
ÊÜôé ôåëåõôáßï ó÷åôéêÜ ìå ôïí ðçãáßï êþäéêá ôïõ &os;. Ïé óåëßäåò
ôåêìçñßùóçò &man.intro.9; êáé &man.style.9; ðåñéÝ÷ïõí ðëçñïöïñßåò
ó÷åôéêÜ ìå ôï óôõë êþäéêá ðïõ ðñïôéìïýìå ãéá ôï &os;. Ðñéí óôåßëåôå
óçìáíôéêÝò áëëáãÝò óôçí ïìÜäá áíÜðôõîçò åßíáé óçìáíôéêü íá Ý÷åôå
åîïéêåéùèåß ìå ôï óôõë ðïõ ãñÜöïõìå êáé, üôáí åßíáé äõíáôüí, íá ôï
áêïëïõèÞóåôå óôï ãñÜøéìï ôïõ êþäéêá ðïõ èá ìáò óôåßëåôå.
ÍÝïò Êþäéêáò êáé ÌåãÜëá ÐáêÝôá Ðñüóèåôùí ×áñáêôçñéóôéêþí
Óôçí ðåñßðôùóç ìéáò ó÷åôéêÜ ìåãÜëçò óõíåéóöïñÜò ëïãéóìéêïý óôï
&os; êáé êÜèå öïñÜ ðïõ ðñïóôßèåôáé Ýíá óçìáíôéêü êáéíïýñéï
÷áñáêôçñéóôéêü óôï óýóôçìá, åßíáé ó÷åäüí ðÜíôá áðáñáßôçôï íá åßíáé
äéáèÝóéìåò ïé áëëáãÝò ìå ôç ìïñöÞ åíüò ðáêÝôïõ tar Þ íá åßíáé
äéáèÝóéìåò ìÝóù åíüò åîõðçñåôçôÞ web Þ FTP. Áí äåí Ý÷åôå ðñüóâáóç ãéá
íá áíåâÜóåôå ôá áñ÷åßá óå êÜðïéïn åîõðçñåôçôÞ web Þ FTP, ñùôÞóôå óôçí
êáôÜëëçëç ëßóôá çëåêôñïíéêïý ôá÷õäñïìåßïõ ôïõ &os; êáé êÜðïéïò Üëëïò
ìðïñåß íá öéëïîåíÞóåé ôá áñ÷åßá ãéá óáò.
Ôï åõáßóèçôï èÝìá ôùí ðíåõìáôéêþí äéêáéùìÜôùí êáé ôùí áäåéþí
÷ñÞóçò åßíáé ôï åðüìåíï ðñÜãìá ðïõ ðáßæåé ìåãÜëï ñüëï, éäéáßôåñá ãéá
ìåãÜëá Ýñãá ëïãéóìéêïý. Ïé Üäåéåò ÷ñÞóçò ðïõ åßíáé áðïäåêôÝò ãéá
êþäéêá ðïõ åíóùìáôþíåôáé óôï &os; åßíáé ïé ðáñáêÜôù:
¶äåéá BSD
Ç Üäåéá ÷ñÞóçò BSD. ÁõôÞ ç Üäåéá åßíáé ç ðñïôéìüôåñç, ëüãù
ôçò éäéáßôåñçò ÷ùñßò ðåñéïñéóìïýò
öýóçò ðïõ Ý÷åé
êáé ôçò äõíáôüôçôáò ÷ñÞóçò ôïõ êþäéêá áêüìç êáé ãéá åìðïñéêïýò
óêïðïýò. Ç ÏìÜäá ôïõ &os; äåí áðïèáññýíåé ôÝôïéïõ åßäïõò ÷ñÞóç
ôïõ ðçãáßïõ êþäéêá. Ôï áíôßèåôï ìÜëéóôá, åíèáññýíåé ôç ÷ñÞóç ôïõ
êþäéêá, áöïý Ýôóé õðÜñ÷åé ðéèáíüôçôá ïñéóìÝíïé åìðïñéêïß íá
óõíåéóöÝñïõí ìå ôç óåéñÜ ôïõò óôçí áíÜðôõîç ôïõ &os;.
GPL GNU General Public License
GNU General Public License
Ç Üäåéá GNU General Public License, Þ GPL
.
áõôÞ ç Üäåéá äåí åßíáé ôüóï äçìïöéëÞò åðåéäÞ ÷ñåéÜæåôáé Ýîôñá
ðñïóðÜèåéá áðü ïðïéïíäÞðïôå ÷ñçóéìïðïéåß ôïí êþäéêá ãéá åìðïñéêïýò
óêïðïýò, áëëÜ åðåéäÞ õðÜñ÷åé Ýíá ìåãÜëï óþìá ðçãáßïõ êþäéêá, ôï
ïðïßï äéáíÝìåôáé ìå áõôÞ ôçí Üäåéá êé áðü ôï ïðïßï åîáñôéüìáóôå
(ìåôáãëùôôéóôÞò, assembler, ðñïãñÜììáôá ìïñöïðïßçóçò êåéìÝíïõ,
êëð.), èá Þôáí êÜðùò ÷áæü íá ìç äå÷üìáóôå êáìßá áëëáãÞ óå ôÝôïéï
êþäéêá. Ï êþäéêáò ìå Üäåéá GPL äéáíÝìåôáé üìùò óå äéêü ôïõ,
îå÷ùñéóôü ìÝñïò ôïõ ðçãáßïõ êþäéêá ôïõ &os;, êÜôù áðü ôïõò
êáôáëüãïõò /sys/gnu
êáé /usr/src/gnu . ¸ôóé åßíáé åýêïëï íá
îå÷ùñßóåé êáíåßò áðü ôïí êþäéêá ôïõ &os; üëá ôá ìÝñç ìå Üäåéá GPL,
üôáí õðÜñ÷åé ëüãïò íá ãßíåé ôÝôïéïò äéá÷ùñéóìüò.
Ïé óõíåéóöïñÝò êþäéêá ìå ïðïéáäÞðïôå Üëëç Üäåéá ðñÝðåé íá ðåñÜóïõí
áðü ðïëý ðñïóåêôéêü Ýëåã÷ï ðñéí áðïöáóßóïõìå áí õðÜñ÷åé ëüãïò íá
åíóùìáôùèïýí ìå ôï &os;. Ïé óõíåéóöïñÝò ìå éäéáßôåñá áõóôçñïýò
åìðïñéêïýò ðåñéïñéóìïýò áðïññßðôïíôáé óõíÞèùò ÷ùñßò ðïëý óêÝøç, áëëÜ
ïé äçìéïõñãïß ôùí áëëáãþí Þ ôïõ óõãêåêñéìÝíïõ êþäéêá ìðïñïýí ðÜíôá íá
äéáíÝìïõí ôéò áëëáãÝò ôïõò ìÝóá áðü ôá äéêÜ ôïõò êáíÜëéá äéáíïìÞò êáé
åðéêïéíùíßáò.
Ãéá íá ïñßóåôå üôé êÜðïéï äéêü óáò Ýñãï ðçãáßïõ êþäéêá äéáíÝìåôáé
ìå ôïõò üñïõò ìéÜò Üäåéáò ôýðïõ BSD
ìðïñåßôå íá
óõìðåñéëÜâåôå óôçí áñ÷Þ ôùí áñ÷åßùí ðçãáßïõ êþäéêá ôï ðáñáêÜôù
êåßìåíï, áíôéêáèéóôþíôáò ôï êåßìåíï ìåôáîý ôùí %%
ìå ôéò êáôÜëëçëåò ðëçñïöïñßåò:
Copyright (c) %%÷ñïíéÜ_Þ_÷ñïíéÝò_áëëáãþí%%
%%ôï_üíïìÜ_óáò%%, %%ç_äéåýèõíóÞ_óáò%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%ôï_üíïìÜ_óáò%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%ôï_üíïìÜ_óáò%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
¸íá áíôßãñáöï áõôïý ôïõ êåéìÝíïõ õðÜñ÷åé óôï
áñ÷åßï /usr/share/examples/etc/bsd-style-copyright ,
ïðüôå ìðïñåßôå íá ôï áíôéãñÜöåôå áðü åêåß êÜèå öïñÜ ðïõ
÷ñåéÜæåôáé.
×ñÞìáôá, Õëéêü Þ Ðñüóâáóç óôï Äéáäßêôõï
ÊÜèå äùñåÜ ðïõ ìðïñåßôå íá êÜíåôå óôï Ýñãï ôïõ &os; åßíáé
åõðñüóäåêôç. Áêüìá êáé ç ðéï ìéêñÞ ðñïóöïñÜ ìðïñåß íá Ý÷åé ìåãÜëç
óçìáóßá ãéá Ýíá Ýñãï ôï ïðïßï âáóßæåôáé óôçí åèåëïíôéêÞ åñãáóßá, üðùò
ôï äéêü ìáò. ÅéäéêÜ ïé ðñïóöïñÝò óå õëéêü åßíáé ðïëý óçìáíôéêÝò, áöïý
Ýôóé ìáò äßíåôáé ç äõíáôüôçôá íá åðåêôåßíïõìå ôçí õðïóôÞñéîç ôïõ &os;
ãéá ôï õëéêü áõôü — êÜôé ðïõ ìðïñåß íá ìçí åßíáé åýêïëï áí
ðñÝðåé íá áãïñÜóïõìå êÜèå êïììÜôé õëéêïý ìüíïé ìáò.
-
- ×ñçìáôéêÝò ÄùñåÝò
+
+ ×ñçìáôéêÝò ÄùñåÝò
Ç ïñãÜíùóç &os; Foundation åßíáé Ýíáò ìç êåñäïóêïðéêüò óýëëïãïò,
ï ïðïßïò Ý÷åé éäñõèåß ãéá íá ðñïùèÞóåé ôï Ýñãï ôçò ÏìÜäáò ôïõ &os;.
Ëüãù ôçò íïìéêÞò öýóçò ôïõ óõëëüãïõ, ç ïñãÜíùóç ðáñÝ÷åé ìåñéêÝò
öïñïëïãéêÝò åëáöñýíóåéò óôéò ÇíùìÝíåò Ðïëéôåßåò êáé ðéï óõãêåêñéìÝíá
óôçí ðïëéôåßá ôïõ Colorado. Ïé äùñåÝò óôçí ïñãÜíùóç åêðßðôïõí áðü
ôïõò öüñïõò ðïõ ðñÝðåé íá ðëçñþóåé êÜðïéïò óôéò ÇíùìÝíåò Ðïëéôåßåò·
ðéèáíüí êáé óå Üëëá ìÝñç.
Ïé äùñÝåò óáò ìðïñïýí íá óôáëïýí óå ìïñöÞ åìâÜóìáôïò, óôç äéåýèõíóç:
The &os; Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
Ç ïñãÜíùóç ìðïñåß ðëÝïí íá äå÷ôåß êáé äùñåÝò ìÝóù äéêôýïõ áðü ôï
óýóôçìá PayPal. Áí åíäéáöÝñåóôå íá êÜíåôå êÜðïéá äùñåÜ, ðáñáêáëïýìå
îåêéíÞóôå áðü
ôçí éóôïóåëßäá ôçò
&os; Foundation .
Ðåñéóóüôåñåò ðëçñïöïñßåò ãéá ôçí ïñãÜíùóç &os; Foundation
ìðïñåßôå íá âñåßôå óôçí
áíáêïßíùóç The
&os; Foundation -- an Introduction . Ç åðéêïéíùíßá ìå ôçí
ïñãÜíùóç ìðïñåß íá ãßíåé êáé ìÝóù çëåêôñïíéêÞò áëëçëïãñáößáò óôç
äéåýèõíóç bod@FreeBSDFoundation.org .
ÄùñåÝò Õëéêïý
donations
äùñåÝò
Ç ÏìÜäá ÁíÜðôõîçò ôïõ &os; äÝ÷åôáé êÜèå äùñåÜ õëéêïý ãéá ôçí
ïðïßá ìðïñåß íá âñåé êÜðïéá êáëÞ ÷ñÞóç. Áí åíäéáöÝñåóôå íá ìáò
äùñßóåôå êÜðïéï õëéêü, ðáñáêáëïýìå åðéêïéíùíÞóôå ìå
ôçí ÏìÜäá Äéá÷åßñéóçò ôùí
Äùñåþí .
ÄùñÝåò Ðñüóâáóçò óôï Äéáäßêôõï
ÐÜíôá åßíáé ÷ñÞóéìï íá Ý÷ïõìå êáéíïýñéá mirror sites ãéá ôï FTP,
ôïí éóôüôïðü ìáò Þ ôï cvsup . Áí èÝëåôå íá
åãêáôáóôÞóåôå Ýíá ôÝôïéï mirror, ðáñáêáëïýìå äåßôå ôo
Üñèñï Mirroring
&os; . Åêåß èá âñåßôå ðåñéóóüôåñåò ðëçñïöïñßåò.
diff --git a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.xml b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.xml
index 5656b633af..03c9124216 100644
--- a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.xml
+++ b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.xml
@@ -1,3399 +1,3399 @@
Ðïõ èá Âñåßôå ôï &os;
Åêäüóåéò óå CDROM êáé DVD
Retail Åêäüóåéò
Ôï &os; åßíáé äéáèÝóéìï ùò åìðïñéêü ðñïúüí (&os; CD, åðéðñüóèåôï
ëïãéóìéêü, êáé ôõðùìÝíç ôåêìçñßùóç) áðü äéÜöïñïõò ðñïìçèåõôÝò:
Frys Electronics
WWW:
CD êáé DVD äéáíïìÝò
Ôï &os; åßíáé äéáèÝóéìï óå CD êáé DVD ãéá áãïñÜ ìÝóù äéáäéêôýïõ
áðü ôïõò ðáñáêÜôù ðñïìçèåõôÝò:
&os; Mall, Inc.
700 Harvest Park Ste F
Brentwood , CA 94513
USA
ÔçëÝöùíï: +1 925 674-0783
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germany
ÔçëÝöùíï: (089) 428 419
WWW:
JMC Software
Ireland
ÔçëÝöùíï: 353 1 6291282
WWW:
Linux Distro UK
42 Wharfedale Road
Margate
CT9 2TB
United Kingdom
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
United Kingdom
ÔçëÝöùíï: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
ÔçëÝöùíï: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
ÔçëÝöùíï: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
ÔçëÝöùíï: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Äéáíïìåßò
Áí åßóôå ìåôáðùëçôÞò êáé ìðïñåßôå íá äéáíåßìåôå óå CD-ROM ðñïúüíôá
âáóéóìÝíá óôï &os;, ðáñáêáëïýìå åðéêïéíùíÞóôå ìå êÜðïéïí áðü ôïõò
äéáíïìåßò:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
ÔçëÝöùíï: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
ÔçëÝöùíï: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
ÔçëÝöùíï: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
ÅîõðçñåôçôÝò FTP
Ïé åðßóçìåò åêäüóåéò ôïõ &os; åßíáé äéáèÝóéìåò ìÝóù áíþíõìçò FTP
óýíäåóçò áðü äéÜöïñïõò åîõðçñåôçôÝò FTP óå üëï ôïí êüóìï. Ï êåíôñéêüò
åîõðçñåôçôÞò
Ý÷åé ðïëý êáëÞ óýíäåóç ìå ôïí õðüëïéðï êüóìï, êáé åðéôñÝðåé Ýíá ìåãÜëï
áñéèìü ôáõôü÷ñïíùí óõíäÝóåùí. Áêüìá êé Ýôóé üìùò, åßíáé ìÜëëïí êáëÞ
éäÝá íá âñåßôå êÜðïéï åîõðçñåôçôÞ FTP ðïõ åßíáé ðéï êïíôÜ
óáò (åéäéêÜ áí èÝëåôå íá óôÞóåôå êÜðïéï ôïðéêü mirror site).
Ôï &os; åßíáé åðßóçò äéáèÝóéìï ìÝóù óýíäåóçò áíþíõìïõ FTP áðü ôá
ðáñáêÜôù mirror sites. Áí åðéëÝîåôå íá êáôåâÜóåôå ôï &os; ìÝóù áíþíõìïõ
FTP, óáò ðáñáêáëïýìå íá äéáëÝîåôå êÜðïéï åîõðçñåôçôÞ ï ïðïßïò åßíáé
êïíôÜ óáò. Ôá mirror sites ðïõ áíáöÝñïíôáé ùò Êýñéá Mirror
Sites
Ý÷ïõí óõíÞèùò ôçí ðëÞñç óõëëïãÞ áñ÷åßùí ôïõ &os; (üëåò ôéò
äéáèÝóéìåò åêäüóåéò, ãéá êÜèå äéáèÝóéìç áñ÷éôåêôïíéêÞ óõóôÞìáôïò), áëëÜ
åßíáé ðéèáíüí íá ðåôý÷åôå êáëýôåñåò ôá÷ýôçôåò åîõðçñÝôçóçò ìå êÜðïéï
åîõðçñåôçôÞ ðïõ åßíáé óôç äéêÞ óáò ÷þñá Þ ðåñéï÷Þ. Ôá ôïðéêÜ sites
Ý÷ïõí óõíÞèùò ôéò ðéï ðñüóöáôåò åêäüóåéò ãéá ôéò ðéï äçìïöéëåßò
áñ÷éôåêôïíéêÝò óõóôÞìáôïò, ïðüôå ìðïñåß íá ìçí Ý÷ïõí üëåò ôéò ðéèáíÝò
åêäüóåéò ôïõ &os;. ¼ëá ôá sites äÝ÷ïíôáé óõíäÝóåéò ìÝóù áíþíõìïõ FTP.
ÌåñéêÜ áðü áõôÜ ìðïñåß íá õðïóôçñßæïõí êáé Üëëçò ìïñöÞò óõíäÝóåéò. Ïé
åíáëëáêôéêÝò ìïñöÝò óýíäåóçò áíáöÝñïíôáé îå÷ùñéóôÜ ãéá êÜèå site
ðáñáêÜôù:
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
BitTorrent
BitTorrent
Ìðïñåßôå íá áíáêôÞóåôå ôá âáóéêÜ áñ÷åßá ISO ôùí åêäüóåùí ôïõ &os;,
ìÝóù ôïõ óõóôÞìáôïò BitTorrent. Óôçí ôïðïèåóßá http://torrents.freebsd.org:8080
õðÜñ÷åé ìéá ðëÞñçò óõëëïãÞ áðü áñ÷åßá torrent ðïõ ìðïñåßôå íá
êáôåâÜóåôå.
Ãéá íá ÷ñçóéìïðïéÞóåôå ôá áñ÷åßá torrent, èá ÷ñåéáóôåßôå êáôÜëëçëï
ëïãéóìéêü-ðåëÜôç, üðùò áõôü ðïõ ðáñÝ÷åôáé áðü ôï port Þ ðáêÝôï
net-p2p/py-bittorrent .
Áöïý êáôåâÜóåôå ôï áñ÷åßï ISO ìå ôï BitTorrent, ìðïñåßôå íá ôï
ãñÜøåôå óå CD Þ DVD, üðùò ðåñéãñÜöåôáé óôï
(burncd).
Áíþíõìï CVS
-
- ÅéóáãùãÞ
+
+ ÅéóáãùãÞ
CVS
anonymous
Ç óýíäåóç áíþíõìïõ CVS (Þ anoncvs üðùò
ëÝãåôáé ìåñéêÝò öïñÝò) õðïóôçñßæåôáé áðü ôá åñãáëåßá CVS ðïõ
äéáíÝìïíôáé ìå ôï ßäéï ôï &os; ãéá óõã÷ñïíéóìü ôïðéêþí áñ÷åßùí ìå
Ýíá áðïìáêñõóìÝíï repository. ¸íá áðü ôá ÷áñáêôçñéóôéêÜ ôïõ CVS
åßíáé üôé åðéôñÝðåé óôïõò ÷ñÞóôåò ôïõ &os; íá óõã÷ñïíßæïõí, ÷ùñßò
éäéáßôåñá äéêáéþìáôá ÷ñÞóôç, ôá ôïðéêÜ áíôßãñáöá ðçãáßïõ êþäéêá ðïõ
Ý÷ïõí ìå ôïõò êåíôñéêïýò, åðßóçìïõò åîõðçñåôçôÝò CVS ôïõ &os;
project. Ãéá íá ÷ñçóéìïðïéÞóåé êáíåßò ôï CVS áñêåß: (á) íá ïñßóåé
ôçí ôéìÞ ôçò ìåôáâëçôÞò ðåñéâÜëëïíôïò CVSROOT Ýôóé
þóôå íá äåß÷íåé ðñïò Ýíáí áðü ôïõò åðßóçìïõò åîõðçñåôçôÝò, êáé (â)
íá äþóåé ôïí êùäéêü anoncvs
óôçí ðñïôñïðÞ ôçò
åíôïëÞò cvs login . Ôüôå ìðïñåß íá ÷ñçóéìïðïéÞóåé
ôï åñãáëåßï &man.cvs.1; ãéá íá ðñïóðåëÜóåé ôï áðïìáêñõóìÝíï CVS
repository ôïõ &os; óáí Ýíá ïðïéïäÞðïôå ôïðéêü repository.
Ç åíôïëÞ cvs login áðïèçêåýåé ôïõò êùäéêïýò
ðïõ ÷ñçóéìïðïéïýíôáé ãéá ðéóôïðïßçóçò ôçò ôáõôüôçôÜò óáò óôïí
åîõðçñåôçôÞ CVS óå Ýíá áñ÷åßï ìå
üíïìá .cvspass óôïí HOME
êáôÜëïãï ôïõ ôïðéêïý óáò ëïãáñéáóìïý. Áí áõôü ôï áñ÷åßï äåí
õðÜñ÷åé Þäç, ìðïñåß íá áðïôý÷åé ç åíôïëÞ cvs
login ôçí ðñþôç öïñÜ. Ìðïñåßôå áðëÜ íá äçìéïõñãÞóåôå
Ýíá Üäåéï áñ÷åßï .cvspass êáé íá îáíáôñÝîåôå
ôçí åíôïëÞ cvs login .
Ìðïñåß íá ðåé êáíåßò üôé ôï CVSup
êáé ôï anoncvs åßíáé ïõóéáóôéêÜ ðáñüìïéïé
ôñüðïé óõã÷ñïíéóìïý áñ÷åßùí êáé õðïóôçñßæïõí ôçí ßäéá
ëåéôïõñãéêüôçôá, áëëÜ õðÜñ÷ïõí êÜðïéåò äéáöïñÝò ïé ïðïßåò ìðïñåß íá
ðáßîïõí óçìáíôéêü ñüëï óôçí åðéëïãÞ ìåôáîý áõôþí ôùí äýï ìåèüäùí.
ÃåíéêÜ, ôï CVSup êÜíåé ðïëý ðéï áðïäïôéêÞ
÷ñÞóç ôçò óýíäåóçò ðïõ Ý÷åôå êáé ÷ñçóéìïðïéåß Ýíá ðïëý ðéï Ýîõðíï
ðñùôüêïëëï åðéêïéíùíßáò, áëëÜ õðÜñ÷åé êáé ôï áíôßóôïé÷ï ôßìçìá. Ãéá
íá ÷ñçóéìïðïéÞóåôå ôï CVSup ðñÝðåé íá
åãêáôáóôÞóåôå êáé íá ñõèìßóåôå Ýíá åéäéêü ðñüãñáììá ðåëÜôç, êáé ôüôå
ìðïñåßôå íá óõã÷ñïíßóåôå ìüíï ìåãÜëåò óõëëïãÝò áñ÷åßùí — ôéò
ïðïßåò ôï CVSup áðïêáëåß
óõëëïãÝò
(collections).
Ôï anoncvs , áðü ôçí Üëëç, ìðïñåß íá
÷ñçóéìïðïéçèåß ãéá íá åîåôÜóåé êáíåßò ôéò áëëáãÝò åíüò êáé ìüíï
áñ÷åßïõ Þ åíüò ìüíï ðñïãñÜììáôïò êáé ôùí óõíïäåõôéêþí ôïõ áñ÷åßùí
(ð.÷. ôïí ðçãáßï êþäéêá ôçò åíôïëÞò ls Þ
ôçò grep ), ìå ÷ñÞóç ôïõ ïíüìáôïò ôïõ êáôÜëëçëïõ
module. Ôï anoncvs åßíáé ðéï âïëéêü ãéá
åñãáóßåò ðïõ áðáéôïýí âÝâáéá ìüíï áíÜãíùóç. Ïðüôå, áí èÝëåôå íá
õðïóôçñßîåôå ôçí áíÜðôõîç ðñïãñáììÜôùí ôïðéêÜ,
ôï CVSup åßíáé ìÜëëïí ìïíüäñïìïò.
-
- ×ñçóéìïðïéþíôáò Áíþíõìï CVS
+
+ ×ñçóéìïðïéþíôáò Áíþíõìï CVS
Ç ñýèìéóç ôïõ &man.cvs.1; þóôå íá ÷ñçóéìïðïéåß Ýíá áíþíõìï CVS
repository ãßíåôáé áðëþò ñõèìßæïíôáò ôçí ìåôáâëçôÞ ðåñéâÜëëïíôïò
CVSROOT þóôå íá äåß÷íåé óå Ýíáí áðü ôïõò
anoncvs åîõðçñåôçôÝò ôïõ &os; project. Ôçí þñá
ðïõ ãñÜöïíôáé áõôÝò ïé ãñáììÝò, åßíáé äéáèÝóéìïé ïé áêüëïõèïé
åîõðçñåôçôÝò:
Ãáëëßá :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(Ãéá pserver ÷ñçóéìïðïéÞóôå ôçí åíôïëÞ
cvs login êáé äþóôå ôïí êùäéêü
anoncvs
üôáí óáò æçôçèåß. Ôï ssh äåí áðáéôåß
ôç ÷ñÞóç êùäéêïý.)
ÔáÀâÜí :
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(Ãéá pserver ÷ñçóéìïðïéÞóôå ôçí åíôïëÞ
cvs login êáé äþóôå ïôéäÞðïôå ãéá êùäéêü
üôáí óáò æçôçèåß, Ôï ssh äåí áðáéôåß ôç ÷ñÞóç êùäéêïý.)
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
Êáèþò ôï CVS óáò åðéôñÝðåé íá êÜíåôå check out
ïõóéáóôéêÜ ïðïéáäÞðïôå Ýêäïóç ôïõ ðçãáßïõ êþäéêá ôïõ &os; õðÞñîå
ðïôÝ (êáé óå ïñéóìÝíåò ðåñéðôþóåéò áêüìá êáé åêäüóåéò ðïõ äåí Ý÷ïõí
êõêëïöïñÞóåé áêüìá), èá ðñÝðåé íá åßóôå åîïéêåéùìÝíïò ìå ôçí åðéëïãÞ
ôïõ &man.cvs.1; ìå ôçí ïðïßá åðéëÝãåôáé ôï revision (ðñüêåéôáé ãéá
ôçí -r ) êáé ðïéåò åßíáé ïé åðéôñåðôÝò ôéìÝò
ôçò ãéá ôï repository ôïõ &os; project.
ÕðÜñ÷ïõí äýï åßäç tags (åôéêåôþí), ôá revision tags (åôéêÝôåò
Ýêäïóçò) êáé ôá branch tags. ¸íá revision tag áíáöÝñåôáé óå ìéá
óõãêåêñéìÝíç Ýêäïóç. Ç Ýííïéá ôïõ ðáñáìÝíåé óôáèåñÞ ìÝñá ìå ôç
ìÝñá. Áðü ôçí Üëëç, Ýíá branch tag äåß÷íåé ôçí ôåëåõôáßá Ýêäïóç
ìéáò óõãêåêñéìÝíçò ðïñåßáò áíÜðôõîçò, óå êÜèå ÷ñïíéêÞ óôéãìÞ. Êáèþò
ôï branch tag äåí áíáöÝñåôáé óå êÜðïéá óõãêåêñéìÝíç Ýêäïóç, ìðïñåß
áýñéï íá óçìáßíåé êÜôé äéáöïñåôéêü áðü üôé óçìáßíåé óÞìåñá.
Ôï ðåñéÝ÷åé revision tags ôá ïðïßá
ìðïñåß íá åíäéáöÝñïõí ôïõò ÷ñÞóôåò. Õðåíèõìßæïõìå üôé êáíÝíá áðü
áõôÜ äåí åßíáé Ýãêõñï ãéá ôçí ÓõëëïãÞ ôùí Ports, êáèþò áõôÞ äåí
Ý÷åé ðïëëáðëÝò åêäüóåéò (revisions).
¼ôáí êáèïñßæåôå êÜðïéï branch tag, öõóéïëïãéêÜ ëáìâÜíåôå ôéò
ôåëåõôáßåò åêäüóåéò ôùí áñ÷åßùí ðïõ õðÜñ÷ïõí óå áõôÞ ôç ãñáììÞ
áíÜðôõîçò. Áí èÝëåôå íá ëÜâåôå êÜðïéá ðáëéüôåñç Ýêäïóç, ìðïñåßôå
÷ñçóéìïðïéþíôáò ôçí çìåñïìçíßá óå óõíäõáóìü ìå ôçí åðéëïãÞ
-D date . Äåßôå ôç óåëßäá manual ôïõ &man.cvs.1;
ãéá ðåñéóóüôåñåò ëåðôïìÝñåéåò.
Ðáñáäåßãìáôá
Áí êáé ðñáãìáôéêÜ óõíßóôáôáé íá äéáâÜóåôå ðñïóåêôéêÜ ôç óåëßäá
manual ôïõ &man.cvs.1; ðñéí êÜíåôå ïôéäÞðïôå, ðáñáêÜôù óáò äßíïõìå
êÜðïéá ãñÞãïñá ðáñáäåßãìáôá ôá ïðïßá ïõóéáóôéêÜ èá óáò äåßîïõí ðùò
íá ÷ñçóéìïðïéÞóåôå ôï Áíþíõìï CVS:
ËÞøç (Check out) ÊÜðïéïõ Áñ÷åßïõ áðü ôï -CURRENT
(&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Óôçí ðñïôñïðÞ, äþóôå ïðïéáäÞðïôå ëÝîç ãéá password
.
&prompt.user; cvs co ls
×ñÞóç SSH ãéá ËÞøç (check out) ôïõ ÄÝíôñïõ
src/ :
&prompt.user; 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.
ËÞøç ôçò ¸êäïóçò ôïõ Áñ÷åßïõ &man.ls.1; áðü ôï 8-STABLE
Branch:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Óôçí ðñïôñïðÞ, äþóôå ïðïéáäÞðïôå ëÝîç ãéá password
.
&prompt.user; cvs co -rRELENG_8 ls
Äçìéïõñãßá ìéáò Ëßóôáò Áëëáãþí (ùò Unified Diffs) ôçò
&man.ls.1;:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Óôçí ðñïôñïðÞ, äþóôå ïðïéáäÞðïôå ëÝîç ãéá password
.
&prompt.user; cvs rdiff -u -rRELENG_8_0_0_RELEASE -rRELENG_8_1_0_RELEASE ls
Âñßóêïíôáò Ðïéá ¶ëëá Ïíüìáôá Modules ìðïñïýí íá
×ñçóéìïðïéçèïýí:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Óôçí ðñïôñïðÞ, äþóôå ïðïéáäÞðïôå ëÝîç ãéá password
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
¶ëëåò ÐçãÝò Ðëçñïöïñéþí
Ïé ðáñáêÜôù ðçãÝò ðëçñïöïñéþí ßóùò óáò öáíïýí ÷ñÞóéìåò ãéá íá
ìÜèåôå ôï CVS:
CVS Tutorial áðü ôï California Polytechnic State
University.
CVS Home ,
ç ïìÜäá áíÜðôõîçò êáé õðïóôÞñéîçò ôïõ CVS.
CVSweb
ÄéåðáöÞ Web ãéá ôï CVS ôïõ &os; Project.
×ñçóéìïðïéþíôáò ôï CTM
CTM
Ôï CTM åßíáé ìéá ìÝèïäïò íá äéáôçñïýìå
óå óõã÷ñïíéóìü Ýíá áðïìáêñõóìÝíï êáôÜëïãï ìå Ýíá êåíôñéêü. Áíáðôý÷èçêå
ãéá ÷ñÞóç ìå ôï äÝíôñï ðçãáßïõ êþäéêá ôïõ &os;, áí êáé Üëëïé Üíèñùðïé
ìðïñåß íá ôï âñïõí ÷ñÞóéìï êáé ãéá äéáöïñåôéêïýò óêïðïýò êáèþò ðåñíÜåé
ï êáéñüò. Ôç äåäïìÝíç óôéãìÞ õðÜñ÷åé åëÜ÷éóôç ùò áíýðáñêôç ôåêìçñßùóç
ãéá ôçí äéáäéêáóßá äçìéïõñãßáò áñ÷åßùí äéáöïñþí (deltas), êáé áí
÷ñåéÜæåóôå ðåñéóóüôåñåò ðëçñïöïñßåò, åðéêïéíùíÞóôå ìå ôç ëßóôá
ôá÷õäñïìåßïõ &a.ctm-users.name; åéäéêÜ áí èÝëåôå íá ÷ñçóéìïðïéÞóåôå ôï
CTM ãéá Üëëåò åöáñìïãÝò.
Ãéáôß ÐñÝðåé íá ×ñçóéìïðïéÞóù ôï
CTM ;
Ôï CTM èá óáò äþóåé Ýíá ôïðéêü
áíôßãñáöï ôïõ äÝíôñïõ ðçãáßïõ êþäéêá ôïõ &os;. ÕðÜñ÷åé äéáèÝóéìïò
Ýíáò áñéèìüò áðü ãåýóåéò
ôïõ äÝíôñïõ. Ôï
CTM ìðïñåß íá óáò ðáñÝ÷åé ôéò ðëçñïöïñßåò
ðïõ ÷ñåéÜæåóôå, åßôå áðïöáóßóåôå íá ðáñáêïëïõèåßôå ïëüêëçñï ôï
äÝíôñï, åßôå êÜðïéï áðü ôá ðáñáêëÜäéá ôïõ.
Áí áíÞêåôå óôá åíåñãÜ ìÝëç áíÜðôõîçò ôïõ &os; áëëÜ Ý÷åôå êáêÞò
ðïéüôçôáò (Þ êáèüëïõ) TCP/IP óõíäåóéìüôçôá, Þ áðëÜ èÝëåôå ïé
áëëáãÝò íá óáò Ýñ÷ïíôáé áõôüìáôá, ôï CTM
Ý÷åé öôéá÷ôåß ãéá óáò. Èá ÷ñåéáóôåß íá ðáßñíåôå ùò ôñßá deltas ôçí
çìÝñá ãéá ôá êëáäéÜ ôïõ äÝíôñïõ ðïõ Ý÷ïõí ôçí ðéï åíåñãÞ áíÜðôõîç.
Èá ðñÝðåé ùóôüóï íá èåùñÞóåôå ùò êáëýôåñç ëýóç ôçí áõôüìáôç
áðïóôïëÞ ôïõò ìÝóù email. Ôá ìåãÝèç ôùí áíáíåþóåùí êñáôïýíôáé ðÜíôá
üóï ôï äõíáôüí ðéï ìéêñÜ. ÓõíÞèùò åßíáé ìéêñüôåñá áðü 5Ê,
ðåñéóôáóéáêÜ (Ýíá óôá äÝêá) åßíáé áðü 10-50Ê êáé ïñéóìÝíåò öïñÝò
åìöáíßæïíôáé êáé êÜðïéá ðïõ åßíáé 100Ê Þ êáé ìåãáëýôåñá.
Èá ðñÝðåé åðßóçò íá åîïéêåéùèåßôå ìå ôéò äéÜöïñåò ðáãßäåò ðïõ
ó÷åôßæïíôáé ìå ôçí áðåõèåßáò åñãáóßá óôïí õðü áíÜðôõîç ðçãáßï êþäéêá
óå ó÷Ýóç ìå ìéá Ýôïéìç, ðñïêáôáóêåõáóìÝíç Ýêäïóç. Áõôü éó÷ýåé áêüìá
ðåñéóóüôåñï áí åðéëÝîåôå íá ÷ñçóéìïðïéÞóåôå ôïí ðçãáßï êþäéêá áðü ôï
current
. Óáò óõíéóôïýìå íá äéáâÜóåôå ðùò íá
÷ñçóéìïðïéÞóåôå ôï current óôï &os;.
Ôé ×ñåéÜæïìáé ãéá íá ×ñçóéìïðïéÞóù ôï
CTM ;
Èá ÷ñåéáóôåßôå äýï ðñÜãìáôá: Ôçí åöáñìïãÞ
CTM êáé ôéò áñ÷éêÝò áëëáãÝò (deltas) ãéá
íá ôéò åéóÜãåôå óå áõôÞí (þóôå íá öôÜóåôå óôï åðßðåäï ôïõ
current
).
Ôï CTM åßíáé ìÝñïò ôïõ &os; áðü
ôçí Ýêäïóç 2.0, êáé âñßóêåôáé óôïí êáôÜëïãï
/usr/src/usr.sbin/ctm åöüóïí Ý÷åôå
åãêáôåóôçìÝíï ôïí ðçãáßï êþäéêá.
Ôá deltas
ìå ôá ïðïßá ôñïöïäïôåßôå ôï
CTM ìðïñåßôå íá ôá áðïêôÞóåôå ìå äýï
ôñüðïõò, ìÝóù FTP Þ ìÝóù email. Áí Ý÷åôå ãåíéêÞ FTP ðñüóâáóç óôï
Internet, èá âñåßôå õðïóôÞñéîç ãéá ôï CTM
óôéò áêüëïõèåò ôïðïèåóßåò FTP:
Þ äåßôå ôï ôìÞìá mirrors.
ÊÜíôå FTP óôï ó÷åôéêü êáôÜëïãï êáé äéáâÜóôå ôï áñ÷åßï
README ãéá íá îåêéíÞóåôå.
Áí èÝëåôå íá ëáìâÜíåôå ôá deltas ìÝóù email:
Ãñáöôåßôå óõíäñïìçôÞò óå ìéá áðü ôéò ëßóôåò äéáíïìÞò ôïõ
CTM . Ç ëßóôá &a.ctm-cvs-cur.name;
õðïóôçñßæåé ïëüêëçñï ôï äÝíôñï ôïõ CVS. Ç ëßóôá
&a.ctm-src-cur.name; õðïóôçñßæåé ôçí êåöáëÞ (head) ôïõ êëÜäïõ
áíÜðôõîçò (development branch). Ç ëßóôá &a.ctm-src-7.name;
õðïóôçñßæåé ôçí Ýêäïóç 7.X ê.ï.ê. Áí äåí ãíùñßæåôå ðùò íá åããñáöåßôå
óå ìéá ëßóôá, êÜíôå êëéê óôï üíïìá ôçò ëßóôáò ðïõ åìöáíßæåôáé
ðáñáðÜíù Þ ðçãáßíåôå óôï &a.mailman.lists.link; êáé êÜíôå êëéê óôç
ëßóôá ðïõ èÝëåôå íá åããñáöåßôå. Ç óåëßäá ôçò ëßóôáò èá ðñÝðåé íá
ðåñéÝ÷åé üëåò ôéò áðáñáßôçôåò ðëçñïöïñßåò ó÷åôéêÜ ìå ôéò
óõíäñïìÝò.
¼ôáí áñ÷ßóåôå íá ëáìâÜíåôå áíáíåþóåéò
CTM ìÝóù mail, ìðïñåßôå íá
÷ñçóéìïðïéÞóåôå ôï ðñüãñáììá ctm_rmail ãéá íá ôéò
áðïóõìðéÝóåôå êáé íá ôéò åöáñìüóåôå. Ìðïñåßôå óôçí ðñáãìáôéêüôçôá
íá ÷ñçóéìïðïéÞóåôå ôï ðñüãñáììá ctm_rmail
áðåõèåßáò ìÝóù ìéáò åããñáöÞò óôï /etc/aliases
áí èÝëåôå ç äéáäéêáóßá íá åêôåëåßôáé áõôïìáôïðïéçìÝíá. Äåßôå ôç
óåëßäá manual ôïõ ctm_rmail ãéá ðåñéóóüôåñåò
ëåðôïìÝñåéåò.
¶ó÷åôá ìå ôç ìÝèïäï ðïõ èá ÷ñçóéìïðïéÞóåôå ãéá íá ëÜâåôå ôá
deltas ôïõ CTM èá ðñÝðåé íá åããñáöåßôå
óôç ëßóôá &a.ctm-announce.name;. Óôï ìÝëëïí, áõôü èá åßíáé êáé ôï
ìüíï ìÝñïò óôï ïðïßï èá äçìïóéåýïíôáé ðëçñïöïñßåò ó÷åôéêÜ ìå ôéò
ëåéôïõñãßåò ôïõ óõóôÞìáôïò CTM . ÊÜíôå
êëéê óôï üíïìá ôçò ðáñáðÜíù ëßóôáò, êáé áêïëïõèåßóôå ôéò ïäçãßåò
ãéá íá åããñáöåßôå.
×ñçóéìïðïéþíôáò ôï CTM ãéá Ðñþôç
ÖïñÜ
Ðñéí áñ÷ßóåôå íá ÷ñçóéìïðïéåßôå CTM
deltas, èá ðñÝðåé íá Ý÷åôå Ýíá óçìåßï åêêßíçóçò ãéá ôá delta ðïõ
Ý÷ïõí äçìéïõñãçèåß ìåôÜ áðü áõôü.
Èá ðñÝðåé ðñþôá íá êáèïñßóåôå ôé Ý÷åôå Þäç. ÏðïéïóäÞðïôå ìðïñåß
íá áñ÷ßóåé áðü Ýíá Üäåéï
êáôÜëïãï. Èá ðñÝðåé íá
îåêéíÞóåôå ìå Ýíá áñ÷éêü Êåíü
delta ãéá íá áñ÷ßóåôå
ìå ôï CTM äÝíôñï óáò. Áðü êÜðïéï óçìåßï
èåùñïýìå üôé Ýíá áðü áõôÜ ôá áñ÷éêÜ
deltas èá
äéáíÝìïíôáé óå CD ãéá ôç äéêÞ óáò äéåõêüëõíóç, ùóôüóï áõôü äåí
óõìâáßíåé ôç äåäïìÝíç óôéãìÞ.
Êáèþò ôá äÝíôñá åßíáé áñêåôÝò äåêÜäåò megabytes, åßíáé
ðñïôéìüôåñï íá îåêéíÞóåôå áðü êÜôé ðïõ Ý÷åôå Þäç. Áí Ý÷åôå CD
êÜðïéáò äéáíïìÞò (RELEASE), ìðïñåßôå íá áíôéãñÜøåôå Þ íá
áðïóõìðéÝóåôå áðü åêåß ôïí áñ÷éêü ðçãáßï êþäéêá. ¸ôóé èá ãëõôþóåôå
óçìáíôéêü ìÝñïò ôçò ìåôáöïñÜò äåäïìÝíùí.
Ìðïñåßôå íá áíáãíùñßóåôå áõôÜ ôá áñ÷éêÜ
deltas
áðü ôï X ðïõ áêïëïõèåß ôïí áñéèìü ôïõò
(ãéá ðáñÜäåéãìá src-cur.3210XEmpty.gz ). Ï
÷áñáêôçñéóìüò ìåôÜ ôï X áíôéóôïé÷åß óôçí ðçãÞ
ôïõ áñ÷éêïý óáò seed
.
Ôï Empty åßíáé Ýíáò Üäåéïò êáôÜëïãïò. ÊáôÜ
êáíüíá äçìéïõñãåßôáé ìéá ìåôÜâáóç áðü ôï Empty
êÜèå 100 deltas. Åðßóçò ôá áñ÷åßá áõôÜ åßíáé ìåãÜëá! ÓõíçèéóìÝíï
ìÝãåèïò ãéá XEmpty deltas åßíáé ôá 70 ùò 80 MB
óõìðéåóìÝíùí ìå gzip äåäïìÝíùí.
Ìüëéò åðéëÝîåôå Ýíá âáóéêü delta ãéá íá îåêéíÞóåôå, èá
÷ñåéáóôåßôå åðßóçò üëá ôá deltas ìå ìåãáëýôåñïõò áðü áõôü
áñéèìïýò.
×ñçóéìïðïéþíôáò ôï CTM óôçí
ÊáèçìåñéíÞ óáò ÆùÞ
Ãéá íá åöáñìüóåôå ôá deltas, áðëþò ãñÜøôå:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
Ôï CTM áíôéëáìâÜíåôáé deltas ôá ïðïßá
Ý÷ïõí óõìðéåóôåß ìÝóù gzip , êáé Ýôóé äåí
÷ñåéÜæåôáé íá ÷ñçóéìïðïéÞóåôå ôçí gunzip ,
ãëõôþíïíôáò ìå áõôü ôïí ôñüðï ÷þñï óôï äßóêï.
Ôï CTM äåí ðñüêåéôáé íá ðåéñÜîåé ôá
áñ÷åßá óáò áí äåí åßíáé áðüëõôá óßãïõñï ãéá ôç äéáäéêáóßá áíáíÝùóçò.
Ãéá íá åðáëçèåýóåôå Ýíá delta ìðïñåßôå åðßóçò íá ÷ñçóéìïðïéÞóåôå ôçí
åðéëïãÞ -c êáé ôï CTM
äåí èá ðåéñÜîåé ôßðïôá, áðëþò èá åðáëçèåýóåé ôçí áêåñáéüôçôá ôïõ
delta êáé èá äåé áí ìðïñåß íá ôï åöáñìüóåé ÷ùñßò ðñïâëÞìáôá óôï
ôñÝ÷ïí äÝíôñï.
ÕðÜñ÷ïõí êáé Üëëåò åðéëïãÝò óôï CTM ,
äåßôå ôéò áíôßóôïé÷åò óåëßäåò manual Þ êïéôÜîôå ôïí ðçãáßï êþäéêá
ãéá ðåñéóóüôåñåò ðëçñïöïñßåò.
Áõôü åßíáé üëï óôçí ðñáãìáôéêüôçôá. ÊÜèå öïñÜ ðïõ ëáìâÜíåôå Ýíá
íÝï delta, áðëþò ðåñÜóôå ôï óôï CTM þóôå
íá Ý÷åôå ðÜíôïôå áíáíåùìÝíï ôïí ðçãáßï óáò êþäéêá.
Ìçí óâÞíåôå ôá deltas áí åßíáé äýóêïëï íá ôá êáôåâÜóåôå îáíÜ.
ºóùò èÝëåôå íá ôá öõëÜîåôå ãéá ôçí ðåñßðôùóç ðïõ êÜôé ðÜåé óôñáâÜ.
Áêüìá êáé áí ôï ìüíï ìÝóï ðïõ Ý÷åôå åßíáé äéóêÝôåò, êÜíôå áíôßãñáöï
÷ñçóéìïðïéþíôáò ôçí fdwrite .
Êñáôþíôáò ôéò ÔïðéêÝò óáò ÁëëáãÝò
Ùò ðñïãñáììáôéóôÞò, èá èÝëåôå íá ðåéñáìáôéóôåßôå êáé íá áëëÜîåôå
áñ÷åßá óôï äÝíôñï ôïõ ðçãáßïõ êþäéêá. Ôï
CTM õðïóôçñßæåé ðåñéïñéóìÝíïõ ôýðïõ
ôïðéêÝò áëëáãÝò: ðñéí åëÝãîåé ãéá ôçí ðáñïõóßá åíüò áñ÷åßïõ
foo , åëÝã÷åé ðñþôá ãéá ôï
foo.ctm . Áí ôï áñ÷åßï áõôü õðÜñ÷åé, ôï
CTM èá ÷ñçóéìïðïéÞóåé áõôü áíôß ãéá ôï
foo .
Ç óõìðåñéöïñÜ áõôÞ ìáò ðáñÝ÷åé Ýíá áðëü ôñüðï íá äéáôçñÞóïõìå
ôïðéêÝò áëëáãÝò: áðëþò áíôéãñÜøôå ôá áñ÷åßá ðïõ óêïðåýåôå íá
áëëÜîåôå óå áíôßóôïé÷á áñ÷åßá ìå êáôÜëçîç .ctm .
Ìðïñåßôå êáôüðéí íá êÜíåôå üôé áëëáãÝò èÝëåôå óôïí êþäéêá åíþ ôï
CTM èá äéáôçñåß áíáíåùìÝíï ôï áñ÷åßï
.ctm .
¶ëëåò ÅíäéáöÝñïõóåò ÅðéëïãÝò ôïõ
CTM
Âñßóêïíôáò ôé Áêñéâþò èá ÁëëÜîåé óå ìéá ÁíáíÝùóç
Ìðïñåßôå íá ðñïóäéïñßóåôå ôéò áëëáãÝò ðïõ èá ðñïêáëÝóåé ôï
CTM óôï repository ôïõ ðçãáßïõ óáò
êþäéêá, ÷ñçóéìïðïéþíôáò ôçí åðéëïãÞ -l .
Áõôü èá åßíáé ÷ñÞóéìï áí èÝëåôå íá êñáôÞóåôå çìåñïëüãéï ôùí
áëëáãþí, áí èÝëåôå íá åðåîåñãáóôåßôå ôá ôñïðïðïéçìÝíá áñ÷åßá ðñéí
Þ ìåôÜ ôçí ôñïðïðïßçóç ôïõò, Þ áí áðëþò áéóèÜíåóôå åëáöñþò
ðáñáíïúêüò.
Äçìéïõñãþíôáò Áíôßãñáöá Áóöáëåßáò ðñéí ôçí ÁíáíÝùóç
ÌåñéêÝò öïñÝò èá èÝëåôå íá êñáôÞóåôå áíôßãñáöï áóöáëåßáò üëùí
ôùí áñ÷åßùí ðïõ ðñüêåéôáé íá áëëá÷èïýí áðü ìéá áíáíÝùóç ìÝóù
CTM .
Äßíïíôáò ôçí åðéëïãÞ -B backup-file
ôï CTM èá äçìéïõñãÞóåé áíôßãñáöï
áóöáëåßáò üëùí ôùí áñ÷åßùí ðïõ ðñüêåéôáé íá áëëá÷èïýí áðü êÜðïéï
óõãêåêñéìÝíï delta óôï áñ÷åßï
backup-file .
Ðåñéïñßæïíôáò ôá Áñ÷åßá ðïõ èá Áëëá÷èïýí áðü ÊÜðïéá
ÁíáíÝùóç
ÌåñéêÝò öïñÝò ßóùò íá åíäéáöÝñåóôå íá ðåñéïñßóåôå ôçí ðåñéï÷Þ
äñÜóçò ìéáò óõãêåêñéìÝíçò áíáíÝùóçò ìÝóù
CTM Þ ßóùò óáò åíäéáöÝñåé íá ðÜñåôå
ìüíï ëßãá áñ÷åßá áðü êÜðïéá óåéñÜ áðü deltas.
Ìðïñåßôå íá åëÝãîåôå ôç ëßóôá ôùí áñ÷åßùí óôá ïðïßá èá
ëåéôïõñãÞóåé ôï CTM ÷ñçóéìïðïéþíôáò ùò
ößëôñá, regular expressions ìå ôéò åðéëïãÝò -e
êáé -x .
Ãéá ðáñÜäåéãìá, ãéá íá åîÜãåôå Ýíá áíáíåùìÝíï áíôßãñáöï ôïõ
áñ÷åßïõ lib/libc/Makefile áðü ôçí óõëëïãÞ óáò
ôùí áðïèçêåõìÝíùí CTM deltas, åêôåëÝóôå
ôéò åíôïëÝò:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Ãéá êÜèå áñ÷åßï ðïõ êáèïñßæåôáé óå Ýíá
CTM delta, ïé åðéëïãÝò
-e êáé -x åöáñìüæïíôáé ìå ôç
óåéñÜ ðïõ åìöáíßæïíôáé óôç ãñáììÞ åíôïëþí. Óôï áñ÷åßï ãßíåôáé
åðåîåñãáóßá áðü ôï CTM , ìüíï áí
ìáñêáñéóôåß ùò Ýãêõñï ðñïò áíáíÝùóç ìåôÜ ôçí åöáñìïãÞ üëùí ôùí
åðéëïãþí -e êáé -x .
ÌåëëïíôéêÜ Ó÷Ýäéá ãéá ôï CTM
Åßíáé ðÜñá ðïëëÜ:
×ñÞóç êÜðïéïõ åßäïõò ðéóôïðïßçóçò óôï óýóôçìá
CTM þóôå íá áíáãíùñßæïíôáé ôõ÷üí
øåýôéêåò áíáíåþóåéò.
ÎåêáèÜñéóìá ôùí åðéëïãþí ôïõ CTM ,
êáèþò ðñïêáëïýí óýã÷õóç êáé äåí åßíáé ðñïöáíåßò.
ÄéÜöïñá
ÕðÜñ÷åé åðßóçò êáé ìéá óåéñÜ áðü deltas ãéá ôçí óõëëïãÞ ôùí
ports , áëëÜ äåí Ý÷åé åêäçëùèåß áêüìá áñêåôü
åíäéáöÝñïí ãéá áõôÞ.
CTM Mirrors
Ôï CTM/&os; äéáôßèåôáé ìÝóù áíþíõìïõ
FTP áðü ôá áêüëïõèá mirrors. Áí åðéëÝîåôå íá êáôåâÜóåôå ôï
CTM ìÝóù áíþíõìïõ FTP, óáò ðáñáêáëïýìå
ðñïóðáèÞóôå íá åðéëÝîåôå ìéá ôïðïèåóßá êïíôÜ óå óáò.
Óå ðåñßðôùóç ðñïâëçìÜôùí, ðáñáêáëïýìå åðéêïéíùíÞóôå ìå ôç ëßóôá
&a.ctm-users.name;.
Êáëéöüñíéá, Bay Area, åðßóçìç ðçãÞ
Íüôéá ÁöñéêÞ, áíôßãñáöá áóöáëåßáò ãéá ðáëéÜ deltas
ÔáúâÜí/R.O.C.
Áí äåí âñÞêáôå êÜðïéï mirror óôçí ðåñéï÷Þ óáò, Þ áí ôï mirror äåí
åßíáé ðëÞñåò, ðñïóðáèÞóôå íá ÷ñçóéìïðïéÞóåôå ìéá ìç÷áíÞ áíáæÞôçóçò
üðùò ç alltheweb .
×ñçóéìïðïéþíôáò ôï CVSup
ÅéóáãùãÞ
Ôï CVSup åßíáé Ýíá ëïãéóìéêü ãéá ôçí
äéáíïìÞ êáé áíáíÝùóç äÝíôñùí ðçãáßïõ êþäéêá áðü Ýíá êåíôñéêü (master)
CVS repository ôï ïðïßï âñßóêåôáé óå êÜðïéï áðïìáêñõóìÝíï õðïëïãéóôÞ.
Ôï repository ôïõ &os; âñßóêåôáé óå Ýíá êåíôñéêü ìç÷Üíçìá óôçí
Êáëéöüñíéá. Ìå ôï CVSup , ïé ÷ñÞóôåò ôïõ
&os; ìðïñïýí åýêïëá íá äéáôçñÞóïõí áíáíåùìÝíá ôá áíôßãñáöá ôïõ
ðçãáßïõ ôïõò êþäéêá.
Ôï CVSup ÷ñçóéìïðïéåß Ýíá ìïíôÝëï
áíáíÝùóçò ãíùóôü ùò pull . Óôï ìïíôÝëï áõôü,
êÜèå ðåëÜôçò æçôÜ ôéò áíáíåþóåéò áðü ôïí åîõðçñåôçôÞ, üôáí êáé áí
ôéò åðéèõìåß. Ï åîõðçñåôçôÞò ðåñéìÝíåé, ðáèçôéêÜ, ôéò áðáéôÞóåéò áðü
ôïõò ðåëÜôåò. Ìå ôïí ôñüðï áõôü, êÜèå áíáíÝùóç îåêéíÜåé êáôüðéí
áðáßôçóçò ôïõ ðåëÜôç. Ï åîõðçñåôçôÞò ðïôÝ äåí óôÝëíåé áíáíåþóåéò ðïõ
äåí Ý÷ïõí æçôçèåß. Ïé ÷ñÞóôåò èá ðñÝðåé åßôå íá åêôåëÝóïõí ôï
CVSup ÷åéñïêßíçôá ãéá íá ëÜâïõí ìéá
áíáíÝùóç, åßôå èá ðñÝðåé íá ñõèìßóïõí êáôÜëëçëá ôï
cron þóôå íá ôï åêôåëåß áõôüìáôá êáôÜ ôáêôÜ
÷ñïíéêÜ äéáóôÞìáôá.
Ï üñïò CVSup , ãñáììÝíïò ìå êåöáëáßá
êáé ìéêñÜ üðùò öáßíåôáé, áíáöÝñåôáé óå ïëüêëçñï ôï ðáêÝôï ëïãéóìéêïý.
Ôá âáóéêÜ ôïõ ôìÞìáôá åßíáé ç åíôïëÞ ðåëÜôç cvsup
ç ïðïßá åêôåëåßôáé óôï ìç÷Üíçìá ôïõ êÜèå ÷ñÞóôç, êáé ôï ðñüãñáììá ôïõ
åîõðçñåôçôÞ cvsupd ôï ïðïßï åêôåëåßôáé óå êÜèå Ýíá
áðü ôá mirror sites ôïõ &os;.
Êáèþò äéáâÜæåôå ôçí ôåêìçñßùóç êáé ôéò ëßóôåò ôá÷õäñïìåßïõ ôïõ
&os;, ìðïñåß íá âñåßôå áíáöïñÝò óôçí åöáñìïãÞ
sup . Ôï sup
Þôáí ï ðñüãïíïò ôïõ CVSup , êáé åîõðçñåôïýóå
ðáñüìïéï óêïðü. Ôï CVSup ÷ñçóéìïðïéåßôáé
ìå áñêåôÜ üìïéï ôñüðï ìå ôï sup, êáé óôçí ðñáãìáôéêüôçôá, ÷ñçóéìïðïéåß
áñ÷åßá ñõèìßóåùí ôá ïðïßá Ý÷ïõí ðßóù óõìâáôüôçôá ìå áõôÜ ôïõ
sup . Ôï sup äåí
÷ñçóéìïðïéåßôáé ðëÝïí óôï &os; Project, åðåéäÞ ôï CVSup
åßíáé ôá÷ýôåñï êáé ðñïóöÝñåé ìåãáëýôåñç
åõåëéîßá.
Ôï ðñüãñáììá csup åßíáé ôï
CVSup îáíáãñáììÝíï óå ãëþóóá C. Ôï
ìåãáëýôåñï ôïõ ðëåïíÝêôçìá åßíáé üôé åßíáé ôá÷ýôåñï, êáé äåí
åîáñôÜôáé áðü ôçí ãëþóóá ðñïãñáììáôéóìïý Modula-3, ôçí ïðïßá êáé
äåí ÷ñåéÜæåôáé ðëÝïí íá åãêáôáóôÞóåôå. Åðßóçò ìðïñåßôå íá ôï
÷ñçóéìïðïéÞóåôå Üìåóá, êáèþò ðåñéëáìâÜíåôáé óôï âáóéêü óýóôçìá.
Áí áðïöáóßóåôå íá ÷ñçóéìïðïéÞóåôå
ôï csup , áðëþò ðáñáëåßøôå ôá âÞìáôá ãéá
ôçí åãêáôÜóôáóç ôïõ CVSup êáé
áíôéêáôáóôÞóôå êÜèå áíáöïñÜ óôï CVSup óå
áõôü ôï Üñèñï, ìå csup .
ÅãêáôÜóôáóç
Ï åõêïëüôåñïò ôñüðïò ãéá íá åãêáôáóôÞóåôå ôï
CVSup åßíáé ìÝóù ôïõ Ýôïéìïõ ðáêÝôïõ
net/cvsup áðü ôçí
óõëëïãÞ ðáêÝôùí ôïõ &os;. Áí ðñïôéìÜôå
íá ìåôáãëùôôßóåôå ôï CVSup áðü ôïí ðçãáßï
êþäéêá, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï port
net/cvsup . Óáò ðñïåéäïðïéïýìå
ùóôüóï üôé ôï port net/cvsup
åîáñôÜôáé áðü ôçí Modula-3, ç ïðïßá ÷ñåéÜæåôáé áñêåôü ÷ñüíï êáé ÷þñï
óôï äßóêï ãéá íá êáôÝâåé êáé íá ìåôáãëùôôéóôåß.
Áí ðñüêåéôáé íá ÷ñçóéìïðïéÞóåôå ôï
CVSup óå Ýíá ìç÷Üíçìá ôï ïðïßï äåí èá
äéáèÝôåé ãñáöéêü ðåñéâÜëëïí ìÝóù ôïõ
&xorg; , üðùò ð.÷. óå Ýíá åîõðçñåôçôÞ,
âåâáéùèåßôå üôé åãêáèéóôÜôå ôï áíôßóôïé÷ï port ôï ïðïßï äåí
ðåñéëáìâÜíåé ãñáöéêü ðåñéâÜëëïí, äçëáäÞ ôï
net/cvsup-without-gui .
Ñýèìéóç ôïõ CVSup
Ç ëåéôïõñãßá ôïõ CVSup åëÝã÷åôáé
áðü Ýíá áñ÷åßï ñõèìßóåùí ðïõ êáëåßôáé supfile .
ÕðÜñ÷ïõí êÜðïéá õðïäåßãìáôá áðü supfiles óôïí
êáôÜëïãï /usr/share/examples/cvsup/ .
Ïé ðëçñïöïñßåò óôï supfile áðáíôïýí
ôéò áêüëïõèåò åñùôÞóåéò ãéá ôï
CVSup :
Ðïéá áñ÷åßá èÝëåôå íá
ëÜâåôå;
Ðïéåò åêäüóåéò ôùí áñ÷åßùí
èÝëåôå;
Áðü ðïõ èÝëåôå íá ôá
ëÜâåôå;
Ðïõ èÝëåôå íá ôá
áðïèçêåýóåôå óôï ìç÷Üíçìá óáò;
Ðïõ èÝëåôå íá áðïèçêåýóåôå
ôá áñ÷åßá êáôÜóôáóçò;
Óôá åðüìåíá ôìÞìáôá, èá äçìéïõñãÞóïõìå Ýíá ôõðéêü
supfile áðáíôþíôáò êÜèå ìéá áðü ôéò åñùôÞóåéò
áõôÝò ìå ôç óåéñÜ. Ðñþôá, èá ðåñéãñÜøïõìå ôç óõíïëéêÞ äïìÞ åíüò
supfile .
¸íá supfile åßíáé Ýíá áñ÷åßï êåéìÝíïõ. Ôá
ó÷üëéá îåêéíÜíå ìå # êáé åðåêôåßíïíôáé ùò ôï ôÝëïò
ôçò ãñáììÞò. Ïé êåíÝò ãñáììÝò, êáèþò êáé áõôÝò ðïõ ðåñéÝ÷ïõí ìüíï
ó÷üëéá, áãíïïýíôáé.
ÊÜèå ãñáììÞ áðü ôéò õðüëïéðåò ðåñéãñÜöåé Ýíá óåô áñ÷åßùí ôá ïðïßá
åðéèõìåß íá ëÜâåé ï ÷ñÞóôçò. Ç ãñáììÞ îåêéíÜåé ìå ôï üíïìá ìéáò
óõëëïãÞò
, åíüò ëïãéêïý ãêñïõð áðü áñ÷åßá ðïõ ïñßæåôáé
áðü ôïí åîõðçñåôçôÞ. Ôï üíïìá ôçò óõëëïãÞò äçëþíåé óôïí åîõðçñåôçôÞ
ðïéá áñ÷åßá åðéèõìåßôå. ÌåôÜ ôï üíïìá ôçò óõëëïãÞò, ìðïñåß íá
õðÜñ÷ïõí áðü ìçäÝí ùò êÜðïéá ðåäßá, ôá ïðïßá ÷ùñßæïíôáé ìåôáîý ôïõò
ìå êåíÜ äéáóôÞìáôá. Ôá ðåäßá áõôÜ áðáíôïýí ôéò åñùôÞóåéò ðïõ ôÝèçêáí
ðáñáðÜíù. ÕðÜñ÷ïõí äýï ôýðïé ðåäßùí: ðåäßá óÞìáíóçò (flags) êáé
ðåäßá ôéìþí. ¸íá ðåäßï óÞìáíóçò áðïôåëåßôáé áðü ìéá ìüíï ëÝîç êëåéäß
ð.÷. delete Þ compress . ¸íá
ðåäßï ôéìÞò îåêéíÜåé åðßóçò ìå ìéá ëÝîç êëåéäß, áëëÜ áõôÞ áêïëïõèåßôå
÷ùñßò ôçí ðáñåìâïëÞ êåíïý äéáóôÞìáôïò áðü = êáé ìéá
äåýôåñç ëÝîç. Ãéá ðáñÜäåéãìá ôï release=cvs
áðïôåëåß Ýíá ðåäßï ôéìÞò.
¸íá supfile ôõðéêÜ êáèïñßæåé ðñïò ëÞøç
ðåñéóóüôåñåò áðü ìßá óõëëïãÝò. ¸íá ôñüðïò ãéá íá äïìÞóåôå Ýíá
supfile åßíáé íá êáèïñßóåôå üëá ôá ó÷åôéêÜ ðåäßá
÷ùñéóôÜ ãéá êÜèå óõëëïãÞ. Ìå ôïí ôñüðï áõôü ùóôüóï ôï
supfile èá êáôáëÜâåé áñêåôÝò ãñáììÝò êáé èá åßíáé
Üâïëï, åðåéäÞ ôá ðåñéóóüôåñá ðåäßá åßíáé ßäéá ãéá üëåò ôéò óõëëïãÝò
ðïõ ðåñéÝ÷ïíôáé óå áõôü. Ôï CVSup ðáñÝ÷åé
Ýíá ìç÷áíéóìü ÷ñÞóçò ðñïåðéëåãìÝíùí ôéìþí, þóôå íá áðïöåýãïíôáé áõôÜ
ôá ðñïâëÞìáôá. Ïé ãñáììÝò ðïõ îåêéíÜíå ìå ôï åéäéêü üíïìá
øåõôü-óõëëïãÞò *default ìðïñïýí íá ÷ñçóéìïðïéçèïýí
ãéá íá èÝóïõí ðåäßá óÞìáíóçò êáé ôéìþí ôá ïðïßá èá ÷ñçóéìïðïéçèïýí ùò
ðñïåðéëïãÝò ãéá ôéò óõëëïãÝò ôïõ supfile ðïõ
âñßóêïíôáé ìåôÜ áðü áõôÜ. Ìéá ðñïåðéëåãìÝíç ôéìÞ ìðïñåß íá áëëÜîåé
áí êáèïñéóôåß îáíÜ ìå íÝá ôéìÞ ìÝóá óôçí ßäéá ôç óõëëïãÞ. Ïé
ðñïåðéëïãÝò ìðïñïýí åðßóçò íá áëëÜîïõí, Þ íá ðñïóôåèïýí íÝåò,
âÜæïíôáò ðñüóèåôá *default óå ïðïéïäÞðïôå óçìåßï
ìÝóá óôï supfile .
Ãíùñßæïíôáò ôá ðáñáðÜíù, èá ðñï÷ùñÞóïõìå ôþñá óôç äüìçóç åíüò
supfile ãéá ëÞøç êáé áíáíÝùóç ôïõ êõñßùò äÝíôñïõ
ðçãáßïõ êþäéêá ãéá ôï &os;-CURRENT.
Ðïéá áñ÷åßá èÝëåôå íá
ëÜâåôå;
Ôá áñ÷åßá ðïõ åßíáé äéáèÝóéìá ìÝóù ôçò
CVSup åßíáé ïñãáíùìÝíá óå ãêñïõð ðïõ
ïíïìÜæïíôáé óõëëïãÝò
. ÐåñéãñáöÞ ôùí äéáèÝóéìùí
óõëëïãþí èá âñåßôå óôï
áêüëïõèï ôìÞìá. Óôï
ðáñÜäåéãìá ìáò, èÝëïõìå íá ëÜâïõìå ôï ðëÞñåò äÝíôñï ðçãáßïõ êþäéêá
ôïõ &os; óõóôÞìáôïò. ÕðÜñ÷åé ìéá ìåãÜëç óõëëïãÞ
src-all ç ïðïßá èá ìáò ôçí äþóåé üëç. Óáí
ðñþôï âÞìá ãéá ôçí äüìçóç ôïõ supfile , áðëþò
ãñÜöïõìå ôéò óõëëïãÝò, ìßá óå êÜèå ãñáììÞ (óôçí ðåñßðôùóç ìáò
Ý÷ïõìå ìüíï ìéá ãñáììÞ):
src-all
Ðïéåò åêäüóåéò ôùí áñ÷åßùí
èÝëåôå íá ëÜâåôå;
Ìå ôï CVSup , ìðïñåßôå ïõóéáóôéêÜ
íá ëÜâåôå ïðïéáäÞðïôå Ýêäïóç ôïõ ðçãáßïõ êþäéêá õðÞñîå ðïôÝ. Áõôü
åßíáé äõíáôüí åðåéäÞ ï åîõðçñåôçôÞò
cvsupd ëåéôïõñãåß áðåõèåßáò áðü ôï
CVS repository, ôï ïðïßï ðåñéÝ÷åé üëåò ôéò åêäüóåéò. Äçëþíåôå
ðïéá áðü áõôÝò èÝëåôå ÷ñçóéìïðïéþíôáò ôá ðåäßá ôéìþí
tag= êáé date= .
Èá ðñÝðåé íá äþóåôå éäéáßôåñç ðñïóï÷Þ óôïí êáèïñéóìü ôùí
ðåäßùí tag= þóôå íá åßíáé óùóôÜ. ÊÜðïéá
tags åßíáé Ýãêõñá ìüíï ãéá óõãêåêñéìÝíåò óõëëïãÝò áñ÷åßùí. Áí
êáèïñßóåôå ëáíèáóìÝíï tag (Þ êÜíåôå ïñèïãñáöéêü ëÜèïò) ôï
CVSup èá óâÞóåé áñ÷åßá ôá ïðïßá
ðéèáíþò äåí èÝëåôå íá óâçóôïýí. Åéäéêüôåñá, ãéá ôçí óõëëïãÞ ôùí
ports-* , ÷ñçóéìïðïéÞóôå ìüíï ôï
tag=. .
Ôï ðåäßï tag= äåß÷íåé ðñïò Ýíá óõìâïëéêü
tag óôï repository. ÕðÜñ÷ïõí äýï åßäç tags, ôá tags åêäüóåùí
(revision tags) êáé ôá tags êëÜäùí (branch tags). ¸íá revision
tag áíáöÝñåôáé óå ìéá óõãêåêñéìÝíç Ýêäïóç. Ç óçìáóßá ôïõ
äéáôçñåßôáé ßäéá áðü ôç ìéá ìÝñá óôçí Üëëç. Áðü ôçí Üëëç, Ýíá
branch tag, áíáöÝñåôáé óôçí ôåëåõôáßá Ýêäïóç ìéá óõãêåêñéìÝíçò
ãñáììÞò áíÜðôõîçò, óå êÜèå ÷ñïíéêÞ óôéãìÞ. ÅðåéäÞ Ýíá branch tag
äåí áíáöÝñåôáé óå êÜðïéá óõãêåêñéìÝíç Ýêäïóç, ìðïñåß áýñéï íá
óçìáßíåé êÜôé äéáöïñåôéêü áðü üôé óçìáßíåé óÞìåñá.
Óôï èá âñåßôå branch tags ôá ïðïßá
ìðïñåß íá óáò åíäéáöÝñïõí. ¼ôáí êáèïñßæåôå Ýíá tag óôï áñ÷åßï
ñõèìßóåùí ôïõ CVSup , èá ðñÝðåé ðñéí
áðü áõôü íá âÜæåôå ôç ëÝîç êëåéäß tag= (äçë. ôï
RELENG_8 èá ãßíåé
tag=RELENG_8 ). Íá Ý÷åôå õðüøéí óáò üôé ãéá ôçí
óõëëïãÞ ôùí Ports, ôï tag=. åßíáé ôï ìüíï
Ýãêõñï.
Íá åßóôå éäéáßôåñá ðñïóåêôéêüò, þóôå íá ãñÜøåôå ôï tag
áêñéâþò üðùò öáßíåôáé. Ôï CVSup äåí
ìðïñåß íá äéá÷ùñßóåé ìåôáîý Ýãêõñùí êáé ìç-Ýãêõñùí tags. Áí
ãñÜøåôå ëÜèïò ôï tag, ôï CVSup èá
óõìðåñéöåñèåß óáí íá Ý÷åôå äþóåé Ýíá Ýãêõñï tag ôï ïðïßï äåí
áíáöÝñåôáé óå êáíÝíá áñ÷åßï. Óôçí ðåñßðôùóç áõôÞ èá äéáãñÜøåé
ôá õðÜñ÷ïíôá áñ÷åßá óáò ðçãáßïõ êþäéêá.
¼ôáí êáèïñßóåôå êÜðïéï branch tag, öõóéïëïãéêÜ èá ëÜâåôå ôéò
ôåëåõôáßåò åêäüóåéò ôùí áñ÷åßùí ðïõ õðÜñ÷ïõí óå áõôÞ ôç ãñáììÞ
áíÜðôõîçò. Áí èÝëåôå íá ëÜâåôå êÜðïéåò ðáëéüôåñåò åêäüóåéò,
ìðïñåßôå íá ôï êÜíåôå êáèïñßæïíôáò ìéá çìåñïìçíßá ìÝóù ôïõ ðåäßïõ
ôéìþí date= . Ç óåëßäá manual &man.csup.1; åîçãåß
ðùò ìðïñåßôå íá ôï êÜíåôå.
Óôï ðáñÜäåéãìá ìáò, åðéèõìïýìå íá ëÜâïõìå ôï &os;-CURRENT.
ÐñïóèÝôïõìå ôç ãñáììÞ áõôÞ óôçí áñ÷Þ ôïõ
supfile áñ÷åßïõ ìáò:
*default tag=.
ÕðÜñ÷åé ìéá óçìáíôéêÞ åéäéêÞ ðåñßðôùóç üôáí äåí êáèïñßóåôå
ïýôå ðåäßï tag= ïýôå ðåäßï
date= . Óôçí ðåñßðôùóç áõôÞ èá ëÜâåôå ôá
êáíïíéêÜ áñ÷åßá RCS áðåõèåßáò áðü ôï CVS repository ôïõ
åîõðçñåôçôÞ, áíôß ãéá íá ëÜâåôå êÜðïéá óõãêåêñéìÝíç Ýêäïóç. Ïé
ðñïãñáììáôéóôÝò ãåíéêÜ ðñïôéìïýí áõôü ôïí ôñüðï ëåéôïõñãßáò.
Äéáôçñþíôáò ðëÞñåò áíôßãñáöï ôïõ CVS repository óôá óõóôÞìáôá ôïõò
Ý÷ïõí ôçí éêáíüôçôá íá âëÝðïõí ôï éóôïñéêü áëëáãþí êÜèå Ýêäïóçò
êáé íá åîåôÜæïõí ðáëéüôåñåò åêäüóåéò ôùí áñ÷åßùí. Ôá ðáñáðÜíù
ðëåïíåêôÞìáôá ùóôüóï Ý÷ïõí ôï êüóôïò ôçò ìåãáëýôåñçò ÷ñÞóçò ÷þñïõ
óôï óêëçñü äßóêï.
Áðü ðïõ èÝëåôå íá ôá
ëÜâåôå;
×ñçóéìïðïéïýìå ôï ðåäßï host= ãéá íá ðïýìå
óôï cvsup áðü ðïõ íá ëÜâåé ôéò áíáíåþóåéò ôïõ.
ÏðïéïäÞðïôå áðü ôá
CVSup mirror sites åßíáé
êáôÜëëçëï, áí êáé èá ðñÝðåé íá ðñïóðáèÞóåôå íá åðéëÝîåôå êÜðïéï
ôï ïðïßï íá âñßóêåôáé êïíôÜ óáò. Óôï ðáñÜäåéãìá ìáò, èá
÷ñçóéìïðïéÞóïõìå ìéá öáíôáóôéêÞ ôïðïèåóßá äéáíïìÞò ôïõ &os;, ôï
cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
Èá ðñÝðåé íá áëëÜîåôå ôï host óå êÜðïéï ðïõ ðñáãìáôéêÜ õðÜñ÷åé
ðñéí åêôåëÝóåôå ôï CVSup . ÊÜèå öïñÜ
ðïõ åêôåëåßôå ôï cvsup , Ý÷åôå ôçí äõíáôüôçôá
íá áíáôñÝðåôå áõôÞ ôç ñýèìéóç ìÝóù ôçò ãñáììÞò åíôïëþí ìå ôçí
åðéëïãÞ -h hostname .
Ðïõ èÝëåôå íá ôá áðïèçêåýóåôå
óôï ìç÷Üíçìá óáò;
Ôï ðåäßï prefix= äçëþíåé óôçí
cvsup ðïõ íá áðïèçêåýóåé ôá áñ÷åßá ðïõ
ëáìâÜíåé. Óôï ðáñÜäåéãìá ìáò, èá âÜëïõìå ôá áñ÷åßá ôïõ ðçãáßïõ
êþäéêá, áðåõèåßáò óôï êýñéï äÝíôñï ðçãáßïõ êþäéêá,
/usr/src . Ï êáôÜëïãïò
src èåùñåßôáé äåäïìÝíïò ãéá ôéò óõëëïãÝò
ðïõ Ý÷ïõìå åðéëÝîåé íá ëÜâïõìå, êáé Ýôóé ï óùóôüò ðñïóäéïñéóìüò
åßíáé áõôüò ðïõ öáßíåôáé ðáñáêÜôù:
*default prefix=/usr
Ðïõ èá áðïèçêåýóåé ôï
cvsup ôá áñ÷åßá êáôÜóôáóçò ôïõ;
Ï ðåëÜôçò CVSup äéáôçñåß êÜðïéá
áñ÷åßá êáôÜóôáóçò (status files) óå áõôü ðïõ áðïêáëåßôáé êáôÜëïãïò
base
. Ôá áñ÷åßá áõôÜ âïçèïýí ôï
CVSup íá ëåéôïõñãåß ðéï áðïäïôéêÜ
êñáôþíôáò ëïãáñéáóìü ôùí áíáíåþóåùí ðïõ Ý÷åôå Þäç ëÜâåé. Èá
÷ñçóéìïðïéÞóïõìå ôïí ðñïåðéëåãìÝíï êáôÜëïãï base,
/var/db :
*default base=/var/db
Áí ï base êáôÜëïãïò óáò äåí õðÜñ÷åé Þäç, ôþñá åßíáé ìéá êáëÞ
óôéãìÞ íá ôïí äçìéïõñãÞóåôå. O ðåëÜôçò cvsup
äåí èá åêôåëåßôáé áí ï base êáôÜëïãïò äåí õðÜñ÷åé.
ÄéÜöïñåò ñõèìßóåéò ãéá ôï supfile :
ÕðÜñ÷åé áêüìá ìéá êïéíÞ ãñáììÞ ñõèìßóåùí, ç ïðïßá ôõðéêÜ
õðÜñ÷åé óôï supfile :
*default release=cvs delete use-rel-suffix compress
Ôï release=cvs äåß÷íåé üôé ï åîõðçñåôçôÞò
èá ðñÝðåé íá ëÜâåé ôéò ðëçñïöïñßåò ôïõ ìÝóù ôïõ êýñéïõ CVS
repository ôïõ &os;. Áõôü éó÷ýåé ó÷åäüí ðÜíôá, áëëÜ õðÜñ÷ïõí êáé
Üëëåò ðéèáíüôçôåò ðïõ îåöåýãïõí áðü ôï óêïðü áõôÞò ôçò
óõæÞôçóçò.
Ç ëÝîç delete äßíåé äéêáéþìáôá óôï
CVSup íá äéáãñÜöåé áñ÷åßá.
Èá ðñÝðåé ðÜíôïôå íá Ý÷åôå ôçí åðéëïãÞ áõôÞ, þóôå ôï
CVSup íá ìðïñåß íá êñáôÞóåé ôï äÝíôñï
ôïõ ðçãáßïõ óáò êþäéêá ðëÞñùò áíáíåùìÝíï. Ôï
CVSup åßíáé áñêåôÜ ðñïóåêôéêü þóôå íá
óâÞíåé ìüíï ôá áñ÷åßá ðïõ âñßóêïíôáé õðü ôçí åõèýíç ôïõ. Áí ôõ÷üí
âÜëåôå Ýîôñá áñ÷åßá óôïí ßäéï êáôÜëïãï, äåí èá ôá áããßîåé.
Ç åðéëïãÞ use-rel-suffix åßíáé...
áñ÷áéïëïãéêÞ. Áí ðñáãìáôéêÜ èÝëåôå íá ìÜèåôå ó÷åôéêÜ ìå áõôÞí,
äéáâÜóôå ôç óåëßäá manual &man.cvsup.1;. Áëëéþò, áðëþò
÷ñçóéìïðïéÞóôå ôçí, êáé ìçí áíçóõ÷åßôå éäéáßôåñá ãéá áõôÞ.
Ç åðéëïãÞ compress åíåñãïðïéåß ôç ÷ñÞóç
óõìðßåóçò ôýðïõ gzip óôï êáíÜëé åðéêïéíùíßáò. Áí Ý÷åôå óýíäåóç
äéêôýïõ ôýðïõ T1 Þ êáé ðéï ãñÞãïñç, ìÜëëïí äåí èá ðñÝðåé íá
÷ñçóéìïðïéÞóåôå óõìðßåóç. Óå äéáöïñåôéêÞ ðåñßðôùóç, èá âïçèÞóåé
åîáéñåôéêÜ.
¼ëåò ïé åðéëïãÝò ìáæß:
Åäþ åßíáé ôï ðëÞñåò supfile ãéá ôï
ðáñÜäåéãìá ìáò:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
Ôï Áñ÷åßï refuse
¼ðùò áíáöÝñáìå ðáñáðÜíù, ôï CVSup
÷ñçóéìïðïéåß ìÝèïäï pull . ÂáóéêÜ áõôü óçìáßíåé
üôé óõíäÝåóôå óôïí åîõðçñåôçôÞ CVSup ,
áõôüò ëÝåé ÁõôÜ åßíáé ôá áñ÷åßá ðïõ ìðïñåßôå íá êáôåâÜóåôå
áðü ìÝíá..
, êáé ôï äéêü óáò ðñüãñáììá áðáíôÜåé
ÅíôÜîåé, èá ðÜñù áõôü, áõôü, áõôü, êáé áõôü.
Óôçí
ðñïåðéëåãìÝíç ñýèìéóç, ï ðåëÜôçò CVSup èá
ðÜñåé êÜèå áñ÷åßï ðïõ óõíäÝåôáé ìå ôçí óõëëïãÞ êáé ôï tag ðïõ Ý÷åôå
êáèïñßóåé óôï áñ÷åßï ñõèìßóåùí. Ùóôüóï ìðïñåß íá ìçí ôï åðéèõìåßôå
áõôü ðÜíôá, åéäéêÜ áí óõã÷ñïíßæåôå ôá äÝíôñá
doc , ports Þ
www — ïé ðåñéóóüôåñïé Üíèñùðïé äåí
ìðïñïýí íá äéáâÜóïõí ôÝóóåñéò Þ ðÝíôå ãëþóóåò êáé Ýôóé äåí
÷ñåéÜæåôáé íá êáôåâÜóïõí áñ÷åßá ðïõ áíáöÝñïíôáé åéäéêÜ óå áõôÝò. Áí
÷ñçóéìïðïéåßôå ôï CVSup ãéá ôçí óõëëïãÞ
ôùí Ports, ìðïñåßôå íá îåðåñÜóåôå áõôÞ ôç óõìðåñéöïñÜ êáèïñßæïíôáò
óõãêåêñéìÝíåò óõëëïãÝò (ð.÷. ports-astrology ,
ports-biology áíôß ãéá
ports-all ). Ùóôüóï, åðåéäÞ ôá äÝíôñá
doc êáé www äåí äéáèÝôïõí
óõëëïãÝò ÷ùñéóìÝíåò áíÜ ãëþóóá, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå Ýíá áðü
ôá âïëéêÜ ÷áñáêôçñéóôéêÜ ôïõ CVSup : ôï
áñ÷åßï refuse .
Ôï áñ÷åßï refuse ïõóéáóôéêÜ ëÝåé óôï
CVSup üôé äåí ðñÝðåé íá ðÜñåé êÜèå áñ÷åßï
áðü ìéá óõëëïãÞ. Ìå Üëëá ëüãéá, ëÝåé óôïí ðåëÜôç íá
áñíçèåß óõãêåêñéìÝíá áñ÷åßá ðïõ ðñïóöÝñåé ï
åîõðçñåôçôÞò. Ôï áñ÷åßï refuse ìðïñåß íá
âñåèåß (Þ íá äçìéïõñãçèåß áí äåí Ý÷åôå Þäç) óôï
base /sup/ .
Ôï base êáèïñßæåôáé óôï
supfile . Ôï äéêü ìáò
base åßíáé óôï
/var/db , ôï ïðïßï óçìáßíåé üôé ôï ðñïåðéëåãìÝíï
áñ÷åßï refuse èá åßíáé ôï
/var/db/sup/refuse .
Ôï áñ÷åßï refuse Ý÷åé éäéáßôåñá áðëÞ ìïñöÞ.
Áðëþò ðåñéÝ÷åé ôá ïíüìáôá ôùí áñ÷åßùí êáé êáôáëüãùí ôá ïðïßá äåí
åðéèõìåßôå íá êáôåâÜóåôå. Ãéá ðáñÜäåéãìá, áí äåí ìéëÜôå ãëþóóåò
åêôüò áðü ÁããëéêÜ êáé ëßãá ÃåñìáíéêÜ, êáé äåí áéóèÜíåóôå ôçí áíÜãêç
íá äéáâÜóåôå ôçí ÃåñìáíéêÞ ìåôÜöñáóç ôçò ôåêìçñßùóçò, ìðïñåßôå íá
âÜëåôå ôá áêüëïõèá óôï äéêü óáò áñ÷åßï
refuse :
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
ê.ï.ê. ãéá ôéò õðüëïéðåò ãëþóóåò (ìðïñåßôå íá âñåßôå ôçí ðëÞñç
ëßóôá óôï &os; CVS
repository ).
Ìå áõôÞ ôç ÷ñÞóéìç äõíáôüôçôá, ïé ÷ñÞóôåò ðïõ Ý÷ïõí áñãÞ óýíäåóç
Þ ðëçñþíïõí ôï Internet ìå ÷ñïíï÷ñÝùóç áíÜ ëåðôü, èá ìðïñÝóïõí íá
åîïéêïíïìÞóïõí ðïëýôéìï ÷ñüíï êáèþò äåí èá ÷ñåéÜæåôáé ðëÝïí íá
êáôåâÜóïõí áñ÷åßá ðïõ äåí ðñüêåéôáé íá ÷ñçóéìïðïéÞóïõí ðïôÝ. Ãéá
ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå ôá áñ÷åßá
refuse êáé Üëëá ÷ñÞóéìá ÷áñáêôçñéóôéêÜ ôïõ
CVSup , ðáñáêáëïýìå äéáâÜóôå ôçí
áíôßóôïé÷ç óåëßäá ôïõ manual.
Åêôåëþíôáò ôï CVSup
Åßóôå ôþñá Ýôïéìïé íá äïêéìÜóåôå ìéá áíáíÝùóç. Ç ãñáììÞ åíôïëÞò
ãéá ôï óêïðü áõôü åßíáé éäéáßôåñá áðëÞ:
&prompt.root; cvsup supfile
üðïõ ôï supfile
åßíáé öõóéêÜ ôï üíïìá ôïõ áñ÷åßïõ supfile ðïõ
ìüëéò äçìéïõñãÞóáôå. ÕðïèÝôïíôáò üôé ÷ñçóéìïðïéåßôå ôá X11, ç åíôïëÞ
cvsup èá óáò åìöáíßóåé Ýíá ãñáöéêü ðáñÜèõñï ìå
êÜðïéá ðëÞêôñá óõíçèéóìÝíùí ëåéôïõñãéþí. ÐéÝóôå ôï ðëÞêôñï
go , êáé ðáñáêïëïõèÞóôå ôçí åêôÝëåóç.
Êáèþò óôçí ðåñßðôùóç ìáò áíáíåþíåôáé ôï ðñáãìáôéêü äÝíôñï
/usr/src , èá ÷ñåéáóôåß íá åêôåëÝóåôå ôï
ðñüãñáììá ùò root þóôå ç
cvsup íá Ý÷åé ôá äéêáéþìáôá ðïõ ÷ñåéÜæåôáé ãéá íá
áíáíåþóåé ôá áñ÷åßá óáò. Êáèþò ìüëéò Ý÷åôå äçìéïõñãÞóåé ôï áñ÷åßï
ñõèìßóåùí, êáé äåí Ý÷åôå ðïôÝ ðñéí ÷ñçóéìïðïéÞóåé ôï ðñüãñáììá, ßóùò
áéóèÜíåóôå ëßãï Üâïëá. ÕðÜñ÷åé åýêïëïò ôñüðïò íá êÜíåôå äïêéìáóôéêÞ
åêôÝëåóç ÷ùñßò íá ðåéñÜîåôå ôá ðïëýôéìá áñ÷åßá óáò. Áðëþò
äçìéïõñãÞóôå Ýíá Üäåéï êáôÜëïãï óå Ýíá âïëéêü ìÝñïò, êáé äþóôå ôï óáí
Ýîôñá ðáñÜìåôñï óôçí ãñáììÞ åíôïëþí:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
Ï êáôÜëïãïò ðïõ êáèïñßóáôå èá ÷ñçóéìïðïéçèåß ùò ðñïïñéóìüò ãéá
üëåò ôéò áíáíåþóåéò áñ÷åßùí. Ôï CVSup èá
åîåôÜóåé ôá êáíïíéêÜ áñ÷åßá óáò óôï /usr/src ,
áëëÜ äåí èá ôñïðïðïéÞóåé ïýôå èá äéáãñÜøåé êáíÝíá áðü áõôÜ. ÊÜèå
áíáíÝùóç áñ÷åßïõ èá ãßíåé óôïí êáôÜëïãï
/var/tmp/dest/usr/src .
Ôï CVSup üôáí åêôåëåßôáé ìå áõôü ôïí ôñüðï
áöÞíåé åðßóçò áíÝðáöá ôá áñ÷åßá êáôÜóôáóçò ôïõ óôïí êáôÜëïãï base. Ïé
íÝåò åêäüóåéò ôùí áñ÷åßùí áõôþí èá ãñáöïýí óôïí êáèïñéóìÝíï êáôÜëïãï.
Áí Ý÷åôå áðëþò ðñüóâáóç áíÜãíùóçò óôï /usr/src ,
äåí ÷ñåéÜæåóôå íá åßóôå êáí root ãéá íá êÜíåôå
áõôÞ ôç äïêéìáóôéêÞ åêôÝëåóç.
Áí äåí åêôåëåßôå ôá X11 Þ áðëþò äåí óáò áñÝóïõí ôá ãñáöéêÜ
ðåñéâÜëëïíôá, ìðïñåßôå íá äþóåôå êÜðïéåò åðéëïãÝò óôçí ãñáììÞ åíôïëþí
üôáí åêôåëåßôå ôçí cvsup :
&prompt.root; cvsup -g -L 2 supfile
Ç åðéëïãÞ -g ëÝåé óôï
CVSup íá ìç ÷ñçóéìïðïéÞóåé ôï ãñáöéêü ôïõ
ðåñéâÜëëïí. Áõôü ãßíåôáé áõôüìáôá áí äåí åêôåëïýíôáé ôá X11, áëëÜ
äéáöïñåôéêÜ èá ðñÝðåé íá ôï êáèïñßóåôå.
Ç åðéëïãÞ -L 2 ëÝåé óôï
CVSup íá åìöáíßóåé üëåò ôéò ëåðôïìÝñåéåò
ãéá üëåò ôéò áíáíåþóåéò áñ÷åßùí ðïõ åêôåëåß. ÕðÜñ÷ïõí ôñßá åðßðåäá
ðåñéãñáöÞò, áðü ôï -L 0 ùò ôï -L 2 .
Ç ðñïåðéëïãÞ åßíáé ôï 0, ðïõ óçìáßíåé áðüëõôç óéùðÞ åêôüò áðü ìçíýìáôá
ëÜèïõò.
ÕðÜñ÷ïõí äéáèÝóéìåò áñêåôÝò áêüìá åðéëïãÝò. Ãéá ìéá ðåñéëçðôéêÞ
ëßóôá, ãñÜøôå cvsup -H . Ãéá ðåñéóóüôåñï
ëåðôïìåñåßò ðåñéãñáöÝò, äåßôå ôç óåëßäá ôïõ manual.
¼ôáí ìåßíåôå éêáíïðïéçìÝíïò áðü ôïí ôñüðï ðïõ ãßíïíôáé ïé
áíáíåþóåéò, ìðïñåßôå íá êáíïíßóåôå ôçí óå ôáêôÜ äéáóôÞìáôá åêôÝëåóç
ôïõ CVSup ìå ôçí ÷ñÞóç ôïõ
&man.cron.8;. Ðñïöáíþò äåí èá ðñÝðåé íá áöÞóåôå ôï
CVSup íá ÷ñçóéìïðïéåß ôï ãñáöéêü ôïõ
ðåñéâÜëëïí üôáí ôï åêôåëåßôå ìÝóù ôïõ &man.cron.8;.
ÓõëëïãÝò Áñ÷åßùí ôïõCVSup
Ïé óõëëïãÝò áñ÷åßùí ðïõ äéáôßèåíôáé ìÝóù ôïõ
CVSup åßíáé ïñãáíùìÝíåò éåñáñ÷éêÜ.
ÕðÜñ÷ïõí ëßãåò ìåãÜëåò óõëëïãÝò, êáé áõôÝò ÷ùñßæïíôáé óå ìéêñüôåñåò
õðï-óõëëïãÝò. Ç ëÞøç ìéáò ìåãÜëçò óõëëïãÞò, éóïäõíáìåß ìå ôçí ëÞøç
êÜèå ìéáò áðü ôéò õðï-óõëëïãÝò ôéò. Ïé éåñáñ÷éêÝò ó÷Ýóåéò ìåôáîý ôùí
óõëëïãþí, áíôéêáôïðôñßæïíôáé ðáñáêÜôù ìå ôçí ÷ñÞóç ôùí åóï÷þí.
Ïé ðéï óõ÷íÜ ÷ñçóéìïðïéïýìåíåò óõëëïãÝò åßíáé ç
src-all , êáé ç
ports-all . Ïé Üëëåò óõëëïãÝò ÷ñçóéìïðïéïýíôáé ìüíï
áðü ìéêñÝò ïìÜäåò áíèñþðùí ãéá åéäéêïýò óêïðïýò, êáé êÜðïéá mirror
sites ìðïñåß íá ìçí ôéò Ý÷ïõí êáèüëïõ.
cvs-all release=cvs
Ôï êýñéï CVS repository ôïõ &os;, ðïõ ðåñéëáìâÜíåé êáé ôïí
êþäéêá êñõðôïãñáößáò.
distrib release=cvs
Áñ÷åßá ðïõ áíáöÝñïíôáé óôçí äéáíïìÞ êáé ôï mirroring
ôïõ &os;.
doc-all release=cvs
Ðçãáßïò êþäéêáò ãéá ôï &os; Handbook êáé ôçí õðüëïéðç
ôåêìçñßùóç. Äåí ðåñéëáìâÜíåé áñ÷åßá ãéá ôï web site ôïõ
&os;.
ports-all release=cvs
Ç óõëëïãÞ Ports ôïõ &os;.
Áí äåí èÝëåôå íá áíáíåþóåôå üëï ôï
ports-all (ôï ðëÞñåò äÝíôñï ôùí
ports), áëëÜ íá ÷ñçóéìïðïéÞóåôå ìéá áðü ôéò õðïóõëëïãÝò
ðïõ öáßíïíôáé ðáñáêÜôù, âåâáéùèåßôå üôé
ðÜíôá áíáíåþíåôå ôçí õðïóõëëïãÞ
ports-base ! ¼ôáí êÜôé áëëÜæåé óôï
óýóôçìá ìåôáãëþôôéóçò ôùí ports ðïõ áíôéðñïóùðåýåôáé áðü
ôï ports-base , åßíáé ðñáêôéêÜ âÝâáéï
üôé ïé áëëáãÝò áõôÝò ðïëý óýíôïìá èá ÷ñçóéìïðïéçèïýí áðü
ðñáãìáôéêÜ
ports. ¸ôóé, áí áíáíåþíåôå
ìüíï ôá ðñáãìáôéêÜ
ports êáé áõôÜ
÷ñçóéìïðïéïýí êÜðïéåò áðü ôéò íÝåò äõíáôüôçôåò, õðÜñ÷åé
ìåãÜëç ðéèáíüôçôá ç ìåôáãëþôôéóç ôïõò íá áðïôý÷åé ìå
êÜðïéï ìõóôçñéþäåò ìÞíõìá ëÜèïõò. Ôï
ðñþôï ðñÜãìá ðïõ ðñÝðåé íá êÜíåôå
óå áõôÞ ôçí ðåñßðôùóç åßíáé íá âåâáéùèåßôå üôé åßíáé
åíçìåñùìÝíç ç óõëëïãÞ óáò
ports-base .
Áí óêïðåýåôå íá äçìéïõñãÞóåôå ôï äéêü óáò ôïðéêü
áíôßãñáöï ôïõ ports/INDEX , èá
ðñÝðåé íá äå÷ôåßôå ôç óõëëïãÞ
ports-all (ïëüêëçñï ôï äÝíôñï ôùí
ports). H äçìéïõñãßá ôïõ
ports/INDEX áðü ìç-ðëÞñåò äÝíôñï
äåí õðïóôçñßæåôáé. Äåßôå ôï
FAQ .
ports-accessibility
release=cvs
Ëïãéóìéêü ãéá ôçí âïÞèåéá ÷ñçóôþí ìå
áíáðçñßåò.
ports-arabic
release=cvs
ÕðïóôÞñéîç ÁñáâéêÞò Ãëþóóáò.
ports-archivers
release=cvs
Åñãáëåßá áðïèÞêåõóçò êáé óõìðßåóçò.
ports-astro
release=cvs
Ports ó÷åôéêÜ ìå áóôñïíïìßá.
ports-audio
release=cvs
ÕðïóôÞñéîç Þ÷ïõ.
ports-base
release=cvs
ÂáóéêÜ áñ÷åßá ôùí ports ãéá õðïóôÞñéîç ôïõ
óõóôÞìáôïò ìåôáãëþôôéóçò. ÄéÜöïñá áñ÷åßá ðïõ
âñßóêïíôáé óôïõò õðïêáôáëüãïõò
Mk/ êáé
Tools/ ôïõ
/usr/ports .
Ðáñáêáëïýìå äåßôå ôçí óçìáíôéêÞ
ðñïåéäïðïßçóç ðáñáðÜíù: èá ðñÝðåé
ðÜíôïôå íá åíçìåñþíåôå áõôÞ
ôçí õðïóõëëïãÞ, üôáí åíçìåñþíåôå ïðïéïäÞðïôå ôìÞìá
ôçò óõëëïãÞò Ports ôïõ &os;.
ports-benchmarks
release=cvs
ÐñïãñÜììáôá ìÝôñçóçò áðüäïóçò
(Benchmarks).
ports-biology
release=cvs
Âéïëïãßá.
ports-cad
release=cvs
Åñãáëåßá ó÷åäßáóçò ìå ôç âïÞèåéá
õðïëïãéóôÞ.
ports-chinese
release=cvs
ÕðïóôÞñéîç ÊéíåæéêÞò Ãëþóóáò.
ports-comms
release=cvs
Ëïãéóìéêü åðéêïéíùíéþí.
ports-converters
release=cvs
Ìåôáôñïðåßò ÷áñáêôÞñùí.
ports-databases
release=cvs
ÂÜóåéò ÄåäïìÝíùí.
ports-deskutils
release=cvs
Áíôéêåßìåíá ðïõ âñßóêïíôáí óõíÞèùò óå Ýíá
ãñáöåßï ðñéí ôçí åöåýñåóç ôùí õðïëïãéóôþí.
ports-devel
release=cvs
ÂïçèçôéêÜ ðñïãñÜììáôá ãéá ôçí áíÜðôõîç
ëïãéóìéêïý.
ports-dns
release=cvs
Ëïãéóìéêü ó÷åôéêü ìå DNS.
ports-editors
release=cvs
ÓõíôÜêôåò êåéìÝíïõ.
ports-emulators
release=cvs
ÅîïìïéùôÝò Üëëùí ëåéôïõñãéêþí óõóôçìÜôùí.
ports-finance
release=cvs
×ñçìáôïïéêïíïìéêÜ ðñïãñÜììáôá.
ports-ftp
release=cvs
ÐñïãñÜììáôá FTP (ðåëÜôåò êáé
åîõðçñåôçôÝò).
ports-games
release=cvs
Ðáé÷íßäéá.
ports-german
release=cvs
ÕðïóôÞñéîç ÃåñìáíéêÞò ãëþóóáò.
ports-graphics
release=cvs
Åñãáëåßá ãñáöéêþí.
ports-hebrew
release=cvs
ÕðïóôÞñéîç åâñáúêÞò ãëþóóáò.
ports-hungarian
release=cvs
ÕðïóôÞñéîç ÏõããáñÝæéêçò ãëþóóáò.
ports-irc
release=cvs
ÐñïãñÜììáôá ãéá ôï IRC.
ports-japanese
release=cvs
ÕðïóôÞñéîç ÉáðùíéêÞò ãëþóóáò.
ports-java
release=cvs
Åñãáëåßá ãéá ôçí &java;.
ports-korean
release=cvs
ÕðïóôÞñéîç ÊïñåáôéêÞò ãëþóóáò.
ports-lang
release=cvs
Ãëþóóåò ðñïãñáììáôéóìïý.
ports-mail
release=cvs
ÐñïãñÜììáôá çëåêôñïíéêïý ôá÷õäñïìåßïõ.
ports-math
release=cvs
Ëïãéóìéêü ìáèçìáôéêþí õðïëïãéóìþí.
ports-misc
release=cvs
ÄéÜöïñá âïçèçôéêÜ ðñïãñÜììáôá.
ports-multimedia
release=cvs
Ëïãéóìéêü ðïëõìÝóùí.
ports-net
release=cvs
Ëïãéóìéêü äéêôýùí.
ports-net-im
release=cvs
Ëïãéóìéêü Üìåóùí ìçíõìÜôùí (instant
messaging).
ports-net-mgmt
release=cvs
Ëïãéóìéêü äéá÷åßñéóçò äéêôýùí.
ports-net-p2p
release=cvs
Äéêôýùóç peer-to-peer.
ports-news
release=cvs
Ëïãéóìéêü ãéá ôï USENET.
ports-palm
release=cvs
Ëïãéóìéêü ãéá ôçí õðïóôÞñéîç óõóêåõþí ôýðïõ
Palm .
ports-polish
release=cvs
ÕðïóôÞñéîç ÐïëùíéêÞò ãëþóóáò.
ports-ports-mgmt
release=cvs
Åñãáëåßá ãéá ôç äéá÷åßñéóç ðáêÝôùí êáé
ports.
ports-portuguese
release=cvs
ÕðïóôÞñéîç ÐïñôïãáëéêÞò ãëþóóáò.
ports-print
release=cvs
Ëïãéóìéêü åêôõðþóåùí.
ports-russian
release=cvs
ÕðïóôÞñéîç ÑùóéêÞò ãëþóóáò.
ports-science
release=cvs
ÅðéóôçìïíéêÜ ðñïãñÜììáôá.
ports-security
release=cvs
Åñãáëåßá áóöáëåßáò.
ports-shells
release=cvs
Shells ãéá ôçí ãñáììÞ åíôïëþí.
ports-sysutils
release=cvs
ÂïçèçôéêÜ ðñïãñÜììáôá óõóôÞìáôïò.
ports-textproc
release=cvs
Åñãáëåßá åðåîåñãáóßáò êåéìÝíïõ (äåí ðåñéëáìâÜíåé
åðéôñáðÝæéá ôõðïãñáößá).
ports-ukrainian
release=cvs
ÕðïóôÞñéîç ÏõêñáíéêÞò ãëþóóáò.
ports-vietnamese
release=cvs
ÕðïóôÞñéîç ÂéåôíáìÝæéêçò ãëþóóáò.
ports-www
release=cvs
Ëïãéóìéêü ðïõ ó÷åôßæåôáé ìå ôïí ðáãêüóìéï éóôü
(World Wide Web).
ports-x11
release=cvs
Ports ãéá õðïóôÞñéîç ôïõ óõóôÞìáôïò X
Windows.
ports-x11-clocks
release=cvs
Ñïëüãéá ãéá ôï X11.
ports-x11-drivers
release=cvs
ÐñïãñÜììáôá ïäÞãçóçò ãéá ôá X11.
ports-x11-fm
release=cvs
Äéá÷åéñéóôÝò áñ÷åßùí ãéá ôá X11.
ports-x11-fonts
release=cvs
ÃñáììáôïóåéñÝò êáé åñãáëåßá ãñáììáôïóåéñþí ãéá
X11.
ports-x11-toolkits
release=cvs
ÅñãáëåéïèÞêåò X11.
ports-x11-servers
release=cvs
ÅîõðçñåôçôÝò X11.
ports-x11-themes
release=cvs
ÈÝìáôá ãéá X11.
ports-x11-wm
release=cvs
Äéá÷åéñéóôÝò ðáñáèýñùí (window managers) ãéá
X11.
projects-all release=cvs
Ðçãáßïò êþäéêáò ãéá ôï projects repository ôïõ
&os;.
src-all release=cvs
Ï âáóéêüò ðçãáßïò êþäéêá ôïõ &os;, óõìðåñéëáìâáíïìÝíïõ
ôïõ êþäéêá êñõðôïãñáößáò.
src-base
release=cvs
ÄéÜöïñá áñ÷åßá óôçí êïñõöÞ ôïõ
/usr/src .
src-bin
release=cvs
Åñãáëåßá ðïõ ðéèáíüí íá áðáéôïýíôáé óå êáôÜóôáóç
ëåéôïõñãßáò åíüò ÷ñÞóôç (single-user)
(/usr/src/bin ).
src-cddl
release=cvs
Åñãáëåßá êáé âéâëéïèÞêåò ðïõ êáëýðôïíôáé áðü ôçí
Üäåéá ÷ñÞóçò CDDL
(/usr/src/cddl ).
src-contrib
release=cvs
Åñãáëåßá êáé âéâëéïèÞêåò ðïõ äåí áíÞêïõí óôï
&os; Project, êáé ôá ïðïßá ÷ñçóéìïðïéïýíôáé
ïõóéáóôéêÜ áíáëëïßùôá
(/usr/src/contrib ).
src-crypto release=cvs
Åñãáëåßá êáé âéâëéïèÞêåò êñõðôïãñÜöçóçò ðïõ äåí
áíÞêïõí óôï &os; project êáé ôá ïðïßá
÷ñçóéìïðïéïýíôáé ïõóéáóôéêÜ áíáëëïßùôá
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos êáé DES
(/usr/src/eBones ). Äåí
÷ñçóéìïðïéïýíôáé óôéò ôñÝ÷ïõóåò åêäüóåéò ôïõ
&os;.
src-etc
release=cvs
Áñ÷åßá ñõèìßóåùí ôïõ óõóôÞìáôïò
(/usr/src/etc ).
src-games
release=cvs
Ðáé÷íßäéá
(/usr/src/games ).
src-gnu
release=cvs
Åñãáëåßá ðïõ êáëýðôïíôáé áðü ôçí Üäåéá ÷ñÞóçò
GNU Public License
(/usr/src/gnu ).
src-include
release=cvs
Áñ÷åßá åðéêåöáëßäùí
(/usr/src/include ).
src-kerberos5
release=cvs
ÐáêÝôï áóöáëåßáò Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
ÐáêÝôï áóöáëåßáò KerberosIV
(/usr/src/kerberosIV ).
src-lib
release=cvs
ÂéâëéïèÞêåò
(/usr/src/lib ).
src-libexec
release=cvs
ÐñïãñÜììáôá óõóôÞìáôïò ôá ïðïßá öõóéïëïãéêÜ
åêôåëïýíôáé áðü Üëëá ðñïãñÜììáôá
(/usr/src/libexec ).
src-release
release=cvs
Áñ÷åßá ðïõ áðáéôïýíôáé ãéá ôçí ðáñáãùãÞ ìéáò
Ýêäïóçò ôïõ &os;
(/usr/src/release ).
src-rescue
release=cvs
ÐñïãñÜììáôá ìå óôáôéêÞ ìåôáãëþôôéóç ãéá ÷ñÞóç
óå Ýêôáêôåò ðåñéðôþóåéò åðáíáöïñÜò ôïõ óõóôÞìáôïò.
Äåßôå ôï &man.rescue.8;
(/usr/src/rescue ).
src-sbin release=cvs
Åñãáëåßá óõóôÞìáôïò ãéá ëåéôïõñãßá óå êáôÜóôáóç
åíüò ÷ñÞóôç (single user mode)
(/usr/src/sbin ).
src-secure
release=cvs
ÂéâëéïèÞêåò êáé åíôïëÝò êñõðôïãñÜöçóçò
(/usr/src/secure ).
src-share
release=cvs
Áñ÷åßá ôá ïðïßá ìðïñåß íá åßíáé êïéíÜ áíÜìåóá óå
ðïëëáðëÜ óõóôÞìáôá
(/usr/src/share ).
src-sys
release=cvs
Ï ðõñÞíáò
(/usr/src/sys ).
src-sys-crypto
release=cvs
Êþäéêáò êñõðôïãñáößáò ôïõ ðõñÞíá
(/usr/src/sys/crypto ).
src-tools
release=cvs
ÄéÜöïñá åñãáëåßá ãéá ôç óõíôÞñçóç ôïõ &os;
(/usr/src/tools ).
src-usrbin
release=cvs
Åñãáëåßá ÷ñÞóôç
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
Åñãáëåßá óõóôÞìáôïò
(/usr/src/usr.sbin ).
www release=cvs
Ï ðçãáßïò êþäéêáò ãéá ôçí ôïðïèåóßá WWW ôïõ
&os;.
distrib release=self
Ôá áñ÷åßá ñõèìßóåùí ôïõ ßäéïõ ôïõ åîõðçñåôçôÞ
CVSup . ×ñçóéìïðïéåßôáé áðü
CVSup mirror sites.
gnats release=current
H âÜóç äåäïìÝíùí ôïõ óõóôÞìáôïò ðáñáêïëïýèçóçò ðñïâëçìÜôùí
GNATS.
mail-archive release=current
Ôá áñ÷åßá ôçò ëßóôáò ôá÷õäñïìåßïõ ôïõ &os;.
www release=current
Ðñï-åðåîåñãáóìÝíá áñ÷åßá ôçò äéêôõáêÞò ôïðïèåóßáò (WWW) ôïõ
&os; (ü÷é ï ðçãáßïò êþäéêáò). ×ñçóéìïðïéåßôáé áðü WWW mirror
sites.
Ãéá Ðåñéóóüôåñåò Ðëçñïöïñßåò
Ãéá ôï FAQ ôïõ CVSup êáé Üëëåò
ðëçñïöïñßåò ó÷åôéêÜ ìå áõôü, äåßôå ôç
Óåëßäá ôïõ CVSup .
ÓõæçôÞóåéò ó÷åôéêÜ ìå ôç ÷ñÞóç ôïõ
CVSup óôï &os; ëáìâÜíïõí ÷þñá óôçí
&a.hackers;. Óôç ëßóôá áõôÞ, êáèþò êáé óôçí &a.announce;
áíáêïéíþíïíôáé êáé ïé íÝåò åêäüóåéò ôïõ ðñïãñÜììáôïò.
Ãéá åñùôÞóåéò Þ áíáöïñÝò óöáëìÜôùí ó÷åôéêÜ ìå ôï
CVSup ñßîôå ìéá ìáôéÜ óôï
CVSup FAQ .
Ôïðïèåóßåò CVSup
Ìðïñåßôå íá âñåßôå åîõðçñåôçôÝò CVSup
ãéá ôï &os; óôéò áêüëïõèåò ôïðïèåóßåò:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
ÅôéêÝôåò (Tags) ãéá ôï CVS
¼ôáí êáôåâÜæåôå Þ áíáíåþíåôå ôïí ðçãáßï êþäéêá ìÝóù ôçò
cvs ç ôçò
CVSup , èá ðñÝðåé íá êáèïñßóåôå ìéá åôéêÝôá
Ýêäïóçò (revision tag). ¸íá revision tag áíáöÝñåôáé åßôå óå ìéá
óõãêåêñéìÝíç ðïñåßá áíÜðôõîçò ôïõ &os;, åßôå óå Ýíá óõãêåêñéìÝíï ÷ñïíéêü
óçìåßï. Ï ðñþôïò ôýðïò ïíïìÜæåôáé
åôéêÝôá êëÜäïõ (branch tag)
, êáé ï äåýôåñïò ïíïìÜæåôáé
åôéêÝôá Ýêäïóçò (release tag)
.
ÅôéêÝôåò ÊëÜäùí (Branch Tags)
¼ëåò áõôÝò, ìå ôçí åîáßñåóç ôïõ HEAD (ôï ïðïßï
åßíáé ðÜíôá Ýãêõñç åôéêÝôá), éó÷ýïõí ìüíï ãéá ôï äÝíôñï
src/ . Ôá äÝíôñá ports/ ,
doc/ , êáé www/ äåí Ý÷ïõí
êëÜäïõò.
HEAD
Ðñüêåéôáé ãéá ôï óõìâïëéêü üíïìá ôçò êýñéáò ãñáììÞò
áíÜðôõîçò, Þ &os;-CURRENT. Åßíáé åðßóçò ôï ðñïåðéëåãìÝíï tag áí
äåí êáèïñéóôåß êÜðïéï óõãêåêñéìÝíï revision.
Óôï CVSup , ôï tag áõôü
áíôéðñïóùðåýåôáé áðü ìéá . (äåí ðñüêåéôáé ãéá
óçìåßï óôßîçò ôçò ðñüôáóçò, áëëÜ ãéá ôïí ðñáãìáôéêü ÷áñáêôÞñá
. ).
Óôï CVS, áõôÞ åßíáé êáé ç ðñïåðéëïãÞ áí äåí êáèïñéóôåß
revision tag. ÓõíÞèùò äåí åßíáé êáëÞ
éäÝá íá êÜíåôå checkout êáé áíáíÝùóç óôïí ðçãáßï êþäéêá ôïõ
CURRENT óå Ýíá ìç÷Üíçìá STABLE, åêôüò áí áõôÞ åßíáé ðñáãìáôéêÜ
ç ðñüèåóç óáò.
RELENG_9
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-9.X, ãíùóôÞ åðßóçò êáé ùò
&os; 9-STABLE
RELENG_9_0
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-9.0, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_8
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-8.X, ãíùóôÞ åðßóçò êáé ùò
&os; 8-STABLE
RELENG_8_3
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-8.3, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_8_2
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-8.2, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_8_1
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-8.1, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_8_0
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-8.0, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_7
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-7.X, ãíùóôÞ åðßóçò êáé ùò
&os; 7-STABLE
RELENG_7_4
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-7.4, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_7_3
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-7.3, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_7_2
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-7.2, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_7_1
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-7.1, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_7_0
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-7.0, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_6
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-6.X, ãíùóôÞ åðßóçò êáé ùò
&os; 6-STABLE
RELENG_6_4
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-6.4, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_6_3
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-6.3, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_6_2
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-6.2, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_6_1
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-6.1, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_6_0
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-6.0, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_5
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-5.X, ãíùóôÞ åðßóçò ùò
&os; 5-STABLE.
RELENG_5_5
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-5.5, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_5_4
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-5.4, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_5_3
Ç ãñáììÞ Ýêäïóçò ôïõ &os;-5.3, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_5_2
Ç ãñáììÞ Ýêäïóçò &os;-5.2 êáé &os;-5.2.1, ÷ñçóéìïðïéåßôáé
ìüíï ãéá åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò
äéïñèþóåéò.
RELENG_5_1
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-5.1, ÷ñçóéìïðïéåßôáé ìüíï ãéá
ãéá åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_5_0
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-5.0, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-4.X, ãíùóôÞ åðßóçò êáé ùò
&os; 4-STABLE.
RELENG_4_11
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.11, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_10
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.10, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_9
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.9, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_8
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.8, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_7
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.7, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_6
Ç ãñáììÞ Ýêäïóçò ãéá ôá &os;-4.6 êáé &os;-4.6.2,
÷ñçóéìïðïéåßôáé ìüíï ãéá åíçìåñþóåéò áóöáëåßáò êáé Üëëåò
êñßóéìåò äéïñèþóåéò.
RELENG_4_5
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.5, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_4
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.4, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_4_3
Ç ãñáììÞ Ýêäïóçò ãéá ôï &os;-4.3, ÷ñçóéìïðïéåßôáé ìüíï ãéá
åíçìåñþóåéò áóöáëåßáò êáé Üëëåò êñßóéìåò äéïñèþóåéò.
RELENG_3
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-3.X, ãíùóôÞ åðßóçò êáé ùò
3.X-STABLE.
RELENG_2_2
Ç ãñáììÞ áíÜðôõîçò ãéá ôï &os;-2.2.X, ãíùóôÞ åðßóçò êáé ùò
2.2-STABLE. Ç ãñáììÞ áõôÞ èåùñåßôáé ïõóéáóôéêÜ
ðáñù÷çìÝíç.
ÅôéêÝôåò Åêäüóåùí (Release Tags)
Ïé åôéêÝôåò áõôÝò áíáöÝñïíôáé óå ìéá óõãêåêñéìÝíç ÷ñïíéêÞ óôéãìÞ
êáôÜ ôçí ïðïßá Ýãéíå ìéá êáíïíéêÞ Ýêäïóç (release) ôïõ &os;. Ç
äéáäéêáóßá ôçò Ýêäïóçò ôåêìçñéþíåôáé ìå ðåñéóóüôåñåò ëåðôïìÝñåéåò óôá
Ýããñáöá Ðëçñïöïñßåò Äéáäéêáóßáò
¸êäïóçò êáé Äéáäéêáóßá
¸êäïóçò .
Ôï äÝíôñï src ÷ñçóéìïðïéåß
ïíüìáôá åôéêåôþí ðïõ îåêéíïýí ìå ôç ëÝîç RELENG_ .
Ôá äÝíôñá ports êáé
doc ÷ñçóéìïðïéïýí åôéêÝôåò ðïõ
îåêéíïýí ìå ôç ëÝîç RELEASE .
ÔÝëïò, óôï äÝíôñï www äåí
äßíåôáé êÜðïéá åéäéêÞ åôéêÝôá ðïõ íá Ý÷åé ó÷Ýóç ìå ôéò
åêäüóåéò.
RELENG_9_0_0_RELEASE
&os; 9.0
RELENG_8_3_0_RELEASE
&os; 8.3
RELENG_8_2_0_RELEASE
&os; 8.2
RELENG_8_1_0_RELEASE
&os; 8.1
RELENG_8_0_0_RELEASE
&os; 8.0
RELENG_7_4_0_RELEASE
&os; 7.4
RELENG_7_3_0_RELEASE
&os; 7.3
RELENG_7_2_0_RELEASE
&os; 7.2
RELENG_7_1_0_RELEASE
&os; 7.1
RELENG_7_0_0_RELEASE
&os; 7.0
RELENG_6_4_0_RELEASE
&os; 6.4
RELENG_6_3_0_RELEASE
&os; 6.3
RELENG_6_2_0_RELEASE
&os; 6.2
RELENG_6_1_0_RELEASE
&os; 6.1
RELENG_6_0_0_RELEASE
&os; 6.0
RELENG_5_5_0_RELEASE
&os; 5.5
RELENG_5_4_0_RELEASE
&os; 5.4
RELENG_4_11_0_RELEASE
&os; 4.11
RELENG_5_3_0_RELEASE
&os; 5.3
RELENG_4_10_0_RELEASE
&os; 4.10
RELENG_5_2_1_RELEASE
&os; 5.2.1
RELENG_5_2_0_RELEASE
&os; 5.2
RELENG_4_9_0_RELEASE
&os; 4.9
RELENG_5_1_0_RELEASE
&os; 5.1
RELENG_4_8_0_RELEASE
&os; 4.8
RELENG_5_0_0_RELEASE
&os; 5.0
RELENG_4_7_0_RELEASE
&os; 4.7
RELENG_4_6_2_RELEASE
&os; 4.6.2
RELENG_4_6_1_RELEASE
&os; 4.6.1
RELENG_4_6_0_RELEASE
&os; 4.6
RELENG_4_5_0_RELEASE
&os; 4.5
RELENG_4_4_0_RELEASE
&os; 4.4
RELENG_4_3_0_RELEASE
&os; 4.3
RELENG_4_2_0_RELEASE
&os; 4.2
RELENG_4_1_1_RELEASE
&os; 4.1.1
RELENG_4_1_0_RELEASE
&os; 4.1
RELENG_4_0_0_RELEASE
&os; 4.0
RELENG_3_5_0_RELEASE
&os;-3.5
RELENG_3_4_0_RELEASE
&os;-3.4
RELENG_3_3_0_RELEASE
&os;-3.3
RELENG_3_2_0_RELEASE
&os;-3.2
RELENG_3_1_0_RELEASE
&os;-3.1
RELENG_3_0_0_RELEASE
&os;-3.0
RELENG_2_2_8_RELEASE
&os;-2.2.8
RELENG_2_2_7_RELEASE
&os;-2.2.7
RELENG_2_2_6_RELEASE
&os;-2.2.6
RELENG_2_2_5_RELEASE
&os;-2.2.5
RELENG_2_2_2_RELEASE
&os;-2.2.2
RELENG_2_2_1_RELEASE
&os;-2.2.1
RELENG_2_2_0_RELEASE
&os;-2.2.0
Ôïðïèåóßåò AFS
ÅîõðçñåôçôÝò AFS ãéá ôï &os; èá âñåßôå óôéò áêüëïõèåò
ôïðïèåóßåò:
Óïõçäßá
Ç äéáäñïìÞ ãéá ôá áñ÷åßá åßíáé:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Õðåýèõíïò ÓõíôÞñçóçò: ftp@stacken.kth.se
Ôïðïèåóßåò rsync
Ôï &os; åßíáé äéáèÝóéìï ìÝóù ôïõ ðñùôïêüëëïõ rsync óôéò áêüëïõèåò
ôïðïèåóßåò. Ôï âïçèçôéêü ðñüãñáììá rsync
ëåéôïõñãåß ìå ðåñßðïõ ôïí ßäéï ôñüðï ìå ôçí åíôïëÞ &man.rcp.1;, áëëÜ
Ý÷åé ðåñéóóüôåñåò åðéëïãÝò êáé ÷ñçóéìïðïéåß ôï ðñùôüêïëëï áðïìáêñõóìÝíçò
áíáíÝùóçò ôï ïðïßï ìåôáöÝñåé ìüíï ôéò äéáöïñÝò ìåôáîý äýï óåô áñ÷åßùí,
åðéôá÷ýíïíôáò Ýôóé éäéáßôåñá ôï óõã÷ñïíéóìü ìÝóù ôïõ äéêôýïõ. Áõôü
åßíáé ðåñéóóüôåñï ÷ñÞóéìï áí äéáôçñåßôå mirror ôïõ äéáêïìéóôÞ FTP Þ ôïõ
CVS Repository ôïõ &os;. Ç óõëëïãÞ åöáñìïãþí
rsync äéáôßèåôáé ãéá ðïëëÜ ëåéôïõñãéêÜ
óõóôÞìáôá, óôï &os; äåßôå ôï port
net/rsync Þ ÷ñçóéìïðïéÞóôå ôï
áíôßóôïé÷ï ðáêÝôï.
Äçìïêñáôßá ôçò Ôóå÷ßáò
rsync://ftp.cz.FreeBSD.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
ftp: Ìåñéêü mirror ôïõ äéáêïìéóôÞ FTP ôïõ &os;.
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ FTP ôïõ &os;.
Ïëëáíäßá
rsync://ftp.nl.FreeBSD.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ
FTP ôïõ &os;.
Ñùóßá
rsync://ftp.mtu.ru/
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ FTP ôïõ &os;.
&os;-gnats: Ç âÜóç äåäïìÝíùí ôïõ óõóôÞìáôïò
ðáñáêïëïýèçóçò óöáëìÜôùí GNATS.
&os;-Archive: Mirror ôïõ äéáêïìéóôÞ FTP ðáëáéüôåñùí
åêäüóåùí (archive) ôïõ &os;.
Óïõçäßá
rsync://ftp4.se.freebsd.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ FTP ôïõ &os;
ÔáÀâÜí
rsync://ftp.tw.FreeBSD.org/
rsync://ftp2.tw.FreeBSD.org/
rsync://ftp6.tw.FreeBSD.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ FTP ôïõ
&os;.
ÇíùìÝíï Âáóßëåéï
rsync://rsync.mirrorservice.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
sites/ftp.freebsd.org: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ
FTP ôïõ &os;.
ÇíùìÝíåò Ðïëéôåßåò ÁìåñéêÞò
rsync://ftp-master.FreeBSD.org/
Ï äéáêïìéóôÞò áõôüò ìðïñåß íá ÷ñçóéìïðïéçèåß ìüíï áðü êýñéá
mirror sites ôïõ &os;.
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: To êýñéï (master) óýóôçìá áñ÷åßùí ôïõ
äéáêïìéóôÞ FTP ôïõ &os;.
acl: Ç êýñéá ëßóôá ACL ôïõ &os;.
rsync://ftp13.FreeBSD.org/
ÄéáèÝóéìåò ÓõëëïãÝò:
&os;: ÐëÞñåò mirror ôïõ äéáêïìéóôÞ FTP ôïõ &os;.
diff --git a/en_US.ISO8859-1/articles/contributing/article.xml b/en_US.ISO8859-1/articles/contributing/article.xml
index c2061bfc69..da75befadc 100644
--- a/en_US.ISO8859-1/articles/contributing/article.xml
+++ b/en_US.ISO8859-1/articles/contributing/article.xml
@@ -1,552 +1,552 @@
Contributing to FreeBSD
This article describes the different ways in which an
individual or organization may contribute to the FreeBSD
Project.
Jordan
Hubbard
Contributed by
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
contributing
So you want to contribute to FreeBSD? That is great! FreeBSD
relies on the contributions of its user base
to survive. Your contributions are not only appreciated, they are
vital to FreeBSD's continued growth.
Contrary to what some people might have you believe, you do
not need to be a hot-shot programmer or a close personal friend of
the FreeBSD core team to have your contributions accepted. A
large and growing number of international contributors, of greatly
varying ages and areas of technical expertise, develop FreeBSD.
There is always more work to be done than there are people
available to do it, and more help is always appreciated.
The FreeBSD project is responsible for an entire operating
system environment, rather than just a kernel or a few scattered
utilities. As such, our TODO lists span a
very wide range of tasks: from documentation, beta testing and
presentation, to the system installer and highly specialized types
of kernel development. People of any skill level, in almost any
area, can almost certainly help the project.
Commercial entities engaged in FreeBSD-related enterprises are
also encouraged to contact us. Do you need a special extension to
make your product work? You will find us receptive to your
requests, given that they are not too outlandish. Are you working
on a value-added product? Please let us know! We may be able to
work cooperatively on some aspect of it. The free software world
is challenging many existing assumptions about how software is
developed, sold, and maintained, and we urge you to at least give
it a second look.
What Is Needed
The following list of tasks and sub-projects represents
something of an amalgam of various TODO
lists and user requests.
Ongoing Non-Programmer Tasks
Many people who are involved in FreeBSD are not
programmers. The Project includes documentation writers, Web
designers, and support people. All that these people need to
contribute is an investment of time and a willingness to
learn.
Read through the FAQ and Handbook periodically. If
anything is badly explained, out of date or even just
completely wrong, let us know. Even better, send us a fix
(Docbook is not difficult to learn, but there is no
objection to ASCII submissions).
Help translate FreeBSD documentation into your native
language. If documentation already exists for your
language, you can help translate additional documents or
verify that the translations are up-to-date. First take a
look at the Translations
FAQ in the FreeBSD Documentation Project Primer.
You are not committing yourself to translating every
single FreeBSD document by doing this — as a
volunteer, you can do as much or as little translation as
you desire. Once someone begins translating, others
almost always join the effort. If you only have the time
or energy to translate one part of the documentation,
please translate the installation instructions.
Read the &a.questions; and &ng.misc; occasionally (or
even regularly). It can be very satisfying to share your
expertise and help people solve their problems; sometimes
you may even learn something new yourself! These forums
can also be a source of ideas for things to work
on.
Ongoing Programmer Tasks
Most of the tasks listed here require either a
considerable investment of time, or an in-depth knowledge of
the FreeBSD kernel, or both. However, there are also many
useful tasks which are suitable for
weekend hackers
.
If you run FreeBSD-CURRENT and have a good Internet
connection, there is a machine
current.FreeBSD.org which
builds a full release once a day—every now and
again, try to install the latest release from it and
report any failures in the process.
Read the &a.bugs;. There might be a problem you can
comment constructively on or with patches you can test.
Or you could even try to fix one of the problems
yourself.
If you know of any bug fixes which have been
successfully applied to -CURRENT but have not been merged
into -STABLE after a decent interval (normally a couple of
weeks), send the committer a polite reminder.
Move contributed software to
src/contrib in the
source tree.
Make sure code in
src/contrib is up
to date.
Build the source tree (or just part of it) with extra
warnings enabled and clean up the warnings.
Fix warnings for ports which do deprecated things like
using gets() or including
malloc.h .
If you have contributed any ports and you had to make
&os;-specific changes, send your patches back to the
original authors (this will make your life easier when
they bring out the next version).
Get copies of formal standards like &posix;. You can
get some links about these standards at the
FreeBSD
C99 & POSIX Standards Conformance Project
web site. Compare FreeBSD's behavior to that required by
the standard. If the behavior differs, particularly in
subtle or obscure corners of the specification, send in a
PR about it. If you are able, figure out how to fix it
and include a patch in the PR. If you think the standard
is wrong, ask the standards body to consider the
question.
Suggest further tasks for this list!
Work through the PR Database
problem reports database
The FreeBSD
PR list shows all the current active problem reports
and requests for enhancement that have been submitted by
FreeBSD users. The PR database includes both programmer and
non-programmer tasks. Look through the open PRs, and see if
anything there takes your interest. Some of these might be
very simple tasks that just need an extra pair of eyes to look
over them and confirm that the fix in the PR is a good one.
Others might be much more complex, or might not even have a
fix included at all.
Start with the PRs that have not been assigned to anyone
else. If a PR is assigned to someone else, but it looks like
something you can handle, email the person it is assigned to
and ask if you can work on it—they might already have a
patch ready to be tested, or further ideas that you can
discuss with them.
Pick one of the items from the Ideas
page
The &os;
list of projects and ideas for volunteers is also
available for people willing to contribute to the &os;
project. The list is being regularly updated and contains
items for both programmers and non-programmers with
information about each project.
How to Contribute
Contributions to the system generally fall into one or more
of the following 5 categories:
Bug Reports and General Commentary
An idea or suggestion of general
technical interest should be mailed to the &a.hackers;.
Likewise, people with an interest in such things (and a
tolerance for a high volume of mail!) may
subscribe to the &a.hackers;. See The
FreeBSD Handbook for more information about this and
other mailing lists.
If you find a bug or are submitting a specific change,
please report it using the &man.send-pr.1; program or its
WEB-based
equivalent . Try to fill-in each field of the bug
report. Unless they exceed 65KB, include any patches directly
in the report. If the patch is suitable to be applied to the
source tree put [PATCH] in the synopsis of
the report. When including patches,
do not use cut-and-paste because
cut-and-paste turns tabs into spaces and makes them unusable.
When patches are a lot larger than 20KB, consider compressing
them (eg. with &man.gzip.1; or &man.bzip2.1;) and using
&man.uuencode.1; to include their compressed form in your
problem report.
After filing a report, you should receive confirmation
along with a tracking number. Keep this tracking number so
that you can update us with details about the problem by
sending mail to &a.bugfollowup;. Use the number as the
message subject, e.g. "Re: kern/3377" .
Additional information for any bug report should be submitted
this way.
If you do not receive confirmation in a timely fashion (3
days to a week, depending on your email connection) or are,
for some reason, unable to use the &man.send-pr.1; command,
then you may ask someone to file it for you by sending mail to
the &a.bugs;.
See also this
article on how to write good problem
reports.
Changes to the Documentation
documentation submissions
Changes to the documentation are overseen by the &a.doc;.
Please look at the
FreeBSD
Documentation Project Primer for complete
instructions. Send submissions and changes (even small ones
are welcome!) using &man.send-pr.1; as described in
Bug Reports and General
Commentary.
Changes to Existing Source Code
FreeBSD-CURRENT
An addition or change to the existing source code is a
somewhat trickier affair and depends a lot on how far out of
date you are with the current state of FreeBSD development.
There is a special on-going release of FreeBSD known as
FreeBSD-CURRENT
which is made available in a
variety of ways for the convenience of developers working
actively on the system. See The FreeBSD
Handbook for more information about getting and
using FreeBSD-CURRENT.
Working from older sources unfortunately means that your
changes may sometimes be too obsolete or too divergent for
easy re-integration into FreeBSD. Chances of this can be
minimized somewhat by subscribing to the &a.announce; and the
&a.current; lists, where discussions on the current state of
the system take place.
Assuming that you can manage to secure fairly up-to-date
sources to base your changes on, the next step is to produce a
set of diffs to send to the FreeBSD maintainers. This is done
with the &man.diff.1; command.
The preferred &man.diff.1; format for submitting patches
is the unified output format generated by
diff -u .
diff
&prompt.user; diff -u oldfile newfile
or
&prompt.user; diff -u -r -N olddir newdir
would generate a set of unified diffs for the given source
file or directory hierarchy.
See &man.diff.1; for more information.
Once you have a set of diffs (which you may test with the
&man.patch.1; command), you should submit them for inclusion
with FreeBSD. Use the &man.send-pr.1; program as described in
Bug Reports and General
Commentary. Do not just send the
diffs to the &a.hackers; or they will get lost! We greatly
appreciate your submission (this is a volunteer project!);
because we are busy, we may not be able to address it
immediately, but it will remain in the PR database until we
do. Indicate your submission by including
[PATCH] in the synopsis of the
report.
uuencode
If you feel it appropriate (e.g. you have added, deleted,
or renamed files), bundle your changes into a
tar file and run the &man.uuencode.1;
program on it. Archives created with &man.shar.1; are also
welcome.
If your change is of a potentially sensitive nature, such
as if you are unsure of copyright issues governing its further
distribution then you should send it to &a.core; directly
rather than submitting it with &man.send-pr.1;. The &a.core;
reaches a much smaller group of people who do much of the
day-to-day work on FreeBSD. Note that this group is also
very busy and so you should only send
mail to them where it is truly necessary.
Please refer to &man.intro.9; and &man.style.9; for
some information on coding style. We would appreciate it if
you were at least aware of this information before submitting
code.
New Code or Major Value-Added Packages
In the case of a significant contribution of a large body
work, or the addition of an important new feature to FreeBSD,
it becomes almost always necessary to either send changes as
uuencoded tar files or upload them to a web or FTP site for
other people to access. If you do not have access to a web or
FTP site, ask on an appropriate FreeBSD mailing list for
someone to host the changes for you.
When working with large amounts of code, the touchy
subject of copyrights also invariably comes up. Acceptable
copyrights for code included in FreeBSD are:
The BSD copyrightBSD
copyright . This copyright is most
preferred due to its no strings attached
nature and general attractiveness to commercial
enterprises. Far from discouraging such commercial use,
the FreeBSD Project actively encourages such participation
by commercial interests who might eventually be inclined
to invest something of their own into FreeBSD.
GPL
GNU General Public License
GNU General Public License
The GNU General Public License, or GPL
.
This license is not quite as popular with us due to the
amount of extra effort demanded of anyone using the code
for commercial purposes, but given the sheer quantity of
GPL'd code we currently require (compiler, assembler, text
formatter, etc) it would be silly to refuse additional
contributions under this license. Code under the GPL also
goes into a different part of the tree, that being
/sys/gnu or
/usr/src/gnu , and
is therefore easily identifiable to anyone for whom the
GPL presents a problem.
Contributions coming under any other type of copyright
must be carefully reviewed before their inclusion into FreeBSD
will be considered. Contributions for which particularly
restrictive commercial copyrights apply are generally
rejected, though the authors are always encouraged to make
such changes available through their own channels.
To place a BSD-style
copyright on your
work, include the following text at the very beginning of
every source code file you wish to protect, replacing the text
between the %% with the appropriate
information:
Copyright (c) %%proper_years_here%%
%%your_name_here%%, %%your_state%% %%your_zip%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$&os;$
For your convenience, a copy of this text can be found in
/usr/share/examples/etc/bsd-style-copyright .
Money, Hardware or Internet Access
We are always very happy to accept donations to further
the cause of the FreeBSD Project and, in a volunteer effort
like ours, a little can go a long way! Donations of hardware
are also very important to expanding our list of supported
peripherals since we generally lack the funds to buy such
items ourselves.
-
- Donating Funds
+
+ Donating Funds
The FreeBSD Foundation is a non-profit, tax-exempt
foundation established to further the goals of the FreeBSD
Project. As a 501(c)3 entity, the Foundation is generally
exempt from US federal income tax as well as Colorado State
income tax. Donations to a tax-exempt entity are often
deductible from taxable federal income.
Donations may be sent in check form to:
The FreeBSD Foundation
P.O. Box 20247 ,
Boulder ,
CO 80308
USA
The FreeBSD Foundation is now able to accept donations
through the web with PayPal. To place a donation, please
visit the Foundation
web
site .
More information about the FreeBSD Foundation can be
found in The
FreeBSD Foundation -- an Introduction . To contact
the Foundation by email, write to
bod@FreeBSDFoundation.org .
Donating Hardware
donations
The FreeBSD Project happily accepts donations of
hardware that it can find good use for. If you are
interested in donating hardware, please contact the
Donations Liaison
Office .
diff --git a/en_US.ISO8859-1/books/fdp-primer/docbook-markup/chapter.xml b/en_US.ISO8859-1/books/fdp-primer/docbook-markup/chapter.xml
index 1fea4515bc..0b21d3f964 100644
--- a/en_US.ISO8859-1/books/fdp-primer/docbook-markup/chapter.xml
+++ b/en_US.ISO8859-1/books/fdp-primer/docbook-markup/chapter.xml
@@ -1,2641 +1,2629 @@
DocBook Markup
Introduction
This chapter is an introduction to DocBook as it is used for
&os; documentation. DocBook is a large and complex markup
system, but the subset described here covers the parts that are
most widely used for &os; documentation. While a moderate
subset is covered, it is impossible to anticipate every
situation. Please post questions that this document does
not answer to the &a.doc;.
DocBook was originally developed by HaL Computer Systems and
O'Reilly & Associates to be a Document Type Definition
(DTD ) for writing technical documentation
A short history
can be found under
http://www.oasis-open.org/docbook/intro.shtml#d0e41 . .
Since 1998 it is maintained by the
DocBook Technical Committee . As such, and unlike
LinuxDoc and XHTML , DocBook is very heavily
oriented towards markup that describes what
something is, rather than describing how it
should be presented.
The DocBook DTD is available from the
Ports Collection in the
textproc/docbook-xml-450
port. It is automatically installed as part of the
textproc/docproj
port.
Formal Versus Informal
Some elements may exist in two forms,
formal and informal .
Typically, the formal version of the element will consist of a
title followed by the informal version of the element. The
informal version will not have a title.
Inline Versus Block
In the remainder of this document, when describing
elements, inline means that the element
can occur within a block element, and does not cause a line
break. A block element, by comparison,
will cause a line break (and other processing) when it is
encountered.
&os; Extensions
The &os; Documentation Project has extended the
DocBook DTD with additional elements and
entities. These additions serve to make some of the markup
easier or more precise.
Throughout the rest of this document, the term
DocBook
is used to mean the &os;-extended
DocBook DTD .
Most of these extensions are not unique to &os;,
it was just felt that they were useful
enhancements for this particular project. Should anyone
from any of the other *nix camps (NetBSD, OpenBSD, Linux,
…) be interested in collaborating on a standard
DocBook extension set, please contact
&a.doceng;.
&os; Elements
The additional &os; elements are not (currently) in the
Ports Collection. They are stored in the &os; Subversion
tree, as head/share/xml/freebsd.dtd .
&os;-specific elements used in the examples below are
clearly marked.
&os; Entities
This table shows some of the most useful entities
available in the FDP . For a complete list,
see the *.ent files in
doc/share/xml .
&os; Name Entities
-
-
&os;
&os;
&os.stable;
&os.stable;
&os.current;
&os.current;
Manual Page Entities
-
-
&man.ls.1;
&man.ls.1;
Usage: &man.ls.1; is the manual page for command lscommand .
&man.cp.1;
&man.cp.1;
Usage: The manual page for command cpcommand is &man.cp.1;.
&man.command .sectionnumber ;
link to
command manual page in
section
sectionnumber
Entities are defined for all the &os; manual
pages .
&os; Mailing List Entities
-
-
&a.doc;
&a.doc;
Usage: A link to the &a.doc;.
&a.questions;
&a.questions;
Usage: A link to the &a.questions;.
&a.listname ;
link to
listname
Entities are defined for all the &os;
mailing lists .
&os; Document Link Entities
-
-
&url.books.handbook;
&url.books.handbook;
Usage: A link to the ulink
url="&url.books.handbook;/advanced-networking.html" Advanced
Networkingulink
chapter of the Handbook.
&url.books.bookname ;
relative path to
bookname
Entities are defined for all the &os;
books .
&url.articles.committers-guide;
&url.articles.committers-guide;
Usage: A link to the ulink
url="&url.articles.committers-guide;" Committer's
Guideulink
article.
&url.articles.articlename ;
relative path to
articlename
Entities are defined for all the &os;
articles .
Other Operating System Name Entities
-
-
&linux;
&linux;
The &linux; operating system.
&unix;
&unix;
The &unix; operating system.
&windows;
&windows;
The &windows; operating system.
Miscellaneous Entities
-
-
&prompt.root;
&prompt.root;
The root user
prompt.
&prompt.user;
&prompt.user;
A prompt for an unprivileged user.
&postscript;
&postscript;
The
&postscript; programming language.
&tex;
&tex;
The
&tex; typesetting language.
&xorg;
&xorg;
The &xorg; open source X
Window System.
Formal Public Identifier (FPI)
In compliance with the DocBook guidelines for writing
FPI s for DocBook customizations, the
FPI for the &os; extended DocBook
DTD is:
PUBLIC "-//FreeBSD//DTD DocBook V4.2-Based Extension//EN"
Document Structure
DocBook allows structuring documentation in several ways.
The &os; Documentation Project uses two primary types of DocBook
document: the book and the article.
Books are organized into chapter s.
This is a mandatory requirement. There may be
part s between the book and the chapter to
provide another layer of organization. For example, the
Handbook is arranged in this way.
A chapter may (or may not) contain one or more sections.
These are indicated with the sect1 element.
If a section contains another section then use the
sect2 element, and so on, up to
sect5 .
Chapters and sections contain the remainder of the
content.
An article is simpler than a book, and does not use
chapters. Instead, the content of an article is organized into
one or more sections, using the same sect1
(and sect2 and so on) elements that are used
in books.
The nature of the document being written should be used to
determine whether it is best marked up as a book or an article.
Articles are well suited to information that does not need to be
broken down into several chapters, and that is, relatively
speaking, quite short, at up to 20-25 pages of content. Books
are best suited to information that can be broken up into
several chapters, possibly with appendices and similar content
as well.
The &os; tutorials
are all marked up as articles, while this
document, the
FreeBSD FAQ ,
and the FreeBSD
Handbook are all marked up as books, for
example.
Starting a Book
The content of a book is contained within the
book element. As well as containing
structural markup, this element can contain elements that
include additional information about the book. This is either
meta-information, used for reference purposes, or additional
content used to produce a title page.
This additional information is contained within
bookinfo .
Boilerplate book with
bookinfo
book
bookinfo
title Your Title Here title
author
firstname Your first name firstname
surname Your surname surname
affiliation
address email Your email address email address
affiliation
author
copyright
year 1998 year
holder role="mailto:your email address " Your name holder
copyright
releaseinfo $&os;$releaseinfo
abstract
para Include an abstract of the book's contents here. para
abstract
bookinfo
…
book
Starting an Article
The content of the article is contained within the
article element. As well as containing
structural markup, this element can contain elements that
include additional information about the article. This is
either meta-information, used for reference purposes, or
additional content used to produce a title page.
This additional information is contained within
articleinfo .
Boilerplate article with
articleinfo
article
articleinfo
title Your title here title
author
firstname Your first name firstname
surname Your surname surname
affiliation
address email Your email address email address
affiliation
author
copyright
year 1998 year
holder role="mailto:your email address " Your name holder
copyright
releaseinfo $&os;$releaseinfo
abstract
para Include an abstract of the article's contents here. para
abstract
articleinfo
…
article
Indicating Chapters
Use chapter to mark up your chapters.
Each chapter has a mandatory title .
Articles do not contain chapters, they are reserved for
books.
A Simple Chapter
chapter
title The Chapter's Titletitle
...
chapter
A chapter cannot be empty; it must contain elements in
addition to title . If you need to
include an empty chapter then just use an empty
paragraph.
Empty Chapters
chapter
title This is An Empty Chaptertitle
para para
chapter
Sections Below Chapters
In books, chapters may (but do not need to) be broken up
into sections, subsections, and so on. In articles, sections
are the main structural element, and each article must contain
at least one section. Use the
sectn element.
The n indicates the section number,
which identifies the section level.
The first
sectn is
sect1 . You can have one or more of these
in a chapter. They can contain one or more
sect2 elements, and so on, down to
sect5 .
Sections in Chapters
chapter
title A Sample Chaptertitle
para Some text in the chapter.para
sect1
title First Sectiontitle
…
sect1
sect1
title Second Sectiontitle
sect2
title First Sub-Sectiontitle
sect3
title First Sub-Sub-Sectiontitle
…
sect3
sect2
sect2
title Second Sub-Section (1.2.2)title
…
sect2
sect1
chapter
Section numbers are automatically generated and
prepended to titles when the document is rendered to an
output format. The generated section numbers and titles
from the example above will be:
1.1. First Section
1.2. Second Section
1.2.1. First Sub-Section
1.2.1.1. First Sub-Sub-Section
1.2.2. Second Sub-Section
Subdividing Using part
Elements
part s introduce another level of
organization between book and
chapter with one or more
part s. This cannot be done in an
article .
part
title Introductiontitle
chapter
title Overviewtitle
...
chapter
chapter
title What is FreeBSD?title
...
chapter
chapter
title Historytitle
...
chapter
part
Block Elements
Paragraphs
DocBook supports three types of paragraphs:
formalpara , para , and
simpara .
Almost all paragraphs in &os; documentation use
para . formalpara
includes a title element, and
simpara disallows some elements from
within para . Stick with
para .
para
Usage:
para This is a paragraph. It can contain just about any
other element.para
Appearance:
This is a paragraph. It can contain just about any
other element.
Block Quotations
A block quotation is an extended quotation from another
document that should not appear within the current paragraph.
These are rarely needed.
Blockquotes can optionally contain a title and an
attribution (or they can be left untitled and
unattributed).
blockquote
Usage:
para A small excerpt from the US Constitution:para
blockquote
title Preamble to the Constitution of the United Statestitle
attribution Copied from a web site somewhereattribution
para We the People of the United States, in Order to form a more
perfect Union, establish Justice, insure domestic Tranquility,
provide for the common defence, promote the general Welfare, and
secure the Blessings of Liberty to ourselves and our Posterity, do
ordain and establish this Constitution for the United States of
America.para
blockquote
Appearance:
A small excerpt from the US Constitution:
Preamble to the Constitution of the United
States
Copied from a web site
somewhere
We the People of the United States, in Order to form
a more perfect Union, establish Justice, insure domestic
Tranquility, provide for the common defence, promote the
general Welfare, and secure the Blessings of Liberty to
ourselves and our Posterity, do ordain and establish
this Constitution for the United States of
America.
Tips, Notes, Warnings, Cautions, Important Information
and Sidebars
Extra information may need to be separated from
the main body of the text. Typically this is
meta
information of which the user should be
aware.
Depending on the nature of the information, one of
tip , note ,
warning , caution , and
important should be used. Alternatively,
if the information is related to the main text but is not
one of the above, use sidebar .
The circumstances in which to choose one of these
elements over another is loosely defined by the DocBook
documentation, which suggests:
A Note is for information that should be heeded by
all readers.
An Important element is a variation on Note.
A Caution is for information regarding possible data
loss or software damage.
A Warning is for information regarding possible
hardware damage or injury to life or limb.
warning
Usage:
warning
para Installing FreeBSD may make you want to delete Windows from your
hard disk.para
warning
Appearance:
Installing FreeBSD may make you want to delete Windows
from your hard disk.
Lists and Procedures
Information often needs to be presented as lists, or as a
number of steps that must be carried out in order to
accomplish a particular goal.
To do this, use itemizedlist ,
orderedlist , or
procedure There are other
types of list element in DocBook, but we are not
concerned with those at the
moment.
itemizedlist and
orderedlist are similar to their
counterparts in HTML , ul
and ol . Each one consists of one or more
listitem elements, and each
listitem contains one or more block
elements. The listitem elements are
analogous to HTML 's li
tags. However, unlike HTML, they are required.
procedure is slightly different. It
consists of step s, which may in turn
consists of more step s or
substep s. Each step
contains block elements.
itemizedlist ,
orderedlist , and
procedure
Usage:
itemizedlist
listitem
para This is the first itemized item.para
listitem
listitem
para This is the second itemized item.para
listitem
itemizedlist
orderedlist
listitem
para This is the first ordered item.para
listitem
listitem
para This is the second ordered item.para
listitem
orderedlist
procedure
step
para Do this.para
step
step
para Then do this.para
step
step
para And now do this.para
step
procedure
Appearance:
This is the first itemized item.
This is the second itemized item.
This is the first ordered item.
This is the second ordered item.
Do this.
Then do this.
And now do this.
Showing File Samples
Fragments of a file (or perhaps a complete file) are shown
by wrapping them in the programlisting
element.
White space and line breaks within
programlisting are
significant. In particular, this means that the opening tag
should appear on the same line as the first line of the
output, and the closing tag should appear on the same line
as the last line of the output, otherwise spurious blank
lines may be included.
programlisting
Usage:
para When finished, the program will look like
this:para
programlisting #include <stdio.h>
int
main(void)
{
printf("hello, world\n");
}programlisting
Notice how the angle brackets in the
#include line need to be referenced by
their entities instead of being included literally.
Appearance:
When finished, the program will look like this:
#include <stdio.h>
int
main(void)
{
printf("hello, world\n");
}
Callouts
A callout is a visual marker for referring to a
piece of text or specific position within an
example.
Callouts are marked with the co
element. Each element must have a unique
id assigned to it. After the example,
include a calloutlist that describes each
callout.
co and
calloutlist
para When finished, the program will look like
this:para
programlisting #include <stdio.h> co id="co-ex-include"
int co id="co-ex-return"
main(void)
{
printf("hello, world\n"); co id="co-ex-printf"
}programlisting
calloutlist
callout arearefs="co-ex-include"
para Includes the standard IO header file.para
callout
callout arearefs="co-ex-return"
para Specifies that function main()function returns an
int.para
callout
callout arearefs="co-ex-printf"
para The function printf()function call that writes
literal hello, worldliteral to standard output.para
callout
calloutlist
Appearance:
When finished, the program will look like this:
#include <stdio.h>
int
main(void)
{
printf("hello, world\n");
}
Includes the standard IO header file.
Specifies that main() returns
an int.
The printf() call that writes
hello, world to standard
output.
Tables
Unlike HTML , DocBook does not need
tables for layout purposes, as the stylesheet handles those
issues. Instead, just use tables for marking up tabular
data.
In general terms (and see the DocBook documentation for
more detail) a table (which can be either formal or informal)
consists of a table element. This contains
at least one tgroup element, which
specifies (as an attribute) the number of columns in this
table group. Within the tablegroup there is one
thead element, which contains elements for
the table headings (column headings), and one
tbody which contains the body of the
table.
Both tgroup and
thead contain row
elements, which in turn contain entry
elements. Each entry element specifies
one cell in the table.
informaltable
Usage:
informaltable pgwide="1"
tgroup cols="2"
thead
row
entry This is Column Head 1entry
entry This is Column Head 2entry
row
thead
tbody
row
entry Row 1, column 1entry
entry Row 1, column 2entry
row
row
entry Row 2, column 1entry
entry Row 2, column 2entry
row
tbody
tgroup
informaltable
Appearance:
This is Column Head 1
This is Column Head 2
Row 1, column 1
Row 1, column 2
Row 2, column 1
Row 2, column 2
Always use the pgwide attribute with
a value of 1 with the
informaltable element. A bug in Internet
Explorer can cause the table to render incorrectly if this
is omitted.
Table borders can be suppressed by setting the
frame attribute to none
in the informaltable element. For example,
informaltable
frame="none" .
Tables Where frame="none"
Appearance:
This is Column Head 1
This is Column Head 2
Row 1, column 1
Row 1, column 2
Row 2, column 1
Row 2, column 2
Examples for the User to Follow
Examples for the user to follow are often necessary.
Typically, these will consist of dialogs with the computer;
the user types in a command, the user gets a response back,
the user types another command, and so on.
A number of distinct elements and entities come into
play here.
screen
Everything the user sees in this example will be
on the computer screen, so the next element is
screen .
Within screen , white space is
significant.
prompt ,
&prompt.root; and
&prompt.user;
Some of the things the user will be seeing on the
screen are prompts from the computer (either from the
operating system, command shell, or application). These
should be marked up using
prompt .
As a special case, the two shell prompts for the
normal user and the root user have been provided as
entities. To indicate the user is at a shell prompt,
use one of &prompt.root; and
&prompt.user; as necessary. They
do not need to be inside
prompt .
&prompt.root; and
&prompt.user; are &os;
extensions to DocBook, and are not part of the
original DTD .
userinput
When displaying text that the user should type in,
wrap it in userinput tags. It will
be displayed differently than system output text.
screen , prompt ,
and userinput
Usage:
screen &prompt.user; userinput ls -1userinput
foo1
foo2
foo3
&prompt.user; userinput ls -1 | grep foo2userinput
foo2
&prompt.user; userinput suuserinput
prompt Password: prompt
&prompt.root; userinput cat foo2userinput
This is the file called 'foo2'screen
Appearance:
&prompt.user; ls -1
foo1
foo2
foo3
&prompt.user; ls -1 | grep foo2
foo2
&prompt.user; su
Password:
&prompt.root; cat foo2
This is the file called 'foo2'
Even though we are displaying the contents of the file
foo2 , it is not
marked up as programlisting . Reserve
programlisting for showing fragments of
files outside the context of user actions.
In-line Elements
Emphasizing Information
To emphasize a particular word or phrase, use
emphasis . This may be presented as
italic, or bold, or might be spoken differently with a
text-to-speech system.
There is no way to change the presentation of the
emphasis within the document, no equivalent of
HTML 's b and
i . If the information being presented is
important, then consider presenting it in
important rather than
emphasis .
emphasis
Usage:
para FreeBSD is without doubt emphasis theemphasis
premiere &unix;-like operating system for the Intel
architecture.para
Appearance:
FreeBSD is without doubt the
premiere &unix;-like operating system for the Intel
architecture.
Acronyms
Many computer terms are acronyms ,
words formed from the first letter of each word in a
phrase. Acronyms are marked up into
acronym elements. It is helpful to the
reader when an acronym is defined on the first use, as shown
in the example below.
Acronyms
Usage:
para Request For Comments (acronym RFCacronym ) 1149
defined the use of avian carriers for transmission of
Internet Protocol (acronym IPacronym ) data. The
quantity of acronym IPacronym data currently
transmitted in that manner is unknown.para
Appearance:
Request For Comments (RFC ) 1149
defined the use of avian carriers for transmission of
Internet Protocol (IP ) data. The
quantity of IP data currently
transmitted in that manner is unknown.
Quotations
To quote text from another document or source, or to
denote a phrase that is used figuratively, use
quote . Most of the markup tags available
for normal text are also available from within a
quote .
Quotations
Usage:
para However, make sure that the search does not go beyond the
quote boundary between local and public administrationquote ,
as acronym RFCacronym 1535 calls it.para
Appearance:
However, make sure that the search does not go beyond
the boundary between local and public
administration
, as RFC 1535
calls it.
Keys, Mouse Buttons, and Combinations
To refer to a specific key on the keyboard, use
keycap . To refer to a mouse button, use
mousebutton . And to refer to
combinations of key presses or mouse clicks, wrap them all
in keycombo .
keycombo has an attribute called
action , which may be one of
click , double-click ,
other , press ,
seq , or simul . The
last two values denote whether the keys or buttons should be
pressed in sequence, or simultaneously.
The stylesheets automatically add any connecting
symbols, such as + , between the key
names, when wrapped in keycombo .
Keys, Mouse Buttons, and Combinations
Usage:
para To switch to the second virtual terminal, press
keycombo action="simul" keycap Altkeycap
keycap F1keycap keycombo .para
para To exit command vicommand without saving changes, type
keycombo action="seq" keycap Esckeycap keycap :keycap
keycap qkeycap keycap !keycap keycombo .para
para My window manager is configured so that
keycombo action="simul" keycap Altkeycap
mousebutton rightmousebutton
keycombo mouse button is used to move windows.para
Appearance:
To switch to the second virtual terminal, press
Alt
F1 .
To exit vi without saving changes,
type
Esc
:
q
! .
My window manager is configured so that
Alt
right mouse button
is used to move windows.
Applications, Commands, Options, and Cites
Both applications and commands are frequently referred to
when writing documentation. The distinction between them is
that an application is the name of a program or suite of
programs that fulfill a particular task. A command is the
filename of a program that the user can type and run at a
command line.
It is often necessary to show some of the options that a
command might take.
Finally, it is often useful to list a command with its
manual section number, in the command(number)
format so common in Unix manuals.
Mark up application names with
application .
To list a command with its manual section
number (which should be most of the time) the DocBook
element is citerefentry . This will
contain a further two elements,
refentrytitle and
manvolnum . The content of
refentrytitle is the name of the command,
and the content of manvolnum is the
manual page section.
This can be cumbersome to write, and so a series of
general
entities have been created to make this easier.
Each entity takes the form
&man.manual-page .manual-section ; .
The file that contains these entities is in
doc/share/xml/man-refs.ent , and can be
referred to using this FPI :
PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"
Therefore, the introduction to &os; documentation will
usually include this:
<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
%man;
…
]>
Use command when to include a command
name in-line
but present it as something the
user should type in.
Use option to mark up the options
which will be passed to a command.
When referring to the same command multiple times in
close proximity, it is preferred to use the
&man.command .section ;
notation to markup the first reference and use
command to markup subsequent references.
This makes the generated output, especially
HTML , appear visually better.
Applications, Commands, and Options
Usage:
para application Sendmailapplication is the most
widely used Unix mail application.para
para application Sendmailapplication includes the
citerefentry
refentrytitle sendmailrefentrytitle
manvolnum 8manvolnum
citerefentry , &man.mailq.1;, and &man.newaliases.1;
programs.para
para One of the command line parameters to citerefentry
refentrytitle sendmailrefentrytitle
manvolnum 8manvolnum
citerefentry , option -bpoption , will display the current
status of messages in the mail queue. Check this on the command
line by running command sendmail -bpcommand .para
Appearance:
Sendmail is the most widely
used Unix mail application.
Sendmail includes the
sendmail
8
, &man.mailq.1;, and &man.newaliases.1;
programs.
One of the command line parameters to
sendmail
8
, -bp , will display the
current status of messages in the mail queue. Check this
on the command line by running
sendmail -bp .
Notice how the
&man.command .section ;
notation is easier to follow.
Files, Directories, Extensions
To refer to the name of a file, a directory, or a file
extension, use filename .
filename
Usage:
para The XML source for the Handbook in English is
found in filename class="directory" /usr/doc/en_US.ISO8859-1/books/handbook/filename . The first
file is called filename book.xmlfilename in that
directory. There is also a filename Makefilefilename
and a number of files with a filename .entfilename
extension.para
Appearance:
The XML source for the Handbook in English can be
found in /usr/doc/en/handbook/ . The
first file is called handbook.xml in
that directory. There is also a
Makefile and a number of files with a
.ent extension.
The Name of Ports
&os; Extension
These elements are part of the &os; extension to
DocBook, and do not exist in the original DocBook
DTD .
To include the name of a program from the &os;
Ports Collection in the document, use the
filename tag with the
role attribute set to
package . Since ports can be installed in
any number of locations, only include the category and the
port name; do not include
/usr/ports .
filename Tag with
package Role
Usage:
para Install the filename role="package" net/wiresharkfilename port to view network traffic.para
Appearance:
Install the net/wireshark port to view
network traffic.
Devices
&os; Extension
These elements are part of the &os; extension to
DocBook, and do not exist in the original DocBook
DTD .
There are two names for devices: the device name as it
appears in /dev , or the name of the
device as it appears in the kernel. For this latter course,
use devicename .
Sometimes there is no choice. Some devices, such as
network cards, do not have entries in
/dev , or the entries are markedly
different from their kernel device names.
devicename
Usage:
para devicename siodevicename is used for serial
communication in FreeBSD. devicename siodevicename manifests
through a number of entries in filename /devfilename , including
filename /dev/ttyd0filename and filename /dev/cuaa0filename .para
para By contrast, network devices such as
devicename ed0devicename do not appear in filename /devfilename .para
para In MS-DOS, the first floppy drive is referred to as
devicename a:devicename . In FreeBSD it is
filename /dev/fd0filename .para
Appearance:
sio is used for serial
communication in FreeBSD. sio
manifests through a number of entries in
/dev , including
/dev/ttyd0 and
/dev/cuaa0 .
By contrast, network devices such as
ed0 do not appear in
/dev .
In MS-DOS, the first floppy drive is referred to as
a: . In FreeBSD it is
/dev/fd0 .
Hosts, Domains, IP Addresses, and So Forth
&os; Extension
These elements are part of the &os; extension to
DocBook, and do not exist in the original DocBook
DTD .
Identification information for networked computers (hosts)
can be marked up in several ways, depending on the nature of
the information. All of them use hostid as
the element, with the role attribute
selecting the type of the marked up information.
No role attribute, or
role="hostname"
With no role attribute (i.e.,
hostid .../hostid )
the marked up information is the simple hostname, such
as freefall or
wcarchive . The hostname can be
explicitly specified with
role="hostname" .
role="domainname"
The text is a domain name, such as
FreeBSD.org or
ngo.org.uk . There is no hostname
component.
role="fqdn"
The text is a Fully Qualified Domain Name, with
both hostname and domain name parts.
role="ipaddr"
The text is an IP address,
probably expressed as a dotted quad.
role="ip6addr"
The text is an IPv6
address.
role="netmask"
The text is a network mask, which might be
expressed as a dotted quad, a hexadecimal string, or as
a / followed by a number
(CIDR notation).
role="mac"
The text is an Ethernet MAC
address, expressed as a series of 2 digit hexadecimal
numbers separated by colons.
hostid and Roles
Usage:
para The local machine can always be referred to by the
name hostid localhosthostid , which will have the IP
address hostid role="ipaddr" 127.0.0.1hostid .para
para The hostid role="domainname" FreeBSD.orghostid
domain contains a number of different hosts, including
hostid role="fqdn" freefall.FreeBSD.orghostid and
hostid role="fqdn" bento.FreeBSD.orghostid .para
para When adding an acronym IPacronym alias to an
interface (using command ifconfigcommand )
emphasis alwaysemphasis use a netmask of
hostid role="netmask" 255.255.255.255hostid (which can
also be expressed as
hostid role="netmask" 0xffffffffhostid ).para
para The acronym MACacronym address uniquely identifies
every network card in existence. A typical
acronym MACacronym address looks like
hostid role="mac" 08:00:20:87:ef:d0hostid .para
Appearance:
The local machine can always be referred to by the
name localhost , which will have the IP
address 127.0.0.1 .
The FreeBSD.org
domain contains a number of different hosts, including
freefall.FreeBSD.org and
bento.FreeBSD.org .
When adding an IP alias to an
interface (using ifconfig )
always use a netmask of
255.255.255.255 (which can
also be expressed as
0xffffffff ).
The MAC address uniquely identifies
every network card in existence. A typical
MAC address looks like
08:00:20:87:ef:d0 .
Usernames
&os; Extension
These elements are part of the &os; extension to
DocBook, and do not exist in the original DocBook
DTD .
To refer to a specific username, such as
root or bin , use
username .
username
Usage:
para To carry out most system administration functions
requires logging in as username rootusername .para
Appearance:
To carry out most system administration functions
requires logging in as root .
Email Addresses
Email addresses are marked up as email
elements. In the HTML output format, the
wrapped text becomes a hyperlink to the email address. Other
output formats that support hyperlinks may also make the email
address into a link.
email with a Hyperlink
Usage:
para An email address that does not actually exist, like
email notreal@example.comemail , can be used as an
example.para
Appearance:
An email address that does not actually exist, like
notreal@example.com , can be used as an
example.
A &os;-specific extension allows setting the
role attribute to nolink
to prevent the creation of the hyperlink to the email
address.
email Without a Hyperlink
Usage:
para Sometimes a link to an email address like
email role="nolink" notreal@example.comemail is not
desired.para
Appearance:
Sometimes a link to an email address like
notreal@example.com is not
desired.
Describing Makefile s
&os; Extension
These elements are part of the &os; extension to
DocBook, and do not exist in the original DocBook
DTD .
Two elements exist to describe parts of
Makefile s, maketarget
and makevar .
maketarget identifies a build target
exported by a Makefile that can be
given as a parameter to make .
makevar identifies a variable that can be
set (in the environment, on the command line with
make , or within the
Makefile ) to influence the
process.
maketarget and
makevar
Usage:
para Two common targets in a filename Makefilefilename
are maketarget allmaketarget and
maketarget cleanmaketarget .para
para Typically, invoking maketarget allmaketarget will
rebuild the application, and invoking
maketarget cleanmaketarget will remove the temporary
files (filename .ofilename for example) created by the
build process.para
para maketarget cleanmaketarget may be controlled by a
number of variables, including makevar CLOBBERmakevar
and makevar RECURSEmakevar .para
Appearance:
Two common targets in a Makefile
are all and
clean .
Typically, invoking all will
rebuild the application, and invoking
clean will remove the temporary
files (.o for example) created by the
build process.
clean may be controlled by a
number of variables, including CLOBBER
and RECURSE .
Literal Text
Literal text, or text which should be entered verbatim, is
often needed in documentation. This is text that is excerpted
from another file, or which should be copied exactly as shown
from the documentation into another file.
Some of the time, programlisting will
be sufficient to denote this text. But
programlisting is not always appropriate,
particularly when you want to include a portion of a file
in-line
with the rest of the
paragraph.
On these occasions, use
literal .
literal
Usage:
para The literal maxusers 10literal line in the kernel
configuration file determines the size of many system tables, and is
a rough guide to how many simultaneous logins the system will
support.para
Appearance:
The maxusers 10 line in the kernel
configuration file determines the size of many system
tables, and is a rough guide to how many simultaneous
logins the system will support.
Showing Items That the User Must
Fill In
There will often be times when the user is shown
what to do, or referred to a file or command line, but
cannot simply copy the example provided. Instead, they
must supply some information themselves.
replaceable is designed for this
eventuality. Use it inside other
elements to indicate parts of that element's content that
the user must replace.
replaceable
Usage:
screen &prompt.user; userinput man replaceable commandreplaceable userinput screen
Appearance:
&prompt.user; man command
replaceable can be used in many
different elements, including literal .
This example also shows that replaceable
should only be wrapped around the content that the user
is meant to provide. The other content
should be left alone.
Usage:
para The literal maxusers replaceable nreplaceable literal
line in the kernel configuration file determines the size of many system
tables, and is a rough guide to how many simultaneous logins the system will
support.para
para For a desktop workstation, literal 32literal is a good value
for replaceable nreplaceable .para
Appearance:
The
maxusers n
line in the kernel configuration file determines the size
of many system tables, and is a rough guide to how many
simultaneous logins the system will support.
For a desktop workstation, 32 is a
good value for n .
Showing GUI Buttons
Buttons presented by a graphical user interface are marked
with guibutton . To make the text look more
like a graphical button, brackets and non-breaking spaces are
added surrounding the text.
guibutton
Usage:
para Edit the file, then click
guibutton [ Save ]guibutton to save the
changes.para
Appearance:
Edit the file, then click
[ Save ] to save the
changes.
Quoting System Errors
System errors generated by &os; are marked with
errorname . This indicates the exact error
that appears.
errorname
Usage:
screen errorname Panic: cannot mount rooterrorname screen
Appearance:
Panic: cannot mount root
Images
Image support in the documentation is somewhat
experimental. The mechanisms described here are unlikely to
change, but that is not guaranteed.
To provide conversion between different image formats, the
graphics/ImageMagick
port must be installed. This port is not included in the
textproc/docproj meta
port, and must be installed separately.
A good example of the use of images is the
doc/en_US.ISO8859-1/articles/vm-design/
document. Examine the files in that directory to see how
these elements are used together. Build different output
formats to see how the format determines what images are shown
in the rendered document.
Image Formats
Two image formats are currently supported. The type of
image determines which format to use.
Images that are primarily vector based, such as network
diagrams, time lines, and similar, should be in
EPS (Encapsulated Postscript) format.
These images have a .eps
extension.
For bitmaps, such as screen captures, use the
PNG (Portable Network Graphic) format.
These images have the .png
extension.
These are the only formats in which
images should be committed to the documentation
repository.
Use the appropriate format for each image. Documentation
will often have a mix of EPS and
PNG images. The
Makefile s ensure that the correct format
image is chosen depending on the output format used.
Do not commit the same image to the repository in
two different formats .
The Documentation Project may eventually switch to using
the SVG (Scalable Vector Graphic) format
for vector images. However, the current state of
SVG capable editing tools makes this
impractical.
Image File Locations
Image files can be stored in one of several locations,
depending on the document and image:
In the same directory as the document itself, usually
done for articles and small books that keep all their
files in a single directory.
In a subdirectory of the main document. Typically
done when a large book uses separate subdirectories to
organize individual chapters.
When images are stored in a subdirectory of the
main document directory, the subdirectory name must be
included in their paths in the
Makefile and the
imagedata element.
In a subdirectory of
doc/share/images
named after the document. For example, images for the
Handbook are stored in doc/share/images/books/handbook .
Images that work for multiple translations are stored in
this upper level of the documentation file tree.
Generally, these are images that can be used unchanged in
non-English translations of the document.
Image Markup
Images are included as part of a
mediaobject . The
mediaobject can contain other, more
specific objects. We are concerned with two, the
imageobject and the
textobject .
Include one imageobject , and two
textobject elements. The
imageobject will point to the name of the
image file without the extension. The
textobject elements contain information
that will be presented to the user as well as, or instead of,
the image itself.
Text elements are shown to the reader in several
situations. When the document is viewed in
HTML , text elements are shown while the
image is loading, or if the mouse pointer is hovered over the
image, or if a text-only browser is being used. In formats
like plain text where graphics are not possible, the text
elements are shown instead of the graphical ones.
This example shows how to include an image called
fig1.png in a document. The image is a
rectangle with an A inside it:
mediaobject
imageobject
imagedata fileref="fig1"
imageobject
textobject
literallayout class="monospaced" +---------------+
| A |
+---------------+literallayout
textobject
textobject
phrase A picturephrase
textobject
mediaobject
Include an imagedata element
inside the imageobject element. The
fileref attribute should contain the
filename of the image to include, without the extension.
The stylesheets will work out which extension should be
added to the filename automatically.
The first textobject contains a
literallayout element, where the
class attribute is set to
monospaced . This is an opportunity to
demonstrate ASCII art skills. This
content will be used if the document is converted to plain
text.
Notice how the first and last lines of the content
of the literallayout element butt up
next to the element's tags. This ensures no extraneous
white space is included.
The second textobject contains a
single phrase element. The contents of
this phrase will become the alt
attribute for the image when this document is converted to
HTML .
Image Makefile Entries
Images must be listed in the Makefile
in the IMAGES variable. This variable must
contain the names of all the source
images. For example, if there are three figures,
fig1.eps , fig2.png ,
fig3.png , then the
Makefile should have lines like this in
it.
…
IMAGES= fig1.eps fig2.png fig3.png
…
or
…
IMAGES= fig1.eps
IMAGES+= fig2.png
IMAGES+= fig3.png
…
Again, the Makefile will work out the
complete list of images it needs to build the source document,
you only need to list the image files you
provided.
Images and Chapters in Subdirectories
Be careful when separating documentation into smaller
files in different directories (see ).
Suppose there is a book with three chapters, and the
chapters are stored in their own directories, called
chapter1/chapter.xml ,
chapter2/chapter.xml , and
chapter3/chapter.xml . If each chapter
has images associated with it, place
those images in each chapter's subdirectory
(chapter1/ ,
chapter2/ , and
chapter3/ ).
However, doing this requires including the directory
names in the IMAGES variable in the
Makefile , and
including the directory name in the
imagedata element in the document
document.
For example, if the book has
chapter1/fig1.png , then
chapter1/chapter.xml should
contain:
mediaobject
imageobject
imagedata fileref="chapter1/fig1"
imageobject
…
mediaobject
The directory name must be included in the
fileref attribute.
The Makefile must contain:
…
IMAGES= chapter1/fig1.png
…
Links
Links are also in-line elements.
id Attributes
Most DocBook elements accept an id
attribute to give that part of the document a unique name.
The id can be used as a target for a
crossreference or link.
Any portion of the document that will be a link target
must have an id attribute. Assigning an
id to all chapters and sections, even if
there are no current plans to link to them, is a good idea.
These id s can be used as unique anchor
reference points by anyone referring to the
HTML version of the document.
id on Chapters and
Sections
chapter id="introduction"
title Introductiontitle
para This is the introduction. It contains a subsection,
which is identified as well.para
sect1 id="introduction-moredetails"
title More Detailstitle
para This is a subsection.para
sect1
chapter
Use descriptive values for id names.
The values must be unique within the entire document, not just
in a single file. In the example, the subsection
id is constructed by appending text to the
chapter id . This ensures that the
id s are unique. It also helps both reader
and anyone editing the document to see where the link is
located within the document, similar to a directory
path to a file.
To allow the user to jump into a specific portion of the
document, even in the middle of a paragraph or an example, use
anchor . This element has no content, but
takes an id attribute.
anchor
para This paragraph has an embedded
anchor id="para1" link target in it. It will not
show up in the document.para
Crossreferences with xref
xref provides the reader with a link to
jump to another section of the document. The target
id is specified in the
linkend attribute, and
xref generates the link text
automatically.
Using xref
Assume that this fragment appears somewhere in a
document that includes the id
example shown above:
para More information can be found
in xref linkend="introduction" .para
para More specific information can be found
in xref linkend="introduction-moredetails" .para
The link text will be generated automatically, looking
like (emphasized text indicates the
link text):
More information can be found in Chapter
1, Introduction .
More specific information can be found in
Section 1.1,
More Details
.
The link text is generated automatically from the chapter
and section number and title
elements.
xref cannot link to an
id attribute on an
anchor element. The
anchor has no content, so the
xref cannot generate the link
text.
Linking to the Same Document or Other Documents on the
Web
The link elements described here allow the writer to
define the link text. It is very important to use descriptive
link text to give the reader an idea of where the link will
take them. Remember that DocBook can be rendered to multiple
types of media. The reader may be looking at a printed book
or other form of media where there are no links. If the link
text is not descriptive enough, the reader may not be able to
locate the linked section.
Links to the Same Document
link is used to create a link
within the same document. The target id
is specified in the linkend attribute.
This element wraps content, which is used for the link
text.
Using link
Assume that this fragment appears somewhere in a
document that includes the id
example.
para More information can be found in the
link linkend="introduction" sample introductionlink .para
para More specific information can be found in the
link linkend="introduction-moredetails" sample introduction with more
detailslink section.para
This output will be generated
(emphasized text is used to show the
link text):
More information can be found in the
sample introduction .
More specific information can be found in the
sample introduction with more
details section.
link can be used to include links
to the id of an
anchor element, since the
link content defines the link
text.
Linking to Other Documents on the Web
The ulink is used to link to
external documents on the web. The url
attribute is the URL of the page that the
link points to, and the content of the element is the text
that will be displayed for the user to activate.
ulink to a &os; Documentation Web
Page
Link to the book or article URL
entity. To link to a specific chapter in a book, add a
slash and the chapter file name, followed by an optional
anchor within the chapter. For articles, link to the
article URL entity, followed by an
optional anchor within the article.
URL entities can be found in
doc/share/xml/urls.ent .
Usage for book links:
para Read the ulink
url="&url.books.handbook;/svn.html#svn-intro" SVN
introductionulink , then pick the nearest mirror from
the list of ulink
url="&url.books.handbook;/subversion-mirrors.html" Subversion
mirror sitesulink .para
Appearance:
Read the SVN
introduction , then pick the nearest mirror from
the list of Subversion
mirror sites .
Usage for article links:
para Read this
ulink url="&url.articles.bsdl-gpl;" article
about the BSD licenseulink , or just the
ulink url="&url.articles.bsdl-gpl;#intro" introductionulink .para
Appearance:
Read this article
about the BSD license , or just the introduction .
ulink to a &os; Web Page
Usage:
para Of course, you could stop reading this document and go to the
ulink url="&url.base;/index.html" FreeBSD home pageulink instead.para
Appearance:
Of course, you could stop reading this document and go
to the FreeBSD home
page instead.
ulink to an External Web
Page
Usage:
para Wikipedia has an excellent reference on
ulink
url="http://en.wikipedia.org/wiki/GUID_Partition_Table" GUID
Partition Tablesulink .para
Appearance:
Wikipedia has an excellent reference on
GUID
Partition Tables .
The link text can be omitted to show the actual
URL:
para Wikipedia has an excellent reference on
GUID Partition Tables: ulink
url="http://en.wikipedia.org/wiki/GUID_Partition_Table" ulink .para
Appearance:
Wikipedia has an excellent reference on
GUID Partition Tables: .
diff --git a/es_ES.ISO8859-1/articles/contributing/article.xml b/es_ES.ISO8859-1/articles/contributing/article.xml
index 3691383575..14d721333c 100644
--- a/es_ES.ISO8859-1/articles/contributing/article.xml
+++ b/es_ES.ISO8859-1/articles/contributing/article.xml
@@ -1,615 +1,615 @@
Contribuir a FreeBSD
En éste artículo se describen las diferentes
maneras en las que una persona o entidad pueden ayudar al
Proyecto FreeBSD.
&trans.es.bazcar;
Jordan
Hubbard
Enviado por
$FreeBSD$
$FreeBSD$
contributing
?Quiere ayudar a mejorar FreeBSD? ¡Eso es
genial! FreeBSD depende del esfuerzo de
base de usuarios y usuarias para sobrevivir. Su ayuda no
sólamente muy apreciada sino que es vital
para el contínuo crecimiento de FreeBSD.
Contrariamente a lo que pudiera usted creer, no hace falta ser
un brujo de la programación o un amigo íntimo del
core team de FreeBSD para su trabajo sea aceptado. El desarrollo
de FreeBSD está al cargo de un gran grupo internacional de
voluntarios y voluntarias en contínuo crecimiento, de muy
diversas edades y expertos en distintos campos del
conocimiento. Siempre hay más trabajo por hacer que gente
disponible para hacerlo y una mano más siempre es
bienvenida.
El proyecto FreeBSD tiene el compromiso de mantener un
sistema operativo completo, no simplemente un kernel o unas
cuantas aplicaciones sueltas. Por lo tanto nuestra lista de
TAREAS PENDIENTES (TODO
)
incluye una vasta lista de tareas: desde documentación,
prueba de versiones preliminares hasta el desarrollo del sistema
de instalación y el desarrollo del kernel en aspectos
altamente especializados. Casi con total seguridad puede usted
ayudar al proyecto sea cual sea su preparación y el
área en la que disponga de experiencia o
interés.
Invitamos a las empresas que tienen proyectos relacionados
con FreeBSD a que se pongan en contacto con nosotros. ?Necesitan
una extensión concreta para hacer que su producto funcione?
Estaremos encantados de escuchar sus peticiones (suponiendo que no sean
demasiado esotéricas). ?Su proyecto es interesante y/o
beneficioso para su empresa y para FreeBSD?
¡Háganoslo saber! Podemos trabajar conjuntamente en
algunos aspectos del mismo. El mundo del software libre está
cambiando muchas de las normas establecidas sobre cómo el software
debería ser desarrollado, vendido y mantenido así que
le rogamos encarecidamente que al menos le dé un segundo
vistazo.
Qué es lo que hace falta
La siguiente lista de tareas y subproyectos representa
de algún modo la amalgama de listas de TAREAS
PENDIENTES y peticiones de usuarios.
Tareas en Curso para No Programadores
Una gran parte de quienes trabajan en FreeBSD no
son programadores. El Proyecto incluye escritores de
documentación, diseñadores y técnicos de
soporte. Los únicos requisitos necesarios son poner
algo de su tiempo y ganas de aprender.
Lea cuidadosamente las FAQ y el Handbook cada cierto
tiempo. Si algo está mal explicado, desfasado o
sencillamente completamente equivocado háganoslo
saber. Aún mejor, envíenos la
corrección (no es difícil aprender SGML pero
no hay problema si lo envía en ASCII).
Ayude a traducir la documentación de FreeBSD a
su lengua materna. Si ya existe documentación en su
idioma puede ayudar a traducir otros documentos o a mantener
al día los que ya existan. Antes de nada consulte Translations
FAQ en el FreeBSD Documentation Project
Primer
. El hecho de traducir
algo no implica la obligación
de traducir todo : al ser una tarea
voluntaria puede usted traducir tanto o tan poco como
prefiera. Cuando alguien empieza a traducir casi siempre
hay alguien que se une. Si sólo tiene tiempo o
ganas para traducir una parte de la documentación
por favor, traduzca las instrucciones de instalación.
Lea la &a.questions; y el &ng.misc;
de vez en cuando (o incluso regularmente). Compartir sus
conocimientos mientras ayuda a la gente a resolver sus
problemas puede ser muy gratificante. ¡Puede ser que
incluso aprenda usted también algo nuevo! Esos foros
pueden ser también un importante foco de ideas para
nuevas cosas en las que trabajar.
Tareas en Curso para Programadores
La mayoría de las tareas aquí expuestas
requieren una considerable cantidad de tiempo o un conocimiento
profundo del kernel de FreeBSD o ambas cosas. Existen, sin embargo,
multitud de tareas muy útiles que son ideales para
hackers de fin de semana
.
Si utiliza FreeBSD-CURRENT y tiene una buena
conexión con Internet existe una máquina
llamada current.FreeBSD.org que genera
diariamente (en teoría, la frecuencia puede variar)
una distribución completa.
Intente instalar la última versión
desde ella e informe de cualquier anomalía en el
proceso.
Lea la &a.bugs;. Puede encontrar algún
problema sobre el que hacer un comentario constructivo o
sobre el que probar parches. Puede incluso intentar
arreglarlo usted.
Si sabe de alguna corrección que ha sido
aplicada con éxito a -CURRENT pero que aún
no haya sido incluída en -STABLE tras un
período de tiempo razonable (por lo general un par
de semanas) envíe al committer responsable un
(educado) mensaje recordándoselo.
Mueva software de terceras partes a
src/contrib en el árbol de
fuentes.
Asegúrese de que el código de
src/contrib está
actualizado.
Compile el árbol de fuentes (o sólo una
parte del mismo) con una cantidad extra de warnings
activadas y depúrelas.
Corrija warnings
en los ports
en los que aparecen cosas en desuso como
gets() o que incluyen
malloc.h .
Si ha enviado algún port envíe sus
parches a los autores originales: le hará la
vida más fácil cuando liberen la siguiente
versión.
Consiga copias de estándares formales como
POSIX. Hay enlaces relacionados con esos estándares
en el sitio web del FreeBSD
C99 & Posix Standards Conformance Project .
Compare el funcionamiento interno de FreeBSD con el que
exije el estándar. Si hay diferencias, en especial
en algún rincón sutil y oscuro de la
especificación, envíe un PR (Problem
Report
). Si es capaz de aventurar una solución
incluya un parche en el PR. Si cree que el estándar es
incorrecto póngase en contacto con los responsables del
mismo para que tengan en cuenta su propuesta.
¡Sugiera nuevas tareas para ésta
lista!
Trabajo en la PR Database
base de datos de informes de
problemas (PR)
La lista
de PR de FreBSD muestra los informes de problemas
activos así como las peticiones de mejoras
que han enviado los usuarios de FreeBSD. La PR
database
incluye tanto problemas que han de ser
corregidos por programadores como por no programadores.
Busque entre los PR que están abiertos, puede haber
alguno que le interese. Algunos pueden ser tareas muy
sencillas que sólo necesiten una mirada adicional
para confirmar que la solución adjunta es la
adecuada. Otras, por el contrario, pueden llegar a ser
muchísimo más complejas o incluso no
incluír una solución.
Comience con un PR no haya sido aún
asignado. Si el PR ya ha sido asignado a alguien pero
cree que puede ayudar envíe un correo electrónico
a la persona responsable del PR y pregúntele si puede
colaborar (tal vez ya exista un parche listo para ser probado
o puedan contrastar ideas).
Cómo Colaborar
Las colaboraciones al sistema generalmente pueden
catalogarse en las siguientes 5 categorías:
Informes de Errores y Comentarios Generales
Las ideas o sugerencias de interés
técnico general deben
enviarse a &a.hackers;. En consecuencia, si le interesan
ese tipo de cuestiones (¡y no le importa recibir un
gran volumen de correo!) debería
suscribirse a la &a.hackers; enviando un correo electrónico
a &a.majordomo;. Consulte el
FreeBSD Handbook para más información sobre
ésta y otras listas de correo.
Si encuentra un error o quiere enviar un cambio concreto
por favor utilice el programa &man.send-pr.1; o su equivalente en la
web (N. del T.: El interfaz web de send-pr fué
desactivado a causa del spam
). Trate de
rellenar todos los campos del informe de errores. A menos que
exceda de 65KB puede incluír los parches directamente en
el informe. Si es posible aplicar el parche al árbol de
fuentes no olvide incluír [PATCH] en
la sinópsis del informe. Cuando incluya parches
no copie y pegue
ya que
las tabulaciones son transformadas en espacios, haciendo el
parche inútil. Considere la posibilidad de comprimir
los parches mediante &man.uuencode.1; si sobrepasan los
20KB.
Tras rellenar el informe debería recibir un mensaje
de confirmación junto con un número de
seguimiento. Conserve ese número por si en algún
momento pudiera añadir nueva información sobre el
problema enviando correo a
FreeBSD-gnats-submit@FreeBSD.org . Utilice el
número como asunto del mensaje (por ejemplo,
"Re: kern/3377" . Así debería
enviarse la información adicional sobre cualquier PR.
Si no recibe confirmación en un período de
tiempo razonable (entre 3 días y una semana, dependiendo
de su tipo de conexión) o si por alguna razón no
puede utilizar el comando &man.send-pr.1;, puede solicitar que
alguien lo haga por usted enviando un correo a &a.bugs;.
No olvide consultar éste
article
sobre cómo escribir buenos
informes de problemas.
Cambios en la Documentación
envíos de
documentación
Los cambios en la documentación son revisados por
la &a.doc;. Por favor, consulte FreeBSD Documentation
Project Primer para recibir instrucciones
detalladas. Envíe nuevos contenidos o cambios sobre
los ya existentes (¡incluso los pequeños son
bienvenidos!) mediante &man.send-pr.1; tal y como se detalla
en Informes de Error y Comentarios
Generales.
Cambios al Código Fuente ya Existente
FreeBSD-CURRENT
Añadir cambios o modificar el código fuente
existente es un tema delicado y depende mucho de hasta
qué punto esté usted al día sobre el
estado actual del desarrollo de FreeBSD. Hay una versión
en desarrollo permanente de FreeBSD conocida como
FreeBSD-CURRENT
, disponible de muy diversas
formas para mayor comodidad de los desarrolladores que
están trabajando activamente en el
sistema. Consulte el FreeBSD
Handbook , donde se explica cómo obtener y
utilizar FreeBSD-CURRENT.
Si trabaja con versiones anticuadas de los fuentes
desafortunadamente significará que sus cambios
podrían con frecuencia resultar demasiado obsoletos
o demasiado divergentes para una fácil reintegración
dentro de FreeBSD. Ésta posibilidad puede minimizarse
suscribiéndose a la &a.announce; y a la &a.current;,
donde tienen lugar los debates sobre el estado actual del
sistema.
Asumiendo que puede manejarse con seguridad con unos fuentes
totalmente actualizados sobre los que aplicar sus cambios, el
siguiente paso es generar los diffs
que enviará
al equipo de FreeBSD. Hágalo con el comando
&man.diff.1;.
El formato &man.diff.1; que preferimos para el envío
de parches es la salida unificada generada por diff
-u . Sin embargo, para parches que implican cambios
sustanciales en una región de código una salida
contextual de diff
generada por diff
-c resultará más legible y en consecuencia
preferible.
diff
Por ejemplo:
&prompt.user; diff -c ficheroantíguo ficheronuevo
o
&prompt.user; diff -c -r directorioantíguo directorionuevo
generarían un conjunto de diffs
contextuales
de fichero fuente o la jerarquía de directorios.
Del mismo modo
&prompt.user; diff -u ficheroantíguo ficheronuevo
o
&prompt.user; diff -u -r directorioantíguo directorionuevo
nos darían el mismo resultado excepción hecha
del formato unificado de los diffs
resultantes.
Consulte la página man de &man.diff.1; para más
detalles.
Una vez que disponga de un conjunto de diffs
(que debería probar con el comando
&man.patch.1;) puede enviarlos para que sean incluídos en
FreeBSD. Utilice el programa &man.send-pr.1; tal y como se muestra
Informes de Errores y Comentarios
Generales. ¡No se limite simplemente
a enviar sus diffs
a la &a.hackers; o se
perderán! Agradecemos inmensamente su colaboración
(¡éste es un proyecto que funciona gracias al
trabajo desinteresado de mucha gente!). Estamos muy ocupados,
así que no podemos atender inmediatamente todos y cada uno
de los envíos recibidos, pero permanecerán en la
PR database
hasta que lo hagamos. Etiquete sus
envíos incluyendo [PATCH] en la
sinópsis del informe.
uuencode
Si lo considera oportuno (ésto es, si ha
añadido borrado o renombrado ficheros)
empaquete sus cambios en un fichero tar
y ejecute el programa &man.uuencode.1;
sobre él. Puede usar también ficheros
creados con &man.shar.1;
Si su cambio puede tener un cariz potencialmente
delicado ésto es, no está seguro de bajo
qué tipo de licencia
sería
su distribución ulterior o simplemente no está
listo para liberarlo sin una revisión exhaustiva,
debería enviarlo directamente a &a.core; en lugar de
usar &man.send-pr.1;. El &a.core; incluye un grupo de gente
mucho más pequeño que lleva a cabo la mayor
parte del trabajo diario en FreeBSD. Tenga en cuenta que
el &a.core; está muy ocupado y
por lo tanto sólo debería enviársele
correo cuando sea estrictamente necesario.
Consulte la páginas man
de
&man.intro.9; y &man.style.9; para saber más acerca
del estilo de codificación requerido. Le
agradeceríamos mucho que al menos tuviera en cuenta
esa información antes de enviar código.
New Code or Major Value-Added Packages
En el caso de una contribución significativa o de
gran impacto, o si se trata de añadir una nueva
característica importante a FreeBSD, enviar ficheros
tar tratados con uuencode
o por el contrario
ponerlos a disposición de otras personas en un sitio
web o FTP se convierte en algo prácticamente
imprescindible. Si no dispone de acceso a un sitio web o
FTP pregunte en la lista apropiada de FreeBSD para que
alguien se lo facilite.
Cuando se trabaja con un gran volumen de código
el espinoso tema de la licencia
invariablemente
sale a la palestra. Las licencias
admitidas
para la inclusión de código en FreeBSD
son:
La Licencia BSD
La licencia BSD. Ésta licencia es la preferida
a causa de su naturaleza carente de requerimientos
añadidos
y su atractivo general para la
empresa. Lejos de buscar evitar el uso comercial, el
Proyecto FreeBSD recomienda vivamente la participación
de entidades comerciales que pudieran en casos determinados
dedicar parte de sus recursos a FreeBSD.
GPL GNU General Public License
GNU General Public License
La GNU General Public License, o GPL
.
Ésta licencia no es tan popular debido al esfuerzo
añadido que requiere de cualquiera que usara el
código con fines comerciales, pero dada la ingente
cantidad de código GPL que usamos habitualmente
(el compilador, el ensamblador, el procesador de texto,
etc) sería estúpido rechazar contribuciones
bajo ésta licencia. El código bajo licencia
GPL también se incluye bajo una parte diferenciada
del árbol, pudiendo ser
/sys/gnu o
/usr/src/gnu , y es por tanto
fácilmente identificable para quienes la licencia
GPL suponga un problema.
Todo lo que vaya bajo cualquier otro tipo de licencia
requiere que ésta deba ser cuidadosamente revisada
antes de que su inclusión en FreeBSD sea llevada a
consideración. Las aportaciones bajo licencias
comerciales particularmente restrictivas en vigor por lo
general son rechazadas aunque siempre se recomienda a los
autores que hagan públicamente accesible su trabajo
usando sus propios medios.
Para poner su trabajo bajo la licencia BSD
inserte el siguiente texto al principio de todos y cada uno
de los ficheros de código que quiera amparar bajo la
misma, reemplazando el texto entre
%% con la información
apropiada:
Copyright (c) %%años_exactos%%
%%su_nombre%%, %%su_estado/país%% %%su_código_postal%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%su_nombre%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%su_nombre%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
Para su comodidad existe una copia de éste texto en
/usr/share/examples/etc/bsd-style-copyright .
Dinero, Hardware o Acceso a Internet
Estamos encantados de aceptar donaciones económicas
para ayudar a impulsar el Proyecto FreeBSD y, como en cualquier
proyecto mantenido por voluntarios, un poco puede hacer
mucho. También son muy importantes las donaciones de
hardware para ampliar nuestra lista de hardware soportado,
dado que normalmente andamos cortos de fondos con los que
comprar ese tipo de material.
-
- Donación de Fondos
+
+ Donación de Fondos
La Fundación FreeBSD es una fundación sin
ánimo de lucro y exenta de impuestos creada para
impulsar los objetivos del Proyecto FreeBSD. Como una entidad
501(c)3, la Fundación está
prácticamente exenta del pago del impuesto federal
de la renta de los EEUU así como del del Estado de
Colorado. Las donaciones a una entidad libre de impuestos
suelen ser deducibles en la declaración federal de
impuestos.
Las donaciones pueden enviarse mediante cheque a:
The FreeBSD Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
La Fundación FreeBSD puede también aceptar
donaciones via web mediante PayPal. Para hacer una
donación visite la página web de la
Fundación .
Puede encontrar más información sobre
la Fundación en The
FreeBSD Foundation -- an Introduction . Puede enviar correo
electrónico a la Fundación a
bod@FreeBSDFoundation.org .
Donación de Hardware
donaciones
El Proyecto FreeBSD acepta encantado donaciones de
hardware que le resulte útil. Si desea donar
hardware por favor póngase en contacto con la Donations Liaison
Office .
Donación de Acceso a Internet
Nunca viene mal una nueva réplica para sitios
FTP, WWW o cvsup . Si desea ofrecer
alguno de esos servicios por favor consulte el siguiente
artículo Mirroring FreeBSD
para más información.
diff --git a/fr_FR.ISO8859-1/articles/contributing/article.xml b/fr_FR.ISO8859-1/articles/contributing/article.xml
index 1436a31a60..8f07d71a59 100644
--- a/fr_FR.ISO8859-1/articles/contributing/article.xml
+++ b/fr_FR.ISO8859-1/articles/contributing/article.xml
@@ -1,633 +1,633 @@
Collaborer à FreeBSD
$FreeBSD$
$FreeBSD$
Cet article décrit les différentes manières
pour une personne individuelle ou une organisation de collaborer au
projet FreeBSD.
&trans.a.fonvieille;
Première version de &a.fr.dntt;
Jordan
Hubbard
Contribution de
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
collaborer
Alors, comme ça vous voulez collaborer à FreeBSD?
C'est génial! FreeBSD s'appuie sur les
contributions de sa base d'utilisateurs pour survivre. Vos
contributions ne sont pas seulement appréciées, elles
sont vitales pour la constante progression de FreeBSD.
Contrairement à ce que certains pourraient vous faire croire,
vous n'avez pas besoin d'être un expert programmeur ou un ami proche
de l'équipe principale de FreeBSD pour avoir vos contributions
acceptées. Un grand nombre, toujours en augmentation, de
collaborateurs à travers le monde, dont les âges et l'expertise
technique sont très variables, développent FreeBSD. Il y a
toujours plus de travail à faire que de personnes disponibles pour
s'en occuper, et davantage d'aide est toujours
appréciée.
Le projet FreeBSD est responsable de tout l'environnement du
système d'exploitation, et pas seulement d'un noyau ou de quelques
utilitaires éparpillés. Ainsi, nos listes
TODO (à faire) s'étendent sur une
large gamme de tâches: depuis la documentation, les
béta-tests et la présentation, jusqu'à
l'installateur système et des types de développement du noyau
hautement spécialisés. Des personnes de n'importe quel
niveau de compétence, dans presque tous les domaines, pourront
sûrement aider le projet.
Les entités commerciales engagées dans des entreprises
relatives à FreeBSD sont également encouragées
à nous contacter. Vous avez besoin d'une extension
spéciale pour faire fonctionner votre produit? Vous nous
trouverez réceptif à vos requêtes, du
moment quelles ne sont pas trop exotiques. Vous travaillez sur un
produit à valeur ajoutée? Faites-le nous savoir!
Nous serons peut être en mesure de coopérer sur certains
aspects. Le monde du logiciel libre va à l'encontre de
nombreuses idées reçues sur la manière dont les
logiciels sont développés, vendus, et maintenus, et
nous vous invitons à lui donner au moins un second regard.
Les besoins
La liste suivante de tâches et de sous-projets
représente une sorte d'amalgame des différentes listes
TODO et des demandes d'utilisateurs.
Tâches de non-programmeur
De nombreuses personnes impliquées dans FreeBSD ne sont pas
des programmeurs. Le projet comprend des rédacteurs de
documentation, des concepteurs de site web, et des personnes
assurant le support. La contribution de ces personnes se
matérialise sous la forme d'un investissement en temps et
une volonté d'apprendre.
Lisez la FAQ et le Manuel régulièrement.
Si quelque chose est mal expliquée, pas à jour ou tout
simplement complètement faux, signalez-le nous. Mieux,
envoyez nous un correctif (le SGML n'est pas difficile à
apprendre, mais il n'y aucune objection à des soumissions en
format ASCII).
Aidez à traduire la documentation FreeBSD dans
votre langue. Si la documentation existe déjà
dans votre langue, vous pouvez aider à traduire des
documents supplémentaires ou contrôler que les
traductions sont à jour. Consultez tout d'abord la FAQ sur les
traductions dans l'Introduction au Projet de
Documentation de FreeBSD. Notez que vous ne vous engagez
pas à traduire chacun des documents FreeBSD ce faisant
— en tant que volontaire, vous pouvez faire autant que
vous le désirez. Une fois que quelqu'un commence à
traduire, presque toujours d'autres personnes rejoindront
l'effort. Si vous n'avez le temps et l'énergie pour ne
traduire qu'une partie de la documentation, traduisez les
instructions d'installation.
Lisez la &a.questions; et le
&ng.misc; de temps en temps (ou même
régulièrement). Il peut être très
gratifiant de partager son expérience et d'aider les
gens à résoudre leurs problèmes; parfois
vous pourrez même apprendre quelque chose
de nouveau! Ces forums peuvent être également
une source d'idées sur ce qu'il faut améliorer.
Tâches de programmeur
La plupart des tâches listées ici nécessitent
soit un investissement considérable en temps, soit une
connaissance en profondeur du noyau, ou les deux. Cependant,
il y a également de nombreuses tâches utiles pour les
“programmeurs occasionnels”.
Si vous utilisez FreeBSD-CURRENT et que vous avez une
bonne connexion Internet, il existe une machine current.FreeBSD.org qui compile une
version complète une fois par jour—à
chaque fois, essayez d'installer la dernière version
et rapportez toutes les erreurs durant le processus.
Lisez la &a.bugs;. Il peut y
avoir un problème que vous pouvez commenter de manière
constructive ou avec des correctifs que vous pouvez tester.
Ou vous pourrez même tenter de corriger un de ces
problèmes vous-même.
Si vous connaissez un correctif qui a été
appliqué avec succès sur la branche -CURRENT
mais qui n'a pas été intégré
dans la branche -STABLE après un intervalle de temps
raisonnable (normalement quelques semaines), envoyez au
responsable un rappel poli.
Déplacer des contributions logiciels vers
src/contrib dans l'arborescence des
sources.
Assurez vous que le code dans
src/contrib est à jour.
Compiler l'arbre des sources (ou une partie) avec tous
les messages d'avertissements activés et corriger les
avertissements.
Corriger les avertissements pour les logiciels portés
qui font des choses obsolètes comme utiliser
gets() ou inclure
malloc.h .
Si vous avez collaboré à un des logiciels
portés, envoyez vos correctifs à leur auteur
original (cela vous rendra la vie plus facile lors de la sortie
de la prochaine version).
Récupérer des copies de normes précises
comme &posix;. Vous pouvez trouver des liens sur ces normes sur
le site du Projet
FreeBSD de conformité aux normes C99 et POSIX .
Comparer le comportement de FreeBSD avec celui requis par la
norme. Si le comportement diffère, en particulier pour des
éléments subtiles et obscures de la
spécification, envoyez un rapport de bogue à ce
sujet. Si vous en êtes capable, déterminez comment
le corriger et joignez un correctif à
votre rapport de bogue. Si vous pensez que la norme est
erronée, demandez à l'organisme de normalisation de
considérer la question.
Suggérer d'autres tâches pour cette liste!
Travailler avec la base de données des rapports de
bogue (PR)
base de données des rapports de
bogue
La liste des
PRs de FreeBSD donne tous les rapports de problème
actuellement actifs et les demandes d'amélioration qui ont
été soumis par les utilisateurs de FreeBSD. La base
de données des PRs comprend des tâches de programmeurs
et de non-programmeurs.
Consultez les PRs ouverts, et voyez s'il y a quelque chose qui
peut vous intéresser. Certaines de ces tâches peuvent
être des tâches très simples qui ne
nécessitent qu'une paire d'yeux supplémentaire pour
vérifier et confirmer que le correctif dans
le PR est correct. D'autres peuvent être bien plus complexes,
ou pourront même ne pas inclure de correctif du tout.
Commencez avec des PRs qui n'ont pas été
assignés à quelqu'un d'autre. Si le PR est
assigné à quelqu'un d'autre, mais qu'il
semble que c'est quelque chose dont vous pouvez vous charger,
envoyez un courrier électronique à la personne en
question et demandez si vous pouvez travailler dessus—elle
pourra déjà avoir un correctif prêt à
être testé, ou des idées
supplémentaires sur lesquelles vous pourrez discuter.
Comment participer
Les contributions au système tombent généralement
dans une ou plusieurs des 5 catégories suivantes:
Rapport de bogue et commentaires généraux
Une idée ou une suggestion d'intérêt technique
général devrait être
envoyée à la &a.hackers;. De même, les
personnes intéressées par de
telles choses (et qu'un grand volume de
courrier électronique ne dérange pas) devraient
s'abonner à la &a.hackers; en envoyant un
courrier électronique à &a.majordomo;. Voir le Manuel
FreeBSD pour plus d'information à ce propos et sur
les autres listes de diffusion.
Si vous trouvez un bogue ou que vous soumettez une
modification spécifique, rapportez-le en utilisant le programme
&man.send-pr.1; ou son équivalent web . Essayez
de remplir chaque champ du rapport de bogue. A moins qu'ils ne
dépassent 65KO, inclure tous les correctifs directement dans le
rapport. Si le correctif peut être appliqué directement
sur l'arbre des sources ajoutez [PATCH] dans le
synopsis du rapport. Quand vous ajoutez des correctifs,
ne pas utiliser le copier-coller car ce
dernier transforme les tabulations en espaces et rend les
correctifs inutilisables. Pensez à compresser les correctifs et
à utiliser &man.uuencode.1; s'ils dépassent 20KO.
Après avoir rempli un rapport, vous devriez recevoir une
confirmation accompagnée d'un numéro de suivi.
Conservez ce numéro de suivi afin que vous puissiez nous
soumettre plus de détails au sujet du problème en
envoyant un courrier électronique à
FreeBSD-gnats-submit@FreeBSD.ORG .
Utilisez le numéro comme sujet du message, e.g. "Re:
kern/3377" . Toute information supplémentaire sur un
rapport de bogue devrait être soumise de cette
manière.
Si vous ne recevez aucune confirmation dans un temps
raisonnable (de 3 jours à une semaine, en fonction de votre
connexion pour le courrier électronique) ou qu'il vous est,
pour quelque raison que ce soit, impossible d'utiliser la
commande &man.send-pr.1;, vous pouvez demander à quelqu'un de le
faire pour vous en envoyant un courrier électronique à la
&a.bugs;.
Voir aussi cet
article sur comment écrire de bon rapports de
bogue.
Modifications de la documentation
soumissions concernant la
documentation
Les modifications de la documentation sont supervisées par
la &a.doc;. Veuillez consulter l'Introduction au Projet
de Documentation de FreeBSD pour des instructions
complètes. Envoyez les soumissions et les modifications
(même les plus petites sont les bienvenues!) en utilisant la
commande send-pr comme décrit dans Rapport de bogue et commentaires
généraux.
Modifications dans le code source existant
FreeBSD-CURRENT
Un ajout ou une modification du code source existant est une
toute autre affaire et dépend beaucoup de comment est à
jour votre version par rapport à l'état courant du
développement de FreeBSD. Il y a une version spéciale
de FreeBSD, connue sous le nom de “FreeBSD-CURRENT” qui
est disponible de diverses manières pour le confort des
développeurs qui travaillent activement sur le système.
Voir le Manuel
FreeBSD pour plus d'informations sur la manière
d'obtenir et d'utiliser FreeBSD-CURRENT.
Travailler sur des sources plus anciennes signifie que
malheureusement parfois vos modifications pourront être trop
obsolètes ou trop divergentes pour permettre une
réintégration aisée dans FreeBSD. On peut
limiter ce type de changements en souscrivant à la
&a.announce; et la &a.current;, où des
discussions sur l'état courant du système ont lieu.
En supposant que vous pouvez vous arranger pour avoir de
manière sure des sources à jour comme base pour vos
modifications, l'étape suivante est de produire un ensemble de
diffs à envoyer à ceux qui sont chargés de
maintenir FreeBSD.
Cela est fait à l'aide de la commande &man.diff.1;.
Le format &man.diff.1; préféré pour
soumettre des correctifs est le format unifié
généré par la commande
diff -u . Cependant, pour des correctifs qui
modifient sensiblement une partie du code, le format de contexte
généré par diff -c
peut s'avérer plus lisible et donc
préférable.
diff
Par exemple:
&prompt.user; diff -c oldfile newfile
ou
&prompt.user; diff -c -r olddir newdir
générera un ensemble de “context diffs”
pour un fichier source ou une hiérarchie de répertoires
donnés.
De même,
&prompt.user; diff -u oldfile newfile
ou
&prompt.user; diff -u -r olddir newdir
effectuera la même chose, mais dans le format unifié.
Voir la page de manuel de &man.diff.1; pour plus de
détails.
Une fois que vous avez un ensemble de diffs (que vous pouvez
tester avec la commande &man.patch.1;), vous devrez les
soumettre pour qu'ils puissent être inclus dans FreeBSD.
Utiliser le programme &man.send-pr.1; comme décrit dans
Rapport de bogue et commentaires
généraux. Ne pas simplement
envoyez les diffs à la &a.hackers; ou ils seront perdus!
Nous apprécions énormément votre soumission
(c'est un projet fait par des volontaires!), mais parce que nous sommes
très occupés, nous ne pourrons pas les étudier
immédiatement, mais cela restera dans la base de données
des PRs jusqu'à ce que nous le fassions. Identifiez
votre soumission en ajoutant [PATCH]
dans le synopsis du rapport.
uuencode
Si cela vous semble approprié (e.g. vous avez
ajouté, effacé ou renommé des fichiers),
archivez vos modifications dans un
fichier tar et lancez le programme
&man.uuencode.1; dessus. Les archives &man.shar.1;
sont aussi les bienvenues.
Si votre modification est de nature potentiellement
sensible, e.g. si vous n'êtes pas sûr des
problèmes de copyright concernant sa distribution ou que
vous n'êtes tout simplement pas prêt à le
distribuer sans relecture attentive, alors vous
devriez l'envoyer directement à la &a.core; plutôt
que de le soumettre avec &man.send-pr.1;. La liste de diffusion de
l'équipe de base atteint un plus petit groupe de personnes qui
réalise la plupart du travail quotidien de FreeBSD. Notez que
ce groupe est aussi très occupé
et donc que vous ne devriez leur envoyez de courrier
électronique que lorsque cela est vraiment
nécessaire.
Veuillez vous référer à &man.intro.9; et
&man.style.9; pour plus d'informations sur la manière de coder.
Nous apprécierons le fait que vous soyez au moins conscient de
ces problèmes avant de soumettre du code.
Nouveau code source ou logiciel à valeur ajoutée
importante
Dans le cas d'une contribution importante, ou l'addition
d'une importante fonctionnalité à FreeBSD, il devient
presque nécessaire d'envoyer les modifications soit sous la forme
d'archives tar uuencodées soit en les chargeant sur un site web
ou FTP. Si vous n'avez pas accès à un site web ou FTP,
demandez sur la liste de diffusion appropriée à ce que
quelqu'un héberge ces modifications pour vous.
Lorsque l'on travaille avec un grand volume de code, le
sujet sensible des copyrights revient invariablement. Les
copyrights acceptables pour le code inclus dans FreeBSD
sont:
copyright BSD
Le copyright BSD. Ce copyright est le plus
apprécié de par son côté
“sans attaches” et très
attractif pour les entreprises commerciales. Loin de
décourager un usage commercial, le projet FreeBSD
encourage activement une telle participation avec
intérêts commerciaux pour ceux qui pourraient
être tentés par la suite
d'investir quelque chose dans FreeBSD.
GPL Licence Publique Générale GNU
Licence Publique Générale GNU
La Licence Publique Générale GNU, ou
“GPL”. Cette licence n'est pas aussi populaire
chez nous à cause du volume d'efforts
supplémentaires demandés à celui qui
voudrait utiliser le code dans un but commercial, mais
étant donné la quantité de code GPL dont nous
avons actuellement besoin (compilateur, assembleur,
formateur de texte, etc...) il serait absurde de refuser
des contributions sous cette licence. Le code sous GPL va
également dans une partie différente de
l'arborescence, soit /sys/gnu
soit/usr/src/gnu , et est de ce fait
aisément identifiable par toute personne pour laquelle la
licence GPL poserait un problème.
Les contributions venant avec un autre type de copyright
doivent être soigneusement vérifiées avant que leur
intégration à FreeBSD ne soit prise en
considération. Les contributions pour lesquelles des
restrictions commerciales particulières s'appliquent sont
généralement rejetées, bien que
les auteurs sont toujours encouragés à rendre disponible
de telles modifications par leurs propres moyens.
Pour mettre un copyright de “style BSD” sur
votre travail, inclure le texte suivant au tout début de chaque
fichier de code source que vous voulez protéger, en
remplaçant le texte entre les %% par
l'information appropriée.
Copyright (c) %%proper_years_here%%
%%your_name_here%%, %%your_state%% %%your_zip%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
Pour votre convenance, une copie de ce texte peut être
trouvée dans
/usr/share/examples/etc/bsd-style-copyright .
Contribution financière, matérielle ou accès
Internet
Nous sommes toujours très heureux d'accepter des donations
pour poursuivre la cause du projet FreeBSD, et dans un effort
volontaire comme le notre, un rien peut faire du chemin! Les
donations de matériel sont également très
importantes pour augmenter notre liste de périphériques
supportés puisque nous manquons généralement de
fonds pour acheter de tels éléments
nous-mêmes.
-
- Donation de fonds
+
+ Donation de fonds
La Fondation FreeBSD est une fondation à but non lucratif
et exempte d'impôts fondée pour servir les objectifs
du projet FreeBSD. En tant qu'entitée 501(c)3, la Fondation
est généralement exempte de l'impôt
fédéral des Etats Unis comme de l'impôt de
l'état du Colorado. Les dons à une entitée
exempte d'impôts sont souvent déductibles de
l'impôt fédéral.
Les dons sous forme de chèques peuvent être
adressés à:
The FreeBSD Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
La Fondation FreeBSD est désormais en mesure d'accepter
les donations par l'intermédiaire du service web PayPal. Pour
faire un don, veuillez visiter le site web de la
Fondation.
Plus d'informations au sujet de la Fondation FreeBSD
peuvent être trouvés dans La
Fondation FreeBSD -- une introduction . Pour contacter
la Fondation par courrier électronique, écrire à
bod@FreeBSDFoundation.org .
Contribution en matériel
dons
Le projet FreeBSD accepte avec joie les donations de
matériel. Si vous êtes interessés pour nous faire un don de
matériel, contactez le Bureau de liaison des donations .
Contribution d'accès Internet
Nous pouvons toujours utiliser de nouveau sites miroirs
pour les site FTP, WWW ou cvsup . Si vous
voulez devenir un tel miroir, voyez le document devenir un site mirroir FreeBSD
pour plus d'informations.
diff --git a/fr_FR.ISO8859-1/books/faq/book.xml b/fr_FR.ISO8859-1/books/faq/book.xml
index 642dcf1afd..563e072457 100644
--- a/fr_FR.ISO8859-1/books/faq/book.xml
+++ b/fr_FR.ISO8859-1/books/faq/book.xml
@@ -1,7727 +1,7727 @@
]>
Questions Fréquemment Posées sur FreeBSD 2.X,
3.X et 4.X
Le projet de documentation FreeBSD
1995
1996
1997
1998
1999
2000
2001
2002
Le projet de documentation FreeBSD
&legalnotice;
$FreeBSD$
Ceci est la FAQ pour les versions de FreeBSD 2.X, 3.X et
4.X. Toutes les entrées sont relatives à FreeBSD
2.05 et les versions ultérieures.
La dernière version de ce document
est disponible en anglais à l'adresse suivante : FreeBSD World Wide Web
server . Ce document est également disponible
en un seul fichier HTML sur le
serveur HTTP du projet, ou en texte, PostScript, PDF, etc. sur
le serveur FTP de
FreeBSD . Vous pouvez aussi, chercher dans cette
FAQ .
N.d.T.: La version française est publiée sur le
serveur World Wide Web du groupe de
traduction en langue française de la documentation de
FreeBSD .
N.d.T.: Contactez la &a.fr-doc; si vous voulez
collaborer à ce projet.
&trans.a.gioria;
Première version de &a.fr.gioria; et
&a.fr.dntt;
Préface. **Mise à jour en cours**
Quel est le but de cette FAQ ?
Comme toutes les FAQ Usenet, ce document contient les
questions les plus fréquemment posées à propos du système
d'exploitation FreeBSD, ainsi que leurs réponses. Bien que
destinées, à l'origine, à réduire le trafic et éviter que
les mêmes questions soient posées encore et encore, les FAQ
sont maintenant reconnues comme de précieuses sources
d'information.
Tous les efforts ont été apportés pour rendre
cette FAQ la plus complète possible. Si vous avez des commentaires
la concernant ou
si vous voulez y contribuer, envoyez un e-mail au responsable de cette
FAQ .
FreeBSD c'est quoi ?
Pour résumer, FreeBSD 2.X est un système d'exploitation
UN*X basé sur la distribution 4.4BSD-lite de l'université de
Berkeley pour des plate-formes i386.
Il est aussi basé indirectement sur le
portage de William Jolitz de la distribution Net/2 de l'université de
Berkeley, plus connu sous le nom de 386BSD, mais très peu de code de
386BSD subsiste. Une description plus complète de ce qu'est
FreeBSD et à quoi il peut vous servir, peut être trouvée à la page d'accueil de
FreeBSD .
FreeBSD est utilisé par des sociétés commerciales,
fournisseurs d'accès à l'Internet, chercheurs, professionnels de
l'informatique, étudiants et particuliers à travers le monde entier
pour travailler, apprendre et se divertir. Reportez-vous à la galerie
FreeBSD pour vous faire une idée.
Pour plus de détails et d'informations sur FreeBSD,
référez vous au manuel de FreeBSD
Quels sont les buts de FreeBSD ?
L'objectif du projet FreeBSD est de fournir un logiciel qui
puisse être utilisé à n'importe quelle fin et sans aucun restriction.
Nombre d'entre nous sont impliqués de façon significative dans le
code (et dans le projet) et ne refuseraient certainement pas une
petite compensation financière de temps à autre, mais ce n'est
certainement pas dans nos intentions d'insister là dessus. Nous
croyons que notre première et principale “mission”
est de fournir du code à tout le monde, pour n'importe quel projet,
de façon à ce que l'il soit utilisé le plus possible et avec
le maximum d'avantages. C'est, nous le pensons, l'un des objectifs
les plus fondamentaux du Logiciel Libre et l'un de ceux que nous
soutenons avec enthousiasme.
Le code de l'arborescence des sources, qui est régi par la
Licence Publique GNU (“GNU Public
License” - GPL) ou
la Licence Publique GNU pour les Bibliothèques (“GNU Library
Public License” - GLPL) impose légèrement plus de
contraintes, bien que plutôt liées à une disponibilité plus grande
qu'au contraire, comme c'est généralement le cas. En raison des
complications supplémentaires qui peuvent résulter de l'utilisation
commerciale de logiciels GPL, nous essayons, cependant de remplacer
ces derniers par des logiciels soumis à la licence BSD qui est plus
souple, chaque fois que c'est possible.
Pourquoi le nom FreeBSD ?
Il peut être utilisé gratuitement, même pour un usage commercial.
L'intégralité des sources est disponible
gratuitement, et le moins de restrictions possible ont été placées sur
son utilisation, sa distribution et son incorporation dans d'autres travaux
(à des fins commerciales ou non).
N'importe quelle personne qui a une nouvelle fonctionnalité
et/ou une correction de bogue peut soumettre une portion de
code, qui pourra être inclus dans l'arbre de
développement (moyennant une ou deux conditions évidentes).
Pour ceux de nos lecteurs dont la langue maternelle n'est
pas l'anglais, il est important de rappeler que le mot "free"
est utilisé ici de deux manières, l'une signifiant "gratuitement"
et l'autre "vous pouvez faire ce que vous voulez".
Excepté une ou deux choses que vous ne pouvez
pas faire avec le code FreeBSD, par exemple prétendre que vous l'avez
développé, vous pouvez réellement faire ce que vous en voulez.
Quelle est la dernière version de FreeBSD ?
La version 3.1 est la dernière version stable ; elle a été mise en circulation en février 1999.
C'est aussi la dernière version
RELEASE .
En quelques mots, la branche-stable est destinée aux fournisseurs d'accès à
l'Internet et autres utilisateurs professionnels qui
recherchent un système stable ainsi que des changements mineurs lors de la
mise à jour de leur système en dernière version.
Qu'est-ce que FreeBSD-current ?
FreeBSD-current
est la version de développement du système d'exploitation, qui
deviendra en temps utile la version 4.0-RELEASE. Comme telle, cette version ne peut
intéresser que les développeurs du noyau ainsi que certains
passionnés. Voyez la section
appropriée du manuel
pour plus de détails sur l'utilisation de -current.
Si vous n'êtes pas familier avec ce système d'exploitation,
ou que vous n'êtes pas capable de différencier un problème temporaire
d'un problème critique, vous ne devez pas utiliser
FreeBSD-current. Cette branche évolue assez rapidement et peut ne pas
être compilée pendant un certain temps.
Les personnes utilisant
FreeBSD-current doivent être capables d'analyser n'importe quel
problème et de ne rapporter que les erreurs utiles.
Assez souvent, une version de
test est créée depuis la branche de développement -current et
occasionnellement une distribution sur CDROM est disponible. Les buts
de chaque version de test sont les suivants:
Tester la dernière version du programme d'installation.
Donner aux personnes voulant utiliser -current mais
n'ayant pas le temps ou la bande passante pour suivre jour après jour
les évolutions du système, une façon simple de faire
évoluer leur système.
Garder un point de synchronisation pour les sources
du système actuel, juste au cas ou nous casserions quelque chose
plus tard d'une façon irrécupérable (Bien sur, CVS nous empêche
normalement d'en arriver là :-).
Vérifier que toutes les nouvelles fonctionnalités nécessitant
des tests ont le nombre maximum de testeurs potentiels.
Aucune garantie ne peut être donnée sur le fait que les
versions de test puissent être considérées comme des versions "de
production". Pour des systèmes en production, vous devez attendre la
version finale.
Les versions de test sont directement téléchargeables
depuis ce
site et sont générées en moyenne une fois par jour pour les
branches 4.0-current et 3.0-stable.
Quel est le concept de la branche FreeBSD-stable ?
Revenons un peu en arrière, lorsque la version 2.0.5 de
FreeBSD fut livrée, nous avons décidé de scinder le développement en
deux branches. Une nommée -stable ,
où nous avons décidé de n'inclure que les correctifs testés et
contenant quelques ajouts de fonctionnalités (pour les fournisseurs
d'accès ou les sociétés à vocation commerciale où les fonctionnalités
expérimentales sont plus qu'indésirables). L'autre nommée
-current
qui nous emmènera jusqu'à la version 4.0-RELEASE (et audelà) depuis la livraison 2.0. Un dessin
ASCII qui vous montre à quoi ressemble l'arbre de développement :
L'arbre de développement
2.0
|
|
| [2.1-stable]
*Nouvelle BRANCHE* 2.0.5 -> 2.1 -> 2.1.5 -> 2.1.6 -> 2.1.7.1 [fin de la branche 2.1-stable]
| (Mars 1997)
|
|
| [2.2-stable]
*Nouvelle BRANCHE* 2.2.1 -> 2.2.2-RELEASE -> 2.2.5 -> 2.2.6 -> 2.2.7 -> 2.2.8 [fin]
|(Mars 1997) (Octobre 97) (Avril 98) (Juillet 98) (Décembre 1998)
|
|
3.0-SNAPs (Debut 1er trimestre 1997)
|
|
3.0.0-RELEASE (Octobre 1998)
|
| [3.0-stable]
*Nouvelle BRANCHE* 3.1 (Feb 1999) -> ... future 3.x releases ...
|
|
\|/
+
[4.0-current continues]
La branche -current progresse lentement vers la version 4.0 et au-delà,
la branche 2.2-stable étant terminée avec la version 2.2.8.
La branche 3.0-stable l'a maintenant remplacée, la prochaine version arrivant avec la 3.1 au début 1999 .
La version 4.0-current est maintenant la "branche
courante" avec les premières versions 4.0 apparaissant au premier trimestre 2000.
Quand sont livrées les versions de FreeBSD ?
Les nouvelles versions de FreeBSD sont livrées quand
l'équipe principale de FreeBSD décide qu'il y a suffisamment de
nouveautés et/ou de correctifs pour justifier d'une version, et
lorsqu'ils sont satisfaits des modifications apportées et qu'elles ne
compromettent pas la stabilité de la version. Beaucoup d'utilisateurs
pensent que cela fait partie des meilleures choses de FreeBSD, même si
cela peut être un peu frustrant d'attendre que les derniers ajouts
soient disponibles.
Les versions sont livrées à peu près tous les 4 mois en moyenne.
Pour les personnes qui ont besoin (ou veulent) d'un peu
plus de risques, il y a les versions SNAP qui sont livrées un peu plus
souvent (à peu près tous les mois).
Sur quelles plate-formes, autre que les PC, est disponible FreeBSD ?
Actuellement FreeBSD 3.x tourne sur une plate-forme DEC Alpha aussi bien que sur les architecture x86. Un intérêt a été exprimé pour un portage sur UltraSPARC
mais les détails de ce projet ne sont pas encore clairs.
Si vous disposez d'une autre architecture, nous vous
conseillons d'aller voir aux URLs suivantes:
NetBSD
OpenBSD
Qui sont les responsables de FreeBSD ?
Les décisions concernant le projet FreeBSD, comme les
directions que vont prendre le projet ainsi que les personnes
autorisées à ajouter du code dans le noyau, sont fixées par l'équipe principale ,
composée d'environ 15 personnes. Il y a une équipe un peu plus large
d'environ 150
personnes qui ont le droit d'effectuer des changements dans le
code.
Bien sûr, la plupart des changements sont discutés au
préalable dans les listes de messagerie, et il n'y a aucune restriction
sur qui peut prendre part à la discussion.
Où peut-on trouver FreeBSD ?
Toutes les versions sont disponibles via un ftp anonyme
sur le site ftp de
FreeBSD
Pour la version 2.2-stable, 2.2.8R, voir le répertoire
2.2.8-RELEASE .
Pour la version 3.0-stable, 3.0-RELEASE, voir le
répertoire 3.0-RELEASE .
Les versions de tests 2.2
sont compilées une fois par jour tout au long de la vie de la branche
RELENG_2_2 (post 2.2.8). Sauf gros incident, la branche RELENG_2_2
est maintenue avec extrêmement d'attention (pas de changements
expérimentaux, correctifs ajoutés après test dans la branche -current
uniquement).
Les versions de test 3.0 sont
compilées une fois par jour depuis la branche RELENG_3 (post 3.0-release)jusqu'à la 3.1-RELEASE.
Les versions de test 4.0 sont
compilées une fois par jour depuis la branche -current, ce service
étant juste là pour les personnes voulant la tester, ou les
développeurs.
FreeBSD est aussi disponible par CDROM chez :
En France
Le Monde en Tique
6 rue du Maître Albert
75005 PARIS
FRANCE
Téléphone :01 55 42 73 73
Télécopie :01 55 42 73 74
WWW:Serveur WWW du Monde en Tique
Ouverture : Du lundi au samedi, de 9h30 à 19h30 sans interruption
Métro : Ligne 10 : Station Maubert - Mutualité
Rer B : Cluny - La Sorbonne, Sortie : Boulevard Saint-Michel - Boulevard Saint-Germain
Rer C : Saint Michel - Notre Dame, Sortie : Notre-Dame
Infothèque
32, rue de Moscou
75008 Paris
Téléphone:01 45 22 67 01
Télécopie:01 42 93 73 83
WWW: Serveur WWW de infotheque
Aux USA
Walnut Creek CDROM
4041 Pike Lane, Suite F
Concord, CA 94520 USA
Commandes: +1 800 786-9907
Questions: +1 925 674-0783
FAX: +1 925 674-0821
email: Commandes Walnut Creek
WWW: Serveur WWW de Walnut Creek
En Australie chez :
Advanced Multimedia Distributors
Factory 1/1 Ovata Drive
Tullamarine, Melbourne
Victoria
Australia
Tel: +61 3 9338 6777
CDROM Support BBS
17 Irvine St
Peppermint Grove WA 6011
Tel: +61 9 385-3793
Fax: +61 9 385-2360
En Angleterre :
The Public Domain & Shareware Library
Winscombe House, Beacon Rd
Crowborough
Sussex. TN6 1UL
Tel: +44 1892 663-298
Fax: +44 1892 667-473
Où trouver de l'information sur les listes de messagerie ?
Vous trouverez ces informations dans la section sur les listes de diffusion du manuel
Quels sont les forums de discussion disponibles sur FreeBSD ?
Tous les forums sont listés dans la section sur les forums de
discussion du manuel
Existe-t-il des canaux IRC(Internet Relay Chat) sur FreeBSD ?
Oui, la plupart des réseaux IRC comportent un canal FreeBSD.
Le canal #FreeBSD sur EFNET est sûrement le plus populaire et est disponible sur irc.chat.org .
Le canal #FreeBSD sur DALNET est disponible sur irc.dal.net pour les US et sur irc.eu.dal.net pour l'Europe.
Le canal #FreeBSD sur UNDERNET est disponible sur us.undernet.org pour les US et sur eu.undernet.org pour l'Europe.
Enfin vous pouvez rejoindre #FreeBSD sur BSDNET, un petit serveur de chat BSD sur irc.FreeBSD.org
Tous ces canaux sont distincts et ne sont pas
interconnectés entre eux. Les discussions sur chaque canal diffèrent,
donc essayez-les tous avant de trouver celui qui vous convient.
Quels sont les livres parlant de FreeBSD ?
Le livre de Greg Lehey's stalling and Running
FreeBSD
est disponible chez Walnut Creek CDROM et comprend le CDROM
de la version 2.2.8. Il y a aussi un livre plus important nommé The
Complete FreeBSD
qui est lui livré avec certaines pages de manuel et
qui inclut aussi les CDROMs de la version 2.2.8. Ils devraient aussi
etre disponibles dans toutes les bonnes librairies.
Il existe aussi un projet se nommant "FreeBSD
Documentation Project", que vous pouvez contacter (ou mieux, joindre)
sur la liste de diffusion doc
<freebsd-doc@FreeBSD.ORG> .
Cette liste a pour but de discuter sur la documentation de FreeBSD.
Les questions plus générales sur FreeBSD sont à poser dans la "mailing
list" <freebsd-questions@FreeBSD.ORG> .
Un ``manuel'' sur FreeBSD est
disponible. Sachez, pour information, que ce manuel est en perpétuelle
évolution, et que certaines parties peuvent être incomplètes.
Comme FreeBSD 2.2.X est basé sur la version 4.4.BSD-lite2,
la plupart des manuels relatifs à 4.4BSD peuvent s'appliquer à
FreeBSD. Des versions imprimées sont disponibles chez O'Reilly:
4.4BSD System Manager's Manual By Computer Systems Research Group, UC
Berkeley 1st Edition June 1994, 804 pages ISBN 1-56592-080-5
4.4BSD User's Reference Manual By Computer Systems Research Group, UC
Berkeley 1st Edition June 1994, 905 pages ISBN 1-56592-075-9
4.4BSD User's Supplementary Documents By Computer Systems Research
Group, UC Berkeley 1st Edition July 1994, 712 pages ISBN 1-56592-076-7
4.4BSD Programmer's Reference Manual By Computer Systems Research
Group, UC Berkeley 1st Edition June 1994, 886 pages ISBN 1-56592-078-3
4.4BSD Programmer's Supplementary Documents By Computer Systems
Research Group, UC Berkeley 1st Edition July 1994, 596 pages ISBN 1-56592-079-1
Une courte description de ces livres est disponible via
WWW à l'adresse suivante : http://gnn.com/gnn/bus/ora/category/bsd.html .
Vu le peu de ventes, ces livres sont relativement difficiles a trouver.
Pour plus d'informations sur le noyau 4.4BSD vous pouvez vous
reporter au livre suivant :
McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, and John Quarterman.
The Design and Implementation of the 4.4BSD Operating System .
Reading, Mass. : Addison-Wesley, 1996.
ISBN 0-201-54979-4
Un bon livre sur l'administration système:
Evi Nemeth, Garth Snyder, Scott Seebass & Trent R. Hein,
``Unix System Administration Handbook'', Prentice-Hall, 1995
ISBN 0-13-151051-7
Attention à bien acheter la deuxième édition,
version avec la couverture rouge, et non pas la première.
Ce livre couvre les bases de l'administration système
aussi bien que TCP/IP, le DNS, NFS, SLIP/PPP, sendmail, INN/NNTP,
l'impression, etc... Il est assez onéreux (environ 300-350 FF) mais
est indispensable. Il comprend en plus un CDROM contenant énormément
d'outils, dont la plupart sont inclus sur les CDROM de FreeBSD.
Comment accèder à la base de données des problèmes ?
La base de données des problèmes est accessible (pour
soumission ou interrogation) en utilisant votre navigateur WWW pour la soumission
ou pour
l'interrogation . La commande send-pr(1)
peut aussi être utilisée pour soumettre des problèmes et des
modifications par courrier électronique.
Où peut-on trouver des versions ASCII/PostScript de cette FAQ ?
La dernière version de cette FAQ est disponible sur le serveur
WWW de FreeBSD ou sur tout serveur miroir en PostScript ou texte (ASCII 7 bits et Latin1 8 bits).
Le PostScript (environ 370Ko) :http://www.freebsd-fr.org/FAQ/FAQ.ps
En format texte ISO 8859-1 (environ 220Ko): http://www.freebsd-fr.org/FAQ/FAQ.txt
Où peut-on trouver des versions ASCII/PostScript du manuel ?
La dernière version du manuel est disponible sur le serveur
WWW de FreeBSD ou sur tout serveur miroir en PostScript ou texte (ASCII 7 bits et Latin1 8 bits).
Le PostScript (environ 1.7Mo) :http://www.freebsd-fr.org/handbook/handbook.ps
En format texte ISO 8859-1 (environ : 1.1Mo) :http://www.freebsd-fr.org/handbook/handbook.txt
La version ASCII du manuel ne contient pas que du texte !
C'est vrai. Les versions ASCII et Latin1 de la FAQ et du
manuel ne contiennent pas que du texte. Elles
contiennent des soulignés et d'autres codes qui supposent que
l'impression sera faite sur une imprimante matricielle. Si vous avez
besoin de reformater ces fichiers sous une forme plus lisible, lancez
la commande col sur le fichier :
$ col -b < fichierOrigine > fichierSortie
Je voudrais devenir un miroir WWW de FreeBSD !
Bien sûr ! Différents moyens permettent de synchroniser les pages WWW.
En utilisant CVSUP: vous pouvez retrouver les pages
formatées en HTML en utilisant CVSUP depuis cvsup.freebsd.org. Ajoutez
simplement cette ligne à votre fichier cvsup:
www release=current hostname=/home base=/usr/local/etc/cvsup
prefix=/usr/local/www/data/www.freebsd.org delete old use-rel-suffix
En utilisant rsync: voir la page sur les
miroirs pour les informations.
En utilisant un miroir ftp: vous pouvez télécharger
la copie sur serveur WWW se trouvant sur le serveur ftp. Les fichiers
se trouvent à ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/www
.
Je veux traduire la documentation en Javanais
On ne peut pas vous payer, mais on peut s'arranger pour
vous envoyer un CDROM gratuit ou un T-shirt et une entrée dans la
liste des contributeurs du Handbook si vous nous soumettez une
traduction de la documentation.
Autres sources d'informations.
Les forums de discussion suivants se rapportent à FreeBSD
fr.comp.os.bsd (en francais)
comp.unix.bsd.freebsd.announce (en anglais - modéré)
comp.unix.bsd.freebsd.misc (en anglais)
comp.unix.bsd.misc (en anglais)
Ressources WWW:
La page
principale de FreeBSD
La page
principale de fr.FreeBSD
Si vous possédez un portable, vous devez visiter la
page de Tatsumi Hosokawa's
Mobile Computing au Japon
Pour plus d'informations sur SMP (Symmetric
MultiProcessing) voyez la page du support
SMP
Pour plus d'informations sur les applications multimedia FreeBSD
, voyez la page
multimédia . Si vous vous intéressez plus spécialement à la capture vidéo Bt848
suivez ce
lien .
Le manuel de FreeBSD contient une section bibliographie plus
importante, si vous recherchez d'autres livres ou informations.
Installation. **Mise à jour en cours**
Quels fichiers télécharger pour installer FreeBSD ?
Vous n'avez généralement besoin que d'une image-disque, le
fichier floppies/boot.flp , que vous copiez sur
une disquette 1.44 Mo et qui permet de démarrer pour
pouvoir télécharger le reste (l'installation prend en
charge votre connexion TCP/IP, votre lecteur de bandes, CDROM, disquettes, partitions DOS, tout ce
est nécessaire pour le reste de l'installation).
Si vous avez besoin de télécharger la distribution par
vous même (pour une installation depuis une partition DOS par
exemple), voici quels sont les fichiers à récupérer:
Tout le répertoire bin
Tout le répertoire manpages
Tout le répertoire compat
Tout le répertoire doc
Tous les fichiers src/ssys.*
Vous trouverez les instructions complètes pour cette procédure et un peu
plus au sujet de l'installation en général dans la section
installation de FreeBSD du manuel.
A l'aide ! L'image-disque de démarrage ne tient pas sur une seule disquette !
Une disquette 3,5 pouces (1.44 Mo) peut contenir jusqu'à
1474560 octets de données. La taille du fichier image est exactement
1474560 octets.
Les erreurs courantes concernant la création de la
disquette de démarrage sont les suivantes :
Vous n'avez pas téléchargé l'image-disque en mode
binary en utilisant FTP
Certains clients FTP mettent par défaut le transfert en mode
ASCII , et essayent de changer le
caractère de fin de ligne reçu pour correspondre aux conventions utilisées
par le système client. Cela altère presque inévitablement le fichier
image. Vérifiez la taille du fichier image téléchargé: si elle n'est pas
exactement la même que sur le
serveur, alors le processus de téléchargement est suspect.
Une solution simple : tapez binary à l'invite FTP,
après la connexion sur le serveur et avant le démarrage du
téléchargement de l'image.
Vous avez utilisé la commande DOS
copy (ou une commande équivalente) pour transférer
l'image de démarrage sur la disquette.
Les programmes comme copy ne
fonctionnent pas correctement avec les images, car ils ne
peuvent créer une disquette de démarrage. L'image est le contenu exact de la disquette,
piste à piste, et ne peut être
copiée sur la disquette comme un fichier normal. Vous devez la transférer sur la
disquette en mode brut {raw} en utilisant les outils de bas niveau {low-level} fdimage
ou rawrite . Ces outils sont décrits dans la section installation de FreeBSD du manuel.
Où sont les instructions pour installer FreeBSD ?
Les instructions d'installation de FreeBSD se
trouvent dans la section
installation de FreeBSD du manuel.
De quoi ai-je besoin pour faire tourner FreeBSD ?
Vous avez besoin d'un PC 386 ou mieux, avec 5Mo ou plus de mémoire vive (RAM)
et au moins 60Mo de disque dur. Il suffit d'une carte graphique MDA,
mais pour utiliser X11R6, une carte video VGA ou mieux est nécessaire.
Voir aussi la section
compatibilité matérielle .
Je n'ai que 4Mo de mémoire vive. Puis-je installer FreeBSD ?
FreeBSD 2.1.7 est la dernière version de FreeBSD que l'on
peut installer sur des systèmes avec 4Mo de mémoire
vive. Les nouvelles versions de FreeBSD, comme la version 2.2, ont
besoin d'au moins 5Mo de mémoire vive pour être installées sur un nouveau système.
Toutes les versions de FreeBSD, y compris la version 3.0,
peuvent fonctionner avec 4Mo de mémoire
vive, mais ne peuvent pas exécuter le programme d'installation en 4Mo.
Vous pouvez ajouter de la mémoire vive supplémentaire pour le processus
d'installation, si vous voulez, et quand le système
fonctionne, revenir à 4Mo. Ou vous pouvez placer votre disque sur un système
disposant de plus de 4Mo, effectuer l'installation et l'échanger à nouveau.
Il y a malgré tout des situations dans lesquelles
FreeBSD 2.1.7 ne peut s'installer avec 4Mo. Pour être exact : cette
version de n'installe pas avec 640Ko de mémoire de base et 3Mo de
mémoire étendue. Si votre carte mère peut
réallouer quelques blocs mémoire perdue
hors de la région entre 640Ko et 1Mo alors vous pourrez installer FreeBSD
2.1.7
Regardez dans la configuration de votre BIOS
si vous disposez d'un option remap
. Si oui, activez la. Vous devez
aussi désactiver la copie miroir de la mémoire ROM.
Il est plus simple d'augmenter la mémoire vive à plus de
4Mo pour l'installation, construire un noyau contenant juste les options dont vous avez
besoin, puis revenir à une configuration avec 4Mo.
Vous pouvez dans le pire des cas, installer la version
2.0.5 et effectuer une mise à jour de votre système en version
2.1.7 avec l'option upgrade du programme d'installation de la 2.1.7.
Après l'installation, si vous construisez un noyau sur mesure,
cela tournera sans problème avc 4Mo. Certaines personnes
ont même réussi a démarrer sur un système disposant de 2Mo de mémoire
vive (bien sûr le système fut complétement inutilisable :-)).
Comment créer ma propre disquette d'installation ?
Actuellement il n'y a pas de solution pour créer *juste*
une disquette d'installation personnalisée. Vous devez créer une
distribution complète, qui contiendra votre disquette
d'installation. Le code se trouvant dans
/usr/src/release/floppies/Makefile peut
laisser supposer que vous pouvez créer votre disquette,
mais ce n'est pas le cas actuellement.
Pour créer votre propre version, suivez les instructions
se trouvant là .
Puis-je avoir plus d'un système d'exploitation sur mon PC ?
Voyez la page du tutoriel sur la cohabitation de plusieurs systèmes d'exploitation .
Est-ce que Windows 95 peut coexister avec FreeBSD ?
Installez en premier Windows 95, puis FreeBSD. Le
gestionnaire de démarrage de FreeBSD, vous permet de démarrer
indifféremment sous Windows 95 ou FreeBSD. Si vous installez Windows 95 en second,
il surchargera votre gestionnaire de démarrage sans même
poser une question. Si cela arrive, voir la section suivante.
Windows 95 a effacé mon gestionnaire de démarrage ! Comment le récupérer ?
Vous pouvez ré-installer le gestionnaire de démarrage de
FreeBSD de deux manières :
Sous DOS, allez dans le répertoire
tools de votre distribution FreeBSD et
cherchez un programme bootinst.exe . Il
vous l'exécutez ainsi:
c:\tools>bootinst.exe boot.bin
et le gestionnaire de démarrage sera
ré-installé
Démarrez à nouveau sous FreeBSD avec la disquette
de démarrage et allez dans le menu Custom installation .
Choisissez Partition Sélectionnez le disque devant contenir
le gestionnaire de démarrage (probablement le premier) et
quand vous arrivez dans l'éditeur de partition, la première chose à faire
(c'est à dire n'effectuer aucun changement) sélectionnez (W)rite . Vous serez
interrogé pour confirmation, répondez yes , et quand vous obtenez
le menu de sélection du gestionnaire de
démarrage, assurez vous de bien sélectionner Boot manager . Cela
re-écrit le gestionnaire de démarrage sur le disque. Ensuite
quittez le programme d'installation et redémarrez à partir du disque dur normalement.
Peut-on installer FreeBSD sur un disque comportant des secteurs défectueux ?
La gestion des secteurs défectueux (voir la commande bad144 ) de
FreeBSD n'est pas fiable à 100% ; il serait plus juste de dire
que si vous disposez d'un disque IDE ou ESDI avec énormement de bad
blocks , alors FreeBSD n'est pas
pour vous ! En fait FreeBSD tourne sur des centaines de systèmes à base de disques IDE, il vaut
mieux essayer avant de vous décourager.
Si vous avez un disque SCSI comportant des secteurs défectueux,
voyez cette réponse
Il se passe des choses étranges lorsque je démarre depuis la disquette d'installation !
Si vous détectez des choses comme : un blocage de la
machine, un redémarrage inopiné de votre système avec la disquette
d'installation, posez vous les 3 questions suivantes :
Avez-vous utilisé une disquette neuve, sans erreurs
(préférez une disquette sortie de la boîte plutôt qu'une disquette provenant
du dernier magazine oublié sous votre lit depuis trois ans) ?
Avez vous téléchargé l'image en mode binaire (ne
vous offusquez pas, même les meilleurs d'entre nous,
ont téléchargé des fichiers en mode ASCII au moins une fois) ?
Si vous utilisez des systèmes d'exploitation récents
comme Windows 95 ou Windows NT, avez vous arrété le système et
redémarré en DOS simple et honnête ? Il semble que ces systèmes peuvent interférer
avec des programmes
qui écrivent directement sur le matériel, comme c'est le cas des programmes de
création de disquette ; même en l'exécutant dans une fenêtre DOS
de windows cela peut causer ces problèmes.
Certaines informations mentionnant que Netscape
pose des problèmes en téléchargeant l'image de la disquette de
démarrage, donc utilisez un client FTP différent si vous
pouvez.
Je n'arrive pas à installer à partir de la bande
Si vous installez la version 2.1.7R à partir d'une
bande, vous devez créer la bande en utilisant un facteur de blocage de
10 (5120 octets). Le facteur de blocage par défaut de tar est 20 (10240
octets), et les bandes crées en utilisant cette valeur par défaut
ne peuvent pas être utilisées pour installer la
version 2.1.7R ; avec ce type de bande vous obtiendrez une erreur disant
que la taille des enregistrements est trop grande.
Connecter deux systèmes FreeBSD par les ports parallèle (PLIP)
Trouvez un câble "laplink". Vérifiez que les deux ordinateurs
ont un noyau avec le support de pilote lpt .
$ dmesg | grep lp
lpt0 at 0x378-0x37f irq 7 on isa
lpt0: Interrupt-driven port
lp0: TCP/IP capable interface
Installez le câble "laplink" sur les ports parallèlle.
Configurez les paramètres de l'interface réseau pour
lp0 des deux côtés en tant que root .
Par exemple, si vous voulez connecter l'ordinateur max avec moritz :
max <-----> moritz
IP Address 10.0.0.1 10.0.0.2
sur max, démarrez :
# ifconfig lp0 10.0.0.1 10.0.0.2
sur moritz, démarrez :
# ifconfig lp0 10.0.0.2 10.0.0.1
C'est tout ! Lisez aussi les manpages
lp 4 and
lpt 4 .
Vous devez aussi ajouter les deux adresse dans /etc/hosts :
127.0.0.1 localhost.my.domain localhost
10.0.0.1 max.my.domain max
10.0.0.2 moritz.my.domain moritz
Pour vérifier le bon fonctionnement faire :
sur max :
$ ifconfig lp0
lp0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 10.0.0.1 --> 10.0.0.2 netmask 0xff000000
$ netstat -r
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
moritz max UH 4 127592 lp0
$ ping -c 4 moritz
PING moritz (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.774 ms
64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.530 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.556 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=255 time=2.714 ms
--- moritz ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms
Peut-on effectuer une installation par le port parallèle (PLIP)
Connectez les deux ordinateurs avec un cable parallèle "Laplink"
Cable parallèle
+----------------------------------------+
|A-name A-End B-End Descr. Port/Bit |
+----------------------------------------+
|DATA0 2 15 Data 0/0x01 |
|-ERROR 15 2 1/0x08 |
+----------------------------------------+
|DATA1 3 13 Data 0/0x02 |
|+SLCT 13 3 1/0x10 |
+----------------------------------------+
|DATA2 4 12 Data 0/0x04 |
|+PE 12 4 1/0x20 |
+----------------------------------------+
|DATA3 5 10 Strobe 0/0x08 |
|-ACK 10 5 1/0x40 |
+----------------------------------------+
|DATA4 6 11 Data 0/0x10 |
|BUSY 11 6 1/0x80 |
+----------------------------------------+
|GND 18-25 18-25 GND - |
+----------------------------------------+
Voir aussi cette note sur la page de FreeBSD pour les portables
Quelle géométrie dois-je utiliser pour un disque ?
(Par le mot "géométrie" d'un disque, nous pensons aux
nombres de cylindres, têtes et secteurs par pistes sur un disque - Nous
dirons par la suite C/H/S. C'est de cette façon que le BIOS des PC
arrive à écrire ou lire une zone du disque).
Cela peut préter à confusion pour différentes raisons.
Premièrement, la géométrie physique d'un disque
SCSI ne veut rien dire, de la façon dont FreeBSD utilise les blocs
disques. En fait, on ne peut parler de la
géométrie physique,
la densité des secteurs variant sur le disque -ce que les
fabricants appellent la vraie
géométrie physique, c'est la géométrie
qu'ils ont détérminé, pour avoir le moins d'espace perdu.
Pour les disques IDE, FreeBSD voit en terme de C/H/S, mais tous les
disques récents convertissent cela en blocs eux-mêmes.
Tout cela est, en fait, la géométrie logique
la réponse que le BIOS reçoit lorsqu'il demande quelle
est votre géométrie ?
et qu'il utilise pour accéder au disque. Comme
FreeBSD utilise le BIOS pour démarrer, il est très important qu'elle
soit juste. En particulier, si vous avez plus d'un système
d'exploitation sur votre disque, ils doivent être d'accord
sur la géométrie, sinon vous rencontrerez de graves problèmes
au démarrage du système.
Pour les disques SCSI, la géométrie à utiliser dépend
du support de translation étendu activé sur votre contrôleur
(ou encore appelé support pour les disques DOS >1Go
ou
similaire). S'il n'est pas activé, utilisez N cylindres, 64
têtes et 32 secteurs par pistes, ou 'N' est la capacité du disque en
Mo. Par exemple, pour un disque de 2Go vous devez utiliser 2048
cylindres, 64 têtes et 32 secteurs par piste.
Si cette option est active (c'est le cas la plupart du temps
pour permettre de passer outre certaines limitations de MSDOS) et que
le disque a une capacité de plus de 1Go, utilisez M cylindres, 63 têtes
(et *pas* 64), et 255 secteurs par piste, où M correspond à la capacité
en Mo divisé par 7.844238 (!). Donc, en prenant un disque de 2Go nous
obtenons 261 cylindres, 63 têtes et 255 secteurs par piste.
Si vous n'êtes pas sûr de point, ou si
FreeBSD n'arrive pas à détecter la géométrie correctement au moment de
l'installation, la façon la plus simple de faire, est de créer
une petite partition DOS sur le disque. La géométrie correcte sera alors
détectée (et vous pourrez toujours retirer la partition DOS dans
l'éditeur de partitions si vous ne voulez pas la garder ou conservez la
pour la programmation de cartes réseau).
Une autre solution est d'utiliser un outil disponible librement distribué avec
FreeBSD appelé pfdisk.exe (il se trouve dans
le répertoire tools du CDROM de FreeBSD ou sur
les sites ftp), qui permet de voir quelle géométrie utilisent les
autres systèmes sur ce disque. Vous pourrrez ensuite
entrer cette géométrie dans l'éditeur de partitions.
Y a-t-il des restrictions sur la façon de partitionner le disque ?
Oui. Vous devez vous assurer que la partition
/
{root}
se trouve dans les 1024 premiers cylindres,
pour permettre au BIOS de trouver le noyau. (Notez que c'est une
limitation dûe au BIOS des PC et non pas à FreeBSD).
Dans le cas d'une disque SCSI, cela implique que la
partition /
{root}
soit dans les 1024 premiers Mo (ou
dans les 4096 premiers si la translation est en place - voir la
question précédente). Pour un disque IDE, il faut qu'elle se trouve
dans les 504 premiers Mo.
A propos des gestionnaires de disque ? Ou bien, j'ai un disque de grande capacité !
FreeBSD reconnait le gestionnaire "Ontrack Disk Manager" et le tolère.
Les autres gestionnaires de disque ne sont pas supportés.
Si vous voulez utiliser le disque uniquement avec FreeBSD,
vous n'avez pas besoin de gestionnaire de disque. Configurez
simplement le disque pour utiliser le maximum de place reconnue par le
BIOS (la plupart du temps 504Mo), et FreeBSD trouvera de lui même la
capacité de votre disque. Si vous utilisez un vieux disque avec
un controlleur MFM, vous devrez donner explicitement à FreeBSD le
nombre de cylindres à utiliser.
Si vous voulez utiliser le disque avec FreeBSD et un autre
système d'exploitation, vous n'aurez pas besoin d'un gestionnaire de
disque: assurez vous que la partition de démarrage de FreeBSD et
les tranches pour les autres systèmes d'exploitation se trouvent dans
les 1024 premiers cylindres. Si vous êtes prudent, une partition de démarrage de 20Mo doit
suffire.
Lors du démarrage de FreeBSD j'obtiens "Missing Operating System"
C'est le symptôme classique où FreeBSD et DOS, ou un autre
système d'exploitation, sont en conflit à propos de la géométrie du disque. Vous devez alors
réinstaller FreeBSD, en faisant attention à toutes les informations
qui vous sont présentées.
Je ne peux pas aller plus loin que le message `F?' du gestionnaire de démarrage.
Ceci est un autre symptôme du problème décrit à la
question précédente. La géométrie trouvée par le BIOS et celle de
FreeBSD ne sont pas les mêmes. Si votre contrôleur ou votre
BIOS supporte la translation de cylindres (souvent indiquée comme "Support des disques >1Go"),
essayez de changer les
paramètres et réinstallez FreeBSD.
Je dispose de plus de 16Mo de RAM. Est-ce que cela peut poser un problème ?
Mis à part les problèmes de performances, non. FreeBSD 2.X
inclus des bounce buffers
permettant à votre bus principal d'accéder
à plus de 16Mo de mémoire. (Notez que cela n'est vrai que pour les
périphériques ISA, et quelques périphériques EISA
ou VLB).
Voyez aussi la section parlant des ordinateurs
plus de 64Mo de RAM , si vous avez autant de mémoire, ou si vous
utilisez un ordinateur Compaq ou un autre BIOS qui donne de mauvaises
informations sur la mémoire disponible.
Dois-je installer tous les sources ?
La plupart du temps, non. Malgré tout, nous vous
conseillons fortement d'installer, au minimum, les sources de
base (sbase ) ainsi que les sources du noyau
(ssys ). Il n'y a rien dans le système qui
nécessite la présence des sources, sauf si vous désirez reconfigurer
le noyau du système. A l'exception du noyau, notre structure de
compilation est faite pour vous permettre de visualiser les sources
(même en lecture seule) et de construire alors de nouveaux
binaires. (En raison de la restriction des sources du noyau, nous vous
recommandons de monter les sources ailleurs que dans
/usr/src en créeant les liens symboliques
appropriés permettant de dupliquer la structure complète des
sources).
En ayant les sources à votre disposition et en sachant
comment l'on construit un système avec, cela permettra d'avoir une façon
très simple pour mettre à jour votre système vers les prochaines
versions de FreeBSD.
Pour n'installer qu'une partie des sources, utilisez le menu
Custom quand vous êtes dans le menu
Distributions du programme d'installation. Le script
src/install.sh peut installer aussi certains éléments des
sources, en fonction des arguments que vous lui passez.
Suis-je obligé de construire un nouveau noyau ?
Construire un nouveau noyau, était encore, il y a quelque
temps, une étape à peu près obligatoire après l'installation de FreeBSD, mais les
nouvelles versions ont bénéficié d'un utilitaire de configuration du
noyau plus sympathique. Au démarrage de FreeBSD et après l'invite de démarrage
(boot: ) utilisez le paramètre -c et vous aurez alors accès au
menu de configuration visuel, qui vous permet de configurer les
paramètres de la plupart des cartes ISA.
Il est encore recommandé construire un nouveau noyau
contenant juste les pilotes dont avez besoin, seulement pour
économiser un peu de RAM, mais ce n'est plus une exigence stricte pour la
plupart des systèmes.
Je réside en dehors des Etats-Unis. Puis-je utiliser le DES ?
Si la méthode de cryptage DES ne vous est pas absolument nécessaire, alors vous
pouvez utiliser le système de cryptage fourni par défaut avec FreeBSD
et qui vous apporte une bien meilleure sécurité, sans aucune
restriction d'exportation. Le cryptage des mots de passe par défaut de FreeBSD 2.0 est
maintenant basé sur MD5 , qui est plus difficile à casser que DES , avec un
outil automatisé en raison de sa forte demande en temps de calcul, et qui
permet aussi d'utiliser des mots de passe plus longs. La seule raison
pour laquelle vous ne pouvez pas utiliser le cryptage basé sur
MD5 est, si vous désirez utiliser la
même entrée du fichier des mots de passe sur des systèmes FreeBSD et
non-FreeBSD.
Comme l'algorithme de cryptage DES ne peut pas être
légalement exporté en dehors des Etats-Unis, tout utilisateur non
américain ne doit pas télécharger les logiciels l'incluant (se
trouvant dans le répertoire sec des sites FTP
américains)
Il y a cependant une librairie de remplacement disponible,
libcrypt, basée sur des sources écrit en Australie par David Burren.
Le code est maintenant disponible sur certains sites ftp miroirs en
dehors des Etats-Unis. Les sources, ainsi que les binaires des
programmes l'utilisant peuvent être téléchargés sur les sites ftp
suivants:
Afrique du Sud:
ftp://ftp.internat.freebsd.org/pub/FreeBSD
ftp://storm.sea.uct.ac.za/pub/FreeBSD
Brésil:
ftp://ftp.iqm.unicamp.br/pub/FreeBSD
Finlande:
ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt
Cette distribution non-US peut être directement utilisée à la
place de la distribution américaine. Ce paquetage s'installe de la même
façon que le paquetage américain (regardez les notes d'installation du
paquetage pour plus de détails). Si vous désirez installer le cryptage
DES , vous devez l'installer le plus tôt possible, avant l'installation
de tout autre logiciel.
Les utilisateurs ne résidant pas aux Etats-Unis ne doivent
télécharger aucun programme de cryptage sur un site américain. Cela
pourrait entrainer, pour les responsables du site depuis lequel le
logiciel est téléchargé, de graves problèmes juridiques.
Une distribution non-US de Kerberos est aussi en
cours de développement, et les versions courantes peuvent
généralement être obtenues depuis un site FTP anonyme
braae.ru.ac.za
Il existe aussi une liste de messagerie discutant de tous les
logiciels non-US de cryptage. Pour plus d'informations,
envoyez un email contenant le mot "help" dans le corps du message à
<majordomo@braae.ru.ac.za>
La disquette de démarrage se bloque sur le message "Probing Devices..."
Si vous disposez d'un disque ZIP ou JAZ, retirez-le et
recommencez. La disquette d'installation a des problèmes avec ce genre
de disque. Une fois le système installé, vous pouvez reconnecter le
disque. Si tout va bien ce problème sera fixé dans une version ultérieure.
J'obtiens le message "panic: cant mount root" lors du redémarrage de mon système après l'installation.
Cette erreur indique un conflit entre les blocs de
démarrage du système et la connaissance du noyau sur les disques.
Cette erreur arrive fréquemment dans le cas d'un système disposant de
deux disques IDE, avec chaque disque installé en maître ou périphérique unique sur des
contrôleurs séparés, avec FreeBSD installé sur le contrôleur IDE secondaire.
Le programme de démarrage pense que le système est installé sur wd1
(le second disque vu par le BIOS) alors que le noyau affecte wd2 au
premier disque du deuxième contrôleur. Après le test de tous les
périphériques, le noyau essaye de monter
ce que le programme de
démarrage pense être le disque de démarrage, wd1, alors qu'il s'agit
en fait de wd2 et échoue.
Pour résoudre ce problème, effectuez les opérations
suivantes :
Au message de démarrage tapez :
1:wd(2,a)kernel puis Entrée. Si le système
démarre, lancez la commande echo "1:wd(2,a)kernel" >
/boot.config pour affecter la bonne chaîne de
démarrage.
Déplacez le disque FreeBSD sur le controleur primaire,
les disques sont alors vus de façon contigus.
Reconstruisez
un noyau en modifiant les lignes de configuration wd pour avoir:
controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr
disk wd0 at wdc0 drive 0
# disk wd1 at wdc0 drive 1 # comment out this line
controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr
disk wd1 at wdc1 drive 0 # change from wd2 to wd1
disk wd2 at wdc1 drive 1 # change from wd3 to wd2
Puis installez le nouveau noyau. Si vous avez déplacé
vos disques et vous voulez restaurer la configuration précédente,
placez les disques dans la
configuration désirée puis redémarrez. Votre système doit démarrer
correctement.
Quelles sont les limites mémoire ?
Pour la mémoire, la limite est (en théorie) 4Go.
Un essai a été fait avec un Go ; vous ne pourrez probablement pas
acheter des PC i386 pouvant supporter plus que cela.
Quelles sont les tailles limites pour les systèmes de fichiers
FFS ?
La taille maximum théorique d'un système de fichiers FFS est
de 8 téraoctets (2G blocs) ou de 16To avec la taille de bloc par
défaut de 8K. Il y a en pratique une limite logicielle à
1 téraoctet mais, avec quelques modifications, il est possible d'avoir
des systèmes de fichiers de 4 téraoctet (et il en existe).
La taille maximum d'un fichier FFS est d'environ 1G blocs (4To), quand
la taille de bloc est de 4K.
taille de fichier maximum
-----------------------------------------
2.2.7 3.0
taille de bloc -stable -current marche devrait marcher
-------------- ------- -------- ------ ---------------
4K 4T-1 4T-1 4T-1 4+T
8K 32+G 8T-1 32+G 16T-1
16K 128+G 16T-1 128+G 32T-1
32K 512+G 32T-1 512+G 64T-1
64K 2048+G 64T-1 2048+G 128T-1
Quand la taille du bloc est de 4K, l'adressage du bloc par indirection triple
fonctionne et la limite devrait être définie par le plus grand
numéro de bloc qui peut être reprété avec une
indirection triple (approximativement 1K^3 + 1K^2 + 1K), mais la limite
effective est en fait donnée par une valeur (erronée) de
1G-1 pour le nombre de blocs maximum. Cette valeur devraite être de 2G-1.
Il y a des bogues avec les blocs dont le numéro est voisin de 2G-1,
et ces blocs ne peuvent être adressés quand la taille du bloc est
de 4K.
Pour les tailles de blocs de 8K et plus, tout devrait être limité
par la valeur de 2G-1 pour les numéros de blocs, mais l'est en fait par
la valeur maximum de 1G-1, hormis sous -stable, les blocs adressés par
indirection triple ne peuvent être atteints, la limite est donc
donnée par le plus grand numéro de bloc qui peut être
adressé par une double indirection (approximativement
(taille du bloc/4)^2 + (taille du bloc/4)), et dépasser cette limite
sous -current peut poser des problèmes. Utiliser la valeur correcte
de 2G-1 blocs posent à coup sûr des problèmes.
Comment puis-je mettre des fichiers de 1To sur une disquette ?
J'en ai plusieurs - virtuels - sur disquette :-). La taille
maximum d'un fichier n'a pas de lien étroit avec la dimension maximum
d'un disque. Un disque peut avoir jusqu'à un 1To. Il est
fonctionnellement possible d'avoir un fichier plus grand que le disque.
L'exemple suivant crée un fichier de 8T-1 occupant 32K d'espace disque.
(3 blocs indirects et 1 bloc de données) sur une petite partition racine. Il
faut pour cela une version de la commande dd qui fonctionne
sur de gros fichiers.
ttyv0:bde@alphplex:/tmp/q> cat foo
df .
dd if=/dev/zero of=z bs=1 seek=`echo 2^43 - 2 | bc` count=1
ls -l z
du z
df .
ttyv0:bde@alphplex:/tmp/q> sh foo
Filesystem 1024-blocks Used Avail Capacity Mounted on
/dev/sd0a 64479 27702 31619 47% /
1+0 records in
1+0 records out
1 bytes transferred in 0.000187 secs (5346 bytes/sec)
-rw-r--r-- 1 bde bin 8796093022207 Sep 7 16:04 z
32 z
Filesystem 1024-blocks Used Avail Capacity Mounted on
/dev/sd0a 64479 27734 31587 47% /
ttyv0:bde@alphplex:/tmp/q> exit
Bruce Evans, September 1998
Compatibilité matérielle. **Mise à jour en cours**
Quels sont les types de disques durs supportés par FreeBSD ?
FreeBSD supporte les disques EIDE et SCSI (pour les contrôleurs
compatibles, voir la section suivante), ainsi que tous les disques
utilisant l'interface originale "Western Digital" (MFM, RLL, ESDI
et bien sûr IDE).
Quelques contrôleurs ESDI utilisant des interfaces propriétaires
peuvent ne pas marcher: utilisez les interfaces WD1002/3/6/7 et leurs
clones.
Quels sont les contrôleurs SCSI supportés ?
Voir la liste complète dans le
Handbook .
Quels sont les lecteurs CD-ROM supportés par FreeBSD ?
N'importe quel lecteur SCSI connecté à un contrôleur supporté
est supporté.
Les interfaces CD-ROM propriétaires suivantes sont aussi supportées:
Mitsumi LU002 (8 bits), LU005 (16 bits) et FX001D
(16 bits double vitesse).
Sony CDU 31/33A
CD-ROM Sound Blaster Non-SCSI
CD-ROM Matsushita/Panasonic
CD-ROM ATAPI compatible IDE
Toutes les cartes non-SCSI sont connues pour être extrêmement lentes
par rapport aux lecteurs SCSI, et certains CDROM ATAPI peuvent ne pas
être pris en charge.
A partir de la version 2.2, le CD-ROM FreeBSD de Walnut Creek
permet de démarrer directement FreeBSD depuis le CD.
Est-ce que FreeBSD supporte les lecteurs ZIP ?
FreeBSD supporte bien sûr les lecteurs ZIP SCSI de base
- out of the box .
Les lecteurs ZIP ne peuvent être réglés que pour marcher sur les cibles
SCSI d'adresse 5 ou 6, mais si le BIOS de votre adaptateur SCSI hôte
le permet, vous pourrez même démarrer à partir du ZIP.
Je ne sais pas quel adaptateur SCSI hôte vous permet de démarrer
depuis des cibles autres que 0 ou 1... regardez votre documentation
(et dites moi si cela marche pour vous).
Les ZIP ATAPI (IDE) sont pris en charge par FreeBSD 2.2.6
ainsi que par les versions ultérieures.
FreeBSD 3.0-STABLE contient le support pour lecteur ZIP
sur port parallèle, mais pour cela, vous aurez à construire
un nouveau noyau avec support pour ppbus (Parallel Port Bus)
afin d'utiliser le ZIP.
Prendre le fichier de configuration LINT comme exemple.
Regarder aussi cette note traitant des
disques amovibles, ainsi que celle sur
le 'formatage'.
Est-ce que FreeBSD supporte JAZ, EZ et autres disques amovibles ?
A part la version IDE du lecteur EZ, ce sont tous des
périphériques SCSI, alors pour FreeBSD, ils sont considérés comme des
disques SCSI, et le lecteur IDE EZ est considéré comme un lecteur IDE.
Je ne suis pas sûr que FreeBSD supporte
correctemement un changement de media en cours de fonctionnement.
Vous devrez bien sûr démonter le lecteur avant l'échange, et vous
assurer que les unités externes soient allumées pendant le démarrage
du système de sorte que FreeBSD puisse les voir.
Quelles sont les cartes séries multi-ports prises en charge par FreeBSD ?
Une liste est disponible à la section
périphériques divers
du handbook.
A notre connaissance, certaines cartes clone sans marque
sont connues pour fonctionner, en particulier celles qui se disent
être compatibles AST.
Regarder la page de manuel
sio pour
plus d'informations sur la configuration de telles cartes.
J'ai une souris bus inhabituelle. Comment la configurer ?
FreeBSD supporte les souris bus et les souris bus InPort de
constructeurs tels que Microsoft, Logitech et ATI. Le contrôleur du bus
est compilé dans le noyau GENERIC par défaut. Si vous construisez un noyau
personalisé avec le contrôleur de souris bus, assurez-vous d'avoir bien
mis la ligne suivante dans le fichier de configuration du noyau :
device mse0 at isa? port 0x23c tty irq5 vector mseintr
La souris bus vient souvent avec une interface dédiée.
Cela vous permet de mettre une adresse de port et un numéro
d'IRQ autres que ceux donnés ci-dessus.
Reportez-vous au manuel de votre souris et à la page de manuel
mse
pour plus d'informations.
Comment utiliser ma souris PS/2 (``port souris'' ou ``clavier'') ?
Si vous utilisez une version de FreeBSD post-2.2.5, le pilote
nécessaire, psm, est inclu et activé dans le noyau.
Le noyau devrait détecter votre souris PS/2 au moment du démarrage.
Si vous utilisez une version précédente mais assez récente de
FreeBSD (2.1.x ou mieux), alors vous pouvez simplement l'activer
dans le menu de configuration du noyau à l'installation, ou plus tard
avec -c à l'invite du démarrage (boot). Il est désactivé par défaut,
c'est pourquoi vous aurez à l'activer explicitement.
Si vous utilisez une version plus ancienne du noyau, alors
vous aurez à ajouter la ligne suivante dans la configuration
de votre noyau, et compiler un nouveau noyau :
device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
Voir la section du
Handbook sur la configuration du noyau si vous n'avez aucune
expérience dans la construction d'un noyau.
Un fois que vous aurez un noyau détectant correctement psm0 au
moment du démarrage, assurez vous qu'une entrée pour psm0 existe bien
dans /dev. Vous pouvez le faire en tapant :
cd /dev; sh MAKEDEV psm0
une fois loggué sous root.
Puis-je utiliser ma souris en dehors de X Window ?
Si vous utilisez le pilote de console par défaut, syscons, vous
pourrez utiliser un curseur souris dans les consoles texte pour couper
et coller du texte.
Lancer le démon (de gestion de la) souris : moused, et déclencher
le curseur de souris dans la console virtuelle.
moused -p /dev/xxxx -t yyyy
vidcontrol -m on
Où xxxx est le nom du périphérique souris et
yyyy le type de protocole pour la souris.
Voir la page de manuel
moused
pour les types de protocoles supportés.
Peut-être préférez-vous lancer le démon gérant la souris au
moment du démarrage du système.
Dans la version 2.2.1, positionnez les variables suivantes dans
/etc/sysconfig .
mousedtype="yyyy"
mousedport="xxxx"
mousedflags=""
Dans les versions 2.2.2 et plus, positionnez les variables
suivantes dans /etc/rc.conf .
moused_type="yyyy"
moused_port="xxxx"
moused_flags=""
A partir de la version 2.2.6 de FreeBSD, le démon souris
est capable de déterminer le type de protocole approprié
automatiquement à moins que votre souris série ne soit d'un modèle
relativement ancien.
Spécifiez ``auto '' comme protocole pour activer la
détection automatique.
Quand le démon souris tourne, l'accès à la souris doit être
coordonné entre le démon souris et les autres programmes
comme X-Window. Se référer à une autre
section de ce document.
Comment puis-je couper et coller du texte avec ma souris dans ma console texte ?
Une fois que vous aurez réussi à lancer le démon souris
(voir section précédente), appuyez
en le maintenant sur le bouton 1 (bouton de gauche) et déplacez la
souris afin de sélectionner une partie du texte. Puis, appuyez
(clicquez) sur le bouton 2 (bouton du milieu) ou bouton 3 (bouton
de droite) pour le coller à l'endroit du curseur texte.
Dans les versions 2.2.6 et plus, un clic sur le bouton 2 collera
le texte. Un clic sur le bouton droit ``étendra'' la partie de
texte sélectionné.
Si votre souris n'a pas de bouton du milieu, vous
pouvez l'émuler ou redéfinir les boutons en utilisant les
options de la souris. Se reporter à la page de référence
moused
pour plus de détails.
Ma souris a une roulette et des boutons ésotériques. Puis-je les utiliser sous FreeBSD ?
Malheureusement, la réponse est: ``Cà dépend''.
Ces souris avec des fonctionnalités supplémentaires ont
besoin de pilotes spéciaux dans la majorité des cas.
Alors, à moins que le pilote de la souris ou que le
programme utilisateur ait un support spécifique pour cette
souris, la souris se comportera comme une souris standard 2 ou 3
boutons.
Comment utiliser la souris/trackball/touchpad de mon portable ?
Se référer à la réponse à la question
précédente, ainsi qu'à cette section sur
les ordinateurs portables.
Quels types de lecteurs de bandes sont supportés ?
FreeBSD supporte les lecteurs de bandes magnétique SCSI,
QIC-36 (avec une interface QIC-02) et QIC-40/80 (basés sur
l'interface Floppy).
Ceci inclut les lecteurs 8-mm (connus sous le nom d'Exabyte) et
lecteurs DAT. Les lecteurs QIC-40/80 sont connus pour être lents.
Parmi les premiers lecteurs 8-mm, quelques-uns ne sont pas tout à
fait compatibles SCSI-2, et peuvent de ce fait ne pas très bien
marcher avec FreeBSD.
FreeBSD supporte-t-il les changeurs de bandes ?
FreeBSD 2.2 gère les changeurs SCSI en utilisant le périphérique
ch ainsi
que la commande
chio .
Pour avoir plus de détails sur le contrôle du changeur, lisez la page du
manuel chio .
Si vous n'utilisez pas
AMANDA
ou un autre produit qui gère déjà les changeurs,
souvenez-vous qu'ils ne savent que déplacer une bande d'un
point à un autre. Par conséquent, vous devrez garder une
trace de l'emplacement dans lequel une bande est mise, ainsi que celui
où la bande courante devra revenir.
Quelles sont les cartes son supportées par FreeBSD ?
FreeBSD prend en charge les cartes son: SoundBlaster,
SoundBlaster Pro, SoundBlaster 16, Pro Audio Spectrum 16,
AdLib et Gravis UltraSound.
Il y a aussi un support limité pour les cartes MPU-401 et
compatible MIDI.
Les cartes conformes aux spécifications Microsoft Sound System
sont aussi supportées par l'intermédiaire du pilote pcm.
Ceci n'est valable que pour les sons!
Ce pilote ne supporte pas les CD-ROMs, SCSI ou joysticks sur
ces cartes, excepté pour la SoundBlaster.
L'interface SCSI SoundBlaster et quelques CD-ROM non-SCSI sont
aussi supportés.
Mais vous ne pourrez pas démarrer depuis ces périphériques.
Quels sont les cartes réseau supportées par FreeBSD ?
Regarder la section
cartes éthernet du handbook pour une liste complète.
Je n'ai pas de coprocesseur arithmétique. Est-ce un problème ?
Cela ne touche que ceux qui ont un 386/486SX/486SLC -
toutes les autres machines en ont déjà un intégré dans la CPU.
En règle générale, il n'y a pas d'inconvénient, mais il
existe des circonstances dans lesquelles cela peut causer
des problèmes aussi bien au niveau des performances qu'au niveau de la
précision du code d'émulation arithmétique (voir la section
sur l'émulation FP).
En particulier, le dessin de courbes sous X sera TRES lent.
Il est hautement recommandé d'acheter un coprocesseur arithmétique :
c'est quand même mieux avec !
Certains coprocesseurs mathématiques sont meilleurs que d'autres.
Cela nous peine de le dire, mais personne n'a jamais été licencié
pour avoir acheté de l'Intel.
A moins que d'être sûr qu'ils fonctionnent avec FreeBSD,
méfiez-vous des clones !
Quels autres périphériques la version 2.X supporte-t-elle ?
Lire le Handbook
pour obtenir la liste des périphériques supportés.
FreeBSD supporte-t-il le gestionnaire d'énergie de mon portable ?
FreeBSD supporte l'APM sur certaines machines.
Regardez dans le fichier de configuration du noyau
LINT , et cherchez le mot-clef
APM .
Solutions de contournement pour des problèmes matériels particuliers.
Cette section traite de solutions de contournement pour des
problèmes rencontrés par nos utilisateurs sur certains matériels
particuliers.
Les systèmes Micron sont suspendus au moment du démarrage.
Certaines cartes mères Micron ont des implémentations
non-conformes de PCI BIOS, ce qui peut poser des problèmes
lorsque FreeBSD démarre car les périphériques PCI ne sont pas
configurés à l'adresse annoncée.
Désactivez l'option "Système d'exploitation Plug and Play"
dans le BIOS pour contourner ce problème.
Des compléments d'informations peuvent être trouvés à
"http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron"
J'ai un nouveau contrôleur Adaptec, et FreeBSD ne le reconnait pas.
Les nouvelles puces de la série Adaptec AIC789x sont supportées
dans le cadre du CAM SCSI qui démarre avec la 3.0.
Des patches pour la version 2.2-STABLE sont disponibles à
ftp://ftp.freebsd.org/pub/FreeBSD/cam/
Une disquette d'amorce avec CAM est disponible à
http://www.freebsd.org/~abial/cam-boot/ .
Dans les deux cas, lisez le fichier README avant toute chose.
J'ai un modem interne plug'n play, et FreeBSD ne le reconnait pas.
Vous devez ajouter l'ID PnP du modem à la liste des ID PnP dans
le pilote série.
Pour activer le support Plug & Play, il faut compiler un nouveau
noyau avec controller pnp0 dans le fichier de
configuration, puis redémarrer le système. Le noyau affichera alors
l'ID PnP de tous les périphériques qu'il trouvera.
Copier alors l'ID PnP du modem dans le tableau de
/sys/i386/isa/sio.c , vers la ligne 1200.
Cherchez la chaîne de caractère "SUP1310" dans la structure
"siopnp_ids[]" pour trouver le tableau.
Construire à nouveau le noyau, installer, redémarrer, et votre
modem devrait être reconnu.
Vous pouvez configurer manuellement les périphériques PnP en
utilisant la commande `pnp' à la configuration au moment du démarrage,
avec une commande du style :
pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8
pour afficher le modem.
Comment puis-je obtenir l'invite de commande ``boot:'' sur la console série ?
Construire un noyau avec options COMCONSOLE .
Créer un fichier /boot.config avec pour seul contenu
-P
Déconnecter le clavier du système.
Redardez /usr/src/sys/i386/boot/biosboot/README.serial
pour plus d'informations.
Pourquoi ma carte réseau 3Com PCI ne marche pas avec mon Micron ?
Certaines cartes mères Micron ont une implémentation non-conforme
du BIOS PCI qui ne configure pas les périphériques PCI à l'adresse
annoncée.
Cela cause des problèmes quand FreeBSD démarre.
Pour contourner ce problème, désactiver l'option "Système
d'exploitation Plug and Play" dans le BIOS.
Pour plus d'informations sur ce problème, allez voir à l'URL:
http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron
FreeBSD supporte-t-il les Multiprocesseurs Symétriques (SMP) ?
SMP n'est supporté que dans la version 3.0-STABLE et les versions
suivantes.
Résolutions des incidents. **Mise à jour en cours**
J'ai des secteurs défectueux sur mon disque dur !
Pour les disques SCSI, le disque devrait être capable de réallouer
ceux-ci automatiquement. Quoiqu'il en soit, beaucoup de disques sont
livrés avec cette fonctionnalité désactivée, pour une raison
mystérieuse...
Pour l'activer, vous aurez à éditer le first device
page mode , ce qui peut être fait sur FreeBSD en tapant
la commande (sous root)
scsi -f /dev/rsd0c -m 1 -e -P 3
et en changeant la valeur de AWRE et ARRE de 0 à 1 :
AWRE (Auto Write Reallocation Enbld): 1
ARRE (Auto Read Reallocation Enbld): 1
Les paragraphes suivants ont été soumis par
Ted Mittelstaedt :
Pour les disques IDE, le moindre secteur défectueux est habituellement
un signe d'incident potentiel.
Tous les disques IDE modernes sont livrés avec la réallocation des
secteurs défectueux activée.
Tous les fabriquants de disques durs IDE offrent aujourd'hui des
garanties étendues et remplaceront les disques possédant des secteurs
défectueux.
Si vous voulez toutefois essayer de récupérer un disque IDE avec des
secteurs défectueux, vous pouvez essayer de télécharger le programme de
diagnostic du fabriquant de disque IDE et de le faire exécuter sur le
disque. Quelquefois, ces programmes peuvent être configurés pour
forcer l'électronique du disque à rebalayer le disque pour les secteurs
défectueux et leur inhibition.
Pour les disques ESDI, RLL et MFM, les secteurs défectueux font
partie de la vie normale du disque et ne sont pas signes d'incidents,
généralement. Avec un PC, la carte contrôleur de disque et le BIOS
prennent en charge la tâche d'inhibition des secteurs défectueux.
C'est bien pour les systèmes d'exploitation comme DOS qui
utilisent le code du BIOS pour accéder au disque. Toutefois,
le driver de disque FreeBSD ne passe pas par le BIOS, aussi
un mécanisme, bad144 , existe pour remplacer
cette fonctionnalité.
bad144 ne fonctionne qu'avec le driver
wd , il ne peut
pas être utilisé avec le SCSI.
bad144 fonctionne en entrant tous les
secteurs défectueux trouvés dans un fichier spécial.
Un inconvénient avec bad144 -
le fichier spécial des secteurs défectueux est placé sur la dernière
piste du disque.
Comme ce fichier contient peut-être une liste de secteurs dont l'un
serait près du début du disque, où le fichier noyau
/kernel serait aussi localisé, il doit donc être
accéssible au progamme d'amorce (bootstrap )
qui utilise les appels du BIOS pour lire le fichier du noyau.
Cela signifie qu'un disque géré avec bad144
ne peut dépasser 1024 cylindres, 16 têtes et 63 secteurs.
Cela place une limite effective de 500Mo sur un disque qui est réalloué
avec bad144 .
Pour utiliser bad144 , positionnez
simplement le balayage des secteurs défectueux Bad
Block à ON dans
le menu fdisk de FreeBSD lors de l'installation
initiale.
Cela marche jusqu'à la version 2.2.7 de FreeBSD.
Le disque doit avoir moins de 1024 cylindres.
Il est généralement recommandé de laisser tourner préalablement le disque
pendant plus de 4 heures avant cette opération, pour tenir compte de la
dilatation thermique et des pistes errantes.
Si le disque a plus de 1024 cylindres (comme un gros disque ESDI),
le contrôleur ESDI utilise un mode de translation spécial pour le
faire fonctionner sous DOS.
Le driver wd comprend ces modes de translation,
si vous entrez la géométrie "translatée"
avec la commande set geometry dans
fdisk .
De plus, vous ne devez pas utiliser le
mode dangerously dedicated de création
d'une partition FreeBSD, parce qu'il ignore la géométrie.
De plus, même si fdisk va utiliser votre géométrie
surchargée, il continue à connaître la vrai taille du disque
et va tenter de créer une partition FreeBSD trop grande.
Si la géométrie du disque est remplacée par la géométrie
translatée, la partition doit
être créée manuellement avec le nombre de secteurs.
Un truc rapide à utiliser est d'initialiser le gros disque
ESDI avec le contrôleur ESDI, le démarrer avec un disque DOS
et le formatter avec une partition DOS.
Puis, démarrez l'installation FreeBSD et dans le menu
fdisk , lire depuis l'écran et écrire à côté la taille
et le nombre de secteurs de la partition DOS.
Puis, réinitilisez la géométrie comme celle de DOS en détruisant
la partition DOS et en créant une partition FreeBSD
cooperative avec la taille
précédemment notée.
Puis positionnez la partition pour être amorçable et autorisez
le balayage des secteurs défectueux.
Pendant l'installation réelle, bad144
passera en premier, avant la moindre création de systèmes de
fichiers (vous pouvez le voir avec un Alt-F2 ).
S'il a le moindre problème pour créer le fichier des secteurs
défectueux, vous avez initialisé une géométrie de disque trop
grande - redémarrez le système et recommencez tout
depuis le début (y compris le repartitionnement et reformattage
en DOS).
Si la réallocation est autorisée et que vous voyez des
secteurs défectueux, envisagez un remplacement du disque.
Les secteurs défectueux ne feront que s'aggaver au fil du temps.
FreeBSD ne reconnait pas ma carte EISA SCSI Bustek 742a !
Cette information est spécifique à la 742a, mais peut aussi couvrir
les autres cartes Buslogic (Bustek = Buslogic).
Il y a 2 ``versions'' générales de la carte 742a.
Ce sont les révisions matérielles A-G et H - et plus.
La lettre de révision est placée après le numéro d'assemblage
sur le bord de la carte.
La 742a possède 2 puces ROM dessus, l'une est la puce BIOS et l'autre
est la puce Firmware.
Si FreeBSD ne fait pas attention à la version de la puce BIOS que vous
avez, il le fait par contre pour la version de la puce Firmware.
Buslogic vous enverra des ROMs de mise à jour si vous appelez leur support
technique.
Les puces BIOS et Firmware sont appariées.
Vous devez avoir la ROM Firmware la plus en cours dans votre carte
d'adaptatation pour votre révision de matériel.
Les cartes REV A-G ne peuvent recevoir que les versions de
BIOS/Firmware 2.41/2.21.
Les cartes REV H - et plus peuvent accepter les plus récente
versions de BIOS/Firmware 4.70/3.37.
La différence entre ces jeux de firmware est que le 3.37 supporte
l'allocation tournante (``round robin'' ).
Les cartes Buslogic ont aussi un numéro de série inscrit. Si vous
avez une vieille révision de carte, vous pouvez appeler le département
Buslogic RMA et leur donner le numéro de série afin d'essayer d'échanger
celle-ci contre une révision plus récente.
Si votre carte n'est pas trop vieille, il l'échangeront.
FreeBSD 2.1 ne supporte que les versions firmware 2.21 et plus.
Si vous avez une version Firmware plus vieille, votre carte ne sera
pas reconnue comme une carte Buslogic.
Elle peut malgré tout être reconnue comme une carte Adaptec 1540.
La vieille carte firmware contient un mode ``émulation'' AHA1540.
Quoiqu'il en soit, ce n'est pas une bonne chose pour une carte EISA.
Si vous avez une vieille révision de carte et que vous obtenez le
firmware 2.21, vous aurez à vérifier la position du cavalier
(jumper ) W1 à B-C ; par défaut,
il est positionné à A-B.
Les cartes EISA 742q n'ont jamais eu le problème ``>16Mo''
mentionné dans la section sur les machines >16 Mo
.
Ceci est un problème qui apparaît avec les cartes SCSI Buslogic
Vesa-Local.
Mon contrôleur SCSI HP Netserver n'est pas détecté !
C'est à la base un problème connu.
Le contrôleur SCSI-EISA intégré sur la carte mère des machines HP
Netserver occupe le slot EISA numéro 11, aussi tous les ``vrais''
slots EISA se retrouvent devant lui.
Malheureusement, l'espace d'adressage pour les slots EISA >= 10 se
retrouve en conflit avec l'espace d'adressage assigné aux slots PCI, et
l'auto-configuration de FreeBSD ne peut actuellement pas très bien gérer
cette situation.
Donc, pour le moment, le mieux que vous ayez à faire, est
de prétendre qu'il n'y a pas de conflit de plage d'adresse :-),
en propulsant l'option du noyau EISA_SLOTS
à la valeur 12.
Configurez et compilez un noyau comme décrit dans
le manuel de référence
sur la configuration du noyau .
Bien sûr, cela se présente comme le problème bien connu de la poule et
de l'oeuf lorsque l'on installe sur une telle machine. Afin de pouvoir
contourner ce problème, un hack spécial
est disponible au moment de la configuration utilisateur
(UserConfig ). Ne pas utiliser
l'interface ``visual'', mais l'interface en mode texte. Tapez
simplement :
eisa 12
quit
au prompt, et installez le système comme d'habitude.
Quoiqu'il en soit, il est recommandé de compiler et d'installer
un noyau adapté.
dset
comprend aussi maintenant qu'il faut sauver cette valeur.
Heureusement, les versions futures auront une solution appropriée
à ce problème.
Vous ne pouvez pas utiliser un disque *dangereusement dédié*
(dangerously dedicated ) avec un
Netserver HP.
Voir cette note
pour plus d'informations.
Que se passe-t'il avec le contrôleur CMD640 IDE controller?
Il ne marche pas, Il ne peut pas manipuler des commandes sur
les deux canaux simultanément.
Il y a un détour disponible à présent, et elle s'active automatiquement
si votre système utilise cette puce. Pour plus de détails, référez-vous à
la page de manuel du driver de dique (man 4 wd).
Si vous lancez déjà FreeBSD 2.2.1 ou 2.2.2 avec un contrôleur
IDE CMD640 et que vous voulez utiliser le deuxième canal, construisez un
nouveau noyau avec les options options "CMD640" activé.
Il est mis par défaut pour FreeBSD 2.2.5 et plus.
Je n'arrête pas de voir ``ed1: timeout ''.
Cela est généralement causé par un conflit d'interruption (par exemple ,
2 cartes utilisant le même IRQ). FreeBSD avant 2.0.5R était tolérant et
fonctionnait même en cas de conflit d'IRQ. Mais à partir du 2.0.5R, les
conflits ne sont plus tolérés.
Booter avec l'option -c et changer l'ed0/de0/... pour se conformer à
votre carte.
Si vous utilisez un connecteur BNC sur votre carte réseau, vous pouvez
aussi voir des timeouts sur les périphériques à cause de mauvaise
terminaison. Pour le vérifier, attachez un terminateur directement au
NIC (sans câble) et regardez si les messages d'erreurs disparaissent.
Certaines cartes compatibles NE2000 donneront une telle erreur s'il n'y
a pas de liaison sur le port UTP ou si le cable est déconnecté.
Quand je monte le CD-ROM, j'obtiens ``Incorrect super block''.
Vous devez spécifier à
mount
le type de périphérique que vous voulez monter. Par défaut,
mount
supposera que le système de fichier est de type
``ufs ''.
Vous pouvez vouloir monter un système de fichier CDROM, et vous pouvez le
faire en spécifiant l'option ``-t cd9660 '' à
mount .
Cela suppose évidemment que le CDROM contienne un système de fichier
ISO 9660 , qui est celui qu'ont presque tous les CDROM.
Comme pour le 1.1R, FreeBSD comprend automatiquement les extensions
Rock Ridge (nom long).
Par exemple, si vous voulez monter le lecteur CDROM
``/dev/cd0c '', sous le répertoire /mnt ,
vous aurez à exécuter :
mount -t cd9660 /dev/cd0c /mnt
Bien noter que le nom du périphérique (``/dev/cd0c ''
de cet
exemple peut être différent suivant l'interface du CDROM.
Noter que l'option ``-t cd9660 '' ne fait qu'exécuter la commande
``mount_cd9660 '', c'est ainsi que l'exmple pourrait être
simplifié en :
mount_cd9660 /dev/cd0c /mnt
Quand je monte un CDROM, j'obtiens ``Device not configured''.
Cela veut généralement dire qu'il n'y a pas de CDROM dans le lecteur de
CDROM, ou que le lecteur n'est pas visible du bus. Mettez un disque dans
le lecteur, et/ou vérifiez son état maître/esclave si c'est un IDE
(ATAPI). Cela peut prendre quelques secondes pour le lecteur CDROM pour
s'apercevoir qu'il y a un disque, alors, soyez patient.
De temps en temps, un lecteur CD-ROM SCSI peut être manqué car il n'a
pas eu assez de temps pour répondre à la réinitialisation du bus. Si
vous avez un lecteur CDROM SCSI, essayez d'ajouter la ligne suivante
dans votre fichier de configuration du noyau, et recompilez.
options "SCSI_DELAY=15"
Mon imprimante est extrêmement lente, que puis-je faire ?
Si c'est du parallèle, et que le seul problème est qu'elle est
terriblement lente, essayez de positionner votre port imprimante
en mode ``poller'':
lptcontrol -p
Certaines nouvelles imprimantes HP sont soupçonnées de ne pas fonctionner
correctement en mode interruption, apparemment, cela est dû a certains
problème de timing (mais cela n'est pas encore exactement compris).
Mes programmes se tuent souvent avec l'erreur ``Signal 11''.
Cela peut-être causé par du mauvais matériel (mémoire, carte mère...).
Essayez de lancer un programme de test de mémoire sur votre PC. Notez
que même si chaque programme de test de mémoire essayeront de vous dire
que tout va bien, il est possible que certaines rares zones de mémoire
passent tous les tests mémoires, mais échouent pourtant durant certaines
conditions d'opération (comme pendant qu'un bus maîtrise l'accès direct
à la mémoire depuis un contrôleur SCSI comme l'Adaptec 1542, quand vous
chargez la mémoire en compilant le noyau, ou quand le système tourne
dans des conditions très critiques)
La FAQ sur SIG11 (listée ci-dessous) dénonce les mémoires lentes comme
étant le problème le plus courant. Augmentez le nombre d'états d'attente
dans votre configuration du BIOS ou récupérez de la mémoire plus rapide.
Pour moi, la partie incriminée a été une mauvaise mémoire cache, ou un
mauvais contrôleur cache. Essayez de désactiver le cache secondaire dans
la setup BIOS, et regardez si cela résoud le problème.
Il y a une FAQ plus détaillée sur
la FAQ du problème SIG11
Quand je boote, l'écran devient noir, et perd sa synchronisation
Ceci est un problème connu avec les cartes vidéo ATI Mach 64.
Le problème est que cette carte utilise l'adresse 2e8 , et que
le quatrième port série aussi. Dû à un bug (une fonctionnalité ?) dans
le driver
sio.c ,
cela touchera ce port même si vous n'avez pas ce quatrième
port série, et *même* si vous désactives sio3 (le quatrième
port) qui utilise normalement cette adresse.
Jusqu'à ce que ce bug soit fixé, vous pouvez utiliser cette astuce :
Entrez -c à l'invite.
(Cela mettra le noyau en mode configuration).
Désactivez sio0 ,
sio1 , sio2 and
sio3 (tous).
De cette manière, le driver sio ne sera pas activé.
et donc plus de problèmes.
Tapez exit et continuez le rebootage.
Si vous voulez pouvoir utiliser les ports séries, vous aurez à construire
un nouveau noyau avec les modifications suivantes :
Dans /usr/src/sys/i386/isa/sio.c cherchez la seule occurence de
la chaîne 0x2e8 et enlevez cette chaîne et la virgule
précédente (gardez la virgule de liaison). Puis suivre la procédure
normale de la construction d'un nouveau noyau.
Même après avoir appliqué toutes ces astuces, vous pouvez trouver que X
Window ne marche pas correctement, Certaines nouvelles cartes vidéo
ATI Mach 64 (notamment ATI Mach Xpression) ne marche pas avec la version
actuelle de XFree86 ; l'écran devient noir quand vous démarrez
X Window, ou alors il marche avec des problèmes étranges. Vous pouvez
obtenir la version beta d'un nouveau serveur X qui marche mieux.
Regardez sur
le site XFree86 site
et suivez les liens à la nouvelle beta release. Récupérez les fichiers
suivants :
AccelCards, BetaReport, Cards, Devices, FILES, README.ati,
README.FreeBSD, README.Mach64, RELNOTES, VGADriver.Doc,
X312BMa64.tgz
Remplacez les vieux fichiers avec ceux de la nouvelle version et
vérifiez que vous lancez bien :
xf86config
à nouveau.
J'ai 128 MB de RAM mais le système n'en voit que 64 MB.
Dûe à la façon dont FreeBSD récupère la taille de la mémoire depuis le
BIOS, il ne peut seulement détecter qu'une taille dont la valeur est
codée en kilo-octets par 16 bits (65535 Ko = 64MB) (ou moins... certains
BIOS tronque la taille de la mémoire à 16Mo).
Si vous avez plus de 64 Mo, FreeBSD tentera de le détecter, mais il se
peut que cette tentative échoue.
Pour contourner ce problème, vous devez utiliser l'option du noyau
donnée ci-dessous. Il y a une manière de récupérer les informations
complète de la mémoire depuis le BIOS, mais nous n'avons pas assez de
place sur les blocks de boot pour le faire. Un jour, quand le manque de
place sur les blocs de boots sera résolu, nous utiliserons les
fonctions du BIOS étendu pour récupérer l'information complète sur la
mémoire... mais pour l'instant, nous utilisons cette option du noyau.
options "MAXMEM=<n>"
Où n est votre mémoire en KiloOctet. Pour une machine à
128Mo, vous pouvez utiliser 131072 .
FreeBSD 2.0 panique avec ``kmem_map too small!''
Note : Le message peut aussi être ``mb_map too small!''
La panique indique que le système n'a plus de mémoire virtuelle pour les
buffers réseau (spécialement mbuf clusters). Vous pouvez augmenter
la quantité de mémoire virtuelle disponible pour les clusters mbuf en
ajoutant :
options "NMBCLUSTERS=<n>"
dans votre configuration du kernel, où <n> est un nombre compris
entre 512 et 4096, suivant le nombre de connexions concurrentes TCP que
vous aurez à supporter. Je vous recommande d'utiliser 2048 - cela devrait
vous débarasser complètement de cette panique.
Vous pouvez contrôler le nombre de clusters mbuf alloué/en cours
d'utilisation sur votre système, avec
netstat -m .
La valeur par défaut pour NMBCLUSTERS est
512 + MAXUSERS * 16/ .
``CMAP busy panic'' au moment d'un reboot avec un nouveau noyau.
La logique permettant de détecter un fichier obsolète
/var/db/kvm_*.db peut parfois échouer et utiliser un fichier non
approprié peut alors conduire à cette panique.
Si cela arrive, rebooter en mode single-user et faites :
rm /var/db/kvm_*.db
ahc0: brkadrint, Illegal Host Access at seqaddr 0x0
C'est un conflit avec l'adaptateur hôte Ultrastor SCSI.
Durant la procédure de boot, entrez dans le menu de configuration du
noyau et désactivez
uha0"
qui est à la cause de ce problème.
Sendmail me dit ``mail loops back to myself''
Cela est répondu dans la FAQ sendmail de la façon suivante :
* Je reçois des messages "Local configuration error" messages, comme:
553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error
Comment puis-je résoudre ce problème ?
Vous avez demandé que les mails adressés au domaine (par exemple domain.net)
soient dirigés vers un hôte spécifique (dans ce cas relay.domain.net) en
utilisant un enregistrement MX, mais la machine de relai ne s'est pas reconnu
lui-même comme domain.net. Ajoutez domain.net à /etc/sendmail.cw
(si vous utilisez FEATURE(use_cw_file)) ou ajoutez "Cw domain.net" à
/etc/sendmail.cf.
La version actuelle de
la FAQ sendmail
n'est plus maintenue avec la release sendmail. Mais elle est de toute
façon postée régulièrement à :
comp.mail.sendmail ,
comp.mail.misc ,
comp.mail.smail ,
comp.answers , et
news.answers .
Vous pouvez aussi en recevoir une copie par courrier électronique, en
envoyant un mail à :
mail-server@rtfm.mit.edu
avec la commande
with the command "send usenet/news.answers/mail/sendmail-faq"
comme corps de message.
Les applications plein-écran sur des machines distantes se comportent étrangement.
La machine distante peut régler votre type de terminal à autre chose que
le type de terminal cons25 utilisé par la console FreeBSD.
Il y a un certains nombres de contournement de ce problème :
Après s'être loggué sur la machine distante, positionnez votre variable
d'environnement TERM à soit ansi soit sco .
Utilisez localement un émulateur VT100 comme
. screen
screen permet la possibilité de lancer plusieurs sessions
concurentes depuis un terminal.
Installez l'entrée cons25 du terminal dans la base de données
sur la machine distante.
fire up X et login vers la machine distante depuis un
xterm .
Applications commerciales. **Mise à jour en cours**
NOTE :
Cette section est encore très clairsemée, car nous espérons
naturellement, que les industries y contribueront :-)
L'organisation FreeBSD n'a aucun intérêt financier dans aucune des
sociétés énumérées ici, mais les liste simplement comme service public
(et estime que l'intérêt commercial dans FreeBSD peut avoir des effets
très positifs sur la viabilité à long terme de FreeBSD).
Nous encourageons les constructeurs de logiciel commerciaux
à envoyer leurs références ici pour inclusion. Voir
les pages des constructeurs
pour une liste plus complète.
Où puis je obtenir Motif pour FreeBSD ?
Contactez Apps2go pour une distribution ELF
Motif 2.1 pour FreeBSD.
Cette distribution comprend :
OSF/Motif manager, xmbind, panner, wsm.
Les librairies ELF statiques et dynamiques (utilisables avec FreeBSD
3.0 et supérieur).
Kit de développement avec les fichiers
uil, mrm, xm, xmcxx, include et Imake.
Des applications de démonstration.
Soyez sûr d'indiquer que vous voulez la version de FreeBSD de Motif
lors de la commande ! Des versions pour NetBSD et OpenBSD sont également
vendues par Apps2go . Vous avez
actuellement juste la possiblité de télécharger en FTP.
Pour plus d'informations
Serveur WWW de Apps2go
Ou les addresse de messageries du département des ventes ou encore
du support
Tél: (817) 431 8775 ou +1 817 431-8775
Contactez Metro Link pour
une distribution a.out ou ELF Motif 2.1 pour FreeBSD.
Cette distribution comprend :
OSF/Motif manager, xmbind, panner, wsm.
Kit de développement avec les fichiers
uil, mrm, xm, xmcxx, include et Imake.
Les librairies a.out et ELF statiques et dynamiques (utilisables avec FreeBSD
3.0 et supérieur pour les librairies ELF et 2.2.8 et supérieur pour
les librairies a.out ).
Des applications de démonstration.
Les pages de manuel préformattées
Soyez sûr d'indiquer que vous voulez la version de FreeBSD de Motif
lors de la commande ! Des versions pour Linux sont également
vendues par Metro Link . La
distribution est disponible par téléchargement FTP ou sur un CDROM.
Contactez Xi Graphics pour une distribution a.out
Motif 2.0 pour FreeBSD.
Cette distribution comprend :
OSF/Motif manager, xmbind, panner, wsm.
Les librairies a.out statiques et dynamiques (utilisables avec FreeBSD
2.2.8 et supérieur).
Kit de développement avec les fichiers
uil, mrm, xm, xmcxx, include et Imake.
Des applications de démonstration.
Les pages de manuel préformattées
Soyez sûr d'indiquer que vous voulez la version de FreeBSD de Motif
lors de la commande ! Des versions pour BSDI et Linux sont également
vendues par Xi Graphics . La
distribution comprend actuellement 4 disquettes. Dans le futur il y
aura un CD comme pour CDE.
Où puis-je avoir CDE pour FreeBSD?
Contactez Xi Graphics pour une distribution
CDE 1.0.10 pour FreeBSD. Cela inclut Motif 1.2.5, et peut être utilisé
avec Motif 2.0.
C'est une distribution CDROM uniforme pour FreeBSD et Linux.
Y a-t-il des serveurs X commerciaux haute-performance ?
Oui,
Xi Graphics et Metro Link
vendent leur produit Accelerated-X pour FreeBSD et autres systèmes
basés sur Intel.
Le serveur X de Metro Link offre une configuration facile
grace a l'utilisation des outils de gestion des packages de FreeBSD,
supporte de multiples cartes vidéos et est distribué
en forme binaire seulement, par FTP. N'oublions pas de mentionner que
Metro Link offre se serveur a un prix raisonnable de 39$.
Metro Link vend aussi une version ELF et a.out de Motif
(voir ci-dessus).
Pour plus d'informations
Serveur WWW de Metro Link
Ou les addresse de messageries du département des ventes ou encore
du support
Tél: (954) 938-0283 or +1 954 938-0283
Xi Graphics offre un serveur X haute
performances comportant une facilité de configuration et supportant
des cartes vidéos multiples. La distribution est sous forme binaire,
et est au format disquette pour FreeBSD et Linux. Xi Graphics offre
aussi un serveur haute performances pour les portables.
Il y a une "démo de compatibilité" disponible et gratuite de la
version 5.0.
Xi Graphics vends aussi Motif et CDE pour FreeBSD (voir ci-dessus).
Pour plus d'informations :
Xi Graphics WWW page
ou par courrier électronique aux adresses suivantes :
Ventes
ou
Support
ou encore par téléphone au
(800) 946 7433 ou +1 303 298-7478.
Y a-t-il un système de bases de données pour FreeBSD?
Oui ! Conetic Software Systems a porté leur système de
bases de données C/base and C/books pour FreeBSD 2.0.5 et plus,
et Sleepycat Software vend une version commerciale supportée de leur
librairie de base de données DB.
Pour plus d'informations :
Conetic Software Systems
ou envoyez un courrier électronique à
Information E-mail address
et
Sleepycat Software
Applications. **Mise à jour en cours**
Ou puis-je trouver toutes les applications utilisateurs?
Allez voir sur la page des
ports pour plus d'informations sur les packages portés sur
FreeBSD. La liste complète inclut plus de 1000 ports, et grossit chaque
jours, donc vérifiez souvent cette liste, ou souscrivez à la mailing
liste freebsd-announce pour
vous tenir au courant des mises à jour.
La plupart des ports sont disponibles pour la branche 2.2
et 3.0, et la plupart d'entre eux sont susceptibles de fonctionner sur
des systèmes 2.1.x. A chaque fois qu'une version de FreeBSD est
livrée, une version des ports, au moment de la livraison de la
version, est incluse dans le répertoire ports
.
FreeBSD supporte aussi le concept de ``package'', qui
n'est rien de plus qu'une distribution binaire compressée avec
quelques informations en plus, permettant de l'installer très
simplement. Un ``package'' peut être installé et désinstallé
facilement, sans avoir besoin de savoir les détails sur les fichiers
qu'il inclut.
Il vous suffit d'utiliser le menu d'installation des
``package'' du programme /stand/sysinstall ou
servez vous de la commande pkg_add(1) pour
installer les ``packages'' que vous désirez. Les fichiers des
``packages'' sont très simple à identifiés de part leur suffixe
.tgz . Les personnes disposant d'une
distribution sur CDROM les trouveront dans le répertoire
packages/All . Ils sont aussi disponibles sur ces
différents serveurs ftp:
Pour les versions 2.1.x-release: ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.1.7/
Pour les versions 2.2.6-release/2.2.-stable: ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.2.6/
Pour la version 3.0-current: ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-3.0/
ou sur un site mirroir.
Notez, que tous les ports ne sont pas obligatoirement
disponibles sous forme de ``package''. C'est une bonne idée de
vérifier régulièrement la disponibilité des différents packages sur le
site principal de
FreeBSD
Ou trouver la librairie libc.so.3.0?
Cela veut dire que vous essayez d'utiliser un ``package''
compilé pour des versions 2.2/3.0 sur un système 2.1.x. Voyez la
section précedente et retrouvez le port/package correct pour votre
système.
-
- ghostscript m'affiche énormément d'erreurs sur mon 386/486SX.
+
+ ghostscript m'affiche énormément d'erreurs sur mon 386/486SX.
Vous n'avez pas de coprocesseur mathématique, n'est-ce pas ? Vous
devez absolument compiler l'émulateur mathématique fournit dans votre
noyau; il vous suffit d'ajouter la ligne suivante dans votre fichier
de configuration du noyau: options GPL_MATH_EMULATE
NOTE: Vous devez retirer la ligne contenant l'option
MATH_EMULATE si vous activez la
précédente.
Lorsque je lance des applications SCO/iBCS2, elles plantent sur socksys
Vous devez en tout premier éditer le fichier
/etc/sysconfig (ou /etc/rc.conf
) et positionner la variable suivante sur YES :
# à positionner sur YES si vous voulez que l'émulation ibcs2(SCO) soit chargée au démarrage
ibcs2=NO
Cela activera le module ibcs2 au
démarrage.
Vous devrez aussi créer le répertoire
/compat/ibcs2/dev et mettre en place ce qui suit :
lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -> /dev/null
lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -> socksys
-rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null
lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -> /dev/null
crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx
Il suffit de faire pointer socksys vers /dev/null
pour tromper les open & close. Le code, dans la version -current,
fera le reste. Si vous avez besoin du driver spx
pour la connexion d'une socket X, définissez
SPX_HACK lors de la compilation de votre
système.
Comment dois-je configurer INN (Internet News) pour mon système ?
Après avoir installé le package ou le port de inn, la
meilleur façon de commencer est de voir la page de Fabien TASSIN
sur INN, ou vous trouverez la FAQ de INN.
Quelle version de Microsoft FrontPage dois-je utiliser ?
Utilisez les ports ! Une pré-version patchée pour Apache est
disponible dans les ports
Configuration du noyau. **Mise à jour en cours**
J'aimerais personnaliser mon noyau. Est-ce difficile ?
Pas du tout ! Jetez un coup d'oeil à
la section de la configuration du noyau du manuel de référence.
NOTE :
Je vous recommande de faire une sauvegarde datée de votre noyau dans
kernel.YYMMDD dès que vous arrivez à tout faire marcher.
Ainsi, si jamais en jouant avec votre configuration du noyau, vous
mélangez tout, vous pourrez démarrer sur ce noyau plutôt que de repartir
depuis kernel.GENERIC . Ceci est particulièrement important si vous
démarrez actuellement depuis un contrôleur qui n'est pas supporté par le
noyau GENERIC (oui, c'est une expérience personelle).
Ma compilation du noyau échoue car &hw&float
manque.
Laissez-moi deviner. Vous avez supprimé
npx0
de votre fichier de configuration du noyau car vous n'avez pas de
coprocesseur arithmétique, c'est ça ? Faux ! :-).
Le périphérique npx0 est *OBLIGATOIRE*.
Même si vous n'avez pas de coprocesseur arithmétique, vous
*devez* inclure le périphérique npx0 .
Conflits d'interruption avec le code multi-port série.
Q.
Quand je compile le noyau avec du code multi-port série, cela me dit
que seul le premier port est examiné et le reste est ignoré à cause des
conflits d'interruption. Comment puis-je résoudre cela ?
R.
Le problème ici, est que FreeBSD a du code intégré pour éviter au noyau
de se planter à cause d'un conflit matériel ou logiciel. La façon de
fixer ce problème est d'ignorer le réglage des IRQ sur tous les
ports sauf un. Voici un exemple :
#
# Multiport high-speed serial line - 16550 UARTS
#
device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
Comment puis-je activer le support des disques QIC-40/80 ?
Vous supprimez le commentaire de la ligne suivante du fichier générique de
configuration (ou ajoutez la à votre fichier de configuration), ajoutez
un ``flags 0x1 '' à la ligne
fdc
et recompilez.
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr
disk fd0 at fdc0 drive 0 ^^^^^^^^^
disk fd1 at fdc0 drive 1
#tape ft0 at fdc0 drive 2
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Puis, vous créez un périphérique appelé
/dev/ft0
en allant dans le répertoire /dev et en lançant la commande
suivante :
sh ./MAKEDEV ft0
pour le premier périphérique. ft1 pour le second, et ainsi de
suite.
Vous aurez un périphérique appelé /dev/ft0 , où vous pourrez
écrire par l'intermédiaire d'un programme spécial appelé
``ft '' - Voir la page de manuel
ft
pour plus de détails.
Les versions précédentes de -current ont aussi quelques
problèmes avec certaines cartouche ddfectueuses. Si vous avez
des problèmes où ft semble aller et venir indéfiniment,
essayez de récupérer la dernière version de ft depuis
/usr/src/sbin/ft dans -current et essayez le.
Administration système. **Mise à jour en cours**
Où sont les fichiers de démarrage du système ?
De la version 2.0.5R à la version 2.2.1R, le fichier de
configuration principal était /etc/sysconfig .
Toutes les options sont spécifiées dans ce fichier et les autres
fichiers comme
/etc/rc et /etc/netstart ne font
que l'inclure.
Regardez dans le fichier /etc/sysconfig
et changez les valeurs nécessaires pour configurer votre
système. Ce fichier inclut des commentaires indiquant les valeurs à
mettre.
Pour les versions 2.2.1 et suivantes, le fichier
/etc/sysconfig a été renommé en
rc.conf et a été épuré au passage. Le fichier
/etc/netstart a aussi été renommé en
rc/network comme cela tous les fichiers peuvent être
copiés grâce à une seule commande : cp
/usr/src/etc/rc* /etc .
Le fichier /etc/rc.local existe
toujours et peut être utilisé pour démarrer des services additionnels
comme INN ou pour
positionner certaines valeurs.
Le fichier /etc/rc.serial permet
d'initialiser les ports série (par exemple mettre en place les
caractéristiques du port, etc..).
Le fichier /etc/rc.i386 est
spécifique aux paramètres des plateformes Intel, comme l'émulation
iBCS2 ou la configuration de la console système d'un PC.
Avec la version 2.1.0R, vous pouvez définir des fichiers de
démarrage "locaux" se trouvant dans un répertoire spécifié dans le
fichier /etc/sysconfig (ou le fichier
/etc/rc.conf ):
# Emplacement des fichiers de démarrage locaux
local_startup=/usr/local/etc/rc.local.d
Chaque fichier se terminant par .sh
sera éxécuté dans l'ordre alphabétique.
Si vous voulez vous assurez d'un certain ordre de
démarrage sans changer le nom des fichiers, vous pouvez utiliser un
schéma similaire à celui qui suit, en faisant précéder chaque fichier
de chiffres pour assurer l'ordre de démarrage:
10news.sh
15httpd.sh
20ssh.sh
Cela peut vous sembler un peu laid (ou SysV :-)) mais cela
fournit une façon simple pour les packages locaux ajoutés sans être
obligé d'éditer /etc/rc.local . La plupart des
ports ou des packages assument que le répertoire
/usr/local/etc/rc.d permet le démarrage des programmes
locaux.
Comment ajouter simplement un utilisateur ?
Utilisez la commande adduser
Il existe aussi un autre outil nommé
``new-account'' écrit en Perl par Ollivier Robert . Demandez le
lui. Cet outil est actuellement en cours de développements supplémentaires
Pour retirer un utilisateur, utilisez la commande rmuser .
Comment ajouter un nouveau disque dur à mon système FreeBSD ?
Voyez le tutoriel sur le formatage des
disques dur.
Comment utiliser mon nouveau disque amovible ?
Que ce soit un disque amovible de type ZIP ou EZ (ou
même une disquette), ou un disque dur, une fois installé et
reconnu par le système et que vous avez inséré une cartouche/disquette, la
manipulation est la même pour tous les périphériques.
(Cette section est basée sur la FAQ des lecteurs ZIP de Mark Mayo)
Si c'est un disque ZIP ou une disquette DOS, il y a déjà un système de fichier DOS installé, vous pouvez utilisez les commandes suivantes:
mount -t msdos /dev/fd0c /floppy
s'il s'agit d'une disquette; ou:
mount -r msdos /dev/sd2s4 /zip
s'il s'agit d'un lecteur ZIP dans sa configuration d'origine.
Pour les autres types de disques, voyez leur partitionnement en utilisant fdisk ou /stand/sysinstall .
Les exemples qui suivent supposent que vous disposez d'un disque ZIP sur sd2, le troisième disque SCSI.
Si votre disque amovible n'est pas une disquette, ou tout autre disque amovible que vous ne désirez par partager avec d'autres personnes, il vaut mieux mettre un système de fichiers BSD dessus. Vous pourrez avoir des noms longs, une amélioration de performances et une meilleur stabilité. Pour commencer, vous devez effacer la partition ou le système de fichiers DOS. Vous pouvez utiliser l'utilitaire fdisk ou /stand/sysinstall , ou pour un disque d'une petite capacité, détruire la table des partitions FAT et utiliser le partitionnement BSD standard :
dd if=/dev/zero of=/dev/rsd2 count=2
disklabel -Brw sd2 auto
Vous pouvez utiliser disklabel ou /stand/sysinstall pour créer plusieurs partitions BSD. Vous effectuerez probablement ces opérations si vous ajoutez de l'espace de "swap" sur un disque fixe, mais il est inconcevable de le faire sur un disque amovible ZIP.
Pour finir construisez un nouveau système de fichier, utilisant tout l'espace disponible sur votre lecteur ZIP :
newfs /dev/rsd2c
et montez le :
mount /dev/sd2c /zip
C'est surement une bonne idée d'ajouter la ligne suivante au fichier /etc/fstab , cela vous permettra de ne taper que "mount /zip" par la suite :
/dev/sd2c /zip ffs rw,noauto 0 0
Comment monter une partition DOS étendue ?
Les partitions DOS étendues se trouvent après la fin de toutes les partitions primaires. Par exemple, si vous avez une partition "E" en tant que partition DOS étendue sur le deuxième disque SCSI, vous devez créer le fichier spécial pour la partition 5 dans /dev et monter /dev/sd1s5 :
# cd /dev
# ./MAKEDEV sd1s5
# mount -t msdos /dev/sd1s5 /dos/e
Puis-je monter d'autres systèmes de fichiers sous FreeBSD ?
Les CDROM Digital UNIX
au format UFS peuvent être montés directements sous FreeBSD. Il peut
être très difficile, par contre, de monter des partitions disques de
Digital UNIX, ou d'autres systèmes supportant l'UFS. Cela dépend des
partitionnements effectués sur le système en question.
Linux: Les version 2.2 et
supérieures incluent le support des partitions
ext2fs . Pour plus d'informations voyez la page de manuel
de
mount_ext2fs .
Toute autre information sur le sujet est appréciée.
Comment utiliser le programme de démarrage de NT pour démarrer FreeBSD ?
Il faut pour cela copier le premier secteur de votre
partition FreeBSD dans un fichier sur une partition DOS/NT. Nous
supposerons qu'il s'appelle c:\bootsect.bsd
(équivalent de c:\bootsect.dos
). Il suffit d'éditer le fichier
c:\boot.ini pour qu'il ressemble à ceci:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
C:\BOOTSECT.BSD="FreeBSD"
C:\="DOS" Cette
procédure implique que DOS, NT ou FreeBSD soient installés sur le
même disque. Dans mon cas DOS et NT sont installés
respectivement sur la première partition du disque et FreeBSD sur la
seconde. FreeBSD est aussi configuré pour démarrer depuis sa partition
et non depuis le MBR du
disque.
Monter une disquette préformatée DOS (si vous cette
partition n'est pas en FAT, mais en NTFS) sous /mnt
.
dd if=/dev/rsd0a of=/mnt/bootsect.bsd bs=512 count=1
Redémarrez en mode DOS ou NT. Si vous
avez une partition NTFS copiez le fichier bootsect.bsd
de la disquette dans le répertoire C:\. Modifiez les
attributs (permissions) du fichier boot.ini.
attrib -s -r c:\boot.ini
Ajoutez la ligne correcte au fichier boot.ini et
restaurez les anciens attributs.
attrib -s -r c:\boot.ini
Si FreeBSD démarre depuis le MBR, restaurez-le avec
la commande DOS fdisk /MBR après avoir
reconfiguré FreeBSD pour démarrer depuis sa partition native.
Comment démarrer FreeBSD et Linux grace à LILO ?
Si vous avez installé FreeBSD et Linux sur le mème disque,
suivez les instructions du manuel de LILO pour démarrer sur d'autres
systèmes que Linux. En résumé il faut :
Démarrer sous Linux et ajouter les lignes suivantes au
fichier /etc/lilo.conf :
other=/dev/hda2
table=/deb/hda
label=FreeBSD
(l'exemple précédant suppose que la partition FreeBSD
est connue par linux sous le nom /dev/hda2 .
Ensuite lancez lilo sous root, et c'est
fini.
Si FreeBSD se trouve sur un autre disque vous devez
ajouter loader=/boot/chain.b au fichier de
configuration de lilo :
other=/dev/sdb4
table=/dev/sdb
loader=/boot/chain.b
label=FreeBSD
Dans certains cas, vous devez spécifier le numéro du disque connu par
le BIOS au programme de démarrage de FreeBSD pour démarrer sur le
deuxième disque. Par exemple, si votre disque SCSI contenant FreeBSD
est trouvé par le BIOS comme disque numéro 1, vous devez taper la ligne
suivante au prompt du programme de démarrage:
Boot: 1:sd(0,a)/kernel
Vous pouvez configurer le programme de
démarrage de FreeBSD version 2.2.5 ou supérieure pour prendre
cette chaine par défaut.
Le document Linux+FreeBSD
mini-HOWTO est une très bonne référence sur
l'interopérabilité entre FreeBSD et Linux.
Comment démarrer FreeBSD et Linux depuis BootEasy ?
Il faut installer LILO au début de votre partition de
démarrage de Linux au lieu du MBR. Vous pouvez alors démarrer LILO
depuis BootEasy.
Si vous utilisez Linux et Windows-95, c'est la meilleur
façon d'installer LILO si vous voulez continuer à démarrer Linux après
avoir réinstallé Windows-95 (qui lui ne tient pas contre des autres
systèmes et se croit seul sur le MBR).
Est-ce dangereux d'utiliser un disque dédié ?
La procédure d'installation vous permet de choisir deux
façons différentes pour partitionner vos disques. Par défaut, elle
permet de les rendre compatibles avec d'autres systèmes d'exploitation
se trouvant sur votre ordinateur en utilisant les entrées des tables
de fdisk (appelés "slices" sous FreeBSD), en faisant en sorte qu'une
"slice" FreeBSD corresponde à une partition. Vous pouvez aussi
installer un selecteur de démarrage pour choisir de démarrer sous un
autre système d'exploitation.
Comme ceci correspond à la plupart des cas de personnes
venant des PC, les personnes venant d'Unix et qui désirent mettre en
place une machine pour y faire tourner FreeBSD et juste FreeBSD,
utilisent la procédure classique d'installation d'Unix, ou Unix
utilise le disque au complet, du premier secteur au dernier. Une
véritable table pour fdisk n'est d'aucune utilité dans le vas d'une
machine utilisant FreeBSD 24h/24, 7jours sur 7, car aucun autre
système d'exploitation ne sera démarré. Donc si vous sélectionnez
``A)ll FreeBSD '' dans l'éditeur de partition du programme
d'installation et répondez ``No'' à la question qui suit, vous serez
dans ce cas. Notez que cela implique que le programme de
démarrage BSD correspond au MBR de ce disque. N'essayez pas d'en
réinstaller un sous peine de détruire le précédent.
Donc pourquoi est-ce donc ``dangereux'' ? Un disque
configuré de la sorte ne contient pas de table fdisk valides, pour la
plupart des utilitaires PC. Suivant la façon dont ils ont été conçus,
ils vous avertissent ou tout simplement ne disent rien et détruisent
le programme de démarrage BSD sans avertissement. Certains systèmes
d'exploitation très utilisés sur PC, sont connus pour agir de la
sorte (bien sûr, ils agissent de la sorte sous le couvert de système
"orienté-utilisateur"). Au moins un BIOS de chez Award, qui est par
exemple utilisé sur les HP Netserver (mais sur d'autre systèmes
aussi), est connu pour ignorer tout disque dur n'ayant pas de table
fdisk valide. Lorsque votre machine démarre il ignore tout simplement
de tels disques, tente de démarrer sur une disquette, et vous affiche
un ``Read error''. Très impressionnant, non ?. C'est ce que certains
appellent un système "orienté-utilisateur".
Les avantages de ce partitionnement sont : FreeBSD utilise
le disque au complet, il n'y a donc pas de besoin de garder quelques
'pistes' au début du disque qui ne servaient à rien sauf pour un
modèle de partitionnement vieux et simpliste qui n'a maintenant plus
aucun sens. Ces contraintes étant ce que l'on peut appeler la plus
grosse prise de tête lors de l'installation des systèmes
d'exploitations sur PS, et qui menaient le plus souvent à deux façon
complètement redondantes de stockage des informations dans les tables
fdisk. Voyez le chapitre sur ``Missing
Operating System'' . Dans le cas d'un disque ``dangereusement dédié'',
le programme de démarrage BSD commence au secteur 0, qui est le seul
secteur ne changeant de valeur C/H/S, pour les valeurs du disque du
BIOS. Vous pouvez donc, dans ce cas, interchanger des disques entre
plusieurs controleurs ou systèmes utilisant des schémas de translation
différents sans vous poser de questions.
Pour passer d'un disque ``dangereusement dédié'' à un
disque normal de PC, il y a deux solutions simples. La première est de
recouvrir le MBR d'octets vides, pour permettre de faire croire que le
disque est vierge. Pour pouvez le faire de la façon suivante:
dd if=/dev/zero of=/dev/rds0 count=15
Ou en utilisant une fonctionnnalité non-documentée de DOS :
fdisk /mbr qui installe aussi un
nouveau MBR, en recouvrant le programme de démarrage BSD.
Comme faire pour ajouter plus de "swap" ?
La meilleur façon de faire, est d'augmenter la taille de
votre partition de swap, ou de prendre cette excuse pour ajouter un
autre disque.
Ajouter du "swap" sur un autre disque permet plus d'augmenter
la rapidité que d'en ajouter sur le même disque. Par exemple, si
vous compilez des fichiers qui se trouvent sur un disque et que le "swap"
se trouve sur un autre disque, cela va beaucoup plus vite d'avoir
le "swap" et les sources sur le même disque. Ceci est
spécialement vrai pour les disques SCSI.
Les disques IDE ne permettent pas l'accès à deux disques
sur le même canal au même moment (FreeBSD ne supporte pas
le mode 4, donc toutes les entrées/sorties disques sont
``programmées''). Je vous suggère de mettre le "swap" sur un autre
disque aussi. Les disques durs sont si peu couteux, que cela ne vaut
pas le coup de tout mettre sur un.
C'est une très mauvaise idée de mettre le fichier de
"swap" sur une partition NFS, sauf si vous disposez d'un environnement
réseau extrèmement rapide, et d'un très bon serveur NFS.
Voici un exemple pour ajouter 64Mo de swap en utilisant un
fichier se nommant /usr/swap0 .
Assurez vous que votre noyau est compilé avec la ligne
pseudo-device vn 1 # #Vnode driver (turns a file into a device)
Le noyau GENERIC la contient par
défaut.
Créez un vn-device :
cd /dev
sh./MAKEDEV vn0
Créez le fichier de "swap" (/usr/swap0 ).
dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
Activez le fichier de "swap" dans le fichier
/etc/rc.conf
swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
Rebootez la machine
Pour activer le fichier de "swap" immédiatement, tapez
vnconfig -ce /dev/vn0c /usr/swap0 swap
J'ai des problèmes pour installer mon imprimante.
Référez-vous à la section sur les imprimantes du Handbook . Elle
couvre l'essentiel des problèmes que l'on peut rencontrer.
Le clavier est mal configuré sur mon ordinateur.
Le programme kbdcontrol comporte une
option permettant de charger une configuration clavier différente.
Vous trouverez dans /usr/share/syscons/keymaps
différents fichiers de configuration. Choisissez celle voulue et
chargez la : kbdcontrol -l fr.iso
Dans tous les cas le programme kbdcontrol
recherche dans /usr/share/syscons/keymaps un
fichier se terminant par .kbd .
Vous pouvez le configurer dans le fichier
/etc/sysconfig (ou rc.conf ).
Regardez les commentaires apropriés dans ce fichier.
Pour les versions 2.0.5 et suivantes, tout ce qui est
relatif aux fontes du texte, à la configuration du clavier se trouve dans
/usr/share/syscons .
Actuellement les configurations de claviers suivantes sont supportées :
Belgian ISO-8859-1
Brazilian 275 keyboard Codepage 850
Brazilian 275 keyboard ISO-8859-1
Danish Codepage 865
Danish ISO-8859-1
French ISO-8859-1
German Codepage 850
German ISO-8859-1
Italian ISO-8859-1
Japanese 106
Japanese 106x
Latin American
Norwegian ISO-8859-1
Polish ISO-8859-2 (programmer's)
Russian Codepage 866 (alternative)
Russian koi8-r (shift)
Russian koi8-r
Spanish ISO-8859-1
Swedish Codepage 850
Swedish ISO-8859-1
Swiss-German ISO-8859-1
United Kingdom Codepage 850
United Kingdom ISO-8859-1
United States of America ISO-8859-1
United States of America dvorak
United States of America dvorakx
Comment faire en sorte que les quotas utilisateurs fonctionnent correctement ?
Ne mettez pas de quotas sur '/',
Mettez le fichier des quotas sur le système de fichiers
qui en dispose, par ex :
Système de fichier Emplacement du fichier des quotas
/usr /usr/admin/quotas
/home /home/admin/quotas
...
Qu'est-ce qui ne va pas avec ma configuration de ccd ?
Le symptome est le suivant :
# ccdconfig -C
ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format
#
Ceci apparait la plupart du temps lorsque vous essayez de
concaténer les partitions ``c'', qui par défaut ont comme type
``unused''. Le gestionnaire de disque ccd nécessite que le type de la
partition soit de type FS_BSDFFS. Dans ce cas, éditez le label des
disques à concaténer et changez le type des partitions en type
``4.2BSD''.
Pourquoi je ne peux pas éditer le label de mes disques concaténés ?
Le symptome est le suivant :
# disklabel ccd0
(ça affiche quelque chose de particulier ici, donc essayons de l'éditer)
# disklabel -e ccd0
(édition, sauvegarde, sortie)
disklabel: ioctl DIOCWDINFO: No disk label on disk;
use "disklabel -r" to install initial label
#
Cela apparait souvent lorsque le label retourné par le
gestionnaire de disques concaténé est un faux, un qui n'est pas
véritablement sur le disque. Pour résoudre ce problème il faut écrire
explicitement sur le disque, comme ceci :
# disklabel ccd0 > /tmp/disklabel.tmp
# disklabel -Rr ccd0 /tmp/disklabel.tmp
# disklabel -e ccd0
(maintenant cela doit fonctionner correctement)
Est-ce que FreeBSD supporte les communications inter-processus de type Système V (IPC) ?
Oui, FreeBSD supporte les communications inter-processus
de type Système V, IPC. Cela inclue la mémoire partagée, les files de
messages et les sémaphores. Vous devez ajouter les lignes suivantes à
votre fichier de configuration du noyau pour les activer :
options SYSVSHM
options "SHMMAXPGS=64" # 256Ko de mémoire partagée
options SYSVSEM # activation des sémaphores
options SYSVMSG # activation des files de messages
Recompilez le noyau et installez le.
Note : Vous aurez sûrement
besoin d'augmenter SHMMAXPGS à un nombre plus élevé, comme 4096 (16M!)
si vous avez besoin d'utiliser GIMP. 256Ko est largement suffisant
pour la mémoire partagée dont à besoin X11R6.
Comment configurer sendmail pour fonctionner avec UUCP ?
La configuration de sendmail fournie avec FreeBSD,
correspond à un site directement connecté à l'Internet. Les sites qui
utilisent UUCP pour échanger du courrier électronique doivent
installer un autre fichier de configuration pour sendmail.
Modifier directement le fichier
/etc/sendmail.cf est réservé la plupart du temps aux
gourous. La version 8 de sendmail dispose d'une interface m4 de génération
du fichier de configuration, qui encapsule le fichier de configuration
dans un format abstrait de haut niveau. Vous devez trouvez les
différents fichiers de configuration dans le répertoire
/usr/src/usr.sbin/sendmail/cf .
Si vous n'avez pas installé tous les sources du système,
vous pouvez trouver les différents fichiers de configuration de
sendmail dans un fichier séparé des autres sources sur le CD-ROM. Si
vous avez monté le CD-ROM exécutez les commandes suivantes :
cd /usr/src
tar -xvzf /cdrom/dists/src/ssmailcf.aa
Cela correspond juste à une centaine de kilo-octets. Le
fichier README dans le répertoire
cf vous explique rapidement comment fonctionnne
m4.
Pour utiliser UUCP, vous devez utiliser la fonctionnnalité
mailertable . Elle permet à sendmail de constituer
une base de données pour lui permettre de router le courrier
correctement.
Pour commencer, vous devez créer une fichier de
configuration .mc . Tous ces types de fichiers se
trouvent dans le répertoire
/usr/src/usr.sbin/sendmail/cf/cf . Il y a quelques
fichiers d'exemples dans ce répertoire pouvant vous aider. En
supposant que vous avez appelé ce fichier foo.mc ,
tout ce que vous devez faire pour le convertir en un
fichier valide de configuration de sendmail,
sendmail.cf est :
cd /usr/src/usr.sbin/sendmail/cf/cf
make foo.cf
cp foo.cf /etc/sendmail.cf
Un fichier classique ressemble à ceci:
include(`../m4/cf.m4')
VERSIONID(`Votre numéro de version)
OSTYPE(bsd4.4)
FEATURE(nodns)
FEATURE(nocanonify)
FEATURE(mailertable)
define(`UUCP_RELAY', nom.du.relai.uucp)
define(`UUCP_MAX_SIZE', 200000)
MAILER(local)
MAILER(smtp)
MAILER(uucp)
Cw alias.de.votre.nom.de.machine
Cw votrenomdenoeuduucp.UUCP
Les directives nodns et
nocanonify forcent sendmail à ne pas utiliser le
DNS lors de l'envoi du courrier. La directive
UUCP_RELAY est utilisée pour des raisons assez
bizarres; ne posez pas de questions et utilisez-la. Mettez juste un nom
de machine capable de recevoir du courrier en UUCP. La plupart du
temps il faut mettre le nom du serveur de messagerie de votre
fournisseur d'accès.
Après avoir défini tout ceci, vous avez besoin d'un
fichier /etc/mailertable . Voici un exemple de ce
type de fichier :
#
# makemap hash /etc/mailertable.db < /etc/mailertable
#
horus.interface-business.de uucp-dom:horus
.interface-business.de uucp-dom:if-bus
interface-business.de uucp-dom:if-bus
.heep.sax.de smtp8:%1
horus.UUCP uucp-dom:horus
if-bus.UUCP uucp-dom:if-bus
. uucp-dom:sax
Les trois premières lignes font en sorte d'envoyer
le courrier à des serveurs UUCP ``voisins'' et non pas au serveur par
défaut, pour permettre de racourcir le temps d'envoi des messages. La
ligne suivante permet d'envoyer le courrier sur le domaine local en
protocole SMTP. Et pour finir, les ``voisins'' UUCP sont mentionner
dans la la notation de domaine .UUCP, permettant au format de mail
``voisin-uucp!destinataire'' d'écraser les règles par défaut. La
dernière ligne doit toujours être un ``.'', qui représente toutes les
destinations, qui doit correspondre à un serveur de messagerie UUCP
voisin, et qui sert de passerelle de courrier éléctronique vers le
reste du monde. Tous les noms de noeuds se trouvant après le mot clé
uucp-dom: doivent être des noms valides de voisins
UUCP, que vous pouvez vérifier en utilisant la commande
uuname
Pour vous rappeler que ce fichier doit être converti en
fichier DBM pour pouvoir être utilisé, la ligne de commande
nécessaire à sa création est rappelée dans les commentaires du fichier
mailertable. Vous devez lancer cette commande à chaque fois que vous
changez quelque chose dans ce fichier.
Pour finir : si vous n'etes pas certain de votre
configuration d'envoi de messages électroniques, rappellez-vous
l'option -bt de sendmail. Cela lance sendmail en
mode test ; entrez simplement ``0 '' suivi de
l'adresse que vous voulez tester. La dernière ligne vous indiquera
alors le type d'agent utilisé pour l'envoi, la machine auquelle
l'agent enverra le courrier, et l'adresse à laquelle il l'enverra. Pour
quitter ce mode tapez Control-D.
j@uriah 191% sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> 0 foo@interface-business.de
rewrite: ruleset 0 input: foo @ interface-business . de
...
rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \
< @ interface-business . de >
> ^D
j@uriah 192%
Comment mettre en oeuvre le courrier électronique avec une connexion temporaire à un réseau ?
Si vous disposez d'un adresse IP statique, vous ne devez rien changer. Definissez juste votre nom de machine pour qu'il corresponde à votre nom de machine internet et sendmail s'occupera du reste.
Dans le cas ou vous disposez d'une adresse IP
dynamiquement assignée et que vous utilisez une connexion ppp pour
accèder à l'internet, vous diposez probablement d'une boite aux
lettres chez votre fournisseur d'accès. Prenons comme exemple que le
domaine de votre fournisseur soit monISP.com , que
votre nom d'utilisateur soit monlogin , que votre nom
de machine soit bsd.perso et que votre
fournisseur vous aie indiqué la machine
relai.monISP.com comme serveur relai de
messagerie électronique.
Pour pouvoir recevoir votre courrier depuis votre boite à
lettres, vous devez installer un agent de rapatriement de
mail.Fetchmail est un bon choix, car
il supporte la plupart des protocoles de messagerie. La plupart du
temps, votre fournisseur offre l'accès à travers le protocole POP3. Si
vous avez décidé d'utiliser la partie utilisateur de ppp, vous pouvez
automatiquement rapatrier votre courrier lorsque la connexion vers le
réseau est établie en ajoutant la ligne suivante au fichier
/etc/ppp/ppp.linkup :
MYADDR:
!bg su monlogin -c fetchmail
Ici nous assumons que vous disposez d'un compte nommé
monlogin sur la machine
bsd.perso . Vous devez alors créer un fichier
.fetchmailrc dans votre répertoire principal
contenant :
poll monISP.com protocol pop3 fetchall pass monPasswd:
Naturellement, ce fichier ne doit être lisible que par
l'utilisateur monlogin car il contient le mot de
passe monPasswd .
Pour permettre d'envoyer du courrier avec l'entête
from: correcte, vous devez configurer
sendmail pour utiliser l'adresse
monlogin@monISP.com plutôt que
monlogin@bsd.perso . Vous devez aussi dire à votre
sendmail d'envoyer tout le courrier via le serveur
relai.monISP.com , permettant au courrier
d'être envoyé plus rapidement.
Le fichier de configuration .mc suivant doit convenir :
VERSIONID(`bsd.perso.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
Cwlocalhost
Cwbsd.perso
MASQUERADE_AS(`monISP.com')dnl
FEATURE(allmasquerade)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(nocanonify)dnl
FEATURE(nodns)dnl
define(SMART_HOST, `relai.monISP.com')
Dmbsd.perso
define(`confDOMAIN_NAME',`bsd.perso')dnl
define(`confDELIVERY_MODE',`deferred')dnl
Reférez-vous à la section précédente pour l'explication
détaillée de conversion du fichier .mc en fichier
sendmail.cf . N'oubliez pas non plus de redémarrer
sendmail après avoir modifié le fichier
/etc/sendmail.cf
Horreur !! J'ai perdu le mot de passe de root !!
Ne paniquez pas! Redémarrez tout simplement le système en
tapant -s au "prompt" Boot: pour passer en mode mono-utilisateur. A la
question sur le shell à utiliser, appuyez sur ENTREE. Vous obtiendrez
alors un prompt "#". Tapez la commande mount -u
pour remonter votre partition primaire en lecture/écriture et lancez
la commande mount -a pour remonter tous les
systèmes de fichiers. Tapez passwd root pour
changer le mot de passe root puis tapez exit pour
continuer le processus de démarrage du système.
Comment empècher le redémarrage du système en appuyant sur les touches Control-Alt-Delete ?
Editez le fichier de configuration du clavier que vous
utilisez pour la console et remplacez le mot clé
boot par nop . Le fichier de
configuration du clavier utilisé par défaut est
/usr/share/syscons/keymaps/us.iso.kbd . Vous
pouvez changer la configuration en éditant le fichier
/etc/rc.conf . Bien sur si vous utilisez une autre
configuration, il faut éditer le fichier de configuration la
décrivant.
Comment transformer les fichiers textes au format DOS en fichiers UNIX ?
Utilisez tout simplement la commande perl suivante :
perl -i.bak -pe 's/\r\n/\n/g' fichier.dos ...
fichier.dos étant le fichier à modifier. Cette commande
remplace dans le fichier et sauvegarde l'ancien sous le nom
fichier.dos.bak .
Comment tuer un processus par son nom ?
Utilisez killall(1)
Pourquoi la commande su me dit sans arrêt que je ne suis pas dans les ACL de root ?
Cette erreur vient du système d'authentification distribué
Kerberos. Ceci n'est pas un problème très grave. Un palliatif consiste
à utiliser l'option "-k" de su ou de désinstaller Kerberos comme
expliqué à la section suivante.
Comment désinstaller Kerberos ?
Pour désinstaller Kerberos de votre système, vous devez
réinstaller la distribution bin depuis votre
version de FreeBSD. Si vous disposez d'un CDROM, vous devez monter le
cd (la plupart du temps dans /cdrom) et lancer :
cd /cdrom/bin
./install.sh
Comment ajouter des pseudo-terminaux au système ?
Si vous avez un grand nombre de telnet, ssh, X, or screen users,
vous risquez probablement de manquer de pseudo-terminaux.
Voici comment en ajouter plusieurs :
Créer et installer un nouveau noyau avec la ligne
pseudo-device pty 256
dans le fichier de configuration.
Exécuter la commande :
# cd /dev
# ./MAKEDEV pty{1,2,3,4,5,6,7}
pour créer 256 device nodes pour les nouveaux terminaux.
Editer /etc/ttys et
jouter une ligne pour chacun des 256 terminaux.
Elles doivent correspondre à la forme des entrées existantes.
c'est à dire ressembler à :
ttyqc none network
L'ordre des lettres de désignation est
tty[pqrsPQRS][0-9a-v] ,
en utilisant une expression régulière.
Démarrez le système avec le nouveau noyau
et vous êtes prêts à travailler.
Le système X-Windows et les consoles
virtuelles. **Mise à jour en cours**
Je veux lancer X, comment dois-je faire ?
La manière la plus simple est de spécifier au moment de
l'installation que l'on veut utiliser X.
Puis, lire la documentation suivante sur l'outil
xf86config , qui vous aidera dans la configuration de
XFree86(tm) pour vos cartes graphiques, souris etc...
Vous pouvez aussi regarder du côté du serveur Xaccel qui est disponible
pour un prix très raisonnable/ Voir la section sur
Xi Graphics pour plus de détails.
-
- Pourquoi ma souris ne marche pas sous X ?
+
+ Pourquoi ma souris ne marche pas sous X ?
Si vous utilisez syscons (le driver par défaut de la console),
vous pouvez configurer FreeBSD de telle sorte qu'il puisse supporter un
pointeur de souris sur chacun des écrans virtuels. Afin d'éviter des
conflits avec X, les supports syscons un périphérique virtuel nommé
``/dev/sysmouse ''.
Tous les évènement liés à la souris sont écrit vers le périphérique
sysmouse, en utilsant le protocole MouseSystems. Si vous voulez utiliser
votre souris sur une console virtuelle ou plus,
et utiliser X, la configuration suivante
est recommandée.
/etc/rc.conf:
moused_type=ps/2 # or whatever your actual type is
moused_port=/dev/psm0 # or whatever your real port is
moused_flags=
/etc/XF86Config
Section Pointer
Protocol "MouseSystems"
Device "/dev/sysmouse"
.....
Certaines personnes préfèrent utiliser ``/dev/mouse ''
sous X. Ppour le faire marcher, ``/dev/mouse ''
devrait être un lien symbolique pour
/dev/sysmouse
cd /dev
rm -f mouse
ln -s sysmouse mouse
les menus X Window et les boîtes de dialogue ne marchent pas bien!
Essayez de désactiver la touche Num Lock.
Si votre touche Num Lock est activée par défaut au moment du boot, vous
pouvez ajouter la ligne suivante dans la section
``Keyboard '' du fichier
XF86config .
Let the server do the NumLock processing. This should only be
required when using pre-R6 clients
ServerNumLock
Qu'est ce qu'une console virtuelle, et comment puis-je en avoir plus ?
En gros, les consoles virtuelles vous permettent d'avoir plusieurs
sessions simultanées sur la même machine sans faire de trucs compliqués
du genre monter un réseau, ou lancer X.
Quand le système démarre, il vous affichera une invite de login sur le
moniteur juste après avoir affiché les messages du boot. Vous pouvez
taper votre login et votre mot de passe et commencer à travailler (ou à
jouer !) sur la première console virtuelle.
A un moment, vous voudrez probablement ouvrir une autre session, par
exemple pour lire la documentation d'un programme que vous êtes en train
d'exécuter, ou alors lire le courrier en attendant qu'un transfert FTP
se termine. Fais juste Alt-F2 (Appuyez en maintenant la touche Alt
puis, pressez F2), et vous trouverez une invite de login vous attendant
sur la seconde ``console virtuelle ''! Quand vous voudrez revenir à la
session de départ, faites Alt-F1.
L'installation par défaut de FreeBSD a 3 consoles virtuelles activées,
et Alt-F1, Alt-F2, et d Alt-F3 vous permettra de basculer entre ces
consoles virtuelles.
Pour en activer plus, éditez
/etc/ttys
et ajoutez les entrées pour ``ttyv4 ''
à
``ttyvc '' après les commentaires sur les ``terminaux virtuels'':
Edit the existing entry for ttyv3 in /etc/ttys and change
"off" to "on".
ttyv3 "/usr/libexec/getty Pc" cons25 on secure
ttyv4 "/usr/libexec/getty Pc" cons25 on secure
ttyv5 "/usr/libexec/getty Pc" cons25 on secure
ttyv6 "/usr/libexec/getty Pc" cons25 on secure
ttyv7 "/usr/libexec/getty Pc" cons25 on secure
ttyv8 "/usr/libexec/getty Pc" cons25 on secure
ttyv9 "/usr/libexec/getty Pc" cons25 on secure
ttyva "/usr/libexec/getty Pc" cons25 on secure
ttyvb "/usr/libexec/getty Pc" cons25 on secure
Utilisez en autant que vous voulez/ Mais plus vous avez de terminaux
virtuels, plus vous utilisez de ressources; cela peut-être important si
vous avez 8Mo de RAM ou moins. Vous pouvez aussi changer
``secure '' to `` insecure ''.
NOTE IMPORTANTE si vous
voulez lancer un serveur X, vous DEVEZ
avoir au moins un terminal virtuel non utilisé (ou désactivé)afin qu'il
puisse l'utiliser.
Tout cela pour dire que si vous voulez une invite de prompt pour les tous
les 12 de vos touches Alt-fonctions, pas de chance, vous pourrez le faire
que pour 11 d'entre eux si vous voulez aussi lancer un serveur X sur cette
machine.
La meilleure façon de désactiver une console est de la déselectionner.
Par exemple, si vous avez alloué tous les 12 terminaux mentionné
ci-dessus, et que vous voulez lancer X, vous aurez à changer le réglage
pour le terminal virtuel 12 de :
ttyvb "/usr/libexec/getty Pc" cons25 on secure
à:
ttyvb "/usr/libexec/getty Pc" cons25 off secure
Si votre clavier n'a que 10 touches de fonctions, vous pouvez terminer
par :
ttyv9 "/usr/libexec/getty Pc" cons25 off secure
ttyva "/usr/libexec/getty Pc" cons25 off secure
ttyvb "/usr/libexec/getty Pc" cons25 off secure
(Vous pouvez aussi juste effacer ces lignes)
Une fois que vous avez édité
/etc/ttys" ,
l'étape suivante est de s'assurer que vous avez assez de périphériques de
terminaux virtuels.
La plus simple manière de procéder est :
cd /dev
./MAKEDEV vty12 # For 12 devices
Ensuite, la plus simple (et plus propre) manière d'activer la console
virtuelle est de rebooter. Malgrè tout, si vous voulez vraiment
ne pas avoir è rebooter, vous pouvez juste arrêter le système X Window
et exécuter root .
kill -HUP 1
Il est impératif d'arrêter complètement X Window s'il est en train de
marcher, avant de lancer cette commande. Si vous ne le faite pas, votre
système, se trouvera probablement suspendu/bloqué après le lancement de
la commande kill.
Comment accéder à mes consoles virtuelles depuis X ?
Si la console est actuellement en train d'afficher X Window, vous pouvez
utiliser Ctrl-Alt-F1, etc. pour passer d'une console à une autre.
Notez cependantm qu'une fois que vous avez basculé depuis X Window vers un
terminal virtuel, vous ne pouvez utiliser seulement les touches de fonctions
Alt- pour passer à un autre terminal virtuel ou revenir è X Window.
Vous n'avez pas à maintenir enfoncé la touche Ctrl. Si vous utilisez la
touche contrôle pour revenir a X sur certaines vieilles versions, vous
pouvez retrouver votre console texte bloquée en mode ``control-lock''
Taper la touche contrôle à nouveau pour le débloquer.
Comment démarrer XDM au boot ?
Il y a deux écoles de pensée à propos du démarrage de
xdm
Une école démarre xdm epuis
/etc/ttys en utilisant l'exemple fourni.
tandis que l'autre lance simplement xdm depuis
rc.local
depuis un script X.sh
dans /usr/local/etc/rc.d .
Les deux approches sont valides, et suivant les situations, une méthode
peut marcher et pas l'autre. Dans les deux cas, le résultat est le même :
X fera apparaître une incite de login graphique.
La méthode du ttys a l'avantage de documenter quel vty X va démarrer et
en passant la responsabilité de redémarrer le serveur X au logout pour
s'initialiser. La méthode rc.local rend la destruction par un kill de
xdm très facile si jamais un problème de démarrage du serveur X était
rencontré.
Si xdm est chargé depuis /etc/rc.local,
il peut-être démarré avec n'importe quel argument (i.e comme un démon).
Une version précédente de la FAQ disait d'ajouter les
vt que vous vouliez que X utilise dans le
fichier
/usr/X11R6/lib/X11/xdm/Xservers . Cela n'est pas
nécessaire, et X utilisera le premier
vt qu'il trouvera.
Quand je lance xconsole, j'obtiens ``Couldn't open console''
Si vous démarrez
X
avec
startx ,
les permissions sur /dev/console ne seront pas changé, ce qui entraînera que
xterm -C
et xconsole ne marcheront pas.
Cela est dû à la manière dont les droits sur la consoles sont
fixés par défaut.
Sur un système multi-utilisateur, on ne veut pas nécessairement que
n'importe quel utilisateur ait la possibilité d'écrire sur la console
système. Pour les utilisateurs qui se logguent directement sur la
machine avec un VTY, le fichier
fbtab
est là pour résoudre ce problème.
En pratique, assurez vous d'avoir une ligne décommenté de la forme :
/dev/ttyv0 0600 /dev/console
dans/etc/fbtab et cela assurera que quiconque se
logguera sur
/dev/ttyv0 obtiendra les droits sur la console.
Ma souris PS/2 ne se comporte pas bien sous X.
Votre souris et votre pilote de souris ont dû se désynchroniser
Dans les versions 2.2.5 et avant, passer de X à un termical virtuel et
revenir à X ensuite , peuvent les re-synchroniser. Si le problème
apparaît souvent, vous pouvez ajouter l'option suivante dans votre
fichier de configuration du noyau, et recompiler.
options PSM_CHECKSYNC
voir la section sur
la construction du noyau
si vous n'avez aucune expérience dans la recompilation de noyau.
Avec cette option, vous aurez moins de chance d'avoir de problème de
synchronisation entre la souris et le pilote. Si, malgrès tout, vous aviez
ce problème, cliquez sur un bouton quelconque de la souris en maintenant
la souris jusqu'à resynchroniser la souris et le pilote.
Notez que malheureusement cette option peut ne pas marcher avec tous les
systèmes et vide la fonctionnalité ``TAP'' du périphérique ALPS GlidePoint
attaché auport souris PS/2
Dans les versions 2.2.6 et plus, la vérification de la synchronisation
est un peu mieux faite et est standard avec les pilotes souris PS/2.
Cela devrait même marcher avec GlidePoint. (comme le code de
vérification est devenu une fonctionnalité standard, l'option PSM_CHECKSYNC
n'est pas disponible dans ces versions). Malgrès il y a des rares
cas où le pilote peut de façon erronée repporter des problèmes de
synchronisation, et vous pourrez alors voir le message :
psmintr: out of sync (xxxx != yyyy)
et voir que votre souris ne marche pas correctement.
Si cela arrive, désactiver le mode de vérification de la synchronization
en positionnant le drapeau pour les pilotes de souris PS/2 à 0x100.
Entrez dans UserConfig en tapant ``-c '' option
à l'invite du boot.
boot: -c
Puis en ligne de comande de UserConfig , tapez :
UserConfig>flags psm0 0x100
UserConfig>quit
Ma souris PS/2 mouse de MouseSystems ne marche pas
Certains ont rapportés que certains modèles de souris PS/2 de MouseSystem
ne marchaient que lorsqu'ils étaient mis en mode ``haute résolution''.
D'un autre côté, le curseur de souris peut sauter d'une extrémité de
l'écran à l'autre très souvent.
Malheureusement, il n'y a pas de solution pour les versions 2.0.X et
2.1.X. Dans les versions 2.2 à 2.2.5, ajouter le patch suivant à
/sys/i386/isa/psm.c et reconstruisez le noyau. Voir
la section sur
la construction d'un noyau si
vous n'avez aucune expérience dans la construction des noyaux,
diff -u psm.c.orig psm.c
@@ -766,6 +766,8 @@
if (verbose >= 2)
log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n",
unit, i);
+ set_mouse_resolution(sc->kbdc, PSMD_RES_HIGH);
+
if 0
set_mouse_scaling(sc->kbdc); /* 1:1 scaling */
set_mouse_mode(sc->kbdc); /* stream mode */
Dans les versions 2.2.6 et plus, spécifier le drqpeau 0x04 au pilote de
souris PS/2 afin de mettre la souris en mode haute résolution.
Entrez dansUserConfig en spécifiant l'option
``-c '' à l'invite du boot.
boot: -c
puis, dans la ligne de commande deUserConfig
tapez :
UserConfig>flags psm0 0x04
UserConfig>quit
Voir les sections précédentes pour les autres causes
possibles de problèmes avec la souris.
Lorsque je construis une application X, imake dit qu'il ne trouve pas Imake.tmpl . Où est-t-il ?
Imake.tmpl est une partie du paquetage Imake, un outil de développement
standart sous X. Imake.tmpl,tout comme plusieurs fichiers d'en-tête qui sont
requis lors de la construction d'applications X est contenu dans la
distribution de programmes X. Vous pouvez l'installer depuis sysinstall
ou manuellement à partir des fichiers de distributions X.
Comment puis-je inverser les boutons de la souris ?
Lancez la commande
xmodmap -e "pointer = 3 2 1"
depuis votre .xinitrc ou .xsession.
Réseaux. **Mise à jour en cours**
Où puis-je trouver des informations sur le ``boot sans disque''?
Le ``boot sans disque'' veut dire que la machine sous FreeBSD est bootée depuis le
réseau, et lit les fichiers nécessaires depuis un serveur et non depuis
son disque dur. Pour plus de détails, lisez la section du Handbook sur le Diskless booting
Une machine sous FreeBSD peut-elle être utilisée comme routeur dédié ?
Les standards de l'Internet et de bonnes pratiques techniques nous
interdisent de faire par défaut du routage de paquets avec
FreeBSD. Mais vous pouvez néamoins activer cette fonctionnalité en
changeant la variable suivante à YES
dans rc.conf :
gateway_enable=YES # L'hote agira comme routeur s'il est positionne a YES
Cette option mettra la variable sysctl
net.inet.ip.forwarding à 1 .
Dans la plupart des cas, vous aurez aussi à lancer un processus de routage
afin de renseigner les autres systèmes sur votre routeur.
FreeBSD est fourni avec le démon de routage standard BSD
routed ,
ou pour des situations plus complexes, vous pouvez essayer GaTeD (disponible par FTP depuis ftp.gated.Merit.EDU)
qui supporte FreeBSD depuis 3_5Alpha7.
Nous nous devons de vous prévenir que lorsque FreeBSD est
configuré de cette manière, il ne correspond pas tout à fait
aux requis standards de l'Internet sur les routeurs. Néamoins,
il s'en rapproche assez pour un usage ordinaire.
Puis-je connecter ma machine sous Win95 à l'Internet via FreeBSD ?
Typiquement, les gens qui posent cette questions sont ceux qui ont 2 PC
à la maison, un avec FreeBSD et un avec Win95. L'idée est d'utiliser
la machine sous FreeBSD pour se connecter à l'Internet et puis
pouvoir ensuite accéder à l'Internet depuis la machine sous Windows 95
via la machine sous FreeBSD.
Ce n'est en réalité qu'un cas particulier de la question précédente.
Il y a un document très pratique qui explique comment configurer
FreeBSD comme routeur par connexion PPP
NOTE:
Cela requiert que vous ayez au moins deux adresses IP fixes, et
probablement 3 ou plus, cela dépend du travail que vous voulez effectuer
pour pouvoir mettre en place la machine sous Windows.
Comme alternative, si vous n'avez pas d'adresse IP fixe, vous pouvez
utiliser une des adresses IP privés et installer des proxies
comme
SQUID et
le TIS firewall toolkit
sur la machine sous FreeBSD.
Voir aussi la section sur
natd .
Pourquoi la recompilation du dernier BIND de ISC échoue-t-elle ?
Il y a un conflit entre le fichier ``cdefs.h ''
de la distribution et celui fourni par FreeBSD.
Vous n'avez qu'à enlever
compat/include/sys/cdefs.h .
FreeBSD supporte-t-il SLIP et PPP?
Oui, regardez les pages de manuel
slattach ,
sliplogin ,
pppd et
ppp .
pppd et ppp
permettent les connexions entrantes et sortantes
Sliplogin ne peut s'utiliser qu'avec des connexions entrantes
et
slattach qu'avec des connexions sortantes.
Ces programmes sont décrits dans les sections suivantes du
handbook :
référence du handbook sur SLIP (côté serveur)
référence du handbook sur SLIP (côté client)
référence du handbook sur PPP (mode noyau)
référence du handbook sur PPP (mode utilisateur)
Si vous avez accès à l'Internet à travers un "compte shell"
vous pouvez jeter un coup d'oeil au paquetage
slirp .
Il peut vous fournir un accès (limité) aux services tels que ftp
et http directement depuis votre machine locale.
Est-ce que FreeBSD supporte NAT ou le Masquerading ?
Si vous avez un sous-réseau local (une ou plusieur machines), mais qu'une
seule adresse IP vous a été allouée (même si ce n'est qu'une adresse IP
dynamique), vous pouvez regarder le programme
natd
. Natd vous permet de connecter un sous-réseau entier
à l'Internet en n'utilisant qu'une seule adresse IP.
Le programme ppp a des fonctionnalités similaires construit par l'intermédiaire
de l'option -alias switch.
La
bibliothèque alias
est utilisée dans les deux cas.
Je n'arrive pas à faire marcher ppp. Où me suis-je trompé ?
Vous devriez tout d'abord lire la page de manuel
ppp et
la section du handbook sur ppp .
Activer le logging avec la commande
set log Phase Chat Connect Carrier lcp ipcp ccp command
Cette commande peut-être tapée à l'invite de commande de ppp
ou peut-être entrée dans le fichier de configuration
/etc/ppp/ppp.conf .
(le début de la section par défaut default
est l'endroit idéal pour le mettre).
Assurez vous que le fichier /etc/syslog.conf contienne les lignes
!ppp
*.* /var/log/ppp.log
et que le fichier /var/log/ppp.log existe.
Vous pouvez aussi tirer pas mal de renseignements sur ce qui se passe en
lisant les fichiers log.
Ne vous inquiétez pas même si cela vous semble dénué de sens, si vous obtenez
de l'aide de quelqu'un, pour lui, cela aura un sens.
Si votre version de ppp ne comprend pas la commande "set log"
vous devriez charger la
dernière version .
Il pourrra se construire sur FreeBSD version 2.1.5 et plus.
Ppp se bloque quand je le lance
Cela est usuellement dû au fait que votre nom d'hôte ne peut être résolu. La meilleure solution pour résoudre ce problème est de s'assurer que votre
/etc/hosts est consulté en
premier par votre résolveur en éditant
/etc/host.conf et en mettant la ligne
hosts en premier.
Puis, ajoutez simplement une entrée pour votre machine locale
dans /etc/hosts .
Si vous n'avez pas de réseau local, changez simplement votre
ligne localhost :
127.0.0.1 foo.bar.com foo localhost
Sinon, ajoutez simplement une autre entrée pour votre hôte. Consultez les pages de manuels appropriées pour plus de détails.
Vous devrez être alors capable de réussir à faire un
ping -c1 `hostname` quand vous aurez fini.
Ppp ne veut pas communiquer en mode -auto
Tout d'abord, vérifiez que vous avez bien un routage par défaut
en lançant netstat -rn , vous devriez voir deux entrées comme suivent :
Destination Gateway Flags Refs Use Netif Expire
default 10.0.0.2 UGSc 0 0 tun0
10.0.0.2 10.0.0.1 UH 0 0 tun0
ici, on supposera que vous avez utilisé les adresses données en exemple
dans le handbook, les pages man ou depuis le fichier
ppp.conf.sample.
Si vous n'avez pas de routage par défaut, c'est peut-être parce que vous
utilisez une vieille version de ppp qui ne comprend pas le mot
HISADDR dans le fichier ppp.conf.
Si votre version de
ppp est antérieure à FreeBSD 2.2.5,
changer la ligne
add 0 0 HISADDR
par celle-ci :
add 0 0 10.0.0.2
Une autre raison au fait que la ligne du routage par défaut soit
manquante est que vous avez pu régler un routage par défaut erroné dans
le fichier /etc/rc.conf (ce fichier est appelé
/etc/sysconfig avant la release 2.2.2), et que vous avez
oublié la ligne suivante :
delete ALL
from ppp.conf . Si cela est le cas, revenez à la section du
handbook sur
la configuration finale du système section of the handbook.
Que veut dire "No route to host" ?
Cette erreur est usuellement dûe à une omission de la section
MYADDR:
delete ALL
add 0 0 HISADDR
dans votre fichier /etc/ppp/ppp.linkup .
Cela est seulement nécessaire si vous avez une adresse IP dynamique ou que
vous ne savez pas l'adresse de votre routeur. Si vous utilisez le mode
interactif, vous pouvez taper les lignes suivantes après être entré
en mode paquet (le mode paquet est indiqué par le
PPP en majuscule à l'invite):
delete ALL
add 0 0 HISADDR
Se référer à la section du handbook sur
PPP et les adresses IP dynamiques pour plus de détails.
Ma connexion se termine au bout de 3 minutes
La limite de temps (timeout) par défaut de ppp est de 3 minutes. Cela peut-être
ajusté avec les lignes :
set timeout NNN
où NNN est le nombre de secondes d'inactivité avant que la connexion ne
soit fermée.
Si NNN est égal à zero, la connexion ne sera jamais fermée pour cause
de limite de temps écoulée.
Il est possible de mettre cette commande dans le fichier
ppp.conf , ou de la taper à l'invite en mode interactif.
Il est également possible de l'ajuster au vol alors que la ligne est
active, en se connectant à la socket du serveur ppp
en utilisant
telnet ou
pppctl .
Se réferer à la page de manuel de
ppp
pour plus de détails.
Ma connexion se termine lors de gros chargements.
Si vous avez activé le report de la qualité de connexion (Link Quality Reporting (LQR)),
il est possible ce soit parce que que trop de paquets LQR sont perdus entre la machine
et son interlocuteur. PPP en déduit que la ligne doit être trop
mauvaise, et se déconnecte. Avant la version 2.2.5 de FreeBSD,
LQR était activé par défaut.
Il est maintenant désactivé par défaut.
LQR peut-être désactivé avec la ligne suivante :
disable lqr
Ma connexion se termine après un certain temps aléatoire.
Parfois, sur une ligne de téléphone avec des parasites, ou même
sur une ligne avec des attentes d'appels activées, le modem peut se
suspendre parce qu'il pense (de manière erronée) qu'il y a une perte du
support de connexion (lost carrier)
Il y a un réglage sur la plupart des modems qui déterminent le degré de
tolérance sur la perte temporaire de la ligne porteuse. Sur un
USR Sportster par exemple, cela est mesuré par le registre S10 en
dixième de secondes. Pour rendre votre modem plus tolérant, vous
pouvez ajouter la séquence envoi-attente suivante à votre chaîne de
connexion :
set dial "...... ATS10=10 OK ......"
Se référer au manuel de votre modem pour plus de détails.
Rien ne se passe après le message Login Ok!
Avant la version 2.2.5 de FreeBSD, une fois la ligne établie,
ppp devait attendre que ce soit l'autre parti (peer)
qui initialise le protocole de
contrôle de ligne (Line Control Protocol (LCP).
Or, plusieurs ISPs ne débuteront pas la négociation et attendront du client
qu'il le fasse. Pour forcer ppp
à initialiser le LCP, utiliser la ligne suivante :
set openmode active
Note :
Cela ne fait pas de dégats si chacun des deux parties initialisent tous les deux
la connexion, c'est pourquoi openmode est à présent activé par défaut.
Quoiqu'il en soit, la prochaine section expliquera quand est-ce ce que
cela peut gêner.
Je n'arrête pas de voir des erreurs à propos de magic being the same
De temps en temps, juste après la connexion, vous pouvez voir des
messages dans le log qui dit "magic is the same".
Parfois ces messages sont sans conséquences, et parfois l'un ou l'autre des
partis quitte.
La plupart des implémentations ppp ne peuvent survivre à ce problème, et
même si la ligne semble venir, vous verrez régulièrement des demandes de
configuration et des accusés de réception de configuration dans le
fichier log à moins que ppp abandonne et ne ferme la connexion.
Cela apparaît normallement sur les machines serveurs avec des disques
lents qui diffusent un getty sur le port, et qui exécute ppp depuis un
script ou programme de login après le login.
J'ai aussi eu vent de cela arrivant lorsqu'on utilise slirp.
La raison est qu'entre le temps où getty quitte et que ppp commence,
le ppp côté-client commence par envoyer des paquets
Line Control Protocol (LCP). Parce que l'ECHO est toujours actif
sur les ports du côté serveur, le client ppp verra ces paquets qui lui
seront "reflèté".
Une partie de la négociation LCP est d'établir un nombre magique
(magic number)
de chaque côté de la ligne, ceci afin que les "réflexions" soient
détectées. Le protocole dit que lorsque l'autre parti essaye de
négocier le même nombre magique, un NAK devrait être envoyé et un
nouveau nombre magique choisi.
Durand la période où le serveur où le port serveur a l'ECHO activé, le
client ppp envoie des paquets LCP, voit le même nombre magique dans les
paquets reflètés et il le "NAK".
Il voit aussi les reflexions de NAK (qui veut aussi dire que ppp devrait
changer son nombre magique). Cela produit potentiellement un énorme
nombre de nombre magiques à changer, chacun d'entre eux tous
s'empilant joyeusement dans le buffer stty du serveur.
Aussitôt que ppp démarre sur le serveur, il est innondé par des
changement de nombre magique et souvent décide qu'il a assez essayé
de négociation LCP et abandonne.
Pendant ce temps, le client qui ne voit alors plus de réflexions,
se réjouit juste le temps de voir que le serveur l'a déconnecté.
Cela peut-être évité en autorisant l'autre parti à démarrer la
négociation avec la ligne suivante dans le fichier ppp.conf
set openmode passive
Cela dit à ppp d'attendre que le serveur débute la négociation LCP.
Certains serveurs toutefois peuvent ne jamais initier la négociation. Si
cela est le cas, vous pouvez faire quelque chose du genre :
set openmode active 3
Cela dit à ppp de rester passif pendant 3 secondes, et puis commencer à
envoyer les requêtes LCP/ Si l'autre parti commence à envoyer des
requêtes durant cette période, ppp répondra immédiatement plutôt qu'en
attendant que la période des 3 secondes se termine.
Les négociations LCP continuent jusqu'à ce que la connexion soit fermée.
Cela est pour l'instant un défaut d'implémentation dans
ppp où il n'associe pas les réponses
LCP, CCP & IPCP avec leur requête originale.
Comme conséquence, si l'une des implémentations
ppp est 6 secondes plus lente que
l'autre côté, l'autre côté enverra 2 requêtes de configuration LCP
supplémentaire. Cela est fatal.
Soient 2 implémentations, A et
B . A
commence à envoyer des requêtes LCP immédiatement après s'être connecté
et B met 7 secondes à démarer.
Quand B démarre,
A a envoyé 3 requêtes LCP.
Nous supposons que la ligne a désactivée l'ECHO, car dans le cas
contraire nous verrions des problèmes de nombres magiques comme décrit
dans la section précédente.
B envoi un REQ, puis un ACK au premier
REQ de A .
Le résultat est que A entre
dans l'état OPENED et envoie un ACK
(le premier) en retour à B .
Pendant ce temps, B renvoi 2 ACK de plus
en réponse au 2 REQ supplémentaires envoyés par
A avant
B que B n'ait commencé.
B reçoit alors le premier ACK
de A et entre dans l'état
OPENED .
A reçoit le deuxième ACK de
B et revient à l'état
REQ-SENT , et envoie un autre (quatrième)
REQ comme décrit dans la RFC.
Il envoie alors un troisième ACK et entre dans l'état
OPENED .
Durant ce moment, B
reçoit le quatrième REQ de A ,
par conséquent, revient dans l'état
ACK-SENT et envoie un autre (second)
REQ et (quatrième) ACK as per the RFC.
A reçoit le REQ, va dans l'état
REQ-SENT et envoie un autre REQ.
Il reçoit alors immédiatement le ACK suivant et entre dans l'état
OPENED .
Cela continue tant qu'un des partis ne s'aperçoive qu'ils n'iront
nulle part comme cela et abandonne.
La meilleure façon d'éviter cela est de configurer un côté comme étant
passif - cela fait,
faire de telle sorte qu'un des côtés attende que l'autre commence la
négociation. Cela peut-être fait par la commande :
set openmode passive
Faire attention avec cette option, vous devriez aussi utiliser
la commande
set stopped N
afin de limiter la durée avant que
ppp attende de l'autre parti de
commencer la négociation.
D'une autre façon, la commande
set openmode active N
(où N est le nombre de secondes
qu'il faut attendre avant que le démarrage de la négociation ne soit
faite). Regardez les pages de manuels pour plus de détails.
Ppp se verrouille peu après la connexion.
Avant la version 2.2.5 de FreeBSD, il était possible que votre
ligne soit désactivée peu après la connexion, dûe à
une mauvaise négociation de compression Predictor1 de
ppp
Cela ne devrait arriver que si
deux côtés essayent de négocier des protocoles de
contrôle de compression (
Compression Control Protocols (CCP) différents.
Ce problème est à présent résolu, mais si vous utilisez toujours une
vieille version de
ppp ,
le problème peut-être sauté avec la ligne
disable pred1
Ppp se verrouille quand je "shell" pour le tester.
Quand vous exécutez le shell ou la
commande ! ,
ppp exécute un shell (ou si vous avez
passé des arguments, ppp
exécutera ces arguments). Ppp attendra que la commande se termine avant
de continuer. Si vous avez l'intention d'utiliser la connexion ppp
pendant que vous lancez la commande, la connexion apparaîtra
alors comme ayant été gelée.
Cela parce que ppp attend que la
commande se termine.
Si vous voulez exécuter des commandes comme cela, utilisez plutôt la
commande !bg .
Cela exécutera la commande en arrière plan, et ppp
pourra continuer de servir la connexion.
Ppp sur un null-modem ne quitte jamais.
Il n'y a aucune manière pour que ppp
détermine automatiquement qu'une connexion directe
s'est achevée. Cela est dû aux lignes utilisées dans un câble série
null-modem. Quand on utilise cette sorte de connexion, LQR devrait
être toujours activé avec la ligne :
enable lqr
LQR est accepté pas défaut si négocié par l'autre parti.
Pourquoi ppp tente de se connecter sans raison em mode -auto ?
Si ppp tente de se comnnecter
sans raison aucune, vous devez en déterminer la cause et mettre en place
des filtrages d'appels (dfilters) pour prévenir de tels appels.
Afin d'en déterminer la cause, utilisez la ligne suivant :
set log +tcp/ip
Cela tracera tous le trafic à travers une connexion. La prochaine fois
que la connexion se mettra en place de manière inattendue, vous verrez
la raison tracé avec le moment où cela s'est produit à côté.
Vous pouvez à présent désactiver les appels sous ces circonstances.
D'habitude, ces sortes de problèmes arrivent à cause des DNS lookup.
Pour empêcher le DNS lookup d'établir une connexion (cela n'empêchera
pas ppp
de passer les paquets à travers une connexion établie), utilisez les
lignes suivantes :
set dfilter 1 deny udp src eq 53
set dfilter 2 deny udp dst eq 53
set dfilter 3 permit 0/0 0/0
Cela ne convient pas toujours puisqu'il
enlèvera effectivement vos fonctionnalités de demandes d'appels - la
plupart des programmes auront besoin du DNS lookup
avant de faire quelque chose ayant un rapport avec le réseau.
Dans le cas DNS, vous pouvez essayer de déterminer qui est-ce qui essaye
actuellement de résoudre le nom de l'hôte.
La plupart du temps, c'est
sendmail le coupable.
Vous devez vous assurer que vous avez dit à sendmail de ne faire aucun
DNS lookup dans ses fichiers de configuration,
regardez la section sur
la configuration du mail pour les détails de comment créer son propre fichier de
comfiguration, et qu'est ce qu'on doit mettre dedans.
Vous pouvez aussi vouloir ajouter les lignes suivantes dans votre
fichier .mc :
define(`confDELIVERY_MODE', `d')dnl
Cela fera que sendmail mettra tout en file d'attente
jusqu'à ce que la file soit lancée (habituellement, sendmail est
invoqué avec ``-bd -q30m'', lui disant de lancer la file
d'attente toutes les 30 minutes) ou jusqu'à ce que un
``sendmail -q'' soit effectué (peut-être dans votre fichier ppp.linkup).
Que veulent dire ces erreurs CCP ?
Je n'arrête pas de voir les erreurs suivantes dans mon fichier log :
CCP: CcpSendConfigReq
CCP: Received Terminate Ack (1) state = Req-Sent (6)
Ceci est obtenu parce que ppp est en train de négocier la compression
Predictor1 et que l'autre parti ne veut pas du tout négocier de compression.
Ces messages sont sans conséquences aucune, mais si vous voulez les enleverm
vous pouvez désactiver la compression Predictor1 aussi en local.
disable pred1
Ppp se bloque durant les transferts de fichiers avec une erreur IO.
Sous FreeBSD 2.2.2 et avant, il y avait un bug dans le driver tun
qui stoppait tous les paquets entrants d'une taille plus grande que la taille
MTU de l'interace tun.
La réception de paquets plus grands que la taille du MTU
résultait en une erreur IO qui était alors tracé avec syslogd,
Les spécifications ppp disent qu'un MTU de 1500 devrait
toujours être accepté
comme un minimum, ceci
quelque soit la négociation LCP. Il est toutefois possible que vous
diminuez le MTU à moins de 1500, votre ISP vous transmettra des paquets
de 1500 sans s'en préoccuper, et cela vous bloquera,
gelant ainsi la ligne.
Ce problème peut être contourné en ne réglant jamais un MTU en dessous
de 1500 sous FreeBSD 2.2.2 et avant.
Pourquoi ppp ne trace-t-il pas ma vitesse de connexion ?
La façon de tracer toutes les lignes de la ``conversation'' de
votre modem est d'activer :
set log +connect
Cela permettra à
ppp
de tout tracer jusqu'à la dernière chaîne de requête d'"attente"
Si vous voulez voir votre vitesse de connexion et que vous utilisez
PAP ou CHAP (et donc ne rien avoir avec "chat" après le CONNECT
dans le script dial - pas de script "set login"), vous devez
vous assurer que vous prévenez ppp de s'attendre tout la ligne CONNECT,
quelque chose comme :
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"
Ici, nous avons notre CONNECT, ne rien envoyer, et puis attendre
un saut de ligne, forçant
ppp à lire toute la réponse
CONNECT.
Ppp ignore le caractère `\' dans mon script chat
Ppp parse chacune des lignes de votre fichier de configuration, de telle
sorte qu'il puisse interprêter des chaines comme
set phone "123 456 789" correctement
(et réaliser qu'il n'y a que un
seul argument.
Pour pouvoir spécifier un caractère ``"'', vous devez
l'échapper avec un backslash (``\'').
Quand l'interprêteur chat parse chaque argument, il re-interprête
l'argument de telle sorte à trouver des séquences de caractères
d'échappement comme
``\P'' ou ``\T'' (voir les pages de manuel). En conséquence de
ce double-parsing, vous devez vous souvenir d'utiliser le nombre
correct d'échappement.
Si vous voulez envoyer un caractère ``\'' à votre modem,
vous aurez besoin de faire quelque chose comme :
set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"
qui se résultera en la séquence suivante :
ATZ
OK
AT\X
OK
ou encore
set phone 1234567
set dial "\"\" ATZ OK ATDT\\T"
résultera en la séquence suivante :
ATZ
OK
ATDT1234567
Ppp reçoit une erreur de segmentation, mais je ne trouve pas de fichier ppp.core
Ppp (ou n'importe quel programme dans le même cas) ne devrait jamais
faire de coredump. Parce que ppp tourne avec une identité d'utilisateur
effectif de 0, le système d'exploitation n'écrira pas d'image du core sur le
disque avant de l'avoir terminé. Si, malgrè tout, ppp se
termine actuellement à cause d'une violation
de segmentation, ou n'importe quel autre signal qui cause normalement un
core dump, et que vous êtes sûr
que vous utilisez la dernière version (voir le début de cette section),
alors vous devriez faire la chose suivante :
$ tar xfz ppp-*.src.tar.gz
$ cd ppp*/ppp
$ echo STRIP= >>Makefile
$ echo CFLAGS+=-g >>Makefile
$ make clean all
$ su
make install
chmod 555 /usr/sbin/ppp
Vous aurez alors une version déboguable de ppp installé. Vous aurez à être
root pour lancer ppp puisque tous ses privilèges auront été révoqués. Quand
vous démarrez ppp, retenez soigneusement le répertoire courant dans lequel
vous étiez.
A présent, si et quand ppp recevra une violation de segmentation, cela
crééra un fichier core nommé ppp.core. Vous aurez alors à faire la chose
suivante :
$ su
gdb /usr/sbin/ppp ppp.core
(gdb) bt
.....
(gdb) f 0
.....
(gdb) i args
.....
(gdb) l
.....
Toutes ces informations devront être données suivant votre question,
rendant ainsi possible le diagnostique de votre problème.
Si vous êtes familier avec gdb, vous pouvez vouloir trouver d'autres
techniques pour trouver ce qui a causé le dump, et les adresses et
valeurs des variables concernées.
Le processus qui force un appel en mode auto ne se connecte jamais.
Cela est un problème connu quand ppp
est réglé de telle sorte à négocier une adresse IP dynamique avec son
homologue. Quand ce programme initial appelle
connect(2) ,
l'adresse IP de l'interface tun est assignée à l'extrêmité de la
socket. Le noyau crée le premier paquet sortant et l'écrit sur le
périphérique tun. Ppp
lit alors le paquet et établit alors la connexion. Si, comme
résultat de l'assignation dynamique de
ppp ,
l'adresse de l'interface est changée, l'extrêmité originale de
la socket sera invalide. Tout paquet envoyé à l'autre parti sera alors
en principe perdu. Et même s'il ne l'était pas, toute réponse ne
pourrait pas être renvoyée à la machine originelle puisque l'adresse IP
ne serait plus possèdée par cette machine.
Théoriquement, il y a plusieurs manières d'aborder ce problème.
Le mieux serait que l'homologue re-assigne la même adresse IP si
possible :-)
La meilleure méthode de notre côté, serait de ne jamais changer
l'adresse IP de l'interface tun, mais à la place, changer tous les
paquets sortant de telle sorte que les adresses IP de la source soient
changées de l'interface Ip à l'IP négocié au vol. C'est essentiellement ce
que
libalias(3)
(et l'option -alias de ppp)
font actuellement.
Une autre alternative (et probablement la plus sûre); est d'implémenter
un appel système qui change tous les sockets reliées depuis une
adresse IP à une autre.
Ppp utiliserait cet appel pour
modifier la socket de tous les programmes existant lorsqu'une nouvelle
adresse IP est négociée.
Une troisième possibilité est d'autoriser à une interface de
s'activer sans adresse IP. Les paquets sortant auront une adresse IP de
255.255.255.255 jusqu'à ce que le premier SIOCAIFADDR ioctl soit fait.
Cela reviendrait à lier entièrement la socket, et
ça serait à ppp
de changer l'adresse IP source, mais seulement si il est à
255.255.255.255, et seulement si le numéro IP et le checksum IP
doivent être changés. Quoiqu'il en soit, c'est de la
bidouille puisque le noyau enverra des paquets invalides à une
interface mal configurée, en supposant que d'autres
mécanismes seront capables de réparer les choses
retrospectivement.
Aucune de ces solutions n'a (encore) été implémentée.
Pourquoi la plupart des jeux ne marchent pas avec l'option -alias ?
La raison pour laquelle les jeux et assimilés ne marchent pas avec
libalias est que la machine extérieure essaye d'ouvrir une connexion
ou envoyer des paquets UDP (non sollicités) à la machine
interne. Le logiciel packet alias ne sait alors pas qu'il faut envoyer
ces paquets à une machine interne.
Pour que ça marche, assurez vous que la seule chose qui tourne est le
logiciel avec lequel vous avez des problèmes, puis alors, soit vous
lancez tcpdump sur votre interface tun de votre routeur, soit vous
activez le login ppp tcp/ip (``set log +tcp/ip'') sur votre routeur.
Quand vous démarrez le logiciel incriminé, vous devriez voir les paquets
passer à travers la machine routeur. Quand quelque chose revient depuis
l'extérieur, il sera retiré (c'est ça le problème). Noter le numéro
de port de ces paquets, puis arrêtez le logiciel incriminé. Faite ceci
quelques fois pour voir si les numéro de ports sont consistants. Si ils
le sont, alors la ligne suivante dans la section appropriée de
/etc/ppp/ppp.conf rendra le logiciel fonctionnel.
alias port proto internalmachine:port port
où ``proto'' est soit ``tcp'' ou ``udp'',
``internalmachine'' est la machine à laquelle vous voulez que les
paquets soient envoyés et ``port'' le numéro de port de destination des
paquets.
Vous ne pourrez pas utiliser le logiciel sur d'autres machines sans
changer la commande du dessus, et lancer le logiciel sur 2 machines
internes en même temps est hors de question - après tout, le monde
extérieur voit tout votre réseau entier comme une seule machine.
Si les numéros de ports ne sont pas consistants, il y a 3 autres
options :
1) Soumettre le support dans libalias.
Des exemples de ``cas spéciaux'' peuvent être trouvés dans
/usr/src/lib/libalias/alias_*.c (alias_ftp.c
iest un bon prototype).
Cela implique habituellement la lecture de certains paquets sortant
reconnus, identification des instructions qui dit à la machine
extérieure d'initialiser la connexion en retour vers machine interne sur un port
(aléatoire) spécifique, et mettre en place une
``route'' dans la table d'alias de telle sorte que les paquets concernés
sachent où aller.
C'est la solution la plus difficile, mais c'est la meilleure et
permettra au logiciel de marcher sur plusieurs machines
2)
Utiliser un proxy. L'application peut pouvoir supporter socks5 par
exemple, ou (comme dans le cas de ``cvsup'') peut avoir une option
``passive'' qui évite d'avoir à toujours demander que l'autre parti
ouvre une connexion en retour sur la machine locale.
3)
Tout rediriger vers une machine interne utilisant
``alias addr''. C'est l'approche "bourrin".
Rien de cela ne marche - je suis désespéré !
Si tout le reste échoue, envoyer autant d'informations que vous pouvez,
y compris vos fichiers de configuration, comment vous avez démarré
ppp , les parties pertinentes de
votre fichier log, et la sortie de la commande
netstat -rn (avant et après connexion) à la liste de diffusion
freebsd-questions@FreeBSD.org ou au newsgroup
comp.unix.bsd.freebsd.misc, et quelqu'un devrait vous orienter dans la bonne direction.
Je ne peux pas créer un périphérique /dev/ed0 !
Dans le cadre des réseaux Berkeley, les interfaces réseaux sont
seulement directement accessibles par le code du noyau.
Regarder le fichier
/etc/rc.network
et les pages de manuels pour les différents programmes réseaux mentionnés
ici pour plus d'informations. Si cela vous est complètement confus, vous
devriez prendre un livre décrivant l'administration réseaux sur un autre
système d'exploitation relatif à BSD; à quelques exceptions
mineures, administrer un réseau sous FreeBSD est basiquement la
même chose que sur un SunOS 4.0 ou un Ultrix.
Comment puis-je régler les alias éthernet ?
Ajouter ``netmask 0xffffffff '' à votre
ligne de commande
ifconfig
comme ci-dessous :
ifconfig ed0 alias 204.141.95.2 netmask 0xffffffff
Comment puis-je faire pour que mon 3C503 utilise l'autre port réseau ?
Si vous voulez utiliser les autres ports, vous avez à spécifier un
paramêtre supplémentaire dans la ligne de commande
ifconfig .
Le port par défaut est``link0 ''.
Pour utiliser le port AUI à la place du BNC,utiliser
``link2 ''.
Ces paramêtres devraient être spécifiés en utilisant les variables
de ifconfig_* variables dans /etc/rc.conf .
J'ai des problèmes avec NFS depuis/vers FreeBSD.
Certaines cartes réseaux sont meilleures que d'autres
et peuvent causer quelquefois des problèmes lors d'applications
réseaux intensives comme NFS.
Regarder la partie du Handbook sur NFS pour plus d'informations à ce sujet.
Pourquoi ne puis-je pas monter par NFS depuis une machine sous Linux ?
Certaines versions du code NFS de Linux ne peuvent accepter des
requêtes de montages que depuis un port privilègié; essayez
mount -o -P linuxbox:/blah /mnt
Pourquoi ne puis-je pas monter un NFS depuis une machine Sun ?
Les stations de travail Sun sous SunOS 4.X n'acceptent seulement des
requêtes de montage que depuis un port privilègié; essayez
mount -o -P sunbox:/blah /mnt
J'ai des problème pour parler PPP à des machines NeXTStep.
Essayer de désactiver l'extension TCP dans /etc/rc.conf en changeant la variable à NO :
tcp_extensions=NO
les machines Xylogic's Annex ne marchent pas non plus dans ce contexte,
et vous devez changer de même que ci-dessus pour pouvoir vous
connecter au travers d'elles.
Comment activer le support multicast IP ?
Les opérations multicast sont entièrement supportées par FreeBSD 2.0 et
plus par défaut. Si vous voulez que votre machine marche comme un
routeur multicast, vous devez recompiler votre noyau avec l'option
MROUTING et lancer
mrouted . FreeBSD 2.2 et plus
démarrera mrouted au moment du boot si
l'option mrouted_enable est mis à
"YES" dans /etc/rc.conf .
Les outils MBONE tools sont disponibles dans leur
propre catégorie de ports, mbone. Si vous cherchez les outils de
conférence vic et
vat ,
c'est là qu'il faut voir !
Pour plus d'informations, regarder
le web d'information Mbone .
Quelles cartes réseaux sont basées sur le chipset DEC PCI ?
Voici une liste compilée par
Glen Foster ,
avec quelques ajouts récents :
Vendor Model
----------------------------------------------
ASUS PCI-L101-TB
Accton ENI1203
Cogent EM960PCI
Compex ENET32-PCI
D-Link DE-530
Dayna DP1203, DP2100
DEC DE435
Danpex EN-9400P3
JCIS Condor JC1260
Linksys EtherPCI
Mylex LNP101
SMC EtherPower 10/100 (Model 9332)
SMC EtherPower (Model 8432)
TopWare TE-3500P
Zynx ZX342
Pourquoi dois-je utiliser le FQDN pour les hôtes de mon site ?
Vous verrez probablement que l'hôte est actuellement dans un domaine
différent; par exemple, si vous êtes dans foo.bar.edu
et que vous voulez atteindre un hôte nommé ``mumble''
dans le domaine bar.edu domain, vous aurez à vous y référer
par son nom de domaine entièrement qualifié, ``mumble.bar.edu'', à la place de
juste ``mumble''.
Traditionellement, cela était autorisés par les résolveurs
BSD BIND. Malgrè tout, la version courante de
bind
qui est fournie avec FreeBSD ne fournit plus d'abbréviation par défaut
pour un domaine non entièrement qualifié; autre que le domaine dans
lequel vous êtes.
Ainsi, un hôte non-qualifié mumble
doit soit être trouvé comme
mumble.foo.bar.edu ,
ou alors il sera cherché dans le domaine racine.
Cela est différent du comportement décrit auparavant, où la recherche
continuait à travers mumble.bar.edu ,
et mumble.edu .
Jetez un coup d'oeil à la RFC 1535 pour savoir pourquoi cela est
considéré comme une mauvaise pratique, ou encore même un trou de
sécurité.
Comme détour, vous pouvez placer la ligne :
search foo.bar.edu bar.edu
à la place de la précédente :
domain foo.bar.edu
dans votre fichier
/etc/resolv.conf .
Quoiqu'il en soit, assurez vous que l'ordre de recherche
ne vas pas en dehors des ``limites entre l'administration locale
et publique'', comme appelée dans la RFC 1535.
``Permission denied'' pour toutes les opérations réseaux.
Si vous avez compilé votre noyau avc l'option
IPFIREWALL , vous devez être prévenu, que la
politique par défaut depuis le
2.1.7R (cela a changé durant le développement
du 2.1-STABLE) est de refuser tous les paquets qui ne sont pas
explicitement autorisés.
Si vous avez inintentionnellement mal configuré votre système pour le
firewall, vous pouvez rétablir les fonctionnalité réseaux en tapant la
commande suivante sous root :
ipfw add 65534 allow all from any to any
Vous pouvez aussi régler "firewall_type='open'" dans
/etc/rc.conf .
Pour plus d'informations sur la configuration d'un firewall FreeBSD,
voir la section correspondante du handbook .
Combien d'overhead, IPFW implique-t-il ?
La réponse à ceci dépend pour la plupart à votre ensemble de règle et à
votre vitesse de processeur. Pour la plupart des applications
utilisant ethernet et de petits ensembles de règles, la réponse est :
négligeable. Pour tous ceux d'entre vous qui veulent des mesures
actuelles pour satisfaire leur curiosité, continuez à lire :
Les mesures suivantes ont été réalisées en utilisant 2.2.5-STABLE sur
un 486-66. IPFW a été modifié pour mesurer le temps écoulé par
l'intermédiaire de la routine ip_fw_chk
en affichant les résultats sur la console tous les 1000 paquets.
2 ensembles de règles, chacun avec 1000 règles ont été testés.
Le premier ensemble a été conçu pour démontrer le scénario du pire des
cas en répétant la règle :
ipfw add deny tcp from any to any 55555
Cela démontre le pire des cas en faisant que chaque paquet IPFW entraine l'exécution de
la routine de vérification qui finallement décide que le
paquet ne correspond pas aux règles (en vertu du numéro de port)?
Apès la 999eme itération de cette règle, il y avait un
allow ip from any to any .
Le second ensemble de règles a été conçu pour annuler la vérification de
règle très rapidement :
ipfw add deny ip from 1.2.3.4 to 1.2.3.4
Les adresses IP des sources non correspondantes aux règles énoncées
ci-dessus font que ces règles sont sautées très rapidement. Comme
auparavant, la 1000eme règle était un
allow ip from any to any .
L'étude par paquet dans le premier cas a été approximativement de
2.703ms/paquet, soit en gros 2.7 microseconds par règle
.
Ainsi, la limite théorique d'étude de paquet avec ces règles est de 370
paquets par secondes. En supposant un éthernet 10Mbps et des paquets
d'environ 1500 bytes, nous ne pourrons être capable que d'obtenir une
utilisation de la bande passante de 55.5%
Pour le dernier cas, chaque paquet a été étudié en approximativement
1.172ms, soit en gros 1.2 microseconds par règle.
La limite théorique de l'étude des paquets ici, serait d'environ de 853
paquets par secondes, ce qui pourrait consommer une bande passante
d'un éthernet 10Mbps.
Le nombre excessif de règle testés, et la nature de ces règles ne
fournissent pas un scénario du monde réel -- ils ont été utilisés que
pour générer les informations de temps présentés ici.Voici certaines
choses à garder à l'esprit pour construire un ensemble de règles
efficaces :
Placer une règle d'`établissement' très tôt afin de pouvoir
gérer la majorité du trafic TCP. Ne mettre aucun
allow tcp
avant cette règle.
Placer les règles souvent sollicitées le plus au début de l'ensemble
des règles plutôt que celles rarement utilisées
(sans changer la permissivité du firewall , bien sûr).
Vous pourrez voir quels sont les règles les plus souvent utilisées en
examinant les statistiques des comptages des paquets avec
ipfw -a l .
Comment puis-je rediriger les requêtes de services d'une machine vers une autre ?
Vous pouvez rediriger des requêtes FTP (et autre services) avec le
paquetage 'socket', disponible dans l'arbre des ports dans la catégorie
'sysutils'. Remplacer simplement la ligne de commande de
service pour appeler socket à la place, ainsi:
ftp stream tcp nowait nobody /usr/local/bin/socket socket ftp.foo.com ftp
où 'ftp.foo.com' et 'ftp' sont les hôtes et les ports où se diriger
respectivement.
Communications par port série. **Mise à jour en cours**
Cette section comporte les réponses aux différentes
questions sur la communication par port série sur FreeBSD. Les
protocoles PPP et SLIP sont couverts dans la section Réseaux.
Comment savoir si FreeBSD a trouvé mes ports séries ?
Lorsque FreeBSD démarre, il recherche les ports série sur
votre machine qui sont configurés dans le noyau. Vous pouvez voir ces
ports en regardant avec attention au moment du démarrage les messages
affichés, ou en lançant la commande suivante:
dmesg | grep sio
Lorsque votre système a démarré. Voici quelques exemples
de l'affichage de la commande précédente.
sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
Vous voyez alors apparaitre deux ports série. Le premier se trouve à
l'adresse 0x3f8 sur l'IRQ 4 et est composé d'une
puce de type 16550A. Le second est de meme type que le premier, mais
se trouve lui à l'adresse 0x2f8 sur l'IRQ 3. Les
cartes modems internes sont traités comme des ports série -- sauf
qu'ils ont toujours un modem sur le port.
Le noyau GENERIC comprends
le support pour deux ports série dont les adresses et les IRQ sont les
memes que celles ci-dessus. Si ces valeurs ne vous conviennent pas, ou
si vous avez des cartes modems additionnelles ou des cartes série,
reconfigurez un noyau. Voyez la section sur la reconstruction d'un
noyau pour plus de détails.
Comment savoir si FreeBSD a trouvé mes cartes modems
Référez vous à la section précédente
Je viens de mettre à jour ma machine en 2.0.5 et mes tty0x ont diparus !
Ne vous inquitez pas, ils sont été remplacés par les
devices ttydX . Vous devrez donc
changer toutes vos anciennes configurations pour utiliser ces
devices.
Comment accéder aux ports série sous FreeBSD ?
Le troisième port série sio2 (aussi
appelé COM3 sous DOS), s'appelle
/dev/cuaa2 en sortie, et
/dev/ttyd2 en entrée. Quelle est la différence entre ces
deux classes de devices ?
Vous devez utiliser ttydX
pour des appels sortants. Lorsque vous ouvrez /dev/ttydX en mode bloquant, un processus
attend, sur le device cuaaX
correspondant, qu'il soit inactif, et attends alors de détecter la
porteuse sur la ligne. Lorsque vous ouvrez le port cuaaX , un processus vérifie déjà que le port
ttydX correspondant est
disponible. Si le port est disponible, alors il se l'approprie depuis
le port ttydX . Le port cuaaXX ne tient pas compte de la détection de
porteuse. Graçe a cette fonctionnalité et un modem, vous pouvez avoir
des utilisateurs se logguant sur votre machine tout en vous laissant
appeller via le meme modem, c'est le système qui se préocupera de
gérer les conflits.
Comment activer le support pour les cartes séries multiports
Encore une fois, reportez vous à la section sur la
configuration du noyau. Pour une carte série multiports placez
une ligne sio
pour chaque port série de la carte dans le fichier de
configuration du noyau. Ne mettez pour une valeur l'irq et le
vecteur d'adresse de la carte. Tous les ports de la cartes
doivent partager la même irq. Pour des raisons de
cohérence, spécifiez l'irq pour le dernier port. N'oubliez pas
d'ajouter l'option COM_MULTIPORT .
L'example suivant correspond à une carte série 4ports AST
sur l'irq 7
options "COM_MULTIPORT"
device sio4 at isa? port 0x2a0 tty flags 0x781
device sio5 at isa? port 0x2a8 tty flags 0x781
device sio6 at isa? port 0x2b0 tty flags 0x781
device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr
Les drapeaux (flags) indiquent que le port maitre à un
nombre mineur de 7 (0x700 ),
que nous désirons afficher les diagnostics (0x080 ) et que tous les ports
partagent la même irq (0x001 ).
Est-ce que FreeBSD sait gérer les cartes séries multiports en partageant les IRQ ?
Pas pour le moment. Vous devez utiliser une IRQ différente
pour chaque carte.
Puis-je définir les paramètres par défaut de la liaison série pour un port?
Les périphériques ttydX
(ou cuaaX ) sont des
périphériques normaux que vous pouvez ouvrir dans vos
applications. Lorsqu'un processus ouvre le périphérique, il
utilise les paramètres par défaut d'entrées sorties de
terminal. Vous pouvez voir ces paramètres en utilisant la
commande:
stty -a -f /dev/ttyd1
Lorsque vous changez les paramètres du périphérique, ces
paramètres sont effectifs jusqu'au moment ou vous arreterez de
vous servir de ce périphérique. S'il est ouvert de nouveau, il
reprendra les paramètres par défaut. Pour changer les
paramètres par défaut , vous devez ouvrir le périphérique et
changer les paramètres de l'``état initial'' du
périphérique. Par exemple pour définit un mode LOCAL , 8 bits et un controle de flux
XON/XOFF par défaut sur le
ttyd5, voud devez :
stty -f /dev/ttyd5 clocal cs8 ixon ixoff
Le mailleur endroit pour effectuer ceci est le fichier de
démarrage /etc/rc.serial . Maintenant
lorsqu'une application ovrira
ttyd5 elle obtiendra les valeurs ci-dessus.
Vous pouvez empecher certaines valeurs d'etre modifiées en
utilisant le fonction de ``lock'' du périphérique. Par exemple
pour forcer la vitesse à 57600bauds sur
ttyd5 :
stty -f /dev/ttyd5 57600
Maintenant lorsqu'un programme ouvrira ttyd5 et tentera de changer la vitesse
du port, il obtiendra toujours 57600 bauds.
Bien sur, vous devez laisser la possibilité de changer les
états initiaux et de lock que pour l'utilisateur root. Le
script MAKEDEV
ne le fait pas par
défaut lorsqu'il crée les noeuds.
Comment mettre en place un login dialup sur mon modem?
Vous voulez devenir fournisseur d'accès à l'Internet ?
Pour commencer vous devez disposer de plus d'un modem pouvant
répondre automatiquement. Votre modem doit pouvoir detecter
une émission de porteuse lorsque qu'elle se présente et ne doit pas en
détecter constemment. Il doit aussi etre capable de racrocher la ligne
lorsqu'il détecte le passage de 1 à 0 du signal DTR . Il doit aussi utiliser un controle de flux
de type RTS/CTS ou aucun controle
de flus. Enfin, il doit etre capable de négocier la vitesse de
transmission entre lui-même et le modem distant tout en gardant
une vitesse constante vis à vis de l'ordinateur.
Pour la plupart des modems comprennant les commande Hayes,
cette commande met en place les bonnes valeurs et les enregistre en
mémoire morte:
AT &C1 &D3 &K3 &Q6 S0=1 &W
Voyez la section sur l'envoi direct de commandes AT, pour
savoir comment les mettre en place sans avoir besoin de lancer un
émulateur de terminal sous MS-DOS.
Ensuite créez une entrée dans /etc/ttys pour
le modem. Ce fichier comporte tous les ports sur lesquels le système
d'exploitation attend des commandes de login. Ajoutez une ligne
ressemblant à celle ci:
ttyd1 "/usr/libexec/getty std.57600" dialup on insecure
Cette ligne indique que sur le deuxième port série
(/dev/ttyd1 ) est attaché un modem
dialoguant à 57600 bauds sans parité (std.57600 ) se trouvant dans le fichier /etc/gettytab
). Le type de terminal est ``dialup''. Le port est ``on'' et
``insecure'' -- ce qui veut dire que les logins sous root ne sont pas
autorisés sur ce port. Pour utiliser d'autres ports en entrée,
utilisez les autres entrées ttydX .
Il est d'usage courant d'utiliser ``dialup'' comme type de
terminal. Beaucoup d'utilisateurs affichent un prompt dans leur
.profile ou .login si le type de terminal est ``dialup''. L'exemple
ci-dessus affecte au port le mode ``insecure''. Pour passer root, vous
devez donc vous logguer en temps qu'utilisateur ordinaire et utiliser
la commande su
pour devenir root . Si vous
définissez le port en tant que ``secure'', alors vous pourrez vous
logguer sous root directement.
Après avoir effectué les modifications au fichier /etc/ttys ,
vous devez envoyer un signal HUP au
processus init
kill -HUP 1
Cela force le processus init à relire le fichier /etc/ttys . Le
processus init démarrera donc des processus getty sur tous les ports
marqués comme on
. Vous pouvez alors vérifiez que le login est
possible sur le port en tapant :
ps -ax | grep '[t]tyd1'
Et vous devez voir apparaitre quelque chose comme
ceci:
747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1
Comment connecter un terminal sur mon système FreeBSD?
Si vous utilisez un autre ordinateur en tant que terminal,
vous devez vous procurer un cable null modem pour relier les deux
ports série. Si vous utilisez un vrai terminal (de type WYSE-50), suivez
les instructions du manuel
Ensuite, modifez /etc/ttys comme
expliqué à la section précedente. Par exemple, pour un terminal
WYSE-50 connecté sur le 5ème port série, utilisez une entrée
ressemblant à la suivante:
ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure
Cet exemple assume que le port
/dev/ttyd4 est connecté sur un terminal wyse50 à
la vitesse de 38400 bauds sans parité (std.38400 se trouvant dans le fichier /etc/gettytab )
et les logins root sont permis (mot clé secure)
Pourquoi ne puis-je pas executer tip ou cu ?
Sur votre système, les programmes tip et cu ne sont
probablement executable que par l'utilisateur uucp et par le
groupe dialer . Le groupe
dialer vous permet de controler qui
a accès à votre modem ainsi qu'aux systèmes distants. Ajoutez vous
dans ce groupe pour pouvoir utiliser ces commandes.
Sinon, vous pouvez autoriser tous les utilisateurs de
votre système à utiliser les programmes tip et
cu en tapant:
# chmod 4511 /usr/bin/cu
# chmod 4511 /usr/bin/tip
Mon modem Hayes n'est pas supporté; que dois-je faire ?
Pour l'instant la page de manuel de tip n'est pas à
jour. Il existe un support générique des commandes Hayes intégré dans le
programme. Il suffit de mettre la ligne suivante
ar=hayes dans votre fichier /etc/remote
Le gestionnaire Hayes ne sait pas reconnaitre les
fonctions avancées des nouveaux modems. Des messages comme
BUSY, NO DIALTONE, CONNECT 115200 ne sont pas
reconnus. Vous devez absolument désactiver ces messages lorsque vous
utilisez tip (en tapant
ATX0&W ).
De plus le timeout de tip est de 60
secondes. Votre modem doit absolument utiliser une valeur plus faible,
sinon tip pensera qu'il y a un problème de
communication. Essayez la commande
ATS7=45&W
Le version de tip livrée ne comporte
pas toutes ces fonctionnalités. La solution est d'éditer le fichier
tipconf.h se trouvant dans le répertoire
/usr/src/usr.bin/tip/tip . Bien sur cela nécessite
que vous ayez installé les sources.
Remplacez alors la ligne #define HAYES
0 par #define HAYES 1 . Puis tapez
make et make install . Tout
doit marcher correctement après cela.
Comment faire pour entrer certaines commandes AT ?
Créez une entrée de type direct dans
votre fichier /etc/remote .
Par exemple, si votre modem est attaché sur le premier port série,
/dev/cuaa0 , ajoutez la ligne suivante:
cuaa0:dv=/dev/cuaa0:br#19200:pa=none
Utilisez le taux maximum, de transfert de votre modem,
pour la fonctionnalitée br. Ensuite tapez tip cuaa0 et vous
serez alors connecté sur votre modem.
S'il n'existe pas de fichier
/dev/cuaa0 sur votre système, executez la
commande suivante:
# cd /dev
# ./MAKEDEV cuaa0
Sinon utilisez la commande cu sous
root de la façon suivante.
# cu -l``port'' -s``vitesse''
Avec port
le nom du port
série(ex:/dev/cuaa0 ) et vitesse
(la
vitesse maximum de votre
modem)(ex:57600 ). Lorsque vous avez entrer les
commandes AT apropriées, tapez ~. pour quitter
Le symbole @ pour la fonctionnalité pn ne marche pas!
Le symbole @ dans le numéro de
téléphone demande à tip de regarder dans le
fichier
/etc/phones pour trouver le numéro aproprié. Mais le symbole
@ est aussi un caractère spécial pour le fichier
/etc/remote .
Mettez un backslash devant pour qu'il soit correctement interprété.
pn=\@
Comment composer un numéro de téléphone depuis la ligne de commande?
Mettez une ligne
generic
dans le fichier /etc/remote .
Par exemple:
tip115200|Dial any phone number at 115200 bps:\
:dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
tip57600|Dial any phone number at 57600 bps:\
:dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:
Vous pourrez alors utilisez la commande suivante
tip -115200 5551234
. Si vous
préferez cu
à tip ,
utilisez une ligne générique pour cu:
cu115200|Use cu to dial any number at 115200bps:\
:dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:
et utilisez la commande cu 5551234 -s
115200
.
Dois-je spécifier la vitesse en bauds à chaque connexion
Mettez une ligne tip1200 ou
cu1200 , mais mettez la vitesse que vous voulez
pour la fonctionnalité br.tip pense que la
vitesse par défaut est de 1200 bauds, donc il cherche une entrée
tip1200
. Bien sur, vous n'etes pas
obligez d'utiliser cette vitesse.
J'ai accès à plusieurs machines depuis mon serveur de terminal
Plutot que d'attendre d'etre connecté et de taper la
commande CONNECT <host> chaque fois,
utilisez la fonctionnalité cm de tip. Voyez, par
exemple, les entrèes suivantes du fichier /etc/remote :
pain|pain.deep13.com|Forrester's machine:\
:cm=CONNECT pain\n:tc=deep13:
muffin|muffin.deep13.com|Frank's machine:\
:cm=CONNECT muffin\n:tc=deep13:
deep13:Gizmonics Institute terminal server:\
:dv=/dev/cua02:br#38400:at=hayes:du:pa=none:pn=5551234:
Cela vous permet de taper directement tip
pain ou tip muffin pour vous connectez
sur les machines pain ou muffin, et tip deep13
pour accéder au serveur de terminaux.
Est-ce que tip peut utiliser plusieurs numéros de téléphones pour se connecter à un site?
C'est un problème courant lorsqu'une université a
plusieurs lignes pour les modems et plusieurs milliers d'étudiants qui
les utilisent.
Créez une ligne pour votre université dans le fichier
/etc/remote
et utilisez \@ comme valeur pour la
fonctionnalité pn .
big-university:\
:pn=\@:tc=dialout
dialout:\
:dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:
Ensuite listez tous les numéros de téléphones de l'université
dans le fichier /etc/phones
big-university 5551111
big-university 5551112
big-university 5551113
big-university 5551114
tip essaiera
alors tous les numéros de téléphones dans l'ordre de la liste puis
s'arretera. Si vous voulez qu'il réessaye à l'infini, lancez
tip dans une boucle sans fin
Pourquoi dois-je appuyer deux fois sur CTRL+P pour envoyer un CRTL+P?
CTRL+P est le caractère par défaut pour tip , pour lui
dire que le caractère suivant est une donnée brute. Vous pouvez
changez ce caractère en n'importe quel autre en utilisant la séquence
d'échappement ~s , qui équivaut à set a
variable
.
Tapez
~sforce=<single-char>
suivit
d'un saut de ligne. <single-char>
correspondant à un simple caractère.Si vous laissez
<single-char> vide, alors le caractère de
``force'' est le caractère nul, que vous pouvez obtenir par CTRL+2 ou
CTRL+SPACE. La meilleur valeur pour ce caractère est SHIFT+CTRL+6, que
je n'ai vu que utilisé que sur peu de terminaux.
Vous pouvez affecter la valeur que vous voulez pour ce
caractère en le spécifiant dans le fichier
$HOME/.tiprc :
force=<single-char>
Tout d'un coup, tout ce que je tape est en majuscule?
Vous devez avoir pressé CTRL+A, le caractère ``raise'' de
tip ,
spécialement concus pour les gens n'ayant pas de caps-lock. Utilisez
comme auparavant, ~s , et fixez la variable
raisechar
a une valeur plus raisonnable. En fait, vous
pouvez le mettre à la meme valeur que le caractère de ``force'', si
vous ne désirez jamais utiliser ces fonctionnalités.
Voici un exemple de fichier .tiprc
pour les utilisateurs d'Emacs qui utilisent beaucoup CTRL+2 et
CTRL+A:
force=^^
raisechar=^^
Le caractère ^^ correspond à SHIFT+CTRL+6.
Comment effectuer des transferts de fichiers en utilisant tip ?
Si vous dialoguez avec un autre système UNIX, vous pouvez
envoyer et recevoir des fichiers en utilisant la commande
~p (put) et ~t (take). Ces
commandes utilisent les commandes cat et echo sur le
système distant pour recevoir et envoyer les fichiers. La syntaxe de
ces commandes est:
~p <fichier-local> [<fichier-distant>]
~t <fichier-distant> [<fichier-local>]
Il n'y a aucun controle d'erreur, donc il vaut mieux
utiliser un autre protocol comme zmodem.
Comment dialoguer en zmodem avec tip ?
Il faut, pour commencer, installer un des programmes
zmodem depuis les ports(un de ceux de la catégorie comms lrzsz ou
rzsz ).
Pour recevoir un fichier, démarrez le programme d'envoi
des données sur le système distant. Ensuite pressez entrée puis tapez
~C rz
(ou ~C
lrz
si vous avez installé lrzsz) pour recevoir le
fichier.
Pour envoyer des fichiers, démarrez le programme de
réception sur le système distant. Ensuite tapez entrée et tapez
~C sz <files>
(ou
~C lsz <files>
) pour envoyer
le fichier.
FreeBSD ne trouve pas mes ports séries, même avec les bonnes valeurs de configuration .
Certaines cartes mères et les cartes comportant des Composants
UART Acer, ne sont pas reconnues correctement par le programme de
détection de FreeBSD. Un patch est disponible à www.lemis.com
pour résoudre votre problème.
Questions diverses. **Mise à jour en cours**
FreeBSD utilise beaucoup plus d'espace swap que Linux. pourquoi ?
Non. Vous voulez peut-être dire "pourquoi mon swap semble être plein ?".
Si cela est vraiment ce que vous voulez dire, c'est en fait parce que
mettre les choses dans le swap plutôt que les mettre de côté rend toujours
plus facile sa récupération que si le pager devait aller chercher à travers
tout le système de fichier afin de récupérer des blocs propres (non modifié)
d'un exécutable.
La quantité actuelle de pages "sales" que vous pouvez avoir dans le
noyau en même temps n'est pas réduit, les pages propres sont déplacées
si nécessaires.
Pourquoi utiliser (qu'est-ce) a.out et les formats exécutables ELF ?
Afin de comprendre pourquoi FreeBSD utilise le format
a.out , vous devez d'abord savoir
quelques trucs sur les 3 formats exécutables courant "dominants" pour
UNIX :
a.out Le
vieux et `classique' format des objets unix. Il utilise un court et
compact en-tête avec un nombre magique au début, qui est souvent
utilisé pour caractériser le format (voir a.out(5)
pour plus de détails). Il contient trois segments chargés : .text,
.data, et .bss plus une table de symboles et une table de chaînes.
COFF Le formats des
objets SVR3. L'en-tête comprend une table de section, de telle sorte
que vous avez plus de sections que juste .text, .data, et .bss.
ELF Le successeur de
COFF , qui permet des sections
multiples et des valeurs possibles de 32 bits et 64 bits. Un
inconvénient majeur : ELF a aussi été
conçu en supposant le fait qu'il y qu'un seul ABI par architecture
système. Cette hypothèse est assez incorrecte, et même dans le monde
SYSV (qui a au moins 2 ABIs : SVR4, Solaris, SCO) cela ne se vérifie
pas.
FreeBSD essaye de contourner ce problème en
fournissant un utilitaire pour marquer un exécutable connu ELF avec des informations sur l'ABI qui va avec.
Regardez la page de manuel pour brandelf
pour plus d'informations.
FreeBSD vient du camp "classique" et utilise traditionnellement le
format
a.out ,
une technologie esssayée et éprouvée à travers des générations de
releases BSD. Bien qu'il a aussi été quelques fois possible de
construire et de lancer des binaires natifs ELF (et noyau)
sur un système FreeBSD, FreeBSD a initiallement résisté à la "pression"
de passer à ELF comme format par défaut.
Pourquoi ? Bien, quand le camp Linux ont fait leur difficile
transition vers ELF ,
il ne suffisait pas de fuir le format exécutable
a.out .
mais leur mécanisme de librairies partagées
basé sur des table de sauts inflexible ce
qui rendait la
construction de librairies partagées difficiles pour les
vendeurs et développeurs.
Depuis
comme les outils ELF offrent une solution
au problème des librairies partagées et semblent
en général perçus comme "la voie du progrès" de
toute façon, le coût de migration a été
entendu comme nécessaire, et la transition a
été réalisée.
Dans le cas FreeBSD, notre mécanisme de librairie partagée se rapproche
plus des style de mécanisme de librairie partagée des
SunOS de Sun, et de la sorte, est très simple à utiliser.
Quoiqu'il en soit, à partir de 3.0, FreeBSD supportera officiellement
les binaires ELF comme format par défaut. Même si les
formats exécutables a.out nous ont beaucoup servis, les gens du GNU
auteurs des outils de compilation que nous utilisons ont arrêté leur
supports pour le format a.out .
Cela nous a forcé à maintenir des versions divergentes du compilateur et
de l'éditeur de liens, et nous a empêché de bénéficier des
derniers efforts du développement GNU. Et puis, les demandes de
ISO-C++, notemment pour les constructeurs et les destructeurs,
nous ont aussi conduit à supporter de l'
ELF natif pour les futures release de FreeBSD.
Pourquoi chmod ne veulent pas changer les permissions sur les liens symboliques ?
Vous devez utiliser soit ``-H '' ou
``-L '' ensemble avec
l'option ``-R '' pour que cela marche.
Regardez les pages de manuels de
chmod et
symlink .
ATTENTION l'option
``-R '' fait un chmod
RECURSIF
chmod . Faites attention en spécifiant
le répertoire
ou les liens symboliques vers les repertoires où vous lancerez
chmod . Si vous voulez changer les permissions
d'un répertoire référencé par un symlink, utiliser
chmod
sans aucune option et suivre le lien symbolique avec un slash final
(``/ ''). Par exemple, si
``foo '' est un lien
symbolique vers le répertoire ``bar '',
et que vous voulez changer les
permissions de ``foo ''
(actuellement ``bar ''),
vous devrez sans doute faire quelque chose comme :
chmod 555 foo/
Avec un slash final,
chmod
suivra le lien symbolique, ``foo '', pour changer les droits sur
le répertoire ``bar ''.
Pourquoi les noms de logins sont encore restreints à 8 caractères ?
Vous pouvez penser qu'il est assez simple de changer
UT_NAMESIZE
et de reconstruire tout le monde, et que tout marcherait.
Malheureusement, il y a souvent une escouade d'applications et
d'utilitaires (y compris les outils systèmes) qui ont codé en dur les
petits nombres (pas toujours "8" ou "9", mais d'autres plus étranges
comme "15" ou "20") dans les structures et les buffers. Non seulement cela
vous donnera des fichiers logs qui seront altérés (à cause des longueurs
des variables enregistrés là où des enregistrement de taille fixées sont
attendus), mais cela peut planter les clients NIS de Sun, et
potentiellement causer d'autres problèmes lors de l'interaction avec
d'autres systèmes UNIX.
Dans FreeBSD 3.0 et plus, la longueur maximale des noms a été
augmentée à
16 caractères et tous ces divers utilitaires avec des tailles de noms codés
en dur ont été trouvés et corrigés. Le fait que cela touche tant de
domaines du système explique en fait pourquoi le changement n'a pas été
fait avant la 3.0.
Si vous êtes absolument confiant dans votre habileté à trouver et à
corriger ces sortes de problèmes par vous-même quand ils arrivent, vous
pouvez augmenter la taille des noms de login dans les releases
précédentes en éditant
/usr/include/utmp.h et en changeant en fonction de la taille que vous
voulez donner, la variable UT_NAMESIZE. Vous devez aussi mettre à jour la
variable MAXLOGNAME dans /usr/include/sys/param.h pour correspondre au
changement de UT_NAMESIZE. Au final, si vous construisez depuis les
sources, n'oubliez pas que /usr/include est mis à jour à chaque fois !
Changer les fichiers appropriés dans /usr/src/... à la place.
Puis-je lancer des binaires DOS sous FreeBSD?
Oui, à partir de la version 3.0, vous pouvez utiliser
rundos l'émulateur DOS de BSDI,
qui a été intégré et perfectionné.
Envoyez un courrier électronique à
la liste de discussion sur les émulations de FreeBSD
si cela vous interesse de vous joindre à cet effort en progression.
Pour les systèmes pre-3.0, il y a un bel utiltaire appelé
pcemu
dans la collection de pports, qui émule un 8088 et assez de services
BIOS pour pouvoir lancer des applications DOS en mode texte. Cela requiert
le système X Windows (fourni comme XFree86).
Qu'est ce ``sup '', et comment l'utilise je ?
SUP
veut dire Software Update Protocol, et a été développé par CMU
pour pouvoir synchroniser leurs arbres de développement. Nous l'utilisons
pour garder les sites distants en synchronisation avec nos sources
centraux de développement
SUP n'est pas très ami avec la bande passante et a été retiré. La méthode
actuelle recommandé pour pouvoir garder vos sources à jour est
Handbook entry on CVSup
Jusqu'à quel point FreeBSD est-il cool ?
Q. Quelqu'un a-t-il déjà fait des tests de température de FreeBSD ?
Je sais que Linux tourne moins chaudement que DOS, mais je n'ai jamais
vu aucune mention sur FreeBSD. Ca semble tourner vraiment très
chaudement.
A. Non, mais nous avons effectué de nombreux tests gustatifs sur des
volontaires ayant les yeux bandés et aussi 250 microgrammes de
LSD-25 administré préalablement. 35%des volontaires ont dit
que FreeBSD avait un goût d'orange, alors que Linux avait un goût
de purple haze. Aucun des groupes n'a mentionné une variance de
température particulière (si je me souviens bien).
Nous avons de toute façon dû jeter tous les résultats quand
nous nous sommes aperçu que de nombreux volontaires s'étaient
promené en dehors de la salle durant les tests, faussant ainsi les
résultats. Je pense que la plupart des volontaires sont à
présent chez Apple, travaillant pour leur nouveau GUI 'scratch and
sniff'. C'est un drôle de monde dans lequel nous vivons !
Sérieusement, FreeBSD et Linux utilisent tous les deux l'instruction
``HLT '' (halt) quand le système est idle de telle sorte à baisser
leur consommation d'énergie et donc la chaleur que cela génère. Et aussi,
si vous avez APM (automatic power management) configuré, alors FreeBSD
peut aussi mettre le CPU dans un mode basse énergie.
Qui est-ce qui fait grésiller mes banques mémoires ?
Q. Y a t il quelque chose d'"étrange" que fait FreeBSD quand il compile le
noyau qui pourrait faire que la mémoire fasse un grésillement ?
Quand ça compile (et pour un bref moment après avoir reconnu le lecteur de
disquette au démarrage), un étrange grésillement émane depuis ce qui semble
être les banques mémoire.
A. Oui! Vous verrez des fréquentes références aux "démons" dans la
documentation BSD, et ce que les gens ne savent pas, c'est que cela se
réfère aux entités non-corporelle qui possède à présent votre ordinateur.
Le grésillement venant de la mémoire est en fait le murmure échangé entre
les démons lorsqu'ils débattent sur les différentes tâches de
l'administration système.
Si le bruit vous parvient, un bon ``fdisk /mbr ''
depuis le DOS vous en débarassera, mais ne soyez pas surpris s'il
réagissent et qu'ils essayent de vous contrer. De plus, si jamais à un
moment de l'opération, vous entendez la voix satanique de Bill Gates
vous parvenant du haut-parleur interne, continuez, et ne regardez jamais
en arrière !
Délivré de l'influence contre-balançante des démons BSD, les démons
jumeaux de DOS et Windows pourront alors prendre le contrôle totale de
votre machine jusqu'à la damnation éternelle de votre âme.
S'il fallait choisir, je pense que je préfèrerais m'habituer au
grésillement !
Que veut dire 'MFC' ?
MFC est un acronyme pour 'Merged From -CURRENT.' C'est utilisés dans
les logs CVS pour noter quand un changement a migré depuis un
CURRENT vers une branche STABLE
Pour les passionnés. **Mise à jour en cours**
Que sont les SNAP et RELEASE
Il y a actuellement 3 branches actives/semi-actives dans
l'entrepot
CVS des sources de FreeBSD:
RELENG_2_1_0 encore appelée 2.1-stable ou branche 2.1
RELENG_2_2 encore appelée 2.2-stable ou branche
2.2
HEAD encore appelée -current ou 3.0-current
HEAD n'est pas vraiment une branche, comparée aux deux
autres, c'est juste une valeur symbolique constante pour désigner
le répertoire de la version courante(ou version de développement), auquel
nous nous référerons sous le nom de -current.
Actuellement -current est la branche de développement de
la version 3.0 résultant de la séparation de la branche 2.2-stable(RELENG_2_2)
en Novembre 1996.
La branche 2.1-stable, RELENG_2_1_0, s'étant séparée de
-current en Septembre 1994.
Comment créer ma propre version
Pour créer votre propre version, vous devez effectuer trois
choses. Premièrement, vous devez avoir un noyau contenant le
gestionnaire vn . Ajoutez la
ligne suivante au fichier de configuration du noyau, puis reconstruisez le.
pseudo-device vn #Vnode driver (turns a file into a device)
Ensuite, vous devez disposer de l'arbre CVS au
complet. Pour l'obtenir, vous pouvez utiliser CVSUP et remplissez votre fichier
de configuration de cvsup de la façon suivante:
*default prefix=/home/ncvs
*default base=/a
*default host=cvsup.FreeBSD.org
*default release=cvs
*default delete compress use-rel-suffix
## Main Source Tree
src-all
src-eBones
src-secure
# Other stuff
ports-all
www
doc-all
Ensuite lancez la commande cvsup -g
fichier_de_configuration_de_cvsup pour rapatrier tous les
sources sur votre machine
Pour finir, vous devez disposez de beaucoup de place sur
vos disque pour compiler le tout. Disons que cela se trouve dans le
répertoire /tres/gros/systeme/de/fichiers et que
l'arbre CVS se trouve dans /home/ncvs
setenv CVSROOT /home/ncvs # ou export CVSROOT=/hom/ncvs (pour du sh)
cd /usr/src/release
make release
BUILDNAME=3.0-MY-SNAP CHROOTDIR=/tres/gros/systeme/de/fichiers
Une distribution complète sera alors crée dans le
répertoire /tres/gros/systeme/de/fichiers et vous
disposerez d'un programme d'installation ftp utilisant ce répertoire
par défaut. Vous pouvez aussi décider de compiler autre chose que la version -current
en donnant au paramètre RELEASETAG une autre
valeur. Par exemple pour compiler une version 2.2, il suffit de passer
la valeur RELEASETAG=RELENG_2_2 à la ligne de
commande de make.
Comment créer une disquette d'installation personnalisée?
Le processus de création, des disquettes d'installation
ainsi que des archives binaires, est automatisé par différentes cibles
dans le fichier /usr/src/release/Makefile . Ce
fichier doit etre votre point de départ pour plus d'informations. Bien sur,
cela veut dire que vous devrez faire un make world
et
que cela demande beaucoup d'espace disque et de temps.
make world
remplace-t-il tous les binaires déja installés?
Oui.Comme son nom le suggère,make world
recompile tout le système depuis les sources, donc vous pouvez etre
sur d'avoir un système sain et cohérent à la fin (cela peut prendre
énormément de temps pour y arriver).
Si la variable DESTDIR est définie
lorsque vous éxecutez make world
ou make
install
, les binaires seront installés dans la même
arborescence que votre système sauf que la racine du nouveau système
sera ${DESTDIR} . Différentes
combinations dans la modification des librairies partagées et dans les
programmes, peut entrainer une erreur du make
world
.
Lorsque le système démarre, il affiche (bus speed defaulted)
Les cartes SCSI Adaptec 1542 permettent d'accéder à la
configuration de la vitesse du bus par logiciel. Les anciennes
versions du gestionnaire de périphérique 1542 essayaient de déterminer
la vitesse maximale utiliable et de configurer la carte à cette
valeur. Nous avons trouvé que cela pouvait casser certains systèmes,
donc vous devez définir l'option
TUNE_1542 dans le fichier de configuration
du noyau, pour que cela soit actif. En l'utilisant sur des systèmes ou
la carte le supporte, cela vous permettra d'avoir une meilleur vitesse
pour vos disques, mais sur des système ne le supportant pas vous
obtiendrez des données corrompues.
Puis-je me tenir à jour par rapport à -current si j'ai un accès limité à l'Internet?
Oui, vous pouvez le faire sans télécharger l'arbre complet
des sources en utilisant la fonctionnalitée CTM
Comment faire pour couper la distribution en fichiers de 240Ko?
Les systèmes BSD récents diposent d'une option
-b
pour vous permettre de découper
les fichiers binaires en plusieurs parties
Voici un exemple, tiré de
/usr/src/Makefile .
bin-tarball:
(cd ${DISTDIR}; \
tar cf - . \
gzip --no-name -9 -c | \
split -b 240640 - \
${RELEASEDIR}/tarballs/bindist/bin_tgz.)
J'ai écrit une extension pour le noyau, comment l'incorporer?
Regardez la partie du handbook sur la façon de soumettre du code
Et encore merci pour tout.
Comment sont détectées les cartes plugs and play ISA?
Contribution de Frank Durda IV
Il y a un certains nombres de ports d'entrées/sorties sur
lesquels la plupart des cartes PnP répondent lorsqu'une machine
interroge le bus ISA. Donc, lorsque la routine de détection PnP
s'execute, elle interroge les cartes PnP sur ces ports pour savoir
lesquelles sont présentes. Dans ce cas toutes les cartes répondent en
indiquant leur modèle et la routine de détection reçoit alors une
valeur qui est soit oui
soit rien. Au minimum un bit
est mis à 1 lors de la réponse. Alors le code de détection peut
essayer de dialoguer avec les cartes, graçe aux numéros de modèle de
cartes (définis par Microsoft/Intel), inférieurs à X pour leur dire de
s'arréter. Il vérifie alors qu'aucune autre carte ne répond à la
question précedente. Si la réponse est 0 alors il
considère qu'aucune carte n'a d'ID au dessus de X. Ensuite il
interroge le bus pour obtenir la liste des cartes sous
X
. S'il en trouve alors il interroge le bus pour avoir
la liste des celles ayant un ID supérieur à X-(limit/4). Et répète
ainsi de suite l'algorithme, qui consiste à diviser l'intervalle de
recherche par deux. Avec cet algorithme, les cartes seront découvertes
avec un maximum d'itération de 2^64.
Les Identifiants de cartes sont codés sur 32 bits + 8 bit
de checksum. Les 32 premiers bits représentent le code de la carte
pour le constructeur de cette carte. Il arrive de trouver plusieurs
cartes du meme constructeur ayant différents code de carte. L'idée de
coder sur 32 bits le nom du constructeur serait un peu
excessif.
Les 32 bits de poids faibles sont le numéro de série de la
carte; l'adresse ethernet , ou quelque chose rendant la carte unique
par ce numéro. Le constructeur ne doit jamais produire une deuxième
carte ayant ce meme numéro tout en ayant le meme nombre représenté sur
les 32 premiers bits. Vous pouvez dons avoir plusieurs cartes du meme
type dans votre ordinateur , et l'ensemble des 64 bits permet de
rendre chacune unique.
Les groupes de 32 bits ne peuvent en aucun cas etre tous
à zéro. Cela permet d'effectuer le OU
pour afficher les
bits non nuls lors de la première recherche dicotomique.
Lorsque le système à détecter toutes les cartes présentes,
ils les réactivent une à une, et recherche les ressources dont elles
ont besoin, quels sont les choix possibles pour les interruptions,
etc. Un scan
de toutes les cartes est effectué pour
collecter toutes ces informations.
Cette information est combinée avec l'information
recueillie des fichiers ECU se trouvant sur le disque dur ou dans le
BIOS. Le support ECU et BIOS du plug-and-play pour le matériel est
très simple, et les périphérique n'ont pas besoin d'etre vraiment
PnP. Mais en examinant les informations du BIOS et des fichiers ECU,
les routines d'interrogations peuvent permettre aux périphériques
PnP to avoid those devices the probe code cannot
relocate.
Alors les périphériques PnP sont encore interrogés, et
renvoient leur IRQ, adresse mémoire, ports d'entrée/sorties et
DMA. Les périphériques sont alors activés, en prenant en compte ces
valeurs, et le reste jusqu'au prochaine redémarrage du système. Bien
sur rien de vous empeche de les retirer, si le matériel le permet
:-).
Ceci n'explique pas toute la complexité de détection, mais
c'est une explication simple du processus de détection.
Est-ce que FreeBSD va supporter d'autres architectures matérielles?
Différentes personnes sont interressées sur un support
multi-architecture pour FreeBSD, et certaines personnes sont en train
de porter FreeBSD sur la plateforme ALPHA, en coopération avec
DEC. Pour plus d'informations sur les nouvelles architectures utilisez
la mailling liste <freebsd-platforms@FreeBSD.ORG>
J'ai besoin d'un major number
pour un gestionnaire de périphérique que je viens d'écrire
Ceci dépend du fait que vous vouliez ou non rendre public ce
gestionnaire. Si vous le désirez, envoyez nous une copie code source
du gestionnaire et les modifications nécessaires à apporter au fichier
files.i386 , un fichier de configuration et le
code du fichier MAKEDEV nécessaire
pour créer les fichiers spéciaux dont le gestionnaire à besoin. Si
vous ne désirez pas rendre plublic le code, ou si vous ne pouvez pas à
cause de certaines restrictions de votre license, alors utilisez le
major number
32 (pour les gestionnaires de type
caractère) et le major number
8 (pour les gestionnaires
de type blocs), qui sont réservés à ce type de chose. Dans les deux
cas nous sommes interessés par votre gestionnaire, discutez à son
propos sur la mailling liste <freebsd-hackers@FreeBSD.ORG> .
REMERCIEMENTS. **Mise à jour en cours**
Si vous voyez un problème avec cette FAQ, ou que vous voulez rajouter
une entrée, mailez nous à <FAQ@FreeBSD.ORG>
Nous apprécions tout commentaire, et seul votre aide nous permettra
d'améliorer cette FAQ !
FreeBSD Core Team
Version originale
Jordan Hubbard :
Ocasionnellement des mises à jour et des corrections de la FAQ
Doug White :
Les services ci-dessus et plus qu'il n'en faut sur freebsd-questions
Joerg Wunsch :
Les services ci-dessus et plus qu'il n'en faut sur Usenet
Garrett Wollman :
Réseaux et format
Jim Lowe :
Informations Multicast
Peter da Silva :
Tapage de la FAQ FreeBSD.
The FreeBSD Team :
Soumission d'information...
L'équipe de traduction Francaise:
Renaud BREARD
Robert Brive
Sébastien GIORIA
Frédéric Haby
Stéphane LEGRAND
Philippe Nolin
Philippe REGNAULD
Pierre Yves RITSCHARD
Tuyêt Trâm DANG NGOC
Et pour tous les autres que nous avons oubliés, mille excuses, et merci de tout coeur !
diff --git a/fr_FR.ISO8859-1/books/handbook/mirrors/chapter.xml b/fr_FR.ISO8859-1/books/handbook/mirrors/chapter.xml
index 7ab5dfdf2a..841005e80d 100644
--- a/fr_FR.ISO8859-1/books/handbook/mirrors/chapter.xml
+++ b/fr_FR.ISO8859-1/books/handbook/mirrors/chapter.xml
@@ -1,3669 +1,3669 @@
Se procurer &os;
&trans.a.fonvieille;
Editeurs de CD-ROMs et DVDs
Produits vendus en boîte
Des versions en boîte de &os; sont disponibles (CDs de
&os;, logiciels supplémentaires, et documentation papier)
auprès de plusieurs revendeurs:
CompUSA
WWW:
Frys Electronics
WWW:
CDs et DVDs
Les CDs et DVDs de &os; sont disponibles auprès de
nombreux revendeurs en ligne:
BSD Mall by Daemon News
PO Box 161
Nauvoo , IL 62354
USA
Phone: +1 866 273-6255
Fax: +1 217 453-9956
Email: sales@bsdmall.com
WWW:
BSD-Systems
Email: info@bsd-systems.co.uk
WWW:
FreeBSD Mall, Inc.
3623 Sanford Street
Concord , CA 94520-1405
USA
Phone: +1 925 240-6652
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Allemagne
Phone: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
France
WWW:
JMC Software
Ireland
Phone: 353 1 6291282
WWW:
Linux CD Mall
Private Bag MBE N348
Auckland 1030
New Zealand
Phone: +64 21 866529
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
Royaume-Uni
Phone: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
Phone: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australie
21 Ray Drive
Balwyn North
VIC - 3104
Australie
Phone: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Distributeurs
Si vous êtes un revendeur et désirez vendre des
CDROMs de &os;, veuillez contacter un distributeur:
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
USA
Phone: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
Phone: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
Phone: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
USA
Phone: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
Sites FTP
>Les sources officielles de &os; sont disponibles via FTP
anonyme à partir d'un ensemble de sites miroir. Le site
dispose d'une bonne connectivité et autorise un grand
nombre de connexions, mais vous avez intérêt à
trouver plutôt un site miroir “plus proche”
(tout particulièrement si vous décidez de mettre en
place une sorte de miroir à votre tour).
La base de données
des sites miroir &os; est plus à jour que la liste
de ce Manuel, parce qu'elle tire ses informations du DNS
plutôt que se reposer sur une liste statique de machines.
De plus, &os; est disponible via FTP anonyme à partir
des sites miroir ci-dessous. Si vous décidez de vous
procurer &os; via FTP anonyme, essayez si possible d'utiliser un
site proche de vous. Les sites miroir listés en tant que
“sites miroir primaires“ disposent
généralement de l'intégralité de
l'archive &os; (toutes les versions actuellement disponibles
pour chacune des architectures) mais vous obtiendrez les temps
de téléchargements les plus courts à partir
d'un site situé dans votre pays ou votre région. Les sites régionaux
proposent les versions les plus récentes des
architectures les plus populaires mais pourraient ne pas
proposer l'intégralité de l'archive de &os;. Tous
les sites proposent un accès FTP anonyme mais certains
sites fournissent également un accès suivant
d'autres méthodes. Les méthodes d'accès
disponibles pour chaque site sont données entre
parenthèses après le nom de la machine.
&chap.mirrors.ftp.inc;
CVS anonyme
-
- Introduction
+
+ Introduction
CVS
anonyme
CVS anonyme (ou comme on l'appelle également,
anoncvs ) est une de fonctionnalité
des utilitaires CVS livrés avec &os; qui permet la
synchronisation avec un référentiel CVS sur une machine
distante. Elle permet, entre autres, aux utilisateurs
de &os;, de lire, sans autorisation particulière, les
archives disponibles sur l'un des serveurs
anoncvs officiels du projet
&os;. Pour l'utiliser, il suffit simplement de définir
la variable d'environnement CVSROOT
pour qu'elle pointe sur le serveur
anoncvs approprié,
fournir le fameux mot de passe “anoncvs” avec la
commande cvs login , puis ensuite utiliser
la commande &man.cvs.1; pour y accéder de la même
manière qu'à un référentiel local.
La commande cvs login , stocke les
mots de passe utilisés pour authentification sur le
serveur CVS dans un fichier appelé
.cvspass dans votre répertoire
HOME . Si ce fichier n'existe pas, vous
pourrez obtenir une erreur quand vous essaierez d'utiliser
cvs login pour la première fois.
Créez juste un fichier .cvspass vide,
et relancez la commande.
Bien que l'on puisse aussi dire que CVSup et anoncvs
assurent globalement la même fonction, il y a diverses
nuances qui peuvent influencer l'utilisateur dans son choix
d'une méthode de synchronisation. En résumé,
CVSup utilise plus efficacement
les ressources réseau et est de loin la méthode la plus
sophistiquée des deux, mais cela a un prix. Pour employer
CVSup , il faut d'abord installer
et configurer un programme client spécialisé
avant de pouvoir récupérer quoi que ce soit,
et il faut ensuite travailler par sous-ensemble relativement
importants, que CVSup appelle
catalogues .
anoncvs , au contraire, peut
être utilisé pour examiner n'importe quoi, d'un
seul fichier à un programme particulier (tel que
ls ou grep ) en faisant
référence au nom du module CVS. Bien sûr,
anoncvs n'est bon qu'à lire
un référentiel CVS, si vous avez donc l'intention de
développer localement sur un référentiel
partagé avec le projet &os;, alors vous n'avez d'autre choix
que d'utiliser CVSup .
-
- Utiliser CVS anonyme
+
+ Utiliser CVS anonyme
Configurer &man.cvs.1; pour utiliser un
référentiel CVS anonyme
consiste simplement à définir la variable
d'environnement CVSROOT pour qu'elle pointe
sur l'un des serveurs anoncvs du
projet &os;. A la date de rédaction de ce document,
les serveurs suivants sont disponibles:
Autriche :
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(Utilisez cvs login et entrez le mot
de passe “anoncvs” quand on vous le
demandera.)
France :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (mot de passe “anoncvs”), ssh (aucun
mot de passe))
Allemagne :
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
Japon :
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Utilisez cvs login et entrez le mot
de passe “anoncvs” quand on vous le
demandera.)
Taiwan :
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(pserver (utilisez cvs login and entrez
n'importe quel mot de passe quand on vous le demandera),
ssh (pas de mot de passe))
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
USA :
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(ssh uniquement - pas de mot de passe)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
USA :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs
(ssh2 uniquement - pas de mot de passe)
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
Comme CVS vous permet de récupérer
(“check out”) pratiquement n'importe quelle
version des sources de &os; ayant existé (ou, dans
certains cas, à venir), vous devez maîtriser
l'indicateur de révision (-r ) de
&man.cvs.1; et connaître les valeurs qu'il peut prendre
dans le référentiel du projet &os;.
Il y a deux sortes d'étiquettes, les étiquettes
de révision et les étiquettes de branches. Les
étiquettes de révision s'appliquent à une
révision particulière. Leur signification ne
varie pas d'un jour à l'autre. Les étiquettes de
branche, à l'inverse, se rapportent à la
dernière révision
sur une branche particulière à un moment donné.
Comme les étiquettes de branche ne se rapportent pas
à une révision particulière, elles peuvent
désigner demain quelque chose de différent de ce
qu'elles référencent
aujourd'hui.
présente les étiquettes
de révision qui peuvent intéresser l'utilisateur.
Encore une fois, aucune ne s'applique au catalogue des
logiciels portés puisque ce dernier ne présente pas
de multiples branches de développement.
Quand vous précisez une étiquette de branche,
vous obtenez normalement la dernière version des fichiers
de cette branche de développement. Si vous voulez une
version antérieure, vous pouvez l'obtenir en
précisant une date avec l'indicateur -D
date . Reportez-vous aux pages de manuel
&man.cvs.1; pour plus de détails.
Exemples
Bien qu'il soit vraiment recommandé de lire
attentivement les pages de manuel de &man.cvs.1; avant de
faire quoi que ce soit, voici quelques exemples rapides
qui vous montrent essentiellement comment utiliser
CVS anonyme :
Récupérer quelque chose de -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter any word for password
.
&prompt.user; cvs co ls
Utiliser SSH pour récupérer
l'arborescence src/ :
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
Récupérer la version 6-STABLE de
&man.ls.1;:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter any word for password
.
&prompt.user; cvs co -rRELENG_6 ls
Générer la liste des différences
concernant &man.ls.1; (sous forme de “diffs
unifiés”) entre différentes versions de &os;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter any word for password
.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
Savoir quels autres noms de modules peuvent
être utilisés:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter any word for password
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Autres ressources
Les ressources supplémentaires suivantes peuvent
être utiles pour apprendre à se servir de
CVS:
Guide CVS de Cal Poly.
CVS Home ,
la communauté de développement et de support
de CVS.
CVSweb est
l'interface Web pour CVS du projet &os;.
Utiliser CTM
CTM
CTM est une méthode pour
synchroniser une arborescence de répertoires distants
avec une arborescence centrale. Elle a été
développée pour être utilisée avec
l'arborescence des sources de &os;, bien que d'autres
puissent avec le temps la trouver utile pour d'autres
besoins. Il existe actuellement très peu, sinon aucune,
documentation sur la façon de créer les deltas,
contactez-donc la liste de diffusion &a.ctm-users.name; pour obtenir plus
d'informations et si vous souhaitez utiliser
CTM pour autre chose.
Pourquoi utiliser CTM ?
CTM vous procurera un
exemplaire local de l'arborescence des sources de &os;.
Il y a plusieurs “moutures” de l'arborescence
disponibles. Que vous désiriez suivre toute l'arborescence
CVS ou seulement une de ses branches,
CTM peut vous fournir ce dont
vous avez besoin. Si vous développez activement sous
&os;, mais ne disposez que d'une connectivité TCP/IP
peu fiable ou n'en avez pas du tout, ou voulez tout
simplement que les modifications vous soient automatiquement
envoyées, CTM est ce qu'il vous
faut. Il vous faudra jusqu'à trois deltas par jour sur
les branches les plus actives. Cependant, vous devriez
envisager de vous les faire envoyer automatiquement par
courrier électronique. La taille des mises à jour
est toujours aussi petite que possible. Typiquement moins
de 5KO, occasionnellement (une fois sur 10), entre 10 et
50KO, et de temps à autre, une grosse modification de 100KO
ou plus.
Vous devrez aussi vous tenir au courant des
différentes contre-parties liées au fait de
travailler directement avec les sources en cours de
développement plutôt qu'avec les versions
publiées. C'est particulièrement vrai si vous
choisissez les sources de la branche “-CURRENT”.
Il est recommandé de lire Se
synchroniser avec la version -CURRENT de
FreeBSD.
Que vous faut-il pour utiliser
CTM ?
Vous aurez besoin de deux choses: le programme
CTM , et les deltas initiaux
à lui fournir (pour mettre à jour avec la version
“courante”).
Le programme CTM fait partie
de &os; depuis la publication de la version 2.0, et se
trouve dans /usr/src/usr.sbin/ctm si
vous avez un exemplaire des sources en ligne.
Vous pouvez obtenir les “deltas” à
fournir à CTM de deux
façons, par FTP ou par courrier électronique. Si vous
avez un accès FTP à l'Internet, les sites suivants
supportent l'accès à
CTM :
ou reportez-vous à la section Sites miroirs.
Allez dans le répertoire vous concernant et commencez
par télécharger le fichier
README .
Si vous souhaitez récupérer vos deltas par
courrier électronique:
Abonnez-vous à l'une des listes de distribution
CTM . &a.ctm-cvs-cur.name;
comprend toute l'arborescence -CURRENT.
&a.ctm-src-4.name; concerne la branche 4.X, etc...
(Si vous ne savez pas comment vous abonner à une liste,
cliquez sur le nom de la liste ci-dessus ou sur
&a.mailman.lists.link; puis cliquez sur la liste à
laquelle vous désirez vous abonner. La page devrait
contenir toutes les instructions nécessaires à
l'abonnement.)
Dès que vous commencez à recevoir vos
mises à jour CTM par courrier
électronique, vous pouvez utiliser le programme
ctm_rmail pour les décompacter et
les appliquer. Vous pouvez en fait utiliser directement le
programme ctm_rmail à partir d'une
entrée dans /etc/aliases si vous
voulez automatiser complètement le processus. Consultez les
pages de manuel de ctm_rmail pour plus de
détails.
Quelle que soit la méthode que vous utilisez
pour récupérer les deltas
CTM , vous devriez vous abonner
à la liste de diffusion &a.ctm-announce.name;.
Ce sera, dans l'avenir, le seul endroit où les
annonces concernant le fonctionnement du système
CTM seront faites.
Cliquez sur le nom de la liste et suivez les instructions
pour s'inscrire à la liste.
Utiliser CTM pour la
première fois
Avant de pouvoir utiliser les deltas
CTM , il vous faut un point de
départ pour appliquer les deltas générés
à partir de là.
Tout d'abord vous devez déterminer ce que vous
avez déjà. Tout le monde peut partir d'un
répertoire “vide”. Vous devez utiliser
un delta “Empty” (vide) au départ pour
débuter votre arborescence supportée par
CTM .
Il fut question que l'un de ces deltas de départ
soit distribué sur le CD, cependant ce n'est
actuellement pas le cas.
Puisque les arborescences représentent plusieurs
dizaines de mégaoctets, vous préférerez
commencer avec ce que vous avez déjà sous la main.
Si vous disposez d'une version de &os; sur CD, vous
pouvez copier ou extraire les sources initiales
qui s'y trouvent. Cela évitera un transfert de
données conséquent.
Vous pouvez reconnaître ces deltas de transition
au X qui suit leur numéro de
séquence
(src-cur.3210XEmpty.gz par exemple).
La dénomination après le X
correspond à l'origine de votre “racine”
initiale. Empty est un répertoire
vide. La règle est qu'une transition de base à
partir de Empty est
générée tous les 100 deltas. Au passage,
elles sont volumineuses! De 70 à 80 mégaoctets de
données compressées avec gzip
est une taille habituelle pour les deltas
XEmpty .
Une fois que vous avez sélectionné un delta
initial à partir duquel commencer, il vous faudra
également tous les deltas de numéro supérieur
qui le suivent.
Utiliser CTM au quotidien
Pour appliquer les deltas, tapez simplement:
&prompt.root; cd /où/vous/voulez/mettre/les/fichiers
&prompt.root; ctm -v -v /où/vous/mettez/vos/deltas/src-xxx.*
CTM reconnaît les deltas
qui ont été compressés avec gzip ,
vous n'avez donc pas besoin de les décompresser avant,
ce qui économise de l'espace disque.
A moins d'être absolument sûr du résultat,
CTM ne touchera pas à
votre arborescence. Pour contrôler la validité
d'un delta, vous pouvez également utiliser
l'indicateur -c et
CTM ne modifiera alors pas
votre arborescence; il vérifiera simplement
l'intégrité du delta et regardera s'il peut
s'appliquer proprement à votre arborescence en
l'état.
Il y a aussi d'autres option pour
CTM , voyez les pages de manuel ou
lisez les sources pour plus d'informations.
C'est à peu près tout. Chaque fois que vous recevez
un delta, passez-le à CTM
pour tenir à jour votre arborescence des sources.
N'effacez pas les deltas s'il vous est difficile de
les télécharger de nouveau. Vous pouvez en avoir
besoin si quelque chose mauvais se produit. Même
si vous n'avez que des disquettes, envisagez d'utiliser
&man.fdwrite.1; pour en faire une copie.
Conserver vos modifications locales
Si vous êtes développeur vous voudrez
expérimenter et modifier des fichiers de l'arborescence
des sources. CTM supporte
de façon limitée les modifications locales: avant
de contrôler l'existence d'un fichier
foo , il regarde tout d'abord s'il y a
un fichier foo.ctm . Si ce fichier
existe, CTM l'utilisera au lieu
de foo .
Ce comportement vous permet de conserver de façon
simple des modifications locales: copiez simplement les
fichiers que vous envisagez de modifier dans des fichiers
de même nom, mais avec le suffixe
.ctm . Vous pouvez ensuite bidouiller
tranquillement le code, pendant que
CTM maintient à jour le
fichier .ctm .
D'autres options intéressantes de
CTM
Savoir avec précision ce que va modifier
une mise à jour
Vous pouvez connaître la liste des modifications
que CTM appliquera à
votre archive des sources en utilisant
CTM avec l'option
-l .
C'est utile si vous voulez conserver la trace des
modifications, pré- ou post- modifier les fichiers
concernés, ou vous vous sentez un tantinet
paranoïaque.
Faire des sauvegardes avant la mise
à jour
Parfois vous voudrez sauvegarder tous les fichiers
qui seraient toucher par une mise à jour
CTM .
Avec l'option
-B fichier_de_sauvegarde ,
CTM sauvegarde tous les
fichiers que seraient modifiés par delta
CTM donné dans
fichier_de_sauvegarde .
Restreindre la liste des fichiers touchés
par une mise à jour
Parfois vous voudrez restreindre le champ d'application
d'une mise à jour CTM ,
ou serez intéressé à n'extraire que
quelques fichiers d'une séquence de deltas.
Vous pouvez contrôler la liste de fichiers
sur laquelle travaillera CTM
en donnant comme filtre une expression régulière
avec les options -e et
-x .
Par exemple, pour extraire une version à jour
de lib/libc/Makefile de la série
de deltas CTM que vous
avez sauvegardé, lancez les commandes:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Pour chaque fichier d'un delta
CTM , les options
-e et -x sont
appliquées dans l'ordre donné sur la ligne de
commande. Le fichier est traité par
CTM uniquement s'il est
sélectionné après application des options
-e et -x .
Perspectives pour CTM
Il y en a des tonnes:
Utiliser une méthode d'authentification
au système CTM pour
détecter la substitution de mises à
jour.
Faire le ménage dans les options de
CTM , elles commencent à
engendrer de la confusion et à contredire
l'intuition.
Divers
Il existe aussi une séquence de deltas pour le
catalogue des logiciels portés, mais elle n'a pas
reçue beaucoup d'écho jusqu'ici.
Miroirs CTM
CTM/FreeBSD est disponible via
FTP anonyme sur les miroirs suivants. Si vous faites le choix
de vous procurer CTM via FTP anonyme,
utilisez s'il vous plaît un site proche de vous.
En cas de problème, contactez la liste de diffusion
&a.ctm-users.name;.
Californie, Bay Area, source officielle
Afrique du Sud, serveur de sauvegarde pour les anciens
deltas
Taïwan/R.O.C.
Si vous n'avez pas trouvé de miroir proche de vous,
où si le miroir est incomplet, essayez d'utiliser un moteur
de recherche comme
alltheweb .
Utiliser CVSup
Introduction
CVSup est un ensemble de
logiciels pour la distribution et la mise à jour
d'arborescences de sources à partir d'un
référentiel CVS principal sur une machine serveur
distante. Les sources de &os; sont archivées sous
un référentiel CVS sur une machine centrale de
développement en Californie. Grâce à
CVSup , les utilisateurs
de &os; peuvent facilement tenir à jour leur
propre arborescence de sources.
CVSup utilise le modèle
pull de mise à jour. Dans ce
schéma, chaque client réclame les mises à
jour au serveur, si et quand il le souhaite. Le serveur
attend passivement les demandes de mises à jour
de ses clients. Toutes les mises à jour sont donc faites
à la demande du client. Le serveur n'envoie jamais de
mise à jour non sollicitée. Les utilisateurs doivent
soit exécuter le client CVSup
à la main pour obtenir une mise à jour, soit
mettre en oeuvre une tâche cron
pour l'exécuter automatiquement et à intervalles
réguliers.
Le terme CVSup ,
avec les majuscules, désigne l'ensemble du logiciel.
Ses principales composantes sont le client
cvsup qui s'exécute sur les
machines de chaque utilisateur, et le serveur
cvsupd , qui tourne sur tous les sites
miroir de &os;.
En lisant la documentation et les listes de diffusion
de &os;, vous trouverez des références à
sup . sup
était le prédécesseur de
CVSup , et remplissait la
même fonction. CVSup
est utilisé de la même façon que
sup et, emploie de fait des
fichiers de configuration qui sont compatibles avec ceux de
sup . sup
n'est plus utilisé pour le projet &os;, parce que
CVSup est à la fois plus
rapide et plus souple.
L'utilitaire csup est une
réécriture en C du logiciel
CVSup . Son plus grand avantage
est d'être plus rapide et de ne pas dépendre du
langage Modula-3, vous n'avez donc pas besoin de
l'installer. De plus si vous utilisez &os; 6.2 ou une
version suivante, vous pouvez directement utiliser cet
utilitaire puisqu'il fait partie du système de base.
Les anciennes versions de &os; ne disposent pas de
&man.csup.1; dans leur système de base, mais vous
pouvez facilement installer le logiciel porté
net/csup , ou le
paquetage pré-compilé correspondant.
L'utilitaire csup ne supporte
pas, cependant, le mode CVS. Si vous désirez
dupliquer l'intégralité de
dépôts, vous aurez toujours besoin de
CVSup . Si vous avez
décidé d'utiliser
csup , passez les étapes
concernant l'installation de
CVSup et remplacez les
références à
CVSup par
csup dans le reste de cette
section.
Installation
La méthode la plus simple pour installer
CVSup est d'utiliser la version
pré-compilée net/cvsup du catalogue des logiciels portés
de &os;. Si vous préférez compiler
CVSup à partir des sources, vous
pouvez directement utiliser le logiciel porté
net/cvsup . Cependant
soyez averti: le logiciel porté
net/cvsup est écrit en
Modula-3, qui demande un temps et un espace disque non
négligeables pour le télécharger et le
compiler.
Si vous avez l'intention d'utiliser
CVSup sur une machine qui ne
disposera pas de
&xfree86; ou &xorg; , comme un serveur,
assurez-vous que le logiciel porté de n'incluera pas
l'interface graphique (“GUI”) de
CVSup ,
net/cvsup-without-gui .
Si vous voulez installer csup
sous &os; 6.1 et version précédentes, vous
pouvez utiliser le paquetage pré-compilé
net/csup du catalogue des logiciels portés.
Si vous préférez compiler
csup à partir des sources,
vous pouvez directement utiliser le logiciel porté
net/csup .
Configuration de CVSup
Le fonctionnement de CVSup
est contrôlé par un fichier de configuration
appelé supfile . Il y a des
exemples de fichiers supfile dans
le répertoire
/usr/share/examples/cvsup/ .
Les informations du fichier supfile
répondent pour CVSup
aux question suivantes:
Quels fichiers
voulez-vous télécharger?
Quelles versions de
ces fichiers voulez-vous?
D'où voulez-vous
les télécharger?
Où voulez-vous les
mettre sur votre machine?
Où voulez-vous
mettre les fichiers d'état de votre
machine?
Dans les sections suivantes, nous allons renseigner
un fichier supfile typique en
répondant une à une à chacune de ces questions.
Commençons par décrire la structure d'ensemble
d'un fichier supfile .
Un fichier supfile est un fichier
texte. Les commentaires débutent par un
# et se prolongent jusqu'à la fin de
la ligne. Les lignes vides ou qui ne contiennent que
des commentaires sont ignorées.
Les autres lignes décrivent les ensembles de
fichiers que l'utilisateur souhaite recevoir. Ces lignes
commencent par le nom d'un “catalogue” -
collection , un regroupement logique de
fichiers défini par le serveur. Le nom du catalogue
dit au serveur quels fichiers vous voulez. Ce nom est
éventuellement suivi d'un ou plusieurs champs,
séparés par un espace. Ces champs répondent aux
questions listées ci-dessus. Il y deux types de champs:
des indicateurs et des valeurs. Un indicateur est un
mot-clé autonome, e.g., delete ou
compress . Une valeur commence
aussi par un mot-clé, mais il est impérativement
suivi sans espace par un = et un
deuxième mot. Par exemple,
release=cvs est un champ définissant
une valeur.
Un fichier supfile spécifie
en général plus d'un catalogue à
télécharger. Une façon de construire un fichier
supfile consiste à préciser
explicitement tous les champs nécessaires pour chaque
catalogue. Cependant, cela tend à donner des fichiers
supfile avec des lignes assez longues,
et ce n'est pas très pratique parce que la plupart des
champs sont les mêmes pour tous les catalogues du
fichier supfile .
CVSup fournit un mécanisme
pour s'affranchir de ce problème. Les lignes qui
commencent par le nom du pseudo-catalogue spécial
*default servent à définir les
indicateurs et les valeurs qui seront pris par
défaut pour les catalogues listés ensuite dans le
fichier supfile . Une valeur par
défaut peut-être surchargée pour un catalogue
particulier, en associant au catalogue lui-même une
valeur différente. Les valeurs par défaut peuvent
également être redéfinies, ou bien on peut en
définir de nouvelles, en cours de fichier
supfile , par de nouvelles lignes
*default .
Sachant cela, nous allons maintenant mettre au point
un fichier supfile pour
télécharger et mettre à jour l'arborescence
principale de
FreeBSD-CURRENT.
Quels fichiers
voulez-vous télécharger?
Les fichiers disponibles via
CVSup sont regroupés par
“catalogues” -
collections . Les catalogues
disponibles sont décrits dans la
section suivante.
Dans notre exemple, nous souhaitons recevoir toute
l'arborescence principale du système &os;. Il existe
un unique gros catalogue src-all qui
correspond à tout cela. Pour commencer à renseigner
notre fichier supfile , nous listons
simplement les catalogues, un par ligne (dans notre cas,
une seule ligne):
src-all
Quelle(s) version(s)
voulez-vous télécharger?
Avec CVSup , vous pouvez
obtenir pratiquement n'importe quelle version qui ait
existé des sources. C'est possible parce que le
serveur cvsupd travaille
directement à partir du référentiel CVS, qui
contient toutes les versions. Vous indiquez quelle
version vous voulez en utilisant les valeurs
tag= et date= .
Faites très attention à définir
correctement la valeur tag= .
Certaines étiquettes ne s'appliquent qu'à
certains catalogues. Si l'étiquette que vous
donnez n'est pas valable ou mal orthographiée,
CVSup effacera des fichiers
que vous ne vouliez probablement pas supprimer. En
particulier, n'utilisez que
tag=. pour les catalogues
ports-* .
Les valeurs données avec tag=
sont des étiquettes symboliques définies dans
le référentiel. Il y a deux sortes
d'étiquettes, les étiquettes de révision et
les étiquettes de branches. Les étiquettes de
révision s'appliquent à une révision
particulière. Leur signification ne varie pas d'un
jour à l'autre. Les étiquettes de branches,
à l'inverse, se rapportent à la dernière
révision sur une branche particulière à un
moment donné. Comme les étiquettes de branches
ne se rapportent pas à une révision
particulière, elles peuvent désigner demain
quelque chose de différent de ce qu'elles
référencent aujourd'hui.
contient les étiquettes
de branches qui peuvent intéresser les utilisateurs.
Quand on spécifie une étiquette dans
le fichier de configuration de
CVSup , elle doit être
précédée du champ tag=
(RELENG_4 deviendra
tag=RELENG_4 ). Gardez à l'esprit
que seule l'étiquette tag=. n'a de
signification pour le catalogue des logiciels
portés.
Faites très attention à mentionner
précisément l'étiquette exacte.
CVSup ne sait
différencier une étiquette valide d'une
étiquette qui ne l'est pas. Si vous orthographiez
mal l'étiquette, CVSup
se comportera comme si vous aviez donné une
étiquette valide qui ne se réfère
à aucun fichier. Dans ce cas il supprimera
toutes les sources que vous avez déjà.
Lorsque vous indiquez une étiquette de
branche, vous recevez normalement les dernières
versions des fichiers sur cette branche de
développement. Si vous voulez récupérer
des version antérieures, vous pouvez le faire
en donnant une date avec le champ date= .
La page de manuel de &man.cvsup.1; vous expliquent
comment le faire.
Dans notre exemple, nous désirons obtenir
&os.current;. Nous ajoutons alors la ligne suivante
au début de notre fichier
supfile :
*default tag=.
Il existe un cas particulier important qui se produit
lorsque que l'on ne spécifie ni le champ
tag= ni le champ
date= . Dans ce cas, vous obtenez
alors les fichiers RCS directement du
référentiel CVS du serveur, plutôt que de
recevoir une version donnée. Les développeurs
préfèrent généralement cette
façon de travailler.
En maintenant une version du référentiel
lui-même sur leur système, ils ont la
possibilité de consulter l'historique des
révisions et
d'accéder aux versions antérieures des fichiers.
Cet avantage ne s'obtient cependant qu'au prix d'une
consommation importante d'espace disque.
D'où voulez-vous
les télécharger?
Nous employons le champ host=
pour dire à cvsup où
récupérer ses mises à jour.
N'importe quel des
sites miroir CVSup
fera l'affaire, bien que vous devriez essayer de
choisir un site proche de vous. Dans cet exemple,
nous utiliserons un site fictif de distribution de
&os; cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
Vous devrez changer le site pour un qui existe
réellement avant d'exécuter
CVSup . Lors de l'exécution
de cvsup , vous pouvez surcharger cette
définition sur la ligne de commande avec l'option
-h
nom_de_machine .
Où voulez-vous
les mettre sur votre machine?
Le champ prefix= dit à
cvsup où mettre les fichiers
qu'il obtient. Dans l'exemple, nous mettrons les fichiers
source directement dans notre arborescence des sources,
/usr/src . Le répertoire
src est déjà implicitement
défini dans les catalogues que nous avons choisis
de télécharger, voici donc la définition
correcte:
*default prefix=/usr
Où
cvsup doit-il mettre les fichiers
d'état?
Le client CVSup tient à
jour des fichiers d'état dans ce qui est appelé le
répertoire de “base”. Ces fichiers
permettent à CVSup de
travailler plus efficacement en gardant la trace des
modifications que vous avez déjà reçues.
Nous utiliserons le répertoire de base standard,
/var/db :
*default base=/var/db
Si votre répertoire de base n'existe pas encore,
c'est le moment de le créer. Le client
cvsup refusera de s'exécuter si le
répertoire de base n'existe pas.
Diverses autres options de configuration dans le
fichier supfile :
Il y a une autre ligne d'instruction qui doit
normalement figurer dans le fichier
supfile :
*default release=cvs delete use-rel-suffix compress
release=cvs dit au serveur
d'obtenir les informations du référentiel principal
de &os;. C'est quasiment toujours le cas, mais il existe
d'autres possibilités qui sortent du cadre du présent
document.
delete donne à
CVSup l'autorisation de
supprimer des fichiers. Vous devriez toujours utiliser
cette possibilité, de sorte que
CVSup puisse vraiment maintenir
à jour votre arborescence des sources.
CVSup veille à ne supprimer
que les fichiers qu'il maintient. Les fichiers
supplémentaires que vous pourriez avoir ne seront pas
touchés.
use-rel-suffix est...
ésotérique. Si vous voulez vraiment savoir de
quoi il retourne, lisez la page de manuel de
&man.cvsup.1;. Sinon, mettez cet indicateur et ne vous en
souciez pas plus.
compress permet d'utiliser un
algorithme de compression de type &man.gzip.1; sur la
ligne de communication. Si votre connexion a la vitesse
d'une ligne T1 ou plus, vous ne devriez probablement pas
utiliser la compression. Sinon, cela facilite
substantiellement les choses.
Assembler les morceaux:
Voici le fichier supfile de notre
exemple en entier:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
Le fichier refuse
Comme mentionné ci-dessus,
CVSup utilise une méthode de
type pull . Fondamentalement, cela
signifie que vous vous connectez au serveur
CVSup , ce dernier dit, “Voici
ce que vous pouvez télécharger...”, puis
votre client répond “Ok, je prendrai ceci, ceci,
ceci et cela”. Dans la configuration par défaut,
le client CVSup
téléchargera chaque fichier associé avec
le catalogue et l'étiquette que vous avez choisi dans
le fichier de configuration. Cependant cela ne correspond
pas toujours à ce que vous désirez, tout
particulièrement si vous mettez à jour les
arborescences doc ,
ports , ou www
— la plupart des personnes sont incapables de lire
quatre ou cinq langues différentes, et donc elles n'ont
pas besoin de télécharger les fichiers
spécifiques à
certaines langues. Si vous mettez à jour le catalogue
des logiciels portés, vous pouvez remédier à
cela en spécifiant chaque catalogue individuellement
(e.g., ports-astrology ,
ports-biology , etc au lieu de
spécifier simplement ports-all ).
Cependant puisque les arborescences doc
et www ne disposent pas de catalogues
spécifiques à chaque langue, vous devez utiliser
une des nombreuses fonctions de
CVSup : le fichier
refuse .
Le fichier refuse indique
essentiellement à CVSup
qu'il ne doit pas télécharger chaque fichier
d'un catalogue; en d'autre termes, il dit au client
de refuser certains fichiers du
serveur. Le fichier refuse peut
être trouvé (ou, si vous n'en disposez pas
encore d'un, doit être placé) dans
base /sup/ .
base est défini dans votre
supfile ; notre répertoire
base est défini en tant que
/var/db ce qui signifie
que le fichier refuse est par
défaut
/var/db/sup/refuse .
Le fichier refuse a un format
très simple; il contient tout simplement les noms des
fichiers ou des répertoires que vous ne
désirez pas rapatrier. Par exemple, si vous ne
pouvez parler d'autres langues que l'anglais ou un peu
d'allemand, et vous ne ressentez pas le besoin de lire
la traduction en allemand de la documentation, vous pouvez mettre
ce qui suit dans le fichier
refuse :
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
et ainsi de suite pour les autres langues (vous pouvez
en trouver une liste complète en parcourant le
référentiel
CVS de &os; ).
Avec cette fonction très utile, les utilisateurs
disposant d'une connexion lente ou payant le temps de
connexion à la minute seront en mesure
d'économiser de précieuses minutes comme ils n'auront
plus du tout besoin de télécharger des
fichiers qu'ils n'utiliseront jamais. Pour plus
d'information sur les fichiers refuse
et d'autres caractéristiques intéressantes de
CVSup , consultez sa page de
manuel.
Exécuter CVSup
Vous êtes maintenant prêt à essayer de faire
une mise à jour. La ligne de commande à utiliser
est très simple:
&prompt.root; cvsup supfile
où supfile
est bien sûr le nom du fichier supfile
que vous venez de créer. Si vous êtes sous X11,
cvsup affichera une interface graphique
avec des boutons pour les opérations courantes. Appuyez
sur le bouton go et suivez le
déroulement des opérations.
Comme, dans cet l'exemple, vous mettez directement à
jour votre arborescence /usr/src ,
vous devrez exécuter le programme en tant que
root de façon à ce que
cvsup ait le droit de mettre à jour vos
fichiers. Comme vous venez juste de créer votre fichier
de configuration et n'avez encore jamais utilisé le
programme, il est compréhensible que cela vous rende
nerveux. Il est facile de faire un essai sans toucher
à vos précieux fichiers. Créez juste un nouveau
répertoire quelque part et donnez-le en argument
supplémentaire sur la ligne de commande:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
Le répertoire indiqué sera pris comme destination
pour tous les fichiers modifiés.
CVSup examinera les fichiers
habituels dans /usr/src , mais ne les
modifiera pas et n'en supprimera aucun.
Les modifications atterriront dans
/var/tmp/dest/usr/src .
CVSup ne touchera pas non plus
à ses fichiers d'état dans le répertoire de base,
lorsqu'il est invoqué de cette manière. Les
nouvelles versions de ces fichiers iront dans le
répertoire indiqué. A partir du moment où
vous avez les les droits en lecture sur
/usr/src , vous n'avez pas besoin
d'être root pour faire ce genre
d'essai.
Si vous n'êtes pas sous X11, ou si vous n'aimez
tout simplement pas les interfaces graphiques, vous
devrez ajouter quelques options supplémentaires sur la
ligne de commande de cvsup :
&prompt.root; cvsup -g -L 2 supfile
L'option -g dit à
CVSup de ne pas utiliser son
interface graphique. C'est automatique si vous n'êtes pas
sous X11, sinon vous devez le préciser.
L'option-L 2 dit à
CVSup d'afficher le détail de
ce qu'il est en train de faire. Il y a trois niveaux
de trace, de -L 0 à
-L 2 . La valeur par défaut est de 0,
ce qui équivaut à n'émettre que les messages
d'erreur.
Il y a de nombreuses autres option disponibles.
Pour en obtenir un résumé, tapez
cvsup -H . Pour une description plus
détaillée, reportez-vous aux pages de
manuel.
Une fois que vous êtes satisfait de la façon
dont se passent les mises à jour, vous pouvez mettre
en place une exécution de
CVSup à intervalles
réguliers en utilisant &man.cron.8;. Bien
évidemment, vous ne devez pas laisser
CVSup utiliser don interface
graphique quand vous le lancez depuis &man.cron.8;.
Catalogue de fichiers CVSup
Les catalogues de fichiers disponibles via
CVSup sont organisés
hiérarchiquement. Il y a quelques gros catalogues, qui
sont divisés en plus petits sous-catalogues. Recevoir
un gros catalogue équivaut à recevoir chacun de ces
sous-catalogues. Les relations hiérarchiques entre
les sous-catalogues sont décrites par les indentations
dans la liste ci-dessous.
Les catalogues habituellement les plus employés sont
src-all , et ports-all .
Les autres catalogues ne sont utilisés que par de petits
groupes de personnes pour des besoins particuliers, et
certains sites miroir ne les mettent pas à
disposition.
cvs-all release=cvs
Le référentiel CVS principal de &os;,
incluant les logiciels de chiffrement.
distrib release=cvs
Les fichiers ayant trait à la distribution
et à la mise en place de sites miroir
&os;.
doc-all release=cvs
Les sources du manuel &os; et d'autres
documentations. Cela de comprend pas les
fichiers pour le site Web de &os;.
ports-all release=cvs
Le catalogue des logiciels portés de
&os;.
Si vous ne voulez pas mettre à
jour l'intégralité du catalogue
ports-all (l'intégralité
du catalogue des logiciels portés), mais
utiliser un des sous-catalogues listés
ci-dessous, assurez-vous de
toujours mettre à
jour le sous-catalogue
ports-base ! Dès qu'il
y a un changement dans l'infrastructure
de compilation des logiciels portés
représentée par
ports-base , il est certain
que ces changements seront utilisés
par un logiciel porté très rapidement.
Donc, si vous ne mettez à jour que les
logiciels portés en tant que tel et
qu'ils utilisent certains des changements,
il y a de grandes chances pour que leur
compilation échoue avec de mystérieux
messages d'erreur. La
première chose
à faire dans ce cas est de vérifier
que votre sous-catalogue
ports-base est à
jour.
Si vous voulez construire votre propre
version locale du fichier
ports/INDEX , vous
devez accepter le catalogue
ports-all
(l'intégralité du catalogue des
logiciels portés). La construction de
ports/INDEX avec une
arborescence partielle n'est pas
supportée. Consultez la
FAQ .
ports-accessibility
release=cvs
Logiciels pour utilisateurs
handicapées.
ports-arabic
release=cvs
Support pour l'arabe.
ports-archivers
release=cvs
Outils d'archivage.
ports-astro
release=cvs
Logiciels d'astronomie.
ports-audio
release=cvs
Support du son.
ports-base
release=cvs
L'infrastructure de compilation
du catalogue des logiciels portés
— divers fichiers situés dans les
répertoires
Mk/ et
Tools/
sous-répertoires de la hiérarchie
/usr/ports .
Lisez l' important
avertissement ci-dessus: vous
devriez toujours
mettre à jour ce sous-catalogue,
dès que vous mettez à jour une partie
du catalogue des logiciels portés
de &os;!
ports-benchmarks
release=cvs
Evaluation de performances.
ports-biology
release=cvs
Biologie.
ports-cad
release=cvs
Outils de conception assistée
par ordinateur.
ports-chinese
release=cvs
Support pour le chinois.
ports-comms
release=cvs
Logiciels de communication.
ports-converters
release=cvs
Conversion entre codages de
caratères.
ports-databases
release=cvs
Bases de données.
ports-deskutils
release=cvs
Les choses que l'on trouvait
sur un bureau avant l'invention
des ordinateurs.
ports-devel
release=cvs
Outils de développement.
ports-dns
release=cvs
Logiciels relatifs au DNS.
ports-editors
release=cvs
Editeurs.
ports-emulators
release=cvs
Emulateurs d'autres systèmes
d'exploitation.
ports-finance
release=cvs
Applications concernant les finances
et l'argent.
ports-ftp
release=cvs
Clients et serveurs FTP.
ports-games
release=cvs
Jeux.
ports-german
release=cvs
Support pour l'allemand.
ports-graphics
release=cvs
Outils graphiques.
ports-hebrew
release=cvs
Support de l'hébreu.
ports-hungarian
release=cvs
Support du hongrois.
ports-irc
release=cvs
Outils pour l'IRC.
ports-japanese
release=cvs
Support pour le japonais.
ports-java
release=cvs
Outils &java;.
ports-korean
release=cvs
Support pour le coréen.
ports-lang
release=cvs
Langages de programmation.
ports-mail
release=cvs
Logiciels de courrier
électronique.
ports-math
release=cvs
Logiciels de calcul numérique.
ports-mbone
release=cvs
Applications MBone.
ports-misc
release=cvs
Utilitaires divers.
ports-multimedia
release=cvs
Logiciels pour le multimedia.
ports-net
release=cvs
Logiciels réseau.
ports-net-im
release=cvs
Logiciels de messagerie
instantanée.
ports-net-mgmt
release=cvs
Logiciels de gestion des
réseaux.
ports-net-p2p
release=cvs
Logiciels pour le peer to
peer
.
ports-news
release=cvs
Logiciels pour les forums de
discussion USENET.
ports-palm
release=cvs
Logiciels de support des machines
Palm .
ports-polish
release=cvs
Support pour le polonais.
ports-ports-mgmt
release=cvs
Utilitaires pour la gestion des
logiciels portés et des
paquetages.
ports-portuguese
release=cvs
Support pour le portugais.
ports-print
release=cvs
Logiciels d'impression.
ports-russian
release=cvs
Support pour le russe.
ports-science
release=cvs
Science.
ports-security
release=cvs
Outils de sécurité.
ports-shells
release=cvs
Interpréteurs de commandes.
ports-sysutils
release=cvs
Utilitaires système.
ports-textproc
release=cvs
Outils de traitement de texte (sauf les
logiciels de publication assistée par
ordinateur).
ports-ukrainian
release=cvs
Support de l'ukrainien.
ports-vietnamese
release=cvs
Support du vietnamien.
ports-www
release=cvs
Logiciels concernant le World Wide
Web.
ports-x11
release=cvs
Logiciel pour le système X window.
ports-x11-clocks
release=cvs
Horloges pour X11.
ports-x11-drivers
release=cvs
pilotes de périphérique
X11.
ports-x11-fm
release=cvs
Gestionnaires de fichiers pour
X11.
ports-x11-fonts
release=cvs
Polices de caractères et outils
associés pour X11.
ports-x11-toolkits
release=cvs
“Toolkits” X11.
ports-x11-servers
release=cvs
Serveurs X11.
ports-x11-themes
release=cvs
Thèmes X11.
ports-x11-wm
release=cvs
Gestionnaires de fenêtres pour
X11.
projects-all release=cvs
Les sources présentes dans le
dépots des projets &os;.
src-all release=cvs
Les sources du système &os;, comprenant les
logiciels de chiffrement.
src-base
release=cvs
Divers fichiers en haut de
la hiérarchie
/usr/src .
src-bin
release=cvs
Programmes utilisateurs qui peuvent
être utiles en mode mono-utilisateur
(/usr/src/bin ).
src-cddl
release=cvs
Utilitaires et bibliothèques sous
licence CDDL
(/usr/src/cddl ).
src-contrib
release=cvs
Utilitaires et bibliothèques
d'origine indépendante du projet &os;,
employés à peu près tels quels
(/usr/src/contrib ).
src-crypto release=cvs
Utilitaires et bibliothèques
pour le chiffrement d'origine indépendante
du projet &os;, employés à peu près tels
quels
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos et DES
(/usr/src/eBones ). Non
utilisés dans les versions de &os;
actuellement publiées.
src-etc
release=cvs
Fichiers de configuration du système
(/usr/src/etc ).
src-games
release=cvs
Jeux
(/usr/src/games ).
src-gnu
release=cvs
Utilitaires soumis à la licence
publique GNU
(/usr/src/gnu ).
src-include
release=cvs
Fichiers d'entête
(/usr/src/include ).
src-kerberos5
release=cvs
Logiciel de sécurité
Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
Logiciel de sécurité
KerberosIV
(/usr/src/kerberosIV ).
src-lib
release=cvs
Bibliothèques
(/usr/src/lib ).
src-libexec
release=cvs
Programmes système normalement
exécutés par d'autres programmes
(/usr/src/libexec ).
src-release
release=cvs
Fichiers nécessaires à la
génération
d'une version publiable de &os;
(/usr/src/release ).
src-rescue
release=cvs
Programmes liés en statique pour
les dépannages d'urgence; consultez
la page de manuel &man.rescue.8;
(/usr/src/rescue ).
src-sbin release=cvs
Utilitaires système pour le mode
mono-utilisateur
(/usr/src/sbin ).
src-secure
release=cvs
Commandes et bibliothèques pour
le chiffrage
(/usr/src/secure ).
src-share
release=cvs
Fichiers qui peuvent être
partagés par plusieurs systèmes
(/usr/src/share ).
src-sys
release=cvs
Le noyau
(/usr/src/sys ).
src-sys-crypto
release=cvs
Code du noyau destiné au chiffrement
(/usr/src/sys/crypto ).
src-tools
release=cvs
Divers outils pour la maintenance de
&os;
(/usr/src/tools ).
src-usrbin
release=cvs
Outils utilisateur
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
Utilitaires système
(/usr/src/usr.sbin ).
www release=cvs
Les sources du site WWW de &os;.
distrib release=self
Fichiers de configuration du serveur
CVSup . Utilisés par
les sites miroir
CVSup .
gnats release=current
Base de données GNATS d'historique
des bogues.
mail-archive release=current
Archives des listes de diffusion &os;.
www release=current
Les fichiers/données WWW publiés (pas les
fichiers source). Utilisés par les sites miroir
WWW.
Pour plus d'informations
Pour la FAQ de CVSup
et d'autres informations concernant CVSup ,
consultez la
page
Web de CVSup .
La plupart des discussions relatives à
l'utilisation de CVSup sous &os;
ont lieu sur la &a.hackers;. Les nouvelles versions du
logiciel y sont annoncés ainsi que sur la &a.announce;.
Pour toutes les questions et rapports de bogues concernant
CVSup , consultez la FAQ
CVSup .
Sites CVSup
Des serveurs CVSup pour &os;
fonctionnent aux sites suivants:
&chap.mirrors.cvsup.inc;
Utiliser Portsnap
Introduction
Portsnap est un système
de distribution sécurisée du catalogue des
logiciels portés de &os;. Approximativement chaque
heure, un instantané
du catalogue des
logiciels portés est généré,
rassemblé et signé de manière
chiffrée. Les fichiers résultants sont alors
distribués par l'intermédiaire du protocole
HTTP.
Tout comme CVSup ,
Portsnap utilise un modèle
de mise à jour de type pull : le
catalogue des logiciels portés packagé et
signé est placé sur un serveur Web qui attend
les requêtes des clients. Les utilisateurs doivent soit
exécuter manuellement &man.portsnap.8; pour
télécharger les mises à jour, soit
configurer &man.cron.8; pour un téléchargement
régulier et automatique des mises à jour.
Pour des raisons techniques,
Portsnap ne met pas à jour
le catalogue des logiciels portés directement dans le
répertoire /usr/ports ; le logiciel travaille
plutôt par défaut sur une version
compressée de l'arborescence des logiciels
portés dans le répertoire /var/db/portsnap . Cette copie
compressée est ensuite utilisée pour mettre
à jour le catalogue des logiciels portés.
Si Portsnap est
installé à partir du catalogue des logiciels
portés de &os;, alors l'emplacement par défaut
pour son instantané compressé sera /usr/local/portsnap au lieu de
/var/db/portsnap .
Installation
Sous &os; 6.0 et les versions plus récentes,
Portsnap fait partie du
système de base de &os;. Sous des versions plus
anciennes de &os;, il peut être installé à
partir du logiciel porté ports-mgmt/portsnap .
Configuration de Portsnap
L'exécution de Portsnap
est contrôlée par le fichier de configuration
/etc/portsnap.conf . Pour la plupart des
utilisateurs, le fichier de configuration par défaut
sera suffisant; pour plus de détails, consultez la page
de manuel &man.portsnap.conf.5;.
Si Portsnap est
installé à partir du catalogue des logiciels
portés, il utilisera
/usr/local/etc/portsnap.conf comme
fichier de configuration au lieu de
/etc/portsnap.conf . Ce fichier n'est pas
créé lors de l'installation du logiciel, mais un
fichier d'exemple est fourni; pour le copier à son
emplacement correct, utilisez la commande suivante:
&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf
Exécuter Portsnap pour la
première fois
Au premier lancement de la commande &man.portsnap.8;, il
sera nécessaire de télécharger un
instantané compressé de
l'intégralité de l'arborescence des logiciels
portés dans /var/db/portsnap (ou /usr/local/portsnap si
Portsnap a été
installé à partir du catalogue des logiciels
portés). Au début de l'année 2006, cela
représentait un téléchargement d'environ
41 Mo.
&prompt.root; portsnap fetch
Une fois que l'instantané compressé a
été récupéré, une copie
utilisable de l'arborescence des logiciels portés peut
être extraite dans le répertoire /usr/ports . Cela est
nécessaire même si une arborescence a
déjà été créée dans
ce répertoire (par exemple en utilisant
CVSup ), puisque cela met en place
une version de référence à partir de
laquelle portsnap peut déterminer
plus tard quelles parties du catalogue des logiciels
portés a besoin d'une mise à jour.
&prompt.root; portsnap extract
Dans l'installation par défaut de &os; /usr/ports n'est pas
créé. Si vous utilisez &os; 6.0-RELEASE,
ce répertoire doit être créé avant
d'utiliser la commande portsnap . Sur les
versions de &os; plus récentes ou de
Portsnap , cette
création est effectuée automatiquement à
la premiere utilisation de la commande
portsnap .
Mettre à jour l'arborescence des logiciels
portés
Après qu'un instantané initial du catalogue
des logiciels portés ait été
récupéré puis décompressé
dans le répertoire /usr/ports , la mise à jour
du catalogue se divise en deux étapes: la
récupération (fetch ) des
mises à jour de l'instantané, et leur
utilisation pour mettre à jour
(update ) le catalogue des logiciels
portés en tant que tel. Ces deux étapes peuvent
être effectuées par l'intermédiaire d'une
seule commande portsnap :
&prompt.root; portsnap fetch update
Des versions anciennes de portsnap ne
supporte pas cette syntaxe; en cas d'échec, utilisez
à la place ceci:
&prompt.root; portsnap fetch
&prompt.root; portsnap update
Exécuter Portsnap à partir de cron
Afin d'éviter tout problème
d'embouteillage
lors de l'accès aux
serveurs Portsnap ,
portsnap fetch ne fonctionnera pas à
partir d'une tâche &man.cron.8;. Il existe, à la
place, une commande portsnap cron
spécifique, qui patiente durant un délai
aléatoire pouvant aller jusqu'à 3600 secondes
avant de récupérer les mises à
jour.
De plus, il est fortement recommandé de ne pas
exécuter portsnap update à
partir d'une tâche cron , puisque cela
peut être à l'origine de graves problèmes
si la commande a lieu au même moment qu'un logiciel
porté est en train d'être compilé ou
installé. Cependant, les fichiers
INDEX peuvent être mis à
jour sans risque, et cela peut être fait en passant
l'indicateur -I à la commande
portsnap (bien entendu si portsnap
-I update est exécuté à par
cron , il sera alors nécessaire de
lancer portsnap update sans l'option
-I ultérieurement pour mettre à
jour le reste de l'arborescence).
L'ajout de la ligne suivante dans le fichier
/etc/crontab demandera à
portsnap de mettre à jour son
instantané compressé et les fichiers
INDEX du répertoire /usr/ports , et enverra un courrier
électronique si un logiciel porté
installé n'est pas à jour:
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
Si l'horloge système n'est pas positionnée
sur le fuseau horaire local, remplacez 3
par une valeur quelconque comprise entre 0 et 23, afin de
répartir de manière plus
équilibrée la charge sur les serveurs
Portsnap .
Des versions anciennes de portsnap ne
supportent pas l'utilisation de commandes multiples (par
exemple cron update ) lors de la même
invocation de portsnap . Si la ligne
précédente échoue, essayez de remplacer
portsnap -I cron update par
portsnap cron && portsnap -I
update .
Etiquettes CVS
Quand on récupère ou l'on met à
jour les sources en utilisant
cvs ou
CVSup , une étiquette de
révision doit être spécifiée.
Une étiquette de révision fait référence
soit à une branche particulière de développement
de &os;, soit à un moment particulier dans
le temps. Le premier type d'étiquette est nommé
“étiquette de branche”, le second type
“étiquette de publication” —
release tags .
Etiquettes de branche
Toutes ces étiquettes, à l'exception de
l'étiquette HEAD (qui est une
étiquette toujours valide), ne s'appliquent
qu'à l'arborescence src/ .
Il n'y a pas de branche pour les arborescences
ports/ , doc/ ,
et www/ .
HEAD
Nom symbolique pour la branche principale de
développement, ou FreeBSD-CURRENT. C'est aussi
la valeur par défaut lorsque la révision n'est
pas précisée.
Sous CVSup , cette
étiquette est représentée par un
.
(ce n'est pas une ponctuation, mais bien le caractère
. ).
Sous CVS, c'est la valeur par défaut quand
aucune étiquette de révision n'est
précisée. Ce n'est généralement
pas une bonne idée
de récupérer ou mettre à jour vers
les sources CURRENT sur une machine STABLE, à
moins que cela ne soit vraiment votre intention.
RELENG_6
Branche de développement pour &os;-6.X,
également connue sous le nom de
&os; 6-STABLE.
RELENG_6_2
Branche de publication de la version &os;-6.2,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_6_1
Branche de publication de la version &os;-6.1,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_6_0
Branche de publication de la version &os;-6.0,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5
Branche de développement pour &os;-5.X,
également connue sous le nom de
&os; 5-STABLE.
RELENG_5_5
Branche de publication de la version &os;-5.5,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5_4
Branche de publication de la version &os;-5.4,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5_3
Branche de publication de la version &os;-5.3,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5_2
Branche de publication des versions &os;-5.2 et
&os;-5.2.1, utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5_1
Branche de publication de la version FreeBSD-5.1,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_5_0
Branche de publication de la version FreeBSD-5.0,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_4
Branche de développement de FreeBSD-4.X, aussi
connue sous le nom de &os; 4-STABLE.
RELENG_4_11
Branche de publication de la version &os;-4.11,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_4_10
Branche de publication de la version &os;-4.10,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_4_9
Branche de publication de la version &os;-4.9,
utilisée uniquement pour les avis de
sécurité et autres correctifs de
problèmes critiques.
RELENG_4_8
Branche de publication de la version FreeBSD-4.8,
utilisée uniquement pour les avis de sécurité
et autres correctifs de problèmes critiques.
RELENG_4_7
Branche de publication de la version FreeBSD-4.7,
utilisée uniquement pour les avis de sécurité
et autres correctifs de problèmes critiques.
RELENG_4_6
Branche de publication des versions FreeBSD-4.6 et
FreeBSD-4.6.2, utilisée uniquement pour les avis de
sécurité et autres correctifs de problèmes
critiques.
RELENG_4_5
Branche de publication de la version FreeBSD-4.5,
utilisée uniquement pour les avis de sécurité
et autres correctifs de problèmes critiques.
RELENG_4_4
Branche de publication de la version FreeBSD-4.4,
utilisée uniquement pour les avis de sécurité
et autres correctifs de problèmes critiques.
RELENG_4_3
Branche de publication de la version FreeBSD-4.3,
utilisée uniquement pour les avis de sécurité
et autres correctifs de problèmes critiques.
RELENG_3
Branche de développement de FreeBSD-3.X, aussi
connue sous le nom de 3.X-STABLE.
RELENG_2_2
Branche de développement de FreeBSD-2.2.X, aussi
connue sous le nom de 2.2-STABLE. Cette branche
est en grande partie obsolète.
Etiquettes de publication
Ces étiquettes font référence
à un moment bien précis dans le temps quand une
version particulière de &os; a été
publiée. Le processus d'ingénierie des
publications est documenté en détails dans les
documents Information sur la
publication des versions et Processus
de publication . L'arborescence src utilise des étiquettes
commençant par RELENG_ . Les
arborescences ports et
doc utilisent des
étiquettes dont les noms commencent par
RELEASE . Enfin, l'arborescence www ne bénéficie pas
d'étiquette particulière pour les
publications.
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
Sites AFS
Il y a des serveurs AFS pour &os; sur les sites
suivants:
Suède
Le chemin d'accès au fichiers est
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Suède
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Responsable ftp@stacken.kth.se
Sites rsync
Les sites suivants fournissent &os; en utilisant le
protocole rsync. L'utilitaire rsync
fonctionne globalement de la même manière que
la commande &man.rcp.1;, mais il dispose de plus d'options
et utilise le protocole de mise à jour à distance rsync
qui ne transfert que les différences entre deux ensembles
de fichiers, ce qui accélère énormément
la synchronisation par le réseau. C'est surtout utile
si vous disposez d'un miroir du serveur FTP de &os;, ou
du référentiel CVS.
La suite rsync
est disponible sur de nombreux systèmes d'exploitation,
et sous &os;, voir le logiciel porté net/rsync ou utilisez la version
pré-compilée.
République Tchèque
rsync://ftp.cz.FreeBSD.org/
Collections disponibles:
ftp: un miroir partiel du serveur FTP
&os;.
FreeBSD: un miroir complet du serveur FTP
&os;.
Allemagne
rsync://grappa.unix-ag.uni-kl.de/
Collections disponibles:
freebsd-cvs: référentiel CVS &os;
complet.
Cette machine est également miroir des
référentiels CVS des projets NetBSD et OpenBSD,
parmi d'autres.
Hollande
rsync://ftp.nl.FreeBSD.org/
Collections disponibles:
vol/4/freebsd-core: un miroir complet du
serveur FTP &os;.
Thailande
rsync://ftp.tw.FreeBSD.org/
rsync://ftp2.tw.FreeBSD.org/
rsync://ftp6.tw.FreeBSD.org/
Collections disponibles:
&os;: Un miroir complet
du serveur FTP &os;.
Royaume-Uni
rsync://rsync.mirror.ac.uk/
Collections disponibles:
ftp.freebsd.org: Un miroir complet
du serveur FTP &os;.
Etats Unis d'Amérique
rsync://ftp-master.FreeBSD.org/
Ce serveur ne pourra être utilisé que
par les sites miroirs primaires &os;.
Collections disponibles:
FreeBSD: l'archive principale du serveur
FTP &os;.
acl: la liste principale ACL de
&os;.
rsync://ftp13.FreeBSD.org/
Collections disponibles:
FreeBSD: Un miroir complet
du serveur FTP &os;.
diff --git a/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.xml b/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.xml
index 29d558c9e0..ac93fa1aa3 100644
--- a/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.xml
+++ b/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.xml
@@ -1,3986 +1,3986 @@
A &os; beszerzése
CD és DVD kiadók
Kiskereskedelmi dobozos termékek
A &os; beszerezhetõ számos
kiskereskedõtõl dobozos termék
formájában is (&os; CD-k, egyéb szoftverek
és nyomtatott dokumentáció):
CompUSA
WWW:
Frys Electronics
WWW:
CD- és DVD-készletek
&os; CD- és DVD-készletek rengeteg
helyrõl rendelhetõek:
&os; 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:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Németország
Telefon: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
Franciaország
WWW:
JMC Software
Írország
Telefon: 353 1 6291282
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
Egyesült Királyság
Telefon: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Lengyelország
Telefon: +48 22 860 18 18
e-mail: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Ausztrália
Telefon: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya utca, 55
Szentpétervár
190000
Oroszország
Telefon: +7-812-3125208
e-mail: info@linuxcenter.ru
WWW:
Terjesztõk
Ha viszonteladók vagyunk és szeretnénk
CD-s &os; 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:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
Egyesült Államok
Telefon: 1 (800) 456-8000
WWW:
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:
LinuxCenter.Ru
Galernaya utca, 55
Szentpétervár
190000
Oroszország
Telefon: +7-812-3125208
e-mail: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
Egyesült Államok
Telefon: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
FTP oldalak
A &os; hivatalos forrásai anonim FTP-n keresztül
is elérhetõek különféle
tükrözésekrõl. Az 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 &os;
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 &os; 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 &os; 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 &os;
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.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
BitTorrent
BitTorrent
Az egyes kiadásokhoz tartozó alap
CD-készletek BitTorrent segítségével is
elérhetõek. A lemezek képeire hivatkozó
torrent állományokat a
címrõl tölthetjük le.
A BitTorrent kliens telepíthetõ a net-p2p/py-bittorrent portból
vagy csomagból.
Miután sikeresen letöltöttük
BitTorrenten keresztül a lemezképeket, a nyújthat segítséget abban,
hogy kell ezeket lemezre írni.
Anonim CVS
-
- Bevezetés
+
+ Bevezetés
CVS
anonim
Az anonim CVS (vagy más néven
anoncvs ) a &os;-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 &os;
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 &os; 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.
A cvs login parancs a
bejelentkezésekhez szükséges jelszavakat
a HOME könyvtárunkban levõ
.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
.cvspass állományt, majd
próbálkozzunk újra.
Habár azt mondhatnánk, hogy a 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 &os; Projekt
keretein belül fejleszteni is szeretnénk, akkor
inkább érdemes a
CVSup alkalmazást
választani.
-
- Az anonim CVS
+
+ 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 &os; 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ó)
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ó)
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 &os; 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 &os; 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 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
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Jelszóként
ezután bármit megadhatunk .
&prompt.user; cvs co ls
Az src/ fa kikérése
SSH-n keresztül
&prompt.user; 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
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Amikor kéri, jelszóként
bármit megadhatunk.
&prompt.user; cvs co -rRELENG_6 ls
Az &man.ls.1; változásainak (Unified Diff
formátumú) listázása
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Itt jelszóként
bármit megadhatunk .
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
A használható modulok nevének
kiderítése
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Ezután jelszóként
bármit megadhatunk .
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Egyéb helyek
A következõ helyeken találhatunk
még hasznos információkat a CVS
használatáról:
A CVS bemutatása
(forrás: Kaliforna Állami Mûszaki Egyetem).
A CVS
honlapja , a CVS fejlesztésével
és alkalmazásával foglalkozó
közösség oldala.
A CVSweb
a &os; Projekt által használt CVS
rendszerének webes felülete.
A CTM használata
CTM
A CTM használatáva
a távoli könyvtárakat tudunk egy
központi változattal szinkronban tartani.
Eredetileg a &os; 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 &a.ctm-users.name; 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 &os; 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 &os; 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 &os;
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 &os; része, és
a források között a
/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:
valamint lásd a tükrözéseket.
FTP-n keresztül lépjünk be a
könyvtárba, töltsük le a
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
&a.ctm-cvs-cur.name; lista az egész CVS-fát,
míg a &a.ctm-src-cur.name; a fõ fejlesztési
ágat teszi elérhetõvé. A
&a.ctm-src-4.name; 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 &a.mailman.lists.link; 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
/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.
Nem számít, milyen módon jutunk
hozzá a CTM által
használt deltákhoz, minden esetben fel kell
iratkoznunk a &a.ctm-announce.name; 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
src-cur.3210XEmpty.gz ). Az
X után szereplõ
megnevezés a kezdeti kiindulás
(seed) fokának felel meg. Az
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
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:
&prompt.root; cd /ahol/tárolni/akarjuk/az/adatokat
&prompt.root; 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
ize nevû állomány
meglétének vizsgálata elõtt az
ize.ctm állományt fogja
keresni. Ha létezik, akkor a
CTM az 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
.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 .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
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:
&prompt.root; cd /akarhova/ahova/ki/akarjuk/bontani/
&prompt.root; 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.
CTM tükrözések
A CTM/&os; 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 &a.ctm-users.name;
levelezési listát.
Kalifornia, Bay Area (hivatalos forrás)
Dél-Afrika (a korábbi delták
biztonsági másolatai)
Tajvan/R.O.C.
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
alltheweb .
A CVSup használata
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 &os; 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 &os;
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 &os;
tüköroldalain futó cvsupd
nevû szerver.
A &os; 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 sup ot már nem
használja a &os; Projekt.
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 &os; 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 &os; korábbi
verzióinak alaprendszerei ugyan nem tartalmazzák
a &man.csup.1; parancsot, viszont a 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.
Telepítés
A CVSup
telepítésének legegyszerûbb
módja a &os; csomaggyûjteményében
található elõrefordított net/cvsup csomag használata.
Ha viszont inkább forrásból akarjuk
telepíteni a CVSup ot, akkor
helyette használjuk a net/cvsup portot. De legyünk
elõvigyázatosak: a 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.
Ha olyan gépen akarjuk használni a
CVSup ot, ahol nincs
&xfree86; ,
&xorg; vagy bármilyen
más ilyen szerver, akkor használjuk a
net/cvsup-without-gui
portot, ami nem tartalmazza a hozzá tartozó
grafikus felületet.
Ha a &os; 6.1 vagy korábbi változatain
szeretnénk telepíteni a
csup ot, használjuk a &os;
csomaggyûjteményében
megtalálható net/csup csomagot. Ha viszont
forrásból kívánjuk telepíteni
a csup programot, akkor helyette
használjuk a net/csup
portot.
A CVSup beállítása
A CVSup
mûködését a supfile
elnevezésû állomány vezérli. A
/usr/share/examples/cvsup/
könyvárban találhatunk néhány
példát a supfile
állományokra.
A supfile állományban
szereplõ információk a
CVSup használatával
kapcsolatban a következõ kérdéseket
válaszolják meg:
Milyen
állományokat akarunk
letölteni?
Milyen
verzióikra van
szükségünk?
Honnan akarjuk ezeket
beszerezni?
Hova akarjuk rakni a
számítógépünkön?
Hova akarjuk rakni
az állapotot tároló
állományokat?
Az imént feltett kérdésekre a
következõ szakaszokban
összeállítandó
supfile segítségével
fogunk válaszolni. Ehhez elõször bemutatjuk a
supfile formátumú
állományok általános
szerkezetét.
A 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 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
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 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 &os;-CURRENT ág
tartalmának letöltésére és
frissen tartására alkalmas
supfile állomány
összeállítását.
Milyen
állományokat akarunk letölteni?
A CVSup on 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 következõ szakaszban
találjuk. Ebben a példában most
szeretnénk letölteni az egész &os;
rendszer forrását. Ezt a
src-all nevû
gyûjteményre hivatkozva érhetjük el.
A 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):
src-all
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.
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 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.
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 &os;-CURRENT
verziót akarjuk letölteni. Ezért a
következõ sort tesszük a
supfile állományunk
elejére:
*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.
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
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 &os;
terjesztési oldalt választunk, a cvsup99.FreeBSD.org -ot:
*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.
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
/usr/src könyvtárba
tettük. Mivel a 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:
*default prefix=/usr
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
/var/db könyvtárat fogjuk
használni:
*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
supfile
állományban:
Általában még egy sor szokott
szerepelni a supfile
állományokban:
*default release=cvs delete use-rel-suffix compress
A release=cvs mezõ jelzi, hogy a
szervernek a &os; 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
supfile állományunk
teljes tartalma:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
A 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
doc , ports vagy
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
doc és a www
fákhoz nincsenek nyelvfüggõ
gyûjtemények, ezért elõ kell
halásznunk a CVSup egyik
remek funkcióját, a refuse
állományt.
A 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ó
refuse állományt a
bázis /sup/
könyvtárban találhatjuk meg (illetve ha
még nincsenek, akkor ide kell rakunk ezeket). Itt a
bázis a
supfile állományban
megadott base= mezõre utal, ami a
példánkban a /var/db
könyvtár volt. Ennek megfelelõen
tehát a refuse
állomány a
/var/db/sup/refuse lesz.
A 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
refuse állományba:
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 &os; 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
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:
&prompt.root; cvsup supfile
ahol a
supfile a
frissen létrehozott 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 go feliratú gombot
és dõljünk hátra.
Mivel a példában a
/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:
&prompt.root; mkdir /var/tmp/proba
&prompt.root; 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 /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
/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 /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:
&prompt.root; 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.
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 &os; fõ CVS repositoryja, beleértve a
titkosításhoz tartozó kódokat
is.
distrib release=cvs
A &os; terjesztéséhez és
tükrözéséhez
kapcsolódó
állományok.
doc-all release=cvs
A &os; kézikönyvének
és a többi dokumentáció
forrásai. Nem tartalmazza a &os;
honlapjának forrásait.
ports-all release=cvs
A &os; portgyûjteménye.
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.
Ha a 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
ports/INDEX
állományt a portfa egy része
alapján nem készíthetjük
el. Errõl bõvebben lásd a
GYIK -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
Mk/ ,
Tools/ és
/usr/ports
különféle
alkönyvtáraiban elhelyezkedõ
állományok.
Ne hagyjuk figyelmen kívül
a
fenti fontos figyelmeztetést
sem: ezt az algyûjteményt
mindig a &os;
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;
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 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 &os; projektek forrásainak
repositoryja.
src-all release=cvs
A &os; fontosabb forrásai, a
titkosításhoz tartozó
kódokkal együtt.
src-base
release=cvs
A /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
(/usr/src/bin ).
src-cddl
release=cvs
A CDDL licenc szerint terjesztett
segédprogramok és
függvénykönyvtárak
(/usr/src/cddl ).
src-contrib
release=cvs
A &os; Projekten kívül
fejlesztett segédprogramok és
függvénykönyvtárak,
viszonylag kevés
módosítással
(/usr/src/contrib ).
src-crypto release=cvs
A &os; Projekten kívül
fejlesztett, titkosítással
kapcsolatos segédprogramok és
függvénykönyvtárak,
viszonylag kevés
módosítással
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos és DES
(/usr/src/eBones ). A
&os; jelenlegi változatai nem
használják.
src-etc
release=cvs
A rendszer
beállításait
tartalmazó állományok
(/usr/src/etc ).
src-games
release=cvs
Játékok
(/usr/src/games ).
src-gnu
release=cvs
A GPL licenc szerint terjesztett
segédprogramok
(/usr/src/gnu ).
src-include
release=cvs
(C nyelvi) Header állományok
(/usr/src/include ).
src-kerberos5
release=cvs
A Kerberos5 biztonsági csomag
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
A KerberosIV biztonsági csomag
(/usr/src/kerberosIV ).
src-lib
release=cvs
Függvénykönyvtárak
(/usr/src/lib ).
src-libexec
release=cvs
Más programok által
futtatott rendszerprogramok
(/usr/src/libexec ).
src-release
release=cvs
A &os; kiadások
elkészítéséhez
szükséges állományok
(/usr/src/release ).
src-rescue
release=cvs
Statikusan linkelt programok
vészhelyzet esetére,
lásd &man.rescue.8;
(/usr/src/rescue ).
src-sbin release=cvs
Egyfelhasználós
módban használható
rendszereszközök
(/usr/src/sbin ).
src-secure
release=cvs
Titkosítással
foglalkozó
függvénykönyvtárak
és parancsok
(/usr/src/secure ).
src-share
release=cvs
Több rendszer között
megosztható állományok
(/usr/src/share ).
src-sys
release=cvs
A rendszermag
(/usr/src/sys ).
src-sys-crypto
release=cvs
A rendszermagban levõ
titkosítással foglalkozó
kód
(/usr/src/sys/crypto ).
src-tools
release=cvs
A &os; karbantartására
való különbözõ
segédprogramok
(/usr/src/tools ).
src-usrbin
release=cvs
Felhasználói
segédprogramok
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
Rendszerszintû segédprogramok
(/usr/src/usr.sbin ).
www release=cvs
A &os; 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 &os; levelezési listáinak
archívuma.
www release=current
A &os; 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 A CVSup
honlapján találjuk meg.
A CVSup &os;-re vonatkozó
tárgyalása a &a.hackers;n történik.
Itt és az &a.announce;n jelentik be a szoftver
újabb változatait.
A CVSup alkalmazással
kapcsolatos kérdéseket és
hibajelentéseket illetõen a CVSup
GYIK -ot érdemes megnéznünk.
CVSup oldalak
A &os; CVSup szerverei az
alábbi oldalakon érhetõek el:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
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 &os; 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 src/ fára
vonatkozik. A ports/ ,
doc/ és www/
fák nem tartalmaznak ágakat.
HEAD
A fõ fejlesztési ág, avagy a
&os;-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).
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 &os;-8.X fejlesztési ága, más
néven a &os; 8-STABLE
RELENG_8_1
A &os;-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 &os;-8.0 kiadás ága, ahová csak a
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_7
A &os;-7.X fejlesztési ága, más
néven a &os; 7-STABLE
RELENG_7_3
A &os;-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 &os;-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 &os;-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 &os;-7.0 kiadás ága, ahová csak a
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_6
A &os;-6.X fejlesztési ága, más
néven a &os; 6-STABLE
RELENG_6_4
A &os;-6.4 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_6_3
A &os;-6.3 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_6_2
A &os;-6.2 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_6_1
A &os;-6.1 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_6_0
A &os;-6.0 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_5
A &os;-5.X fejlesztési ág, más
néven a &os; 5-STABLE.
RELENG_5_5
A &os;-5.5 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_5_4
A &os;-5.4 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_5_3
A &os;-5.3 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_5_2
A &os;-5.2 és &os;-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 &os;-5.1 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_5_0
A &os;-5.0 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4
A &os;-4.X fejlesztési ága, más
néven a &os; 4-STABLE.
RELENG_4_11
A &os;-4.11 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_10
A &os;-4.10 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_9
A &os;-4.9 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_8
A &os;-4.8 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_7
A &os;-4.7 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_6
A &os;-4.6 és &os;-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 &os;-4.5 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_4
A &os;-4.4 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_4_3
A &os;-4.3 kiadás ága, ahová csak
biztonsági frissítések és a
kritikus hibajavítások kerülnek.
RELENG_3
A &os;-3.X fejlesztési ága, más
néven a 3.X-STABLE.
RELENG_2_2
A &os;-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 &os; 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 kiadásokat
összefoglaló lapról és a
kiadások építésérõl
szóló cikkbõl
tájékozódhatunk. Az src fában
RELENG_ kezdetû címkéket
találunk. A
ports és doc fákban a
címkék nevei a RELEASE
elõtaggal kezdõdnek. Végezetül a
www fában
nincsenek kiadásokhoz tartozó
címkék.
RELENG_8_1_0_RELEASE
&os; 8.1
RELENG_8_0_0_RELEASE
&os; 8.0
RELENG_7_3_0_RELEASE
&os; 7.3
RELENG_7_2_0_RELEASE
&os; 7.2
RELENG_7_1_0_RELEASE
&os; 7.1
RELENG_7_0_0_RELEASE
&os; 7.0
RELENG_6_4_0_RELEASE
&os; 6.4
RELENG_6_3_0_RELEASE
&os; 6.3
RELENG_6_2_0_RELEASE
&os; 6.2
RELENG_6_1_0_RELEASE
&os; 6.1
RELENG_6_0_0_RELEASE
&os; 6.0
RELENG_5_5_0_RELEASE
&os; 5.5
RELENG_5_4_0_RELEASE
&os; 5.4
RELENG_4_11_0_RELEASE
&os; 4.11
RELENG_5_3_0_RELEASE
&os; 5.3
RELENG_4_10_0_RELEASE
&os; 4.10
RELENG_5_2_1_RELEASE
&os; 5.2.1
RELENG_5_2_0_RELEASE
&os; 5.2
RELENG_4_9_0_RELEASE
&os; 4.9
RELENG_5_1_0_RELEASE
&os; 5.1
RELENG_4_8_0_RELEASE
&os; 4.8
RELENG_5_0_0_RELEASE
&os; 5.0
RELENG_4_7_0_RELEASE
&os; 4.7
RELENG_4_6_2_RELEASE
&os; 4.6.2
RELENG_4_6_1_RELEASE
&os; 4.6.1
RELENG_4_6_0_RELEASE
&os; 4.6
RELENG_4_5_0_RELEASE
&os; 4.5
RELENG_4_4_0_RELEASE
&os; 4.4
RELENG_4_3_0_RELEASE
&os; 4.3
RELENG_4_2_0_RELEASE
&os; 4.2
RELENG_4_1_1_RELEASE
&os; 4.1.1
RELENG_4_1_0_RELEASE
&os; 4.1
RELENG_4_0_0_RELEASE
&os; 4.0
RELENG_3_5_0_RELEASE
&os; 3.5
RELENG_3_4_0_RELEASE
&os; 3.4
RELENG_3_3_0_RELEASE
&os; 3.3
RELENG_3_2_0_RELEASE
&os; 3.2
RELENG_3_1_0_RELEASE
&os; 3.1
RELENG_3_0_0_RELEASE
&os; 3.0
RELENG_2_2_8_RELEASE
&os; 2.2.8
RELENG_2_2_7_RELEASE
&os; 2.2.7
RELENG_2_2_6_RELEASE
&os; 2.2.6
RELENG_2_2_5_RELEASE
&os; 2.2.5
RELENG_2_2_2_RELEASE
&os; 2.2.2
RELENG_2_2_1_RELEASE
&os; 2.2.1
RELENG_2_2_0_RELEASE
&os; 2.2.0
AFS oldalak
A &os; a következõ szerverein érhetõ el
AFS:
Svédország
Az állományok a következõ helyen
érhetõek el:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
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ó:
ftp@stacken.kth.se
Rsync oldalak
A most következõ oldalakon a &os;-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 &os; 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 &os;-n a net/rsync
port vagy csomag tartalmazza.
Cseh Köztársaság
rsync://ftp.cz.FreeBSD.org/
Elérhetõ gyûjtemények:
ftp: a &os; FTP szerverének részleges
tükrözése.
&os;: a &os; FTP szerverének teljes
tükrözése.
Hollandia
rsync://ftp.nl.FreeBSD.org/
Elérhetõ gyûjtemények:
&os;: a &os; FTP szerverének teljes
tükrözése.
Oroszország
rsync://ftp.mtu.ru
Elérhetõ gyûjtemények:
&os;: A &os; FTP szerver teljes
tartalma.
&os;-gnats: A GNATS hibanyilvántartó
adatbázis.
&os;-Archive: A &os; 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:
&os;: a &os; 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 &os; FTP szerverének
teljes tükrözése.
Amerikai Egyesült Államok
rsync://ftp-master.FreeBSD.org/
Ezt a szervert csak az elsõdleges &os;
tükrözéseknek szabad
használniuk.
Elérhetõ gyûjtemények:
&os;: a &os; FTP szerverének központi
archívuma.
acl: a &os; központi ACL listája.
rsync://ftp13.FreeBSD.org/
Elérhetõ gyûjtemények:
&os;: a &os; FTP szerver teljes
tükrözése.
diff --git a/it_IT.ISO8859-15/books/handbook/mirrors/chapter.xml b/it_IT.ISO8859-15/books/handbook/mirrors/chapter.xml
index 43b5ad6607..62f6d55c73 100644
--- a/it_IT.ISO8859-15/books/handbook/mirrors/chapter.xml
+++ b/it_IT.ISO8859-15/books/handbook/mirrors/chapter.xml
@@ -1,3221 +1,3221 @@
Ottenere FreeBSD
Editori di CDROM e DVD
Prodotti al Dettaglio Confezionati
FreeBSD è disponibile in confezioni (i CD di FreeBSD, del
software aggiuntivo, e la documentazione cartacea) presso svariati
rivenditori:
CompUSA
WWW:
Frys Electronics
WWW:
Set di CD e DVD
I set di CD e DVD di FreeBSD sono disponibili presso molti
rivenditori on-line:
BSD Mall by Daemon News
PO Box 161
Nauvoo , IL 62354
Stati Uniti d'America
Telefono: +1 866 273-6255
Fax: +1 217 453-9956
Email: sales@bsdmall.com
WWW:
BSD-Systems
Email: info@bsd-systems.co.uk
WWW:
FreeBSD Mall, Inc.
3623 Sanford Street
Concord , CA 94520-1405
Stati Uniti d'America
Telefono: +1 925 674-0783
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germania
Telefono: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
Francia
WWW:
JMC Software
Irlanda
Telefono: 353 1 6291282
WWW:
Linux CD Mall
Private Bag MBE N348
Auckland 1030
Nuova Zelanda
Telefono: +64 21 866529
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
Regno Unito
Telefono: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Polonia
Telefono: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Telefono: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Telefono: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Distributori
Se sei un rivenditore e vuoi vendere i CDROM di FreeBSD, contatta
uno dei distributori seguenti:
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
Stati Uniti d'America
Telefono: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
Stati Uniti d'America
Telefono: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
Stati Uniti d'America
Telefono: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
Stati Uniti d'America
Telefono: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
Siti FTP
I sorgenti ufficiali di FreeBSD sono disponibili via FTP anonimo da
una serie di siti mirror sparsi in tutto il mondo. Il sito è ben gestito
e permette un gran numero di connessioni, ma ti conviene probabilmente
trovare un sito mirror a te più vicino
(soprattutto
se decidi di configurare una sorta di sito mirror).
Il database dei siti
mirror di FreeBSD è più preciso della lista
contenuta in questo manuale, poichè ottiene le informazioni
direttamente dal DNS anziché affidarsi a una lista statica di
host.
Inoltre, FreeBSD è disponibile via FTP anonimo dai seguenti
siti mirror. Se decidi di procurarti FreeBSD via FTP anonimo, usa per
favore un sito a te vicino. I siti mirror elencati come Siti
Mirror Primari
hanno tipicamente l'intero archivio di
FreeBSD (tutte le versioni oggi disponibili per ognuna delle architetture)
ma probabilmente scaricherai più velocemente da un sito che
è nel tuo stato o regione. I siti di ogni stato contengono le
versioni più recenti per le architetture più popolari ma
potrebbero non contenere l'intero archivio di FreeBSD. Tutti i siti
permettono l'accesso tramite FTP anonimo e alcuni permettono l'accesso
anche con altri metodi.
I metodi di accesso disponibili per ogni sito sono elencati fra parentesi
dopo il nome dell'host.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
CVS Anonimo
-
- Introduzione
+
+ Introduzione
CVS
anonymous
Il CVS Anonimo (anche conosciuto come anoncvs )
è una caratteristica del programma di utilità CVS
contenuto in FreeBSD che serve per sincronizzarsi con un deposito CVS
remoto (in gergo repository CVS). Tra le altre cose, permette agli
utenti di FreeBSD di realizzare, senza avere particolari permessi,
operazioni CVS in sola lettura su uno dei server anoncvs ufficiali del
progetto FreeBSD. Per utilizzarlo è sufficiente impostare la
variabile di ambiente CVSROOT facendola puntare al server
anoncvs appropriato, immettere la password anoncvs
con il
comando cvs login , e poi usare il comando &man.cvs.1;
per accederci come se fosse un deposito locale.
Il comando cvs login memorizza le password
utilizzate per l'autenticazione con il server CVS in un file
chiamato .cvspass nella tua directory
HOME . Se questo file non esiste, potresti ricevere
un errore alla prima esecuzione di cvs login .
Crea un file .cvspass vuoto e riprova il
login.
Benché si possa dire che i servizi CVSup e anoncvs realizzino
sostanzialmente le stesse funzioni, ci sono vari particolari che possono
influenzare la scelta di un metodo di sincronizzazione piuttosto
dell'altro. Per dirla in breve, CVSup
è più efficiente nell'uso delle risorse di rete ed
è il più avanzato tecnicamente tra i due, ma tutto questo
ha un prezzo. Per usare CVSup , bisogna
installare e configurare un client speciale prima di poter scaricare
qualcosa, e si può scaricare solo blocchi piuttosto grossi che
CVSup chiama
collezioni .
Anoncvs , al contrario, può essere
usato per esaminare qualunque cosa a partire da un singolo file fino a
uno specifico programma (come ls o
grep ) specificando il nome del modulo CVS.
Ovviamente, anoncvs è adatto solo per
operazioni di sola lettura sul deposito CVS, quindi se hai intenzione
di supportare lo sviluppo locale in uno dei depositi condivisi del
progetto FreeBSD allora CVSup è in
realtà l'unica opzione.
-
- Uso del CVS Anonimo
+
+ Uso del CVS Anonimo
La configurazione di &man.cvs.1; per usare un deposito CVS Anonimo
è semplicemente una questione di impostare la variabile di
ambiente CVSROOT affinché punti a uno dei server
anoncvs del progetto FreeBSD. Al momento della
stesura di questo testo sono disponibili i seguenti server:
Austria :
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(Usa cvs login ed inserisci qualunque password
quando richiesta.)
Francia :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (password anoncvs
), ssh (nessuna
password))
Germania :
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(Usa cvs login ed inserisci la password
anoncvs
quando richiesta.)
Germania :
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
Giappone :
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Usa cvs login ed inserisci la password
anoncvs
quando richiesta.)
USA :
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(solo ssh - nessuna password)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
USA :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (solo ssh -
nessuna password)
SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com
SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub
Dato che CVS permette di estrarre (nel suo gergo: check
out
) qualsiasi versione dei sorgenti di FreeBSD che sia mai
esistita (o, in alcuni casi, che esisterà), è bene
familiarizzare con il parametro revisione (-r ) di
&man.cvs.1; e sapere quali valori può assumere nel deposito
del progetto FreeBSD.
Ci sono due tipi di tag, i tag di revisione e i tag di ramo. Un tag
di revisione fa riferimento ad una revisione specifica. Il suo
significato rimane lo stesso di giorno in giorno. Un tag di ramo,
d'altro canto, si riferisce sempre all'ultima revisione relativa a una
specifica linea di sviluppo. Dato che un tag di ramo non si riferisce
ad una revisione specifica, esso potrebbe avere un significato diverso
da un giorno con l'altro.
La contiene i tag di revisione che possono
essere interessanti per gli utenti. Tuttavia, nessuno di questi tag
è valido per la collezione dei port poichè questa non ha
revisioni multiple.
Quando specifichi un tag di ramo, normalmente ricevi l'ultima
versione dei file relativa a quella linea di sviluppo. Se vuoi ricevere
una versione precedente, puoi farlo specificando la data con il
parametro -D date . Si rimanda alla pagina man di
&man.cvs.1; per ulteriori dettagli.
Esempi
Benché sia consigliata un'attenta lettura della pagina man di
&man.cvs.1; prima di fare qualsiasi cosa, seguono alcuni veloci esempi
che spiegano in modo essenziale l'uso del CVS Anonimo:
Estrazione di Qualcosa dalla -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Alla richiesta, inserire la password anoncvs
.
&prompt.user; cvs co ls
Utilizzo di SSH per estrarre il ramo
src/ :
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
Estrazione della Versione di &man.ls.1; dal Ramo
6-STABLE:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Alla richiesta, inserire la password anoncvs
.
&prompt.user; cvs co -rRELENG_6 ls
Creazione di una Lista di Cambiamenti (come Diff Unificate) di
&man.ls.1;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Alla richiesta, inserire la password anoncvs
.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
Scoperta di Quali Altri Nomi di Moduli Possono Essere Usati
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Alla richiesta, inserire la password anoncvs
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Altre Risorse
Le seguenti risorse addizionali possono essere utili
nell'apprendimento del CVS:
CVS
Tutorial dal Cal Poly.
CVS Home ,
la comunità di sviluppo e supporto del CVS.
CVSWeb
è l'interfaccia web di CVS relativa al progetto
FreeBSD.
Uso di CTM
CTM
CTM è un metodo per mantenere
sincronizzati un albero di directory remoto e uno centralizzato. È
stato sviluppato per l'albero dei sorgenti di FreeBSD, anche se con il
passare del tempo, altre persone lo hanno trovano utile per altri scopi.
A tutt'oggi esiste pochissima documentazione sul processo della creazione
delle delta, quindi contattate la mailing list &a.ctm-users.name; per
avere più informazioni e nel caso voleste usare
CTM per altri scopi.
Perché Dovrei Usare CTM ?
CTM fornisce una copia locale dell'albero
dei sorgenti di FreeBSD. Ci sono molte varietà
di
alberi disponibili. Che tu voglia seguire l'intero albero CVS o solo
uno dei rami, CTM può fornirti i dati
che ti servono. Se sei uno sviluppatore attivo di FreeBSD, ma hai una
connettività TCP/IP di bassa qualità o non esistente, o
semplicemente desideri ricevere le modifiche in modo automatico,
CTM fa al caso tuo. Riceverai fino a tre
delta giornaliere per i rami più attivi. Tuttavia, puoi
considerare che li puoi avere attraverso l'invio automatico di email.
Le dimensioni degli aggiornamenti sono sempre più piccole
possibile. Questi sono in genere meno di 5K, con occasionali (uno su
dieci) aggiornamenti da 10-50K e qualcuno più grande (100K o
più) di tanto in tanto.
Devi anche essere cosciente delle varie insidie relativi all'uso di
sorgenti in via di sviluppo e non provenienti da release pronte. Questo
è vero in particolare per i sorgenti current
(correnti). È raccomandata la lettura di Restare in current
con
FreeBSD.
Cosa Serve per l'Uso di CTM ?
Ti servono due cose: il programma CTM , e
le delta iniziali da dargli in pasto (per arrivare ai livelli della
current
).
Il programma CTM fa parte di FreeBSD fin
dalla release della versione 2.0 e, se hai una copia dei sorgenti
disponibile, risiede in
/usr/src/usr.sbin/ctm .
Le delta
da dare in pasto a
CTM si possono avere in due modi: tramite FTP
o email. Se puoi utilizzare FTP via Internet allora i seguenti siti
supportano l'accesso a CTM :
vedi anche la sezione mirror.
Entra via FTP nella directory giusta e, da lì, inizia col
trasferire il file README .
Se invece desideri ricevere le delta per email:
Iscriviti ad una delle liste di distribuzione di
CTM . &a.ctm-cvs-cur.name; supporta l'interno
albero CVS. &a.ctm-src-cur.name; supporta il ramo di sviluppo current.
&a.ctm-src-4.name; supporta il ramo della release 4.X, ecc. (Se non sai
come iscriverti a una lista, clicca sul nome della lista o raggiungi la
pagina &a.mailman.lists.link; e clicca sulla lista a cui ti vuoi
iscrivere. La pagina della lista dovrebbe contenere tutte le
informazioni necessarie per l'iscrizione.)
Quando inizierai a ricevere gli aggiornamenti
CTM via email, puoi usare il programma
ctm_rmail per scompattarli e per applicarli. In
realtà, se vuoi avere un processo completamente automatizzato,
puoi usare il programma ctm_rmail direttamente in un
elemento di /etc/aliases . Esamina la pagina man di
ctm_rmail per maggiori dettagli.
Indipendentemente dal metodo che utilizzi per ricevere le delta di
CTM , dovresti iscriverti alla mailing list
&a.ctm-announce.name;. In futuro, questo sarà l'unico posto
dove saranno postati gli annunci riguardanti il funzionamento del
sistema CTM . Clicca sul nome della lista
e segui le istruzioni per iscriverti.
Uso di CTM per la Prima Volta
Prima che tu possa servirti delle delta di
CTM , hai bisogno di un punto di partenza dal
quale successivamente costruire le delta.
Innanzitutto dovresti determinare ciò che hai. Si può
iniziare da un directory vuota
. Devi usare una delta
iniziale Empty
per iniziare il tuo albero
CTM . Qualche volta può succedere che
una di queste delta iniziali
sia distribuita su un CD
per tua convenienza, ma comunque, questo generalmente non
avviene.
Poichè gli alberi sono molte decine di megabyte, puoi
iniziare da qualcosa che hai a portata di mano. Se hai un CD
di una release, puoi copiare o estrarre i sorgenti da lì. Questo
salverà un significativo trasferimento di dati.
Puoi riconoscere queste delta iniziali
dalla lettera
X preceduta da un numero (per esempio
src-cur.3210XEmpty.gz ). Il nome che segue la
lettera X corrisponde all'origine del tuo
seme
iniziale. Empty è una
directory vuota. Di solito una transizione base a partire da
Empty è prodotta ogni 100 delta. Strada
facendo, queste avranno grandi dimensioni! Le dimensioni comuni per le
delta XEmpty vanno dai 70 a 80 Megabyte di dati
compressi con gzip .
Una volta che ti sei procurato una delta base come punto di
partenza, avrai bisogno anche di tutte le delta successive aventi un
numero maggiore.
Uso di CTM nella Tua Vita
Quotidiana
Per applicare le delta, fai come segue:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM decifra le delta compresse tramite
il comando gzip , quindi non hai bisogno di
decomprimerle con gunzip , e ciò salva spazio
su disco.
Tranne in alcune circostanze, CTM non
toccherà il tuo albero. Per verificare una delta puoi usare
l'opzione -c e di fatto CTM
non toccherà il tuo albero; verificherà soltanto
l'integrità della delta e se questa può essere applicata
in modo pulito al tuo albero attuale.
Ci sono altre opzioni di CTM , guarda
la pagina man o ispeziona i sorgenti per maggiori dettagli.
Questo è davvero tutto ciò che devi sapere. Ogni
volta che ottieni una delta, esegui CTM per
aggiornare i tuoi sorgenti.
È meglio non rimuovere le delta che richiedono grandi tempi
di scaricamento. Nel caso succeda qualche disgrazia non dovrai
riscaricarle. Anche se hai solo dischetti floppy, considera l'uso di
fdwrite per crearne una copia.
Mantenimento delle Tue Modifiche Locali
Allo stesso modo di uno sviluppatore potresti voler sperimentare
delle modifiche nell'albero dei sorgenti.
CTM supporta le modifiche locali in modo
limitato: prima di verificare la presenza di un file
foo , esso cerca foo.ctm . Se
questo file esiste, CTM opererà su di
esso piuttosto che su foo .
Questo comportamento offre un semplice modo per mantenere le
modifiche locali: copia semplicemente il file che desideri modificare in
un file con lo stesso nome e suffisso .ctm .
Quindi puoi liberamente hackerare il codice, e
CTM manterrà aggiornato il file
.ctm .
Altre Opzioni Interessanti di
CTM
Scoprire con Precisione Ciò che Dovrebbe Essere
Aggiornato
Puoi determinare la lista delle modifiche che
CTM apporterà ai tuoi sorgenti
usando l'opzione -l di
CTM .
Questo è utile se vuoi mantenere dei log delle modifiche,
prima o dopo aver modificato in qualche modo i file, o solo
perchè ti senti un pò paranoico.
Creare dei Backup Prima di Aggiornare
Qualche volta potresti voler creare dei backup di tutti i file
che saranno modificati da un aggiornamento di
CTM .
Specificando l'opzione -B backup-file ,
CTM effettuerà il backup di tutti i
file che saranno modificati da una certa delta
CTM nel file
backup-file .
Limitare i File che Devono Essere Aggiornati
Qualche volta potresti volere restringere la portata di un certo
aggiornamento CTM , o potresti essere
interessato ad estrarre solo pochi file da una serie di delta.
Puoi controllare la lista dei file sui quali
CTM opererà specificando
un'espressione regolare usando le opzioni -e e
-x .
Per esempio, per estrarre una copia aggiornata del file
lib/libc/Makefile dalla tua collezione di delta
CTM , esegui i comandi seguenti:
&prompt.root; cd /dove/vuoi/estrarre/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Per ogni file specificato in una delta
CTM , le opzioni -e e
-x sono applicate nello stesso ordine in cui
compaiono sulla riga di comando. Il file è processato da
CTM solo se risulta idoneo a tutte le
opzioni -e e -x ad esso
applicate.
Piani Futuri per CTM
I più importanti:
Usare qualche tipo di autenticazione nel sistema
CTM , in modo tale da permette
l'identificazione di aggiornamenti CTM
contraffatti.
Ripulire le opzioni di CTM , che
confondono e sono tutt'altro che intuitive.
Materiale Vario
Esiste una serie di delta per la collezione dei
ports , ma è ancora di poco interesse.
Mirror CTM
CTM/FreeBSD è disponibile via FTP
anonimo dai siti mirror seguenti. Se decidi di procurarti
CTM via FTP anonimo, per favore usa un sito
a te vicino.
In caso di problemi, contatta la mailing list
&a.ctm-users.name;.
California, Bay Area, sorgenti ufficiali
Sudafrica, server di backup per vecchie delta
Taiwan/R.O.C.
Se non trovi un mirror a te vicino o se il mirror è
incompleto, prova ad usare qualche motore di ricerca come alltheweb .
Uso di CVSup
Introduzione
CVSup è un pacchetto di software
per distribuire ed aggiornare alberi di sorgenti da un deposito centrale
CVS posto su un server remoto. I sorgenti di FreeBSD sono mantenuti in
un deposito CVS su una macchina centrale di sviluppo situata in
California. Con CVSup , gli utenti di FreeBSD
possono facilmente mantenere aggiornati i loro alberi di
sorgenti.
CVSup usa il cosiddetto modello ad
estrazione per aggiornare. In questo modello,
è compito del client chiedere al server gli aggiornamenti.
Il server attente passivamente le richieste di aggiornamento dai suoi
client. In questo modo tutti gli aggiornamenti sono incitati dal
client. Il server non invia mai degli aggiornamenti che non sono stati
richiesti. Gli utenti devono eseguire il client
CVSup manualmente per ottenere un
aggiornamento, oppure possono usare cron per eseguire
automaticamente queste operazioni secondo stabilite regole.
Il termine CVSup , scritto in quel modo,
si riferisce all'intero pacchetto di software. I suoi componenti
principali sono il client cvsup che viene eseguito
su ogni macchina degli utenti, e il server cvsupd che
viene eseguito su ogni sito mirror di FreeBSD.
Leggendo la documentazione di FreeBSD e le mailling list, potresti
notare dei riferimenti a sup .
Sup è il predecessore di
CVSup , e serviva per un simile scopo.
CVSup sostanzialmente è usato allo
stesso modo di sup e, di fatto, i suoi file
di configurazione sono compatibili con sup .
Sup non viene più utilizzato nel
progetto FreeBSD, poichè CVSup
è più veloce e più flessibile.
Installazione
Il modo più semplice per installare
CVSup è usare il package precompilato
net/cvsup della collezione dei package di FreeBSD.
Se preferisci costruire CVSup partendo dal
sorgente, allora puoi usare il port net/cvsup . Ma sei avvisato: il port
net/cvsup dipende dal sistema
Modula-3, che richiede una consistente quantità di tempo e di
spazio su disco per scaricarlo e costruirlo.
Se hai intenzione di usare CVSup su una
macchina sulla quale non sarà installato
&xfree86; o &xorg; ,
come su un server, assicurati di usare il port che non include la GUI di
CVSup , ossia net/cvsup-without-gui .
Configurazione di CVSup
Il funzionamento di CVSup è
controllato da un file di configurazione chiamato
supfile . Esistono alcuni esempi di
supfile nella directory /usr/share/examples/cvsup/ .
Le informazioni contenute in un supfile
rispondono alle seguenti questioni relative a
CVSup :
Quali file vuoi
ricevere?
Quali versioni dei file
vuoi?
Da dove li vuoi
prelevare?
Dove li vuoi mettere sulla tua
macchina?
Dove vuoi memorizzare
gli stati dei file?
Nelle seguenti sezioni, costruiremo un tipico
supfile per rispondere a turno ad ognuna di queste
questioni. Incominciamo però col descrivere la struttura
globale di un supfile .
Un supfile è un file di testo. I
commenti iniziano con un # e si estendono fino alle
fine della riga. Le righe bianche e le righe che contengono solo
commenti sono ignorate.
Ogni altra riga descrive un insieme di file che l'utente vuole
ricevere. Una riga inizia con il nome di una collezione
,
un nome di un gruppo logico di file definiti dal server. Il nome della
collezione indica al server i file che vuoi ricevere. Dopo il nome
della collezione seguono zero o più campi, separati da spazi
bianchi. Questi campi rispondono alle questioni citate in precedenza.
Ci sono due tipi di campi: campo opzione e campo valore. Un campo
opzione consiste di una parola chiave a se stante, es.
delete o compress . Anche un campo
valore inizia con una parola chiave, ma questa è seguita dal
simbolo = , senza spazi bianchi intermedi, e da un
seconda parola. Ad esempio, release=cvs è un
campo valore.
Un supfile tipicamente specifica più di
un'unica collezione da ricevere. Un modo di strutturare un
supfile è specificare esplicitamente tutti i
campi rilevanti per ogni collezione. Tuttavia, ciò tende a
creare supfile troppo lunghi, e ciò è
scomodo poichè in un supfile la maggior
parte dei campi sono gli stessi per tutte le collezioni.
CVSup fornisce un meccanismo per aggirare
questi problemi. Le linee che iniziano con il nome speciale di
pseudo-collezione *default possono essere usate per
inizializzare opzioni e valori che saranno utilizzati come default per
le successive collezioni definite nel supfile .
Un valore di default può essere sovrascritto da una singola
collezione, specificando un valore diverso per la collezione stessa.
Inoltre i valori di default possono essere modificati in mezzo al
supfile tramite linee *default aggiuntive.
Con queste conoscenze, possiamo ora procedere alla costruzione
di un supfile per ricevere ed aggiornare l'albero
dei sorgenti della FreeBSD-CURRENT.
Quali file vuoi ricevere?
I file disponibili via CVSup sono
organizzati in gruppi chiamati collezioni
.
Le collezioni che sono disponibili sono descritte nella
prossima sezione. In questo
esempio, desideriamo ricevere per intero l'albero corrente dei
sorgenti del sistema FreeBSD. C'è un'unica e vasta
collezione src-all che ci permette di ricevere
tutto ciò. Come prima fase nella costruzione del nostro
supfile , dobbiamo semplicemente elencare le
collezioni, una per riga (in questo caso, c'è un'unica
riga):
src-all
Quali versioni dei file
vuoi?
Con CVSup , hai la possibilità
di ricevere qualsiasi versione dei sorgenti che sia mai esistita.
Questo è possibile poichè il server
cvsupd lavora direttamente sul deposito
CVS, che contiene tutte le versioni. Puoi specificare la versione
che vuoi usando i campi valori tag= e
date= .
Stai molto attento a specificare i campi
tag= in modo corretto. Alcuni tag sono validi
solo per certe collezioni di file. Se specifichi un tag non
corretto, CVSup cancellerà file
che tu non vorresti eliminare. In particolare, usa
solamente tag=. per le
collezioni ports-* .
Il campo tag= richiama un tag simbolico nel
deposito. Ci sono due tipi di tag, i tag di revisione e i tag di
ramo. Un tag di revisione fa riferimento ad una revisione
specifica. Il suo significato rimane lo stesso di giorno in giorno.
Un tag di ramo, d'altro canto, si riferisce sempre all'ultima
revisione relativa ad una specifica linea di sviluppo. Dato che un
tag di ramo non si riferisce ad una revisione specifica, esso
potrebbe avere un significato diverso da un giorno con
l'altro.
La contiene tag di ramo che potrebbero
interessare gli utenti. Quando si specifica un tag in un file di
configurazione di CVSup , esso dovrebbe
essere preceduto da tag=
(RELENG_4 diviene
tag=RELENG_4 ). Tieni presente che per la
collezione dei port è rilevante solo
tag=. .
Sii molto attento a digitare il nome del tag nel modo esatto.
CVSup non è in grado di
riconoscere tag errati. Se digiti in modo sbagliato un tag,
CVSup si comporterà come se tu
avessi specificato un tag valido che non riguarda nessun file.
In questo caso i tuoi sorgenti saranno eliminati.
Quando specifichi un tag di ramo, normalmente ricevi le ultime
versioni dei file di quella linea di sviluppo. Se vuoi ricevere
versioni precedenti, puoi specificare una data con il campo valore
date= . La pagina man di &man.cvsup.1; spiega come
farlo.
Nel nostro esempio, desideriamo ricevere FreeBSD-CURRENT.
Aggiungiamo questa riga all'inizio del nostro
supfile :
*default tag=.
C'è un importante caso speciale che entra in gioco se
non specifichi ne un campo tag= ne un campo
date= . In questo caso, ricevi i file RCS attuali
direttamente dal deposito CVS del server, invece di ricevere una
versione particolare. Gli sviluppatori in genere preferiscono
questa modalità di funzionamento. Mantenendo una copia del
deposito stesso sui loro sistemi, essi sono in grado di navigare
attraverso la storia delle revisioni e di esaminare le versioni
precedenti dei file. Comunque questo vantaggio è
realizzabile al costo di un ingente quantità di spazio su
disco.
Da dove li vuoi
prelevare?
Il campo host= indica a
cvsup da dove prelevare i suoi aggiornamenti.
Va bene uno qualunque dei siti mirror
di CVSup, anche se dovresti provare a selezionarne uno che
sia a te vicino nel ciberspazio. In questo esempio useremo un sito
di distribuzione di FreeBSD fittizio, cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
Devi cambiare l'host in uno che esiste realmente prima di
eseguire CVSup . Il settaggio dell'host
può essere sovrascritto su riga di comando eseguendo
cvsup con l'opzione -h
hostname .
Dove li vuoi mettere sulla tua
macchina?
Il campo prefix= indica a
cvsup dove mettere i file che riceve. In questo
esempio, metteremo i file sorgenti direttamente nel nostro albero
dei sorgenti, /usr/src . La directory
src è già implicita nelle
collezioni che vogliamo ricevere, quindi la corretta specifica
è questa:
*default prefix=/usr
Dove cvsup
dovrebbe mantenere i suoi file di stato?
Il client di CVSup mantiene certi
file di stato in ciò che è chiamata directory
base
. Questi file aiutano
CVSup a lavorare in modo più
efficace, mantenendo traccia di quali aggiornamenti sono stati
già ricevuti. Useremo la directory base standard,
/var/db :
*default base=/var/db
Se la tua directory base non esiste, potrebbe essere una buona
idea crearla subito. Il client cvsup interrompe
l'esecuzione se la tua directory base non esiste.
Settaggi vari di supfile :
C'è un altro settaggio che normalmente deve essere
presente in un supfile :
*default release=cvs delete use-rel-suffix compress
release=cvs indica che il server dovrebbe
prendere le sue informazioni dal deposito CVS principale di FreeBSD.
In genere questa è la normalità, ma esistono altre
possibilità che vanno oltre lo scopo di questa
sezione.
delete dà a
CVSup il permesso di cancellare file.
Dovresti sempre specificare questa opzione, in modo che
CVSup possa mantenere il tuo albero dei
sorgenti del tutto aggiornato. CVSup
è attento nel cancellare solamente quei file dei quali
è responsabile. Altri file extra verranno lasciati
intatti.
use-rel-suffix è ... arcano. Se vuoi
realmente saperne di più, guarda la pagina man di
&man.cvsup.1;. Altrimenti, specificala senza preoccupartene
troppo.
compress abilita l'uso di una compressione
stile gzip sul canale di comunicazione. Se hai una connessione T1 o
più veloce, non dovresti usare la compressione.
Diversamente, può essere veramente d'aiuto.
Ricapitolazione di tutti settaggi:
Il supfile completo per il nostro esempio
è il seguente:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
Il File refuse
Come menzionato in precedenza, CVSup
usa un modello ad estrazione . Sostanzialmente,
questo significa che ti connetti al server
CVSup , lui dice, Ecco ciò che
puoi scaricare ...
, ed il tuo client risponde OK,
prenderò questo, questo, questo e questo.
Nella
configurazione di default, il client CVSup
prenderà ogni file associato alla collezione e al tag che
hai specificato nel file di configurazione. Tuttavia, questo non
è sempre ciò che vuoi, specialmente se stai
sincronizzando gli alberi doc ,
ports , o www — molte
persone non sono in grado di leggere quattro o cinque lingue, e quindi
esse non hanno bisogno di scaricare i file di certe lingue. Se
stai sincronizzando con CVSup la collezione
dei port, puoi specificare collezioni individuali (es.,
ports-astrology ,
ports-biology , ecc. invece di specificare
semplicemente ports-all ). Tuttavia,
poichè gli alberi doc e
www non hanno collezioni per specifiche lingue,
devi usare una delle molte abili caratteristiche di
CVSup : il file
refuse .
Il file refuse sostanzialmente indica a
CVSup che non dovrebbe prendere ogni
singolo file da una collezione; in altre parole, esso dice al client
di rifiutare certi file dal server. Il file
refuse può essere trovato (o, se non ne
hai ancora uno, dovrebbe essere messo) in
base /sup/ .
base è definita nel tuo
supfile ; la nostra
base è
/var/db , e quindi di default il file
refuse è
/var/db/sup/refuse .
Il file refuse ha veramente un formato molto
semplice; esso contiene semplicemente i nomi dei file o delle
directory che non desideri scaricare. Per esempio, se non parli altre
lingue oltre all'inglese e al tedesco, e non hai la necessità
di leggere la traduzione in tedesco della documentazione, puoi mettere
le seguenti righe nel tuo file refuse :
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
e così via per altre lingue (puoi ottenere la lista
completa esplorando il deposito CVS di
FreeBSD ).
Con questa utile funzionalità, quegli utenti che hanno
una connessione lenta o pagano ogni minuto di connessione Internet
potranno risparmiare tempo prezioso poichè non dovranno
più scaricare file che non usano mai. Per maggiori dettagli
sul file refuse e su altre utili caratteristiche
di CVSup , guarda la sua pagina man.
Eseguire CVSup
Sei ora pronto per provare un aggiornamento. La riga di comando
per farlo è molto semplice:
&prompt.root; cvsup supfile
dove supfile
è naturalmente il nome del supfile che hai
creato. Assumendo che stai lavorando sotto X11,
cvsup visualizzarà una GUI con alcuni bottoni
adibiti ad operazioni usuali. Premi il bottone
go , e stai a guardare l'esecuzione.
Poichè in questo esempio stai aggiornando il tuo albero dei
sorgenti /usr/src , avrai bisogno di eseguire il
programma come root affinchè
cvsup abbia i permessi necessari per aggiornare i
tuoi file. Avendo appena creato il tuo file di configurazione, e non
avendo mai usato questo programma prima ad ora, tutto ciò
potrebbe renderti un pò nervoso. Esiste un semplice modo per
provare la sincronizzazione senza toccare i tuoi preziosi file. Crea
una directory vuota in qualche posto, e richiamala come argomento sulla
riga di comando:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
La directory che hai specificato sarà usata come directory
di destinazione per tutti gli aggiornamenti dei file.
CVSup esaminerà i tuoi file usuali in
/usr/src , ma non modificherà o
cencellerà alcuno di essi. Gli aggiornamenti dei file finiranno
invece in /var/tmp/dest/usr/src .
Inoltre CVSup lascerà intatta la sua
directory base contenente gli stati dei file quando viene eseguito in
questo modo. Le nuove versioni di questi file saranno scritte nella
directory specificata. A condizione che tu abbia l'accesso di lettura
in /usr/src , non hai bisogno di essere
root per realizzare questo tipo di giro di
prova.
Se non stai utilizzando X11 o se non ti piacciono le GUI,
dovresti aggiungere un paio di opzioni alla riga di comando quando
esegui cvsup :
&prompt.root; cvsup -g -L 2 supfile
L'opzione -g indica a
CVSup di non usare la sua GUI. Ciò
è automatico se non stai utilizzando X11, ma se lo stai facendo
allora la devi specificare.
L'opzione -L 2 indica a
CVSup di visualizzare i dettagli di tutti
gli aggiornamenti dei file che avvengono. Esistono tre livelli
di verbosità, da -L 0 a -L 2 .
Il default è 0, che significa silenzio totale eccetto per
i messaggi di errore.
Ci sono molte altre opzione disponibili. Per una breve lista di
esse, digita cvsup -H . Per una descrizione
più dettagliata, guarda la relativa pagina man.
Una volta che sei soddisfatto di come avvengono gli aggiornamenti,
puoi organizzare esecuzioni regolari di CVSup
usando &man.cron.8;. Ovviamente, non dovresti lasciare che
CVSup usi la sua GUI quando lo esegui tramite
&man.cron.8;.
Collezioni di File di CVSup
Le collezioni di file disponibili via
CVSup sono organizzate gerarchicamente.
Ci sono poche collezioni grandi, le quali sono divise in piccole
sotto-collezioni. Ricevere una grande collezione è equivalente
a ricevere ogni sua sotto-collezione. Le relazioni gerarchiche tra le
collezioni riflettono l'uso dell'identazione nella lista qui
sotto.
Le collezioni maggiormente usate sono src-all , e
ports-all . Le altre collezioni sono usate solo
da piccoli gruppi di persone per scopi speciali, e alcuni siti mirror
potrebbero non contenerle tutte.
cvs-all release=cvs
Il deposito CVS maestro di FreeBSD, incluso il codice di
crittografia.
distrib release=cvs
File relativi alla distribuzione e al mirroring di
FreeBSD.
doc-all release=cvs
Sorgenti del Manuale di FreeBSD e altra documentazione.
Questa collezione non include i file per il sito web di
FreeBSD.
ports-all release=cvs
La FreeBSD Ports Collection.
Se non vuoi aggiornare per intero
ports-all (l'interno albero dei port),
ma usare una delle sotto-collezioni listate qui sotto,
assicurati di aggiornare sempre la
sotto-collezione ports-base !
Ogni volta che qualcosa cambia nell'infrastruttura della
costruzione dei port rappresentata da
ports-base , è praticamente certo
che quei cambiamenti saranno usati dai port
reali
in un brevissimo arco di tempo.
Quindi, se aggiorni solo i port reali
e
questi usano alcune delle nuove caratteristiche,
c'è un'alta probabilità che la loro
costruzione fallirà con alcuni misteriosi messaggi
di errore. La primissima cosa da
fare in questi casi è assicurarsi che la propria
sotto-collezione ports-base sia
aggiornata.
Se hai intenzione di creare localmente una copia di
ports/INDEX , devi
includere ports-all (l'intero albero dei
port). Costruire ports/INDEX con un
albero non completo non è supportato. Consulta la
FAQ .
ports-accessibility
release=cvs
Software per aiutare gli utenti disabili.
ports-arabic
release=cvs
Supporto per la lingua araba.
ports-archivers
release=cvs
Applicazioni per l'archiviazione.
ports-astro release=cvs
Applicazioni riguardanti l'astronomia.
ports-audio release=cvs
Applicazioni di supporto all'audio.
ports-base release=cvs
L'infrastruttura della costruzione della
collezione dei port - vari file posti nelle
sottodirectory Mk/ e
Tools/ della directory
/usr/ports .
Per favore vedi l' importante
avvertimento qui sopra: dovresti
sempre aggiornare questa
sotto-collezione ogni volta che aggiorni qualche
pezzo della FreeBSD Ports Collection!
ports-benchmarks
release=cvs
Benchmark (applicazioni per valutare le
prestazioni del computer).
ports-biology release=cvs
Biologia.
ports-cad release=cvs
Applicazioni per la grafica computerizzata.
ports-chinese release=cvs
Supporto alla lingua cinese.
ports-comms release=cvs
Software per la comunicazione.
ports-converters
release=cvs
Convertitori di codici di caratteri.
ports-databases
release=cvs
Database.
ports-deskutils
release=cvs
Cose che erano utilizzate sulla scrivania prima
che i computer furono inventati.
ports-devel release=cvs
Utility per il development.
ports-dns release=cvs
Software relativo al DNS.
ports-editors release=cvs
Editor.
ports-emulators
release=cvs
Emulatori per altri sistemi operativi.
ports-finance release=cvs
Applicazioni finanziarie, di gestione delle spese
e simili.
ports-ftp release=cvs
Server e client FTP.
ports-games release=cvs
Giochi.
ports-german release=cvs
Supporto alla lingua tedesca.
ports-graphics release=cvs
Utilità per la grafica.
ports-hebrew
release=cvs
Supporto per la lingua ebraica.
ports-hungarian
release=cvs
Supporto alla lingua ungherese.
ports-irc release=cvs
Utilità IRC (Internet Relay Chat).
ports-japanese release=cvs
Supporto alla lingua giapponese.
ports-java release=cvs
Utility &java;.
ports-korean release=cvs
Supporto alla lingua coreana.
ports-lang release=cvs
Linguaggi di programmazione.
ports-mail release=cvs
Software di posta.
ports-math release=cvs
Software per la computazione numerica.
ports-mbone release=cvs
Applicazioni MBone.
ports-misc release=cvs
Utility varie.
ports-multimedia
release=cvs
Software multimediale.
ports-net release=cvs
Software di rete.
ports-net-im
release=cvs
Software per messaggeria istantanea.
ports-net-mgmt
release=cvs
Software di gestione del network.
ports-net-p2p
release=cvs
Rete peer to peer.
ports-news release=cvs
Software per USENET.
ports-palm release=cvs
Software di supporto per i vari
Palm .
ports-polish release=cvs
Supporto alla lingua polacca.
ports-portuguese
release=cvs
Supporto alla lingua portoghese.
ports-print release=cvs
Software per la stampa.
ports-russian release=cvs
Supporto alla lingua russa.
ports-science
release=cvs
Scienzia.
ports-security release=cvs
Utility per la sicurezza.
ports-shells release=cvs
Shell a riga di comando.
ports-sysutils release=cvs
Utility di sistema.
ports-textproc release=cvs
Utility per la manipolazione del testo (non
include utility per la pubblicazione
computerizzata).
ports-ukrainian
release=cvs
Supporto per la lingua ucraina.
ports-vietnamese
release=cvs
Supporto alla lingua vietnamite.
ports-www release=cvs
Software relativo al World Wide Web.
ports-x11 release=cvs
Port per il supporto al sistema a finestre
X.
ports-x11-clocks
release=cvs
Orologi per X11.
ports-x11-fm release=cvs
Gestori di file per X11.
ports-x11-fonts
release=cvs
Font per X11 e relative utility.
ports-x11-toolkits
release=cvs
Cassette degli attrezzi per X11.
ports-x11-servers
release=cvs
Server X11.
ports-x11-themes
release=cvs
Temi per X11.
ports-x11-wm
release=cvs
Gestori di finestre per X11.
projects-all release=cvs
Sorgenti per i progetti di FreeBSD.
src-all release=cvs
I sorgenti correnti di FreeBSD, incluso il codice di
crittografia.
src-base release=cvs
Vari file posti in
/usr/src .
src-bin release=cvs
Utility per l'utente in ambiente mono-utente
(/usr/src/bin ).
src-contrib release=cvs
Utility e librerie al di fuori del progetto
FreeBSD, sostanzialmente utilizzati senza modifiche
(/usr/src/contrib ).
src-crypto release=cvs
Utility e librerie per la crittografia al di fuori
del progetto FreeBSD, sostanzialmente utilizzati senza
modifiche
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos e DES
(/usr/src/eBones ).
Non usati nell'attuale release di FreeBSD.
src-etc release=cvs
File di configurazione del sistema
(/usr/src/etc ).
src-games release=cvs
Giochi
(/usr/src/games ).
src-gnu release=cvs
Utility protette dalla licenza pubblica di GNU
(/usr/src/gnu ).
src-include release=cvs
File header
(/usr/src/include ).
src-kerberos5 release=cvs
Pacchetto di sicurezza Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV release=cvs
Pacchetto di sicurezza KerberosIV
(/usr/src/kerberosIV ).
src-lib release=cvs
Librerie
(/usr/src/lib ).
src-libexec release=cvs
Programmi di sistema normalmente eseguiti da altri
programmi
(/usr/src/libexec ).
src-release release=cvs
File richiesti per produrre una release di FreeBSD
(/usr/src/release ).
src-sbin release=cvs
Utility di sistema per la modalità
mono-utente
(/usr/src/sbin ).
src-secure release=cvs
Librerie e comandi per la crittografia
(/usr/src/secure ).
src-share release=cvs
File che possono essere condivisi tra sistemi
multipli (/usr/src/share ).
src-sys release=cvs
Il kernel
(/usr/src/sys ).
src-sys-crypto release=cvs
Codice di crittografia del kernel
(/usr/src/sys/crypto ).
src-tools release=cvs
Vari strumenti per il mantenimento di FreeBSD
(/usr/src/tools ).
src-usrbin release=cvs
Utility per l'utente
(/usr/src/usr.bin ).
src-usrsbin release=cvs
Utility di sistema
(/usr/src/usr.sbin ).
www release=cvs
I sorgenti per il sito web di FreeBSD.
distrib release=self
I file di configurazione del server
CVSup . Usati dai siti mirror
CVSup .
gnats release=current
Il database GNATS per tener traccia dei bug.
mail-archive release=current
Archivio delle mailing list di FreeBSD.
www release=current
I file pre-processati del sito web di FreeBSD (non i file
sorgenti). Usati dai siti mirror WWW.
Per Maggiori Informazioni
Per le FAQ ed altre informazioni di CVSup
vedere la pagina home
di CVSup .
La maggior parte delle discussioni su
CVSup inerenti a FreeBSD si svolgono sulla
&a.hackers;. In questa mailling list inoltre sono anche annunciate
nuove versioni del software, come pure sulla &a.announce;.
Questioni e resoconti di bug dovrebbero essere indirizzati
all'autore del programma cvsup-bugs@polstra.com .
Siti CVSup
I server CVSup per FreeBSD si trovano
ai seguenti siti:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
Usare Portsnap
Introduzione
Portsnap è un
sistema per distribuire in modo sicuro l'albero dei port
di &os;. Circa ogni ora, viene generata una
snapshot
dell'albero dei port, che viene
impacchettata e firmata criptograficamente.
I file risultanti sono quindi distribuiti via HTTP.
Come CVSup ,
Portsnap usa un modello
di aggiornamento a rchiesta : gli alberi
dei port impacchettati e firmati sono messi sul server web che
attende in modo passivo le richieste dei client. Gli utenti
devono eseguire &man.portsnap.8;
manualmente o schedulare il job con &man.cron.8;
per scaricare periodicamente gli aggiornamenti in modo
automatico.
Per ragioni tecniche, Portsnap
non aggiorna direttamente il reale
albero
dei port in /usr/ports/ ; invece, lavora
con una copia compressa dell'albero dei port memorizzata
di default in /var/db/portsnap/ . Questa
copia compressa viene quindi usata per aggiornare
l'albero dei port effettivo.
Se Portsnap è
installato dalla collezione dei port di &os;, la locazione
di default per la sua snapshot compressa è
/usr/local/portsnap/
invece di /var/db/portsnap/ .
Instalazione
Su &os; 6.0 e versioni più recenti,
Portsnap è contenuto nel
sistema base. Su versioni di &os; più datate, può
essere installato usando il port
sysutils/portsnap .
Configurazione di Portsnap
Il funzionamento di Portsnap
è controllato dal file di configurazione
/etc/portsnap.conf . Per la
maggior parte degli utenti, la configurazione di default
sarà sufficiente; per maggiori dettagli, consultare
la pagina man &man.portsnap.conf.5;.
Se Portsnap è
installato dalla collezione dei port di &os;,
userà il file di configurazione posto in
/usr/local/etc/portsnap.conf invece
di /etc/portsnap.conf .
Questo file di configurazione non viene creato quando
viene installato il port, ma viene dato un file
di configurazione di base; per copiarlo nella giusta
posizione, esegui il comando seguente:
&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf
Eseguire Portsnap per
la Prima Volta
La prima volta che &man.portsnap.8;
viene eseguito,
ha bisogno di scaricare una snapshot compressa
dell'intero albero dei port in
/var/db/portsnap/ (o
/usr/local/portsnap/ se
Portsnap è stato
installato dalla collezione dei port).
Dall'inizio del 2006 la sua dimensione
è di circa 41 MB.
&prompt.root; portsnap fetch
Una volta che la snapshot compressa è stata
scaricata, una copia dell'albero dei port può
estratta in /usr/ports/ .
Questo è necessario perfino se l'albero dei port
è già stato creato in quella directory
(es., usando CVSup ), poichè
stabilisce un punto di inizio dal qualche
portsnap può
determinare quale parte dell'albero dei port necessita
di essere aggiornata.
&prompt.root; portsnap extract
Nell'installazione di default la directory
/usr/ports
non viene creata. Se usi &os; 6.0-RELEASE,
la directory dovrebbe essere creata prima di
usare portsnap . Su versioni
di &os; e Portsnap più recenti
questa operazione viene fatta in automatico al primo
utilizzo del comando portsnap .
Aggiornare l'Albero dei Port
Dopo che una prima snapshot compressa
dell'albero dei port è stata scaricata
ed estratta in /usr/ports/ ,
l'aggiornamento dell'albero dei port consiste
in due passi: scaricando gli
aggiornamenti della snapshot compressa, e usare questi
per aggiornare l'albero
dei port effettivo. Questi due passi possono
essere specificati a
portsnap con un
comando singolo.
&prompt.root; portsnap fetch update
Alcune versioni vecchie di portsnap
non supportano questa sintassi; se fallisce, prova
in questo modo:
&prompt.root; portsnap fetch
&prompt.root; portsnap update
Avviare Portsnap tramite cron
Al fine di evitare problemi di
affollamenti istantanei
accedendo ai server di Portsnap ,
portsnap fetch non funziona
da un job &man.cron.8;. Esiste invece
un comando apposito portsnap cron ,
che attende una durata random fino a 3600 secondi prima
di scaricare gli aggiornamenti.
Inoltre, è fortemente racomandato che
portsnap update non sia eseguito
da un job cron , poichè
è soggetto a causare problemi se viene avviato
allo stesso tempo di compilazione o installazione di
un port. Ad ogni modo, è possibile aggiornare
i file INDEX dei port, e può
essere fatto passando il flag -I a
portsnap . (Ovviamente, se
portsnap -I update viene eseguito da
cron , sarà necessario eseguire
successivamnte portsnap update senza
la flag -I al fine di aggiornare
il resto dell'albero.)
Aggiungendo la riga seguente in /etc/crontab ,
portsnap aggiornerà
la snapshot compressa e i file INDEX in
/usr/ports/ , e manderà una email
se qualche port installato non è
aggiornato:
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
Se l'ora di sistema non è settata all'ora locale,
sostituisci 3 con un valore random
tra 0 e 23, al fine di disporre il carico sui server
Portsnap in modo uniforme.
Alcune versioni datate di portsnap
non supportano l'elenco di comandi multipli
(es., cron update )
nella stessa invocazione di portsnap .
Se la riga di comando
precedente fallisce, prova a sostituire
portsnap -I cron update con
portsnap cron && portsnap -I update .
Tag CVS
Quando ricevi o aggiorni dei sorgenti usando
cvs o CVSup , devi
specificare un tag di revisione.
Un tag di revisione si riferisce sia ad una particolare linea di
sviluppo di &os;, sia ad un specifico periodo di tempo. I primi tipi
sono chiamati tag di ramo
, mentre i secondi tag di
release
.
Tag di Ramo
Tutti, con l'eccezione di HEAD (che è
sempre un valido tag), sono relativi all'albero
src/ . Gli alberi ports/ ,
doc/ , e www/ non sono
ramificati.
HEAD
Nome simbolico per la linea di sviluppo corrente,
FreeBSD-CURRENT. È anche il tag di default se nessun tag
di revisione è specificato.
In CVSup , questo tag è
rappresentato dal simbolo . .
In CVS, questo è il settaggio di default se nessun
tag di revisione è stato specificato. In genere
non è una buona idea aggiornare i
sorgenti a CURRENT su una macchina STABLE, a meno che sai cosa
stai facendo.
RELENG_6
La linea di sviluppo per FreeBSD-6.X, anche conosciuta come
FreeBSD 6-STABLE.
RELENG_6_1
Il ramo di release per FreeBSD-6.1, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_6_0
Il ramo di release per FreeBSD-6.0, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5
La linea di sviluppo per FreeBSD-5.X, anche conosciuta come
FreeBSD-STABLE.
RELENG_5_5
Il ramo di release per FreeBSD-5.5, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5_4
Il ramo di release per FreeBSD-5.4, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5_3
Il ramo di release per FreeBSD-5.3, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5_2
Il ramo di release per FreeBSD-5.2 e FreeBSD-5.2.1, usato solo
per aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5_1
Il ramo di release per FreeBSD-5.1, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_5_0
Il ramo di release per FreeBSD-5.0, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4
La linea di sviluppo per FreeBSD-4.X, anche conosciuta come
FreeBSD 4-STABLE.
RELENG_4_11
Il ramo di release per FreeBSD-4.11, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_10
Il ramo di release per FreeBSD-4.10, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_9
Il ramo di release per FreeBSD-4.9, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_8
Il ramo di release per FreeBSD-4.8, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_7
Il ramo di release per FreeBSD-4.7, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_6
Il ramo di release per FreeBSD-4.6 e FreeBSD-4.6.2, usato solo
per aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_5
Il ramo di release per FreeBSD-4.5, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_4
Il ramo di release per FreeBSD-4.4, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_4_3
Il ramo di release per FreeBSD-4.3, usato solo per
aggiornamenti relativi alla sicurezza e per altri fix
cruciali.
RELENG_3
La line di sviluppo per FreeBSD-3.X, anche conosciuta come
3.X-STABLE.
RELENG_2_2
La linea di sviluppo per FreeBSD-2.2.X, anche conosciuta come
2.2-STABLE. Questo ramo è per la maggior parte
obsoleto.
Tag di Release
Questi tag si riferiscono a un preciso istante di tempo quando una
versione di &os; è stata rilasciata. Il processo di release
engineering è documentato in dettaglio dai documenti Release Engineering
Information e Release
Process . L'albero src
usa nomi di tag che iniziano con RELENG_ . Gli
alberi ports e doc usano tag il cui nome inizia con
RELEASE . Infine, l'albero www non viene taggato con alcun nome
particolare per le release.
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
Siti AFS
I server AFS per FreeBSD sono in esecuzione nei seguenti siti:
Svezia
Il percorso dei file è:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Svezia
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Il maintainer ftp@stacken.kth.se
Siti rsync
I seguenti siti rendono disponibile FreeBSD tramite il protocollo
rsync. L'utility rsync lavora nello stesso
modo del comando &man.rcp.1;, ma ha più opzioni e usa il protocollo
rsync per aggiornamenti remoti il quale trasferisce solo le differenze tra
i due set di file, e di conseguenza accelera fortemente la
sincronizzazione su rete. Questo è molto utile se hai un sito
mirror del server FTP di FreeBSD, o del deposito CVS. La suite
rsync è disponibile per molti sistemi
operativi e, su FreeBSD, puoi usare il port net/rsync o il rispettivo package.
Repubblica Ceca
rsync://ftp.cz.FreeBSD.org/
Collezioni disponibili:
ftp: Un mirror parziale del server FTP di FreeBSD.
FreeBSD: Un mirror completo del server FTP di
FreeBSD.
Germania
rsync://grappa.unix-ag.uni-kl.de/
Collezioni disponibili:
freebsd-cvs: Il completo deposito CVS di FreeBSD.
Questa macchina fa da mirror anche per il deposito CVS dei
progetti NetBSD e OpenBSD, tra gli altri.
Olanda
rsync://ftp.nl.FreeBSD.org/
Collezioni disponibili:
vol/4/freebsd-core: Un completo mirror del server FTP di
FreeBSD.
Regno Unito
rsync://rsync.mirror.ac.uk/
Collezioni disponibili:
ftp.FreeBSD.org: Un completo mirror del server FTP di
FreeBSD.
Stati Uniti d'America
rsync://ftp-master.FreeBSD.org/
Questo server può essere usato solo dai siti mirror
primari di FreeBSD.
Collezioni disponibili:
FreeBSD: L'archivio master del server FTP di FreeBSD.
acl: La lista master delle ACL di FreeBSD.
rsync://ftp13.FreeBSD.org/
Collezioni disponibili:
FreeBSD: Un completo mirror del server FTP di
FreeBSD.
diff --git a/ja_JP.eucJP/articles/contributing/article.xml b/ja_JP.eucJP/articles/contributing/article.xml
index 627295fc20..b2065377c7 100644
--- a/ja_JP.eucJP/articles/contributing/article.xml
+++ b/ja_JP.eucJP/articles/contributing/article.xml
@@ -1,599 +1,599 @@
FreeBSD ¤Ø¤Î¹×¸¥
¤³¤Îʸ½ñ¤Ï¡¢¸Ä¿Í¤äÃÄÂΤ¬ FreeBSD
¥×¥í¥¸¥§¥¯¥È¤Ë¹×¸¥¤¹¤ë¤¿¤á¤Î¤¤¤¯¤Ä¤«¤ÎÊýË¡¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£
Jordan
Hubbard
´ó¹Æ:
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
¹×¸¥
¤¢¤Ê¤¿¤â FreeBSD ¤Î¤¿¤á¤Ë¹×¸¥¤·¤¿¤¯¤Ê¤ê¤Þ¤·¤¿¤«? ÁÇÀ²¤é¤·¤¤! FreeBSD
¤ÏÀ¸¤»Ä¤ë¤¿¤á¤Ë¥æ¡¼¥¶¥Ù¡¼¥¹¤Î¹×¸¥¤ËÍê¤Ã¤Æ¤¤¤Þ¤¹ ¡£
¤¢¤Ê¤¿¤Î¹×¸¥¤Ï´¶¼Õ¤µ¤ì¤ë¤À¤±¤Ç¤Ï¤Ê¤¯¡¢FreeBSD
¤¬À®Ä¹¤·Â³¤±¤ë¤¿¤á¤Ë¶Ë¤á¤Æ½ÅÍפʤâ¤Î¤Ê¤Î¤Ç¤¹!
°ìÉô¤Î¿Í㤬ȯ¸À¤·¤Æ¤¤¤ë¤Î¤È¤ÏÈ¿ÂФˡ¢
¹×¸¥¤ò¼õ¤±ÉÕ¤±¤Æ¤â¤é¤¦¤¿¤á¤ËÏÓÍø¤¤Î¥×¥í¥°¥é¥Þ¡¼¤Ë¤Ê¤ë¤È¤«
FreeBSD ¥³¥¢¥Á¡¼¥à¤Î¿Í¤È¿ÆÍ§¤Ë¤Ê¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
¿¤¯¤Î¤½¤·¤Æ±×¡¹Áý²Ã¤¹¤ëÀ¤³¦Ãæ¤Î¹×¸¥¼Ô㤬 FreeBSD ¤ò³«È¯¤·¤Æ¤ª¤ê¡¢
Èà¤é¤ÎǯÎð¡¢ÀìÌçµ»½ÑʬÌî¤Ï¿´ô¤ËÅϤäƤ¤¤Þ¤¹¡£
¼ê¤Î¶õ¤¤¤Æ¤¤¤ë¿Í¤è¤ê¤âÀ®¤¹¤Ù¤»Å»ö¤ÎÊý¤¬Â¿¤¯¡¢
¤ª¼êÅÁ¤¤¤Ï¤¤¤Ä¤Ç¤â´¿·Þ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
FreeBSD
¥×¥í¥¸¥§¥¯¥È¤Ï¥«¡¼¥Í¥ë¤ä»¶ºß¤·¤Æ¤¤¤ë¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤è¤ê¤â¡¢
¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à´Ä¶¤ËÂФ·¤ÆÀÕǤ¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£
»ä¤¿¤Á¤Î TODO ¥ê¥¹¥È¤Ë¤Ïʸ½ñÀ°È÷¡¢¥Ù¡¼¥¿¥Æ¥¹¥È¡¢
¥¤¥ó¥¹¥È¡¼¥é¤äÀìÌç²½¤µ¤ì¤¿¥¿¥¤¥×¤Î¥«¡¼¥Í¥ë³«È¯¤Î¹¥Îã¤ò¾Ò²ð¤¹¤ë¤Ê¤ÉÈó¾ï¤Ë¹¤¤ÈϰϤκî¶È¤¬¤¢¤ê¤Þ¤¹¡£
¤¢¤Ê¤¿¤Îµ»Ç½¥ì¥Ù¥ë¤äʬÌî¤Ë´Ø¤ï¤é¤º¡¢
¥×¥í¥¸¥§¥¯¥È¤ò»Ù±ç¤Ç¤¤ë¤³¤È¤¬É¬¤º²¿¤«¤¢¤ê¤Þ¤¹!
FreeBSD
´ØÏ¢¤Î»ö¶È¤Ë·È¤ï¤ë¾¦¶ÈÃÄÂΤ¬»ä¤¿¤Á¤Ë¥³¥ó¥¿¥¯¥È¤¹¤ë¤³¤È¤â´¿·Þ¤·¤Æ¤¤¤Þ¤¹¡£
¤¢¤Ê¤¿¤ÎÀ½Éʤò (FreeBSD ¾å¤Ç) ưºî¤µ¤»¤ë¤Ë¤Ï¡¢
ÆÃÊ̤ʳÈÄ¥¤¬É¬ÍפǤϤ¢¤ê¤Þ¤»¤ó¤«?
¤¢¤Þ¤ê¤Ë¤âÉ÷ÊѤï¤ê¤ÊÍ×µá¤Ç¤Ê¤±¤ì¤Ð¡¢
¤½¤ì¤ò¼õ¤±Æþ¤ì¤ëÍѰդ¬»ä¤¿¤Á¤Ë¤¢¤ë¤È¤ï¤«¤ë¤Ï¤º¤Ç¤¹¡£
ÉղòÁÃͤΤ¢¤ëÀ½ÉʤǤ¹¤«? »ä¤¿¤Á¤ËÃΤ餻¤Æ¤¯¤À¤µ¤¤! ¿ʬ»ä¤¿¤Á¤Ï¡¢
¤¢¤ëÌ̤ˤª¤¤¤Æ¶¦Æ±¤·¤Æºî¶È¤ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤Ç¤·¤ç¤¦¡£
¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢³¦¤Ï¡¢
¥½¥Õ¥È¥¦¥§¥¢¤¬¤É¤Î¤è¤¦¤Ë³«È¯¤µ¤ì¡¢
ÈÎÇ䤵¤ì¡¢Êݼ餵¤ì¤Æ¤¤¤¯¤«¤Ë¤Ä¤¤¤Æ¡¢´û¸¤Î²¾Àâ¤ËÄ©À路¤Æ¤¤¤Þ¤¹¡£
¾¯¤Ê¤¯¤È¤â¤â¤¦°ìÅÙ¹Íθ¤·¤Æ¤ß¤ë¤³¤È¤ò»ä¤¿¤Á¤Ï¶¯¤¯¤ª¾©¤á¤·¤Þ¤¹¡£
²¿¤¬É¬Í×?
¼¡¤Î²ÝÂê¤È¥µ¥Ö¥×¥í¥¸¥§¥¯¥È¤Î°ìÍ÷¤Ï¡¢¿§¡¹¤Ê
TODO
¥ê¥¹¥È¤È¥æ¡¼¥¶¤«¤é¤ÎÍ×µá¤ò¹ç¤ï¤»¤¿¤â¤Î¤Ç¤¹¡£
¿Ê¹ÔÃæ¤ÎÈó¥×¥í¥°¥é¥Þ¸þ¤±¤Î²ÝÂê
FreeBSD ¤Ë´Ø¤ï¤Ã¤Æ¤¤¤ëÃæ¤Ë¤Ï¡¢¥×¥í¥°¥é¥Þ¤Ç¤Ï¤Ê¤¤¿Í¤¬¤¿¤¯¤µ¤ó¤¤¤Þ¤¹¡£
¥×¥í¥¸¥§¥¯¥È¤Ë¤Ï¡¢Ê¸½ñ¤ò½ñ¤¯¿Í¡¢Web ¥Ç¥¶¥¤¥Ê¡¢¥µ¥Ý¡¼¥È¤ò¹Ô¤¦¿Í¤¬¤¤¤Þ¤¹¡£
¹×¸¥¤¹¤ë¤Î¤ËɬÍפʤΤϡ¢»þ´Ö¤ÎÅê»ñ¤È³Ø¤Ö°ÕÍߤǤ¹¡£
Äê´üŪ¤Ë FAQ ¤È¥Ï¥ó¥É¥Ö¥Ã¥¯¤òÄ̤·¤ÆÆÉ¤ó¤Ç¤ß¤Æ¤¯¤À¤µ¤¤¡£
¤â¤·¤Þ¤º¤¤ÀâÌÀ¤ä¸Å¤¤»öÊÁ¤ä´°Á´¤Ë´Ö°ã¤Ã¤Æ¤¤¤ë¤³¤È¤Ê¤É¤¬¤¢¤ì¤Ð»äã¤Ë¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£
¤µ¤é¤ËÎɤ¤¤Î¤Ï²æ¡¹¤Ë½¤Àµ°Æ¤òÁ÷¤ë¤³¤È¤Ç¤¹
(Docbook ¤Ï³Ø¤Ö¤Î¤Ë¤½¤ì¤Û¤ÉÆñ¤·¤¯¤¢¤ê¤Þ¤»¤ó¤¬¡¢
¥×¥ì¥¤¥ó¥Æ¥¥¹¥È¤Ç¤âÌäÂê¤Ï¤¢¤ê¤Þ¤»¤ó)¡£
FreeBSD
¤Îʸ½ñ¤ò¼«Ê¬¤ÎÊì¹ñ¸ì¤ËËÝÌõ¤¹¤ë¤Î¤ò¼êÅÁ¤Ã¤Æ¤¯¤À¤µ¤¤¡£
ʸ½ñ¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ì¤Ð¡¢¤â¤Ã¤Èʸ½ñ¤òËÝÌõ¤·¤¿¤ê¡¢
¤½¤ÎËÝÌõ¤¬ºÇ¿·¤Î¾õÂÖ¤«¤É¤¦¤«³Îǧ¤¹¤ë¤Î¤ò¼êÅÁ¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¤Þ¤º FreeBSD ¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥ÈÆþÌç¤Î ËÝÌõ¤Ë´Ø¤¹¤ë
FAQ (¤è¤¯¤¢¤ë¼ÁÌä¤È¤½¤ÎÅú¤¨) ¤ò°ìÆÉ¤·¤Æ¤¯¤À¤µ¤¤¡£
¤È¤Ï¤¤¤Ã¤Æ¤â¡¢
¤½¤¦¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¤¢¤Ê¤¿¤¬¤¹¤Ù¤Æ¤Î FreeBSD
ʸ½ñ¤ÎËÝÌõ¤Ë·È¤ï¤ë¤è¤¦¤Ë¤Ê¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤Ç¤¹¤«¤é¤Í¡£
— ¥Ü¥é¥ó¥Æ¥£¥¢¤È¤·¤Æ¡¢
¿¾¯¤Ë´Ø¤ï¤é¤º¡¢¼«Ê¬¤¬¤ä¤í¤¦¤È»×¤¦¤À¤±¤ä¤Ã¤Æ¤¯¤À¤µ¤¤¡£
¤¤¤Ã¤¿¤ó狼¤¬ËÝÌõ¤ò»Ï¤á¤¿¤é¡¢
¤¿¤¯¤µ¤ó¤Î¿Í㤬¤¤¤Ä¤À¤Ã¤Æ¶¨ÎϤ·¤Æ¤¯¤ì¤Þ¤¹¤«¤é¡£
¤â¤·ËÝÌõ¤ËÈñ¤¹»þ´Ö¤ä¥¨¥Í¥ë¥®¡¼¤¬¸Â¤é¤ì¤Æ¤¤¤ë¤Ê¤é¡¢
¤Þ¤º¥¤¥ó¥¹¥È¡¼¥ëÊýË¡¤ÎËÝÌõ¤«¤é¤ª´ê¤¤¤·¤Þ¤¹ (ÌõÃí: ¤Ê¤¼¤Ê¤é¡¢
¤â¤Ã¤È¤âɬÍפȤµ¤ì¤Æ¤¤¤ëʸ½ñ¤¬¤½¤ì¤À¤«¤é¤Ç¤¹)¡£
¤¿¤Þ¤Ë (¤â¤·¤¯¤ÏÄê´üŪ¤Ë)
&a.questions; ¤ä &ng.misc; ¤òÆÉ¤ó¤Ç¤¯¤À¤µ¤¤¡£
¤³¤ì¤Ï¡¢¤¢¤Ê¤¿¤Î»ý¤Ã¤Æ¤¤¤ëÀìÌçÃ챤ò¶¦Í¤·¤¿¤ê¡¢
狼¤¬Êú¤¨¤Æ¤¤¤ëÌäÂê¤ò²ò·è¤¹¤ë¤Î¤ËÈó¾ï¤Ë͸ú¤Ê¤â¤Î¤Ë¤Ê¤êÆÀ¤ë¤³¤È¤Ç¤¹¡£
»þ¤Ë¤Ï¤¢¤Ê¤¿¼«¿È¤Ç¿·¤·¤¤¤³¤È¤ò³Ø¤Ö¤³¤È¤µ¤¨¤Ç¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£
¤³¤ì¤é¤Î¥Õ¥©¡¼¥é¥à¤Ï¤ä¤ë¤Ù¤¤³¤È¤Î¥¢¥¤¥Ç¥£¥¢¤Î¸»¤Ë¤â¤Ê¤êÆÀ¤ë¤Î¤Ç¤¹¡£
¿Ê¹ÔÃæ¤Î¥×¥í¥°¥é¥Þ¸þ¤±¤Î²ÝÂê
¤³¤Î¥»¥¯¥·¥ç¥ó¤Çµó¤²¤ë²ÝÂê¤ÏËÄÂç¤Ê»þ´Ö¤ÎÅê»ñ¤Þ¤¿¤Ï
FreeBSD ¤Î¥«¡¼¥Í¥ë¤Ë´Ø¤¹¤ë¿¼¤¤Ãμ±¡¢¤â¤·¤¯¤ÏξÊý¤òɬÍפȤ·¤Þ¤¹¡£
¤·¤«¤·¤Ê¤¬¤é¡¢½µËö¥Ï¥Ã¥«¡¼
¤ËŬ¤·¤¿Î©ÇɤʲÝÂê¤â¿ô¿¤¯¤¢¤ê¤Þ¤¹¡£
FreeBSD-CURRENT ¤ò±¿ÍѤ·¤Æ¤ª¤ê¡¢
¾õÂÖ¤ÎÎɤ¤¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈÀܳ¤¬¤¢¤ë¤Ê¤é¤Ð¡¢
current.FreeBSD.org
¤È¤¤¤¦°ìÆü¤Ë°ì²ó¥Õ¥ë¥ê¥ê¡¼¥¹¤ò¹Ô¤Ã¤Æ¤¤¤ë¥Þ¥·¥ó¤¬¤¢¤ê¤Þ¤¹
— »þ¤ª¤êºÇ¿·¤Î¥ê¥ê¡¼¥¹¤ò¤½¤³¤«¤é¥¤¥ó¥¹¥È¡¼¥ë¤·¡¢
¤½¤Î²áÄø¤Ç²¿¤«ÌäÂ꤬¤¢¤ë¤Ê¤éÊó¹ð¤·¤Æ¤¯¤À¤µ¤¤¡£
&a.bugs; ¤òÆÉ¤ó¤Ç¤¯¤À¤µ¤¤¡£
¤½¤³¤Ç¤Ï¤¢¤Ê¤¿¤¬·úÀßŪ¤Ê¥³¥á¥ó¥È¤òÉÕ¤±¤¿¤ê¥Æ¥¹¥È¤Ç¤¤ë¥Ñ¥Ã¥Á¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¤è¤¦¤ÊÌäÂ꤬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£
¤â¤·¤¯¤Ï¤½¤ì¤é¤ÎÌäÂê¤Î°ì¤Ä¤ò¤¢¤Ê¤¿¼«¿È¤Ç½¤Àµ¤¹¤ë¤³¤È¤µ¤¨¤Ç¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£
-CURRENT ¤ËÀµ¤·¤¯Åö¤Æ¤é¤ì¤ë¤¬¤·¤Ð¤é¤¯·Ð¤Ã¤Æ¤â (Ä̾ï¤Ï
2, 3 ½µ´Ö) -STABLE
¤Ë¼è¤ê¹þ¤Þ¤ì¤Æ¤Ê¤¤¤è¤¦¤Ê¥Ð¥°¥Õ¥£¥Ã¥¯¥¹¤¬¤¢¤ë¤Ê¤é¤Ð¥³¥ß¥Ã¥¿¡¼¤ËÃúÇ«¤Ë»×¤¤½Ð¤µ¤»¤Æ¤¯¤À¤µ¤¤¡£
´ó£¥½¥Õ¥È¥¦¥§¥¢¤ò¥½¡¼¥¹¥Ä¥ê¡¼¤Î
src/contrib
¤Ë°Üư¤µ¤»¤Æ¤¯¤À¤µ¤¤¡£
src/contrib
°Ê²¼¤Î¥³¡¼¥É¤¬ºÇ¿·¤Î¤â¤Î¤Ç¤¢¤ë¤«³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£
·Ù¹ð¤ò¾ÜºÙ¤ËÊó¹ð¤¹¤ë¤è¤¦¤Ë¤·¤Æ¥½¡¼¥¹¥Ä¥ê¡¼Á´ÂÎ
(¤â¤·¤¯¤Ï¤½¤Î°ìÉô) ¤ò¹½ÃÛ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¤½¤·¤Æ·Ù¹ð¤¬½Ð¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
ports ¤Ç¡¢gets() ¤ò»È¤Ã¤Æ¤¤¤ë¤È¤«
malloc.h
¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¤Ê¤É¤È¤¤¤Ã¤¿·Ù¹ð¤¬½Ð¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¤â¤·¤Ê¤ó¤é¤«¤Î ports ¤Ë´Ø¤ï¤Ã¤Æ¤¤¤Æ¡¢
&os; ¤Ë¸ÇͤÎÊѹ¹¤¬É¬ÍפǤ¢¤ì¤Ð¡¢
¤¢¤Ê¤¿¤Î¥Ñ¥Ã¥Á¤òºî¼Ô¤Ë¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤·¤Æ¤¯¤À¤µ¤¤
(¼¡¤Î¥Ð¡¼¥¸¥ç¥ó¤¬½Ð¤¿»þ¤Ë¤¢¤Ê¤¿¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹)¡£
&posix; ¤Î¤è¤¦¤Ê¸ø¼°É¸½à¤Î¼Ì¤·¤òÆþ¼ê¤·¤Æ¤¯¤À¤µ¤¤¡£FreeBSD
C99 & POSIX ɸ½àŬ¹ç¥×¥í¥¸¥§¥¯¥È ¤Î¥¦¥§¥Ö¥µ¥¤¥È¤Ë¡¢
¤½¤¦¤¤¤Ã¤¿É¸½à¤Ø¤Î¥ê¥ó¥¯¤¬¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¡£
FreeBSD ¤Îµóư¤òɸ½à¤¬Í׵᤹¤ë¤â¤Î¤ÈÈæ³Ó¤·¤Æ¤¯¤À¤µ¤¤¡£µóư¤¬°Û¤Ê¤ë¾ì¹ç¡¢
ÆÃ¤Ë¤½¤ì¤¬»ÅÍͤμè¤ë¤Ë¤é¤Ê¤«¤Ã¤¿¤êʬ¤«¤ê¤Ë¤¯¤¤ºÙ¤«¤¤Éôʬ¤Ê¤é¡¢
¾ã³²Êó¹ð¤òÄó½Ð¤·¤Æ¤¯¤À¤µ¤¤¡£¤Ç¤¤ì¤Ð¤É¤¦½¤Àµ¤¹¤Ù¤¤«ÌÀ¤é¤«¤Ë¤·¤Æ¡¢
¾ã³²Êó¹ð¤Ë¥Ñ¥Ã¥Á¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£É¸½à¤¬´Ö°ã¤Ã¤Æ¤¤¤ë¤È´¶¤¸¤¿¤é¡¢
ɸ½à²½ÃÄÂΤˤ½¤Îµ¿Ìä¤òäý¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤Î°ìÍ÷¤ËÄɲ乤ë²ÝÂê¤òÄ󰯤·¤Æ¤¯¤À¤µ¤¤!
¾ã³²Êó¹ð (PR; Problem Report) ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤ª¤±¤ëºî¶È
¾ã³²Êó¹ð (PR) ¥Ç¡¼¥¿¥Ù¡¼¥¹
FreeBSD
¾ã³²Êó¹ð°ìÍ÷ ¤Ç¤Ï¡¢¸½ºßÌäÂê¤È¤Ê¤Ã¤Æ¤¤¤ë¾ã³²Êó¹ð¤È¡¢
FreeBSD ¤ÎÍøÍѼԤˤè¤Ã¤ÆÄó½Ð¤µ¤ì¤¿²þÎɤÎÍ×˾¤¹¤Ù¤Æ¤Î°ìÍ÷¤ò¸ø³«¤·¤Æ¤¤¤Þ¤¹¡£
¾ã³²Êó¹ð¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Ï¡¢
¥×¥í¥°¥é¥Þ¸þ¤±¤ÈÈó¥×¥í¥°¥é¥Þ¸þ¤±¤Î²ÝÂ꤬¶¦¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
open ¾õÂ֤ξ㳲Êó¹ð¤ò¸«¤Æ¡¢¶½Ì£¤ò°ú¤¯¤â¤Î¤¬¤¢¤ë¤«³Î¤«¤á¤Æ¤¯¤À¤µ¤¤¡£
¤Ê¤«¤Ë¤Ï¡¢¾ã³²Êó¹ð¤ËÂФ¹¤ë½¤Àµ¤¬Å¬Àڤʤâ¤Î¤Ç¤¢¤ë¤«¤É¤¦¤«Ã±¤Ë¥Á¥§¥Ã¥¯¤¹¤ë¤À¤±¤Î¤È¤Æ¤â´Êñ¤Êºî¶È¤â¤¢¤ë¤Ç¤·¤ç¤¦¤·¡¢
¤º¤Ã¤ÈÊ£»¨¤Ê¤â¤Î¤ä¡¢½¤Àµ¤¬´Þ¤Þ¤ì¤Æ¤¹¤é¤¤¤Ê¤¤¤â¤Î¤â¤¢¤ë¤Ç¤·¤ç¤¦¡£
¤Þ¤º¡¢¤Þ¤Àï¤Ë¤â³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤Ê¤¤¾ã³²Êó¹ð¤«¤éºî¶È¤ò»Ï¤á¤Æ¤¯¤À¤µ¤¤¡£
¤â¤·¡¢Ã¯¤«Â¾¤Î¿Í¤Ë³ä¤êÅö¤Æ¤¬·è¤Þ¤Ã¤Æ¤¤¤ë¤±¤ì¤É¤â¼«Ê¬¤¬ºî¶È²Äǽ¤À¡¢
¤È¤¤¤¦¾ã³²Êó¹ð¤¬¤¢¤ì¤Ð¡¢ºî¶È¤¬¤Ç¤¤ë¤«¤É¤¦¤«¡¢
³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤ë¿Í¤ËÅŻҥ᡼¥ë¤ÇÌ䤤¹ç¤ï¤»¤Æ¤¯¤À¤µ¤¤¡£—
´û¤Ë¥Æ¥¹¥ÈÍѥѥåÁ¤¬ÍѰդµ¤ì¤Æ¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤·¡¢
¤è¤ê¿Ê¤ó¤À¹Í¤¨¤Ë´Ø¤·¤ÆµÄÏÀ¤¬¤Ç¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£
¥¢¥¤¥Ç¥£¥¢
¥Ú¡¼¥¸¤Î¹àÌÜ
&os; ¥×¥í¥¸¥§¥¯¥È¤Ë¹×¸¥¤·¤¿¤¤¿Í¤Î¤¿¤á¤Ë
¥Ü¥é¥ó¥Æ¥£¥¢¤Î¤¿¤á¤Î
&os; ¤Î¥×¥í¥¸¥§¥¯¥È¤È¥¢¥¤¥Ç¥£¥¢°ìÍ÷ ¤âÍѰդµ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤Î°ìÍ÷¤Ï¾ï¤Ë¹¹¿·¤µ¤ì³¤±¤Æ¤ª¤ê¡¢¤½¤ì¤¾¤ì¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¡¢
¥×¥í¥°¥é¥Þ¤ÈÈó¥×¥í¥°¥é¥ÞξÊý¤Ë¸þ¤±¤¿¹àÌܤ¬¤¢¤ê¤Þ¤¹¡£
¹×¸¥¤Î»ÅÊý
°ìÈÌŪ¤Ë¡¢¥·¥¹¥Æ¥à¤Ø¤Î¹×¸¥¤Ï¼¡¤Î 5
¤Ä¤Î¥«¥Æ¥´¥ê¤Î 1 ¤Ä°Ê¾å¤ËʬÎव¤ì¤Þ¤¹:
¥Ð¥°Êó¹ð¤È°ìÈÌŪ¤ÊÏÀɾ
°ìÈÌŪ¤Ê µ»½ÑŪ´Ø¿´»ö¤Ë´Ø¤¹¤ë¥¢¥¤¥Ç¥¢¤äÄ󰯤Ï
&a.hackers; ¤Ø¥á¡¼¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£Æ±Íͤˡ¢¤³¤Î¤è¤¦¤Ê»öÊÁ¤Ë¶½Ì£¤Î¤¢¤ë
(¤½¤·¤ÆËÄÂç¤Ê ¥á¡¼¥ë! ¤ËÂѤ¨¤é¤ì¤ë) ¿Í¤Ï¡¢
&a.hackers; ¤Ë»²²Ã¤¹¤ë¤ÈÎɤ¤¤Ç¤·¤ç¤¦¡£
¤³¤Î¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ä¾¤Î¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤Ë´Ø¤¹¤ë¾Ü¤·¤¤¾ðÊó¤Ë¤Ä¤¤¤Æ¤Ï
FreeBSD
¥Ï¥ó¥É¥Ö¥Ã¥¯ ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
¥Ð¥°¤òȯ¸«¤·¤¿¤êÊѹ¹¤òÁ÷ÉÕ¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¾ì¹ç¤Ï
&man.send-pr.1; ¥×¥í¥°¥é¥à¤« ¥¦¥§¥Ö¥Ù¡¼¥¹¤Î
send-pr ¤ò»ÈÍѤ·¤ÆÊó¹ð¤·¤Æ¤¯¤À¤µ¤¤¡£
¥Ð¥°¥ì¥Ý¡¼¥È¤Î³Æ¹àÌܤòËä¤á¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£65KB
¤òͤ¨¤ë¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢
¥ì¥Ý¡¼¥ÈÃæ¤ËľÀܥѥåÁ¤òÆþ¤ì¤Æ¤¯¤À¤µ¤Ã¤Æ·ë¹½¤Ç¤¹¡£
¥Ñ¥Ã¥Á¤¬¥½¡¼¥¹¥Ä¥ê¡¼¤Ë¤¹¤°Å¬ÍѤǤ¤ë¤â¤Î¤Ê¤é¤Ð¡¢
Êó¹ð¤Î³µÍ×¤Ë [PATCH] ¤È½ñ¤¤¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
¥Ñ¥Ã¥Á¤òÆþ¤ì¤ë¾ì¹ç¡¢¥«¥Ã¥È&¥Ú¡¼¥¹¥È¤Ï¤·¤Ê¤¤¤Ç
¤¯¤À¤µ¤¤¡£
¥«¥Ã¥È&¥Ú¡¼¥¹¥È¤Ç¤Ï¥¿¥Ö¤¬¥¹¥Ú¡¼¥¹¤ËŸ³«¤µ¤ì¤Æ¥Ñ¥Ã¥Á¤¬»È¤¤Êª¤Ë¤Ê¤é¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¥Ñ¥Ã¥Á¤¬ 20KB ¤òͤ¨¤ë¾ì¹ç¤Ï¡¢
¤½¤ì¤é¤ò (&man.gzip.1; ¤ä &man.bzip2.1; ¤Ç) °µ½Ì¤·¡¢
°µ½Ì¤·¤¿¥Ñ¥Ã¥Á¤ò &man.uuencode.1;
¤ò»È¤Ã¤Æ¥Ð¥°Êó¹ð¤Ë´Þ¤á¤ë¤³¤È¤â¸¡Æ¤¤·¤Æ¤¯¤À¤µ¤¤¡£
¥ì¥Ý¡¼¥È¤¬¥Õ¥¡¥¤¥ê¥ó¥°¤µ¤ì¤ì¤Ð¡¢
¥Ð¥°Êó¹ð¤Î³Îǧ¤È¥È¥é¥Ã¥¥ó¥°ÈÖ¹æ¤ò¥á¡¼¥ë¤Ç¼õ¤±¼è¤ë¤Ï¤º¤Ç¤¹¡£
¤³¤Î¥È¥é¥Ã¥¥ó¥°ÈÖ¹æ¤ò³Ð¤¨¤Æ¤ª¤¡¢ÌäÂê¤Ë´Ø¤¹¤ë¾ÜºÙ¾ðÊó¤ò
&a.bugfollowup;
¤Ë¥á¡¼¥ë¤ÇÁ÷¤Ã¤Æ¹¹¿·¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð
"Re: kern/3377" ¤Î¤è¤¦¤Ë¡¢
¤³¤ÎÈÖ¹æ¤ò¥µ¥Ö¥¸¥§¥¯¥È¹Ô¤Ë»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
¤¹¤Ù¤Æ¤Î¥Ð¥°¥ì¥Ý¡¼¥È¤ÎÄɲþðÊó¤Ï¡¢
¤³¤ÎÊýË¡¤ÇÁ÷ÉÕ¤µ¤ì¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó¡£
¤â¤·¥¿¥¤¥à¥ê¡¼¤Ë (¤¢¤Ê¤¿¤ÎÅŻҥ᡼¥ëÀܳ·ÁÂ֤ˤâ¤è¤ê¤Þ¤¹¤¬¡¢
3 Æü¤«¤é 1 ½µ´Ö) ³Îǧ¤ò¼õ¤±¤È¤ì¤Ê¤¤¤È¤«¡¢²¿¤é¤«¤ÎÍýͳ¤Ç
&man.send-pr.1; ¥³¥Þ¥ó¥É¤¬»ÈÍѤǤ¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢&a.bugs;
¤Ø¥á¡¼¥ë¤òÁ÷¤ê¡¢
狼Âå¤ê¤Ë¥Ð¥°Êó¹ð¤òÁ÷ÉÕ¤·¤Æ¤â¤é¤¦¤è¤¦¤¿¤º¤Í¤Æ¤¯¤À¤µ¤¤¡£
Îɤ¤¾ã³²Êó¹ð¤ò½ñ¤¯ÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¤³¤Îʸ½ñ ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
ʸ½ñ¤ÎÊѹ¹
ʸ½ñ¤Ë´Ø¤¹¤ëÄó°Æ
ʸ½ñ¤ÎÊѹ¹¤Ï &a.doc; ¤¬´ÆÆÄ¤·¤Æ¤¤¤Þ¤¹¡£
´°Á´¤ÊÀâÌÀ¤Ï¡¢FreeBSD
¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥ÈÆþÌç ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
¥Ð¥°Êó¹ð¤È°ìÈÌŪ¤ÊÏÀɾ
¤Ëµ½Ò¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë &man.send-pr.1;
¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢Ä󰯤äÊѹ¹
(¤É¤ó¤Êº³ºÙ¤Ê¤â¤Î¤Ç¤â´¿·Þ¤·¤Þ¤¹!) ¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£
¸½Â¸¤Î¥½¡¼¥¹¥³¡¼¥É¤ÎÊѹ¹
FreeBSD-CURRENT
¸½Â¸¤Î¥½¡¼¥¹¥³¡¼¥É¤Ø¤ÎÄɲäޤ¿¤ÏÊѹ¹¤Ï¡¢
¤¤¤¯¤é¤«¥È¥ê¥Ã¥¡¼¤Ê»Å»ö¤Ç¤¢¤ê¡¢FreeBSD
³«È¯¤Î¸½¾õ¤Ë¤¢¤Ê¤¿¤¬¤É¤ì¤À¤±Ä̤¸¤Æ¤¤¤ë¤«¤ËÂ礤¯°Í¸¤·¤Þ¤¹¡£
FreeBSD-CURRENT
¤È¤·¤ÆÃΤé¤ì¤ë FreeBSD
¤ÎÆÃÊ̤ʷÑ³Ū¥ê¥ê¡¼¥¹¤¬¤¢¤ê¤Þ¤¹¡£FreeBSD-CURRENT
¤Ï³«È¯¼Ô¤ÎÀѶËŪ¤Ê³èư¤ÎÊØµ¹¤Î¤¿¤á¤Ë¡¢
¿§¡¹¤ÊÊýË¡¤ÇÍøÍѲÄǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£FreeBSD-CURRENT
¤ÎÆþ¼ê¤È»ÈÍÑÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¾Ü¤·¤¤¾ðÊó¤Ë¤Ä¤¤¤Æ¤ÏFreeBSD ¥Ï¥ó¥É¥Ö¥Ã¥¯
¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
¸Å¤¤¥½¡¼¥¹¤ò¤â¤È¤Ëºî¶È¤¹¤ë¤È¡¢
»Äǰ¤Ê¤¬¤é¤¢¤Ê¤¿¤ÎÊѹ¹¤¬»þ¤È¤·¤Æ»þÂåÃÙ¤ì¤â¤·¤¯¤ÏÂ礤¯°Û¤Ê¤ë¤â¤Î¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¡¢
FreeBSD ¤ËºÆÅý¹ç¤¹¤ë¤Î¤Ïº¤Æñ¤Ë¤Ê¤ë¶²¤ì¤¬¤¢¤ê¤Þ¤¹¡£
¥·¥¹¥Æ¥à¤Î¸½¾õ¤Ë´Ø¤¹¤ëµÄÏÀ¤¬¤ª¤³¤Ê¤ï¤ì¤Æ¤¤¤ë &a.announce; ¤È
&a.current; ¤Ø»²²Ã¤¹¤ì¤Ð¡¢¤³¤Î²ÄǽÀ¤òºÇ¾®¸Â¤Ë¤Ç¤¤Þ¤¹¡£
½½Ê¬¿·¤·¤¤¥½¡¼¥¹¤òÊѹ¹¤Î¥Ù¡¼¥¹¤Ë¤Ç¤¤ë¤³¤È¤¬³Î¼Â¤Ë¤Ê¤Ã¤¿¤È²¾Äꤷ¤Æ¡¢
¼¡¤Î¥¹¥Æ¥Ã¥×¤Ï FreeBSD
¤ÎÊݼéôÅö¼Ô¤ØÁ÷¤ëº¹Ê¬¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤Ç¤¹¡£¤³¤ì¤Ï &man.diff.1;
¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤ª¤³¤Ê¤¤¤Þ¤¹¡£
º¹Ê¬¥Õ¥¡¥¤¥ë¤ÎÄó½Ð¤Ë¤ª¤¤¤Æ¹¥¤Þ¤·¤¤ &man.diff.1; ¤Î·Á¼°¤Ï¡¢
diff -u ¤Ë¤è¤êÀ¸À®¤µ¤ì¤ë
unified diff ·Á¼°¤Ç¤¹¡£
diff
&prompt.user; diff -u oldfile newfile
¤Þ¤¿¤Ï¡¢
&prompt.user; diff -u -r -N olddir newdir
¤Ç¡¢»ØÄꤵ¤ì¤¿¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê³¬ÁؤËÂФ¹¤ë
unified diff ·Á¼°¤Îº¹Ê¬¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
¾Ü¤·¤¤ÀâÌÀ¤Ï &man.diff.1; ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
º¹Ê¬¥Õ¥¡¥¤¥ë (&man.patch.1; ¥³¥Þ¥ó¥É¤Ç¥Æ¥¹¥È¤Ç¤¤Þ¤¹)
¤òºî¤Ã¤¿¤é¡¢¤½¤ì¤é¤ò FreeBSD
¤Ë´Þ¤á¤Æ¤â¤é¤¦¤è¤¦¥á¡¼¥ë¤ÇÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¥Ð¥°Êó¹ð¤È°ìÈÌŪ¤ÊÏÀɾ
¤Ëµ½Ò¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë &man.send-pr.1;
¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£º¹Ê¬¥Õ¥¡¥¤¥ë¤À¤±¤ò &a.hackers;
¤ØÁ÷¤Ã¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£¸«²á¤´¤µ¤ì¤Æ¤·¤Þ¤¦¤Ç¤·¤ç¤¦¡£
¤¢¤Ê¤¿¤ÎÄ󰯤ÏÂç´¿·Þ¤Ç¤¹ (¤³¤ì¤Ï¥Ü¥é¥ó¥Æ¥£¥¢¤Î¥×¥í¥¸¥§¥¯¥È¤Ç¤¹!)¡£
»ä¤¿¤Á¤Ï¿˻¤Ê¤Î¤Ç¤¹¤°¤Ë¼è¤ê¤«¤«¤ì¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢
¤½¤ì¤Þ¤Ç PR ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë»Ä¤Ã¤Æ¤¤¤ë¤Ç¤·¤ç¤¦¡£
Êó¹ð¤Î³µÍ×¤Ë [PATCH]
¤È½ñ¤¤¤Æ¤¢¤Ê¤¿¤ÎÄ󰯤òɽÌÀ¤·¤Æ¤¯¤À¤µ¤¤¡£
uuencode
¤¢¤Ê¤¿¤¬¤½¤¦¤·¤¿Êý¤¬¤¤¤¤¤È»×¤¦¾ì¹ç (¤¿¤È¤¨¤Ð¡¢
¥Õ¥¡¥¤¥ë¤ÎÄɲᢺï½ü¤Þ¤¿¤Ï̾¾ÎÊѹ¹¤Ê¤É)¡¢Êѹ¹¤ò
tar ¥Õ¥¡¥¤¥ë¤Ë¤Þ¤È¤á¡¢&man.uuencode.1;
¥×¥í¥°¥é¥à¤Ë¤«¤±¤Æ¤¯¤À¤µ¤¤¡£&man.shar.1;
¥¢¡¼¥«¥¤¥Ö¤â´¿·Þ¤·¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢ºÆÇÛÉÛ¤ËŬÍѤµ¤ì¤ëÃøºî¸¢¤ÎÌäÂê¤Ë¼«¿®¤¬¤Ê¤¤¤È¤¤¤Ã¤¿¡¢
¤¢¤Ê¤¿¤ÎÊѹ¹¤¬Èù̯¤ÊÀ¼Á¤Î¤â¤Î¤Ç¤¢¤ë²ÄǽÀ¤¬¤¢¤ì¤Ð¡¢
&man.send-pr.1; ¤ÇÄó½Ð¤¹¤ë¤è¤ê¤à¤·¤íľÀÜ &a.core;
¤ØÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£&a.core; °¸¤Î¥á¡¼¥ë¤Ï¡¢
Æü¡¹¤Î»Å»ö¤Î¤«¤Ê¤ê¤Î³ä¹ç¤ò FreeBSD ¤Ë³ä¤¤¤Æ¤¤¤ë¿Í¤¿¤Á¤Î¡¢
¤è¤ê¾®¤µ¤Ê¥°¥ë¡¼¥×¤ËÆÏ¤¤Þ¤¹¡£
¤³¤Î¥°¥ë¡¼¥×¤â¤Þ¤¿¤È¤Æ¤âË»¤·¤¤ ¤³¤È¤ËÃí°Õ¤·¤Æ¡¢
ËÜÅö¤ËɬÍפʾì¹ç¤À¤±¥³¥¢¥Á¡¼¥à¤Ë¥á¡¼¥ë¤òÁ÷¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¥³¡¼¥Ç¥£¥ó¥°¥¹¥¿¥¤¥ë¤Ë´Ø¤·¤Æ
&man.intro.9; ¤ª¤è¤Ó &man.style.9;
¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥³¡¼¥É¤òÄó½Ð¤¹¤ëÁ°¤Ë¤Ï¡¢
¾¯¤Ê¤¯¤È¤â¤³¤Î¾ðÊó¤ò°Õ¼±¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤ë¤è¤¦¤ª´ê¤¤¤·¤Þ¤¹¡£
¿·¤¿¤Ê¥³¡¼¥É¤ä¤¤ï¤á¤ÆÉղòÁÃͤι⤤¥Ñ¥Ã¥±¡¼¥¸
Â礤ÊʬÎ̤κî¶ÈÀ®²Ì¤Î¹×¸¥¤ä¡¢½ÅÍפʿ·¤·¤¤µ¡Ç½¤ò
FreeBSD ¤ËÄɲ乤ë¾ì¹ç¤Ë¤Ï¡¢ÂçÄñ¡¢Êѹ¹ÅÀ¤ò tar ¥Õ¥¡¥¤¥ë¤Ë¤Þ¤È¤á¤Æ
uuencode ¤·¤ÆÁ÷¤ë¤«¡¢¥¦¥§¥Ö¥µ¥¤¥È¤ä
FTP ¥µ¥¤¥È¤Ø¥¢¥Ã¥×¥í¡¼¥É¤·¤Æ¥¢¥¯¥»¥¹¤Ç¤¤ë¤è¤¦¤Ë¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
web ¤ä FTP ¥µ¥¤¥È¤¬ÍøÍѤǤ¤Ê¤±¤ì¤Ð¡¢Å¬ÀÚ¤Ê FreeBSD
¤Î¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤Ç狼¤½¤ÎÊѹ¹¤ò¤ª¤¯¥µ¥¤¥È¤òÄ󶡤·¤Æ¤¯¤ì¤ë¤è¤¦Íê¤ó¤Ç¤¯¤À¤µ¤¤¡£
ÂçÎ̤Υ³¡¼¥É¤ò°·¤Ã¤Æ¤¤¤ë»þ¤Ï¡¢
¾ï¤ËÃøºî¸¢¤Ë´Ø¤¹¤ëÈù̯¤ÊÌäÂ꤬½Ð¤Æ¤¤Þ¤¹¡£
FreeBSD ¤Ë´Þ¤á¤ë¥³¡¼¥É¤ÎÃøºî¸¢¤È¤·¤Æ¼õ¤±Æþ¤ì¤ë¤³¤È¤¬¤Ç¤¤ë¤Î¤Ï¡¢
°Ê²¼¤ÎÆó¤Ä¤Ç¤¹¡£
BSD copyright
BSD ¥³¥Ô¡¼¥é¥¤¥È¡£
¤³¤Î¥³¥Ô¡¼¥é¥¤¥È¤Ï
¸¢Íø¤ËÇû¤é¤ì¤Ê¤¤
À³Ê¤È¾¦ÍÑ´ë¶È¤Ë¤È¤Ã¤Æ°ìÈÌŪ¤ÊÌ¥ÎϤò¤â¤Ä¤¿¤á¤ËºÇ¤â¹¥¤Þ¤ì¤Þ¤¹¡£
FreeBSD ¥×¥í¥¸¥§¥¯¥È¤Ï¾¦ÍÑÍøÍѤòÁˤó¤À¤ê¤»¤º¡¢²¿¤«¤ò
FreeBSD
¤ØÅê»ñ¤¹¤ëµ¤¤Ë¤Ê¤Ã¤¿¾¦¶È´Ø·¸¼Ô¤Ë¤è¤ë»²²Ã¤òÀѶËŪ¤Ë¾©Î夷¤Þ¤¹¡£
GPL
GNU General Public License
GNU General Public License
GNU°ìÈ̸øÍ»ÈÍѵöÂú¡¢¤Þ¤¿¤Ï GPL
¡£
¤³¤Î¥é¥¤¥»¥ó¥¹¤Ï¥³¡¼¥É¤ò¾¦ÍÑÌÜŪ¤Ë»ÈÍѤ¹¤ë¾ì¹ç¤Ë;ʬ¤ÊÅØÎϤ¬µá¤á¤é¤ì¤ë¤¿¤á¡¢
»ä¤¿¤Á¤Ë¤¢¤Þ¤êɾȽ¤¬Îɤ¤¤È¤¤¤¦¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤·¤«¤·¡¢
»ä¤¿¤Á¤Ï´û¤Ë GPL ²¼¤Î¹âÉʼÁ¤Ê¥³¡¼¥É
(¥³¥ó¥Ñ¥¤¥é¡¢¥¢¥»¥ó¥Ö¥é¡¢¥Æ¥¥¹¥È¥Õ¥©¡¼¥Þ¥Ã¥¿Åù)
¤ÎÄ󶡤ò¼õ¤±¤Æ¤ª¤ê¡¢»ä¤¿¤Á¤Ï¸½ºß¤½¤ì¤òɬÍפȤ·¤Æ¤¤¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢
¤³¤Î¥é¥¤¥»¥ó¥¹¤Ë¤è¤ë¿·¤¿¤Ê¹×¸¥¤òµñÀ䤹¤ë¤È¤¤¤¦¤Î¤Ï¶ò¤«¤Ê¤³¤È¤Ç¤·¤ç¤¦¡£GPL
²¼¤Î¥³¡¼¥É¤Ï¥½¡¼¥¹¥Ä¥ê¡¼¤ÎÊ̤ÎÉôʬ¡¢¸½ºß¤Î¤È¤³¤í
/sys/gnu ¤«
/usr/src/gnu ¤ËÆþ¤Ã¤Æ¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢GPL ¤¬ÌäÂê¤È¤Ê¤ë¤è¤¦¤Ê¿Í¤Ï¡¢
ï¤Ç¤â´Êñ¤Ë¤½¤ì¤È¤ï¤«¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤ì°Ê³°¤Î¥¿¥¤¥×¤ÎÃøºî¸¢¤Ë¤è¤ë´ó£¤Ï¡¢FreeBSD
¤Ø´Þ¤á¤ë¤³¤È¤ò¹Íθ¤¹¤ëÁ°¤ËÃí°Õ¿¼¤¤¥ì¥Ó¥å¡¼¤ò¼õ¤±¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
ÆÃ¤Ë¸ÂÄêŪ¤Ê¾¦ÍѤÎÃøºî¸¢¤¬Å¬ÍѤµ¤ì¤ë´ó£¤Ï°ìÈ̤˵ñÈݤµ¤ì¤Þ¤¹¡£¤·¤«¤·¡¢
ºî¼Ô¤¬ÆÈ¼«¤Î·ÐÏ©¤Ç¤½¤Î¤è¤¦¤ÊÊѹ¹¤òÇÛÉÛ¤¹¤ë¤³¤È¤Ï¾ï¤Ë¾©Î夵¤ì¤Æ¤¤¤Þ¤¹¡£
¤¢¤Ê¤¿¤ÎºîÉÊ¤Ë BSD ¥¹¥¿¥¤¥ë
¤ÎÃøºî¸¢¤òÉÕ¤±¤ë¤Ë¤Ï¡¢
Êݸ¤¿¤¤¥½¡¼¥¹¥³¡¼¥É¥Õ¥¡¥¤¥ë¤¹¤Ù¤Æ¤Î°ìÈֺǽé¤Ë°Ê²¼¤Î¥Æ¥¥¹¥È¤òÆþ¤ì¤Æ¡¢
%%
¤Î´Ö¤òŬÀڤʾðÊó¤ËÃÖ¤´¹¤¨¤Æ¤¯¤À¤µ¤¤¡£
Copyright (c) %%ŬÀÚ¤Êǯ%%
%%¤¢¤Ê¤¿¤Î̾Á°%%, %%¤¢¤Ê¤¿¤Î½£%% %%Í¹ÊØÈÖ¹æ%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%¤¢¤Ê¤¿¤Î̾Á°%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%¤¢¤Ê¤¿¤Î̾Á°%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$&os;$
ÊØµ¹¤ò¤Ï¤«¤ë¤¿¤á¡¢
¤³¤Î¥Æ¥¥¹¥È¤Î¥³¥Ô¡¼¤Ï¼¡¤Î¾ì½ê¤ËÃÖ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£
/usr/share/examples/etc/bsd-style-copyright
ÌõÃí
°Ê²¼¤Ï¿ÀÅÄÉÒ¹»á¤è¤ê´ó£¤µ¤ì¤¿ bsd-style-copyright
¤ÎÆüËܸìÌõ¤Ç¤¹¡£
¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ë´Þ¤á¤ë¤â¤Î¤Ï¸¶Ê¸¤ÎÊý¤Ç¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤´ÍøÍѤ¯¤À¤µ¤¤¡£
¤Þ¤¿¡¢¸¶Ê¸¤È¤Î´Ö¤Ë¼ñ»Ý¤Îº¹°Û¤¬À¸¤¸¤¿¾ì¹ç¡¢
¸¶Ê¸¤ÎÆâÍÆ¤¬ FreeBSD ¥×¥í¥¸¥§¥¯¥È¤Î°Õ»×¤Ç¤¢¤ë¤â¤Î¤È¤·¤Þ¤¹¡£
Copyright (C) [ǯ]
[¤¢¤Ê¤¿¤Î̾Á°] All rights reserved.
¥½¡¼¥¹¤È¥Ð¥¤¥Ê¥ê·Á¼°¤ÎºÆÇÛÉÛ¤ª¤è¤Ó»ÈÍѤϡ¢Êѹ¹¤ÎÍ̵¤Ë¤«¤«¤ï¤é¤º°Ê²¼¤Î
¾ò·ï¤òËþ¤¿¤¹¾ì¹ç¤Ë¸Â¤êµö²Ä¤µ¤ì¤ë:
1. ¥½¡¼¥¹¥³¡¼¥É¤ÎºÆÇÛÉۤϡ¢¾åµ¤ÎÃøºî¸¢É½¼¨¡¦¤³¤Î¾ò·ï¤Î¥ê¥¹¥È¡¦²¼µ¤Î
ÈÝǧÀ¼ÌÀʸ¤òÊÝ»ý¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
2. ¥Ð¥¤¥Ê¥ê·Á¼°¤ÎºÆÇÛÉۤϾ嵤ÎÃøºî¸¢É½¼¨¡¦¤³¤Î¾ò·ï¤Î¥ê¥¹¥È¡¦²¼µ¤Î
ÈÝǧÀ¼ÌÀʸ¤ò¡¢ÇÛÉÛʪ¤È¶¦¤ËÄ󶡤µ¤ì¤ëʸ½ñ¤ª¤è¤Ó/¤Þ¤¿¤Ï¾¤Î»ñÎÁ¤ÎÃæ¤Ë
´Þ¤á¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
(ÌõÃí:¤³¤³¤«¤é¡ÖÈÝǧÀ¼ÌÀʸ¡×¤Ç¤¹)
¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ï[¤¢¤Ê¤¿¤Î̾Á°]¤ª¤è¤Ó¹×¸¥¼Ô¤Ë¤è¤Ã¤Æ ``¤¢¤ë¤¬¤Þ¤Þ¤Î¾õÂÖ''
¤ÇÄ󶡤µ¤ì¡¢¾¦ÉÊÀ¤ÈÆÃÄê¤ÎÌÜŪ¤ËÂФ¹¤ëŬ¹çÀ¤Ë¤Ä¤¤¤Æ¤Î°ÅÌÛ¤ÎÊݾڤËα¤Þ
¤é¤º¡¢¤¤¤«¤Ê¤ëÌÀ¼¨¤ª¤è¤Ó°ÅÌÛ¤ÎÊݾڤòǧ¤á¤Ê¤¤¡£[¤¢¤Ê¤¿¤Î̾Á°]¤ª¤è¤Ó¹×¸¥
¼Ô¤Ï¡¢¤¢¤é¤æ¤ëľÀÜŪ¡¦´ÖÀÜŪ¡¦¶öȯŪ¡¦ÆÃ¼ìŪ¡¦Åµ·¿Åª¡¦É¬Á³Åª¤Ê»³² (Âå
ÂØÀ½Éʤޤ¿¤ÏÂåÂØ¥µ¡¼¥Ó¥¹¤Î³ÍÆÀÈñ; ¸úÍÑ¡¦¥Ç¡¼¥¿¡¦Íø±×¤ÎÁÓ¼º; ¤Þ¤¿¤Ï¶È̳
ÃæÃǤò´Þ¤ß¡¢¤Þ¤¿¤½¤ì¤À¤±¤Ëα¤Þ¤é¤Ê¤¤Â»³²) ¤ËÂФ·¤Æ¡¢¤¿¤È¤¨¤É¤Î¤è¤¦¤Ë¤·
¤ÆÀ¸¤¸¤¿¤È¤·¤Æ¤â¡¢¤½¤·¤Æ¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î»ÈÍѤˤè¤Ã¤Æ¤É¤Î¤è¤¦¤Ë¤Ç¤¢¤ì
À¸¤¸¤ë¡¢·ÀÌó¾å¤Ç¤¢¤í¤¦¤È¡¢¸·Ì©¤ÊÀÕǤÆâ¤Ç¤¢¤í¤¦¤È¡¢¤¢¤ë¤¤¤ÏÉÔÀµ¹Ô°Ù (²á
¼º¤ä¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤ò´Þ¤à) ¤Ë¤ª¤±¤ë¾ì¹ç¤Ç¤¢¤í¤¦¤È¤â¡¢¤¤¤«¤Ê¤ëÀÕǤÏÀ¾å¤â¡¢
¤¿¤È¤¨¤½¤Î¤è¤¦¤Ê»³²¤Î²ÄǽÀ¤¬Í½¸«¤µ¤ì¤Æ¤¤¤¿¤È¤·¤Æ¤â¡¢°ìÀÚ¤ÎÀÕǤ¤ò»ý¤¿
¤Ê¤¤¡£
ËÝÌõ: ¿ÀÅÄÉÒ¹
¸æ¶¨ÎÏ (¸Þ½½²»½ç¡¦·É¾Îά):
ÃÓÅĸ¦Æó¡¢ÆâÀî ´î¾Ï¡¢Æ£Â¼ ±Ñ¼£¡¢¤à¤é¤¿¤·¤å¤¦¤¤¤Á¤í¤¦
ÌÝÌî ²í°ì¡¢²£ÅÄ¡÷±§ÅÔµÜ
¶âÁ¬¡¢¥Ï¡¼¥É¥¦¥§¥¢¤Þ¤¿¤Ï¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥¢¥¯¥»¥¹
»ä¤¿¤Á¤Ï FreeBSD
¥×¥í¥¸¥§¥¯¥È¤ÎÌÜŪ¤ò¿Ê¤á¤ë¤¿¤á¤Î´óÉÕ¤ò¾ï¤Ë´î¤ó¤Ç¼õ¤±Æþ¤ì¤Æ¤¤¤Þ¤¹¡£
»ä¤¿¤Á¤Î¤è¤¦¤Ê¥Ü¥é¥ó¥Æ¥£¥¢³èư¤Ç¤Ï¡¢
¤Á¤ç¤Ã¤È¤·¤¿¤³¤È¤¬Â礤¤ËÌòΩ¤Ä¤Î¤Ç¤¹!
¤Þ¤¿°ìÈÌŪ¤Ë¡¢»ä¤¿¤Á¤Ï¼«Á°¤Ç¼þÊÕµ¡´ï¤òÇ㤦»ñ¶â¤¬ÉÔ¤·¤Æ¤¤¤ë¤¿¤á¡¢
¼þÊÕµ¡´ï¤Î¥µ¥Ý¡¼¥È¤ò½¼¼Â¤µ¤»¤ë¤Î¤Ë¥Ï¡¼¥É¥¦¥§¥¢¤Î´óÉդϤȤƤâ½ÅÍפǤ¹¡£
-
- »ñ¶â¤Î´óÉÕ
+
+ »ñ¶â¤Î´óÉÕ
The FreeBSD Foundation ¤Ï¡¢
FreeBSD ¥×¥í¥¸¥§¥¯¥È¤ÎÌÜɸ¤ò¿ä¿Ê¤¹¤ë¤¿¤á¤ËÀßΩ¤µ¤ì¤¿¡¢
Èó±ÄÍø¤Î¡¢ÀǶâ¤òÌȽü¤µ¤ì¤¿ºâÃĤǤ¹¡£501(c)3 ¤ËŬ¹ç¤¹¤ëÃÄÂΤȤ·¤Æ¡¢
Foundation ¤Ï¥¢¥á¥ê¥«¹ç½°¹ñϢˮ½êÆÀÀǤʤé¤Ó¤Ë
¥³¥í¥é¥É½£½êÆÀÀǤò°ìÈ̤ËÌȽü¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ÌÈÀÇÃÄÂΤؤδóÉդϡ¢
¿¤¯¤Î¾ì¹çϢˮÀ¯ÉܤβÝÀÇÂоݽêÆÀ¤«¤é¹µ½ü¤Ç¤¤Þ¤¹¡£
´óÉդϾ®ÀÚ¼ê¤Ç°Ê²¼¤ËÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£
The FreeBSD Foundation
7321 Brockway Dr.
Boulder ,
CO 80303
USA
¤Þ¤¿¡¢´óÉդμõ¤±ÉÕ¤±¤ò PayPal ¤òÄ̤¸¤Æ
web ·Ðͳ¤Ç¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
´óÉÕ¤ò¤¹¤ë¤Ë¤Ï¡¢The FreeBSD Foundation ¤Î
web
¥µ¥¤¥È ¤ò¤¼¤Ò¤´Í÷¤¯¤À¤µ¤¤¡£
The FreeBSD Foundation ¤Ë´Ø¤¹¤ë¤³¤ì°Ê¾å¤Î¾ðÊó¤Ï The
FreeBSD Foundation -- an Introduction ¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£
Foundation ¤Ø¤Î email ¤Ç¤ÎÏ¢Íí¤Ï
bod@FreeBSDFoundation.org
¤Ø¤É¤¦¤¾¡£
¥Ï¡¼¥É¥¦¥§¥¢¤Î´ó£
´ó£
FreeBSD
¥×¥í¥¸¥§¥¯¥È¤ÏŬÀڤʻȤ¤Æ»¤Î¤¢¤ë¥Ï¡¼¥É¥¦¥§¥¢¤Î´óÉÕ¤ò´î¤ó¤Ç¼õ¤±Æþ¤ì¤Æ¤¤¤Þ¤¹¡£
¥Ï¡¼¥É¥¦¥§¥¢¤ò´ó£¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤Ê¤é¡¢
´ó£ÉʼõÉÕ»ö̳¶É ¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤¡£
diff --git a/nl_NL.ISO8859-1/articles/contributing/article.xml b/nl_NL.ISO8859-1/articles/contributing/article.xml
index ddde72f27e..48e9fd4bd4 100644
--- a/nl_NL.ISO8859-1/articles/contributing/article.xml
+++ b/nl_NL.ISO8859-1/articles/contributing/article.xml
@@ -1,564 +1,564 @@
Bijdragen aan &os;
Vertaald door René Ladan .
Dit artikel beschrijft de verschillende manieren waarop een
individu of organisatie kan bijdragen aan het &os;
Project.
Jordan
Hubbard
Bijgedragen door
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
bijdragen
Dus u wilt bijdragen aan &os;? Dat is mooi! &os;
bouwt op de bijdragen van zijn gebruikers om te
overleven. Uw bijdragen worden niet alleen gewaardeerd, ze zijn van
vitaal belang voor de aanhoudende groei van &os;.
In tegenstelling tot wat sommige mensen u laten geloven, hoeft u
geen doorgewinterde programmeur of een goede vriend van het coreteam
van &os; te zijn opdat uw bijdragen geaccepteerd worden. Een groot
en groeiend aantal internationale bijdragende vrijwilligers, van een
grote variëteit aan leeftijden en technische expertisegebieden,
ontwikkelen &os;. Er is altijd meer werk te doen dan dat er mensen
zijn om het uit te voeren, en meer hulp wordt altijd
gewaardeerd.
Het &os; project is verantwoordelijk voor een complete omgeving
van een besturingssysteem, en niet slechts voor alleen een kernel of
een paar verspreide gereedschappen. Hierom staan op onze
TODO -lijsten een groot aantal verschillende
taken: van documentatie, beta-testing en -presentatie, tot de
systeeminstaller en ver gespecialiseerde soorten van
kernelontwikkeling. Mensen van alle niveaus op bijna alle gebieden
kunnen zeer waarschijnlijk meehelpen aan het project.
Commerciële entiteiten die betrokken zijn in
&os;-gerelateerde ondernemingen worden ook aangemoedigd om contact
met ons op te nemen. Heeft u een speciale uitbreiding nodig om uw
product te laten werken? U zult zien dat wij ontvankelijk zijn voor
uw verzoeken, op de voorwaarde dat ze niet te vreemdsoortig zijn.
Werkt u aan een product met toegevoegde waarde? Laat het ons weten!
Misschien kunnen we op sommige punten samenwerken. De wereld van
vrije software heeft te maken met vele bestaande aannamen over hoe
software wordt ontwikkeld, verkocht, en onderhouden, en we verzoeken
u om er op zijn minst nog eens naar te kijken.
Wat is er nodig
De onderstaande lijst van taken en deelprojecten representeert
een soort amalgaam van verschillende
TODO -lijsten en verzoeken van
gebruikers.
Voortdurende taken voor niet-programmeurs
Veel mensen die betrokken zijn bij &os; zijn geen
programmeurs. Het Project omvat documentatieschrijvers,
Webontwerpers, en mensen ter ondersteuning. Deze mensen hoeven
alleen een tijdsinvestering en een wil om te leren bij te
dragen.
Lees regelmatig de FAQ en het Handboek door. Laat het
ons weten als er iets slecht is uitgelegd, is verlopen of
gewoon helemaal verkeerd is. Of stuur een reparatie in
(Docbook is niet moeilijk te leren, maar er is geen bezwaar
tegen inzendingen in ASCII).
Help bij het vertalen van &os;-documentatie in uw eigen
taal. Als er al documentatie in uw taal bestaat, kunt u
helpen door aanvullende documenten te vertalen of te
controleren dat de vertalingen up-to-date zijn. Kijk eerst
op Translations
FAQ in de &os; Documentation Project Primer. U
bindt zich niet aan het vertalen van elk &os;-document door
dit te doen — als vrijwilliger kunt u zo veel of zo
weinig vertalen als u wilt. Als iemand eenmaal begint te
vertalen, sluiten andere mensen zich hier bijna altijd bij
aan. Als u slechts de tijd of energie heeft om
één document te vertalen, vertaal dan
alstublieft de installatie-instructies.
Lees af en toe (of regelmatig) de &a.questions; en
&ng.misc;. Het kan veel voldoening geven om uw expertise te
delen en mensen helpen met het oplossen van hun problemen;
soms leert u zelf misschien iets nieuws! Deze fora kunnen
ook een inspiratiebron zijn voor dingen om aan te
werken.
Voortdurende taken voor programmeurs
Voor de meeste van de hier genoemde taken is een
aanzienlijke tijdsinvestering, of diepe kennis van de kernel van
&os;, of beide nodig. Er zijn echter ook vele nuttige taken die
geschikt zijn voor weekend hackers
.
Als u &os;-CURRENT draait en een goede
Internetverbinding heeft, dan is er een machine current.FreeBSD.org die elke dag een
volledige uitgave bouwt—probeer zo nu en dan om de
nieuwste uitgave ervan te installeren en rapporteer alle
fouten in het proces.
Lees de &a.bugs;. Er kunnen problemen zijn waarop u
constructief commentaar kunt geven of waarvoor u testbare
patches kunt geven. U kunt zelfs proberen om een van de
problemen zelf op te lossen.
Als u bugfixes weet die succesvol op -CURRENT zijn
toegepast maar nog niet na een redelijk interval naar
-STABLE zijn samengevoegd (normaliter een aantal weken),
stuur de committer dan een beleefde herinnering.
Verplaats bijgedragen software naar
src/contrib in de
broncodeboom.
Verzeker dat de code in src/contrib up-to-date
is.
Bouw de broncodeboom (of slechts een gedeelte ervan) met
extra waarschuwingen aangezet en ruim de waarschuwingen
op.
Repareer waarschuwingen voor ports die verouderde dingen
zoals gets() of
malloc.h gebruiken.
Als u ports heeft bijgedragen en u &os;-specifieke
veranderingen moest maken, stuur dan uw patches terug naar
de originele auteurs (dit maakt het gemakkelijker
voor u wanneer ze de volgende versie uitbrengen).
Verkrijg kopieën van formele standaarden zoals
&posix;. Enkele links over deze standaarden staan op de
website van het &os; C99 & POSIX
Standards Conformance Project . Vergelijk het
gedrag van &os; met dat wat de standaard voorschrijft. Als
het gedrag verschilt, met name in subtiele of obscure
gedeelten van de specificatie, stuur er dan een PR over op.
Indien mogelijk, zoek uit hoe het te repareren en voeg een
patch bij het PR. Als u meent dat de standaard verkeerd is,
vraag dan het standaardorgaan om de vraag te
overwegen.
Suggereer verdere taken voor deze lijst!
Spit de PR-database door
probleemrapportdatabase
De &os;
PR-lijst laat alle huidige actieve probleemrapportages
en verzoeken voor verrijkingen zien die door gebruikers van &os;
zijn ingestuurd. De PR-database bevat zowel taken voor
programmeurs als voor niet-programmeurs. Bekijk de open PR's,
en kijk of iets uw interesse wekt. Sommige van deze kunnen heel
simpele taken zijn waarvoor gewoon een extra paar ogen nodig is
om te bevestigen dat de reparatie in de PR een goede is. Andere
kunnen veel complexer zijn, of bevatten in het geheel geen
reparatie.
Begin met de PR's die nog niet aan iemand anders zijn
toegekend. Als een PR aan iemand anders is toegekend, maar het
eruit ziet als iets wat u aankunt, stuur dan een email naar de
persoon waaraan het is toegekend en vraag of u eraan kunt werken
—ze kunnen al een patch hebben die klaar is om getest te
worden, of verdere ideeën hebben die u met ze kan
bespreken.
Kies een van de punten van de Ideeën
pagina
De &os;-lijst van
projecten en ideeën voor vrijwilligers is ook
beschikbaar voor mensen die aan het &os;-project willen
bijdragen. Deze lijst wordt regelmatig bijgewerkt en bevat
punten voor zowel programmeurs als niet-programmeurs met
informatie over elk project.
Hoe bij te dragen
Bijdragen aan het systeem vallen over het algemeen in
één of meer van de volgende 5
categoriën:
Foutrapportages en algemeen commentaar
Een idee of suggestie van algemene
technische aard dient naar &a.hackers; gemaild te worden.
Evenzo kunnen mensen die in dit soort dingen geïnteresseerd
zijn (en een tolerantie voor grote
hoeveelheden mail hebben!) zich abonneren op de &a.hackers;.
Zie Het
&os; Handboek voor meer informatie over deze en andere
mailinglijsten.
Als u een bug vindt of een specifieke verandering opstuurt,
gebruik dan alstublieft het programma &man.send-pr.1; of het
webgebaseerde
equivalent om het te rapporteren. Probeer om elk veld
van het bugrapport in te vullen. Voeg patches direct bij het
rapport tenzij ze 65kB overschrijden. Als de patch geschikt is
om op de broncodeboom te worden toegepast, vermeld dan
[PATCH] in het overzicht van het rapport.
Wanneer u patches bijvoegt, gebruik dan
geen knippen-en-plakken omdat
knippen-en-plakken tabs in spaties omzet en de patches
onbruikbaar maakt. Overweeg wanneer patches veel groter zijn
dan 20 kB om ze te comprimeren (bijvoorbeeld met &man.gzip.1; of
&man.bzip2.1;) en &man.uuencode.1; te gebruiken om hun
gecomprimeerde vorm in uw probleemrapport op te nemen.
Na het opsturen van een rapport dient u een bevestiging met
daarbij een volgnummer te krijgen. Bewaar dit volgnummer zodat
u ons op de hoogte kunt houden met details over het probleem
door mail te sturen naar &a.bugfollowup;. Gebruik het nummer
als het berichtonderwerp, bijvoorbeeld "Re:
kern/3377" . Aanvullende informatie voor elk
foutrapport dient op deze manier opgestuurd te worden.
Als u geen bevestiging ontvangt binnen een redelijke tijd (3
dagen tot een week, afhankelijk van uw emailverbinding) of als
u, om enige reden, het commando &man.send-pr.1; niet kunt
gebruiken, dan kunt u iemand vragen om het voor u op te sturen
door mail te sturen naar de &a.bugs;.
Zie ook dit
artikel over het schrijven van goede
probleemrapporten.
Veranderingen aan de documentatie
documentatie-inzendingen
Veranderingen aan de documentatie worden overzien door de
&a.doc;. Bekijk de &os; Documentation
Primer voor volledige instructies. Stuur bijdragen en
veranderingen (zelfs kleine zijn welkom!) door &man.send-pr.1;
te gebruiken zoals beschreven is in Foutrapportages en algemeen
commentaar.
Veranderingen aan bestaande broncode
&os;-CURRENT
Een toevoeging of verandering aan de bestaande broncode is
een iets lastigere zaak en hangt in grote mate af van hoe ver u
achterloopt met de huidige toestand van &os;-ontwikkelingen. Er
is een speciale doorgaande uitgave van &os; die bekend staat als
&os;-CURRENT
die op verscheidene manieren
beschikbaar wordt gesteld voor het gemak van ontwikkelaars die
actief aan het systeem werken. Zie Het &os;
Handboek voor meer informatie over het verkrijgen en
gebruiken van &os;-CURRENT.
Het werken met oudere broncode betekent helaas dat uw
veranderingen soms te verouderd of te ver afgedwaald zijn om
eenvoudig in &os; gerëintegreerd te worden. De kansen
hierop kunnen enigszins geminimaliseerd worden door een
abonnement te nemen op de &a.announce; en de &a.current;
lijsten, waar discussies over de huidige toestand van het
systeem plaatsvinden.
Aannemende dat u in staat bent om redelijk recente broncode
veilig te stellen om uw veranderingen op te baseren, is de
volgende stap het produceren van een verzameling diffs om naar
de onderhoudsmensen van &os; te sturen. Dit wordt gedaan met
het commando &man.diff.1;.
Het geprefereerde &man.diff.1;-formaat voor het opsturen van
patches is het verenigde uitvoerformaat gegenereerd door
diff -u .
diff
&prompt.user; diff -u oudbestand nieuwbestand
of
&prompt.user; diff -u -r -N oudemap nieuwemap
zouden een verzameling van verenigde diffs genereren voor het
gegeven bronbestand of maphiërarchie.
Zie &man.diff.1; voor meer details.
Als u eenmaal een verzameling aan diffs heeft (welke u kunt
testen met het commando &man.patch.1;), dient u ze op te sturen
voor opname in &os;. Gebruik het programma &man.send-pr.1;
zoals beschreven in Foutrapportages en algemeen
commentaar. Stuur de diffs niet
alleen naar de &a.hackers; op omdat ze dan verloren raken! We
stellen uw toezending erg op prijs (dit is een
vrijwilligersproject!); omdat we het druk hebben kan het zijn
dat we het niet direct kunnen behandelen, maar het blijft in de
PR-database totdat we het doen. Geef uw toezending aan door
[PATCH] in het overzicht van het rapport op
te nemen.
uuencode
Als u het geschikt acht (bijvoorbeeld als u bestanden
toegevoegd, verwijderd, of hernoemd heeft), bundelt u uw
veranderingen in een tar -bestand en draait u
het programma &man.uuencode.1; erop. Archieven die met
&man.shar.1; zijn aangemaakt zijn ook welkom.
Als uw verandering mogelijk gevoelig van aard is,
bijvoorbeeld als u onzeker bent over copyright-zaken die de
verdere distributie ervan dicteren, dan dient u het direct naar
&a.core; te sturen in plaats
van het met &man.send-pr.1; op te sturen. Het &a.core; bereikt
een veel kleinere groep mensen die veel dagelijks werk op &os;
doen. Merk op dat deze groep het ook erg
druk heeft, daarom dient u alleen mail naar hen te
sturen als dit echt noodzakelijk is.
Bekijk alstublieft &man.intro.9; en &man.style.9; voor wat
informatie over de codeerstijl. We zouden het op prijs stellen
als u op zijn minst op de hoogte bent van deze informatie
voordat u code opstuurt.
Nieuwe code of grote pakketten met toegevoegde waarde
In het geval van een significante bijdrage van een grote
bijdrage aan werk, of van een belangrijke nieuwe mogelijkheid
aan &os;, is het bijna altijd nodig om de veranderingen als
uuencoded tar-bestanden te versturen of ze naar een web- of
FTP-site up te loaden zodat andere mensen ze kunnen benaderen.
Als u geen toegang heeft tot een web- of FTP-site, vraag dan een
geschikte &os;-mailinglijst om iemand de veranderingen voor u te
laten hosten.
Bij het werken met grote hoeveelheden code komt het
gevoelige onderwerp van copyright ook altijd naar voren.
Acceptabele copyrights voor code voor opname in &os;
zijn:
Het BSD-copyrightBSD-copyright . Dit copyright wordt het meeste
verkozen wegens zijn natuur van geen
voorwaarden
en de algemene aantrekkelijkheid voor
commerciële ondernemingen. Ver van het ontmoedigen van
dit soort commercieel gebruik, moedigt het &os; Project
zulke participatie door commerciële interesses actief
aan die uiteindelijk geneigd kunnen zijn om zelf iets in
&os; te investeren.
De GNU General Public LicenseGNU General Public License , of GPL
GPL GNU General Public License .
Deze licentie is niet zo populair bij ons wegens de extra
hoeveelheid moeite die gevraagd wordt van iedereen die de
code voor commerciële doeleinden gebruikt, maar vanwege
de grote hoeveelheid aan ge-GPL-de code die we momenteel
nodig hebben (compiler, assembler, tekstopmaker, enz.) zou
het dom zijn om aanvullende bijdragen onder deze licentie te
verwerpen. Code onder de GPL gaat ook naar een ander deel
van de boom, namelijk /sys/gnu of /usr/src/gnu , en is daardoor
eenvoudig te herkennen voor iedereen voor wie de GPL
problemen geeft.
Bijdragen die onder een ander soort copyright vallen moeten
zorgvuldig worden herzien voordat hun opname in &os; wordt
overwogen. Bijdragen waarvoor nogal beperkende commerciële
copyrights gelden worden over het algemeen verworpen, alhoewel
de auteurs altijd worden aangemoedigd om zulke veranderingen via
hun eigen kanalen beschikbaar te maken.
Om een copyright in BSD-stijl
op uw werk te
plaatsen, dient u de volgende tekst aan het uiterste begin van
elk broncodebestand te plaatsen dat u wilt beschermen, en
daarbij de tekst tussen de %% door de juiste
informatie te vervangen:
Copyright (c) %%juiste_jaren_hier%%
%%uw_naam_hier%%, %%uw_staat%% %%uw_postcode%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%uw_naam_hier%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%uw_naam_hier%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
Voor uw gemak staat een kopie van deze tekst in
/usr/share/examples/etc/bsd-style-copyright .
Geld, hardware, of Internettoegang
We accepteren altijd graag donaties om het &os; Project
verder te verspreiden en in een vrijwilligersonderneming zoals
het onze kan een klein beetje een groot verschil maken!
Hardwaredonaties zijn ook erg belangrijk om onze lijst van
ondersteunde randapparatuur uit te breiden aangezien ons het
over het algemeen aan de middelen ontbreekt om zelf zulke dingen
te kopen.
-
- Geld doneren
+
+ Geld doneren
De &os; Foundation is een non-profit, belastinguitgesloten
stichting die opgericht is om de doelen van het &os; Project
verder te verspreiden. Als een 501(c)3-entiteit is de
Foundation over het algemeen uitgesloten van
inkomstenbelasting van de overheid van de Verenigde Staten alsook van
inkomstenbelasting van de staat Colorado. Donaties aan een
entiteit die van belasting is uitgesloten zijn vaak aftrekbaar
van het belastbaar overheidsinkomen.
Donaties kunnen als check verstuurd worden aan:
The FreeBSD Foundation
P.O. Box 20247
Boulder ,
CO 80308
USA
De &os; Foundation is nu in staat om donaties via het web
met PayPal te ontvangen. Om een donatie te maken bezoekt u de
website
van de Foundation.
Meer informatie over de &os; Foundation kan gevonden
worden in The
FreeBSD Foundation -- an Introduction . Om de
Foundation per email te bereiken, schrijft u naar
bod@FreeBSDFoundation.org .
Hardware doneren
Het &os; Project accepteert graag hardwaredonaties die het
goed kan gebruiken. Als u geïnteresseerd bent in het
donerendonaties van hardware, neem dan contact op met het Donations Liaison
Office .
diff --git a/nl_NL.ISO8859-1/books/handbook/mirrors/chapter.xml b/nl_NL.ISO8859-1/books/handbook/mirrors/chapter.xml
index 66e34f2665..2f54fd60a6 100644
--- a/nl_NL.ISO8859-1/books/handbook/mirrors/chapter.xml
+++ b/nl_NL.ISO8859-1/books/handbook/mirrors/chapter.xml
@@ -1,3493 +1,3493 @@
&os; verkrijgen
CD-ROM en DVD uitgevers
Winkelproducten in doos
&os; is beschikbaar in een doos (&os; CD-ROMs, additionele
software en gedrukte documentatie) bij verschillende
verkopers:
Frys Electronics
WWW:
CD-ROMs en DVD's
&os; CD-ROMs en DVD's zijn te koop bij veel online
winkels:
&os; Mall, Inc.
700 Harvest Park Ste F
Brentwood , CA 94513
Verenigde Staten
Telefoon: +1 925 240-6652
Fax: +1 925 674-0821
E–mail: info@freebsdmall.com
WWW:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Duitsland
Telefoon: (089) 428 419
WWW:
JMC Software
Ierland
Telefoon: 353 1 6291282
WWW:
Linux Distro UK
42 Wharfedale Road
Margate
CT9 2TB
Verenigd Koninkrijk
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
Verenigd Koninkrijk
Telefoon: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Polen
Telefoon: +48 22 860 18 18
E–mail: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australië
Telefoon: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Rusland
Telefoon: +7-812-3125208
E–mail: info@linuxcenter.ru
WWW:
Distributeurs
Wederverkopers die &os; CD-ROM producten willen verkopen
kunnen contact opnemen met een distributeur:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA
92705-4926 Verenigde Staten
Telefoon: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
Verenigde Staten
Telefoon: +1 952 947-0822
Fax: +1 952 947-0876
E–mail: sales@kudzuenterprises.com
LinuxCenter.Ru
Galernaya Street, 55
Sint-Petersburg
190000
Rusland
Telefoon: +7-812-3125208
E–mail: info@linuxcenter.ru
WWW:
FTP sites
De officiële broncode voor &os; is beschikbaar via
anoniem toegankelijke FTP in de hele wereld via vele mirrorsites.
De site
heeft een goede verbinding en staat veel verbindingen toe, maar
het is waarschijnlijk beter om een mirrorsite te zoeken die
dichterbij
is (zeker als het doel is ook een
soort mirrorsite op te zetten).
&os; is beschikbaar via de onderstaande anonieme FTP mirror
sites. Bij het kiezen van anonieme FTP voor het verkrijgen van
&os; wordt aangeraden een site die dichtbij ligt te kiezen. De
mirrorsites die in de lijst staan als Primaire
Mirrorsites
hebben meestal het complete &os; archief
(alle beschikbare versies voor alle architecturen) maar downloads
zijn waarschijnlijk sneller van een site die in het land of de
regio van de gebruiker staat. De regionale sites hebben de
meeste recente versies voor de meest populaire architecturen,
maar hebben wellicht niet het complete archief. Alle sites geven
toegang via anonieme FTP, maar een aantal sites hebben ook andere
toegangsmogelijkheden. De toegangsmogelijkheden voor iedere site
staan tussen haakjes achter de hostnaam.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
BitTorrent
BitTorrent
De ISO-afbeeldingen voor de basis-CD's van de uitgaven zijn
beschikbaar via BitTorrent. Een verzameling torrent-bestanden om
de afbeeldingen binnen te halen is beschikbaar op http://torrents.freebsd.org:8080
De software voor de BitTorrent-cliënt is beschikbaar via
de port net-p2p/py-bittorrent ,
of als voorgecompileerd pakket.
Nadat de ISO-afbeelding met BitTorrent is gedownload, kan het
op CD of DVD gebrand worden zoals beschreven in .
Subversion-sites
svn
Sinds juli 2012 gebruikt &os; Subversion als het primaire
versiebeheersysteem om alle broncode van &os;, de documentatie, en de
Portscollectie op te slaan.
Subversion is hoofdzakelijk een gereedschap voor ontwikkelaars. De
meeste gebruikers dienen &os; Update te
gebruiken om het basissysteem van &os; bij te werken, en Portsnap om de &os;
Portscollectie bij te werken.
Het spiegelsite-netwerk voor Subversion van &os; bevindt zich nog in
de beginfase en zal waarschijnlijk veranderen. Reken er niet op dat deze
lijst van spiegelsites statisch is. In het bijzonder zullen de
SSL-certificaten van de servers op een gegeven moment veranderen.
In Subversion worden URLs gebruikt om een depot aan te duiden in de
vorm van protocol://hostnaam/pad . Spiegelsites kunnen
verschillende protocollen ondersteunen zoals hieronder is gespecificeerd.
Het eerste gedeelte van het pad is het &os;-depot wat benaderd moet
worden. Er zijn drie verschillende depots, base voor
de broncode van het basissysteem van &os;, ports voor
de Portscollectie, en doc voor de documentatie. De URL
svn://svn0.us-east.FreeBSD.org/ports/head/ specificeert
de hoofdtak van het ports-depot op de spiegelsite svn0.us-east.FreeBSD.org , gebruikmakend van het
svn-protocol.
Alle spiegelsites bevatten alle depots.
De &os; Subversion hoofdserver, svn.FreeBSD.org , is publiekelijk toegankelijk als
alleen-lezen. Dit kan in de toekomst veranderen, dus gebruikers worden
aangeraden om een van de officiële spiegelsites te gebruiken. Gebruik
http://svnweb.FreeBSD.org
om de Subversion-depots van &os; met een webbrowser te bekijken.
Naam
Protocollen
Locatie
SSL-vingerafdruk
svn0.us-west.FreeBSD.org
svn, http ,
https
Verenigde Staten, Californië
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 ,
https
Verenigde Staten, New Jersey
SHA1
06:D1:23:DE:5E:7A:F7:2B:7A:7E:74:95:5F:54:8D:5C:B0:D6:2E:8F
Anonieme CVS
-
- Inleiding
+
+ Inleiding
CVS
anoniem
Anonieme CVS (of ook wel bekend als
anoncvs ) is een functie die beschikbaar is
met de hulpprogramma's die bij &os; zitten om te synchroniseren
met een elders aanwezig CVS depot. Het staat gebruikers van
&os; onder andere toe om zonder bijzondere rechten alleen-lezen
operaties uit te voeren op een van de officiële anoncvs
servers van het &os; project. Om het te kunnen gebruiken dient
de omgevingsvariabele CVSROOT zo ingesteld te
worden dat hij wijst naar de gewenste anoncvs server, dient het
bekende wachtwoord anoncvs
bij het commando
cvs login opgegeven te worden en kan daarna
&man.cvs.1; gebruikt worden om het te benaderen als ieder
lokaal aanwezig depot.
Het commando cvs login slaat de
wachtwoorden die voor aanmelden bij de CVS server op in een
bestand met de naam .cvspass in de map
HOME . Als dit bestand niet bestaat, is het
mogelijk dat er een foutmelding wordt gegeven als
cvs login de eerste keer wordt gebruikt.
Dat kan opgelost worden door een leeg bestand
.cvspass te maken en dan opnieuw aan te
melden.
Hoewel de diensten CVSup en
anoncvs beiden vrijwel dezelfde functie
invullen, zijn er redenen die de keuze voor de
synchronisatiemethode beïnvloeden. In een notendop is
CVSup veel efficiënter in het
gebruik van netwerkbronnen en is het de meest geavanceerde van
de twee, maar daar staat iets tegenover. Voor het gebruik van
CVSup moet eerst een speciale client
geïnstalleerd en ingesteld worden voordat er bits kunnen
gaan stromen en dat kan dan alleen in de redelijk grote brokken
die in CVSup
collections heten.
Anoncvs kan daarentegen gebruikt
worden om alles te bekijken van een individueel bestand tot aan
een specifiek programma (als ls of
grep ) door aan de naam van de CVS module
te refereren. Ook anoncvs is alleen
geschikt voor alleen-lezen operaties op het CVS depot, dus als
het de bedoeling is om lokaal ontwikkelwerk en hetzelfde depot
met delen uit het &os; project te combineren, dan biedt alleen
CVSup daar een oplossing
voor.
-
- Anonieme CVS gebruiken
+
+ Anonieme CVS gebruiken
Het instellen van &man.cvs.1; om gebruik te maken van
een Anoniem CVS depot is een kwestie van het instellen van de
omgevingsvariabele CVSROOT op een van de
anoncvs servers van het &os; project. Op
het moment van schrijven zijn de volgende servers
beschikbaar:
Frankrijk :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(Gebruik cvs login voor pserver-modus en voer het
wachtwoord anoncvs
in wanneer het gevraagd wordt.
Voor ssh is geen wachtwoord nodig.)
Taiwan :
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(Gebruik cvs login voor pserver-modus en voer elk
willekeurig wachtwoord in wanneer het gevraagd wordt. Voor ssh is
geen wachtwoord nodig.)
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
Omdat met CVS vrijwel iedere versie die ooit beschikbaar is
geweest uitgecheckt
kan worden, is het van
belang op de hoogte te zijn van de &man.cvs.1; vlag voor
revisie (-r ) en welke waarden zie zoal kan
aannemen in het &os; Project depot.
Er zijn twee soorten labels (tags): revisielabels en
taklabels (branch). Een revisielabel refereert aan een
specifieke revisie. De betekenis blijft van dag tot dag
gelijk. Aan de andere kant refereert een taklabel aan de
laatste revisie in een bepaalde ontwikkellijn op een bepaald
moment. Omdat een taklabel niet refereert aan een specifieke
revisie, kan die morgen anders zijn dan vandaag.
bevat revisielabels waar
gebruikers in geïnteresseerd kunnen zijn. Nogmaals: deze
zijn allemaal niet geldig voor de Portscollectie omdat de
Portscollectie geen meerdere ontwikkel takken kent.
Als een specifiek taklabel wordt aangegeven, worden als
alles goed gaat, de laatste revisies uit een bepaalde
ontwikkellijn ontvangen. Als er een oudere versie opgehaald
moet worden, kan dat door met de vlag –D
datum een datum aan te geven. In &man.cvs.1; staan
meer details.
Voorbeelden
Hoewel het sterk wordt aangeraden eerst de hulppagina's
voor &man.cvs.1; grondig door te lezen, volgen hier een aantal
snelle voorbeelden die feitelijk aangeven hoe Anonieme CVS
gebruikt kan worden.
SSH gebruiken om de src/ tree uit
te checken:
&prompt.user; 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.
Iets uitchecken uit -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Op de prompt, voer een willekeurig wachtwoord in wachtwoord
.
&prompt.user; cvs co ls
SSH gebruiken om de src/
structuur uit te checken:
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
De versie van &man.ls.1; in de 8-STABLE tak
uitchecken:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Op de prompt, voer een willekeurig wachtwoord in wachtwoord
.
&prompt.user; cvs co -rRELENG_8 ls
Een lijst wijzigingen maken (als unified diffs) voor
&man.ls.1;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Op de prompt, voer een willekeurig wachtwoord in wachtwoord
.
&prompt.user; cvs rdiff -u -rRELENG_8_0_0_RELEASE -rRELENG_8_1_0_RELEASE ls
Uitzoeken welke modulenamen gebruikt kunnen
worden:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
Op de prompt, voer een willekeurig wachtwoord in wachtwoord
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Andere bronnen
De volgende bronnen kunnen bijdragen aan een beter begrip
van CVS:
CVS
Tutorial
van California Polytechnic State University.
CVS Home ,
de CVS gemeenschap voor ontwikkeling en
ondersteuning.
CVSweb
is de &os; Project webinterface voor CVS.
CTM gebruiken
CTM
CTM is een methode om een map
elders gesynchroniseerd te houden met een centrale. Het is
ontwikkeld voor gebruik met de &os; broncode, hoewel sommigen het
ook voor andere doeleinden handig vinden. Er bestaat op dit
moment weinig tot geen documentatie over het proces van het maken
van delta's. Voor informatie over het gebruik van
CTM kan het beste contact gezocht
worden met de &a.ctm-users.name; mailinglijst.
Waarom CTM gebruiken?
CTM geeft een lokale kopie van
de &os; broncode. Die is in een aantal smaken
beschikbaar. Of het gaat om slechts één tak of
de complete CVS structuur, CTM kan
het bieden. CTM is gewoon gemaakt
voor actieve ontwikkelaars die met &os; werken, maar geen of
een slechte Internetverbinding hebben of gewoon automatisch de
laatste wijzigingen willen ontvangen. De meest actieve takken
kennen op z'n hoogst drie delta's per dag. Het is het
overwegen waard om ze per automatische mail te laten sturen.
De grootte van de updates wordt altijd zo klein mogelijk
gehouden. Meestal kleiner dan 5 K en soms (in tien
procent van de gevallen) is het 10–50 K. In
uitzonderlijke gevallen komt het voor dat een mail van
100 K of meer wordt gestuurd.
Het is wel van belang op de hoogte te zijn van de valkuilen
die een rol spelen bij het direct werken met broncode in plaats
van met een voorverpakte release. Dit geldt nog meer als wordt
gewerkt met de current
code. Het lezen van
Bijblijven met &os; wordt sterk
aangeraden.
Wat is er nodig om CTM te
gebruiken?
Voor het gebruik van CTM zijn
twee dingen nodig: het CTM
programma en de initiële delta's om de applicatie te
voeden en naar een current
niveau te
komen.
CTM is al onderdeel van &os;
sinds versie 2.0 is uitgebracht en is te vinden in
/usr/src/usr.sbin/ctm , als de broncode
aanwezig is.
De delta's
voor
CTM kunnen op twee manieren komen:
met FTP of per e-mail. De volgende FTP sites bieden
ondersteuning voor CTM :
Er staan er nog meer in de paragraaf mirrors.
FTP de relevante map en download het bestand
README vanaf daar.
Voor delta's via e-mail:
Er dient een abonnement genomen te worden op een van de
CTM distributielijsten.
&a.ctm-src-cur.name; ondersteunt de complete Subversion structuur.
&a.ctm-src-cur.name; ondersteunt het hoofd van de ontwikkeltak.
&a.ctm-src-9.name; ondersteunt de 9.X release tak, enzovoort.
Om te abonneren kan geklikt worden op de bovenstaande links of
via &a.mailman.lists.link; kan in een lijst geklikt worden op
de lijst waarvoor een abonnement gewenst is. De
lijstpagina bevat instructies over hoe te abonneren.
Na het ontvangen van CTM updates
per mail, kan ctm_rmail gebruikt worden voor
het uitpakken en verwerken. ctm_rmail kan
zelfs direct vanuit /etc/aliases gebruikt
worden om het proces volledig automatisch te laten verlopen.
In de hulppagina van ctm_rmail staan meer
details.
Welke methode ook gebruikt wordt voor de
CTM delta's, het is belangrijk een
abonnement te nemen op de &a.ctm-announce.name; mailinglijst.
In de toekomst worden alleen op die lijst aankondigingen
gedaan over het CTM systeem.
Abonneren kan door op de link hierboven te klikken en de
instructies te volgen.
CTM de eerste keer
gebruiken
Voordat de CTM delta's gebruikt
kunnen worden, moet er een startpunt voor bepaald
worden.
Eerst moet bepaald worden wat er al is. Het is mogelijk te
beginnen vanuit een lege
map. Dan moet een
initiële Empty
delta gebruikt worden om een
door CTM ondersteunde structuur te
starten. Het is de bedoeling dat deze start
delta's ooit voor het gemak op de CD-ROM komen te staan, maar
dit is nog niet het geval.
Omdat de structuren tientallen megabytes groot zijn, heeft
het de voorkeur om al met iets te beginnen. Als er een
-RELEASE CD-ROM beschikbaar is, kan de initiële broncode
gekopieerd of uitgepakt worden. Dit bespaart nogal wat
dataverkeer.
De start
delta's kunnen herkend worden aan
de X die aan het nummer is toegevoegd
(bijvoorbeeld src-cur.3210XEmpty.gz ). De
nummering achter de X komt overeen met de
oorsprong van het initiële zaad
.
Empty is een lege map. Er wordt in het
algemeen iedere honderd delta's een basistransitie voor
Empty gemaakt. Die zijn trouwens groot: 70
tot 80 Megabytes gzip data is normaal voor
de XEmpty delta's.
Als er een delta als startpunt is gekozen, zijn ook alle
delta's met hogere volgnummers nodig.
CTM in het dagelijks leven
gebruiken
Om de delta's toe te passen:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM begrijpt delta's in
gzip formaat, dus het niet nodig om eerst
gunzip te gebruiken. Dat spaart
diskruimte.
Tenzij het zeker is van de veiligheid van het proces, doet
CTM niets met de structuur. Om een
delta te verifiëren kan ook de vlag
–c gebruikt worden en dan komt
CTM ook niet aan een structuur. Dan
wordt alleen de integriteit van de delta gecontroleerd en of
die zonder problemen op de huidige structuur kan worden
toegepast.
CTM kent nog meer opties die in
de hulppagina's worden besproken.
Meer is er niet. Iedere keer dat er een delta wordt
ontvangen, moet die door CTM gehaald
worden om de broncode bijgewerkt te houden.
Delta's kunnen het beste niet verwijderd worden als het
lastig is ze opnieuw te downloaden. Dan kunnen ze het beste
bewaard worden voor het geval er eens iets gebeurt. Zelfs als
er alleen floppy's beschikbaar zijn, is het wellicht verstandig
die te gebruiken met fdwrite .
Lokale wijzigingen behouden
Een ontwikkelaar wil graag experimenteren met bestanden in
de structuur en die bestanden veranderen.
CTM ondersteunt lokale wijzigingen
in beperkte mate: alvorens te kijken of bestand
foo bestaat, zoekt het eerst naar
foo.ctm . Als dat bestand bestaat, past
CTM de wijzigigen daarop toe in
plaats van op foo .
Dit gedrag biedt een eenvoudige mogelijkheid om lokale
wijzigingen bij te houden. Dat kan dus door bestanden die
gewijzigd gaan worden te kopiëren naar een bestand met
dezelfde naam met de toevoeging .ctm . Dan
kan er vrijelijk gespeeld worden met de code, terwijl
CTM het bestand
.ctm bijwerkt.
Andere interessante mogelijkheden van
CTM
Uitvinden wat precies wordt veranderd met
bijwerken
Het is mogelijk een lijst met wijzigingen te maken die
CTM zou maken op het broncodedepot
met de optie -l .
Dit is nuttig als het gewenst is om een logboek bij te
houden van de wijzigingen, de te wijzigen bestanden voor- of
na te bewerken op welke manier dan ook, of als de gebruiker
gewoon een beetje paranoïde is.
Back-ups maken vóór bijwerken
Soms kan het wenselijk zijn om een back-up te maken van
alle bestanden die gewijzigd gaan worden door een
CTM update.
Met -B back-upbestand back-upt
CTM alle bestanden die gewijzigd
gaan worden door een CTM delta
naar back–upbestand .
Te wijzigen bestanden door bijwerken beperken
Soms is het wenselijk de reikwijdte voor een
CTM update te beperken of kan het
wenselijk zijn om maar een paar bestanden bij te werken uit
een aantal delta's.
Een lijst met bestanden die
CTM mag bewerken kan aangegeven
worden met de opties -e en
-x en het opgeven van regular
expressions.
Om bijvoorbeeld een bijgewerkte kopie van
lib/libc/Makefile te maken uit de
verzameling met opgeslagen CTM
delta's, kan het volgende commando uitgevoerd worden:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Voor ieder te wijzigen bestand in een
CTM delta worden de opties
-e en -x toegepast in de
volgorde waarin ze op de commandoregel staan. Het bestand
wordt alleen door CTM verwerkt als
het passend is bevonden na het toepassen van alle parameters
in -e en -x .
Toekomstige plannen voor
CTM
Die zijn er:
Een of andere vorm van authenticatie in het
CTM systeem bouwen zodat
vervalste CTM updates
afgevangen kunnen worden;
De opties voor CTM opruimen
omdat ze verwarrend zijn geworden.
Nog meer
Er zijn ook delta's voor de
ports collectie, maar daar is nog niet zo
veel belangstelling voor.
CTM mirrors
CTM/&os; is op de volgende
mirrorsites via anonieme FTP beschikbaar. Als voor
CTM anonieme FTP wordt gebruikt,
heeft het de voorkeur een site die in geografische zin dichtbij
is te gebruiken.
Bij problemen kan contact gezocht worden met de
&a.ctm-users.name; mailinglijst.
Californië, Bay Area, officiële bron
Zuid-Afrika, back-upserver voor oude delta's
Taiwan/R.O.C.
Als er geen mirror dichtbij is of als die incompleet is,
kan een zoekmachine als alltheweb gebruikt
worden.
CVSup gebruiken
Inleiding
CVSup is een softwarepakket voor
het verspreiden en bijwerken van broncodestructuren vanaf een
master CVS depot op een andere server. De &os; broncode wordt
beheerd in een broncode depot op een centrale ontwikkelmachine
in Californië. Met CVSup
kunnen &os; gebruikers op eenvoudige wijze hun broncode
bijwerken.
CVSup gebruikt een zogenaamd
pull model voor het bijwerken. In het
pull-model vraagt iedere client de server om updates als die
nodig zijn. De server wacht passief op een verzoek om updates
van zijn clients. Alle updates worden dus op initiatief van de
client gedaan. De server stuurt nooit ongevraagde updates.
Gebruikers moeten de CVSup client
handmatig draaien om te updaten of een cron
taak instellen om op regelmatige basis bij te werken.
De term CVSup , op de gegeven
wijze geschreven, doelt op het complete softwarepakket. De
belangrijkste componenten zijn de client
cvsup , die op de machine van een gebruiker
draait, en de server cvsupd , die op alle
&os; mirrorsites draait.
In de &os; documentatie en op de mailinglijsten zijn
referenties aan sup te vinden.
Sup was de voorloper van
CVSup en diende hetzelfde doel.
CVSup wordt op dezelfde manier
gebruikt als sup en gebruikt zelfs bestanden met instellingen
die ook te gebruiken zijn met sup .
Sup wordt niet langer gebruikt in
het &os; project omdat CVSup sneller
en flexibeler is.
De csup applicatie is een
herschreven versie van CVSup in de
C taal. Het grootste voordeel ervan is dat het sneller is en
dat het niet afhankelijk is van de Modula-3 taal, dus dat hoeft
niet geïnstalleerd te worden als afhankelijkheid. Sterker nog
de applicatie wordt standaard meegeleverd.
als ervoor gekozen is om
csup te gebruiken, sla dan de
installatie stappen voor CVSup over
en vervang de referenties naar CVSup
met csup terwijl de rest van het
artikel gevolgd wordt.
Installatie
De meest eenvoudige wijze van installatie van
CVSup is met het voorgecompileerde
pakket net/cvsup uit de
&os; pakkettencollectie. Als het
gewenst is, kan CVSup ook uit de
broncode gebouwd worden in net/cvsup . De port net/cvsup is afhankelijk van
het Modula-3 systeem en dat kan wel even duren en er is ook
nogal wat schijfruimte voor nodig om het te downloaden en te
bouwen.
Als CVSup gebruikt gaat
worden op een machine waarop geen
&xorg; staat, zoals een server,
dan dient de port waar geen
CVSup GUI bij
zit geïnstalleerd te worden: net/cvsup-without-gui .
CVSup instellingen
De werking van CVSup wordt
gestuurd door een bestand met instellingen met de naam
supfile . Er staan een aantal
supfiles als voorbeeld in de map /usr/share/examples/cvsup/ .
De informatie in een supfile
beantwoordt de volgende vragen voor
CVSup :
Welke bestanden
moeten ontvangen worden?
Welke versies daarvan
moeten ontvangen worden?
Waar moeten ze
vandaan komen?
Waar moeten ze komen
te staan?
Waar moet
cvsup zijn statusbestanden
bijhouden?
In de volgende paragrafen wordt een
supfile bestand opgebouwd door
achtereenvolgens alle gestelde vragen te beantwoorden. Als
eerste wordt de algemene structuur van een
supfile beschreven.
Een supfile is een tekstbestand.
Commentaar begint met een # en loopt tot het
einde van de regel. Lege regels en regels die alleen
commentaar bevatten worden genegeerd.
Iedere regel die overblijft slaat op een groep bestanden
die ontvangen moet worden. De regel begint met de naam van een
collectie
, een logische groep bestanden op de
server. De naam van de collectie geeft de server aan welke
bestanden er gestuurd moeten worden. Na de naam van de
collectie komen er geen of meer velden die gescheiden worden
door witruimte. Die velden beantwoorden de hierboven gestelde
vragen. Er zijn twee soorten velden: vlagvelden en
waardevelden. Een vlagveld bestaat uit een alleenstaand
sleutelwoord, bijvoorbeeld delete of
compress . Een waardeveld begint ook met
een sleutelwoord, maar het sleutelwoord wordt direct (zonder
witruimte) gevolgd door = en een tweede
woord. release=cvs is bijvoorbeeld een
waardeveld.
In een supfile wordt meestal
aangegeven dat er meerdere collecties ontvangen moeten worden.
Het is mogelijk om een supfile te
structureren door expliciet alle relevante velden aan te geven
voor iedere collectie, maar dat maakt de regels in de
supfile nogal lang en het is onhandig
omdat de meeste velden hetzelfde zijn voor alle collecties in
een supfile .
CVSup biedt een systeem met
standaardinstellingen om dit probleem te omzeilen. Regels die
beginnen met de speciale pseudo-collectienaam
*default kunnen gebruikt worden om
standaarden in te stellen voor de collecties die er in de
supfile achteraan komen. Een
standaardwaarde kan voor individuele collecties overschreven
worden door een andere waarde in de collectie zelf aan te
geven. Standaarden kunnen ook middenin het bestand gewijzigd
of aangevuld worden met extra *default
regels.
Na deze achtergronden wordt er nu een
supfile samengesteld voor het ontvangen en
bijwerken van de hoofd broncodestructuur van &os;-CURRENT.
Welke bestanden moeten
ontvangen worden?
De bestanden die via CVSup
beschikbaar zijn, zijn beschikbaar in groepen die
collecties
heten. De beschikbare collecties
staan beschreven in de volgende paragraaf. In dit
voorbeeld is het de bedoeling dat de hele hoofd
broncodestructuur voor &os; wordt ontvangen. Daar is
één grote collectie voor:
src-all . De eerste stap in het maken
van een supfile is het opsommen van de
gewenste collecties, één per regel (in dit
geval maar één regel):
src-all
Welke versies daarvan
moeten ontvangen worden?
Met CVSup kan vrijwel iedere
versie van de broncode die ooit heeft bestaan opgehaald
worden. Dat kan omdat de cvsupd
server direct vanaf het CVS depot werkt, dat alle versies
bevat. Er kan aangegeven welke ontvangen moeten worden met
de waardevelden tag= en
date= .
Voorzichtigheid is geboden bij het correct aangeven
van velden met tag= . Sommige labels
zijn alleen geldig voor bepaalde collecties of bestanden.
Als ze incorrect worden aangeven of als er een spelfout
wordt gemaakt in een label, verwijdert
CVSup bestanden waarvan dat
waarschijnlijk niet de bedoeling is. Het label
tag=. dient eigenlijk
alleen gebruikt te worden voor de
ports-* collecties.
Het veld tag= benoemt een symbolisch
label in het depot. Er zijn twee soorten labels:
revisielabels en taklabels. Een revisielabel refereert aan
een specifieke revisie. De betekenis blijft altijd
hetzelfde. Een taklabel refereert echter aan de laatste
revisie van een gegeven ontwikkellijn op een gegeven
moment. Omdat een taklabel niet refereert aan een
specifieke revisie, kan het morgen iets anders betekenen
dan vandaag.
beschrijft de meest
interessante taklabels. Als er in het instellingenbestand
van CVSup een label wordt
aangegeven, moet dat vooraf gegaan worden door
tag= (RELENG_8 zal
tag=RELENG_8 worden). Voor de
Portscollectie is alleen tag=.
relevant.
Labels dienen exact zo ingegeven te worden als ze
staan beschreven. CVSup kan
geen onderscheid maken tussen geldige en ongeldige
labels. Als er een spelfout in een label wordt gemaakt,
doet CVSup alsof er een geldig
label is ingegeven dat aan geen enkel bestand refereert.
Dan zal CVSup de bestaande
broncode wissen.
Bij het aangeven van een taklabel wordt meestal de
laatste versie van de bestanden voor een bepaalde
ontwikkellijn ontvangen. Om een oudere versie te
ontvangen kan in het veld date= een datum
opgegeven worden. In &man.cvsup.1; staat hoe dat
werkt.
Om bijvoorbeeld &os;-CURRENT te ontvangen dient het
volgende aan het begin van supfile
toegevoegd te worden:
*default tag=.
Er ontstaat een belangrijk speciaal geval als er geen
velden met tag= of
date= worden aangegeven. In dat geval
worden de eigenlijke RCS bestanden direct uit het CVS depot
van de server ontvangen in plaats van dat een bepaalde
versie wordt ontvangen. Ontwikkelaars geven in het
algemeen de voorkeur aan deze optie. Door zelf een kopie
van de broncode op hun systeem te hebben, krijgen ze de
mogelijkheid om zelf door eerdere versies van bestanden te
bladeren en de geschiedenis ervan te bekijken. Dit
voordeel kost wel veel schijfruimte.
Waar moeten ze vandaan
komen?
Het veld host= wordt gebruikt om
cvsup aan te geven waar de updates
vandaan moeten komen. Dat kan van elke CVSup mirrorsite, hoewel
er wordt aangeraden een site die geografisch dichtbij ligt
te kiezen. In dit voorbeeld wordt een fictieve &os;
distributiesite gebruikt, cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
In een werkelijke situatie dient de hostnaam gewijzigd
te worden in een host die echt bestaat voordat
CVSup gaat draaien. Iedere keer
dat cvsup wordt gestart, kan er een
andere host op de commandoregel opgegeven worden met de optie
-hhostname .
Waar moeten ze komen te
staan?
Het veld prefix= geeft
cvsup aan waar de ontvangen bestanden
terecht moeten komen. In dit voorbeeld worden de bestanden
direct in de hoofd broncodestructuur
/usr/src geplaatst. De map
src is al impliciet in de gekozen
collecties, vandaar dat het onderstaande de juiste
instelling is:
*default prefix=/usr
Waar moet
cvsup zijn statusbestanden
bijhouden?
De CVSup client houdt
statusbestanden bij in een map die base
wordt genoemd. Die bestanden helpen
CVSup efficiënter te
werken door bij te houden welke updates al eerder zijn
ontvangen. Hier wordt de standaard basemap gebruikt,
/var/db :
*default base=/var/db
De bovenstaande instelling wordt standaard gebruikt als
die niet wordt aangegeven in de
supfile , dus hij is eigenlijk niet
nodig.
Als de basemap niet al bestaat, moet die gemaakt
worden. De cvsup client weigert te
draaien als de basemap niet bestaat.
Allerlei supfile
instellingen:
Er is nog een regel die in een
supfile moet staan:
*default release=cvs delete use-rel-suffix compress
release=cvs geeft de server aan dat
de informatie uit het &os; hoofd CVS depot moet komen. Dat
is eigenlijk altijd het geval, maar er zijn mogelijkheden
die buiten het bereik van dit handboek vallen.
delete geeft
CVSup het recht om bestanden te
verwijderen. Dit moet altijd aangegeven worden zodat
CVSup de broncode altijd kan
bijwerken. CVSup gaat
voorzichtig om met het verwijderen van bestanden waar het
verantwoordelijk voor is. Extra bestanden in de structuur
worden met rust gelaten.
use-rel-suffix is nogal
geheimzinnig. Voor de nieuwsgierigen staat er meer over in
&man.cvsup.1;. Anders kan het gewoon ingesteld worden
zonder erover na te denken.
compress schakelt het gebruikt van
gzip compressie in voor het communicatiekanaal. Als de
verbinding een E1 of sneller is, hoeft er geen compressie
gebruikt te worden. Anders helpt het aanzienlijk.
Alles combinerend:
Hieronder staat de hele supfile
uit het voorbeeld:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
Het bestand refuse
Zoals hierboven al is aangegeven, gebruikt
CVSup een pull
methode . Dat betekent eigenlijk dat er een
verbinding wordt gemaakt met de
CVSup server en die zegt dan:
Dit kan er van mij gedownload worden...
, en
dan antwoordt de client met: Oké, ik wil dit en
dat en zus en zo.
Met de standaardinstellingen haalt
de CVSup client alle bestanden die
bij een collectie en het label horen dat in het bestand met
de instellingen is opgegeven. Maar dat is niet altijd
wenselijk, in het bijzonder als de doc ,
ports of www
structuren worden gesynchroniseerd. De meeste mensen kunnen
geen vier of vijf talen lezen en die hebben de taalspecifieke
bestanden dus niet nodig. Als de Portscollectie met
CVSup wordt opgehaald, is het
mogelijk om iedere collectie apart aan te geven (bijvoorbeeld
ports-astrology ,
ports-biology , enzovoort, in plaats van
eenvoudigweg ports-all ). Maar omdat
de doc en www
structuren geen taalspecifieke collecties hebben, moet er
gebruik gemaakt worden van een van de vele mooie
mogelijkheden van CVSup : het
bestand refuse .
Het bestand refuse geeft
CVSup in feite aan dat niet ieder
bestand uit een collectie opgehaald moet worden. Het geeft
dus aan dat de client bepaalde bestanden van de server moet
weigeren . Het bestand
refuse staat in (of kan gemaakt worden
in)
base /sup/ .
base staat ingesteld in
supfile . De standaardlocatie voor
base is
/var/db . De standaardplaats voor
refuse is dus
/var/db/sup/refuse .
Het bestand refuse heeft een erg
eenvoudige opmaak. Het bevat de namen van de bestanden die
niet gedownload mogen worden. Als een gebruiker bijvoorbeeld
geen andere talen spreekt dan Engels en Nederlands, maar
de Nederlandse vertaling van de documentatie hoeft niet
binnengehaald te worden, dan kan het volgende in het bestand
refuse gezet worden:
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_*
Dit gaat zo door voor de andere talen. De volledige
lijst staat in het &os;
CVS depot .
Met deze handige eigenschap kunnen gebruikers met
langzamere verbindingen of zij die per minuut voor hun
Internetverbinding betalen waardevolle tijd besparen omdat er
geen bestanden meer gedownload worden die nooit gebruikt
worden. Meer informatie over refuse
bestanden en andere leuke mogelijkheden van
CVSup staat in de
handleiding.
CVSup draaien
Nu kan het bijwerken beginnen. Het commando is best wel
eenvoudig:
&prompt.root; cvsup supfile
De supfile
is de naam van het supfile bestand dat
gebruikt moet worden. Aangenomen dat er X11 draait op een
machine, toont cvsup een GUI venster met
wat knoppen om de bekende acties uit te voeren. Het proces
start na het klikken op de knop
go .
Omdat in dit voorbeeld de werkelijke structuur in
/usr/src wordt bijgewerkt, moet het
programma als root uitgevoerd worden,
zodat cvsup de rechten heeft die het nodig
heeft om de bestanden bij te werken. Het is voorstelbaar dat
de benodigde rechten, het net gemaakte bestand met instellingen
en het voor de eerste keer draaien van een programma zorgt voor
wat onrust. Daarom is het mogelijk proef te draaien zonder
dat er bestanden gewijzigd worden. Dat kan door ergens een
lege map te maken en een extra argument mee te geven op de
commandoregel:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
De opgegeven map is de bestemming voor alle
bestandsupdates. CVSup bekijkt wel
de bestanden in /usr/src , maar wijzigt ze
niet. Alle updates belanden in
/var/tmp/dest/usr/src .
CVSup werkt ook de statusbestanden
niet bij als het op deze wijze wordt uitgevoerd. De nieuwe
versies van de bestanden worden naar de aangegeven map
geschreven. Als er maar leestoegang is tot
/usr/src , hoeft een gebruiker zelfs geen
root te zijn bij het uitvoeren van dit
experiment.
Als er geen X11 draait of als het niet wenselijk is een GUI
te gebruiken, dan kunnen daarvoor opties op de commandoregel
meegegeven worden bij het draaien van
cvsup :
&prompt.root; cvsup -g -L 2 supfile
De optie -g geeft
CVSup aan dat de GUI niet gebruikt
hoeft te worden. Dit gebeurt automatisch als X11 niet draait,
maar anders moet het aangegeven worden.
De optie -L 2 geeft
CVSup aan dat details getoond
moeten worden over alle bestanden die bijgewerkt worden. Er
zijn drie niveaus van uitvoerigheid, van -L 0
tot -L 2 . Standaard is het 0, wat betekent
dat er geen enkel bericht wordt getoond, met uitzondering van
foutmeldingen.
Er zijn nog veel andere opties beschikbaar. Met
cvsup -H wordt een lijst met korte uitleg
getoond. Beschrijvingen met meer details staan in de
handleiding.
Als het bijwerken op de gewenste manier loopt, kan het
regulier draaien van CVSup met
&man.cron.8; ingesteld worden. Natuurlijk hoort
CVSup zonder GUI te draaien als het
programma vanuit de &man.cron.8; draait.
CVSup
bestandscollecties
De via CVSup beschikbare
bestandscollecties zijn hiërarchisch georganiseerd. Er
zijn een paar grote collecties en die zijn opgedeeld in
kleinere subcollecties. Het ontvangen van een collectie is
hetzelfde als het ontvangen van alle subcollecties. De
hiërarchische relatie tussen de collecties wordt
hieronder aangegeven door het niveau van inspringen.
De meest gebruikte collecties zijn
src-all en ports-all . De
andere collecties worden door kleine groepen mensen gebruikt
voor bijzondere doeleinden en sommige mirrorsites hebben ze
niet allemaal.
cvs-all release=cvs
Het &os; CVS hoofddepot, inclusief de cryptografische
code.
distrib release=cvs
Bestanden die betrekking hebben op het
verspreiden en spiegelen van &os;.
ports-all release=cvs
De &os; Portscollectie.
Als ports-all (het
complete portssysteem) niet bijgewerkt hoeft te
worden, maar enkele van de onderstaande
subcollecties, dan moet
altijd ook de
ports-base subcollectie
bijgewerkt worden! Als er iets wijzigt in de
infrastructuur van de ports waar
ports–base voor staat,
is het vrijwel zeker dat die wijzigingen heel
snel door echte
ports gebruikt
gaan worden. Dus als alleen de
echte
ports bijgewerkt worden en
als die gebruik maken van nieuwe mogelijkheden,
dan is de kans groot dat het bouwen daarvan
foutloopt met een vage foutmelding. Het
eerste dat gedaan moeten
worden is ervoor zorgen dat de
ports-base subcollectie is
bijgewerkt.
Bij het zelf bouwen van een lokale kopie van
ports/INDEX
moet
ports-all geaccepteerd worden
(de hele port structuur). Het bouwen van
ports/INDEX met een
gedeeltelijke structuur wordt niet ondersteund.
Zie ook de FAQ .
ports-accessibility
release=cvs
Software voor minder valide
gebruikers.
ports-arabic
release=cvs
Ondersteuning voor de Arabische
taal.
ports-archivers
release=cvs
Archiveringshulpmiddelen.
ports-astro
release=cvs
Astronomie ports.
ports-audio
release=cvs
Geluidsondersteuning.
ports-base
release=cvs
De infrastructuur van de Portscollectie.
Bestanden uit de mappen
Mk/ en
Tools/ van
/usr/ports .
Zie ook de belangrijke
waarschuwing hierboven: deze
subcollectie dient
altijd bijgewerkt te
worden als er een onderdeel van de &os;
Portscollectie wordt bijgewerkt!
ports-benchmarks
release=cvs
Benchmarks.
ports-biology
release=cvs
Biologie.
ports-cad
release=cvs
Computer aided design programma's.
ports-chinese
release=cvs
Ondersteuning voor de Chinese
taal.
ports-comms
release=cvs
Communicatiesoftware.
ports-converters
release=cvs
Karaktercode omzetters.
ports-databases
release=cvs
Databases.
ports-deskutils
release=cvs
Dingen die op een bureaublad stonden
voordat computers waren uitgevonden.
ports-devel
release=cvs
Ontwikkelhulpmiddelen.
ports-dns
release=cvs
DNS gerelateerde software.
ports-editors
release=cvs
Editors.
ports-emulators
release=cvs
Emulatoren voor
besturingssystemen.
ports-finance
release=cvs
Monetaire, financiële en
gerelateerde applicaties.
ports-ftp
release=cvs
FTP client en server programma's.
ports-games
release=cvs
Spelletjes.
ports-german
release=cvs
Ondersteuning voor de Duitse taal.
ports-graphics
release=cvs
Grafische programma's.
ports-hebrew
release=cvs
Ondersteuning voor de Hebreeuwse
taal.
ports-hungarian
release=cvs
Ondersteuning voor de Hongaarse
taal.
ports-irc
release=cvs
Internet Relay Chat
hulpprogramma's.
ports-japanese
release=cvs
Ondersteuning voor de Japanse
taal.
ports-java
release=cvs
&java; programma's.
ports-korean
release=cvs
Ondersteuning voor de Koreaanse
taal.
ports-lang
release=cvs
Programmeertalen.
ports-mail
release=cvs
Mailsoftware.
ports-math
release=cvs
Numerieke rekensoftware.
ports-misc
release=cvs
Verschillende programma's.
ports-multimedia
release=cvs
Multimedia software.
ports-net
release=cvs
Netwerksoftware.
ports-net-im
release=cvs
Berichtenuitwisseling.
ports-net-mgmt
release=cvs
Netwerkbeheersoftware.
ports-net-p2p
release=cvs
Peer to Peer Netwerken
ports-news
release=cvs
USENET news software.
ports-palm
release=cvs
Softwareondersteuning voor
Palm
apparatuur.
ports-polish
release=cvs
Ondersteuning voor de Poolse taal.
ports-ports-mgmt
release=cvs
Programma's om ports en pakketten te
beheren.
ports-portuguese
release=cvs
Ondersteuning voor de Portugese
taal.
ports-print
release=cvs
Printsoftware.
ports-russian
release=cvs
Ondersteuning voor de Russische
taal.
ports-science
release=cvs
Wetenschappelijk.
ports-security
release=cvs
Beveiligingsprogramma's.
ports-shells
release=cvs
Commandoregelshells.
ports-sysutils
release=cvs
Systeemprogramma's.
ports-textproc
release=cvs
Tekstverwerkingsprogramma's (zonder
desktop publishing).
ports-ukrainian
release=cvs
Ondersteuning voor de Oekraïense
taal.
ports-vietnamese
release=cvs
Ondersteuning voor de Viëtnamese
taal.
ports-www
release=cvs
Software gerelateerd aan het Wereldwijde
Web.
ports-x11
release=cvs
Ports voor het X windowsysteem.
ports-x11-clocks
release=cvs
X11 klokken.
ports-x11-drivers
release=cvs
X11-stuurprogramma's
ports-x11-fm
release=cvs
X11 bestandsbeheerders.
ports-x11-fonts
release=cvs
X11 lettertypen en
lettertypeprogramma's.
ports-x11-toolkits
release=cvs
X11 hulpprogramma's.
ports-x11-servers
release=cvs
X11 servers.
ports-x11-themes
X11 thema's.
ports-x11-wm
release=cvs
X11 vensterbeheerprogramma's.
projects-all release=cvs
Broncode's voor de &os; projecten
repository.
src-all release=cvs
De hoofdbroncode van &os;, inclusief de
cryptografische code.
src-base
release=cvs
Verschillende bestanden bovenin de
/usr/src
structuur.
src-bin
release=cvs
Gebruikersprogramma's die wellicht nodig
zijn in single-user modus
(/usr/src/bin ).
src-cddl
release=cvs
Programma's en bibliotheken die uitgegeven
zijn onder de CDDL licentie
(/usr/src/cddl ).
src-contrib
release=cvs
Programma's en bibliotheken van buiten
het &os; project die vrijwel ongewijzigd
gebruikt worden
(/usr/src/contrib ).
src-crypto release=cvs
Cryptografische programma's en
bibliotheken van buiten het &os; project, die
vrijwel ongewijzigd worden gebruikt
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos en DES
(/usr/src/eBones ). Niet
gebruikt in recente uitgaves van &os;.
src-etc
release=cvs
Bestanden met systeeminstellingen
(/usr/src/etc ).
src-games
release=cvs
Spelletjes
(/usr/src/games ).
src-gnu
release=cvs
Programma's die onder de GNU Public
License vallen
(/usr/src/gnu ).
src-include
release=cvs
Headerbestanden
(/usr/src/include ).
src-kerberos5
release=cvs
Kerberos5 beveiligingspakket
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
KerberosIV beveiligingspakket
(/usr/src/kerberosIV ).
src-lib
release=cvs
Bibliotheken
(/usr/src/lib ).
src-libexec
release=cvs
Systeemprogramma's die meestal door
andere programma's worden uitgevoerd
(/usr/src/libexec ).
src-release
release=cvs
Bestanden die nodig zijn voor het
maken van een &os; release
(/usr/src/release ).
src-release
release=cvs
Statisch gelinkte programma's voor nood
onderhoud, zie &man.rescue.8;
(/usr/src/rescue ).
src-sbin release=cvs
Systeemprogramma's voor single-user modus
(/usr/src/sbin ).
src-secure
release=cvs
Cryptografische bibliotheken en
commando's
(/usr/src/secure ).
src-share
release=cvs
Bestanden die tussen meerdere systemen
gedeeld kunnen worden
(/usr/src/share ).
src-sys
release=cvs
De kernel
(/usr/src/sys ).
src-sys-crypto
release=cvs
Cryptografische kernelcode
(/usr/src/sys/crypto ).
src-tools
release=cvs
Verschillende hulpprogramma's voor het
onderhoud van &os;
(/usr/src/tools ).
src-usrbin
release=cvs
Gebruikersprogramma's
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
Systeemprogramma's
(/usr/src/usr.sbin ).
distrib release=self
De instellingenbestanden van de
CVSup server zelf. Gebruikt
door de CVSup
mirrorsites.
gnats release=current
De GNATS bug-tracking database.
mail-archive release=current
&os; mailinglijstarchief.
www release=current
De voorbewerkte &os; websitebestanden (niet de
broncode). Gebruikt door WWW mirrorsites.
Voor meer informatie
De CVSup FAQ en andere
informatie over CVSup is te vinden
op De CVSup Homepage .
De meeste &os;–gerelateerde discussie over
CVSup vindt plaats op de
&a.hackers;. Daar worden nieuwe versies van de software
aangekondigd, net als op de &a.announce;.
Voor vragen en foutrapporten moet een kijkje genomen worden
op
de CVSup FAQ
CVSup sites
CVSup servers voor &os; draaien
op de onderstaande sites.
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
CVS labels
Bij het ophalen of bijwerken van broncode met
cvs of
CVSup moet een revisielabel meegegeven
worden. Een revisielabel refereert aan een specifieke lijn in
de &os; ontwikkeling of aan een specifiek moment in de tijd. Het
eerste type heet taklabel
(branch tag) en het
tweede type heet releaselabel
(release
tag).
Taklabels
Deze zijn, met uitzondering van HEAD
(dat altijd een geldig label is), alleen van toepassing op de
src/ structuur. De
ports/ , doc/ en
www/ structuren kennen geen takken.
HEAD
Symbolische naam voor de hoofdlijn van &os;-CURRENT.
Ook de standaard als geen revisie is aangegeven.
In CVSup wordt dit label
aangegeven met een . (dat is dus geen
interpunctie, maar een echt .
karakter).
In CVS is dit de standaard als er geen revisielabel
is aangegeven. Het is meestal
geen goed idee om een checkout of
update van CURRENT broncode op een STABLE machine te
doen, tenzij dat expliciet de bedoeling is.
RELENG_9
De ontwikkellijn voor &os;-9.X, ook bekend als
&os; 9-STABLE.
RELENG_9_0
De uitgavetak voor &os;-9.0, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_8
De ontwikkellijn voor &os;-8.X, ook bekend als
&os; 8-STABLE.
RELENG_8_3
De uitgavetak voor &os;-8.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_8_2
De uitgavetak voor &os;-8.2, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_8_1
De uitgavetak voor &os;-8.1, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_8_0
De uitgavetak voor &os;-8.0, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_7
De ontwikkellijn voor &os;-7.X, ook bekend als
&os; 7-STABLE.
RELENG_7_4
De uitgavetak voor &os;-7.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_7_3
De uitgavetak voor &os;-7.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_7_2
De uitgavetak voor &os;-7.2, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_7_1
De uitgavetak voor &os;-7.1, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_7_0
De uitgavetak voor &os;-7.0, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_6
De ontwikkellijn voor &os;-6.X, ook bekend als
&os; 6-STABLE.
RELENG_6_4
De uitgavetak voor &os;-6.4, alleen gebruikt voor
beveiligingsadviezen en andere kritieke reparaties.
RELENG_6_3
De uitgavetak voor &os;-6.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_6_2
De releasetak voor &os;-6.2, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_6_1
De releasetak voor &os;-6.1, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_6_0
De releasetak voor &os;-6.0, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_5
De ontwikkellijn voor &os;-5.X, ook bekend als
&os; 5-STABLE.
RELENG_5_5
De releasetak voor &os;-5.5, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_5_4
De releasetak voor &os;-5.4, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_5_3
De releasetak voor &os;-5.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_5_2
De releasetak voor &os;-5.2 en &os;-5.2.1, alleen
gebruikt voor beveiligingswaarschuwingen en andere
kritische aanpassingen.
RELENG_5_1
De releasetak voor &os;-5.1, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_5_0
De releasetak voor &os;-5.0, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4
De ontwikkellijn voor &os;-4.X, ook bekend als &os;
4-STABLE.
RELENG_4_11
De releasetak voor &os;-4.11, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_10
De releasetak voor &os;-4.10, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_9
De releasetak voor &os;-4.9, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_8
De releasetak voor &os;-4.8, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_7
De releasetak voor &os;-4.7, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_6
De releasetak voor &os;-4.6 en &os;-4.6.2,
alleen gebruikt voor beveiligingswaarschuwingen en andere
kritische aanpassingen.
RELENG_4_5
De releasetak voor &os;-4.5, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_4
De releasetak voor &os;-4.4, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_4_3
De releasetak voor &os;-4.3, alleen gebruikt voor
beveiligingswaarschuwingen en andere kritische
aanpassingen.
RELENG_3
De ontwikkellijn voor &os;-3.X, ook bekend als
3.X-STABLE.
RELENG_2_2
De ontwikkellijn voor &os;-2.2.X, ook bekend als
2.2-STABLE. Deze tak is sterk verouderd.
Releaselabels
Deze labels refereren aan een specifiek moment in de tijd
waarop een versie van &os; is uitgegeven. Het proces om tot
een release te komen is gedetailleerder beschreven in de
Release Engineering
Informatie en Release
Proces documenten. De src structuur gebruikt
labelnamen die beginnen met RELENG_ labels.
De ports en doc structuren gebruiken labels
waarvan de naam begint met het label
RELEASE . De www tenslotte, is niet
gemarkeerd met een bijzondere naam bij uitgaven.
RELENG_9_0_0_RELEASE
&os; 9.0
RELENG_8_3_0_RELEASE
&os; 8.3
RELENG_8_2_0_RELEASE
&os; 8.2
RELENG_8_1_0_RELEASE
&os; 8.1
RELENG_8_0_0_RELEASE
&os; 8.0
RELENG_7_4_0_RELEASE
&os; 7.4
RELENG_7_3_0_RELEASE
&os; 7.3
RELENG_7_2_0_RELEASE
&os; 7.2
RELENG_7_1_0_RELEASE
&os; 7.1
RELENG_7_0_0_RELEASE
&os; 7.0
RELENG_6_4_0_RELEASE
&os; 6.4
RELENG_6_3_0_RELEASE
&os; 6.3
RELENG_6_2_0_RELEASE
&os; 6.2
RELENG_6_1_0_RELEASE
&os; 6.1
RELENG_6_0_0_RELEASE
&os; 6.0
RELENG_5_5_0_RELEASE
&os; 5.5
RELENG_5_4_0_RELEASE
&os; 5.4
RELENG_4_11_0_RELEASE
&os; 4.11
RELENG_5_3_0_RELEASE
&os; 5.3
RELENG_4_10_0_RELEASE
&os; 4.10
RELENG_5_2_1_RELEASE
&os; 5.2.1
RELENG_5_2_0_RELEASE
&os; 5.2
RELENG_4_9_0_RELEASE
&os; 4.9
RELENG_5_1_0_RELEASE
&os; 5.1
RELENG_4_8_0_RELEASE
&os; 4.8
RELENG_5_0_0_RELEASE
&os; 5.0
RELENG_4_7_0_RELEASE
&os; 4.7
RELENG_4_6_2_RELEASE
&os; 4.6.2
RELENG_4_6_1_RELEASE
&os; 4.6.1
RELENG_4_6_0_RELEASE
&os; 4.6
RELENG_4_5_0_RELEASE
&os; 4.5
RELENG_4_4_0_RELEASE
&os; 4.4
RELENG_4_3_0_RELEASE
&os; 4.3
RELENG_4_2_0_RELEASE
&os; 4.2
RELENG_4_1_1_RELEASE
&os; 4.1.1
RELENG_4_1_0_RELEASE
&os; 4.1
RELENG_4_0_0_RELEASE
&os; 4.0
RELENG_3_5_0_RELEASE
&os;-3.5
RELENG_3_4_0_RELEASE
&os;-3.4
RELENG_3_3_0_RELEASE
&os;-3.3
RELENG_3_2_0_RELEASE
&os;-3.2
RELENG_3_1_0_RELEASE
&os;-3.1
RELENG_3_0_0_RELEASE
&os;-3.0
RELENG_2_2_8_RELEASE
&os;-2.2.8
RELENG_2_2_7_RELEASE
&os;-2.2.7
RELENG_2_2_6_RELEASE
&os;-2.2.6
RELENG_2_2_5_RELEASE
&os;-2.2.5
RELENG_2_2_2_RELEASE
&os;-2.2.2
RELENG_2_2_1_RELEASE
&os;-2.2.1
RELENG_2_2_0_RELEASE
&os;-2.2.0
rsync sites
De volgende sites bieden &os; aan via het protocol rsync.
Het programma rsync werkt vrijwel
hetzelfde als &man.rcp.1;, maar kent meer mogelijkheden en
gebruikt het rsync remote-update protocol, dat alleen verschillen
tussen twee groepen bestanden overbrengt, waardoor het
synchroniseren via een netwerk drastisch wordt versneld. Dit
kan het beste gedaan worden als er een mirrorsite voor de
&os; FTP server of het &os; CVS depot draait. De
rsync suite is voor veel
besturingssystemen beschikbaar. Voor &os; kan het pakket of de
port uit net/rsync
geïnstalleerd worden.
Tsjechië
rsync://ftp.cz.FreeBSD.org/
Beschikbare collecties:
ftp: een gedeeltelijke mirror van de &os;
FTP server.
&os;: een volledige mirror van de &os; FTP
server.
Nederland
rsync://ftp.nl.FreeBSD.org/
Beschikbare collecties:
&os;: een volledige mirror
van de &os; FTP server.
Rusland
rsync://ftp.mtu.ru/
Beschikbare collecties:
&os;: een volledige spiegel van de FTP-server van
&os;.
&os;-gnats: De GNATS bug-tracking
database.
&os;-archief: spiegel van de &os; Archive
FTP-server.
Zweden
rsync://ftp4.se.freebsd.org/
Beschikbare verzamelingen:
&os;: een volledige spiegel van de FTP-server van
&os;.
Taiwan
rsync://ftp.tw.FreeBSD.org/
rsync://ftp2.tw.FreeBSD.org/
rsync://ftp6.tw.FreeBSD.org/
Beschikbare collecties:
FreeBSD: een volledige mirror van de &os;
FTP server.
Verenigd Koninkrijk
rsync://rsync.mirrorservice.org/
Beschikbare collecties:
sites/ftp.freebsd.org: een volledige mirror van
de &os; FTP server.
Verenigde Staten van Amerika
rsync://ftp-master.FreeBSD.org/
Deze server mag alleen gebruikt worden door &os;
primaire mirrorsites.
Beschikbare collecties:
&os;: het masterarchief van de &os;
FTP server.
acl: de &os; master ACL
lijst.
rsync://ftp13.FreeBSD.org/
Beschikbare collecties:
&os;: een volledige mirror van de &os; FTP
server.
diff --git a/pl_PL.ISO8859-2/books/handbook/mirrors/chapter.xml b/pl_PL.ISO8859-2/books/handbook/mirrors/chapter.xml
index ffc3c005d7..0cec1ebd9a 100644
--- a/pl_PL.ISO8859-2/books/handbook/mirrors/chapter.xml
+++ b/pl_PL.ISO8859-2/books/handbook/mirrors/chapter.xml
@@ -1,3204 +1,3204 @@
Obtaining FreeBSD
CDROM and DVD Publishers
Retail Boxed Products
FreeBSD is available as a boxed product (FreeBSD CDs,
additional software, and printed documentation) from several
retailers:
CompUSA
WWW:
Frys Electronics
WWW:
CD and DVD Sets
FreeBSD CD and DVD sets are available from many online
retailers:
BSD Mall by Daemon News
PO Box 161
Nauvoo , IL 62354
USA
Phone: +1 866 273-6255
Fax: +1 217 453-9956
Email: sales@bsdmall.com
WWW:
BSD-Systems
Email: info@bsd-systems.co.uk
WWW:
FreeBSD Mall, Inc.
3623 Sanford Street
Concord , CA 94520-1405
USA
Phone: +1 925 674-0783
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germany
Phone: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
France
WWW:
JMC Software
Ireland
Phone: 353 1 6291282
WWW:
Linux CD Mall
Private Bag MBE N348
Auckland 1030
New Zealand
Phone: +64 21 866529
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
United Kingdom
Phone: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
Phone: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Phone: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Distributors
If you are a reseller and want to carry FreeBSD CDROM products,
please contact a distributor:
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
USA
Phone: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
Phone: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
Phone: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
USA
Phone: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
FTP Sites
The official sources for FreeBSD are available via anonymous FTP
from a worldwide set of mirror sites. The site
is well
connected and allows a large number of connections to it, but
you are probably better off finding a closer
mirror site (especially if you decide to set up some sort of
mirror site).
The FreeBSD mirror
sites database is more accurate than the mirror listing in the
Handbook, as it gets its information from the DNS rather than relying on
static lists of hosts.
Additionally, FreeBSD is available via anonymous FTP from the
following mirror sites. If you choose to obtain FreeBSD via anonymous
FTP, please try to use a site near you. The mirror sites listed as
Primary Mirror Sites
typically have the entire FreeBSD archive (all
the currently available versions for each of the architectures) but
you will probably have faster download times from a site that is
in your country or region. The regional sites carry the most recent
versions for the most popular architecture(s) but might not carry
the entire FreeBSD archive. All sites provide access via anonymous
FTP but some sites also provide access via other methods. The access
methods available for each site are provided in parentheses
after the hostname.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
Anonymous CVS
-
- Introduction
+
+ Introduction
CVS
anonymous
Anonymous CVS (or, as it is otherwise known,
anoncvs ) is a feature provided by the CVS
utilities bundled with FreeBSD for synchronizing with a remote
CVS repository. Among other things, it allows users of FreeBSD
to perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers.
To use it, one simply sets the CVSROOT
environment variable to point at the appropriate anoncvs server,
provides the well-known password anoncvs
with the
cvs login command, and then uses the
&man.cvs.1; command to access it like any local
repository.
The cvs login command, stores the passwords
that are used for authenticating to the CVS server in a file
called .cvspass in your
HOME directory. If this file does not exist,
you might get an error when trying to use cvs
login for the first time. Just make an empty
.cvspass file, and retry to login.
While it can also be said that the CVSup and anoncvs
services both perform essentially the same function, there are
various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell,
CVSup is much more efficient in its
usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use
CVSup , a special client must first be
installed and configured before any bits can be grabbed, and
then only in the fairly large chunks which
CVSup calls
collections .
Anoncvs , by contrast, can be used
to examine anything from an individual file to a specific
program (like ls or grep )
by referencing the CVS module name. Of course,
anoncvs is also only good for
read-only operations on the CVS repository, so if it is your
intention to support local development in one repository shared
with the FreeBSD project bits then
CVSup is really your only
option.
-
- Using Anonymous CVS
+
+ Using Anonymous CVS
Configuring &man.cvs.1; to use an Anonymous CVS repository
is a simple matter of setting the CVSROOT
environment variable to point to one of the FreeBSD project's
anoncvs servers. At the time of this
writing, the following servers are available:
Austria :
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(Use cvs login and enter any
password when prompted.)
France :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (password anoncvs
), ssh (no password))
Germany :
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(Use cvs login and enter the password
anoncvs
when prompted.)
Germany :
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
Japan :
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Use cvs login and enter the password
anoncvs
when prompted.)
USA :
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(ssh only - no password)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
USA :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ssh only - no
password)
SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com
SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub
Since CVS allows one to check out
virtually
any version of the FreeBSD sources that ever existed (or, in
some cases, will exist), you need to be
familiar with the revision (-r ) flag to
&man.cvs.1; and what some of the permissible values for it in
the FreeBSD Project repository are.
There are two kinds of tags, revision tags and branch tags.
A revision tag refers to a specific revision. Its meaning stays
the same from day to day. A branch tag, on the other hand,
refers to the latest revision on a given line of development, at
any given time. Because a branch tag does not refer to a
specific revision, it may mean something different tomorrow than
it means today.
contains revision tags that users
might be interested
in. Again, none of these are valid for the Ports Collection
since the Ports Collection does not have multiple
revisions.
When you specify a branch tag, you normally receive the
latest versions of the files on that line of development. If
you wish to receive some past version, you can do so by
specifying a date with the -D date flag.
See the &man.cvs.1; manual page for more details.
Examples
While it really is recommended that you read the manual page
for &man.cvs.1; thoroughly before doing anything, here are some
quick examples which essentially show how to use Anonymous
CVS:
Checking Out Something from -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co ls
Using SSH to check out the src/
tree:
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
Checking Out the Version of &man.ls.1; in the 6-STABLE
Branch:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co -rRELENG_6 ls
Creating a List of Changes (as Unified Diffs) to &man.ls.1;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
Finding Out What Other Module Names Can Be Used:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Other Resources
The following additional resources may be helpful in learning
CVS:
CVS Tutorial from Cal Poly.
CVS Home ,
the CVS development and support community.
CVSweb is
the FreeBSD Project web interface for CVS.
Using CTM
CTM
CTM is a method for keeping a
remote directory tree in sync with a central one. It has been
developed for usage with FreeBSD's source trees, though other
people may find it useful for other purposes as time goes by.
Little, if any, documentation currently exists at this time on the
process of creating deltas, so contact the &a.ctm-users.name; mailing list for more
information and if you wish to use CTM
for other things.
Why Should I Use CTM ?
CTM will give you a local copy of
the FreeBSD source trees. There are a number of
flavors
of the tree available. Whether you wish
to track the entire CVS tree or just one of the branches,
CTM can provide you the information.
If you are an active developer on FreeBSD, but have lousy or
non-existent TCP/IP connectivity, or simply wish to have the
changes automatically sent to you,
CTM was made for you. You will need
to obtain up to three deltas per day for the most active
branches. However, you should consider having them sent by
automatic email. The sizes of the updates are always kept as
small as possible. This is typically less than 5K, with an
occasional (one in ten) being 10-50K and every now and then a
large 100K+ or more coming around.
You will also need to make yourself aware of the various
caveats related to working directly from the development sources
rather than a pre-packaged release. This is particularly true
if you choose the current
sources. It is
recommended that you read Staying
current with FreeBSD.
What Do I Need to Use
CTM ?
You will need two things: The CTM
program, and the initial deltas to feed it (to get up to
current
levels).
The CTM program has been part of
FreeBSD ever since version 2.0 was released, and lives in
/usr/src/usr.sbin/ctm if you have a copy
of the source available.
The deltas
you feed
CTM can be had two ways, FTP or
email. If you have general FTP access to the Internet then the
following FTP sites support access to
CTM :
or see section mirrors.
FTP the relevant directory and fetch the
README file, starting from there.
If you wish to get your deltas via email:
Subscribe to one of the
CTM distribution lists.
&a.ctm-cvs-cur.name; supports the entire CVS tree.
&a.ctm-src-cur.name; supports the head of the development
branch. &a.ctm-src-4.name; supports the 4.X release
branch, etc.. (If you do not know how to subscribe yourself
to a list, click on the list name above or go to
&a.mailman.lists.link; and click on the list that you
wish to subscribe to. The list page should contain all of
the necessary subscription instructions.)
When you begin receiving your CTM
updates in the mail, you may use the
ctm_rmail program to unpack and apply them.
You can actually use the ctm_rmail program
directly from a entry in /etc/aliases if
you want to have the process run in a fully automated fashion.
Check the ctm_rmail manual page for more
details.
No matter what method you use to get the
CTM deltas, you should subscribe to
the &a.ctm-announce.name; mailing list. In
the future, this will be the only place where announcements
concerning the operations of the
CTM system will be posted. Click
on the list name above and follow the instructions
to subscribe to the
list.
Using CTM for the First
Time
Before you can start using CTM
deltas, you will need to get to a starting point for the deltas
produced subsequently to it.
First you should determine what you already have. Everyone
can start from an empty
directory. You must use
an initial Empty
delta to start off your
CTM supported tree. At some point it
is intended that one of these started
deltas be
distributed on the CD for your convenience, however, this does
not currently happen.
Since the trees are many tens of megabytes, you should
prefer to start from something already at hand. If you have a
-RELEASE CD, you can copy or extract an initial source from it.
This will save a significant transfer of data.
You can recognize these starter
deltas by the
X appended to the number
(src-cur.3210XEmpty.gz for instance). The
designation following the X corresponds to
the origin of your initial seed
.
Empty is an empty directory. As a rule a
base transition from Empty is produced
every 100 deltas. By the way, they are large! 70 to 80
Megabytes of gzip 'd data is common for the
XEmpty deltas.
Once you have picked a base delta to start from, you will also
need all deltas with higher numbers following it.
Using CTM in Your Daily
Life
To apply the deltas, simply say:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM understands deltas which have
been put through gzip , so you do not need to
gunzip them first, this saves disk space.
Unless it feels very secure about the entire process,
CTM will not touch your tree. To
verify a delta you can also use the -c flag and
CTM will not actually touch your
tree; it will merely verify the integrity of the delta and see
if it would apply cleanly to your current tree.
There are other options to CTM
as well, see the manual pages or look in the sources for more
information.
That is really all there is to it. Every time you get a new
delta, just run it through CTM to
keep your sources up to date.
Do not remove the deltas if they are hard to download again.
You just might want to keep them around in case something bad
happens. Even if you only have floppy disks, consider using
fdwrite to make a copy.
Keeping Your Local Changes
As a developer one would like to experiment with and change
files in the source tree. CTM
supports local modifications in a limited way: before checking
for the presence of a file foo , it first
looks for foo.ctm . If this file exists,
CTM will operate on it instead of
foo .
This behavior gives us a simple way to maintain local
changes: simply copy the files you plan to modify to the
corresponding file names with a .ctm
suffix. Then you can freely hack the code, while CTM keeps the
.ctm file up-to-date.
Other Interesting CTM Options
Finding Out Exactly What Would Be Touched by an
Update
You can determine the list of changes that
CTM will make on your source
repository using the -l option to
CTM .
This is useful if you would like to keep logs of the
changes, pre- or post- process the modified files in any
manner, or just are feeling a tad paranoid.
Making Backups Before Updating
Sometimes you may want to backup all the files that would
be changed by a CTM update.
Specifying the -B backup-file option
causes CTM to backup all files that
would be touched by a given CTM
delta to backup-file .
Restricting the Files Touched by an Update
Sometimes you would be interested in restricting the scope
of a given CTM update, or may be
interested in extracting just a few files from a sequence of
deltas.
You can control the list of files that
CTM would operate on by specifying
filtering regular expressions using the -e
and -x options.
For example, to extract an up-to-date copy of
lib/libc/Makefile from your collection of
saved CTM deltas, run the commands:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
For every file specified in a
CTM delta, the -e
and -x options are applied in the order given
on the command line. The file is processed by
CTM only if it is marked as
eligible after all the -e and
-x options are applied to it.
Future Plans for CTM
Tons of them:
Use some kind of authentication into the CTM system, so
as to allow detection of spoofed CTM updates.
Clean up the options to CTM ,
they became confusing and counter intuitive.
Miscellaneous Stuff
There is a sequence of deltas for the
ports collection too, but interest has not
been all that high yet.
CTM Mirrors
CTM/FreeBSD is available via anonymous
FTP from the following mirror sites. If you choose to obtain CTM via
anonymous FTP, please try to use a site near you.
In case of problems, please contact the &a.ctm-users.name;
mailing list.
California, Bay Area, official source
South Africa, backup server for old deltas
Taiwan/R.O.C.
If you did not find a mirror near to you or the mirror is
incomplete, try to use a search engine such as
alltheweb .
Using CVSup
Introduction
CVSup is a software package for
distributing and updating source trees from a master CVS
repository on a remote server host. The FreeBSD sources are
maintained in a CVS repository on a central development machine
in California. With CVSup , FreeBSD
users can easily keep their own source trees up to date.
CVSup uses the so-called
pull model of updating. Under the pull
model, each client asks the server for updates, if and when they
are wanted. The server waits passively for update requests from
its clients. Thus all updates are instigated by the client.
The server never sends unsolicited updates. Users must either
run the CVSup client manually to get
an update, or they must set up a cron job to
run it automatically on a regular basis.
The term CVSup , capitalized just
so, refers to the entire software package. Its main components
are the client cvsup which runs on each
user's machine, and the server cvsupd which
runs at each of the FreeBSD mirror sites.
As you read the FreeBSD documentation and mailing lists, you
may see references to sup .
Sup was the predecessor of
CVSup , and it served a similar
purpose. CVSup is used much in the
same way as sup and, in fact, uses configuration files which are
backward-compatible with sup 's.
Sup is no longer used in the FreeBSD
project, because CVSup is both faster
and more flexible.
Installation
The easiest way to install CVSup
is to use the precompiled net/cvsup package
from the FreeBSD packages collection.
If you prefer to build CVSup from
source, you can use the net/cvsup
port instead. But be forewarned: the
net/cvsup port depends on the Modula-3
system, which takes a substantial amount of time and
disk space to download and build.
If you are going to be using
CVSup on a machine which will not have
&xfree86; or &xorg; installed, such as a server, be
sure to use the port which does not include the
CVSup GUI ,
net/cvsup-without-gui .
CVSup Configuration
CVSup 's operation is controlled
by a configuration file called the supfile .
There are some sample supfiles in the
directory /usr/share/examples/cvsup/ .
The information in a supfile answers
the following questions for CVSup :
Which files do you
want to receive?
Which versions of them
do you want?
Where do you want to
get them from?
Where do you want to
put them on your own machine?
Where do you want to
put your status files?
In the following sections, we will construct a typical
supfile by answering each of these
questions in turn. First, we describe the overall structure of
a supfile .
A supfile is a text file. Comments
begin with # and extend to the end of the
line. Lines that are blank and lines that contain only
comments are ignored.
Each remaining line describes a set of files that the user
wishes to receive. The line begins with the name of a
collection
, a logical grouping of files defined by
the server. The name of the collection tells the server which
files you want. After the collection name come zero or more
fields, separated by white space. These fields answer the
questions listed above. There are two types of fields: flag
fields and value fields. A flag field consists of a keyword
standing alone, e.g., delete or
compress . A value field also begins with a
keyword, but the keyword is followed without intervening white
space by = and a second word. For example,
release=cvs is a value field.
A supfile typically specifies more than
one collection to receive. One way to structure a
supfile is to specify all of the relevant
fields explicitly for each collection. However, that tends to
make the supfile lines quite long, and it
is inconvenient because most fields are the same for all of the
collections in a supfile .
CVSup provides a defaulting mechanism
to avoid these problems. Lines beginning with the special
pseudo-collection name *default can be used
to set flags and values which will be used as defaults for the
subsequent collections in the supfile . A
default value can be overridden for an individual collection, by
specifying a different value with the collection itself.
Defaults can also be changed or augmented in mid-supfile by
additional *default lines.
With this background, we will now proceed to construct a
supfile for receiving and updating the main
source tree of FreeBSD-CURRENT.
Which files do you want
to receive?
The files available via CVSup
are organized into named groups called
collections
. The collections that are
available are described in the following section. In this
example, we
wish to receive the entire main source tree for the FreeBSD
system. There is a single large collection
src-all which will give us all of that.
As a first step toward constructing our
supfile , we
simply list the collections, one per line (in this case,
only one line):
src-all
Which version(s) of them
do you want?
With CVSup , you can receive
virtually any version of the sources that ever existed.
That is possible because the
cvsupd server works directly from
the CVS repository, which contains all of the versions. You
specify which one of them you want using the
tag= and date= value
fields.
Be very careful to specify any tag=
fields correctly. Some tags are valid only for certain
collections of files. If you specify an incorrect or
misspelled tag, CVSup
will delete files which you probably
do not want deleted. In particular, use only
tag=. for the
ports-* collections.
The tag= field names a symbolic tag
in the repository. There are two kinds of tags, revision
tags and branch tags. A revision tag refers to a specific
revision. Its meaning stays the same from day to day. A
branch tag, on the other hand, refers to the latest revision
on a given line of development, at any given time. Because
a branch tag does not refer to a specific revision, it may
mean something different tomorrow than it means
today.
contains branch tags that
users might be interested in. When specifying a tag in
CVSup 's configuration file, it
must be preceded with tag=
(RELENG_4 will become
tag=RELENG_4 ).
Keep in mind that only the tag=. is
relevant for the Ports Collection.
Be very careful to type the tag name exactly as shown.
CVSup cannot distinguish
between valid and invalid tags. If you misspell the tag,
CVSup will behave as though you
had specified a valid tag which happens to refer to no
files at all. It will delete your existing sources in
that case.
When you specify a branch tag, you normally receive the
latest versions of the files on that line of development.
If you wish to receive some past version, you can do so by
specifying a date with the date= value
field. The &man.cvsup.1; manual page explains how to do
that.
For our example, we wish to receive FreeBSD-CURRENT. We
add this line at the beginning of our
supfile :
*default tag=.
There is an important special case that comes into play
if you specify neither a tag= field nor a
date= field. In that case, you receive
the actual RCS files directly from the server's CVS
repository, rather than receiving a particular version.
Developers generally prefer this mode of operation. By
maintaining a copy of the repository itself on their
systems, they gain the ability to browse the revision
histories and examine past versions of files. This gain is
achieved at a large cost in terms of disk space,
however.
Where do you want to get
them from?
We use the host= field to tell
cvsup where to obtain its updates. Any
of the CVSup mirror
sites will do, though you should try to select one
that is close to you in cyberspace. In this example we will
use a fictional FreeBSD distribution site,
cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
You will need to change the host to one that actually
exists before running CVSup .
On any particular run of
cvsup , you can override the host setting
on the command line, with -h
hostname .
Where do you want to put
them on your own machine?
The prefix= field tells
cvsup where to put the files it receives.
In this example, we will put the source files directly into
our main source tree, /usr/src . The
src directory is already implicit in
the collections we have chosen to receive, so this is the
correct specification:
*default prefix=/usr
Where should
cvsup maintain its status files?
The CVSup client maintains
certain status files in what
is called the base
directory. These files
help CVSup to work more
efficiently, by keeping track of which updates you have
already received. We will use the standard base directory,
/var/db :
*default base=/var/db
If your base directory does not already exist, now would
be a good time to create it. The cvsup
client will refuse to run if the base directory does not
exist.
Miscellaneous supfile
settings:
There is one more line of boiler plate that normally
needs to be present in the
supfile :
*default release=cvs delete use-rel-suffix compress
release=cvs indicates that the server
should get its information out of the main FreeBSD CVS
repository. This is virtually always the case, but there
are other possibilities which are beyond the scope of this
discussion.
delete gives
CVSup permission to delete files.
You should always specify this, so that
CVSup can keep your source tree
fully up-to-date. CVSup is
careful to delete only those files for which it is
responsible. Any extra files you happen to have will be
left strictly alone.
use-rel-suffix is ... arcane. If you
really want to know about it, see the &man.cvsup.1; manual
page. Otherwise, just specify it and do not worry about
it.
compress enables the use of
gzip-style compression on the communication channel. If
your network link is T1 speed or faster, you probably should
not use compression. Otherwise, it helps
substantially.
Putting it all together:
Here is the entire supfile for our
example:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
The refuse File
As mentioned above, CVSup uses
a pull method . Basically, this means that
you connect to the CVSup server, and
it says, Here is what you can download from
me...
, and your client responds OK, I will take
this, this, this, and this.
In the default
configuration, the CVSup client will
take every file associated with the collection and tag you
chose in the configuration file. However, this is not always
what you want, especially if you are synching the doc , ports , or
www trees — most people cannot read four or five
languages, and therefore they do not need to download the
language-specific files. If you are
CVSup ing the Ports Collection, you
can get around this by specifying each collection individually
(e.g., ports-astrology ,
ports-biology , etc instead of simply
saying ports-all ). However, since the doc
and www trees do not have language-specific collections, you
must use one of CVSup 's many nifty
features: the refuse file.
The refuse file essentially tells
CVSup that it should not take every
single file from a collection; in other words, it tells the
client to refuse certain files from the
server. The refuse file can be found (or, if you do not yet
have one, should be placed) in
base /sup/ .
base is defined in your supfile ;
our defined base is
/var/db ,
which means that by default the refuse file is
/var/db/sup/refuse .
The refuse file has a very simple format; it simply
contains the names of files or directories that you do not wish
to download. For example, if you cannot speak any languages other
than English and some German, and you do not feel the need to read
the German translation of documentation, you can put the following in your
refuse file:
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
and so forth for the other languages (you can find the
full list by browsing the FreeBSD
CVS repository ).
With this very useful feature, those users who are on
slow links or pay by the minute for their Internet connection
will be able to save valuable time as they will no longer need
to download files that they will never use. For more
information on refuse files and other neat
features of CVSup , please view its
manual page.
Running CVSup
You are now ready to try an update. The command line for
doing this is quite simple:
&prompt.root; cvsup supfile
where supfile
is of course the name of the supfile you have just created.
Assuming you are running under X11, cvsup
will display a GUI window with some buttons to do the usual
things. Press the go button, and watch it
run.
Since you are updating your actual
/usr/src tree in this example, you will
need to run the program as root so that
cvsup has the permissions it needs to update
your files. Having just created your configuration file, and
having never used this program before, that might
understandably make you nervous. There is an easy way to do a
trial run without touching your precious files. Just create an
empty directory somewhere convenient, and name it as an extra
argument on the command line:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
The directory you specify will be used as the destination
directory for all file updates.
CVSup will examine your usual files
in /usr/src , but it will not modify or
delete any of them. Any file updates will instead land in
/var/tmp/dest/usr/src .
CVSup will also leave its base
directory status files untouched when run this way. The new
versions of those files will be written into the specified
directory. As long as you have read access to
/usr/src , you do not even need to be
root to perform this kind of trial run.
If you are not running X11 or if you just do not like GUIs,
you should add a couple of options to the command line when you
run cvsup :
&prompt.root; cvsup -g -L 2 supfile
The -g tells
CVSup not to use its GUI. This is
automatic if you are not running X11, but otherwise you have to
specify it.
The -L 2 tells
CVSup to print out the
details of all the file updates it is doing. There are three
levels of verbosity, from -L 0 to
-L 2 . The default is 0, which means total
silence except for error messages.
There are plenty of other options available. For a brief
list of them, type cvsup -H . For more
detailed descriptions, see the manual page.
Once you are satisfied with the way updates are working, you
can arrange for regular runs of CVSup
using &man.cron.8;.
Obviously, you should not let CVSup
use its GUI when running it from &man.cron.8;.
CVSup File Collections
The file collections available via
CVSup are organized hierarchically.
There are a few large collections, and they are divided into
smaller sub-collections. Receiving a large collection is
equivalent to receiving each of its sub-collections. The
hierarchical relationships among collections are reflected by
the use of indentation in the list below.
The most commonly used collections are
src-all , and
ports-all . The other collections are used
only by small groups of people for specialized purposes, and
some mirror sites may not carry all of them.
cvs-all release=cvs
The main FreeBSD CVS repository, including the
cryptography code.
distrib release=cvs
Files related to the distribution and mirroring
of FreeBSD.
doc-all release=cvs
Sources for the FreeBSD Handbook and other
documentation. This does not include files for
the FreeBSD web site.
ports-all release=cvs
The FreeBSD Ports Collection.
If you do not want to update the whole of
ports-all (the whole ports tree),
but use one of the subcollections listed below,
make sure that you always update
the ports-base subcollection!
Whenever something changes in the ports build
infrastructure represented by
ports-base , it is virtually certain
that those changes will be used by real
ports real soon. Thus, if you only update the
real
ports and they use some of the new
features, there is a very high chance that their build
will fail with some mysterious error message. The
very first thing to do in this
case is to make sure that your
ports-base subcollection is up to
date.
If you are going to be building your own local
copy of ports/INDEX , you
must accept
ports-all (the whole ports tree).
Building ports/INDEX with
a partial tree is not supported. See the
FAQ .
ports-accessibility
release=cvs
Software to help disabled users.
ports-arabic
release=cvs
Arabic language support.
ports-archivers
release=cvs
Archiving tools.
ports-astro
release=cvs
Astronomical ports.
ports-audio
release=cvs
Sound support.
ports-base
release=cvs
The Ports Collection build infrastructure -
various files located in the
Mk/ and
Tools/ subdirectories of
/usr/ports .
Please see the important
warning above: you should
always update this
subcollection, whenever you update any part of
the FreeBSD Ports Collection!
ports-benchmarks
release=cvs
Benchmarks.
ports-biology
release=cvs
Biology.
ports-cad
release=cvs
Computer aided design tools.
ports-chinese
release=cvs
Chinese language support.
ports-comms
release=cvs
Communication software.
ports-converters
release=cvs
character code converters.
ports-databases
release=cvs
Databases.
ports-deskutils
release=cvs
Things that used to be on the desktop
before computers were invented.
ports-devel
release=cvs
Development utilities.
ports-dns
release=cvs
DNS related software.
ports-editors
release=cvs
Editors.
ports-emulators
release=cvs
Emulators for other operating
systems.
ports-finance
release=cvs
Monetary, financial and related applications.
ports-ftp
release=cvs
FTP client and server utilities.
ports-games
release=cvs
Games.
ports-german
release=cvs
German language support.
ports-graphics
release=cvs
Graphics utilities.
ports-hebrew
release=cvs
Hebrew language support.
ports-hungarian
release=cvs
Hungarian language support.
ports-irc
release=cvs
Internet Relay Chat utilities.
ports-japanese
release=cvs
Japanese language support.
ports-java
release=cvs
&java; utilities.
ports-korean
release=cvs
Korean language support.
ports-lang
release=cvs
Programming languages.
ports-mail
release=cvs
Mail software.
ports-math
release=cvs
Numerical computation software.
ports-mbone
release=cvs
MBone applications.
ports-misc
release=cvs
Miscellaneous utilities.
ports-multimedia
release=cvs
Multimedia software.
ports-net
release=cvs
Networking software.
ports-net-im
release=cvs
Instant messaging software.
ports-net-mgmt
release=cvs
Network management software.
ports-net-p2p
release=cvs
Peer to peer networking.
ports-news
release=cvs
USENET news software.
ports-palm
release=cvs
Software support for Palm
series.
ports-polish
release=cvs
Polish language support.
ports-portuguese
release=cvs
Portuguese language support.
ports-print
release=cvs
Printing software.
ports-russian
release=cvs
Russian language support.
ports-science
release=cvs
Science.
ports-security
release=cvs
Security utilities.
ports-shells
release=cvs
Command line shells.
ports-sysutils
release=cvs
System utilities.
ports-textproc
release=cvs
text processing utilities (does not
include desktop publishing).
ports-ukrainian
release=cvs
Ukrainian language support.
ports-vietnamese
release=cvs
Vietnamese language support.
ports-www
release=cvs
Software related to the World Wide
Web.
ports-x11
release=cvs
Ports to support the X window
system.
ports-x11-clocks
release=cvs
X11 clocks.
ports-x11-fm
release=cvs
X11 file managers.
ports-x11-fonts
release=cvs
X11 fonts and font utilities.
ports-x11-toolkits
release=cvs
X11 toolkits.
ports-x11-servers
release=cvs
X11 servers.
ports-x11-themes
release=cvs
X11 themes.
ports-x11-wm
release=cvs
X11 window managers.
projects-all release=cvs
Sources for the FreeBSD projects repository.
src-all release=cvs
The main FreeBSD sources, including the
cryptography code.
src-base
release=cvs
Miscellaneous files at the top of
/usr/src .
src-bin
release=cvs
User utilities that may be needed in
single-user mode
(/usr/src/bin ).
src-contrib
release=cvs
Utilities and libraries from outside the
FreeBSD project, used relatively unmodified
(/usr/src/contrib ).
src-crypto release=cvs
Cryptography utilities and libraries from
outside the FreeBSD project, used relatively
unmodified
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos and DES
(/usr/src/eBones ). Not
used in current releases of FreeBSD.
src-etc
release=cvs
System configuration files
(/usr/src/etc ).
src-games
release=cvs
Games
(/usr/src/games ).
src-gnu
release=cvs
Utilities covered by the GNU Public
License (/usr/src/gnu ).
src-include
release=cvs
Header files
(/usr/src/include ).
src-kerberos5
release=cvs
Kerberos5 security package
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
KerberosIV security package
(/usr/src/kerberosIV ).
src-lib
release=cvs
Libraries
(/usr/src/lib ).
src-libexec
release=cvs
System programs normally executed by other
programs
(/usr/src/libexec ).
src-release
release=cvs
Files required to produce a FreeBSD
release
(/usr/src/release ).
src-sbin release=cvs
System utilities for single-user mode
(/usr/src/sbin ).
src-secure
release=cvs
Cryptographic libraries and commands
(/usr/src/secure ).
src-share
release=cvs
Files that can be shared across multiple
systems
(/usr/src/share ).
src-sys
release=cvs
The kernel
(/usr/src/sys ).
src-sys-crypto
release=cvs
Kernel cryptography code
(/usr/src/sys/crypto ).
src-tools
release=cvs
Various tools for the maintenance of
FreeBSD
(/usr/src/tools ).
src-usrbin
release=cvs
User utilities
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
System utilities
(/usr/src/usr.sbin ).
www release=cvs
The sources for the FreeBSD WWW site.
distrib release=self
The CVSup server's own
configuration files. Used by CVSup
mirror sites.
gnats release=current
The GNATS bug-tracking database.
mail-archive release=current
FreeBSD mailing list archive.
www release=current
The pre-processed FreeBSD WWW site files (not the
source files). Used by WWW mirror sites.
For More Information
For the CVSup FAQ and other
information about CVSup , see
The
CVSup Home Page .
Most FreeBSD-related discussion of
CVSup takes place on the
&a.hackers;. New versions of the software are announced there,
as well as on the &a.announce;.
Questions and bug reports should be addressed to the author
of the program at cvsup-bugs@polstra.com .
CVSup Sites
CVSup servers for FreeBSD are running
at the following sites:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
Using Portsnap
Introduction
Portsnap is a system for securely
distributing the &os; ports tree. Approximately once an hour,
a snapshot
of the ports tree is generated,
repackaged, and cryptographically signed. The resulting files
are then distributed via HTTP.
Like CVSup ,
Portsnap uses a
pull model of updating: The packaged and
signed ports trees are placed on a web server which waits
passively for clients to request files. Users must either run
&man.portsnap.8; manually to download updates
or set up a &man.cron.8; job to download updates
automatically on a regular basis.
For technical reasons, Portsnap
does not update the live
ports tree in
/usr/ports/ directly; instead, it works
via a compressed copy of the ports tree stored in
/var/db/portsnap/ by default. This
compressed copy is then used to update the live ports tree.
If Portsnap is installed from
the &os; Ports Collection, then the default location for its
compressed snapshot will be /usr/local/portsnap/
instead of /var/db/portsnap/ .
Installation
On &os; 6.0 and more recent versions,
Portsnap is contained in the &os;
base system. On older versions of &os;, it can be installed
using the sysutils/portsnap
port.
Portsnap Configuration
Portsnap 's operation is controlled
by the /etc/portsnap.conf configuration
file. For most users, the default configuration file will
suffice; for more details, consult the &man.portsnap.conf.5;
manual page.
If Portsnap is installed from
the &os; Ports Collection, it will use the configuration file
/usr/local/etc/portsnap.conf instead of
/etc/portsnap.conf . This configuration
file is not created when the port is installed, but a sample
configuration file is distributed; to copy it into place, run
the following command:
&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf
Running Portsnap for the First
Time
The first time &man.portsnap.8; is run,
it will need to download a compressed snapshot of the entire
ports tree into /var/db/portsnap/ (or
/usr/local/portsnap/ if
Portsnap was installed from the
Ports Collection). For the beginning of 2006 this is approximately a 41 MB
download.
&prompt.root; portsnap fetch
Once the compressed snapshot has been downloaded, a
live
copy of the ports tree can be extracted into
/usr/ports/ . This is necessary even if a
ports tree has already been created in that directory (e.g., by
using CVSup ), since it establishes a
baseline from which portsnap can
determine which parts of the ports tree need to be updated
later.
&prompt.root; portsnap extract
In the default installation
/usr/ports is not
created. If you run &os; 6.0-RELEASE, it should be created before
portsnap is used. On more recent
versions of &os; or Portsnap ,
this operation will be done automatically at first use
of the portsnap command.
Updating the Ports Tree
After an initial compressed snapshot of the ports tree has
been downloaded and extracted into /usr/ports/ ,
updating the ports tree consists of two steps:
fetch ing updates to the compressed
snapshot, and using them to update the
live ports tree. These two steps can be specified to
portsnap as a single command:
&prompt.root; portsnap fetch update
Some older versions of portsnap
do not support this syntax; if it fails, try instead the
following:
&prompt.root; portsnap fetch
&prompt.root; portsnap update
Running Portsnap from cron
In order to avoid problems with flash crowds
accessing the Portsnap servers,
portsnap fetch will not run from
a &man.cron.8; job. Instead, a special
portsnap cron command exists, which
waits for a random duration up to 3600 seconds before fetching
updates.
In addition, it is strongly recommended that
portsnap update not be run from a
cron job, since it is liable to cause
major problems if it happens to run at the same time as a port
is being built or installed. However, it is safe to update
the ports' INDEX files, and this can be done by passing the
-I flag to
portsnap . (Obviously, if
portsnap -I update is run from
cron , then it will be necessary to run
portsnap update without the -I
flag at a later time in order to update the rest of the tree.)
Adding the following line to /etc/crontab
will cause portsnap to update its
compressed snapshot and the INDEX files in
/usr/ports/ , and will send an email if any
installed ports are out of date:
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
If the system clock is not set to the local time zone,
please replace 3 with a random
value between 0 and 23, in order to spread the load on the
Portsnap servers more evenly.
Some older versions of portsnap
do not support listing multiple commands (e.g., cron update )
in the same invocation of portsnap . If
the line above fails, try replacing
portsnap -I cron update with
portsnap cron && portsnap -I update .
CVS Tags
When obtaining or updating sources using
cvs or
CVSup , a revision tag must be specified.
A revision tag refers to either a particular line of &os;
development, or a specific point in time. The first type are called
branch tags
, and the second type are called
release tags
.
Branch Tags
All of these, with the exception of HEAD (which
is always a valid tag), only apply to the src/
tree. The ports/ , doc/ , and
www/ trees are not branched.
HEAD
Symbolic name for the main line, or FreeBSD-CURRENT.
Also the default when no revision is specified.
In CVSup , this tag is represented
by a . (not punctuation, but a literal
. character).
In CVS, this is the default when no revision tag is
specified. It is usually not
a good idea to checkout or update to CURRENT sources
on a STABLE machine, unless that is your intent.
RELENG_6
The line of development for FreeBSD-6.X, also known
as FreeBSD 6-STABLE
RELENG_6_1
The release branch for FreeBSD-6.1, used only for
security advisories and other critical fixes.
RELENG_6_0
The release branch for FreeBSD-6.0, used only for
security advisories and other critical fixes.
RELENG_5
The line of development for FreeBSD-5.X, also known
as FreeBSD 5-STABLE.
RELENG_5_5
The release branch for FreeBSD-5.5, used only
for security advisories and other critical fixes.
RELENG_5_4
The release branch for FreeBSD-5.4, used only
for security advisories and other critical fixes.
RELENG_5_3
The release branch for FreeBSD-5.3, used only
for security advisories and other critical fixes.
RELENG_5_2
The release branch for FreeBSD-5.2 and FreeBSD-5.2.1, used only
for security advisories and other critical fixes.
RELENG_5_1
The release branch for FreeBSD-5.1, used only
for security advisories and other critical fixes.
RELENG_5_0
The release branch for FreeBSD-5.0, used only
for security advisories and other critical fixes.
RELENG_4
The line of development for FreeBSD-4.X, also known
as FreeBSD 4-STABLE.
RELENG_4_11
The release branch for FreeBSD-4.11, used only
for security advisories and other critical fixes.
RELENG_4_10
The release branch for FreeBSD-4.10, used only
for security advisories and other critical fixes.
RELENG_4_9
The release branch for FreeBSD-4.9, used only
for security advisories and other critical fixes.
RELENG_4_8
The release branch for FreeBSD-4.8, used only
for security advisories and other critical fixes.
RELENG_4_7
The release branch for FreeBSD-4.7, used only
for security advisories and other critical fixes.
RELENG_4_6
The release branch for FreeBSD-4.6 and FreeBSD-4.6.2,
used only for security advisories and other
critical fixes.
RELENG_4_5
The release branch for FreeBSD-4.5, used only
for security advisories and other critical fixes.
RELENG_4_4
The release branch for FreeBSD-4.4, used only
for security advisories and other critical fixes.
RELENG_4_3
The release branch for FreeBSD-4.3, used only
for security advisories and other critical fixes.
RELENG_3
The line of development for FreeBSD-3.X, also known
as 3.X-STABLE.
RELENG_2_2
The line of development for FreeBSD-2.2.X, also known
as 2.2-STABLE. This branch is mostly obsolete.
Release Tags
These tags refer to a specific point in time when a particular
version of &os; was released. The release engineering process is
documented in more detail by the
Release Engineering
Information and
Release
Process documents.
The src tree uses tag names that
start with RELENG_ tags.
The ports and
doc trees use tags whose names
begin with RELEASE tags.
Finally, the www tree is not
tagged with any special name for releases.
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
AFS Sites
AFS servers for FreeBSD are running at the following sites:
Sweden
The path to the files are:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Maintainer ftp@stacken.kth.se
rsync Sites
The following sites make FreeBSD available through the rsync
protocol. The rsync utility works in
much the same way as the &man.rcp.1; command,
but has more options and uses the rsync remote-update protocol
which transfers only the differences between two sets of files,
thus greatly speeding up the synchronization over the network.
This is most useful if you are a mirror site for the
FreeBSD FTP server, or the CVS repository. The
rsync suite is available for many
operating systems, on FreeBSD, see the
net/rsync
port or use the package.
Czech Republic
rsync://ftp.cz.FreeBSD.org/
Available collections:
ftp: A partial mirror of the FreeBSD FTP
server.
FreeBSD: A full mirror of the FreeBSD FTP
server.
Germany
rsync://grappa.unix-ag.uni-kl.de/
Available collections:
freebsd-cvs: The full FreeBSD CVS
repository.
This machine also mirrors the CVS repositories of the
NetBSD and the OpenBSD projects, among others.
Netherlands
rsync://ftp.nl.FreeBSD.org/
Available collections:
vol/4/freebsd-core: A full mirror of the
FreeBSD FTP server.
United Kingdom
rsync://rsync.mirror.ac.uk/
Available collections:
ftp.FreeBSD.org: A full mirror of the
FreeBSD FTP server.
United States of America
rsync://ftp-master.FreeBSD.org/
This server may only be used by FreeBSD primary mirror
sites.
Available collections:
FreeBSD: The master archive of the FreeBSD
FTP server.
acl: The FreeBSD master ACL
list.
rsync://ftp13.FreeBSD.org/
Available collections:
FreeBSD: A full mirror of the FreeBSD FTP
server.
diff --git a/pt_BR.ISO8859-1/articles/contributing/article.xml b/pt_BR.ISO8859-1/articles/contributing/article.xml
index 24b79be194..f188e6698d 100644
--- a/pt_BR.ISO8859-1/articles/contributing/article.xml
+++ b/pt_BR.ISO8859-1/articles/contributing/article.xml
@@ -1,690 +1,690 @@
Contribuindo para o FreeBSD
Este artigo descreve as diferentes maneiras pelas quais um
indivíduo ou uma organização podem
contribuir com o projeto FreeBSD.
Jordan
Hubbard
Colaboração de
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
Contribuindo
Então você quer contribuir com o FreeBSD? Isso
é ótimo! O FreeBSD depende das
contribuições da sua base de usuários para
sobreviver. Suas contribuições não
são apenas apreciadas, elas são vitais para que o
FreeBSD continue crescendo.
Ao contrário do que algumas pessoas podem tentar
fazê-lo acreditar, você não precisa ser um
programador super experiente ou amigo pessoal de um membro do
Core Team do FreeBSD para ter suas
contribuições aceitas. Um grande e crescente
número de colaboradores internacionais, de idades e de
áreas técnicas extremamente variadas desenvolvem o
FreeBSD. Há sempre mais trabalho a ser realizado do que
pessoas disponíveis para fazê-lo. Toda e qualquer
ajuda é sempre bem vinda.
O projeto FreeBSD é responsável por todo um
sistema operacional, ou seja, é responsável por
muito mais que apenas um kernel ou alguns
utilitários dispersos. Da forma como está, o nosso
TODO , possui tarefas em uma escala muito
ampla: da documentação, da realização
de beta testes e de apresentação, ao instalador do
sistema e desenvolvimento altamente especializado de componentes
para o kernel . Pessoas de todos os
níveis de habilidade, de qualquer área
técnica, certamente podem ajudar o projeto de alguma
forma.
As instituições comerciais envolvidas em
projetos relacionados ao FreeBSD; também, são
encorajadas a nos contatar. Você necessita de uma
extensão especial para fazer seu produto funcionar?
Você irá nos encontrar receptivos aos seus pedidos,
desde que eles não sejam demasiadamente descabidos.
Você está trabalhando em um produto que agrega valor
ao sistema? Por favor, deixe-nos saber! Nós talvez
possamos trabalhar em conjunto em algum aspecto dele. O mundo do
software livre desafia muitos dos
conceitos existentes sobre como um
software é desenvolvido,
vendido e mantido; e, nós o incitamos a dar ao menos uma
segunda olhada.
O que é necessário?
A seguinte lista de tarefas e sub-projetos representa uma
amálgama de várias listas de
TODO e solicitações enviadas
por usuários.
Tarefas em execução por
não-programadores.
Muitas das pessoas que estão envolvidas com o
FreeBSD não são programadores. O projeto inclui
autores de documentação, Web
designers , e pessoal de suporte. Tudo o que estas
pessoas precisam para contribuir é algum tempo livre
para investir e vontade de aprender.
Leia o FAQ e &a.ptbr.p.handbook;
periodicamente. Se algo estiver mal explicado,
desatualizado ou mesmo completamente errado; por favor,
deixe-nos saber. Ou melhor, envie-nos uma
correção. (Docbook não é
difícil de aprender, mas não há
nenhuma objeção à submissões
em formato ASCII).
Ajude a traduzir a documentação do
FreeBSD para a sua língua nativa. Se a
documentação já existir no seu
idioma, você pode ajudar a traduzir novos documentos
ou verificar se as traduções existentes
estão atualizadas. Primeiro, verifique o FAQ sobre
traduções no &a.ptbr.p.fdpp;.
Você não estará se comprometendo a
traduzir todos os documentos do FreeBSD fazendo isto
— como um voluntário, você pode
traduzir muitos ou poucos documentos, quantos desejar.
Uma vez que alguém começa a traduzir, outros
quase sempre se juntam ao esforço. Se você
somente tiver tempo livre ou energia para traduzir uma
pequena parte da documentação; por favor,
traduza as instruções de
instalação.
Leia a &a.questions; e o &ng.misc; ocasionalmente (ou
regularmente se possível). Pode ser muito
recompensador compartilhar a sua experiência e
ajudar outras pessoas a resolverem seus problemas; Muitas
vezes apenas este processo o levará à
aprender coisas! Estes fóruns também podem
ser uma fonte de idéias para assuntos aos quais se
dedicar.
Tarefas em execução por
programadores
A maioria das tarefas listadas aqui requerem um
investimento considerável de tempo ou conhecimento
profundo do kernel do FreeBSD; ou, ambos. Entretanto,
também existem muitas tarefas úteis que
são apropriadas para os hackers de final de
semana
.
Se você executar o FreeBSD-CURRENT e tiver uma
boa conexão Internet, existe uma máquina
current.FreeBSD.org que
produz um lançamento
(release ) completo uma vez
por dia — tente instalar diariamente o
lançamento mais recente gerado e relate todas as
falhas encontradas no processo.
Leia a &a.bugs;. Pode existir um problema o qual
você possa comentar construtivamente ou mesmo uma
correção que possa testar. Ou, você
pode ainda tentar reparar um dos problemas sozinho.
Se você souber de qualquer problema que tenha
sido corrigido com sucesso no -CURRENT
e cuja correção não tenha sido
aplicada ao -STABLE após um
intervalo razoável de tempo (normalmente algumas
semanas), envie ao
committer um lembrete
educado.
Mova as contribuições de
software para
src/contrib
na árvore do código fonte.
Tenha certeza que o código disponível em
src/contrib
está atualizado.
Compile o sistema (ou apenas uma parte dele) com
warnings extras habilitados e remova os
warnings .
Corrija warnings de
ports que ainda fazem coisas
ultrapassadas tais como utilizar
gets() ou incluir
malloc.h .
Se você contribuiu com algum dos
ports , e teve que fazer alguma
mudança específica para o &os;, envie suas
correções de volta aos autores originais
(isto tornará sua vida mais fácil quando
eles lançarem a próxima
versão).
Consiga cópias de padrões formais tais
como &posix;. Você pode obter alguns
links sobre estes
padrões no sítio www FreeBSD
C99 & Projeto de Conformidade com Padrões
Posix . Compare o comportamento do FreeBSD
àquele requerido pelo padrão. Se o
comportamento diferir, particularmente em pontos sutis ou
obscuros da especificação, envie-nos um
PR sobre ele. Se você for capaz,
descubra como corrigi-lo e inclua um
patch em seu PR . Se
você acredita que o padrão está
errado, peça ao comitê de padrões que
considere a pergunta.
Sugira novas tarefas para esta lista!
Trabalhe no banco de dados de PR
(relatório de problemas)
base de dados de relatórios de
problemas
A Lista
de PRs do FreeBSD mostra todos os
relatórios de problemas ativos no momento e os pedidos
de melhoria que foram submetidos pelos usuários do
FreeBSD. O banco de dados inclui tarefas para programadores e
para não-programadores. Consulte os
PRs abertos, e veja se algum deles é
de seu interesse. Alguns deles podem ser tarefas muito
simples que necessitam apenas que um par extra de olhos olhe
para eles e confirme que a correção proposta
funciona. Outros podem ser muito mais complexos, ou podem nem
ter vindo com uma correção.
Comece com os PR s que ainda não
foram atribuídos a ninguém. Se um
PR estiver atribuído a outra pessoa,
mas se parecer com algo que você possa cuidar, envie um
e-mail para a pessoa encarregada do mesmo e pergunte se
você pode trabalhar nele — ele pode já ter
um patch pronto para ser testado, ou
você pode discutir novas idéias com ele.
Escolha um dos itens da página de
idéias
A lista de
projetos do &os; e de idéias para voluntários
também está disponível para as pessoas
dispostas a contribuir com o projeto &os;. A lista é
atualizada regularmente e contém itens sobre cada projeto
para programadores e para não programadores.
Como contribuir
Contribuições para o sistema geralmente caem
em uma ou mais das seguintes 5 categorias:
Relatórios de Erro e Comentários em
Geral
Uma idéia ou sugestão técnica de
interesse geral deve ser enviada para a
&a.hackers;. Da mesma forma, pessoas com interesse neste tipo
de assunto (e uma tolerância para um
alto volume de mensagens!), devem se
inscrever na &a.hackers;. Consulte o &a.ptbr.p.handbook;
para maiores informações sobre esta e outras
listas de discussão.
Se você encontrar um erro ou estiver enviando uma
alteração específica; por favor,
faça o relatório utilizando o programa
&man.send-pr.1; ou a sua interface WWW
equivalente . A não ser que ele exceda 65KB,
inclua qualquer patch diretamente no
relatório. Se o patch é
destinado a ser aplicado na árvore de código,
coloque a palavra [PATCH] na sinópse
do relatório. Quando incluir um
patch , não o
faça utilizando copiar-e-colar porque ao copiar-e-colar
os tabs serão convertidos para
espaços, e tornará o patch
inutilizável. Quando os patches
forem muito maiores que 20KB, considere a possibilidade de
comprimi-los (por ex. usando &man.gzip.1; or &man.bzip2.1;) e
utilize o &man.uuencode.1; para incluir a versão
compactada no seu relatório de problema.
Depois de enviar o relatório, voce deve receber uma
confirmação junto com um número de
registro. Guarde este número de registro, de forma que
você possa nos manter atualizados sobre o seu problema
enviando um e-mail para &a.bugfollowup;. Coloque o
número no assunto da mensagem, por ex. "Re:
kern/3377" . Informações adicionais
sobre qualquer relatório de problema
(Problem Report ) devem ser
submetidas desta forma.
Se você não receber a
confirmação em prazo razoável (3 dias a 1
semana, dependendo da sua conexão de e-mail), ou
está por alguma razão impossibilitado de
utilizar o comando &man.send-pr.1; ; então, você
pode pedir que alguém o envie para você enviando
e-mail para &a.bugs;.
Consulte também este
artigo sobre como escrever um bom relatório
de problema.
Alterações na
Documentação
Envio de documentação
Alterações na documentação
são administradas pela &a.doc;. Por favor, verifique o
&a.ptbr.p.fdpp;
para obter instruções detalhadas. Envie suas
colaborações e alterações
(inclusive as pequenas são bem vindas!) usando o
&man.send-pr.1; como descrito no Relatórios de Erro e
Comentários em Geral.
Alterações no Código Fonte
Existente
FreeBSD-CURRENT
Uma adição ou alteração ao
código fonte existente é um caso um pouco mais
complicado e depende muito de quão desatualizado
você está em relação ao estado
atual de desenvolvimento do FreeBSD. Existe um
lançamento (release )
especial em andamento do FreeBSD conhecido como
FreeBSD-CURRENT
o qual é disponibilizado
em uma grande variedade de formas para a comodidade dos
desenvolvedores que trabalham ativamente no sistema. Consulte
o &a.ptbr.p.handbook;
para maiores informações sobre como obter e
utilizar o FreeBSD-CURRENT.
Trabalhar com versões antigas do código,
infelizmente, muitas vezes significa que as suas
alterações serão demasiadamente obsoletas
ou muito divergentes para possibilitar uma fácil
re-integração ao FreeBSD. As possibilidades de
que isso ocorra podem ser minimizadas um pouco através
da sua inscrição nas listas &a.announce; e
&a.current;, nas quais as discussões sobre o estado
atual do sistema ocorrem.
Supondo que você consiga obter acesso à
código fonte do sistema razoavelmente atualizado para
basear as suas alterações nele, o próximo
passo é produzir um conjunto de
diffs para enviar aos mantenedores do
FreeBSD. Isto é feito com o comando
&man.diff.1;.
O formato preferido do &man.diff.1; para enviar um
patch , é o formato de saída
unificada gerado por diff -u .
diff
&prompt.user; diff -u oldfile newfile
ou
&prompt.user; diff -u -r -N olddir newdir
deverá gerar um conjunto de diffs
unificados para o arquivo de origem informado ou hierarquia de
diretórios.
Consulte o manual do &man.diff.1; para maiores
informações.
Uma vez que você tenha o conjunto de
diffs (os quais você pode testar com
o comando &man.patch.1;), você deve submetê-los
para inclusão no FreeBSD. Utilize o comando
&man.send-pr.1; como descrito no Relatórios de Erro e
Comentários em Geral.
Não envie os
diffs apenas para a &a.hackers; ou eles
serão perdidos! Nós apreciamos extremamente a
sua submissão (este é um projeto
voluntário!); porque nós somos ocupados,
nós podemos não ter como tratá-la
imediatamente, mas ela permanecerá em nosso bando de
dados de PRs até que nós o
façamos. Marque a sua submissão incluindo a
palavra [PATCH] na sinópse do
relatório.
uuencode
Se você sentir que é apropriado (por ex.
você adicionou, deletou ou renomeou arquivos), empacote
as suas mudanças em um arquivo tar e
execute o programa &man.uuencode.1; nele. Arquivos criados
com o &man.shar.1; também são bem vindos.
Se suas mudanças são de uma natureza
potencialmente sensível, tais como você
estar inseguro sob quais políticas de direito
autoral as novas versões serão
distribuídas, então você deve enviá-las
diretamente para o &a.core; ao invés de
submetê-las com o &man.send-pr.1;. O &a.core; é formado
por um grupo muito pequeno de pessoas as quais
cuidam de muitas das tarefas diárias de administração do
projeto &os;. Observe que este grupo também é muito
ocupado e portanto você só deve enviar
um e-mail a eles se for realmente necessário.
Por favor, consulte a &man.intro.9; e a &man.style.9; para
obter alguma informação sobre o estilo de
codificação. Nós apreciaríamos se
você estivesse ao menos ciente destas
informações antes de submeter o seu
código.
Código Novo ou Pacotes Principais de Valor
Adicional (Major Value-Added
Packages )
No caso de uma contribuição significativa de
um trabalho de grande porte, ou a adição de uma
nova característica importante ao FreeBSD, torna-se
quase sempre necessário que se envie as
alterações em um arquivo tar
uuencoded ou então que se faça o
upload das mesmas para um
servidor WWW ou FTP para que as outras pessoas possam
acessá-las. Se você não possui acesso a
um servidor WWW ou FTP, pergunte em uma lista de
discussão apropriada do FreeBSD se alguém pode
hospedar essas alterações para
você.
Quando se trabalha com grandes quantidades de
código, o sensível assunto de direitos autorais
invariavelmente vem a tona. Os direitos autorais aceitos para
os códigos incluídos no FreeBSD
são:
Licensa BSD
Os direitos autorais BSD. Este tipo de licensa
é a mais preferível devido a sua natureza
não restritiva
e pela sua afinidade
com iniciativas comerciais. Longe de desencorajar o uso
comercial, o Projeto FreeBSD encoraja ativamente tais
participações, uma vez que estes interesses
comerciais podem eventualmente se converter em
investimentos no próprio FreeBSD.
GPL GNU General Public License
Licença Pública Geral GNU
(GNU General Public
License )
A licensa pública geral GNU, ou
GPL
. Esta licensa não é
tão popular conosco, devido aos esforços
extras que exigem de qualquer pessoa que venha a utilizar
o código com finalidades comerciais, mas dada a
grande quantidade de código GPL que nós
necessitamos atualmente (compilador, montador assembler,
formatador de texto, etc) seria tolice recusar
contribuições adicionais sob esta licensa.
O código sob a GPL também vai para uma parte
diferente da árvore, mais especificamente para
/sys/gnu ou
/usr/src/gnu , de
forma que é muito fácil
identificá-lo para qualquer um que a GPL
representa um problema.
As contribuições que vêm sob qualquer
outro tipo de licensa devem ser cuidadosamente revisadas antes
de sua inclusão no FreeBSD ser considerada.
Contribuições com algum tipo de
restrição particular ao seu uso comercial
são geralmente rejeitadas, embora os autores sejam
sempre incentivados a tornarem tais alteração
disponíveis por meio de canais próprios.
Para colocar o seu trabalho sob licensa
estilo-BSD
, inclua o texto abaixo no
início de cada um dos arquivos que você deseja
proteger, substituindo o texto entre %% com
as informações apropriadas:
Copyright (c) %%proper_years_here%%
%%your_name_here%%, %%your_state%% %%your_zip%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$&os;$
Para a sua comodidade, uma cópia deste texto pode
ser encontrada em
/usr/share/examples/etc/bsd-style-copyright
.
Dinheiro, Hardware ou Acesso Internet
Nós ficamos sempre muito felizes em aceitar
doações para agregar a causa do Projeto FreeBSD,
em um esforço voluntário como o nosso, um pouco
pode significar muito! Doações de
hardware também
são muito importantes para expandir a nossa lista de
periféricos suportados, uma vez que normalmente
não temos recursos para comprar estes ítens
nós mesmos.
-
- Doando Dinheiro
+
+ Doando Dinheiro
A Fundação FreeBSD é uma entidade
sem fins lucrativos e isenta de impostos, estabelecida com o
objetivo de promover os objetivos do Projeto FreeBSD. Como
uma entidade 501(c)3, a fundação é
isenta de recolher as taxas do governo federal, bem como as
do Estado do Colorado. As doações para uma
entidade isenta de impostos são freqüentemente
dedutíveis dos impostos federais.
As doações podem ser enviadas
através de cheques para:
The FreeBSD Foundation
7321 Brockway Dr.
Boulder ,
CO , 80303
USA
A Fundação FreeBSD é agora capaz de
receber doações através da web com o
PayPal. Para fazer uma doação; por favor,
visite o sítio
www da Fundação.
Maiores informações sobre a
Fundação FreeBSD podem ser obtidas no
documento A
Fundação FreeBSD - Uma
introdução . Para contatar a
Fundação por e-mail, escreva para
bod@FreeBSDFoundation.org .
Doando Hardware
doacões
O projeto de FreeBSD aceita alegremente
doações de
hardware para as quais pode
encontrar bom uso. Se voce estiver interessado em doar
componentes de hardware ; por
favor, contate o
Escritório de
Relacionamento com Doadores .
diff --git a/pt_BR.ISO8859-1/books/handbook/mirrors/chapter.xml b/pt_BR.ISO8859-1/books/handbook/mirrors/chapter.xml
index 4bd27c8e3e..7217ca07fe 100644
--- a/pt_BR.ISO8859-1/books/handbook/mirrors/chapter.xml
+++ b/pt_BR.ISO8859-1/books/handbook/mirrors/chapter.xml
@@ -1,4342 +1,4342 @@
Obtendo FreeBSD
Publicadores de CDROM
Vendem box sets no
varejo
FreeBSD está disponível em formato
box set (CDs do FreeBSD,
programas adicionais, e documentação impressa) a
partir de vários revendedores:
CompUSA
WWW: http://www.compusa.com/
Frys Electronics
WWW: http://www.frys.com/
Micro Center
WWW: http://www.microcenter.com/
Conjunto de CDs
Conjuntos de CDs de FreeBSD estão
disponíveis a partir de vários revendedores
on-line:
Daemon News
2672 Bayshore Parkway, Suite 610
Mountain View , CA 94043
USA
Phone: +1 650 694-4949
Email: sales@daemonnews.org
WWW: http://www.bsdmall.com/
Wind River Systems
500 Wind River Way
Alameda , CA 94501
USA
Phone: +1 510 749-2872
WWW: http://www.freebsdmall.com/
Distribuidores
Se você é um revendedor e deseja distribuir
produtos FreeBSD em CDROM, por favor contate um
distribuidor:
Cylogistics
2672 Bayshore Parkway, Suite 610
Mountain View , CA 94043
USA
Phone: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW: http://www.cylogistics.com/
Ingram Micro
WWW:
http://www.ingrammicro.com/
Navarre
WWW:
http://www.navarre.com/
Publicadores de DVD
FreeBSD está disponível em formato DVD em:
FreeBSD Services Ltd
11 Lapwing Close
Bicester
OX26 6XR
United Kingdom
WWW: http://www.freebsd-services.com/
Sítios FTP
O código fonte oficial do FreeBSD está
disponível através de FTP anônimo:
ftp://ftp.FreeBSD.org/pub/FreeBSD/ .
O banco de dados
de sítios FreeBSD espelhos é mais
preciso que a lista de espelhos no Manual, visto que obtêm
sua informação a partir de DNS ao invés de
confiar em listas estáticas de servidores.
Adicionalmente, FreeBSD está disponível
através de FTP anônimo nos sítios espelhos a
seguir. Se desejar obter o FreeBSD através de FTP
anônimo, por favor, tente utilizar um sítio
próximo a você.
África do Sul,
Alemanha,
Arábia Saudita,
Argentina,
Austrália,
Brasil,
Canadá,
China,
Coréia,
Dinamarca,
Eslovênia,
Espanha,
Estônia,
EUA,
Finlândia,
França,
Holanda,
Hong Kong,
Hungria,
Irlanda,
Israel,
Japão,
Lituânia,
Nova Zelândia,
Polônia,
Portugal,
Reino Unido,
República Eslovaca,
República Tcheca,
Romênia,
Rússia,
Suécia,
Tailândia,
Taiwan (Formosa),
Ucrânia.
África do Sul
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@za.FreeBSD.org deste
domínio.
ftp://ftp.za.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.za.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.za.FreeBSD.org/FreeBSD/
Alemanha
Em caso de problemas, por favor contate os
administradores de-bsd-hubs@de.FreeBSD.org
do sítio espelho deste domínio.
ftp://ftp.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.de.FreeBSD.org/pub/FreeBSD/
ftp://ftp7.de.FreeBSD.org/pub/FreeBSD/
Arábia Saudita
Em caso de problemas, por favor contate
ftpadmin@isu.net.sa
ftp://ftp.isu.net.sa/pub/mirrors/ftp.freebsd.org/
Argentina
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ar.FreeBSD.org deste
domínio.
ftp://ftp.ar.FreeBSD.org/pub/FreeBSD/
Austrália
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@au.FreeBSD.org deste
domínio.
ftp://ftp.au.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.au.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.au.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.au.FreeBSD.org/pub/FreeBSD/
Brasil
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@br.FreeBSD.org deste
domínio.
ftp://ftp.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.br.FreeBSD.org/pub/FreeBSD/
ftp://ftp7.br.FreeBSD.org/pub/FreeBSD/
Canadá
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ca.FreeBSD.org deste
domínio.
ftp://ftp.ca.FreeBSD.org/pub/FreeBSD/
China
Em caso de problemas, por favor contate o Gerente
(hostmaster )
phj@cn.FreeBSD.org deste
domínio.
ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/
Coréia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@kr.FreeBSD.org deste
domínio.
ftp://ftp.kr.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.kr.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.kr.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.kr.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.kr.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.kr.FreeBSD.org/pub/FreeBSD/
Dinamarca
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@dk.FreeBSD.org deste
domínio.
ftp://ftp.dk.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.dk.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.dk.FreeBSD.org/pub/FreeBSD/
Eslovênia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@si.FreeBSD.org deste
domínio.
ftp://ftp.si.FreeBSD.org/pub/FreeBSD/
Espanha
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@es.FreeBSD.org deste
domínio.
ftp://ftp.es.FreeBSD.org/pub/FreeBSD/
Estônia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ee.FreeBSD.org deste
domínio.
ftp://ftp.ee.FreeBSD.org/pub/FreeBSD/
EUA
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@FreeBSD.org deste
domínio.
ftp://ftp2.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.FreeBSD.org/pub/FreeBSD/
ftp://ftp7.FreeBSD.org/pub/FreeBSD/
ftp://ftp8.FreeBSD.org/pub/FreeBSD/
ftp://ftp9.FreeBSD.org/pub/os/FreeBSD/
ftp://ftp10.FreeBSD.org/pub/FreeBSD/
ftp://ftp11.FreeBSD.org/pub/FreeBSD/
ftp://ftp12.FreeBSD.org/pub/FreeBSD/
ftp://ftp13.FreeBSD.org/pub/FreeBSD/
Finlândia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@fi.FreeBSD.org deste
domínio.
ftp://ftp.fi.FreeBSD.org/pub/FreeBSD/
França
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@fr.FreeBSD.org deste
domínio.
ftp://ftp.fr.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.fr.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.fr.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.fr.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.fr.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD/
Holanda
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@nl.FreeBSD.org deste
domínio.
ftp://ftp.nl.FreeBSD.org/pub/FreeBSD/
Hong Kong
ftp://ftp.hk.super.net/pub/FreeBSD/
Contato: ftp-admin@HK.Super.NET .
Hungria
Em caso de problemas, por favor contate o Gerente
(hostmaster )
mohacsi@ik.bme.hu deste
domínio.
ftp://ftp.hu.FreeBSD.org/pub/FreeBSD/
Irlanda
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ie.FreeBSD.org deste
domínio.
ftp://ftp.ie.FreeBSD.org/pub/FreeBSD/
Israel
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@il.FreeBSD.org deste
domínio.
ftp://ftp.il.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.il.FreeBSD.org/pub/FreeBSD/
Japão
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@jp.FreeBSD.org deste
domínio.
ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.jp.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.jp.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.jp.FreeBSD.org/pub/FreeBSD/
ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD/
Lituânia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@lt.FreeBSD.org deste
domínio.
ftp://ftp.lt.FreeBSD.org/pub/FreeBSD/
Nova Zelândia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@nz.FreeBSD.org deste
domínio.
ftp://ftp.nz.FreeBSD.org/pub/FreeBSD/
Polônia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@pl.FreeBSD.org deste
domínio.
ftp://ftp.pl.FreeBSD.org/pub/FreeBSD/
Portugal
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@pt.FreeBSD.org deste
domínio.
ftp://ftp.pt.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.pt.FreeBSD.org/pub/FreeBSD/
Reino Unido
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@uk.FreeBSD.org deste
domínio.
ftp://ftp.uk.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.uk.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.uk.FreeBSD.org/pub/FreeBSD/
ftp://ftp5.uk.FreeBSD.org/pub/FreeBSD/
República Eslovaca
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@sk.FreeBSD.org deste
domínio.
ftp://ftp.sk.FreeBSD.org/pub/FreeBSD/
República Tcheca
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@cz.FreeBSD.org deste
domínio.
ftp://ftp.cz.FreeBSD.org/pub/FreeBSD/ Contato: calda@dzungle.ms.mff.cuni.cz
Romênia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ro.FreeBSD.org deste
domínio.
ftp://ftp.ro.FreeBSD.org/pub/FreeBSD/
Rússia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@ru.FreeBSD.org deste
domínio.
ftp://ftp.ru.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.ru.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.ru.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.ru.FreeBSD.org/pub/FreeBSD/
Suécia
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@se.FreeBSD.org deste
domínio.
ftp://ftp.se.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.se.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.se.FreeBSD.org/pub/FreeBSD/
Tailândia
ftp://ftp.nectec.or.th/pub/FreeBSD/
Contato: ftpadmin@ftp.nectec.or.th .
Taiwan (Formosa)
Em caso de problemas, por favor contate o Gerente
(hostmaster )
hostmaster@tw.FreeBSD.org deste
domínio.
ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/
ftp://ftp2.tw.FreeBSD.org/pub/FreeBSD/
ftp://ftp3.tw.FreeBSD.org/pub/FreeBSD/
ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD/
Ucrânia
ftp://ftp.ua.FreeBSD.org/pub/FreeBSD/
Contato: freebsd-mnt@lucky.net .
CVS Anônimo
-
- Introdução
+
+ Introdução
CVS Anônimo (ou, seu outro nome,
anoncvs ) é uma funcionalidade dos
utilitários CVS incluídos no FreeBSD para
sincronização com um repositório remoto.
Entre outras coisas, permite que usuários de FreeBSD
executem, sem privilégios especiais,
operações de leitura apenas
(read-only ) em um dos
servidores anoncvs oficiais do projeto FreeBSD. Para
usá-lo, atribui-se à variável de ambiente
CVSROOT a localização do servidor
anoncvs apropriado, fornece-se a bem conhecida senha
anoncvs
com o comando cvs
login , e, então, utiliza-se o comando
&man.cvs.1; para acessá-lo como a um repositório
local qualquer.
Pode-se dizer que ambos os serviços CVSup e anoncvs
realizam essencialmente a mesma função, existem
vários compromissos
(trade-offs ) que podem
influenciar a escolha do usuário de métodos
de sincronização. Resumidamente,
CVSup é mais eficiente
em seu uso de recursos de rede e, de longe, o mais tecnicamente
sofisticado dos dois mas a um preço. Para utilizar
CVSup , um cliente especial deve
ser instalado primeiro e configurado antes que quaisquer
bits possam ser obtidos, e,
então, somente nas parcelas relativamente grandes
que CVSup denomina
coleções .
Anoncvs , em contraste, pode ser
usado para examinar qualquer coisa desde de um arquivo
individual a um programa específico (como
ls ou grep )
referenciando o nome do módulo CVS. Naturalmente,
anoncvs somente é bom para
operações de leitura apenas
(read-only ) no
repositório de CVS, logo se sua intenção
for suportar o desenvolvimento local em um repositório
compartilhado com os bits do
projeto FreeBSD, CVSup é
realmente sua única opção.
-
- Usando CVS
+
+ Usando CVS
Anônimo
Configurar o &man.cvs.1; para utilizar um
repositório CVS anônimo requer, simplesmente,
uma atribuição à variável de ambiente
CVSROOT da localização de um dos
servidores anoncvs do projeto FreeBSD.
No momento da preparação deste documento, os
seguintes servidores estão disponíveis:
EUA :
:pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs (Use o
cvs login e entre a senha
anoncvs
quando requerido.)
Visto que CVS permite fazer um check out
de
virtualmente qualquer versão do código fonte do
FreeBSD que já existiu (ou, em alguns casos, que
irá existir), você precisa familiarizar-se com a
opção (-r ) de revisão e
seus valores permitidos no repositório do Projeto
FreeBSD em &man.cvs.1;.
Há dois tipos de etiquetas
(tags ): etiquetas de
revisão (revision tags )
e etiquetas de ramo (branch tags ).
Uma etiqueta de revisão refere-se a uma revisão
específica. Seu significado mantém-se de um
dia para o outro. Uma etiqueta de ramo; entretanto, refere-se
à revisão mais recente de uma dada linha de
desenvolvimento, em um dado momento. Porque uma etiqueta
de ramo não se refere a uma revisão
específica, ela pode significar amanhã algo
diferente do que significa hoje.
Aqui se encontram as etiquetas de ramo que podem
interessar aos usuários (tenha em mente que a
única etiqueta válida para coleção
de ports é
HEAD ).
HEAD
Nome simbólico para a linha principal, ou
FreeBSD-CURRENT. Também, é a
padrão quando nenhuma revisão é
especificada.
RELENG_4
A linha de desenvolvimento do FreeBSD-4.X,
também conhecida como FreeBSD-STABLE.
RELENG_4_4
O ramo de lançamentos do FreeBSD-4.4, usada
somente para avisos de segurança e outras
correções críticas
sérias.
RELENG_4_3
O ramo de lançamentos do FreeBSD-4.3, usada
somente para avisos de segurança e outras
correções críticas
sérias.
RELENG_3
A linha de desenvolvimento do FreeBSD-3.X,
também conhecida como 3.X-STABLE.
RELENG_2_2
A linha de desenvolvimento para FreeBSD-2.2.X,
também conhecida como 2.2-STABLE. Este ramo de
desenvolvimento é praticamente obsoleto.
Aqui estão as etiquetas de revisão nas quais
os usuários podem estar interessados. Novamente,
nenhuma destas é válida para a
coleção de ports visto que a
coleção de ports não
possui múltiplas revisões.
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.
Quando se especifica uma etiqueta de ramo, normalmente
se recebe a versão mais recente dos arquivos desta
linha de desenvolvimento. Se desejar receber alguma
versão antiga, pode-se fazê-lo especificando-se
uma data com a opção -D data .
Veja a página de manual &man.cvs.1; para maiores
detalhes.
Exemplos
Mesmo sendo expressamente recomendado que a
página de manual de &man.cvs.1; seja lida
completamente antes que faça-se qualquer coisa,
aqui vão alguns exemplos rápidos que
mostram, essencialmente, como utilizar CVS Anônimo:
Checking Out Algo
De -CURRENT (&man.ls.1;) E Apagando-o:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co ls
&prompt.user; cvs release -d ls
&prompt.user; cvs logout
Checking Out A
Versão De &man.ls.1; No Ramo 3.X-STABLE:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co -rRELENG_3 ls
&prompt.user; cvs release -d ls
&prompt.user; cvs logout
Criando Uma Lista De Modificações
(como diffs unificados) De &man.ls.1;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs rdiff -u -rRELENG_3_0_0_RELEASE -rRELENG_3_4_0_RELEASE ls
&prompt.user; cvs logout
Descobrindo Que Outros Nomes De Módulos Podem
Ser Usados:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
&prompt.user; cvs release -d modules
&prompt.user; cvs logout
Outros Recursos
Os seguintes recursos adicionais podem ser úteis no
aprendizado de CVS:
Tutorial
CVS da Cal Poly.
Cyclic
Software , consultores comerciais de CVS.
CVSWeb
é a interface web para CVS do Projeto FreeBSD.
Usando CTM
CTM é um método
para manter uma árvore de diretórios remota
sincronizada com uma árvore central. Foi desenvolvido
para uso com árvores de código fonte do FreeBSD,
mas outras pessoais podem achá-lo útil para
outros propósitos com o passar do tempo. Pouca, se
alguma, documentação existe atualmente sobre o
processo de criação de deltas, logo contate
&a.phk; para maiores informações se desejar
usar CTM para outros
propósitos.
Por Que Eu Deveria Usar
CTM ?
CTM fornecer-lhe-á
uma cópia local das árvores de código
fonte do FreeBSD. Há um número de variedades
da árvore disponível. Se desejar acompanhar
a árvore CVS inteira ou apenas um dos ramos,
CTM pode fornecer-lhe a
informação. Se você é um
desenvolvedor FreeBSD ativo mas possui conectividade TCP/IP
ruim ou inexistente; ou, simplesmente deseja que as
modificações sejam-lhe enviadas automaticamente:
CTM foi feito para você.
Será necessário obter até três
deltas por dia para os ramos mais ativos. Entretanto,
deve-se considerar recebê-los automaticamente
através de e-mail. O tamanho das atualizações
é sempre mantido tão pequeno quanto o
possível. O tamanho de uma atualização
é tipicamente menor que 5K, com uma ocasional (uma
em dez) 10-50K, e de vez em quando uma grande com 100K+ ou
ao redor disso.
Você precisará conscientizar-se de
vários possíveis problemas relacionados a
trabalhar diretamente a partir do código fonte de
desenvolvimento, ao invés de um lançamento
pré-empacotado. Isto é particularmente verdade
se escolher o código fonte “corrente”
(current ). É recomendado que se
leia Permanecendo corrente com o
FreeBSD.
O Que Você Precisa Para Usar
CTM ?
Você irá precisar de duas coisas: O programa
CTM , e os deltas iniciais para
alimentá-lo (para alcançar os níveis
“correntes”).
O programa CTM faz parte do
FreeBSD desde a versão 2.0 release ,
e encontra-se em /usr/src/usr.sbin/CTM
se você possuir uma cópia do código
fonte à disposição.
Se estiver usando uma versão pré-2.0 do
FreeBSD, pode-se obter o código fonte corrente do
CTM em:
ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/ctm/
Os “deltas” com os quais alimenta-se
CTM podem ser obtidos de duas
maneiras: FTP ou e-mail. Se você tem acesso FTP
à Internet, os seguintes sítios FTP suportam
acesso ao CTM :
ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/
ou veja a seção espelhos.
Acesse via FTP o diretório relevante e pegue o
arquivo README , comece ali.
Caso deseje obter seus deltas via e-mail:
Envie e-mail para &a.majordomo; a fim de increver-se
em uma das listas de distribuição
CTM . “ctm-cvs-cur”
cobre toda árvore CVS. “ctm-src-cur”
cobre a head do ramo de
desenvolvimento. “ctm-src-2_2” cobre o ramo
2.2 release , etc.. (Caso não
saiba como se inscrever usando
majordomo , envie uma mensagem
primeiro contendo a palavra help —
ele enviar-lhe-á de volta instruções
sobre o uso.)
Quando começar a receber suas
atualizações CTM
por e-mail, você pode utilizar o programa
ctm_rmail para desempacotá-las e
aplicá-las. Na verdade, você pode usar o
programa ctm_rmail diretamente de uma
entrada dentro de /etc/aliases se
deseja que o processo seja totalmente automatizado. Olhe a
página de manual ctm_rmail para
maiores detalhes.
Não importa qual método você
utilize para obter os deltas CTM ,
você deve inscrever-se na lista de discussão
ctm-announce@FreeBSD.org . No futuro, este
será o único lugar no qual anúncios
relativos às operações do sistema
CTM serão postados.
Envie e-mail para &a.majordomo; com uma única linha
subscribe ctm-announce para ser
adicionado à lista.
Usando CTM Pela Primeira
Vez
Antes de começar a usar deltas
CTM , você precisará
de um ponto de partida a partir do qual deltas subseqüentes
possam ser obtidos.
Primeiro, você deve determinar o que já
tem. Todos podem começar a partir de um diretório
“vazio”. Você deve usar o delta
“Empty” para iniciar sua árvore
CTM . Em algum momento, pretende-se
que estes deltas “inicializados” sejam
distribuídos em CD para sua conveniência;
entretanto, isto não acontece atualmente.
Visto que as árvores têm muitas dezenas
de megabytes , você
pode preferir começar a partir de algo já
à mão. Caso tenha um CD de um -RELEASE,
você pode copiar ou extrair a partir dele um código
fonte inicial. Isto irá poupar uma transferência
significativa de dados.
Você pode reconhecer estes deltas
“iniciais” pelo literal X
adicionado ao número
(src-cur.3210XEmpty.gz por exemplo).
A designação seguindo o X
corresponde à sua “semente” inicial.
Empty é um diretório
vazio. Como regra geral, uma transição base
a partir de Empty é produzida
a cada 100 deltas. A propósito, eles são
grandes! 25 a 30 Megabytes
de dados comprimidos com gzip são
comuns para deltas XEmpty .
Uma vez que tenha escolhido um delta a partir do qual
começar, você precisará também
de todos os deltas de números subseqüentes a
ele.
Usando CTM Em Sua Vida
Diária
Para aplicar os deltas, simplesmente diga:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM entende deltas comprimidos
com gzip , logo não é
necessário descomprimi-los primeiro com
gunzip , isto economiza espaço de
disco.
A menos que CTM sinta-se
muito seguro a respeito de todo o processo, ele não
tocará sua árvore. Pode-se usar a
opção -c e
CTM não tocará sua
árvore; meramente verificará a integridade
do delta e verificará se ele aplicar-se-ia sem erros
à sua árvore corrente.
Existem outra opções para
CTM , veja as páginas de
manual ou olhe o código fonte para maiores
informações.
Isso é tudo. A cada vez que receber um novo delta,
alimente CTM com ele para manter
seus códigos fontes atualizados.
Não apague os deltas se for difícil
obtê-los novamente. Você pode querer mantê-los
para o caso de algo ruim acontecer. Mesmo que só
tenha disquetes, considere usar fdwrite
para fazer cópias.
Mantendo Suas Mudanças Locais
Um desenvolvedor gostaria de experimentar e mudar arquivos
na árvore de código fonte.
CTM suporta
modificações locais de maneira limitada: antes de
checar a existência de um arquivo
foo , ele primeiro procura por
foo.ctm . Se este arquivo existir, CTM
operará sobre ele ao invés de
foo .
Este comportamento nos fornece uma maneira simples de
manter modificações locais: apenas copie os
arquivos que planeja modificar para arquivos de nomes
correspondentes com o sufixo .ctm .
Então, você poderá modificar o
código fonte livremente enquanto CTM mantêm o
arquivo .ctm atualizado.
Outras Opções Interessantes De
CTM
Descobrindo Exatamente O Que Seria Modificado Por Uma
Atualização
Você pode determinar uma lista das
modificações que
CTM fará em seu
repositório de código fonte usando a
opção -l do
CTM .
Isto é muito útil se você quiser
manter um registro de modificações,
pré- ou pós- processar os arquivos modificados
de qualquer forma, ou simplesmente estiver se sentindo um
pouco paranóico.
Fazendo Cópias De Segurança Antes De
Atualizar
Algumas vezes, você pode querer fazer
cópias de segurança de todos os arquivos que
seriam modificados por uma atualização
CTM .
Especificar a opção -B
arquivo-de-cópia-de-segurança faz
com que CTM faça
cópias de segurança para
arquivo-de-cópia-de-segurança
de todos os arquivos que seriam modificados por um dado
delta CTM .
Restringindo Os Arquivos Modificados Por Uma
Atualização
Algumas vezes, você poderá se interessar em
restringir o escopo de uma dada atualização
CTM , ou poderá se
interessar em extrair somente alguns arquivos de uma
seqüência de deltas.
Você pode controlar a lista de arquivos sobre os
quais CTM operará por meio
de filtragem com expressões regulares usando as
opções -e e
-x .
Por exemplo, para extrair uma cópia atualizada de
lib/libc/Makefile de sua
coleção de deltas CTM gravados, execute os
comandos:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Para cada arquivo especificado em um delta
CTM , as opções
-e e -x são
aplicadas na ordem dada na linha de comando. O arquivo
é processado pelo CTM
somente se estiver marcado como elegível após
todas as opções -e
e -x terem sido aplicadas a ele.
Planos Futuros Para CTM
Toneladas deles:
Incluir algum tipo de autenticação no
sistema CTM a fim de permitir detecção de
atualizações CTM
spoofed .
Fazer uma limpeza nas opções do
CTM , elas tornaram-se confusas
e não intuitivas.
Itens variados
Existe uma seqüência de deltas para a
coleção de ports ,
também, mas interesse não tem sido muito grande
ainda. Informem-me se vocês querem uma lista de
distribuição para isso também e
consideraremos instalar uma.
Espelhos CTM
CTM/FreeBSD está
disponível através de FTP anônimo nos
seguintes sítios espelhos. Se você escolher
obter CTM via FTP anônimo, por favor tente usar um
sítio próximo a você.
Em caso de problemas, por favor contate &a.phk;.
África do Sul, servidor de cópias de
segurança de deltas antigos
ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/
Alemanha, Trier
ftp://ftp.uni-trier.de/pub/unix/systems/BSD/FreeBSD/CTM/
Califórnia, Área da Baía, fonte
oficial
ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CTM/
Taiwan (Formosa), Chiayi
ftp://ctm.tw.FreeBSD.org/pub/FreeBSD/CTM/
ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/CTM/
ftp://ctm3.tw.FreeBSD.org/pub/freebsd/CTM/
Se você não encontrou um espelho próximo
a você ou o espelho está incompleto, tente
FTP search
em http://ftpsearch.ntnu.no/ftpsearch .
FTP search é um grande servidor
archie gratuito em Trondheim, Noruega.
Usando CVSup
Introdução
CVSup é um pacote de
programas para distribuir e atualizar árvores de
código fonte a partir de um repositório CVS
mestre em um servidor remoto. Os códigos fontes do
FreeBSD são mantidos em um repositório CVS
em uma máquina de desenvolvimento central na
Califórnia. Com CVSup ,
usuários de FreeBSD podem facilmente manter suas
árvores de códigos fontes atualizadas.
CVSup utiliza o modelo de
atualização chamado puxar
(pull ) . No modelo
puxar, cada cliente requisita atualizações ao
servidor, se e quando desejam. Ou seja, todas as
atualizações são iniciadas pelo cliente.
O servidor jamais envia atualizações não
solicitadas. Usuários devem ou executar o cliente
CVSup manualmente para obter uma
atualização, ou criar um job
cron para regularmente e automaticamente
executá-lo.
O termo CVSup , escrito com
maiúsculas e minúsculas desta maneira,
refere-se ao pacote completo de programas. Seus componentes
principais são o cliente cvsup
o qual executa na máquina de cada usuário,
e o servidor cvsupd o qual executa em
cada sítio espelho FreeBSD.
Ao ler a documentação do FreeBSD e listas
de discussão, você pode ver referências
a sup . Sup
foi o predecessor de CVSup , e
serviu um propósito similar.
CVSup é usado praticamente
da mesma maneira que sup e, de fato, usa arquivos de
configuração que são compatíveis
de forma regressa
(backward-compatible ) com
os de sup . Sup
não é mais utilizado no projeto FreeBSD porque
CVSup é ao mesmo tempo
mais rápido e mais flexível.
Instalação
A maneira mais fácil de instalar
CVSup é usar o pacote
pré-compilado net/cvsup da coleção de pacotes
FreeBSD. Caso prefira compilar CVSup
a partir do código fonte, pode-se usar o
port net/cvsup ao invés
do pacote. Mas esteja avisado: o port
depende no sistema Modula-3 que exige tempo e espaço
de disco substancial tanto para baixar da Internet quanto
para compilar.
Se você não sabe nada sobre
CVSup e deseja um único
pacote que irá instalá-lo, criar o arquivo
de configuração e iniciar a transferência
através de uma interface tipo apontar-e-clicar;
então, obtenha o pacote
cvsupit . Passe-o para &man.pkg.add.1; e ele
irá guiá-lo através do processo de
configuração em um modo orientado a
menu .
Configurando CVSup
A operação de
CVSup é controlada por
um arquivo de configuração chamado
supfile . Existem alguns exemplos de
supfiles no diretório /usr/share/examples/cvsup/ .
A informação em um
supfile responde ao cvsup as seguintes
perguntas:
Quais arquivos
você quer receber?
Quais versões
deles quer?
De onde quer
obtê-los?
Onde quer
colocá-los em sua máquina?
Onde quer colocar
seus arquivos de status ?
Nas seções seguintes, nós iremos
construir um supfile típico ao
responder cada uma das seguintes perguntas. Primeiro,
nós descreveremos a estrutura completa de um
supfile .
Um supfile é um arquivo texto.
Comentários começam com # e
estende-se até o fim da linha. Linhas em branco ou que
somente contêm comentários são ignoradas.
Cada linha restante descreve um conjunto de arquivos que o
usuário deseja receber. A linha começa com o
nome de uma coleção
, um
agrupamento lógico de arquivos definido pelo servidor.
O nome de uma coleção informa o servidor quais
arquivos você deseja. Após o nome da
coleção vem zero ou mais campos, separados por
espaços em branco. Estes campos respondem às
perguntas feitas acima. Existem dois tipos de campos: campos
de sinalização e campos de valor. Um campo de
sinalização consiste de uma palavra chave
solitária, e.g., delete ou
compress . Um campo de valor, também,
começa com uma palavra chave mas a palavra chave
é seguida sem nenhum espaço em branco
intermediário por = e uma segunda
palavra. Por exemplo, release=cvs é
um campo de valor.
Um supfile tipicamente especifica
mais de uma coleção a receber. Uma maneira para
estruturar um supfile é
especificar todos os campos relevantes explicitamente para
cada coleção. Entretanto, isso tende a tornar
longas as linhas do supfile , e isto
é inconveniente pois a maioria dos campos é
comum a todas coleções em um
supfile . CVSup
provê um mecanismo de valores padrão para evitar
estes problemas. Linhas começando com o nome da
pseudocoleção *default podem
ser usadas para atribuir sinalizações e valores
que serão utilizados como valores padrão para as
coleções subseqüentes em um
supfile . Um valor padrão pode ser
sobrescrito para uma coleção individual
especificando-se um valor diferente na coleção
específica. Valores padrão podem,
também, ser modificados ou suplementados no meio de um
supfile por linhas *default
adicionais.
Com este histórico, agora procederemos para
construir um supfile para
recepção e atualização da
árvore de código fonte principal de
FreeBSD-CURRENT.
Quais arquivos quer
receber?
Os arquivos disponíveis via
CVSup estão organizados
em grupos nomeados chamados
coleções
. As
coleções disponíveis estão
descritas nas seções
a seguir. Neste exemplo, desejamos receber toda
a árvore de código fonte principal para
o sistema FreeBSD. Existe uma grande coleção
individual src-all a qual nos
dará tudo. Como um primeiro passo na
direção da construção do
nosso supfile , nós simplesmente
listamos as coleções, uma por linha (neste
caso, apenas uma linha):
src-all
Qual(is)
versão(ões) dele(s) quer?
Com CVSup , você
virtualmente pode receber qualquer versão dos
códigos fonte que já existiram. Isto
é possível porque o servidor
cvsupd trabalha diretamente a
partir do repositório CVS, que contém todas
versões. Você especifica qual delas quer
usando os campos de valor tag= e
date= .
Seja cuidadoso para especificar corretamente
quaisquer campos tag= . Certas
etiquetas (tags ) somente
são válidas para algumas
coleções de arquivos. Se você
especificar uma etiqueta
tag incorretamente ou com
erros de digitação,
CVSup irá apagar
arquivos, os quais, você provavelmente não
queria apagar. Particularmente, utilize
tag=. apenas
para coleções
ports-* .
O campo tag= denomina uma etiqueta
simbólica (symbolic
tag ) no repositório. Existem
dois tipos de etiquetas, etiquetas de revisão
(revision tags ) e etiquetas
de ramo (branch tags ). Uma
etiqueta de revisão faz referência a uma
revisão específica. Seu significado
permanece o mesmo de um dia para outro. Uma etiqueta de
ramo, por outro lado, faz referência à
última versão de uma dada linha de
desenvolvimento, em qualquer momento. Devido à
etiqueta de ramo não fazer referência a uma
revisão específica, amanhã ela pode
significar algo diferente do que significa hoje.
Aqui estão as etiquetas de ramo podem
interessar aos usuários. Tenha em mente que apenas
o tag=. é relevante para a
coleção de ports .
tag=.
A principal linha de desenvolvimento,
também conhecida como FreeBSD-CURRENT.
O . não é
pontuação; ele é o nome de
uma etiqueta (tag ).
Válida para todas
coleções.
tag=RELENG_4
A linha de desenvolvimento para FreeBSD-4.X,
também conhecida como FreeBSD-STABLE.
tag=RELENG_4_4
O ramo de lançamentos
(release ) para
FreeBSD-4.4, utilizado apenas para avisos de
segurança e outras correções
seriamente críticas.
tag=RELENG_4_3
O ramo de lançamentos
(release ) para
FreeBSD-4.3, utilizado apenas para avisos de
segurança e outras correções
seriamente críticas.
tag=RELENG_3
A linha de desenvolvimento para
FreeBSD-3.X
tag=RELENG_2_2
A linha de desenvolvimento para FreeBSD-2.2.X,
também conhecida como 2.2-STABLE.
Aqui estão as etiquetas de revisão nas
quais os usuários podem estar interessados.
Novamente, estas não são válidas para
a coleção de
ports .
tag=RELENG_4_4_0_RELEASE
FreeBSD 4.4.
tag=RELENG_4_3_0_RELEASE
FreeBSD 4.3.
tag=RELENG_4_2_0_RELEASE
FreeBSD-4.2.
tag=RELENG_4_1_1_RELEASE
FreeBSD-4.1.1.
tag=RELENG_4_1_0_RELEASE
FreeBSD-4.1.
tag=RELENG_4_0_0_RELEASE
FreeBSD-4.0.
tag=RELENG_3_5_0_RELEASE
FreeBSD-3.5.
tag=RELENG_3_4_0_RELEASE
FreeBSD-3.4.
tag=RELENG_3_3_0_RELEASE
FreeBSD-3.3.
tag=RELENG_3_2_0_RELEASE
FreeBSD-3.2.
tag=RELENG_3_1_0_RELEASE
FreeBSD-3.1.
tag=RELENG_3_0_0_RELEASE
FreeBSD-3.0.
tag=RELENG_2_2_8_RELEASE
FreeBSD-2.2.8.
tag=RELENG_2_2_7_RELEASE
FreeBSD-2.2.7.
tag=RELENG_2_2_6_RELEASE
FreeBSD-2.2.6.
tag=RELENG_2_2_5_RELEASE
FreeBSD-2.2.5.
tag=RELENG_2_2_2_RELEASE
FreeBSD-2.2.2.
tag=RELENG_2_2_1_RELEASE
FreeBSD-2.2.1.
tag=RELENG_2_2_0_RELEASE
FreeBSD-2.2.0.
Seja cuidadoso ao digitar o nome de etiqueta
(tag ) exatamente como
mostrado. CVSup não
consegue distingüir entre etiquetas válidas
e inválidas. Se você digitou a etiqueta
incorretamente, CVSup
irá se comportar como se você tivesse
especificado uma etiqueta válida que por acaso
referencia nenhum arquivo. Isto, neste caso, irá
apagar seus códigos fonte existentes.
Quando você especifica uma etiqueta de ramo
(branch tag ), você
normalmente recebe as últimas versões dos
arquivos daquela linha de desenvolvimento. Se desejar
receber alguma versão anterior, você pode
fazê-lo especificando a data com o campo de valor
date= . A página de manual
&man.cvsup.1; explica como fazer isto.
Para nosso exemplo, desejamos receber FreeBSD-CURRENT.
Acrescentamos esta linha no início de nosso
supfile :
*default tag=.
Existe um importante caso especial que ocorre se
você não especificar um campo
tag= nem um campo date= .
Neste caso, você recebe os arquivos RCS reais
diretamente do servidor de repositório CVS, ao
invés de receber uma versão particular.
Desenvolvedores geralmente preferem este modo de
operação. Ao manter uma cópia do
próprio repositório em seus sistemas,
eles adquirem a habilidade de olhar os históricos
de revisão e examinar versões anteriores
de arquivos. Entretanto, esta facilidade é
obtida a grande custo em termos de espaço em
disco.
De onde quer
obtê-los?
Nós usamos o campo host=
para informar cvsup onde obter suas
atualizações. Qualquer um dos sítios espelho CVSup
irá servir; entretanto, deve-se tentar selecionar
um que esteja próximo a você no
ciberespaço. Neste exemplo, será utilizado
um sítio de distribuição de FreeBSD
fictício, cvsup666.FreeBSD.org :
*default host=cvsup666.FreeBSD.org
Você precisará modificar o servidor
para um que realmente exista antes de executar o
CVSup . Em qualquer
execução particular de cvsup ,
você pode sobrescrever o atributo de servidor na
linha de comando, com -h
hostname .
Onde quer
colocá-los em sua máquina?
O campo prefix= informa
cvsup onde colocar os arquivos que
recebe. Neste exemplo, nós iremos colocar os
arquivos de código fonte diretamente em nossa
árvore de código fonte principal,
/usr/src . O diretório
src já está
implícito nas coleções que escolhemos
receber; então, esta é a
especificação correta:
*default prefix=/usr
Onde
cvsup deveria manter os arquivos de
status ?
O cliente de CVSup
mantém alguns arquivos de status
no, que é chamado, diretório base
.
Estes arquivos auxiliam CVSup
a trabalhar mais eficientemente, ao manter
informação a respeito de quais
atualizações já recebeu. Nós
usaremos o diretório base padrão,
/usr/local/etc/cvsup :
*default base=/usr/local/etc/cvsup
Esta configuração será utilizada
como padrão se não for especificada no
supfile , então, realmente,
não precisaremos da linha acima.
Se seu diretório base ainda não existe,
agora seria um bom momento para criá-lo. O
cliente de cvsup se recusará
a executar-se caso o diretório base não
exista.
Configurações variadas de
supfile :
Existe mais uma linha de texto padronizado que
normalmente precisa estar presente no
supfile :
*default release=cvs delete use-rel-suffix compress
release=cvs indica que o servidor
deve obter suas informações a partir do
repositório principal CVS do FreeBSD. Isto
é, virtualmente, sempre o caso, mas existem
outras possibilidades que estão além do
escopo desta discussão.
delete dá ao
CVSup permissão para
apagar arquivos. Você sempre deve especificar
isto, para que CVSup possa
manter sua árvore de código fonte
integralmente atualizada. CVSup
é cuidadoso apagando apenas aqueles arquivos
pelos quais é responsável. Quaisquer
arquivos adicionais que possua serão deixados
estritamente intocados.
use-rel-suffix é ...
arcano. Se você realmente quer conhecer algo
sobre ele, veja a página de manual &man.cvsup.1;.
De outra forma, apenas especifique-o e não se
preocupe.
compress habilita o uso de
compressão estilo gzip no canal de
comunicação. Se sua conexão de rede
possui velocidade T1 ou mais rápida, provavelmente,
você não deveria usar compressão. Em
outros casos, irá ajudar substancialmente.
Juntando tudo:
Aqui está o supfile
completo para nosso exemplo:
*default tag=.
*default host=cvsup666.FreeBSD.org
*default prefix=/usr
*default base=/usr/local/etc/cvsup
*default release=cvs delete use-rel-suffix compress
src-all
O arquivo de refuse
Como mencionado acima, CVSup
utiliza um método puxar
(pull ) .
Basicamente, isto significa que você conecta-se ao
servidor CVSup , e ele diz:
Aqui está o que você pode baixar de
mim...
, e seu cliente responde OK, Eu
pegarei isto, isto, isto e isto.
Na
configuração padrão, o cliente
CVSup irá pegar cada
arquivo associado com a coleção e etiqueta
que você escolheu no arquivo de configuração.
Entretanto, isto não é o que você
sempre quer, especialmente se você estiver sincronizando
árvores doc, ports, ou www — a maioria das
pessoas não conseguem ler em quatro ou cinco
línguas; e, por isso eles não precisam
baixar os arquivos específicos para cada língua.
Se você está fazendo
CVSup da coleção
de ports , você fazê-lo
especificando cada coleção individualmente
(e.g., ports-astrology ,
ports-biology , etc ao invés
de simplesmente dizer ports-all ).
Entretanto, como árvores doc e www não
possuem coleções específicas por
línguas, você precisa utilizar uma das muitas
funcionalidades atraentes do CVSup ;
o arquivo de
refuse .
O arquivo de refuse
essencialmente informa CVSup
que ele não deve pegar cada um dos arquivos de uma
coleção; em outras palavras, ele informa o
cliente para recusar certos arquivos
do servidor. O arquivo de refuse pode
ser encontrado (ou, se você ainda não o
possuir, deve ser colocado) em
base /sup/refuse .
base está definido em
seu supfile; por padrão, base
é /usr/local/etc/cvsup , que
significa que por padrão o arquivo de
refuse está em
/usr/local/etc/cvsup/sup/refuse .
O arquivo de refuse possui um formato
muito simples; contém simplesmente os nomes de
arquivos ou diretórios que você não
deseja baixar. Por exemplo, se você não
fala nenhuma outra língua a não ser a inglesa
e um pouco da alemã, e você não sente
necessidade de usar aplicativos alemães, você
pode colocar o seguinte em seu arquivo de
refuse :
ports/chinese ports/german ports/japanese ports/korean
ports/russian ports/vietnamese doc/es_ES.ISO8859-1
doc/ja_JP.eucJP
e desta forma para as outras línguas. Perceba
que o nome do repositório é o primeiro
diretório
no arquivo de
refuse .
Com esta funcionalidade muito útil, aqueles
usuários que estão com conexões
lentas ou pagam por minuto de conexão Internet
poderão economizar tempo valioso por não
mais precisarem baixar arquivos que não irão
utilizar. Para mais informações sobre
arquivos de refuse
e outras interessantes funcionalidades do
CVSup ; por favor, olhe a
página de manual dele.
Executando CVSup
Você agora está pronto para tentar atualizar.
A linha de comando para fazer isso é bastante
simples::
&prompt.root; cvsup supfile
onde
supfile
é, na verdade, o nome do supfile que você acaba
de criar. Assumindo que você está executando
sob o X11, cvsup irá exibir uma
janela GUI com botões para fazer as coisas usuais.
Pressione o botão go
, e observe sua
execução.
Como, neste exemplo, você está atualizando
sua árvore de diretórios
/usr/src atual, você precisará
executar o programa como root para que
cvsup possua as permissões
necessárias para atualizar seus arquivos. Tendo
apenas acabado de criar seu arquivo de configuração
mas nunca tendo utilizado este programa anteriormente
é compreensível que você fique nervoso.
Existe uma maneira fácil de fazer uma tentativa sem
tocar em seus preciosos arquivos. Apenas crie um
diretório vazio em um lugar conveniente e passe seu
nome como um argumento extra na linha de comando:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
O diretório que você especificou será
utilizado como o diretório de destino para todos os
arquivos atualizados. O CVSup
irá examinar seus arquivos atuais em
/usr/src mas não irá
modificar ou apagar algum deles. Qualquer arquivo com
atualizações, ao contrário, será
depositado em /var/tmp/dest/usr/src .
O CVSup também irá
deixar seus arquivos de estado do diretório base
intocados quando for executado desta maneira. As novas
versões desses arquivos serão escritas no
diretório especificado. Enquanto você possuir
acesso de leitura em /usr/src , você
nem mesmo precisará ser root para realizar este tipo
de tentativa.
Se você não está executando o X11
ou não gosta de GUIs, você deve acrescentar
algumas opções a linha de comando quando
executar cvsup:
&prompt.root; cvsup -g -L 2 supfile
A opção -g informa
CVSup para não utilizar sua
GUI. Isto é automático se você não
estiver executando o X11 mas em outros casos, você
terá que especificá-lo.
A opção -L 2 informa
CVSup para exibir os detalhes de
todas as atualizações de arquivo que
estão sendo realizadas. Existem três
níveis de verbosidade, desde -L 0
até -L 2 . O padrão é 0,
que significa silêncio total com exceção
feita a mensagens de erro.
Existe uma variedade de outras opções
disponíveis. Para uma lista resumida, digite
cvsup -H . Para descrições
mais detalhadas, veja a página de manual.
Uma vez que esteja satisfeito com a forma que as
atualizações estejam funcionando, você
pode organizar execuções regulares do
CVSup usando &man.cron.8;.
Obviamente, você não deve permitir que o
CVSup utilize sua GUI quando for
executado a partir do &man.cron.8;.
Coleção de Arquivos
CVSup
As coleções de arquivos disponíveis
via CVSup estão organizadas
hierarquicamente. Existem algumas coleções
grandes, e elas são divididas em subcoleções
menores. Receber uma coleção grande equivale
a receber cada uma de suas subcoleções. As
relações hierárquicas entre
coleções são refletidas através
de endentação na lista abaixo.
As coleções mais utilizadas normalmente
são src-all , e
ports-all . As outras coleções
são utilizadas apenas por pequenos grupos de pessoas
para propósitos específicos, e alguns
sítios espelho podem não conter todas
elas.
cvs-all release=cvs
O repositório principal CVS do FreeBSD,
incluindo código criptográfico.
distrib release=cvs
Arquivos relacionados à
distribuição e espelhamento do
FreeBSD.
doc-all release=cvs
Códigos fonte para o manual do FreeBSD
e outras documentações. Isto
não inclui arquivos do sítio www
do FreeBSD.
ports-all release=cvs
A Coleção de
Ports do FreeBSD.
ports-archivers
release=cvs
Ferramentas relacionadas à
Armazenagem.
ports-astro
release=cvs
Ports relacionados
à Astronomia.
ports-audio
release=cvs
Suporte a Som.
ports-base
release=cvs
Arquivos variados no topo de
/usr/ports.
ports-benchmarks
release=cvs
Programas para análise de
desempenho(benchmark ).
ports-biology
release=cvs
Biologia.
ports-cad
release=cvs
Ferramentas Computacionais de
auxílio a projeto
(CAD ).
ports-chinese
release=cvs
Suporte para língua
Chinesa.
ports-comms
release=cvs
Programas de
Comunicação.
ports-converters
release=cvs
Conversores de códigos de
caractere.
ports-databases
release=cvs
Bancos de Dados.
ports-deskutils
release=cvs
Coisas que costumavam ficar no
desktop
antes dos computadores serem inventados.
ports-devel
release=cvs
Utilitários para
desenvolvimento.
ports-editors
release=cvs
Editores.
ports-emulators
release=cvs
Emuladores de outros sistemas
operacionais.
ports-ftp
release=cvs
Cliente de FTP e utilitários para
servidor.
ports-games
release=cvs
Jogos.
ports-german
release=cvs
Suporte para a língua
Alemã.
ports-graphics
release=cvs
Utilitários
Gráficos.
ports-irc
release=cvs
Utilitários para bate-papo
retransmitido via Internet
(IRC ).
ports-japanese
release=cvs
Suporte para língua
Japonesa.
ports-java
release=cvs
Utilitários para Java.
ports-korean
release=cvs
Suporte para língua
Coreana.
ports-lang
release=cvs
Linguagens de
programação.
ports-mail
release=cvs
Programa para correio
eletrônico.
ports-math
release=cvs
Programa para computação
numérica.
ports-mbone
release=cvs
Aplicativos para MBone.
ports-misc
release=cvs
Utilitários variados.
ports-net
release=cvs
Programa para rede.
ports-news
release=cvs
Programa para notícias
USENET.
ports-palm
release=cvs
Programa de apoio para linha Palm(TM) da
3Com.
ports-print
release=cvs
Programa para impressão.
ports-russian
release=cvs
Suporte para língua Russa.
ports-security
release=cvs
Utilitários para
segurança.
ports-shells
release=cvs
Ambientes de linha de comando.
ports-sysutils
release=cvs
Utilitários para sistema.
ports-textproc
release=cvs
utilitários para processamento
de texto (não inclui
editoração
eletrônica).
ports-vietnamese
release=cvs
Suporte para língua
Vietnamita.
ports-www
release=cvs
Programa relacionado à teia
mundial de computadores
(WWW ).
ports-x11
release=cvs
Ports para apoiar
sistema de interface gráfica
X.
ports-x11-clocks
release=cvs
Relógios para X11.
ports-x11-fm
release=cvs
Gerenciadores de arquivo para
X11.
ports-x11-fonts
release=cvs
Fontes e utilitários de fontes
para X11.
ports-x11-toolkits
release=cvs
Conjunto de ferramentas para X11.
ports-x11-servers
Servidores X11.
ports-x11-wm
Gerenciadores de janela para X11.
src-all release=cvs
Os códigos fonte principal do FreeBSD,
incluindo o código
criptográfico.
src-base
release=cvs
Arquivos variados no topo de
/usr/src .
src-bin
release=cvs
Utilitários para usuário
que podem ser necessários no modo
monousuário
(/usr/src/bin ).
src-contrib
release=cvs
Utilitários e bibliotecas de fora
do projeto FreeBSD, utilizados praticamente
sem modificações
(/usr/src/contrib ).
src-crypto
release=cvs
Utilitários e bibliotecas
criptográficos de fora do projeto
FreeBSD, utilizados praticamente sem
modificações
(/usr/src/crypto ).
src-eBones
release=cvs
Kerberos e DES
(/usr/src/eBones ).
Não utilizado nas versões
correntes do FreeBSD.
src-etc
release=cvs
Arquivos de configuração
do sistema
(/usr/src/etc ).
src-games
release=cvs
Jogos
(/usr/src/games ).
src-gnu
release=cvs
Utilitários cobertos pela
Licença Pública GNU
(/usr/src/gnu ).
src-include
release=cvs
Arquivos de cabeçalho
(/usr/src/include ).
src-kerberos5
release=cvs
Pacote de segurança Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
Pacote de segurança KerberosIV
(/usr/src/kerberosIV ).
src-lib
release=cvs
Bibliotecas
(/usr/src/lib ).
src-libexec
release=cvs
Programas do sistema normalmente
executados por outros programas
(/usr/src/libexec ).
src-release
release=cvs
Arquivos necessários para
produzir um lançamento FreeBSD
(/usr/src/release ).
src-secure
release=cvs
DES
(/usr/src/secure ).
src-sbin
release=cvs
Utilitários de sistema para modo
monousuário
(/usr/src/sbin ).
src-share
release=cvs
Arquivos que podem ser compartilhados
entre múltiplos sistemas
(/usr/src/share ).
src-sys
release=cvs
O kernel
(/usr/src/sys ).
src-sys-crypto
release=cvs
Código criptográfico do
kernel
(/usr/src/sys/crypto ).
src-tools
release=cvs
Ferramentas variadas para
manutenção do FreeBSD
(/usr/src/tools ).
src-usrbin
release=cvs
Utilitários para usuário
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
Utilitários do Sistema
(/usr/src/usr.sbin ).
www release=cvs
Os códigos fonte do sítio WWW do
FreeBSD.
distrib release=self
Os arquivos de configuração do
servidor CVSup propriamente
dito. Utilizado por sítios espelho de
CVSup .
gnats release=current
O banco de dados de rastreamento de falhas
GNATS.
mail-archive release=current
Arquivo da lista de discussão do
FreeBSD.
www release=current
Os arquivos pré-processados do sítio
WWW do FreeBSD (não os arquivos de código
fonte). Utilizados por sítios espelho de
WWW.
Para mais Informações
Para o FAQ do CVSup e outras
informações sobre CVSup ,
veja The
CVSup Home Page .
A maior parte da discussão sobre
CVSup relacionado a FreeBSD
acontece na &a.hackers;. Novas versões do programa
são anunciadas lá, assim como na &a.announce;.
Perguntas e relatórios de falha devem ser
endereçadas para o autor do programa em
cvsup-bugs@polstra.com .
Sítios CVSup
Servidores de CVSup para
FreeBSD estão funcionando nos seguintes
sítios:
África do Sul
cvsup.za.FreeBSD.org (responsável
markm@FreeBSD.org )
cvsup2.za.FreeBSD.org (responsável
markm@FreeBSD.org )
Alemanha
cvsup.de.FreeBSD.org (responsável
rse@freebsd.org )
cvsup1.de.FreeBSD.org (responsável
wosch@FreeBSD.org )
cvsup2.de.FreeBSD.org (responsável
cvsup@nikoma.de )
cvsup3.de.FreeBSD.org (responsável
ag@leo.org )
cvsup4.de.FreeBSD.org (responsável
cvsup@cosmo-project.de )
cvsup5.de.FreeBSD.org (responsável
rse@freebsd.org )
Argentina
cvsup.ar.FreeBSD.org (responsável
msagre@cactus.fi.uba.ar )
Austrália
cvsup.au.FreeBSD.org (responsável
dawes@xfree86.org )
cvsup3.au.FreeBSD.org (responsável
FreeBSD@admin.gil.com.au )
Áustria
cvsup.at.FreeBSD.org (responsável
postmaster@wu-wien.ac.at )
Brasil
cvsup.br.FreeBSD.org (responsável
cvsup@cvsup.br.FreeBSD.org )
cvsup2.br.FreeBSD.org (responsável
tps@ti.sk )
cvsup3.br.FreeBSD.org (responsável
camposr@matrix.com.br )
cvsup4.br.FreeBSD.org (responsável
cvsup@tcoip.com.br )
Canadá
cvsup.ca.FreeBSD.org (responsável
dan@jaded.net )
cvsup2.ca.FreeBSD.org (responsável
hostmaster@ca.freebsd.org )
China
cvsup.cn.FreeBSD.org (responsável
phj@cn.FreeBSD.org )
Coréia
cvsup.kr.FreeBSD.org (responsável
cjh@kr.FreeBSD.org )
cvsup2.kr.FreeBSD.org (responsável
holywar@mail.holywar.net )
Dinamarca
cvsup.dk.FreeBSD.org (responsável
jesper@skriver.dk )
Eslovênia
cvsup.si.FreeBSD.org (responsável
blaz@si.FreeBSD.org )
Espanha
cvsup.es.FreeBSD.org (responsável
jesusr@FreeBSD.org )
cvsup2.es.FreeBSD.org (responsável
jesusr@FreeBSD.org )
cvsup3.es.FreeBSD.org (responsável
jose@we.lc.ehu.es )
Estônia
cvsup.ee.FreeBSD.org (responsável
taavi@uninet.ee )
EUA
cvsup1.FreeBSD.org (responsável
cwt@networks.cwu.edu ), estado de
Washington
cvsup2.FreeBSD.org (responsável
jdp@FreeBSD.org ),
Califórnia
cvsup3.FreeBSD.org (responsável
wollman@FreeBSD.org ),
Massachusetts
cvsup5.FreeBSD.org (responsável
mjr@blackened.com ), Arizona
cvsup6.FreeBSD.org (responsável
cvsup@cvsup.adelphiacom.net ),
Illinois
cvsup7.FreeBSD.org (responsável
jdp@FreeBSD.org ), estado de
Washington
cvsup8.FreeBSD.org (responsável
hostmaster@bigmirror.com ), estado de
Washington
cvsup9.FreeBSD.org (responsável
qbsd@uswest.net ), Minnesota
cvsup10.FreeBSD.org (responsável
jdp@FreeBSD.org ),
Califórnia
cvsup11.FreeBSD.org (responsável
cvsup@research.uu.net ),
Virgínia
cvsup12.FreeBSD.org (responsável
will@FreeBSD.org ), Indiana
cvsup13.FreeBSD.org (responsável
dima@valueclick.com ),
Califórnia
cvsup14.FreeBSD.org (responsável
freebsd-cvsup@mfnx.net ),
Califórnia
cvsup15.FreeBSD.org (responsável
cvsup@math.uic.edu ), Illinois
cvsup16.FreeBSD.org (responsável
pth3k@virginia.edu ), Virgínia
cvsup17.FreeBSD.org (responsável
cvsup@mirrortree.com ), estado de
Washington
Finlândia
cvsup.fi.FreeBSD.org (responsável
count@key.sms.fi )
cvsup2.fi.FreeBSD.org (responsável
count@key.sms.fi )
França
cvsup.fr.FreeBSD.org (responsável
hostmaster@fr.FreeBSD.org )
cvsup2.fr.FreeBSD.org (responsável
ftpmaint@uvsq.fr )
Grécia
cvsup.gr.FreeBSD.org (responsável
ftpadm@duth.gr )
cvsup2.gr.FreeBSD.org (responsável
paschos@cs.uoi.gr )
Holanda
cvsup.nl.FreeBSD.org (responsável
xaa@xaa.iae.nl )
cvsup2.nl.FreeBSD.org (responsável
cvsup@nl.uu.net )
Irlanda
cvsup.ie.FreeBSD.org (responsável
dwmalone@maths.tcd.ie ), Trinity
College, Dublin.
Islândia
cvsup.is.FreeBSD.org (responsável
cvsup@cvsup1.is.FreeBSD.org )
Japão
cvsup.jp.FreeBSD.org (responsável
cvsupadm@jp.FreeBSD.org )
cvsup2.jp.FreeBSD.org (responsável
max@FreeBSD.org )
cvsup3.jp.FreeBSD.org (responsável
shige@cin.nihon-u.ac.jp )
cvsup4.jp.FreeBSD.org (responsável
cvsup-admin@ftp.media.kyoto-u.ac.jp )
cvsup5.jp.FreeBSD.org (responsável
cvsup@imasy.or.jp )
cvsup6.jp.FreeBSD.org (responsável
cvsupadm@jp.FreeBSD.org )
Lituânia
cvsup.lt.FreeBSD.org (responsável
domas.mituzas@delfi.lt )
Noruega
cvsup.no.FreeBSD.org (responsável
Per.Hove@math.ntnu.no )
Nova Zelândia
cvsup.nz.FreeBSD.org (responsável
cvsup@langille.org )
Polônia
cvsup.pl.FreeBSD.org (responsável
Mariusz@kam.pl )
Portugal
cvsup.pt.FreeBSD.org (responsável
jpedras@webvolution.net )
República Eslovaca
cvsup.sk.FreeBSD.org (responsável
tps@tps.sk )
cvsup2.sk.FreeBSD.org (responsável
tps@tps.sk )
República Tcheca
cvsup.cz.FreeBSD.org (responsável
cejkar@dcse.fee.vutbr.cz )
Rússia
cvsup.ru.FreeBSD.org (responsável
ache@nagual.pp.ru )
cvsup2.ru.FreeBSD.org (responsável
dv@dv.ru )
cvsup3.ru.FreeBSD.org (responsável
fjoe@iclub.nsu.ru )
cvsup4.ru.FreeBSD.org (responsável
zhecka@klondike.ru )
cvsup5.ru.FreeBSD.org (responsável
maxim@macomnet.ru )
cvsup6.ru.FreeBSD.org (responsável
pvr@corbina.net )
Suécia
cvsup.se.FreeBSD.org (responsável
pantzer@ludd.luth.se )
cvsup2.se.FreeBSD.org (responsável
cvsup@dataphone.net )
Taiwan (Formosa)
cvsup.tw.FreeBSD.org (responsável
jdli@freebsd.csie.nctu.edu.tw )
cvsup2.tw.FreeBSD.org (responsável
ycheng@sinica.edu.tw )
cvsup3.tw.FreeBSD.org (responsável
foxfair@FreeBSD.org )
Ucrânia
cvsup2.ua.FreeBSD.org (responsável
freebsd-mnt@lucky.net )
cvsup3.ua.FreeBSD.org (responsável
ftpmaster@ukr.net ), Kiev
cvsup4.ua.FreeBSD.org (responsável
phantom@cris.net )
Sítios AFS
Servidores AFS para FreeBSD estão sendo executados
nos seguintes sítios;
Suécia
O caminho para os arquivos é:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Clube do Computador de Stacken, KTH, Suécia
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Responsável ftp@stacken.kth.se
diff --git a/ru_RU.KOI8-R/articles/contributing/article.xml b/ru_RU.KOI8-R/articles/contributing/article.xml
index bbb07455ae..048bed79af 100644
--- a/ru_RU.KOI8-R/articles/contributing/article.xml
+++ b/ru_RU.KOI8-R/articles/contributing/article.xml
@@ -1,551 +1,551 @@
õÞÁÓÔÉÅ × ÐÒÏÅËÔÅ FreeBSD
÷ ÜÔÏÊ ÓÔÁÔØÅ ÏÐÉÓÁÎÙ ÒÁÚÌÉÞÎÙÅ ÓÐÏÓÏÂÙ, ËÏÔÏÒÙÍÉ ÏÔÄÅÌØÎÙÅ ÌÉÃÁ É
ÏÒÇÁÎÉÚÁÃÉÊ ÍÏÇÕÔ ÐÒÉÎÑÔØ ÕÞÁÓÔÉÅ × ðÒÏÅËÔÅ FreeBSD.
äÖÏÒÄÁÎ
èÁÂÂÁÒÄ
ôÅËÓÔ ÐÒÅÄÏÓÔÁ×ÉÌ
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
ÕÞÁÓÔÉÅ
éÔÁË, ×Ù ÈÏÔÉÔÅ ×ÎÅÓÔÉ Ó×ÏÊ ×ËÌÁÄ ×Ï FreeBSD? üÔÏ ×ÅÌÉËÏÌÅÐÎÏ!
öÉÚÎÅÓÐÏÓÏÂÎÏÓÔØ FreeBSD ÏÓÎÏ×ÁÎÁ ÎÁ ÐÏÍÏÝÉ Å£
ÐÏÌØÚÏ×ÁÔÅÌÅÊ. ÷ÁÛÁ ÐÏÍÏÝØ ÎÅ ÔÏÌØËÏ ÐÒÉÎÉÍÁÅÔÓÑ, ÏÎÁ ÖÉÚÎÅÎÎÏ ÎÅÏÂÈÏÄÉÍÁ
ÄÌÑ ÐÒÏÄÏÌÖÅÎÉÑ ÒÏÓÔÁ FreeBSD.
îÅÓÍÏÔÒÑ ÎÁ Õ×ÅÒÅÎÉÑ ÎÅËÏÔÏÒÙÈ ÌÀÄÅÊ, ×ÁÍ ÎÅ ÎÕÖÎÏ ÂÙÔØ ÇÅÎÉÁÌØÎÙÍ
ÐÒÏÇÒÁÍÍÉÓÔÏÍ ÉÌÉ ÐÅÒÓÏÎÏÊ, ÌÉÞÎÏ Ó×ÑÚÁÎÎÏÊ Ó ÒÕËÏ×ÏÄÑÝÅÊ ÇÒÕÐÐÏÊ FreeBSD,
ÞÔÏÂÙ ×ÁÛÁ ÐÏÍÏÝØ ÂÙÌÁ ÐÒÉÎÑÔÁ. FreeBSD ÒÁÚÒÁÂÁÔÙ×ÁÅÔ ÂÏÌØÛÏÅ É
Õ×ÅÌÉÞÉ×ÁÀÝÅÅÓÑ ËÏÌÉÞÅÓÔ×Ï ÕÞÁÓÔÎÉËÏ× ÓÏ ×ÓÅÇÏ ÍÉÒÁ, ÓÁÍÏÇÏ ÒÁÚÎÏÇÏ
×ÏÚÒÁÓÔÁ É ÒÁÚÎÙÈ ÏÂÌÁÓÔÅÊ ÔÅÈÎÉÞÅÓËÏÊ ÜËÓÐÅÒÔÉÚÙ. òÁÂÏÔÙ, ËÏÔÏÒÕÀ
ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ, ×ÓÅÇÄÁ ÂÏÌØÛÅ, ÞÅÍ ÒÁÚÒÁÂÏÔÞÉËÏ×, ÍÏÇÕÝÉÈ Å£ ×ÙÐÏÌÎÉÔØ,
É ÄÏÐÏÌÎÉÔÅÌØÎÁÑ ÐÏÍÏÞØ ×ÓÅÇÄÁ ÐÒÉ×ÅÔÓÔ×ÕÅÔÓÑ.
ðÒÏÅËÔ FreeBSD ÚÁÎÉÍÁÅÔÓÑ ÏÐÅÒÁÃÉÏÎÎÏÊ ÓÉÓÔÅÍÏÊ × ÃÅÌÏÍ, Á ÎÅ ÔÏÌØËÏ
ÑÄÒÏÍ ÉÌÉ ÎÅÓËÏÌØËÉÍÉ ÏÔÄÅÌØÎÙÍÉ ÕÔÉÌÉÔÁÍÉ. ôÁËÉÍ ÏÂÒÁÚÏÍ, × ÎÁÛÅÍ
TODO -ÓÐÉÓËÅ ÛÉÒÏËÉÊ ÓÐÅËÔÒ ÚÁÄÁÞ: ÏÔ ÄÏËÕÍÅÎÔÁÃÉÉ,
ÂÅÔÁ-ÔÅÓÔÉÒÏ×ÁÎÉÑ É ÐÒÅÚÅÎÔÁÃÉÊ ÄÏ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ É
ÓÐÅÃÉÆÉÞÅÓËÉÈ ÒÁÚÒÁÂÏÔÏË ÕÒÏ×ÎÑ ÑÄÒÁ. ìÀÄÉ ÌÀÂÏÇÏ ÕÒÏ×ÎÑ ÐÒÁËÔÉÞÅÓËÉ ×
ÌÀÂÏÊ ÏÂÌÁÓÔÉ ÏÐÒÅÄÅÌ£ÎÎÏ ÓÍÏÇÕÔ ÐÏÍÏÞØ ÐÒÏÅËÔÕ.
ëÏÍÍÅÒÞÅÓËÉÅ ÓÔÒÕËÔÕÒÙ, Ó×ÑÚÁÎÎÙÅ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ FreeBSD, ÔÁËÖÅ
ÐÒÉÇÌÁÛÁÀÔÓÑ Ë ÄÉÁÌÏÇÕ. îÕÖÎÙ ÌÉ ×ÁÍ ÏÓÏÂÙÅ ÒÁÓÛÉÒÅÎÉÑ, ÄÌÑ ÒÁÂÏÔÙ ×ÁÛÅÇÏ
ÐÒÏÄÕËÔÁ? ÷Ù Õ×ÉÄÉÔÅ, ÞÔÏ ÍÙ ÏÔ×ÅÞÁÅÍ ÎÁ ×ÁÛÉ ÚÁÐÒÏÓÙ, ÅÓÌÉ ÏÎÉ ÎÅ ÓÌÉÛËÏÍ
ÎÅÏÂÙÞÎÙ. ÷Ù ÒÁÂÏÔÁÅÔÅ ÎÁÄ ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ ÐÒÏÄÕËÔÁÍÉ? äÁÊÔÅ ÎÁÍ ÚÎÁÔØ!
íÙ ÓÍÏÖÅÍ ÒÁÂÏÔÁÔØ ×ÍÅÓÔÅ ÎÁÄ ÎÅËÏÔÏÒÙÍÉ ÅÇÏ ÁÓÐÅËÔÁÍÉ. íÉÒ Ó×ÏÂÏÄÎÏÇÏ
ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ ÓÔÁ×ÉÔ ÐÏÄ ÓÏÍÎÅÎÉÅ ÍÎÏÇÉÅ ÓÕÝÅÓÔ×ÕÀÝÉÅ
ÐÒÅÄÓÔÁ×ÌÅÎÉÑ Ï ÔÏÍ, ËÁË ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÅ ÒÁÚÒÁÂÁÔÙ×ÁÅÔÓÑ,
ÐÒÏÄÁ£ÔÓÑ É ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ, É ÍÙ ÎÁÓÔÏÑÔÅÌØÎÏ ÐÒÏÓÉÍ ×ÁÓ ÐÏÓÍÏÔÒÅÔØ ÎÁ
ÎÅÇÏ ÅÝ£ ÒÁÚ.
þÔÏ ÎÕÖÎÏ
÷ ÓÌÅÄÕÀÝÅÍ ÐÅÒÅÞÎÅ ÐÒÅÄÓÔÁ×ÌÅÎÙ ÚÁÄÁÞÉ É ÐÏÄÐÒÏÅËÔÙ, Ñ×ÌÑÀÝÉÅÓÑ
ÎÅËÏÔÏÒÙÍ ÏÔÒÁÖÅÎÉÅÍ ÒÁÚÌÉÞÎÙÈ ÓÐÉÓËÏ× TODO É
ÚÁÐÒÏÓÏ× ÐÏÌØÚÏ×ÁÔÅÌÅÊ.
ôÅËÕÝÉÅ ÚÁÄÁÞÉ ÎÅ ÄÌÑ ÐÒÏÇÒÁÍÍÉÓÔÏ×
íÎÏÇÉÅ ÌÀÄÉ, Ó×ÑÚÁÎÎÙÅ Ó FreeBSD, ÎÅ Ñ×ÌÑÀÔÓÑ ÐÒÏÇÒÁÍÍÉÓÔÁÍÉ. ÷
ðÒÏÅËÔÅ ÕÞÁÓÔ×ÕÀÔ ÓÏÚÄÁÔÅÌÉ ÄÏËÕÍÅÎÔÁÃÉÉ, Web-ÄÉÚÁÊÎÅÒÙ É ÓÐÅÃÉÁÌÉÓÔÙ
ÐÏ ÐÏÄÄÅÒÖËÅ ÐÏÌØÚÏ×ÁÔÅÌÅÊ. ÷ÓÅ, ÞÔÏ ÉÍ ÎÕÖÎÏ ÄÌÑ ÕÞÁÓÔÉÑ, ÜÔÏ Ó×Ï£
×ÒÅÍÑ É ÖÅÌÁÎÉÅ ÕÞÉÔØÓÑ.
ðÅÒÉÏÄÉÞÅÓËÉ ÞÉÔÁÊÔÅ FAQ É òÕËÏ×ÏÄÓÔ×Ï. åÓÌÉ ÞÔÏ-ÔÏ ÏÐÉÓÁÎÏ
ÐÌÏÈÏ, ÕÓÔÁÒÅÌÏ ÉÌÉ ÄÁÖÅ ÐÏÌÎÏÓÔØÀ ÎÅÐÒÁ×ÉÌØÎÏ, ÄÁÊÔÅ ÎÁÍ ÚÎÁÔØ.
åÝ£ ÌÕÞÛÅ, ÅÓÌÉ ×Ù ÐÒÉÛÌ£ÔÅ ÎÁÍ ÉÓÐÒÁ×ÌÅÎÉÅ (×ÙÕÞÉÔØ Docbook ÎÅ ÔÁË
ÓÌÏÖÎÏ, ÎÏ É ÐÒÏÔÉ× ÐÏÓÌÁÎÉÊ × ÆÏÒÍÁÔÅ ASCII ÎÉËÔÏ ×ÏÚÒÁÖÁÔØ ÎÅ
ÂÕÄÅÔ).
ðÏÍÏÇÉÔÅ ÐÅÒÅ×ÅÓÔÉ ÄÏËÕÍÅÎÔÁÃÉÀ FreeBSD ÎÁ ×ÁÛ ÒÏÄÎÏÊ ÑÚÙË.
åÓÌÉ ÄÏËÕÍÅÎÔÁÃÉÑ ÎÁ ×ÁÛÅÍ ÑÚÙËÅ ÕÖÅ ÓÕÝÅÓÔ×ÕÅÔ, ×Ù ÍÏÖÅÔÅ ÐÏÍÏÞØ
ÐÅÒÅ×ÅÓÔÉ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÄÏËÕÍÅÎÔÙ ÉÌÉ ÐÒÏ×ÅÒÉÔØ, ÎÅ ÕÓÔÁÒÅÌÉ ÌÉ
ÐÅÒÅ×ÏÄÙ. ðÅÒ×ÙÍ ÄÅÌÏÍ ×ÚÇÌÑÎÉÔÅ ÎÁ FAQ ÐÏ
ÐÅÒÅ×ÏÄÁÍ × õÞÅÂÎÉËÅ ÐÒÏÅËÔÁ ÄÏËÕÍÅÎÔÉÒÏ×ÁÎÉÑ FreeBSD. ÷ÁÓ
ÎÅ ÐÒÉÚÙ×ÁÀÔ ÐÅÒÅ×ÅÓÔÉ ×ÓÅ ÄÏËÕÍÅÎÔÙ FreeBSD — ËÁË
ÄÏÂÒÏ×ÏÌÅÃ, ×Ù ÍÏÖÅÔÅ ÄÅÌÁÔØ ÓÔÏÌØËÏ ÐÅÒÅ×ÏÄÏ×, ÓËÏÌØËÏ ÚÁÈÏÔÉÔÅ.
åÓÌÉ ËÔÏ-ÔÏ ÎÁÞÁÌ ÐÅÒÅ×ÏÄ, ÄÒÕÇÉÅ ×ÓÅÇÄÁ ÐÒÉÓÏÅÄÉÎÑÔÓÑ. åÓÌÉ Õ ×ÁÓ
ÅÓÔØ ×ÒÅÍÑ É ÖÅÌÁÎÉÅ ÐÅÒÅ×ÅÓÔÉ ÏÄÎÕ ÞÁÓÔØ ÄÏËÕÍÅÎÔÁÃÉÉ, ÐÏÖÁÌÕÊÓÔÁ,
ÐÅÒÅ×ÅÄÉÔÅ ÉÎÓÔÒÕËÃÉÉ ÐÏ ÕÓÔÁÎÏ×ËÅ.
÷ÒÅÍÑ ÏÔ ×ÒÅÍÅÎÉ (ÉÌÉ ÄÁÖÅ ÒÅÇÕÌÑÒÎÏ) ÞÉÔÁÊÔÅ &a.questions; É
&ng.misc;. ÷ÁÍ ÍÏÖÅÔ ÐÏÎÒÁ×ÉÔØÓÑ ÄÅÌÉÔØÓÑ Ó×ÏÉÍ ÏÐÙÔÏÍ É ÐÏÍÏÇÁÔØ
ÌÀÄÑÍ ÒÅÛÁÔØ ÉÈ ÐÒÏÂÌÅÍÙ; ÉÎÏÇÄÁ ×Ù ÓÍÏÖÅÔÅ ÕÚÎÁÔØ ÄÌÑ ÓÅÂÑ ÞÔÏ-ÔÏ
ÎÏ×ÏÅ! üÔÉ ÆÏÒÕÍÙ ÍÏÇÕÔ ÔÁËÖÅ ÓÔÁÔØ ÉÓÔÏÞÎÉËÏÍ ÉÄÅÊ, ÎÁÄ ËÏÔÏÒÙÍÉ
×ÁÍ ÓÔÏÉÔ ÐÏÒÁÂÏÔÁÔØ.
ôÅËÕÝÉÅ ÚÁÄÁÞÉ ÄÌÑ ÐÒÏÇÒÁÍÍÉÓÔÏ×
âÏÌØÛÉÎÓÔ×Ï ÚÁÄÁÞ, ÐÅÒÅÞÉÓÌÅÎÎÙÈ ÚÄÅÓØ, ÔÒÅÂÕÀÔ ÌÉÂÏ ÚÎÁÞÉÔÅÌØÎÙÈ
ÚÁÔÒÁÔ ×ÒÅÍÅÎÉ, ÌÉÂÏ ÇÌÕÂÏËÉÈ ÚÎÁÎÉÊ ÑÄÒÁ FreeBSD, ÌÉÂÏ ÔÏÇÏ É ÄÒÕÇÏÇÏ.
ïÄÎÁËÏ ÉÍÅÅÔÓÑ ÔÁËÖÅ ÍÎÏÇÏ ÐÏÌÅÚÎÙÈ ÚÁÄÁÞ, ËÏÔÏÒÙÅ ÐÏÄÏÊÄÕÔ ÄÌÑ
×ÏÓËÒÅÓÎÙÈ ÈÁËÅÒÏ×
.
åÓÌÉ ×Ù ÒÁÂÏÔÁÅÔÅ Ó FreeBSD-CURRENT É ÏÂÌÁÄÁÅÔÅ ÈÏÒÏÛÉÍ
ÐÏÄËÌÀÞÅÎÉÅÍ Ë Internet, ÔÏ ÓÕÝÅÓÔ×ÕÅÔ ÍÁÛÉÎÁ current.FreeBSD.org , ËÏÔÏÒÁÑ ÓÔÒÏÉÔ ÐÏÌÎÙÊ
ÒÅÌÉÚ ÅÖÅÄÎÅ×ÎÏ—ÓÅÊÞÁÓ É ×ÓÅÇÄÁ. ðÏÐÒÏÂÕÊÔÅ ÕÓÔÁÎÏ×ÉÔØ
ÓÁÍÙÊ ÐÏÓÌÅÄÎÉÊ ÒÅÌÉÚ Ó ÜÔÏÊ ÍÁÛÉÎÙ É ÓÏÏÂÝÉÔÅ ÏÂÏ ×ÓÅÈ
ÏÂÎÁÒÕÖÅÎÎÙÈ ÐÒÉ ÜÔÏÍ ÏÛÉÂËÁÈ.
þÉÔÁÊÔÅ &a.bugs;. úÄÅÓØ ÍÏÖÅÔ ×ÓÔÒÅÔÉÔØÓÑ ÐÒÏÂÌÅÍÁ, ËÏÔÏÒÕÀ
×Ù ÓÍÏÖÅÔÅ ËÏÎÓÔÒÕËÔÉ×ÎÏ ÐÒÏËÏÍÍÅÎÔÉÒÏ×ÁÔØ ÉÌÉ ÐÁÔÞÉ, ËÏÔÏÒÙÅ ×Ù
ÍÏÖÅÔÅ ÐÒÏÔÅÓÔÉÒÏ×ÁÔØ. ìÉÂÏ ×Ù ÍÏÖÅÔÅ ÄÁÖÅ ÐÏÐÙÔÁÔØÓÑ ÉÓÐÒÁ×ÉÔØ
ËÁËÕÀ-ÔÏ ÐÒÏÂÌÅÍÕ ÓÁÍÏÓÔÏÑÔÅÌØÎÏ.
åÓÌÉ ×Ù ÚÎÁÅÔÅ Ï ÓÕÝÅÓÔ×Ï×ÁÎÉÉ ËÁËÉÈ-ÌÉÂÏ ÉÓÐÒÁ×ÌÅÎÉÊ ÏÛÉÂÏË,
ÕÓÐÅÛÎÏ ÐÒÉÍÅΣÎÎÙÈ Ë -CURRENT, ÎÏ ÅÝ£ ÎÅ ÐÅÒÅÎÅÓ£ÎÎÙÈ × -STABLE
ÐÏÓÌÅ ÄÏÓÔÁÔÏÞÎÏ ÂÏÌØÛÏÇÏ ÉÎÔÅÒ×ÁÌÁ ×ÒÅÍÅÎÉ (ÏÂÙÞÎÏ ÎÅÓËÏÌØËÏ
ÎÅÄÅÌØ), ÎÁÐÒÁרÔÅ ËÏÍÍÉÔÔÅÒÕ ×ÅÖÌÉ×ÏÅ ÎÁÐÏÍÉÎÁÎÉÅ.
ðÅÒÅÎÏÓ ÓÔÏÒÏÎÎÅÇÏ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ × ËÁÔÁÌÏÇ
src/contrib ÄÅÒÅ×Á
ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×.
ðÒÏ×ÅÒËÁ ÁËÔÕÁÌØÎÏÓÔÉ ËÏÄÁ × ËÁÔÁÌÏÇÅ
src/contrib .
ðÏÓÔÒÏÅÎÉÅ ÉÚ ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× (ÉÌÉ Å£ ÞÁÓÔÉ) Ó
×ËÌÀÞÅÎÉÅÍ ÒÅÖÉÍÁ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÐÒÅÄÕÐÒÅÖÄÅÎÉÊ, ÉÚÂÁ×ÌÅÎÉÅ ÏÔ
ÎÉÈ.
éÓÐÒÁ×ÌÅÎÉÅ ÐÒÅÄÕÐÒÅÖÄÅÎÉÊ ÏÔ ÐÏÒÔÏ×, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÀÔ
ÎÅÄÏÐÕÓÔÉÍÙÅ ×ÙÚÏ×Ù ÔÉÐÁ gets() ÉÌÉ ×ËÌÀÞÁÀÔ
ÆÁÊÌ ÏÂßÑ×ÌÅÎÉÊ malloc.h .
åÓÌÉ ×Ù ÓÏÚÄÁ×ÁÌÉ ÐÏÒÔÙ É ×ÁÍ ÐÒÉÈÏÄÉÌÏÓØ ÄÅÌÁÔØ ÓÐÅÃÉÆÉÞÎÙÅ
ÄÌÑ &os; ÉÓÐÒÁ×ÌÅÎÉÑ, ÐÏÛÌÉÔÅ ×ÁÛÉ ÐÁÔÞÉ Á×ÔÏÒÁÍ ÏÒÉÇÉÎÁÌØÎÏÇÏ
ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ (ÜÔÏ ÕÐÒÏÓÔÉÔ ×ÁÍ ÖÉÚÎØ ÐÒÉ ×ÙÐÕÓËÅ
ÓÌÅÄÕÀÝÅÊ ×ÅÒÓÉÉ).
îÁÊÄÉÔÅ ËÏÐÉÉ ÏÆÉÃÉÁÌØÎÙÈ ÓÔÁÎÄÁÒÔÏ×, ÎÁÐÒÉÍÅÒ, &posix;. ÷Ù
ÍÏÖÅÔÅ ÎÁÊÔÉ ÎÅÓËÏÌØËÏ ÓÓÙÌÏË ÎÁ ÎÉÈ ÎÁ ÓÔÒÁÎÉÃÅ Web-ÓÁÊÔÁ ðÒÏÅËÔÁ ÓÏÏÔ×ÅÔÓÔ×ÉÑ
FreeBSD ÓÔÁÎÄÁÒÔÁÍ C99 & POSIX . óÒÁ×ÎÉÔÅ ÐÏ×ÅÄÅÎÉÅ FreeBSD
Ó ÔÅÍ, ÞÔÏ ÏÐÒÅÄÅÌÅÎÏ ÓÔÁÎÄÁÒÔÏÍ. åÓÌÉ ÒÅÁËÃÉÑ ÏÔÌÉÞÁÅÔÓÑ,
ÏÓÏÂÅÎÎÏ × ÎÅÚÎÁÞÉÔÅÌØÎÙÈ ÉÌÉ ÎÅÐÏÎÑÔÎÙÈ ÒÁÚÄÅÌÁÈ ÓÐÅÃÉÆÉËÁÃÉÉ,
ÎÁÐÒÁרÔÅ Ï ÜÔÏÍ PR. åÓÌÉ ÍÏÖÅÔÅ, ÎÁÊÄÉÔÅ, ËÁË ÉÓÐÒÁ×ÉÔØ ÜÔÏ É
×ËÌÀÞÉÔÅ × PR ÐÁÔÞ. åÓÌÉ ×Ù ÐÏÌÁÇÁÅÔÅ, ÞÔÏ × ÓÔÁÎÄÁÒÔÅ ÅÓÔØ
ÏÛÉÂËÁ, ÎÁÐÒÁרÔÅ ÚÁÐÒÏÓ ÅÇÏ ÒÁÚÒÁÂÏÔÞÉËÁÍ.
ðÒÅÄÌÏÖÉÔÅ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÚÁÄÁÞÉ ÄÌÑ ÜÔÏÇÏ ÓÐÉÓËÁ!
òÁÂÏÔÁ Ó ÂÁÚÏÊ ÓÏÏÂÝÅÎÉÊ ÏÂ ÏÛÉÂËÁÈ PR
ÂÁÚÁ ÓÏÏÂÝÅÎÉÊ ÏÂ ÏÛÉÂËÁÈ
óÐÉÓÏË
ÓÏÏÂÝÅÎÉÊ ÏÂ ÏÛÉÂËÁÈ FreeBSD ÓÏÄÅÒÖÉÔ ×ÓÅ ÁËÔÕÁÌØÎÙÅ
ÓÏÏÂÝÅÎÉÑ Ï ÐÒÏÂÌÅÍÁÈ É ÚÁÐÒÏÓÙ ÎÁ ÕÌÕÞÛÅÎÉÑ, ËÏÔÏÒÙÅ ÂÙÌÉ ÐÏÓÌÁÎÙ
ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ FreeBSD. âÁÚÁ ÄÁÎÎÙÈ PR ÓÏÄÅÒÖÉÔ ÚÁÄÁÞÉ ËÁË ÄÌÑ
ÐÒÏÇÒÁÍÍÉÓÔÏ×, ÔÁË É ÎÅ ÄÌÑ ÎÉÈ. ðÒÏÓÍÏÔÒÉÔÅ ÏÔËÒÙÔÙÅ PR, ÎÁÊÄÉÔÅ ÔÅ,
ÞÔÏ ÐÒÉ×ÌÅËÕÔ ×ÁÛÅ ×ÎÉÍÁÎÉÅ.
îÅËÏÔÏÒÙÅ ÉÚ ÎÉÈ ÍÏÇÕÔ ÂÙÔØ ÏÞÅÎØ ÐÒÏÓÔÙÍÉ, ÔÒÅÂÕÀÝÉÍÉ ÌÉÛØ ÅÝ£ ÏÄÎÏÊ
ÐÁÒÙ ÇÌÁÚ, ÞÔÏÂÙ ÐÏÓÍÏÔÒÅÔØ É ÐÏÄÔ×ÅÒÄÉÔØ, ÞÔÏ ÐÒÅÄÌÁÇÁÅÍÏÅ × PR
ÉÓÐÒÁ×ÌÅÎÉÅ ÄÏÓÔÁÔÏÞÎÏ. äÒÕÇÉÅ ÍÏÇÕÔ ÂÙÔØ ÇÏÒÁÚÄÏ ÓÌÏÖÎÅÅ É ÄÁÖÅ ×Ï×ÓÅ
ÎÅ ÓÏÄÅÒÖÁÔØ ÉÓÐÒÁ×ÌÅÎÉÑ.
îÁÞÎÉÔÅ Ó ÔÅÈ PR, ËÏÔÏÒÙÅ ÎÉËÏÍÕ ÅÝ£ ÎÅ ÎÁÚÎÁÞÅÎÙ. åÓÌÉ PR ÕÖÅ
ÚÁ ËÅÍ-ÔÏ ÚÁËÒÅÐÌÅÎÏ, ÎÏ ÓÏÄÅÒÖÉÔ ÐÒÏÂÌÅÍÕ, ËÏÔÏÒÕÀ ×Ù ÍÏÖÅÔÅ ÒÅÛÉÔØ,
ÎÁÐÒÁרÔÅ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ ÐÉÓØÍÏ ÞÅÌÏ×ÅËÕ, ËÏÔÏÒÏÍÕ ÎÁÚÎÁÞÅÎÏ ÜÔÏ
PR, É ÓÐÒÏÓÉÔÅ, ÍÏÖÅÔÅ ÌÉ ×Ù ÐÏÒÁÂÏÔÁÔØ ÎÁÄ ÎÅÊ—Õ ÎÉÈ ÕÖÅ ÍÏÖÅÔ
ÇÏÔÏ× ÐÁÔÞ ÄÌÑ ÔÅÓÔÉÒÏ×ÁÎÉÑ ÉÌÉ ËÁËÉÅ-ÔÏ ÉÄÅÉ, ËÏÔÏÒÙÅ ÍÏÖÎÏ ×ÍÅÓÔÅ
ÏÂÓÕÄÉÔØ.
÷ÙÂÅÒÉÔÅ ÏÄÉÎ ÉÚ ÐÕÎËÔÏ× ÓÏ ÓÔÒÁÎÉÞËÉ ÉÄÅÊ
óÐÉÓÏË ÐÒÏÅËÔÏ×
É ÉÄÅÊ ÄÌÑ ÄÏÂÒÏ×ÏÌØÃÅ× ÔÁËÖÅ ÄÏÓÔÕÐÅÎ ÄÌÑ ÌÀÄÅÊ,
ÖÅÌÁÀÝÉÈ ÐÏÍÏÞØ ÐÒÏÅËÔÕ &os;. óÐÉÓÏË ÐÏÓÔÏÑÎÎÏ ÏÂÎÏ×ÌÑÅÔÓÑ É
ÓÏÄÅÒÖÉÔ ÐÕÎËÔÙ, ËÁË ÄÌÑ ÐÒÏÇÒÁÍÍÉÓÔÏ×, ÔÁË É ÄÌÑ ÎÅ
ÐÒÏÇÒÁÍÍÉÓÔÏ×, Ó ÉÎÆÏÒÍÁÃÉÅÊ Ï ËÁÖÄÏÍ ÐÒÏÅËÔÅ.
ëÁË ÐÒÉÎÑÔØ ÕÞÁÓÔÉÅ × ÒÁÂÏÔÅ
èÁÒÁËÔÅÒ ÕÞÁÓÔÉÑ × ÒÁÂÏÔÅ ÎÁÄ ÓÉÓÔÅÍÏÊ ÏÂÙÞÎÏ ÐÏÄÐÁÄÁÅÔ ÐÏÄ ÏÄÎÕ ÉÌÉ
ÎÅÓËÏÌØËÏ ÉÚ ÓÌÅÄÕÀÝÉÈ 5 ËÁÔÅÇÏÒÉÊ:
óÏÏÂÝÅÎÉÑ ÏÂ ÏÛÉÂËÁÈ É ÏÔÚÙ×Ù ÏÂÝÅÇÏ ÈÁÒÁËÔÅÒÁ
éÄÅÉ ÉÌÉ ÐÏÖÅÌÁÎÉÑ ÏÂÝÅÇÏ ÔÅÈÎÉÞÅÓËÏÇÏ
ÈÁÒÁËÔÅÒÁ ÄÏÌÖÎÙ ÎÁÐÒÁ×ÌÑÔØÓÑ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ × ÁÄÒÅÓ &a.hackers;.
ðÏÄÏÂÎÙÍ ÖÅ ÏÂÒÁÚÏÍ ÔÏÔ, ËÔÏ ÉÎÔÅÒÅÓÕÅÔÓÑ ÔÁËÉÍÉ ×ÅÝÁÍÉ (É ÕÓÔÏÊÞÉ× Ë
ÂÏÌØÛÏÍÕ ÐÏÔÏËÕ ÐÏÞÔÙ!) ÍÏÖÅÔ ÐÏÄÐÉÓÁÔØÓÑ ÎÁ
ÓÐÉÓÏË ÒÁÓÓÙÌËÉ &a.hackers;. ïÂÒÁÔÉÔÅÓØ Ë òÕËÏ×ÏÄÓÔ×Õ
FreeBSD ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÉ ÏÂ ÜÔÏÍ É
ÄÒÕÇÉÈ ÓÐÉÓËÁÈ ÒÁÓÓÙÌËÉ.
åÓÌÉ ×Ù ÎÁÛÌÉ ÏÛÉÂËÕ ÉÌÉ ÐÒÅÄÌÁÇÁÅÔÅ ×ÎÅÓÔÉ ËÁËÏÅ-ÔÏ ËÏÎËÒÅÔÎÏÅ
ÉÓÐÒÁ×ÌÅÎÉÅ, ÐÏÖÁÌÕÊÓÔÁ, ÏÔÐÒÁרÔÅ ÓÏÏÂÝÅÎÉÅ ÐÒÉ ÐÏÍÏÝÉ ÐÒÏÇÒÁÍÍÙ
&man.send-pr.1; ÉÌÉ Å£
Web-ÜË×É×ÁÌÅÎÔÁ . ðÏÓÔÁÒÁÊÔÅÓØ ÚÁÐÏÌÎÉÔØ ×ÓÅ ÐÏÌÑ × ÓÏÏÂÝÅÎÉÉ
Ï ÏÛÉÂËÅ. åÓÌÉ ÅÇÏ ÒÁÚÍÅÒ ÏÎÏ ÎÅ ÐÒÅ×ÙÛÁÅÔ 65 ëÂÁÊÔ, ×ËÌÀÞÉÔÅ ×ÓÅ
ÐÁÔÞÉ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ × ÓÏÏÂÝÅÎÉÅ. åÓÌÉ ÐÁÔÞ ÐÒÅÄÎÁÚÎÁÞÅÎ ÄÌÑ ÄÅÒÅ×Á
ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ÐÏÍÅÓÔÉÔÅ [PATCH] × ÔÅÍÅ
ÓÏÏÂÝÅÎÉÑ. ðÒÉ ×ËÌÀÞÅÎÉÉ ÐÁÔÞÅÊ ÎÅ ÉÓÐÏÌØÚÕÊÔÅ
ÔÅÈÎÉËÕ cut-and-paste, ÐÏÔÏÍÕ ÞÔÏ ÐÒÉ ÜÔÏÍ ÓÉÍ×ÏÌÙ ÔÁÂÕÌÑÃÉÉ
ÐÒÅÏÂÒÁÚÕÀÔÓÑ × ÐÒÏÂÅÌÙ É ÐÁÔÞ ÓÔÁÎÏ×ÉÔÓÑ ÎÅÐÒÉÇÏÄÎÙÍ Ë ÉÓÐÏÌØÚÏ×ÁÎÉÀ.
åÓÌÉ ÏÂß£Í ÐÁÔÞÅÊ ÐÒÅ×ÙÛÁÅÔ 20 ëÂÁÊÔ, ÌÕÞÛÅ ×ËÌÀÞÁÔØ ÉÈ × ÓÏÏÂÝÅÎÉÅ
× ÓÖÁÔÏÍ ×ÉÄÅ, ÄÌÑ ÞÅÇÏ ÕÐÁËÕÊÔÅ ÉÈ (ÎÁÐÒÉÍÅÒ, ÐÒÉ ÐÏÍÏÝÉ
&man.gzip.1; ÉÌÉ &man.bzip2.1;) É ÏÂÒÁÂÏÔÁÊÔÅ ÁÒÈÉ× ÕÔÉÌÉÔÏÊ
&man.uuencode.1;.
ðÏÓÌÅ ÏÔÐÒÁ×ËÉ ÓÏÏÂÝÅÎÉÑ ×Ù ÄÏÌÖÎÙ ÐÏÌÕÞÉÔØ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ É ÎÏÍÅÒ
ÄÌÑ ÏÔÓÌÅÖÉ×ÁÎÉÑ. óÏÈÒÁÎÉÔÅ ÜÔÏÔ ÎÏÍÅÒ, ÞÔÏÂÙ ÉÓÐÏÌØÚÏ×ÁÔØ ÅÇÏ ×
ÄÁÌØÎÅÊÛÅÍ ÐÒÉ ÎÁÐÒÁ×ÌÅÎÉÉ ÐÏÄÒÏÂÎÏÓÔÅÊ Ï ÐÒÏÂÌÅÍÅ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ
ÎÁ ÁÄÒÅÓ &a.bugfollowup;. éÓÐÏÌØÚÕÊÔÅ ÎÏÍÅÒ × ËÁÞÅÓÔ×Å ÔÅÍÙ ÐÉÓØÍÁ, ÎÁÐÒÉÍÅÒ,
"Re: kern/3377" . äÏÐÏÌÎÉÔÅÌØÎÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï ÌÀÂÏÍ
ÓÏÏÂÝÅÎÉÉ Ï ÏÛÉÂËÅ ÄÏÌÖÎÁ ÎÁÐÒÁ×ÌÑÔØÓÑ ÜÔÉÍ ÓÐÏÓÏÂÏÍ.
åÓÌÉ ×Ù ÎÅ ÐÏÌÕÞÉÌÉ ÐÏÄÔ×ÅÒÖÄÅÎÉÑ × ÔÅÞÅÎÉÅ ÒÁÚÕÍÎÏÇÏ ÐÅÒÉÏÄÁ
×ÒÅÍÅÎÉ (ÏÔ 3 ÄÎÅÊ ÄÏ ÎÅÄÅÌÉ, × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ×ÁÛÅÇÏ ÐÏÄËÌÀÞÅÎÉÑ Ë
ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ) ÉÌÉ ÐÏ ËÁËÏÊ-ÔÏ ÐÒÉÞÉÎÅ ÎÅ ÍÏÖÅÔÅ ×ÏÓÐÏÌØÚÏ×ÁÔØÓÑ
ËÏÍÁÎÄÏÊ &man.send-pr.1;, ÔÏ ÍÏÖÅÔÅ ÐÏÐÒÏÓÉÔØ ËÏÇÏ-ÎÉÂÕÄØ ÎÁÐÒÁ×ÉÔØ
ÓÏÏÂÝÅÎÉÅ ÚÁ ×ÁÓ ÎÁ ÁÄÒÅÓ &a.bugs;.
ðÒÏÞÔÉÔÅ ÔÁËÖÅ ÜÔÕ ÓÔÁÔØÀ ,
ÞÔÏÂÙ ÕÚÎÁÔØ, ËÁË ÐÉÓÁÔØ ÈÏÒÏÛÉÅ ÓÏÏÂÝÅÎÉÑ Ï ÐÒÏÂÌÅÍÁÈ.
éÚÍÅÎÅÎÉÑ × ÄÏËÕÍÅÎÔÁÃÉÉ
ÐÏÓÙÌËÁ ÄÏËÕÍÅÎÔÁÃÉÉ
éÚÍÅÎÅÎÉÑ × ÄÏËÕÍÅÎÔÁÃÉÉ ÏÂÓÕÖÄÁÀÔÓÑ × &a.doc;. ðÏÖÁÌÕÊÓÔÁ,
ÐÏÓÍÏÔÒÉÔÅ õÞÅÂÎÉË
ðÒÏÅËÔÁ ÄÏËÕÍÅÎÔÉÒÏ×ÁÎÉÑ FreeBSD ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÐÏÌÎÙÈ
ÉÎÓÔÒÕËÃÉÊ. ðÏÓÙÌÁÊÔÅ Ó×ÏÉ ÐÏÖÅÌÁÎÉÑ É ÉÚÍÅÎÅÎÉÑ (ÐÒÉÎÉÍÁÀÔÓÑ ÄÁÖÅ
ÓÁÍÙÅ ÎÅÂÏÌØÛÉÅ!) ÐÒÉ ÐÏÍÏÝÉ &man.send-pr.1;, ËÁË ÜÔÏ ÏÐÉÓÁÎÏ × ÒÁÚÄÅÌÅ
Ï ÓÏÏÂÝÅÎÉÑÈ ÏÂ ÏÛÉÂËÁÈ É ÏÂÝÉÈ
ÐÏÖÅÌÁÎÉÑÈ.
éÚÍÅÎÅÎÉÑ Ë ÉÍÅÀÝÅÍÕÓÑ ÉÓÈÏÄÎÏÍÕ ËÏÄÕ
FreeBSD-CURRENT
äÏÂÁ×ÌÅÎÉÅ ÎÏ×ÏÇÏ ÉÓÈÏÄÎÏÇÏ ËÏÄÁ ÉÌÉ ×ÎÅÓÅÎÉÅ ÉÚÍÅÎÅÎÉÊ ×
ÓÕÝÅÓÔ×ÕÀÝÉÊ Ñ×ÌÑÅÔÓÑ ÎÅ ÔÁËÏÊ ÐÒÏÓÔÏÊ ÚÁÄÁÞÅÊ, É ÚÁ×ÉÓÉÔ ×Ï ÍÎÏÇÏÍ ÏÔ
ÔÏÇÏ, ÎÁÓËÏÌØËÏ ×Ù ÄÁÌÅËÉ ÏÔ ÔÅËÕÝÅÇÏ ÓÏÓÔÏÑÎÉÑ ÒÁÚÒÁÂÏÔÏË ×Ï FreeBSD.
óÕÝÅÓÔ×ÕÀÔ ÓÐÅÃÉÁÌØÎÙÅ ÐÒÏÍÅÖÕÔÏÞÎÙÅ ÒÅÌÉÚÙ FreeBSD, ÉÚ×ÅÓÔÎÙÅ ËÁË
FreeBSD-CURRENT
, ËÏÔÏÒÙÅ ÄÏÓÔÕÐÎÙ ÎÅÓËÏÌØËÉÍÉ ÒÁÚÎÙÍÉ
ÓÐÏÓÏÂÁÍÉ, ÕÄÏÂÎÙÍÉ ÒÁÚÒÁÂÏÔÞÉËÁÍ, ÁËÔÉ×ÎÏ ÒÁÂÏÔÁÀÝÉÍ ÎÁÄ ÓÉÓÔÅÍÏÊ.
ïÂÒÁÔÉÔÅÓØ Ë
òÕËÏ×ÏÄÓÔ×Õ FreeBSD ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÉ
Ï ÐÏÌÕÞÅÎÉÉ É ÉÓÐÏÌØÚÏ×ÁÎÉÉ FreeBSD-CURRENT.
åÓÌÉ ×Ù ÒÁÂÏÔÁÅÔÅ Ó ÎÅÓËÏÌØËÏ ÕÓÔÁÒÅ×ÛÉÍÉ ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ, ÔÏ
×ÁÛÉ ÉÚÍÅÎÅÎÉÑ ÉÎÏÇÄÁ ÍÏÇÕÔ ÏËÁÚÁÔØÓÑ ÕÖÅ ÎÅÎÕÖÎÙÍÉ ÉÌÉ ÓÌÉÛËÏÍ
ÂÏÌØÛÉÍÉ, ÞÔÏÂÙ ÐÏ×ÔÏÒÎÏ ÉÎÔÅÇÒÉÒÏ×ÁÔØ ÉÈ ×Ï FreeBSD. õÍÅÎØÛÉÔØ ÔÁËÏÊ
ÒÉÓË ÍÏÖÎÏ, ÐÏÄÐÉÓÁ×ÛÉÓØ ÎÁ ÓÐÉÓËÉ ÒÁÓÓÙÌËÉ &a.announce; É &a.current;,
× ËÏÔÏÒÙÈ ÏÂÓÕÖÄÁÅÔÓÑ ÔÅËÕÝÅÅ ÓÏÓÔÏÑÎÉÅ ÓÉÓÔÅÍÙ.
ðÒÅÄÐÏÌÏÖÉÍ, ÞÔÏ ×Ù ÓÍÏÇÌÉ ÐÏÌÕÞÉÔØ ÁËÔÕÁÌØÎÙÅ ÉÓÈÏÄÎÙÅ
ÔÅËÓÔÙ, ÎÁ ÂÁÚÅ ËÏÔÏÒÙÈ ÄÅÌÁÌÉ Ó×ÏÉ ÉÚÍÅÎÅÎÉÑ. ôÏÇÄÁ ÓÌÅÄÕÀÝÉÍ ÛÁÇÏÍ
Ñ×ÌÑÅÔÓÑ ÓÏÚÄÁÎÉÅ ÎÁÂÏÒÁ ÆÁÊÌÏ×, ÏÔÒÁÖÁÀÝÉÈ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ ÄÌÑ ÉÈ
ÐÏÓÙÌËÉ ÔÅÍ, ËÔÏ ÏÔ×ÅÞÁÅÔ ÚÁ ÐÏÄÄÅÒÖËÕ FreeBSD. üÔÏ ÄÅÌÁÅÔÓÑ ÐÒÉ
ÐÏÍÏÝÉ ËÏÍÁÎÄÙ &man.diff.1;.
ðÒÅÄÐÏÞÔÉÔÅÌØÎÙÍ ÆÏÒÍÁÔÏÍ &man.diff.1; ÄÌÑ ÐÏÓÙÌËÉ ÐÁÔÞÅÊ Ñ×ÌÑÅÔÓÑ
ÕÎÉÆÉÃÉÒÏ×ÁÎÎÁÑ ×ÙÄÁÞÁ, ÓÏÚÄÁ×ÁÅÍÁÑ ËÏÍÁÎÄÏÊ diff
-u .
diff
ë ÐÒÉÍÅÒÕ:
&prompt.user; diff -u oldfile newfile
ÉÌÉ
&prompt.user; diff -u -r -N olddir newdir
ÓÏÚÄÁÓÔ ÎÁÂÏÒ ÐÁÔÞÅÊ × ÕÎÉÆÉÃÉÒÏ×ÁÎÎÏÍ ÆÏÒÍÁÔÅ ÄÌÑ ËÏÎËÒÅÔÎÏÇÏ
ÆÁÊÌÁ Ó ÉÓÈÏÄÎÙÍ ÔÅËÓÔÏÍ ÉÌÉ ÄÌÑ ÉÅÒÁÒÈÉÉ ËÁÔÁÌÏÇÏ×.
äÏÐÏÌÎÉÔÅÌØÎÕÀ ÉÎÆÏÒÍÁÃÉÀ ÍÏÖÎÏ ÎÁÊÔÉ × &man.diff.1;.
ðÏÓÌÅ ÔÏÇÏ, ËÁË ×Ù ÐÏÌÕÞÉÌÉ ÎÁÂÏÒ diff-ÆÁÊÌÏ× (ËÏÔÏÒÙÅ ×Ù ÍÏÖÅÔÅ
ÐÒÏÔÅÓÔÉÒÏ×ÁÔØ ËÏÍÁÎÄÏÊ &man.patch.1;), ×Ù ÄÏÌÖÎÙ ÐÒÉÓÌÁÔØ ÉÈ ÄÌÑ
×ËÌÀÞÅÎÉÑ ×Ï FreeBSD. ÷ÏÓÐÏÌØÚÕÊÔÅÓØ ÐÒÏÇÒÁÍÍÏÊ &man.send-pr.1;, ËÁË
ÜÔÏ ÏÐÉÓÁÎÏ × ÒÁÚÄÅÌÅ Ï ÓÏÏÂÝÅÎÉÑÈ ÏÂ
ÏÛÉÂËÁÈ É ÏÂÝÉÈ ÚÁÍÅÞÁÎÉÑÈ. îÅ ÐÏÓÙÌÁÊÔÅ
diff-ÆÁÊÌÙ × ÓÐÉÓÏË ÒÁÓÓÙÌËÉ &a.hackers;, ÏÎÉ ÂÕÄÕÔ ÐÏÔÅÒÑÎÙ! îÁÍ
ÏÞÅÎØ ÎÕÖÎÁ ×ÁÛÁ ÐÏÍÏÝØ (ÜÔÏ ÄÏÂÒÏ×ÏÌØÎÙÊ ÐÒÏÅËÔ!); ÉÚ-ÚÁ ÎÁÛÅÊ
ÚÁÎÑÔÏÓÔÉ ÍÙ ÎÅ ÓÍÏÖÅÍ ÒÁÓÓÍÏÔÒÅÔØ ÅÇÏ ÓÒÁÚÕ, É ÏÎ ÂÕÄÅÔ ÎÁÈÏÄÉÔØÓÑ ×
ÂÁÚÅ ÄÁÎÎÙÈ PR, ÐÏËÁ ÍÙ ÎÅ ÓÄÅÌÁÅÍ ÜÔÏ. õËÁÖÉÔÅ ÎÁ ×ÁÛÕ ÐÏÓÙÌËÕ,
×ËÌÀÞÉ× ÓÔÒÏËÕ [PATCH] × ÔÅÍÕ ÓÏÏÂÝÅÎÉÑ.
uuencode
åÓÌÉ ×Ù ÓÞÉÔÁÅÔÅ, ÞÔÏ ÜÔÏ ÎÕÖÎÏ (Ë ÐÒÉÍÅÒÕ, ×Ù ÄÏÂÁ×ÌÑÌÉ, ÕÄÁÌÑÌÉ
ÉÌÉ ÐÅÒÅÉÍÅÎÏ×Ù×ÁÌÉ ÆÁÊÌÙ), ÔÏ ÏÂßÅÄÉÎÉÔÅ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ ×
tar -ÆÁÊÌ É ÏÂÒÁÂÏÔÁÊÔÅ ÅÇÏ ÐÒÏÇÒÁÍÍÏÊ
&man.uuencode.1;. ðÒÉÎÉÍÁÀÔÓÑ ÔÁËÖÅ É ÁÒÈÉ×Ù, ÓÏÚÄÁÎÎÙÅ ÐÒÏÇÒÁÍÍÏÊ
&man.shar.1;.
åÓÌÉ ×ÁÛÅ ÉÚÍÅÎÅÎÉÅ ÐÏÔÅÎÃÉÁÌØÎÏ ÍÏÖÅÔ ÏËÁÚÁÔØÓÑ ÓÏÍÎÉÔÅÌØÎÙÍ,
ÎÁÐÒÉÍÅÒ, ×Ù ÎÅ Õ×ÅÒÅÎÙ × ÏÔÓÕÔÓÔ×ÉÉ ÌÉÃÅÎÚÉÏÎÎÙÈ ÏÇÒÁÎÉÞÅÎÉÊ
ÏÔÎÏÓÉÔÅÌØÎÏ ÅÇÏ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ, ÔÏ ×Ù ÄÏÌÖÎÙ ÐÏÓÌÁÔØ ÅÇÏ ÎÁÐÒÑÍÕÀ
× ÓÐÉÓÏË
ÒÁÓÓÙÌËÉ &a.core;, Á ÎÅ ÞÅÒÅÚ &man.send-pr.1;. ÷ ÓÐÉÓËÅ ÒÁÓÓÙÌËÉ
&a.core; ÕÞÁÓÔ×ÕÅÔ ÇÏÒÁÚÄÏ ÍÅÎØÛÅÅ ËÏÌÉÞÅÓÔ×Ï ÌÀÄÅÊ, ËÏÔÏÒÙÅ ×ÙÐÏÌÎÑÀÔ
ÏÓÎÏ×ÎÕÀ ÅÖÅÄÎÅ×ÎÕÀ ÒÁÂÏÔÕ ÎÁÄ FreeBSD. úÁÍÅÔØÔÅ, ÞÔÏ ÜÔÁ ÇÒÕÐÐÁ
ÔÁËÖÅ ÏÞÅÎØ ÚÁÎÑÔÁ , ÔÁË ÞÔÏ ÓÀÄÁ ÐÉÓØÍÁ ÎÕÖÎÏ
ÐÏÓÙÌÁÔØ ÔÏÌØËÏ × ÓÌÕÞÁÅ ÄÅÊÓÔ×ÉÔÅÌØÎÏÊ ÎÅÏÂÈÏÄÉÍÏÓÔÉ.
ðÏÖÁÌÕÊÓÔÁ, ÏÂÒÁÔÉÔÅÓØ Ë ÓÐÒÁ×ËÅ ÐÏ &man.intro.9; É &man.style.9;
ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÎÅËÏÔÏÒÏÊ ÉÎÆÏÒÍÁÃÉÉ Ï ÓÔÉÌÅ ËÏÄÉÒÏ×ÁÎÉÑ. íÙ ÎÁÄÅÅÍÓÑ,
ÞÔÏ ×Ù ÈÏÔÑ ÂÙ ÐÒÉÍÅÔÅ ÜÔÕ ÉÎÆÏÒÍÁÃÉÀ Ë Ó×ÅÄÅÎÉÀ ÐÅÒÅÄ ÔÅÍ, ËÁË
ÐÒÉÓÌÁÔØ ÎÁÍ Ó×ÏÊ ËÏÄ.
îÏ×ÙÊ ËÏÄ ÉÌÉ ÂÏÌØÛÉÅ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÁËÅÔÙ
÷ ÓÌÕÞÁÅ ÚÎÁÞÉÔÅÌØÎÏÇÏ ÏÂߣÍÁ ÐÒÉÓÌÁÎÎÏÇÏ ×ÁÍÉ ËÏÄÁ É
ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÊ ÒÁÂÏÔÙ, ÌÉÂÏ ÄÏÂÁ×ÌÅÎÉÑ Ë FreeBSD ×ÁÖÎÏÊ ÎÏ×ÏÊ ÆÕÎËÃÉÉ,
ÓÔÁÎÏ×ÉÔÓÑ ÐÒÁËÔÉÞÅÓËÉ ×ÓÅÇÄÁ ÎÅÏÂÈÏÄÉÍÏ ÐÏÓÙÌÁÔØ ÉÚÍÅÎÅÎÉÑ × ×ÉÄÅ
tar-ÆÁÊÌÏ×, ÏÂÒÁÂÏÔÁÎÎÙÈ uuencode, ÉÌÉ ÐÅÒÅÄÁ×ÁÔØ ÉÈ ÎÁ Web-ÓÁÊÔ ÉÌÉ
FTP-ÓÅÒ×ÅÒ ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÄÒÕÇÉÍÉ ÌÀÄØÍÉ. åÓÌÉ Õ ×ÁÓ ÎÅÔ ÄÏÓÔÕÐÁ Ë
Web- ÉÌÉ FTP-ÓÅÒ×ÅÒÁÍ, ÐÏÐÒÏÓÉÔÅ × ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÍ ÓÐÉÓËÅ ÒÁÓÓÙÌËÅ
FreeBSD ËÏÇÏ-ÎÉÂÕÄØ ÒÁÚÍÅÓÔÉÔØ ÉÚÍÅÎÅÎÉÑ ÚÁ ×ÁÓ.
ðÒÉ ÒÁÂÏÔÅ Ó ÂÏÌØÛÉÍ ÏÂߣÍÏÍ ËÏÄÁ ÎÅÉÚÂÅÖÎÏ ×ÏÚÎÉËÁÅÔ ×ÏÐÒÏÓ Ï
ÓÏÂÌÀÄÅÎÉÉ Á×ÔÏÒÓËÉÈ ÐÒÁ×. äÏÐÕÓÔÉÍÙÍÉ ÌÉÃÅÎÚÉÏÎÎÙÍÉ ÓÏÇÌÁÛÅÎÉÑÍÉ ÄÌÑ
ËÏÄÁ, ×ËÌÀÞÁÅÍÏÇÏ ×Ï FreeBSD, Ñ×ÌÑÀÔÓÑ ÓÌÅÄÕÀÝÉÅ:
ÌÉÃÅÎÚÉÏÎÎÏÅ ÓÏÇÌÁÛÅÎÉÅ BSD
ìÉÃÅÎÚÉÏÎÎÏÅ ÓÏÇÌÁÛÅÎÉÅ BSD. ïÎÏ Ñ×ÌÑÅÔÓÑ ÓÁÍÙÍ
ÐÒÅÄÐÏÞÔÉÔÅÌØÎÙÍ ÉÚ-ÚÁ ÏÔÓÕÔÓÔ×ÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ
ÕÓÌÏ×ÉÊ
É ÏÂÝÅÊ ÐÒÉ×ÌÅËÁÔÅÌØÎÏÓÔÉ ÄÌÑ ËÏÍÍÅÒÞÅÓËÉÈ
ËÏÍÐÁÎÉÊ. ðÒÏÅËÔ FreeBSD ÄÁÌ£Ë ÏÔ ÔÏÇÏ, ÞÔÏÂÙ ×ÙÓÔÕÐÁÔØ ÐÒÏÔÉ×
ËÏÍÍÅÒÞÅÓËÏÇÏ ÉÓÐÏÌØÚÏ×ÁÎÉÑ, ÎÏ ÁËÔÉ×ÎÏ ÐÏÐÕÌÑÒÉÚÉÒÕÅÔ ÔÁËÏÅ
ÐÅÒÅÓÅÞÅÎÉÅ ËÏÍÍÅÒÞÅÓËÉÈ ÉÎÔÅÒÅÓÏ×, ËÏÔÏÒÏÅ ÐÏÚ×ÏÌÉÔ ÐÏÓÔÅÐÅÎÎÏ
ÚÁÐÕÓÔÉÔØ ÍÅÈÁÎÉÚÍ ÉÎ×ÅÓÔÉÃÉÊ ×Ï FreeBSD.
GPL
GNU General Public License
GNU General Public License
GNU General Public License, ÉÌÉ GPL
. üÔÏ
ÌÉÃÅÎÚÉÏÎÎÏÅ ÓÏÇÌÁÛÅÎÉÅ ÎÅ ÏÞÅÎØ ÐÏÐÕÌÑÒÎÏ Õ ÎÁÓ ÉÚ-ÚÁ ÏÂߣÍÁ
ÔÒÅÂÏ×ÁÎÉÊ, ËÏÔÏÒÙÅ ÎÕÖÎÏ ×ÙÐÏÌÎÑÔØ ×ÓÅÍ, ËÔÏ ÓÏÂÉÒÁÅÔÓÑ
ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÄ × ËÏÍÍÅÒÞÅÓËÉÈ ÃÅÌÑÈ. ïÄÎÁËÏ, ÕÞÉÔÙ×ÁÑ ÁÂÓÏÌÀÔÎÏÅ
ÐÒÅ×ÏÓÈÏÄÓÔ×Ï ÏÂߣÍÁ ÜÔÏÇÏ ËÏÄÁ (ËÏÍÐÉÌÑÔÏÒ, ÁÓÓÅÍÂÌÅÒ, ÉÎÓÔÒÕÍÅÎÔÙ
ÆÏÒÍÁÔÉÒÏ×ÁÎÉÑ ÔÅËÓÔÁ É ÔÁË ÄÁÌÅÅ) ÂÙÌÏ ÂÙ ÇÌÕÐÏ ÏÔËÁÚÙ×ÁÔØÓÑ ÏÔ
ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÒÁÚÒÁÂÏÔÏË, ÐÏÄÐÁÄÁÀÝÉÈ ÐÏÄ ÄÅÊÓÔ×ÉÅ ÜÔÏÊ ÌÉÃÅÎÚÉÉ.
ëÏÄ, ÒÁÓÐÒÏÓÔÒÁÎÑÅÍÙÊ ÐÏ ÕÓÌÏ×ÉÑÍ ÌÉÃÅÎÚÉÏÎÎÏÇÏ ÓÏÇÌÁÛÅÎÉÑ GPL
ÔÁËÖÅ ÒÁÚÍÅÝÁÅÔÓÑ × ÏÔÄÅÌØÎÏÊ ÞÁÓÔÉ ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ×
/sys/gnu ÉÌÉ
/usr/src/gnu , É ÐÏÜÔÏÍÕ
ÌÅÇËÏ ÉÄÅÎÔÉÆÉÃÉÒÕÅÔÓÑ ×ÓÑËÉÍ, ÄÌÑ ËÏÇÏ GPL ÐÒÅÄÓÔÁ×ÌÑÅÔ
ÐÒÏÂÌÅÍÕ.
òÁÚÒÁÂÏÔËÉ, ÐÏÄÐÁÄÁÀÝÉÅ ÐÏÄ ÄÅÊÓÔ×ÉÅ ÄÒÕÇÉÈ ÔÉÐÏ× ÌÉÃÅÎÚÉÏÎÎÙÈ
ÓÏÇÌÁÛÅÎÉÊ, ÄÏÌÖÎÙ ÂÙÔØ ÔÝÁÔÅÌØÎÏ ÐÒÏÓÍÏÔÒÅÎÙ ÐÅÒÅÄ ÐÒÉÎÑÔÉÅÍ
ÒÅÛÅÎÉÑ Ï ÉÈ ×ËÌÀÞÅÎÉÉ ×Ï FreeBSD. òÁÚÒÁÂÏÔËÉ, ÎÁ ËÏÔÏÒÙÅ
ÒÁÓÐÒÏÓÔÒÁÎÑÀÔÓÑ Ö£ÓÔËÉÅ ÏÇÒÁÎÉÞÅÎÉÑ ËÏÍÍÅÒÞÅÓËÉÈ ÌÉÃÅÎÚÉÏÎÎÙÈ
ÓÏÇÌÁÛÅÎÉÊ, ÏÂÙÞÎÏ ÏÔ×ÅÒÇÁÀÔÓÑ, Á Á×ÔÏÒÁÍ ×ÓÅÇÄÁ ÐÒÅÄÌÁÇÁÅÔÓÑ
ÒÁÓÐÒÏÓÔÒÁÎÑÔØ ÐÏÄÏÂÎÙÅ ÉÚÍÅÎÅÎÉÑ ÐÏ ÓÏÂÓÔ×ÅÎÎÙÍ ËÁÎÁÌÁÍ.
äÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÎÁ ×ÁÛÕ ÒÁÂÏÔÕ ÒÁÓÐÒÏÓÔÒÁÎÑÌÉÓØ ÕÓÌÏ×ÉÑ
ÌÉÃÅÎÚÉÏÎÎÏÇÏ ÏÇÒÁÎÉÞÅÎÉÑ × ÓÔÉÌÅ BSD
, ÒÁÚÍÅÓÔÉÔÅ
ÓÌÅÄÕÀÝÉÊ ÔÅËÓÔ × ÓÁÍÏÍ ÎÁÞÁÌÅ ËÁÖÄÏÇÏ ÆÁÊÌÁ Ó ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ,
ËÏÔÏÒÙÅ ×Ù ÈÏÔÉÔÅ ÚÁÝÉÔÉÔØ, ÚÁÍÅÎÉ× ÔÅËÓÔ ÍÅÖÄÕ %%
ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÊ ÉÎÆÏÒÍÁÃÉÅÊ:
Copyright (c) %%ÐÏÌÎÙÅ_ÎÏÍÅÒÁ_ÇÏÄÏ×%%
%%×ÁÛÅ_ÉÍÑ%%, %%×ÁÛ_ÛÔÁÔ%% %%×ÁÛ_ÐÏÞÔÏ×ÙÊ_ÉÎÄÅËÓ%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$&os;$
äÌÑ ×ÁÛÅÇÏ ÕÄÏÂÓÔ×Á ËÏÐÉÑ ÜÔÏÇÏ ÔÅËÓÔÁ ÒÁÚÍÅÝÅÎÁ × ÆÁÊÌÅ
/usr/share/examples/etc/bsd-style-copyright .
äÅÎØÇÉ, ÏÂÏÒÕÄÏ×ÁÎÉÅ ÉÌÉ Internet-ÄÏÓÔÕÐ
íÙ ×ÓÅÇÄÁ Ó ÕÄÏ×ÏÌØÓÔ×ÉÅÍ ÐÒÉÍÅÍ ÍÁÔÅÒÉÁÌØÎÕÀ ÐÏÍÏÝØ, ÎÕÖÎÕÀ ÄÌÑ
ÄÁÌØÎÅÊÛÅÇÏ ÓÕÝÅÓÔ×Ï×ÁÎÉÑ ðÒÏÅËÔÁ FreeBSD, Á × ÄÏÂÒÏ×ÏÌØÎÏÍ ÐÒÏÅËÔÅ,
ÔÉÐÁ ÎÁÛÅÇÏ ÍÁÌÅÎØËÁÑ ÐÏÍÏÝØ ÍÏÖÅÔ ÐÏÓÌÕÖÉÔØ ÄÏÌÇÏ! âÅÚ×ÏÚÍÅÚÄÎÁÑ
ÐÅÒÅÄÁÞÁ ×ÙÞÉÓÌÉÔÅÌØÎÏÊ ÔÅÈÎÉËÉ ÔÁËÖÅ ÏÞÅÎØ ×ÁÖÎÁ ÄÌÑ ÒÁÓÛÉÒÅÎÉÑ ÓÐÉÓËÁ
ÐÏÄÄÅÒÖÉ×ÁÅÍÏÇÏ ÐÅÒÉÆÅÒÉÊÎÏÇÏ ÏÂÏÒÕÄÏ×ÁÎÉÑ, ÔÁË ËÁË ÏÂÙÞÎÏ Õ ÎÁÓ ÎÅÔ
ÓÒÅÄÓÔ× ÄÌÑ ÓÁÍÏÓÔÏÑÔÅÌØÎÏÇÏ ÅÇÏ ÐÒÉÏÂÒÅÔÅÎÉÑ.
-
- æÉÎÁÎÓÏ×ÁÑ ÐÏÍÏÝØ
+
+ æÉÎÁÎÓÏ×ÁÑ ÐÏÍÏÝØ
The FreeBSD Foundation Ñ×ÌÑÅÔÓÑ ÎÅËÏÍÍÅÒÞÅÓËÏÊ ÏÒÇÁÎÉÚÁÃÉÅÊ,
ÏÓ×ÏÂÏÖÄ£ÎÎÏÊ ÏÔ ÕÐÌÁÔÙ ÎÁÌÏÇÏ×, ÓÏÚÄÁÎÎÏÊ Ó ÃÅÌØÀ ÒÅÁÌÉÚÁÃÉÉ ÃÅÌÅÊ
ðÒÏÅËÔÁ FreeBSD. ëÁË ÏÒÇÁÎÉÚÁÃÉÑ ÔÉÐÁ 501(c)3, æÏÎÄ ÏÂÙÞÎÏ
ÏÓ×ÏÂÏÖÄÁÅÔÓÑ ÏÔ ÆÅÄÅÒÁÌØÎÏÇÏ ÎÁÌÏÇÁ óûá ÎÁ ÐÒÉÂÙÌØ. óÕÍÍÙ
ÂÅÚ×ÏÚÍÅÚÄÎÙÈ ÐÏÖÅÒÔ×Ï×ÁÎÉÊ ÔÁËÉÍ ÏÒÇÁÎÉÚÁÃÉÑÍ ÞÁÓÔÏ ×ÙÞÉÔÁÀÔÓÑ
ÉÚ ÏÂÝÅÊ ÓÕÍÍÙ ÎÁÌÏÇÏÏÂÌÁÇÁÅÍÏÊ ÐÒÉÂÙÌÉ.
æÉÎÁÎÓÏ×ÁÑ ÐÏÍÏÝØ ÍÏÖÅÔ ÂÙÔØ ÎÁÐÒÁ×ÌÅÎÁ × ×ÉÄÅ ÞÅËÏ× ÎÁ ÁÄÒÅÓ:
The FreeBSD Foundation
P.O. Box 20247
Boulder ,
CO 80308
USA
The FreeBSD Foundation ÔÅÐÅÒØ ÍÏÖÅÔ ÐÒÉÎÉÍÁÔØ ÐÏÍÏÝØ ÞÅÒÅÚ Web
ÐÏ ÓÉÓÔÅÍÅ PayPal. äÌÑ ÎÁÐÒÁ×ÌÅÎÉÑ ÐÏÍÏÝÉ, ÐÏÖÁÌÕÊÓÔÁ, ÐÏÓÅÔÉÔÅ
Web-ÓÁÊÔ
æÏÎÄÁ.
äÏÐÏÌÎÉÔÅÌØÎÕÀ ÉÎÆÏÒÍÁÃÉÀ Ï æÏÎÄÅ FreeBSD ÍÏÖÎÏ ÎÁÊÔÉ ÎÁ
ÓÔÒÁÎÉÃÅ, ÓÏÄÅÒÖÁÝÅÊ
××ÏÄÎÕÀ ÉÎÆÏÒÍÁÃÉÉ Ï æÏÎÄÅ FreeBSD . äÌÑ ÔÏÇÏ, ÞÔÏÂÙ
ÏÂÒÁÔÉÔØÓÑ × æÏÎÄ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÅ, ÎÁÐÉÛÉÔÅ ÐÉÓØÍÏ ÎÁ ÁÄÒÅÓ
bod@FreeBSDFoundation.org .
ðÏÍÏÝØ × ×ÉÄÅ ÏÂÏÒÕÄÏ×ÁÎÉÑ
ÂÅÚ×ÏÚÍÅÚÄÎÁÑ ÐÏÍÏÝØ
ðÒÏÅËÔ FreeBSD Ó ÕÄÏ×ÏÌØÓÔ×ÉÅ ÐÒÉÍÅÔ ÐÏÍÏÝØ × ×ÉÄÅ ÏÂÏÒÕÄÏ×ÁÎÉÑ,
ËÏÔÏÒÏÍÕ ÏÎ ÎÁÊÄ£Ô ÈÏÒÏÛÅÅ ÐÒÉÍÅÎÅÎÉÅ. åÓÌÉ ×Ù ÚÁÉÎÔÅÒÅÓÏ×ÁÎÙ ×
ÐÅÒÅÄÁÞÅ ÏÂÏÒÕÄÏ×ÁÎÉÑ, ÐÏÖÁÌÕÊÓÔÁ, ÏÂÒÁÔÉÔÅÓØ Ë òÕËÏ×ÏÄÓÔ×Õ ãÅÎÔÒÁ
ÐÏÖÅÒÔ×Ï×ÁÎÉÊ .
diff --git a/ru_RU.KOI8-R/books/handbook/mirrors/chapter.xml b/ru_RU.KOI8-R/books/handbook/mirrors/chapter.xml
index 8519091b71..5f8ae8d7c5 100644
--- a/ru_RU.KOI8-R/books/handbook/mirrors/chapter.xml
+++ b/ru_RU.KOI8-R/books/handbook/mirrors/chapter.xml
@@ -1,3196 +1,3196 @@
ðÏÌÕÞÅÎÉÅ FreeBSD
äÅÎÉÓ
ðÅÐÌÉÎ
ðÅÒÅ×ÏÄ ÎÁ ÒÕÓÓËÉÊ ÑÚÙË:
éÚÄÁÔÅÌÉ CDROM É DVD
ëÏÒÏÂÏÞÎÁÑ ×ÅÒÓÉÑ
FreeBSD ÄÏÓÔÕÐÎÁ × ËÏÒÏÂÏÞÎÏÊ ×ÅÒÓÉÉ (FreeBSD CD ÄÉÓËÉ,
ÄÏÐÏÌÎÉÔÅÌØÎÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ, ÐÅÞÁÔÎÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ) ÏÔ
ÎÅÓËÏÌØËÉÈ ÐÏÓÔÁ×ÝÉËÏ×:
CompUSA
WWW:
Frys Electronics
WWW:
îÁÂÏÒÙ CD É DVD
îÁÂÏÒÙ FreeBSD CD É DVD ÄÏÓÔÕÐÎÙ Õ ÍÎÏÖÅÓÔ×Á ÏÎÌÁÊÎ
ÐÏÓÔÁ×ÝÉËÏ×:
BSD Mall (ÐÏÄÒÁÚÄÅÌÅÎÉÅ Daemon News)
PO Box 161
Nauvoo , IL 62354
USA
ôÅÌÅÆÏÎ: +1 866 273-6255
æÁËÓ: +1 217 453-9956
Email: sales@bsdmall.com
WWW:
BSD-Systems
Email: info@bsd-systems.co.uk
WWW:
FreeBSD Mall, Inc.
3623 Sanford Street
Concord , CA 94520-1405
óûá
ôÅÌÅÆÏÎ: +1 925 674-0783
æÁËÓ: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
óûá
ôÅÌÅÆÏÎ: 1 (800) 456-8000
WWW:
Hinner EDV
St. Augustinus-Str. 10
D-81825 München
çÅÒÍÁÎÉÑ
ôÅÌÅÆÏÎ: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
æÒÁÎÃÉÑ
WWW:
JMC Software
éÒÌÁÎÄÉÑ
ôÅÌÅÆÏÎ: 353 1 6291282
WWW:
Linux CD Mall
Private Bag MBE N348
Auckland 1030
îÏ×ÁÑ úÅÌÁÎÄÉÑ
ôÅÌÅÆÏÎ: +64 21 866529
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
÷ÅÌÉËÏÂÒÉÔÁÎÉÑ
ôÅÌÅÆÏÎ: +44 1491 837010
æÁËÓ: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
ðÏÌØÛÁ
ôÅÌÅÆÏÎ: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
á×ÓÔÒÁÌÉÑ
ôÅÌÅÆÏÎ: +61 3 9857 5918
æÁËÓ: +61 3 9857 8974
WWW:
LinuxCenter.Ru
ÕÌ. çÁÌÅÒÎÁÑ, 55
óÁÎËÔ-ðÅÔÅÒÂÕÒÇ
190000
òÏÓÓÉÑ
ôÅÌÅÆÏÎ: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
òÁÓÐÒÏÓÔÒÁÎÉÔÅÌÉ
åÓÌÉ ×Ù ÐÒÏÄÁ×ÅÃ É ÈÏÔÉÔÅ ÚÁÎÉÍÁÔØÓÑ FreeBSD CDROM,
ÐÏÖÁÌÕÊÓÔÁ Ó×ÑÖÉÔÅÓØ Ó ÒÁÓÐÒÏÓÔÒÁÎÉÔÅÌÅÍ:
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
óûá
ôÅÌÅÆÏÎ: +1 650 694-4949
æÁËÓ: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
óûá
ôÅÌÅÆÏÎ: +1 952 947-0822
æÁËÓ: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Ru
ÕÌ. çÁÌÅÒÎÁÑ, 55
óÁÎËÔ-ðÅÔÅÒÂÕÒÇ
190000
òÏÓÓÉÑ
ôÅÌÅÆÏÎ: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
óûá
ôÅÌÅÆÏÎ: +1 763 535-8333
æÁËÓ: +1 763 535-0341
WWW:
FTP ÓÁÊÔÙ
ïÆÉÃÉÁÌØÎÙÍ ÉÓÔÏÞÎÉËÏÍ FreeBSD Ñ×ÌÑÀÔÓÑ ÁÎÏÎÉÍÎÙÅ FTP
ÚÅÒËÁÌÁ ÐÏ ×ÓÅÍÕ ÍÉÒÕ. óÁÊÔ
ÉÍÅÅÔ
ÈÏÒÏÛÅÅ ÐÏÄËÌÀÞÅÎÉÅ É ÐÏÄÄÅÒÖÉ×ÁÅÔ ÂÏÌØÛÏÅ ËÏÌÉÞÅÓÔ×Ï ÏÄÎÏ×ÒÅÍÅÎÎÙÈ
ÓÏÅÄÉÎÅÎÉÊ, ÎÏ ÄÌÑ ×ÁÓ ×ÏÚÍÏÖÎÏ ÐÏÔÒÅÂÕÅÔÓÑ ÎÁÊÔÉ
ÂÌÉÖÁÊÛÅÅ
ÚÅÒËÁÌÏ (ÏÓÏÂÅÎÎÏ ÅÓÌÉ ×Ù ÒÅÛÉÌÉ ÎÁÓÔÒÏÉÔØ
Õ ÓÅÂÑ ËÁËÏÊ-ÔÏ ÉÚ ×ÉÄÏ× ÚÅÒËÁÌ).
âÁÚÁ ÄÁÎÎÙÈ ÚÅÒËÁÌ
FreeBSD ÐÒÅÄÐÏÞÔÉÔÅÌØÎÅÅ ÐÏ ÓÒÁ×ÎÅÎÉÀ ÓÏ ÓÐÉÓËÏÍ ÚÅÒËÁÌ ×
òÕËÏ×ÏÄÓÔ×Å, ÐÏÓËÏÌØËÕ ÉÎÆÏÒÍÁÃÉÑ × ÂÁÚÅ ÓÏÂÉÒÁÅÔÓÑ ÉÚ DNS, Á ÎÅ
ÉÚ ÓÔÁÔÉÞÅÓËÏÇÏ ÓÐÉÓËÁ ÕÚÌÏ×.
ëÒÏÍÅ ÔÏÇÏ, FreeBSD ÄÏÓÔÕÐÎÁ ÞÅÒÅÚ ÁÎÏÎÉÍÎÙÊ FTP ÓÏ ÓÌÅÄÕÀÝÉÈ
ÚÅÒËÁÌ. åÓÌÉ ×Ù ×ÙÂÒÁÌÉ ÐÏÌÕÞÅÎÉÅ FreeBSD ÞÅÒÅÚ ÁÎÏÎÉÍÎÙÊ FTP,
ÐÏÖÁÌÕÊÓÔÁ ×ÙÂÅÒÉÔÅ ÂÌÉÖÁÊÛÉÊ Ë ×ÁÍ ÓÁÊÔ. úÅÒËÁÌÁ ÉÚ ÓÐÉÓËÁ
ïÓÎÏ×ÎÙÈ ÚÅÒËÁÌ
ÏÂÙÞÎÏ ÓÏÄÅÒÖÁÔ ÐÏÌÎÙÊ ÁÒÈÉ×
FreeBSD (×ÓÅ ÄÏÓÔÕÐÎÙÅ ÎÁ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ×ÅÒÓÉÉ ÄÌÑ ËÁÖÄÏÊ ÁÒÈÉÔÅËÔÕÒÙ),
ÓËÏÒÏÓÔØ ÚÁÇÒÕÚËÉ ×ÏÚÍÏÖÎÏ ÂÕÄÅÔ ÂÏÌØÛÅ Ó ÚÅÒËÁÌÁ, ÒÁÓÐÏÌÏÖÅÎÎÏÇÏ ×
×ÁÛÅÊ ÓÔÒÁÎÅ ÉÌÉ ÒÅÇÉÏÎÅ. óÁÊÔÙ ËÁÖÄÏÊ ÓÔÒÁÎÙ ÓÏÄÅÒÖÁÔ ÐÏÓÌÅÄÎÀÀ ×ÅÒÓÉÀ ÄÌÑ ÎÁÉÂÏÌÅÅ
ÐÏÐÕÌÑÒÎÙÈ ÁÒÈÉÔÅËÔÕÒ, ÎÏ ÎÁ ÎÉÈ ÍÏÖÅÔ ÎÅ ÂÙÔØ ÐÏÌÎÏÇÏ ÁÒÈÉ×Á FreeBSD.
÷ÓÅ ÓÁÊÔÙ ÐÒÅÄÏÓÔÁ×ÌÑÀÔ ÄÏÓÔÕÐ ÞÅÒÅÚ ÁÎÏÎÉÍÎÙÊ FTP, Á ÎÅËÏÔÏÒÙÅ
ÐÒÅÄÏÓÔÁ×ÌÑÀÔ ÄÏÓÔÕÐ É ÄÒÕÇÉÍÉ ÍÅÔÏÄÁÍÉ. äÌÑ ËÁÖÄÏÇÏ ÓÁÊÔÁ
ÐÒÉ×ÅÄÅÎ ÓÐÉÓÏË ÍÅÔÏÄÏ× ÄÏÓÔÕÐÁ × ÓËÏÂËÁÈ ÐÏÓÌÅ ÉÍÅÎÉ ÈÏÓÔÁ.
&chap.mirrors.ftp.inc;
áÎÏÎÉÍÎÙÊ CVS
-
- ÷×ÅÄÅÎÉÅ
+
+ ÷×ÅÄÅÎÉÅ
CVS
ÁÎÏÎÉÍÎÙÊ
áÎÏÎÉÍÎÙÊ CVS (ÉÚ×ÅÓÔÎÙÊ ÔÁËÖÅ ËÁË,
anoncvs ) ÜÔÏ ×ÏÚÍÏÖÎÏÓÔØ, ÐÒÅÄÏÓÔÁ×ÌÑÅÍÁÑ
ÕÔÉÌÉÔÁÍÉ CVS, ÐÏÓÔÁ×ÌÑÅÍÙÍÉ Ó FreeBSD ÄÌÑ ÓÉÎÈÒÏÎÉÚÁÃÉÉ Ó ÕÄÁÌÅÎÎÙÍ
CVS ÒÅÐÏÚÉÔÏÒÉÅÍ. ðÏÍÉÍÏ ÐÒÏÞÅÇÏ, ÏÎ ÐÏÚ×ÏÌÑÅÔ ÐÏÌØÚÏ×ÁÔÅÌÑÍ
FreeBSD ÂÅÚ ÓÐÅÃÉÁÌØÎÙÈ ÐÒÉ×ÉÌÅÇÉÊ (Ó ÐÒÁ×ÁÍÉ ÔÏÌØËÏ ÎÁ ÞÔÅÎÉÅ)
×ÙÐÏÌÎÑÔØ CVS ÏÐÅÒÁÃÉÉ ÎÁ ÏÄÎÏÍ ÉÚ ÏÆÉÃÉÁÌØÎÙÈ anoncvs ÓÅÒ×ÅÒÏ×
ÐÒÏÅËÔÁ FreeBSD. äÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÜÔÏÊ ×ÏÚÍÏÖÎÏÓÔÉ, ÐÒÏÓÔÏ
ÕÓÔÁÎÏ×ÉÔÅ ÐÅÒÅÍÅÎÎÕÀ CVSROOT ÎÁ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ
ÓÅÒ×ÅÒ anoncvs, ××ÅÄÉÔÅ ÏÂÝÅÉÚ×ÅÓÔÎÙÊ ÐÁÒÏÌØ anoncvs
× ÏÔ×ÅÔ ÎÁ ÐÒÉÇÌÁÛÅÎÉÅ ËÏÍÁÎÄÙ cvs login , Á
ÚÁÔÅÍ ÉÓÐÏÌØÚÕÊÔÅ &man.cvs.1; ÄÌÑ ÄÏÓÔÕÐÁ Ë ÒÅÐÏÚÉÔÏÒÉÀ ËÁË Ë
ÏÂÙÞÎÏÍÕ ÌÏËÁÌØÎÏÍÕ CVS.
ëÏÍÁÎÄÁ cvs login ÓÏÈÒÁÎÑÅÔ ÐÁÒÏÌÉ,
ÉÓÐÏÌØÚÏ×ÁÎÎÙÅ ÄÌÑ Á×ÔÏÒÉÚÁÃÉÉ ÎÁ ÓÅÒ×ÅÒÅ CVS × ÆÁÊÌÅ Ó
ÉÍÅÎÅÍ .cvspass × ËÁÔÁÌÏÇÅ
HOME . åÓÌÉ ÜÔÏÔ ÆÁÊÌ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ, ×Ù ÍÏÖÅÔÅ
ÐÏÌÕÞÉÔØ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ ÐÒÉ ÐÅÒ×ÏÍ ÚÁÐÕÓËÅ cvs
login . ðÒÏÓÔÏ ÓÏÚÄÁÊÔÅ ÐÕÓÔÏÊ ÆÁÊÌ
.cvspass É ÐÏÐÒÏÂÕÊÔÅ ÅÝÅ ÒÁÚ.
èÏÔÑ ÍÏÖÎÏ ÓËÁÚÁÔØ, ÞÔÏ ÓÅÒ×ÉÓÙ CVSup É anoncvs
×ÙÐÏÌÎÑÀÔ × ÓÕÝÎÏÓÔÉ ÐÏÈÏÖÉÅ ÆÕÎËÃÉÉ, ÅÓÔØ ÎÅÓËÏÌØËÏ ÏÔÌÉÞÉÊ,
ËÏÔÏÒÙÅ ÍÏÇÕÔ ÐÏ×ÌÉÑÔØ ÎÁ ×ÙÂÏÒ ÍÅÔÏÄÁ ÓÉÎÈÒÏÎÉÚÁÃÉÉ.
ðÏ Ó×ÏÅÊ ÓÕÔÉ, CVSup ÇÏÒÁÚÄÏ
ÂÏÌÅÅ ÜÆÆÅËÔÉ×ÎÏ ÉÓÐÏÌØÚÕÅÔ ÓÅÔÅ×ÙÅ ÒÅÓÕÒÓÙ, É ÉÚ Ä×ÕÈ ÜÔÉÈ
ÐÒÏÇÒÁÍÍ ÏÎ ÂÏÌÅÅ ÉÎÔÅÌÌÅËÔÕÁÌÅÎ, ÎÏ ÚÁ ÅÇÏ ÜÆÆÅËÔÉ×ÎÏÓÔØ
ÐÒÉÈÏÄÉÔÓÑ ÐÌÁÔÉÔØ. ÷Ï-ÐÅÒ×ÙÈ, ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÐÏÑ×ÉÌÁÓØ
×ÏÚÍÏÖÎÏÓÔØ ÈÏÔØ ÞÔÏ-ÔÏ ÐÏÌÕÞÉÔØ ÜÔÉÍ ÍÅÔÏÄÏÍ,
CVSup ÐÏÔÒÅÂÕÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ É
ÎÁÓÔÒÏÉÔØ ÓÐÅÃÉÁÌØÎÕÀ ÐÒÏÇÒÁÍÍÕ, Á ×Ï-×ÔÏÒÙÈ, ÜÔÏÔ
CVSup ÐÏÚ×ÏÌÑÅÔ ÓÉÎÈÒÏÎÉÚÁÃÉÀ ÔÏÌØËÏ
ÄÏ×ÏÌØÎÏ ÂÏÌØÛÉÈ ÞÁÓÔÅÊ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ÎÁÚÙ×ÁÅÍÙÈ
ËÏÌÌÅËÃÉÑÍÉ .
Anoncvs ÎÁÐÒÏÔÉ× ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ
ÄÌÑ ÐÏÌÕÞÅÎÉÑ ËÁË ÏÄÎÏÇÏ ÆÁÊÌÁ, ÔÁË É ×ÓÅÊ ÐÒÏÇÒÁÍÍÙ
(ÎÁÐÒÉÍÅÒ ls ÉÌÉ grep ),
Ó ÐÏÍÏÝØÀ ÓÓÙÌËÉ ÎÁ ÉÍÑ ÍÏÄÕÌÑ CVS. ëÏÎÅÞÎÏ,
anoncvs ÈÏÒÏÛÏ ÐÏÄÈÏÄÉÔ ÔÏÌØËÏ ÐÒÉ
ÏÐÅÒÁÃÉÑÈ ÎÁ ÞÔÅÎÉÅ CVS ÒÅÐÏÚÉÔÏÒÉÑ, ÐÏÜÔÏÍÕ ÅÓÌÉ ×Ù ÎÁÍÅÒÅ×ÁÅÔÅÓØ
ÐÒÏÉÚ×ÏÄÉÔØ ÌÏËÁÌØÎÕÀ ÒÁÚÒÁÂÏÔËÕ × ÏÄÎÏÍ ÉÚ ÒÅÐÏÚÉÔÏÒÉÅ×
ÐÒÏÅËÔÁ FreeBSD, ×ÁÍ ÐÏÄÏÊÄÅÔ ÔÏÌØËÏ
CVSup .
-
- éÓÐÏÌØÚÏ×ÁÎÉÅ ÁÎÏÎÉÍÎÏÇÏ CVS
+
+ éÓÐÏÌØÚÏ×ÁÎÉÅ ÁÎÏÎÉÍÎÏÇÏ CVS
îÁÓÔÒÏÊËÁ &man.cvs.1; ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÁÎÏÎÉÍÎÏÇÏ CVS
ÒÅÐÏÚÉÔÏÒÉÑ ÏÚÎÁÞÁÅÔ ÕÓÔÁÎÏ×ËÕ ÐÅÒÅÍÅÎÎÏÊ ÏËÒÕÖÅÎÉÑ
CVSROOT ÎÁ ÏÄÉÎ ÉÚ anoncvs
ÓÅÒ×ÅÒÏ× ÐÒÏÅËÔÁ FreeBSD. îÁ ÍÏÍÅÎÔ ÎÁÐÉÓÁÎÉÑ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ
ÄÏÓÔÕÐÎÙ ÓÌÅÄÕÀÝÉÅ ÓÅÒ×ÅÒÁ:
á×ÓÔÒÉÑ :
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(éÓÐÏÌØÚÕÊÔÅ cvs login É ××ÅÄÉÔÅ ÌÀÂÏÊ
ÐÁÒÏÌØ × ÏÔ×ÅÔ ÎÁ ÐÒÉÇÌÁÛÅÎÉÅ.)
æÒÁÎÃÉÑ :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (ÐÁÒÏÌØ anoncvs
), ssh (ÎÅÔ ÐÁÒÏÌÑ))
çÅÒÍÁÎÉÑ :
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(éÓÐÏÌØÚÕÊÔÅ cvs login É ××ÅÄÉÔÅ ÐÁÒÏÌØ
anoncvs
× ÏÔ×ÅÔ ÎÁ ÐÒÉÇÌÁÛÅÎÉÅ.)
çÅÒÍÁÎÉÑ :
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
ñÐÏÎÉÑ :
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(éÓÐÏÌØÚÕÊÔÅ cvs login É ××ÅÄÉÔÅ ÐÁÒÏÌØ
anoncvs
× ÏÔ×ÅÔ ÎÁ ÐÒÉÇÌÁÛÅÎÉÅ.)
óûá :
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(ÔÏÌØËÏ ssh - ÂÅÚ ÐÁÒÏÌÑ)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
óûá :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ÔÏÌØËÏ ssh - ÂÅÚ
ÐÁÒÏÌÑ)
SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com
SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub
ðÏÓËÏÌØËÕ CVS ÐÏÚ×ÏÌÑÅÔ ×ÙÐÏÌÎÉÔØ check out
ÐÒÁËÔÉÞÅÓËÉ ÌÀÂÏÊ ×ÅÒÓÉÉ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× FreeBSD, ËÏÔÏÒÙÅ
ËÏÇÄÁ-ÌÉÂÏ ÓÕÝÅÓÔ×Ï×ÁÌÉ (ÉÌÉ, × ÎÅËÏÔÏÒÙÈ ÓÌÕÞÁÑÈ, ÂÕÄÕÔ
ÓÕÝÅÓÔ×Ï×ÁÔØ), ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÐÏÚÎÁËÏÍÉÔØÓÑ Ó ÆÌÁÇÏÍ
&man.cvs.1; ÄÌÑ ÒÅ×ÉÚÉÊ (-r ) É Ó ÐÁÒÁÍÅÔÒÁÍÉ,
ËÏÔÏÒÙÅ ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ Ó ÜÔÉÍ ÆÌÁÇÏÍ × ÒÅÐÏÚÉÔÏÒÉÉ
ÐÒÏÅËÔÁ FreeBSD.
åÓÔØ Ä×Á ×ÉÄÁ ÔÅÇÏ×, ÔÅÇÉ ÒÅ×ÉÚÉÊ É ÔÅÇÉ ×ÅÔ×ÅÊ.
ôÅÇÉ ÒÅ×ÉÚÉÊ ÏÔ×ÅÞÁÀÔ ÚÁ ÏÐÒÅÄÅÌÅÎÎÕÀ ÒÅ×ÉÚÉÀ. éÈ ÚÎÁÞÅÎÉÅ
ÏÓÔÁÅÔÓÑ ÐÒÅÖÎÉÍ ÉÚÏ ÄÎÑ × ÄÅÎØ. ôÅÇÉ ×ÅÔ×ÅÊ ÓÏÐÏÓÔÁ×ÌÑÀÔÓÑ
ÐÏÓÌÅÄÎÅÊ ÒÅ×ÉÚÉÉ ÏÐÒÅÄÅÌÅÎÎÏÊ ×ÅÔ×É ÒÁÚÒÁÂÏÔËÉ, × ÌÀÂÏÊ
ÍÏÍÅÎÔ ×ÒÅÍÅÎÉ. ðÏÓËÏÌØËÕ ÔÅÇÉ ×ÅÔ×ÅÊ ÎÅ ÓÏÐÏÓÔÁ×ÌÅÎÙ ËÁËÏÊ-ÔÏ
ÏÐÒÅÄÅÌÅÎÎÏÊ ÒÅ×ÉÚÉÉ, ÚÁ×ÔÒÁ ÏÎÉ ÍÏÇÕÔ ÏÚÎÁÞÁÔØ ÓÏ×ÓÅÍ ÎÅ ÔÏ,
ÞÔÏ ÓÅÇÏÄÎÑ.
ÓÏÄÅÒÖÉÔ ÔÅÇÉ ÒÅ×ÉÚÉÊ, ËÏÔÏÒÙÅ
ÍÏÇÕÔ ÚÁÉÎÔÅÒÅÓÏ×ÁÔØ ÐÏÌØÚÏ×ÁÔÅÌÅÊ. ïÐÑÔØ ÖÅ, ÎÉ ÏÄÉÎ ÉÚ ÎÉÈ
ÎÅ ÐÏÄÈÏÄÉÔ ÄÌÑ ËÏÌÌÅËÃÉÉ ÐÏÒÔÏ×, ÐÏÓËÏÌØËÕ × ËÏÌÌÅËÃÉÉ ÐÏÒÔÏ×
ÎÅÔ ÒÁÚÎÏÏÂÒÁÚÉÑ ÒÅ×ÉÚÉÊ.
åÓÌÉ ×Ù ÕËÁÚÙ×ÁÅÔÅ ÔÅÇ ×ÅÔ×É, ÔÏ ÏÂÙÞÎÏ ÐÏÌÕÞÁÅÔÅ ÐÏÓÌÅÄÎÀÀ
×ÅÒÓÉÀ ÆÁÊÌÏ× ÜÔÏÊ ×ÅÔ×É ÒÁÚÒÁÂÏÔËÉ. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ
ÐÒÅÄÙÄÕÝÕÀ ×ÅÒÓÉÀ, ÜÔÏ ÍÏÖÎÏ ÓÄÅÌÁÔØ ÐÕÔÅÍ ÕËÁÚÁÎÉÑ ÄÁÔÙ ÆÌÁÇÏÍ
-D ÄÁÔÁ . ïÂÒÁÔÉÔÅÓØ Ë ÓÔÒÁÎÉÃÅ ÓÐÒÁ×ÏÞÎÉËÁ
&man.cvs.1; ÚÁ ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÊ ÉÎÆÏÒÍÁÃÉÅÊ.
ðÒÉÍÅÒÙ
èÏÔÑ ÐÅÒÅÄ ÔÅÍ, ËÁË ÞÔÏ-ÔÏ ÄÅÌÁÔØ, ÒÅËÏÍÅÎÄÕÅÔÓÑ ÐÏÌÎÏÓÔØÀ
ÐÒÏÞÅÓÔØ ÓÔÒÁÎÉÃÕ ÓÐÒÁ×ÏÞÎÉËÁ &man.cvs.1;, ×ÏÔ ÎÅÓËÏÌØËÏ ËÒÁÔËÉÈ
ÐÒÉÍÅÒÏ× ÉÓÐÏÌØÚÏ×ÁÎÉÑ Anonymous CVS:
éÚ×ÌÅÞÅÎÉÅ ËÏÄÁ ÉÚ -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co ls
éÓÐÏÌØÚÏ×ÁÎÉÅ SSH ÄÌÑ ÉÚ×ÌÅÞÅÎÉÑ ÄÅÒÅ×Á
src/ :
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
éÚ×ÌÅÞÅÎÉÅ &man.ls.1; ÉÚ ×ÅÔ×É ÄÌÑ 6-STABLE:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co -rRELENG_6 ls
óÏÚÄÁÎÉÅ ÓÐÉÓËÁ ÉÚÍÅÎÅÎÉÊ &man.ls.1; (× ×ÉÄÅ unified diff)
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
ðÏÉÓË ÄÏÓÔÕÐÎÙÈ ÉÍÅÎ ÍÏÄÕÌÅÊ:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
äÒÕÇÉÅ ÒÅÓÕÒÓÙ
÷ ÉÚÕÞÅÎÉÉ CVS ÍÏÇÕÔ ÐÏÍÏÞØ ÓÌÅÄÕÀÝÉÅ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ
ÒÅÓÕÒÓÙ:
õÞÅÂÎÉË
ÐÏ CVS ÏÔ Cal Poly.
CVS Home ,
ÓÏÏÂÝÅÓÔ×Ï ÒÁÚÒÁÂÏÔËÉ É ÐÏÄÄÅÒÖËÉ CVS.
CVSweb
ÜÔÏ ×Å ÉÎÔÅÒÆÅÊÓ Ë CVS ÐÒÏÅËÔÁ FreeBSD.
éÓÐÏÌØÚÏ×ÁÎÉÅ CTM
CTM
CTM ÜÔÏ ÍÅÔÏÄ ÓÉÎÈÒÏÎÉÚÁÃÉÉ ÕÄÁÌÅÎÎÏÇÏ
ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× Ó ÃÅÎÔÒÁÌØÎÙÍ. ïÎ ÂÙÌ ÒÁÚÒÁÂÏÔÁÎ ÄÌÑ
ÉÓÐÏÌØÚÏ×ÁÎÉÑ Ó ÄÅÒÅ×ÏÍ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× FreeBSD, ÈÏÔÑ ÍÏÖÅÔ
ÂÙÔØ ÐÏÌÅÚÅÎ É ÄÌÑ ÄÒÕÇÉÈ ÃÅÌÅÊ. îÁ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ÓÕÝÅÓÔ×ÕÅÔ ÏÞÅÎØ
ÎÅÍÎÏÇÏ (ÅÓÌÉ ÏÎÁ ×ÏÏÂÝÅ ÓÕÝÅÓÔ×ÕÅÔ) ÄÏËÕÍÅÎÔÁÃÉÉ ÐÏ ÐÒÏÃÅÓÓÕ ÓÏÚÄÁÎÉÑ
ÄÅÌØÔÁ-ÆÁÊÌÏ× (deltas, ÒÁÚÎÉÃÁ ÍÅÖÄÕ ÉÍÅÀÝÉÍÉÓÑ É ÁËÔÕÁÌØÎÙÍÉ
ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ), ÐÏÜÔÏÍÕ ÏÂÒÁÔÉÔÅÓØ × ÓÐÉÓÏË ÒÁÓÓÙÌËÉ
&a.ctm-users.name; ÚÁ
ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÅÊ, ÅÓÌÉ ÚÁÈÏÔÉÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ
CTM ÄÌÑ ÄÒÕÇÉÈ ÃÅÌÅÊ.
úÁÞÅÍ ÍÎÅ ÍÏÖÅÔ ÐÏÎÁÄÏÂÉÔØÓÑ
CTM ?
CTM ÓÏÚÄÁÓÔ ÄÌÑ ×ÁÓ ÌÏËÁÌØÎÕÀ ËÏÐÉÀ
ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× FreeBSD. óÕÝÅÓÔ×ÕÅÔ ÍÎÏÖÅÓÔ×Ï ÒÁÚÎÏ×ÉÄÎÏÓÔÅÊ
ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×. úÁÈÏÔÉÔÅ ÌÉ ×Ù ÐÏÄÄÅÒÖÉ×ÁÔØ ×ÓÅ ÄÅÒÅ×Ï
CVS ÉÌÉ ÔÏÌØËÏ ÏÄÎÕ ÉÚ ×ÅÔ×ÅÊ, CTM
ÍÏÖÅÔ ÐÒÅÄÏÓÔÁ×ÉÔØ ×ÁÍ ×ÓÅ ÎÅÏÂÈÏÄÉÍÏÅ. åÓÌÉ ×Ù ÒÁÚÒÁÂÏÔÞÉË
FreeBSD, ÎÏ ×ÁÛÅ ÓÏÅÄÉÎÅÎÉÅ ÐÏ TCP/IP ÎÅËÁÞÅÓÔ×ÅÎÎÏÅ ÉÌÉ
ÏÔÓÕÔÓÔ×ÕÅÔ, ÉÌÉ ÖÅ ×Ù ÐÒÏÓÔÏ ÈÏÔÉÔÅ, ÞÔÏÂÙ ÉÚÍÅÎÅÎÉÑ Á×ÔÏÍÁÔÉÞÅÓËÉ
ÏÔÐÒÁ×ÌÑÌÉÓØ ×ÁÍ, CTM ÐÒÅÄÎÁÚÎÁÞÅÎ
ÄÌÑ ×ÁÓ. ÷ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÐÏÌÕÞÁÔØ ÄÏ ÔÒÅÈ ÉÚÍÅÎÅÎÉÊ × ÄÅÎØ ÄÌÑ
ÎÁÉÂÏÌÅÅ ÁËÔÉ×ÎÙÈ ×ÅÔ×ÅÊ. ïÎÉ ÂÕÄÕÔ ÏÔÐÒÁ×ÌÑÔØÓÑ ×ÁÍ ÐÏ ÜÌÅËÔÒÏÎÎÏÊ
ÐÏÞÔÅ. òÁÚÍÅÒÙ ÏÂÎÏ×ÌÅÎÉÊ ×ÓÅÇÄÁ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÎÁÓÔÏÌØËÏ ÍÁÌÙÍÉ,
ÎÁÓËÏÌØËÏ ÜÔÏ ×ÏÚÍÏÖÎÏ. ïÎÉ ÏÂÙÞÎÏ ÍÅÎØÛÅ 5K, ÈÏÔÑ ÓÌÕÞÁÅÔÓÑ
(ÒÁÚ ÉÚ ÄÅÓÑÔÉ) ÄÏÓÔÉÇÁÀÔ 10-50K É ×ÒÅÍÑ ÏÔ ×ÒÅÍÅÎÉ ÄÁÖÅ
100K ÉÌÉ ÂÏÌØÛÅ.
÷ÁÍ ÔÁËÖÅ ÐÏÔÒÅÂÕÅÔÓÑ ÕÚÎÁÔØ Ï ÒÁÚÌÉÞÎÙÈ ÏÓÏÂÅÎÎÏÓÔÑÈ ÒÁÂÏÔÙ
ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ Ó ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ × ÒÁÚÒÁÂÏÔËÅ, ×ÍÅÓÔÏ
ÇÏÔÏ×ÙÈ ÒÅÌÉÚÏ×. üÔÏ × ÞÁÓÔÎÏÓÔÉ ÏÔÎÏÓÉÔÓÑ Ë ×ÙÂÏÒÕ ÉÓÈÏÄÎÙÈ
ÔÅËÓÔÏ× ×ÅÔ×É -CURRENT. òÅËÏÍÅÎÄÕÅÔÓÑ ÐÒÏÞÅÓÔØ ÍÁÔÅÒÉÁÌ
îÁ ÐÅÒÅÄÎÅÍ ËÒÁÅ ÒÁÚÒÁÂÏÔÏË.
þÔÏ ÐÏÔÒÅÂÕÅÔÓÑ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ
CTM ?
÷ÁÍ ÐÏÔÒÅÂÕÀÔÓÑ Ä×Å ×ÅÝÉ: ÐÒÏÇÒÁÍÍÁ
CTM É ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ, ËÏÔÏÒÙÅ ÔÒÅÂÕÅÔÓÑ
ÏÂÎÏ×ÉÔØ (ÄÏ ÁËÔÕÁÌØÎÏÇÏ ÓÏÓÔÏÑÎÉÑ).
ðÒÏÇÒÁÍÍÁ CTM ÂÙÌÁ ÞÁÓÔØÀ
FreeBSD ×ÓÅ ×ÒÅÍÑ Ó ÍÏÍÅÎÔÁ ×ÙÐÕÓËÁ ÒÅÌÉÚÁ 2.0, ÏÎÁ ÎÁÈÏÄÉÔÓÑ
× ËÁÔÁÌÏÇÅ /usr/src/usr.sbin/ctm , ÅÓÌÉ
Õ ×ÁÓ ÅÓÔØ ËÏÐÉÑ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×.
äÅÌØÔÁ-ÆÁÊÌÙ
CTM ÍÏÇÕÔ ÐÒÉÈÏÄÉÔØ Ä×ÕÍÑ ÐÕÔÑÍÉ,
ÞÅÒÅÚ FTP ÉÌÉ email. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ÄÏÓÔÕÐ Ë ÉÎÔÅÒÎÅÔ ÐÏ FTP,
ÄÏÓÔÕÐ Ë CTM ÍÏÖÅÔ ÂÙÔØ ÐÏÌÕÞÅÎ ÞÅÒÅÚ
ÓÌÅÄÕÀÝÉÅ FTP ÓÁÊÔÙ:
ÉÌÉ Ó ÓÁÊÔÏ× ÉÚ ÓÐÉÓËÁ ÚÅÒËÁÌ.
úÁÊÄÉÔÅ ÐÏ FTP × ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ËÁÔÁÌÏÇ É ÐÒÏÞÔÉÔÅ ÆÁÊÌ
README .
åÓÌÉ ×Ù ÐÒÅÄÐÏÞÉÔÁÅÔÅ ÐÏÌÕÞÁÔØ ÄÅÌØÔÁ-ÆÁÊÌÙ ÐÏ ÐÏÞÔÅ:
ðÏÄÐÉÛÉÔÅÓØ ÎÁ ÏÄÉÎ ÉÚ ÓÐÉÓËÏ× ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ
CTM .
&a.ctm-cvs-cur.name; ÐÏÄÄÅÒÖÉ×ÁÅÔ ×ÓÅ ÄÅÒÅ×Ï CVS.
&a.ctm-src-cur.name; ÐÏÄÄÅÒÖÉ×ÁÅÔ ÇÌÁ×ÎÕÀ ×ÅÔר ÒÁÚÒÁÂÏÔËÉ.
&a.ctm-src-4.name; ÐÏÄÄÅÒÖÉ×ÁÅÔ ×ÅÔר 4.X, É Ô.Ä. åÓÌÉ ×Ù
ÎÅ ÚÎÁÅÔÅ, ËÁË ÐÏÄÐÉÓÁÔØÓÑ ÎÁ ÓÐÉÓÏË, ÎÁÖÍÉÔÅ ÎÁ ÓÓÙÌËÕ ×ÙÛÅ ÉÌÉ
ÎÁ ÓÓÙÌËÕ &a.mailman.lists.link;, Á ÚÁÔÅÍ ÎÁ ÓÓÙÌËÕ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÇÏ
ÓÐÉÓËÁ. óÔÒÁÎÉÃÁ ÓÐÉÓËÁ ÄÏÌÖÎÁ ÓÏÄÅÒÖÁÔØ ×ÓÅ ÎÅÏÂÈÏÄÉÍÙÅ ÉÎÓÔÒÕËÃÉÉ
ÐÏ ÐÏÄÐÉÓËÅ.
ëÏÇÄÁ ×Ù ÎÁÞÎÅÔÅ ÐÏÌÕÞÁÔØ ÏÂÎÏ×ÌÅÎÉÑ
CTM ÐÏ ÐÏÞÔÅ, ÉÓÐÏÌØÚÕÊÔÅ ÐÒÏÇÒÁÍÍÕ
ctm_rmail ÄÌÑ ÒÁÓÐÁËÏ×ËÉ É ÐÒÉÍÅÎÅÎÉÑ ÏÂÎÏ×ÌÅÎÉÊ.
÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÕ ctm_rmail
ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÉÚ /etc/aliases , ÅÓÌÉ
ÈÏÔÉÔÅ ÐÏÌÎÏÓÔØÀ Á×ÔÏÍÁÔÉÚÉÒÏ×ÁÔØ ÐÒÏÃÅÓÓ. ðÒÏÞÔÉÔÅ ÓÔÒÁÎÉÃÕ
ÓÐÒÁ×ÏÞÎÉËÁ ctm_rmail Ó ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÊ
ÉÎÆÏÒÍÁÃÉÅÊ.
÷ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÓÐÏÓÏÂÁ ÐÏÌÕÞÅÎÉÑ ÄÅÌØÔÁ-ÆÁÊÌÏ×
CTM , ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÐÏÄÐÉÓËÁ ÎÁ
ÓÐÉÓÏË ÒÁÓÓÙÌËÉ &a.ctm-announce.name;. ÷ ÂÕÄÕÝÅÍ ÜÔÏÔ ÓÐÉÓÏË
ÓÔÁÎÅÔ ÅÄÉÎÓÔ×ÅÎÎÙÍ ÍÅÓÔÏÍ, ÇÄÅ ÂÕÄÕÔ ÁÎÏÎÓÉÒÏ×ÁÔØÓÑ ÏÐÅÒÁÃÉÉ,
ÏÔÎÏÓÑÝÉÅÓÑ Ë ÓÉÓÔÅÍÅ CTM .
îÁÖÍÉÔÅ ÎÁ ÓÓÙÌËÕ ×ÙÛÅ É ÓÌÅÄÕÊÔÅ ÉÎÓÔÒÕËÃÉÑÍ ÄÌÑ ÐÏÄÐÉÓËÉ
ÎÁ ÜÔÕ ÒÁÓÓÙÌËÕ.
éÓÐÏÌØÚÏ×ÁÎÉÅ CTM × ÐÅÒ×ÙÊ
ÒÁÚ
ðÅÒÅÄ ÔÅÍ, ËÁË ×Ù ÓÍÏÖÅÔÅ ÎÁÞÁÔØ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÄÅÌØÔÁ-ÆÁÊÌÏ×
CTM , ÐÏÔÒÅÂÕÅÔÓÑ ÏÐÒÅÄÅÌÉÔØ
ÉÓÈÏÄÎÕÀ ÔÏÞËÕ ÄÌÑ ÐÏÓÌÅÄÕÀÝÅÇÏ ÉÈ ÐÒÉÍÅÎÅÎÉÑ.
óÎÁÞÁÌÁ ÐÏÔÒÅÂÕÅÔÓÑ ÏÐÒÅÄÅÌÉÔØ, ÞÔÏ ÕÖÅ ÉÍÅÅÔÓÑ.
ëÁÖÄÙÊ ÍÏÖÅÔ ÎÁÞÁÔØ Ó ÐÕÓÔÏÇÏ
(empty) ËÁÔÁÌÏÇÁ.
÷Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÅÌØÔÁ-ÆÁÊÌ Empty
ÄÌÑ ÓÏÚÄÁÎÉÑ ÐÏÄÄÅÒÖÉ×ÁÅÍÏÇÏ CTM ÄÅÒÅ×Á.
ðÌÁÎÉÒÕÅÔÓÑ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÅ ÓÔÁÒÔÏ×ÙÈ
ÄÅÌØÔÁ-ÆÁÊÌÏ×
ÎÁ CD, ÎÏ ÎÁ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ÜÔÏ ÎÅ ÄÅÌÁÅÔÓÑ.
ðÏÓËÏÌØËÕ ÄÅÒÅ×Ï ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× ÍÏÖÅÔ ÂÙÔØ ÏÂßÅÍÏÍ × ÄÅÓÑÔËÉ
ÍÅÇÁÂÁÊÔ, ÐÒÅÄÐÏÞÔÉÔÅÌØÎÏ ÎÁÞÁÔØ Ó ËÁËÉÈ-ÔÏ ÕÖÅ ÉÍÅÀÝÉÈÓÑ ÔÅËÓÔÏ×.
åÓÌÉ Õ ×ÁÓ ÅÓÔØ -RELEASE CD, ÒÁÓÐÁËÕÊÔÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ Ó ÎÅÇÏ.
üÔÏ ÓÎÉÚÉÔ ÏÂßÅÍ ÐÅÒÅÄÁ×ÁÅÍÙÈ ÄÁÎÎÙÈ.
÷Ù ÍÏÖÅÔÅ ÒÁÓÐÏÚÎÁÔØ ÓÔÁÒÔÏ×ÙÊ
ÄÅÌØÔÁ-ÆÁÊÌ
ÐÏ ÓÉÍ×ÏÌÕ X , ÄÏÂÁ×ÌÑÅÍÏÍÕ Ë ÎÏÍÅÒÕ
(ÎÁÐÒÉÍÅÒ, src-cur.3210XEmpty.gz ).
ïÂÏÚÎÁÞÅÎÉÅ ÐÅÒÅÄ X ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÉÍÅÀÝÉÍÓÑ
ÉÓÈÏÄÎÙÍ ÔÅËÓÔÁÍ. Empty ÜÔÏ ÐÕÓÔÏÊ ËÁÔÁÌÏÇ.
ëÁË ÐÒÁ×ÉÌÏ ÆÁÊÌ Ó Empty ÓÏÚÄÁÅÔÓÑ ÞÅÒÅÚ ËÁÖÄÙÅ
100 ÄÅÌØÔÁ-ÆÁÊÌÏ×. íÅÖÄÕ ÐÒÏÞÅÍ, ÜÔÉ ÆÁÊÌÙ ÂÏÌØÛÉÅ! ïÔ 70 ÄÏ
;) ÍÅÇÁÂÁÊÔ ÕÐÁËÏ×ÁÎÎÙÈ gzip ÄÁÎÎÙÈ ÜÔÏ
ÏÂÙÞÎÙÊ ÒÁÚÍÅÒ ÄÌÑ XEmpty .
ëÁË ÔÏÌØËÏ ×Ù ÐÏÌÕÞÉÌÉ ÏÓÎÏ×ÎÏÊ ÄÅÌØÔÁ-ÆÁÊÌ, ÐÏÔÒÅÂÕÀÔÓÑ ÔÁËÖÅ
×ÓÅ ÄÅÌØÔÁ-ÆÁÊÌÙ Ó ÐÏÓÌÅÄÕÀÝÉÍÉ ÎÏÍÅÒÁÍÉ.
ðÏ×ÓÅÄÎÅ×ÎÏÅ ÉÓÐÏÌØÚÏ×ÁÎÉÅ
CTM
äÌÑ ÐÒÉÍÅÎÅÎÉÑ ÄÅÌØÔÁ-ÆÁÊÌÏ×, ÐÒÏÓÔÏ ×ÙÐÏÌÎÉÔÅ:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM ÒÁÂÏÔÁÅÔ Ó ÄÅÌØÔÁ-ÆÁÊÌÁÍÉ,
ÕÐÁËÏ×ÁÎÎÙÍÉ Ó ÐÏÍÏÝØÀ gzip , ÐÏÜÔÏÍÕ ×ÁÍ ÎÅ
ÔÒÅÂÕÅÔÓÑ ÉÈ ÒÁÓÐÁËÏ×Ù×ÁÔØ.
èÏÔÑ ×ÅÓØ ÐÒÏÃÅÓÓ ÄÏ×ÏÌØÎÏ ÂÅÚÏÐÁÓÅÎ,
CTM ÎÅ ÂÕÄÅÔ ÉÚÍÅÎÑÔØ ÄÅÒÅ×Ï ÉÓÈÏÄÎÙÈ
ÔÅËÓÔÏ×. äÌÑ ÐÒÏ×ÅÒËÉ ÄÅÌØÔÁ-ÆÁÊÌÁ ×Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ
ÆÌÁÇ -c , CTM
ÔÏÌØËÏ ÐÒÏ×ÅÒÉÔ ÃÅÌÏÓÔÎÏÓÔØ ÄÅÌØÔÁ-ÆÁÊÌÁ Á ÔÁËÖÅ ÅÇÏ ÐÒÉÍÅÎÉÍÏÓÔØ
Ë ÓÕÝÅÓÔ×ÕÀÝÉÍ ÉÓÈÏÄÎÙÍ ÔÅËÓÔÁÍ.
üÔÏ ×ÓÅ. ëÁÖÄÙÊ ÒÁÚ ÐÏÓÌÅ ÐÏÌÕÞÅÎÉÑ ÄÅÌØÔÁ-ÆÁÊÌÁ, ÚÁÐÕÓËÁÊÔÅ
CTM ÄÌÑ ÐÏÄÄÅÒÖÁÎÉÑ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×
× ÁËÔÕÁÌØÎÏÍ ÓÏÓÔÏÑÎÉÉ.
îÅ ÕÄÁÌÑÊÔÅ ÄÅÌØÔÁ-ÆÁÊÌÙ, ÅÓÌÉ ÉÈ ÓÌÏÖÎÏ ÚÁÇÒÕÚÉÔØ ÅÝÅ ÒÁÚ.
÷Ù ×ÏÚÍÏÖÎÏ ÚÁÈÏÔÉÔÅ ÓÏÈÒÁÎÉÔØ ÉÈ ÎÁ ×ÓÑËÉÊ ÓÌÕÞÁÊ. åÓÌÉ ×Ù ÍÏÖÅÔÅ
ÓÏÈÒÁÎÉÔØ ÉÈ ÔÏÌØËÏ ÎÁ ÄÉÓËÅÔÅ, ÉÓÐÏÌØÚÕÊÔÅ ÄÌÑ ÓÏÚÄÁÎÉÑ ËÏÐÉÉ
fdwrite .
óÏÈÒÁÎÅÎÉÅ ÌÏËÁÌØÎÙÈ ÉÚÍÅÎÅÎÉÊ
ëÁË ÒÁÚÒÁÂÏÔÞÉË ×Ù ×ÏÚÍÏÖÎÏ ÚÁÈÏÔÉÔÅ ÐÏÜËÓÐÅÒÉÍÅÎÔÉÒÏ×ÁÔØ É
ÉÚÍÅÎÉÔØ ÆÁÊÌÙ × ÄÅÒÅ×Å ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×.
CTM ÉÍÅÅÔ ÏÇÒÁÎÉÞÅÎÎÕÀ ÐÏÄÄÅÒÖËÕ
ÌÏËÁÌØÎÙÈ ÉÚÍÅÎÅÎÉÊ: ÐÅÒÅÄ ÐÒÏ×ÅÒËÏÊ ÎÁÌÉÞÉÑ ÆÁÊÌÁ
foo , ÓÎÁÞÁÌÁ ÐÒÏ×ÅÒÑÅÔÓÑ
foo.ctm . åÓÌÉ ÏÎ ÐÒÉÓÕÔÓÔ×ÕÅÔ,
CTM ÂÕÄÅÔ ÒÁÂÏÔÁÔØ Ó ÎÉÍ ×ÍÅÓÔÏ
foo .
ôÁËÏÅ ÐÏ×ÅÄÅÎÉÅ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÐÒÏÓÔÏÊ ÐÕÔØ ÐÏÄÄÅÒÖËÉ ÌÏËÁÌØÎÙÈ
ÉÚÍÅÎÅÎÉÊ: ÐÒÏÓÔÏ ÓËÏÐÉÒÕÊÔÅ ÆÁÊÌÙ, ËÏÔÏÒÙÅ ×Ù ÈÏÔÉÔÅ ÉÚÍÅÎÉÔØ,
× ÆÁÊÌÙ Ó ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍÉ ÉÍÅÎÁÍÉ É ÓÕÆÆÉËÓÏÍ
.ctm . ÷Ù ÍÏÖÅÔÅ Ó×ÏÂÏÄÎÏ ÉÚÍÅÎÑÔØ ËÏÄ,
Á CTM ÂÕÄÅÔ ÐÏÄÄÅÒÖÉ×ÁÔØ ÆÁÊÌÙ
.ctm × ÁËÔÕÁÌØÎÏÍ ÓÏÓÔÏÑÎÉÉ.
äÒÕÇÉÅ ÉÎÔÅÒÅÓÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ
CTM
ïÐÒÅÄÅÌÅÎÉÅ ÆÁÊÌÏ×, ËÏÔÏÒÙÅ ÂÕÄÕÔ ÚÁÔÒÏÎÕÔÙ
ÏÂÎÏ×ÌÅÎÉÅÍ
÷Ù ÍÏÖÅÔÅ ÏÐÒÅÄÅÌÉÔØ ÓÐÉÓÏË ÉÚÍÅÎÅÎÉÊ, ËÏÔÏÒÙÅ
CTM ×ÎÅÓÅÔ × ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ,
ÉÓÐÏÌØÚÕÑ ÐÁÒÁÍÅÔÒ CTM
-l .
üÔÏ ÐÏÌÅÚÎÏ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÏÄÄÅÒÖÉ×ÁÔØ ÌÏÇ ÉÚÍÅÎÅÎÉÊ,
×ÙÐÏÌÎÉÔØ ÐÒÅÄ×ÁÒÉÔÅÌØÎÕÀ ÉÌÉ ÐÏÓÌÅÄÕÀÝÕÀ ÏÂÒÁÂÏÔËÕ ÉÚÍÅÎÑÅÍÙÈ
ÆÁÊÌÏ×, ÉÌÉ ÅÓÌÉ ×Ù ÐÒÏÓÔÏ ÎÅÍÎÏÇÏ ÐÁÒÁÎÏÉÄÁÌØÎÙ.
óÏÚÄÁÎÉÅ ÒÅÚÅÒ×ÎÙÈ ËÏÐÉÊ ÐÅÒÅÄ ÏÂÎÏ×ÌÅÎÉÅÍ
éÎÏÇÄÁ ×ÁÍ ÍÏÖÅÔ ÐÏÎÁÄÏÂÉÔØÓÑ ÓÄÅÌÁÔØ ÒÅÚÅÒ×ÎÙÅ ËÏÐÉÉ ×ÓÅÈ
ÆÁÊÌÏ×, ËÏÔÏÒÙÅ ÂÕÄÕÔ ÉÚÍÅÎÅÎÙ
CTM .
ó ÐÁÒÁÍÅÔÒÏÍ -B backup-file
CTM ×ÙÐÏÌÎÉÔ ÒÅÚÅÒ×ÎÏÅ ËÏÐÉÒÏ×ÁÎÉÅ
×ÓÅÈ ÉÚÍÅÎÑÅÍÙÈ ÄÅÌØÔÁ-ÆÁÊÌÏÍ CTM
ÆÁÊÌÏ× × backup-file .
ïÇÒÁÎÉÞÅÎÉÅ ÏÂÎÏ×ÌÅÎÉÊ ÄÌÑ ÏÐÒÅÄÅÌÅÎÎÙÈ ÆÁÊÌÏ×
éÎÏÇÄÁ ÎÅÏÂÈÏÄÉÍÏ ÏÇÒÁÎÉÞÉÔØ ÎÁÂÏÒ ÆÁÊÌÏ×, ÏÂÎÏ×ÌÑÅÍÙÈ
CTM , ÉÌÉ ÄÁÖÅ ÚÁÄÁÔØ ÏÂÎÏ×ÌÅÎÉÅ
ÎÅÓËÏÌØËÉÈ ÏÐÒÅÄÅÌÅÎÎÙÈ ÆÁÊÌÏ×.
÷Ù ÍÏÖÅÔÅ ÕÐÒÁ×ÌÑÔØ ÓÐÉÓËÏÍ ÆÁÊÌÏ×, Ó ËÏÔÏÒÙÍÉ ÂÕÄÅÔ ÒÁÂÏÔÁÔØ
CTM , ÐÕÔÅÍ ÕËÁÚÁÎÉÑ ÆÉÌØÔÒÕÀÝÉÈ
ÒÅÇÕÌÑÒÎÙÈ ×ÙÒÁÖÅÎÉÊ Ó ÐÁÒÁÍÅÔÒÁÍÉ -e É
-x .
îÁÐÒÉÍÅÒ, ÄÌÑ ÉÚ×ÌÅÞÅÎÉÑ Ó×ÅÖÅÊ ËÏÐÉÉ
lib/libc/Makefile ÉÚ ËÏÌÌÅËÃÉÉ ÓÏÈÒÁÎÅÎÎÙÈ
ÄÅÌØÔÁ-ÆÁÊÌÏ× CTM , ×ÙÐÏÌÎÉÔÅ
ËÏÍÁÎÄÕ:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
äÌÑ ËÁÖÄÏÇÏ ÕËÁÚÁÎÎÏÇÏ CTM
ÄÅÌØÔÁ-ÆÁÊÌÁ, ÐÁÒÁÍÅÔÒÙ -e É -x
ÐÒÉÍÅÎÑÀÔÓÑ × ÐÏÒÑÄËÅ ÉÈ ÚÁÄÁÎÉÑ × ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÅ. æÁÊÌ
ÏÂÒÁÂÁÔÙ×ÁÅÔÓÑ CTM ÔÏÌØËÏ ÅÓÌÉ ÏÎ
ÐÏÍÅÞÁÅÔÓÑ ËÁË ÐÏÄÈÏÄÑÝÉÊ ÐÏÓÌÅ ÏÂÒÁÂÏÔËÉ ×ÓÅÈ ÐÁÒÁÍÅÔÒÏ×
-e É -x .
äÁÌØÎÅÊÛÉÅ ÐÌÁÎÙ ÄÌÑ CTM
íÁÓÓÁ ÐÌÁÎÏ×:
éÓÐÏÌØÚÏ×ÁÔØ ËÁËÏÊ-ÔÏ ÉÚ ×ÉÄÏ× ÁÕÔÅÎÔÉÆÉËÁÃÉÉ × ÓÉÓÔÅÍÅ
CTM , ÐÏÚ×ÏÌÑÀÝÉÊ ÏÂÎÁÒÕÖÅÎÉÅ
ÐÏÄÄÅÌØÎÙÈ ÄÁÔ CTM .
äÏÒÁÂÏÔÁÔØ ÐÁÒÁÍÅÔÒÙ CTM ,
ÐÏÓËÏÌØËÕ ÏÎÉ ÍÏÇÕÔ ××ÅÓÔÉ × ÚÁÂÌÕÖÄÅÎÉÅ.
òÁÚÎÏÅ
óÕÝÅÓÔ×ÕÅÔ ÎÁÂÏÒ ÄÅÌØÔÁ-ÆÁÊÌÏ× É ÄÌÑ ËÏÌÌÅËÃÉÉ
ports , ÎÏ ÉÎÔÅÒÅÓ Ë ÎÅÍÕ ÐÏËÁ ÎÅ ÔÁË
×ÙÓÏË.
úÅÒËÁÌÁ CTM
CTM/FreeBSD ÄÏÓÔÕÐÅÎ ÞÅÒÅÚ ÁÎÏÎÉÍÎÙÊ
FTP Ó ÎÉÖÅÐÒÉ×ÅÄÅÎÎÙÈ ÚÅÒËÁÌ. åÓÌÉ ×Ù ×ÙÂÒÁÌÉ ÐÏÌÕÞÅÎÉÅ
CTM ÞÅÒÅÚ ÁÎÏÎÉÍÎÙÊ FTP, ÉÓÐÏÌØÚÕÊÔÅ
ÂÌÉÖÁÊÛÉÊ Ë ×ÁÍ ÓÅÒ×ÅÒ.
÷ ÓÌÕÞÁÅ ×ÏÚÎÉËÎÏ×ÅÎÉÑ ÐÒÏÂÌÅÍ ÏÂÒÁÔÉÔÅÓØ × ÓÐÉÓÏË ÒÁÓÓÙÌËÉ
&a.ctm-users.name;.
California, Bay Area, ÏÆÉÃÉÁÌØÎÙÊ ÉÓÔÏÞÎÉË
South Africa, ÒÅÚÅÒ×ÎÙÊ ÓÅÒ×ÅÒ ÄÌÑ ÓÔÁÒÙÈ ÄÅÌØÔÁ-ÆÁÊÌÏ×
Taiwan/R.O.C.
åÓÌÉ ×Ù ÎÅ ÎÁÛÌÉ ÂÌÉÖÁÊÛÅÇÏ Ë ×ÁÍ ÚÅÒËÁÌÁ, ÉÌÉ ÚÅÒËÁÌÏ ÎÅÐÏÌÎÏ,
ÐÏÐÒÏÂÕÊÔÅ ×ÏÓÐÏÌØÚÏ×ÁÔØÓÑ ÐÏÉÓËÏÍ, ÎÁÐÒÉÍÅÒ
alltheweb .
éÓÐÏÌØÚÏ×ÁÎÉÅ CVSup
÷×ÅÄÅÎÉÅ
CVSup ÜÔÏ ÐÁËÅÔ ÐÒÏÇÒÁÍÍÎÏÇÏ
ÏÂÅÓÐÅÞÅÎÉÑ ÄÌÑ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ É ÏÂÎÏ×ÌÅÎÉÑ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× Ó
ÏÓÎÏ×ÎÏÇÏ ÒÅÐÏÚÉÔÏÒÉÑ CVS ÎÁ ÕÄÁÌÅÎÎÏÍ ÓÅÒ×ÅÒÅ. éÓÈÏÄÎÙÅ ÔÅËÓÔÙ
FreeBSD ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ × ÒÅÐÏÚÉÔÏÒÉÉ CVS ÎÁ ÃÅÎÔÒÁÌØÎÏÊ ÍÁÛÉÎÅ
ÒÁÚÒÁÂÏÔËÉ × ëÁÌÉÆÏÒÎÉÉ. ó ÐÏÍÏÝØÀ CVSup
ÐÏÌØÚÏ×ÁÔÅÌÉ FreeBSD ÌÅÇËÏ ÍÏÇÕÔ ÐÏÄÄÅÒÖÉ×ÁÔØ ÓÏÂÓÔ×ÅÎÎÙÅ ÉÓÈÏÄÎÙÅ
ÔÅËÓÔÙ × ÁËÔÕÁÌØÎÏÍ ÓÏÓÔÏÑÎÉÉ.
CVSup ÉÓÐÏÌØÚÕÅÔ ÔÁË ÎÁÚÙ×ÁÅÍÕÀ
ÏÐÒÁÛÉ×ÁÀÝÕÀ (pull) ÍÏÄÅÌØ ÏÂÎÏ×ÌÅÎÉÑ.
òÁÂÏÔÁÑ ÐÏ ÜÔÏÊ ÍÏÄÅÌÉ, ËÁÖÄÙÊ ËÌÉÅÎÔ ÚÁÐÒÁÛÉ×ÁÅÔ ÏÂÎÏ×ÌÅÎÉÑ Ó
ÓÅÒ×ÅÒÁ, ÅÓÌÉ É ËÏÇÄÁ ÏÎÉ ÎÕÖÎÙ. óÅÒ×ÅÒ ÐÁÓÓÉ×ÎÏ ÏÖÉÄÁÅÔ ÚÁÐÒÏÓÙ
ÎÁ ÏÂÎÏ×ÌÅÎÉÅ ÏÔ Ó×ÏÉÈ ËÌÉÅÎÔÏ×. ôÁËÉÍ ÏÂÒÁÚÏÍ, ×ÓÅ ÏÂÎÏ×ÌÅÎÉÑ
ÉÎÉÃÉÉÒÕÀÔÓÑ ËÌÉÅÎÔÁÍÉ. óÅÒ×ÅÒ ÎÉËÏÇÄÁ ÎÅ ×ÙÓÙÌÁÅÔ ÎÅ ÚÁÐÒÏÛÅÎÎÙÅ
ÏÂÎÏ×ÌÅÎÉÑ. ðÏÌØÚÏ×ÁÔÅÌØ ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÏÂÎÏ×ÌÅÎÉÊ ÄÏÌÖÅÎ ÌÉÂÏ ÚÁÐÕÓÔÉÔØ
CVSup ËÌÉÅÎÔÁ ×ÒÕÞÎÕÀ, ÌÉÂÏ ÄÏÂÁ×ÉÔØ
ÚÁÄÁÎÉÅ × cron ÄÌÑ ÎÁÓÔÒÏÊËÉ ÐÅÒÉÏÄÉÞÅÓËÉÈ
ÏÂÎÏ×ÌÅÎÉÊ × Á×ÔÏÍÁÔÉÞÅÓËÏÍ ÒÅÖÉÍÅ.
ôÅÒÍÉÎ CVSup , ÎÁÐÉÓÁÎÎÙÊ Ó ÚÁÇÌÁ×ÎÙÍÉ
ÂÕË×ÁÍÉ, ÏÚÎÁÞÁÅÔ ×ÅÓØ ÐÁËÅÔ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ. åÇÏ ÏÓÎÏ×ÎÙÅ
ËÏÍÐÏÎÅÎÔÙ ÜÔÏ ËÌÉÅÎÔ cvsup , ÚÁÐÕÓËÁÅÍÙÊ ÎÁ
ËÁÖÄÏÍ ÐÏÌØÚÏ×ÁÔÅÌØÓËÏÍ ËÏÍÐØÀÔÅÒÅ, É ÓÅÒ×ÅÒ
cvsupd , ÒÁÂÏÔÁÀÝÉÊ ÎÁ ËÁÖÄÏÍ ÚÅÒËÁÌÅ
FreeBSD.
ðÒÉ ÞÔÅÎÉÉ ÄÏËÕÍÅÎÔÁÃÉÉ FreeBSD É ÓÐÉÓËÏ× ÒÁÓÓÙÌËÉ ×Ù ÍÏÇÌÉ
×ÓÔÒÅÔÉÔØ ÕËÁÚÁÎÉÑ ÎÁ sup .
Sup ÂÙÌ ÐÒÅÄÛÅÓÔ×ÅÎÎÉËÏÍ
CVSup , É ×ÙÐÏÌÎÑÌ ÐÏÈÏÖÉÅ ÆÕÎËÃÉÉ.
CVSup × ÏÓÎÏ×ÎÏÍ ÉÓÐÏÌØÚÕÅÔÓÑ ÔÅÍ ÖÅ
ÓÐÏÓÏÂÏÍ, ÞÔÏ É sup, É, ÆÁËÔÉÞÅÓËÉ, ÉÓÐÏÌØÚÕÅÔ ÆÁÊÌÙ ÎÁÓÔÒÏÊËÉ,
ÏÂÒÁÔÎÏ ÓÏ×ÍÅÓÔÉÍÙÅ Ó ÆÁÊÌÁÍÉ sup .
Sup ÂÏÌÅÅ ÎÅ ÉÓÐÏÌØÚÕÅÔÓÑ ÐÒÏÅËÔÏÍ
FreeBSD, ÐÏÓËÏÌØËÕ CVSup É ÂÙÓÔÒÅÅ É
ÂÏÌÅÅ ÇÉÂÏË.
õÓÔÁÎÏ×ËÁ
ðÒÏÓÔÅÊÛÉÊ ÓÐÏÓÏ ÕÓÔÁÎÏ×ËÉ CVSup
ÜÔÏ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÐÒÅËÏÍÐÉÌÉÒÏ×ÁÎÎÏÇÏ ÐÁËÅÔÁ net/cvsup ÉÚ ËÏÌÌÅËÃÉÉ
ÐÁËÅÔÏ× FreeBSD. åÓÌÉ ×Ù ÐÒÅÄÐÏÞÔÅÔÅ ÓÏÂÒÁÔØ
CVSup ÉÚ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ÍÏÖÅÔÅ
ÉÓÐÏÌØÚÏ×ÁÔØ ×ÍÅÓÔÏ ÜÔÏÇÏ ÐÏÒÔ net/cvsup . îÏ ÉÍÅÊÔÅ ××ÉÄÕ:
ÐÏÒÔ net/cvsup ÚÁ×ÉÓÉÔ ÏÔ ÓÉÓÔÅÍÙ
Modula-3, ËÏÔÏÒÏÊ ÐÏÔÒÅÂÕÅÔÓÑ ÓÕÝÅÓÔ×ÅÎÎÙÊ ÏÂßÅÍ ×ÒÅÍÅÎÉ É
ÐÒÏÓÔÒÁÎÓÔ×Á ÎÁ ÄÉÓËÅ ÄÌÑ ÚÁÇÒÕÚËÉ É ÕÓÔÁÎÏ×ËÉ.
åÓÌÉ ×Ù ÓÏÂÉÒÁÅÔÅÓØ ÉÓÐÏÌØÚÏ×ÁÔØ
CVSup ÎÁ ËÏÍÐØÀÔÅÒÅ, ÇÄÅ ÎÅÔ
ÕÓÔÁÎÏ×ÌÅÎÎÏÇÏ &xfree86;
ÉÌÉ &xorg; ,
ÎÁÐÒÉÍÅÒ ÎÁ ÓÅÒ×ÅÒÅ, ÉÓÐÏÌØÚÕÊÔÅ ÐÏÒÔ, ÎÅ ×ËÌÀÞÁÀÝÉÊ
CVSup GUI ,
net/cvsup-without-gui .
îÁÓÔÒÏÊËÁ CVSup
òÁÂÏÔÁ CVSup ËÏÎÔÒÏÌÉÒÕÅÔÓÑ
ÆÁÊÌÏÍ ÎÁÓÔÒÏÊËÉ, ÎÁÚÙ×ÁÅÍÙÍ supfile .
÷ ËÁÔÁÌÏÇÅ /usr/share/examples/cvsup/
ÎÁÈÏÄÉÔÓÑ ÎÅÓËÏÌØËÏ ÐÒÉÍÅÒÏ× supfile .
éÎÆÏÒÍÁÃÉÑ × supfile ÏÔ×ÅÞÁÅÔ ÎÁ
ÓÌÅÄÕÀÝÉÅ ×ÏÐÒÏÓÙ CVSup :
ëÁËÉÅ ÆÁÊÌÙ ×Ù
ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ?
ëÁËÉÅ ÉÈ ×ÅÒÓÉÉ
×ÁÍ ÎÕÖÎÙ?
ïÔËÕÄÁ ×Ù ÈÏÔÉÔÅ
ÉÈ ÐÏÌÕÞÉÔØ?
çÄÅ ×Ù ÈÏÔÉÔÅ
ÒÁÚÍÅÓÔÉÔØ ÉÈ ÎÁ Ó×ÏÅÍ ËÏÍÐØÀÔÅÒÅ?
çÄÅ ×Ù ÈÏÔÉÔÅ
ÒÁÚÍÅÓÔÉÔØ ÆÁÊÌÙ ÓÔÁÔÕÓÁ?
÷ ÓÌÅÄÕÀÝÉÈ ÒÁÚÄÅÌÁÈ ÍÙ ÓÏÓÔÁ×ÉÍ ÔÉÐÉÞÎÙÊ
supfile ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÙÍ ÏÔ×ÅÔÏÍ ÎÁ ËÁÖÄÙÊ ÉÚ ÜÔÉÈ
×ÏÐÒÏÓÏ×. óÎÁÞÁÌÁ ÏÐÉÛÅÍ ÏÂÝÕÀ ÓÔÒÕËÔÕÒÕ
supfile .
supfile ÜÔÏ ÔÅËÓÔÏ×ÙÊ ÆÁÊÌ. ëÏÍÍÅÎÔÁÒÉÉ,
ÎÁÞÉÎÁÀÝÉÅÓÑ Ó # , ÐÒÏÄÏÌÖÁÀÔÓÑ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉ.
ðÕÓÔÙÅ ÓÔÒÏËÉ É ÓÔÒÏËÉ, ÓÏÄÅÒÖÁÝÉÅ ÔÏÌØËÏ ËÏÍÍÅÎÔÁÒÉÉ,
ÉÇÎÏÒÉÒÕÀÔÓÑ.
ëÁÖÄÁÑ ÉÚ ÏÓÔÁ×ÛÉÈÓÑ ÓÔÒÏË ÏÐÉÓÙ×ÁÅÔ ÎÁÂÏÒ ÆÁÊÌÏ×, ÐÏÌÕÞÁÅÍÙÈ
ÐÏÌØÚÏ×ÁÔÅÌÅÍ. óÔÒÏËÁ ÎÁÞÉÎÁÅÔÓÑ Ó ÉÍÅÎÉ ËÏÌÌÅËÃÉÉ
,
ÌÏÇÉÞÅÓËÏÇÏ ÏÂßÅÄÉÎÅÎÉÑ ÆÁÊÌÏ×, ÏÐÒÅÄÅÌÑÅÍÙÈ ÓÅÒ×ÅÒÏÍ. éÍÑ ËÏÌÌÅËÃÉÉ
ÇÏ×ÏÒÉÔ ÓÅÒ×ÅÒÕ Ï ÔÏÍ, ËÁËÉÅ ÆÁÊÌÙ ×ÁÍ ÎÕÖÎÙ. ðÏÓÌÅ ÉÍÅÎÉ ËÏÌÌÅËÃÉÉ
ÓÌÅÄÕÀÔ ÏÄÎÏ ÉÌÉ ÂÏÌØÛÅ ÐÏÌÅÊ, ÒÁÚÄÅÌÅÎÎÙÈ ÐÒÏÂÅÌÏÍ. üÔÉ ÐÏÌÑ
ÏÔ×ÅÞÁÀÔ ÎÁ ×ÏÐÒÏÓÙ, ÚÁÄÁÎÎÙÅ ×ÙÛÅ. åÓÔØ Ä×Á ÔÉÐÁ ÐÏÌÅÊ: ÆÌÁÇÉ É
ÚÎÁÞÅÎÉÑ. ðÏÌÅ ÆÌÁÇÁ ÓÏÓÔÏÉÔ ÉÚ ÏÄÎÏÇÏ ËÌÀÞÅ×ÏÇÏ ÓÌÏ×Á, ÎÁÐÒÉÍÅÒ
delete ÉÌÉ compress .
ðÏÌÅ ÚÎÁÞÅÎÉÑ ÔÁËÖÅ ÎÁÞÉÎÁÅÔÓÑ Ó ËÌÀÞÅ×ÏÇÏ ÓÌÏ×Á, ÎÏ ÚÁ ÎÉÍ ÂÅÚ
ÐÒÏÂÅÌÁ ÓÌÅÄÕÅÔ = É ×ÔÏÒÏÅ ÓÌÏ×Ï. îÁÐÒÉÍÅÒ,
release=cvs ÜÔÏ ÐÏÌÅ ÚÎÁÞÅÎÉÑ.
supfile ÏÂÙÞÎÏ ÚÁÄÁÅÔ ÐÏÌÕÞÅÎÉÅ
ÂÏÌÅÅ ÏÄÎÏÊ ËÏÌÌÅËÃÉÉ. ïÄÎÉÍ ÉÚ ÓÐÏÓÏÂÏ× ÐÏÓÔÒÏÅÎÉÑ
supfile Ñ×ÌÑÅÔÓÑ ÕËÁÚÁÎÉÅ ×ÓÅÈ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ
ÐÏÌÅÊ ÄÌÑ ËÁÖÄÏÊ ËÏÌÌÅËÃÉÉ Ñ×ÎÏ. ïÄÎÁËÏ, ÜÔÏ ÐÒÉ×ÏÄÉÔ Ë ÐÏÑ×ÌÅÎÉÀ
ÓÌÉÛËÏÍ ÄÌÉÎÎÙÈ ÓÔÒÏË × supfile É ÜÔÏ ÎÅÕÄÏÂÎÏ,
ÐÏÓËÏÌØËÕ ÂÏÌØÛÉÎÓÔ×Ï ÐÏÌÅÊ ÏÄÉÎÁËÏ×Ù ÄÌÑ ×ÓÅÈ ËÏÌÌÅËÃÉÊ
supfile . CVSup
ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÍÅÈÁÎÉÚÍ ÚÁÄÁÎÉÑ ÚÎÁÞÅÎÉÊ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ ÕÓÔÒÁÎÅÎÉÑ
ÜÔÉÈ ÐÒÏÂÌÅÍ. óÔÒÏËÉ, ÎÁÞÉÎÁÀÝÉÅÓÑ ÓÏ ÓÐÅÃÉÁÌØÎÏÇÏ ÉÍÅÎÉ
ÐÓÅ×ÄÏ-ËÏÌÌÅËÃÉÉ *default , ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ
ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÆÌÁÇÏ× É ÚÎÁÞÅÎÉÊ, ËÏÔÏÒÙÅ ÐÏÓÌÕÖÁÔ ÚÎÁÞÅÎÉÑÍÉ ÐÏ
ÕÍÏÌÞÁÎÉÀ ÄÌÑ ×ÓÅÈ ÐÏÓÌÅÄÕÀÝÉÈ ËÏÌÌÅËÃÉÊ supfile .
úÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ ÍÏÖÅÔ ÂÙÔØ ÐÅÒÅÚÁÐÉÓÁÎÏ ÄÌÑ ËÁÖÄÏÊ
ÏÔÄÅÌØÎÏÊ ËÏÌÌÅËÃÉÉ ÐÕÔÅÍ ÕËÁÚÁÎÉÑ ÄÒÕÇÏÇÏ ÚÎÁÞÅÎÉÑ × ÅÅ ÓÏÂÓÔ×ÅÎÎÙÈ
ÐÁÒÁÍÅÔÒÁÈ. úÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÔÁËÖÅ ÍÏÇÕÔ ÂÙÔØ ÉÚÍÅÎÅÎÙ
ÉÌÉ ÒÁÓÛÉÒÅÎÙ × ÌÀÂÏÍ ÍÅÓÔÅ supfile
ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ ÓÔÒÏËÁÍÉ *default .
ðÏÌÕÞÉ× ÜÔÕ ÉÎÆÏÒÍÁÃÉÀ, ÍÙ ÎÁÞÎÅÍ ÓÔÒÏÉÔØ
supfile ÄÌÑ ÐÏÌÕÞÅÎÉÑ É ÏÂÎÏ×ÌÅÎÉÑ ÇÌÁ×ÎÏÇÏ
ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× FreeBSD-CURRENT.
ëÁËÉÅ ÆÁÊÌÙ ×Ù ÈÏÔÉÔÅ
ÐÏÌÕÞÉÔØ?
æÁÊÌÙ, ÄÏÓÔÕÐÎÙÅ ÞÅÒÅÚ CVSup ,
ÏÒÇÁÎÉÚÏ×ÁÎÙ × ÉÍÅÎÏ×ÁÎÎÙÅ ÇÒÕÐÐÙ, ÎÁÚÙ×ÁÅÍÙÅ
ËÏÌÌÅËÃÉÑÍÉ
. äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ ÏÐÉÓÁÎÙ
× ÓÌÅÄÕÀÝÅÍ ÒÁÚÄÅÌÅ.
÷ ÜÔÏÍ ÐÒÉÍÅÒÅ ÍÙ ÐÏÌÕÞÉÍ ×ÓÅ ÄÅÒÅ×Ï ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× ÓÉÓÔÅÍÙ
FreeBSD. óÕÝÅÓÔ×ÕÅÔ ÏÄÉÎÏÞÎÁÑ ÂÏÌØÛÁÑ ËÏÌÌÅËÃÉÑ
src-all , ËÏÔÏÒÁÑ ÐÏÚ×ÏÌÉÔ ÎÁÍ ÓÄÅÌÁÔØ ÜÔÏ.
÷ ËÁÞÅÓÔ×Å ÐÅÒ×ÏÇÏ ÛÁÇÁ ÐÏ ÓÏÚÄÁÎÉÀ supfile ,
ÄÏÂÁ×ÉÍ ÓÐÉÓÏË ËÏÌÌÅËÃÉÊ, ÐÏ ÏÄÎÏÊ ÎÁ ÓÔÒÏËÕ (× ÎÁÛÅÍ ÓÌÕÞÁÅ,
ÔÏÌØËÏ ÏÄÎÕ ÓÔÒÏËÕ):
src-all
ëÁËÉÅ ÉÈ ×ÅÒÓÉÉ
×ÁÍ ÎÕÖÎÙ?
ó CVSup ×Ù × ÐÒÉÎÃÉÐÅ ÍÏÖÅÔÅ
ÐÏÌÕÞÉÔØ ÌÀÂÕÀ ×ÅÒÓÉÀ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ËÏÔÏÒÁÑ ËÏÇÄÁ-ÌÉÂÏ
ÓÕÝÅÓÔ×Ï×ÁÌÁ. üÔÏ ×ÏÚÍÏÖÎÏ, ÐÏÓËÏÌØËÕ
cvsupd ÓÅÒ×ÅÒ ÒÁÂÏÔÁÅÔ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ
Ó ÒÅÐÏÚÉÔÏÒÉÅÍ CVS, ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ×ÓÅ ×ÅÒÓÉÉ. ÷Ù ÕËÁÚÙ×ÁÅÔÅ
ÔÕ, ËÏÔÏÒÁÑ ×ÁÍ ÎÕÖÎÁ, Ó ÐÏÍÏÝØÀ ÐÏÌÅÊ tag=
É date= .
âÕÄØÔÅ ÏÞÅÎØ ÏÓÔÏÒÏÖÎÙ ÐÒÉ ÚÁÄÁÎÉÉ ÌÀÂÙÈ ÐÏÌÅÊ
tag= . îÅËÏÔÏÒÙÅ ÔÅÇÉ ÓÕÝÅÓÔ×ÕÀÔ ÔÏÌØËÏ
× ÏÐÒÅÄÅÌÅÎÎÙÈ ËÏÌÌÅËÃÉÑÈ ÆÁÊÌÏ×. åÓÌÉ ×Ù ÕËÁÖÅÔÅ
ÎÅËÏÒÒÅËÔÎÙÊ ÔÅÇ ÉÌÉ ÏÛÉÂÅÔÅÓØ × ÅÇÏ ÎÁÐÉÓÁÎÉÉ,
CVSup ÕÄÁÌÉÔ ÆÁÊÌÙ, ËÏÔÏÒÙÅ ×Ù
×ÏÚÍÏÖÎÏ ÎÅ ÈÏÔÅÌÉ ÕÄÁÌÑÔØ. ÷ ÞÁÓÔÎÏÓÔÉ, ÉÓÐÏÌØÚÕÊÔÅ
ÔÏÌØËÏ tag=.
ÄÌÑ ËÏÌÌÅËÃÉÊ ports-* .
ðÏÌÑ tag= ÏÚÎÁÞÁÀÔ ÓÉÍ×ÏÌØÎÙÅ ÉÍÅÎÁ
× ÒÅÐÏÚÉÔÏÒÉÉ. óÕÝÅÓÔ×ÕÅÔ Ä×Á ×ÉÄÁ ÔÅÇÏ×, ÔÅÇÉ ÒÅ×ÉÚÉÊ É ÔÅÇÉ
×ÅÔ×ÅÊ. ôÅÇÉ ÒÅ×ÉÚÉÊ ÏÚÎÁÞÁÀÔ ÏÐÒÅÄÅÌÅÎÎÕÀ ÒÅ×ÉÚÉÀ. ïÎÉ
ÎÅ ÍÅÎÑÀÔÓÑ ÓÏ ×ÒÅÍÅÎÅÍ. ôÅÇÉ ×ÅÔ×ÅÊ, Ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ,
ÏÚÎÁÞÁÀÔ ÐÏÓÌÅÄÎÀÀ ÒÅ×ÉÚÉÀ ÚÁÄÁÎÎÏÊ ÌÉÎÉÉ ÒÁÚÒÁÂÏÔËÉ × ÌÀÂÏÊ
ÍÏÍÅÎÔ ×ÒÅÍÅÎÉ. ðÏÓËÏÌØËÕ ÔÅÇ ×ÅÔ×É ÎÅ ÏÔÎÏÓÉÔÓÑ Ë ÏÐÒÅÄÅÌÅÎÎÏÊ
ÒÅ×ÉÚÉÉ, ÏÎ ÍÏÖÅÔ ÏÚÎÁÞÁÔØ ÚÁ×ÔÒÁ ÞÔÏ-ÔÏ ÉÎÏÅ ÞÅÍ ÓÅÇÏÄÎÑ.
ÓÏÄÅÒÖÉÔ ÔÅÇÉ ×ÅÔ×ÅÊ, ËÏÔÏÒÙÅ
ÍÏÇÕÔ ÂÙÔØ ÉÎÔÅÒÅÓÎÙ ÐÏÌØÚÏ×ÁÔÅÌÑÍ. ôÅÇ, ÕËÁÚÁÎÎÙÊ ×
ÆÁÊÌÅ ÎÁÓÔÒÏÊËÉ CVSup , ÄÏÌÖÅÎ
ÐÒÅÄ×ÁÒÑÔØÓÑ ÓÔÒÏËÏÊ tag=
(RELENG_4 ÐÒÅ×ÒÁÔÉÔÓÑ ×
tag=RELENG_4 ). ðÏÍÎÉÔÅ, ÞÔÏ ÄÌÑ ËÏÌÌÅËÃÉÉ
ÐÏÒÔÏ× ÐÏÄÈÏÄÉÔ ÔÏÌØËÏ tag=. .
âÕÄØÔÅ ÏÞÅÎØ ÏÓÔÏÒÏÖÎÙ ÐÒÉ ÎÁÂÏÒÅ ÉÍÅÎ ÔÅÇÏ×.
CVSup ÎÅ ÍÏÖÅÔ ÏÔÌÉÞÉÔØ ÐÒÁ×ÉÌØÎÙÅ
É ÎÅÐÒÁ×ÉÌØÎÙÅ ÔÅÇÉ. åÓÌÉ ×Ù ÎÅÐÒÁ×ÉÌØÎÏ ÎÁÂÅÒÅÔÅ ÔÅÇ,
CVSup ÐÏ×ÅÄÅÔ ÓÅÂÑ ÔÁË, ËÁË ÅÓÌÉ ÂÙ
×Ù ÕËÁÚÁÌÉ ÔÅÇ, ÎÅ ÓÏÄÅÒÖÁÝÉÊ ÆÁÊÌÏ×. ÷ ÜÔÏÍ ÓÌÕÞÁÅ ÏÎ ÕÄÁÌÉÔ
ÓÕÝÅÓÔ×ÕÀÝÉÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ.
ðÒÉ ÕËÁÚÁÎÉÉ ÔÅÇÁ ×ÅÔ×É ×Ù ÐÏÌÕÞÉÔÅ ÐÏÓÌÅÄÎÉÅ ×ÅÒÓÉÉ ÆÁÊÌÏ×
ÜÔÏÊ ×ÅÔ×É ÒÁÚÒÁÂÏÔËÉ. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ ËÁËÕÀ-ÔÏ ÉÚ
ÐÒÅÄÙÄÕÝÉÈ ×ÅÒÓÉÊ, ÓÄÅÌÁÊÔÅ ÜÔÏ ÕËÁÚÁ× ÄÁÔÕ × ÐÏÌÅ ÚÎÁÞÅÎÉÑ
date= . óÔÒÁÎÉÃÁ ÓÐÒÁ×ÏÞÎÉËÁ &man.cvsup.1;
ÏÐÉÓÙ×ÁÅÔ ËÁË ÓÄÅÌÁÔØ ÜÔÏ.
÷ ÎÁÛÅÍ ÐÒÉÍÅÒÅ ÍÙ ÈÏÔÉÍ ÐÏÌÕÞÉÔØ FreeBSD-CURRENT. íÙ
ÄÏÂÁ×ÉÍ ÜÔÕ ÓÔÒÏËÕ × ÎÁÞÁÌÏ
supfile :
*default tag=.
óÕÝÅÓÔ×ÕÅÔ ×ÁÖÎÙÊ ÓÐÅÃÉÁÌØÎÙÊ ÓÌÕÞÁÊ, ËÏÇÄÁ ÎÅ ÚÁÄÁÀÔÓÑ
ÎÉ ÐÏÌÅ tag= , ÎÉ ÐÏÌÅ date= .
÷ ÜÔÏÍ ÓÌÕÞÁÅ ×Ù ÐÏÌÕÞÉÔÅ ÐÏÓÌÅÄÎÉÅ ×ÅÒÓÉÉ RCS ÆÁÊÌÏ×
ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÉÚ CVS ÒÅÐÏÚÉÔÏÒÉÑ ÓÅÒ×ÅÒÁ ×ÍÅÓÔÏ ÐÏÌÕÞÅÎÉÑ
ÏÐÒÅÄÅÌÅÎÎÏÊ ×ÅÒÓÉÉ. òÁÚÒÁÂÏÔÞÉËÉ ÏÂÙÞÎÏ ÐÒÅÄÐÏÞÉÔÁÀÔ ÜÔÏÔ
ÓÐÏÓÏÂ. ðÏÄÄÅÒÖÉ×ÁÑ ËÏÐÉÀ ÒÅÐÏÚÉÔÏÒÉÑ × Ó×ÏÅÊ ÓÉÓÔÅÍÅ, ÏÎÉ
ÐÏÌÕÞÁÀÔ ×ÏÚÍÏÖÎÏÓÔØ ÐÒÏÓÍÏÔÒÁ ÉÓÔÏÒÉÉ ÒÅ×ÉÚÉÊ É ÐÒÏ×ÅÒËÉ
ÐÏÓÌÅÄÎÉÈ ×ÅÒÓÉÊ ÆÁÊÌÏ×. ïÄÎÁËÏ ÜÔÏ ÄÏÓÔÉÇÁÅÔÓÑ ÃÅÎÏÊ
ÂÏÌØÛÅÇÏ ÚÁÎÉÍÁÅÍÏÇÏ ÄÉÓËÏ×ÏÇÏ ÐÒÏÓÔÒÁÎÓÔ×Á.
ïÔËÕÄÁ ×Ù ÈÏÔÉÔÅ
ÉÈ ÐÏÌÕÞÉÔØ?
íÙ ÉÓÐÏÌØÚÕÅÍ ÐÏÌÅ host= ÄÌÑ ÓÏÏÂÝÅÎÉÑ
cvsup ÏÔËÕÄÁ ÚÁÂÉÒÁÔØ ÏÂÎÏ×ÌÅÎÉÑ. ðÏÄÏÊÄÅÔ
ÌÀÂÏÅ ÉÚ CVSup ÚÅÒËÁÌ,
ÈÏÔÑ ×Ù ÄÏÌÖÎÙ ÐÏÐÒÏÂÏ×ÁÔØ ×ÙÂÒÁÔØ ÂÌÉÖÁÊÛÅÅ Ë ×ÁÍ ÚÅÒËÁÌÏ.
÷ ÜÔÏÍ ÐÒÉÍÅÒÅ ÍÙ ÉÓÐÏÌØÚÕÅÍ ÎÅ ÓÕÝÅÓÔ×ÕÀÝÉÊ ÓÅÒ×ÅÒ,
cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
÷ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÐÏÄÓÔÁ×ÉÔØ ÁÄÒÅÓ ÏÄÎÏÇÏ ÉÚ ÓÕÝÅÓÔ×ÕÀÝÉÈ ÈÏÓÔÏ×
ÐÅÒÅÄ ÚÁÐÕÓËÏÍ CVSup . ðÒÉ ËÁÖÄÏÍ
ÚÁÐÕÓËÅ cvsup , ×Ù ÍÏÖÅÔÅ ÐÅÒÅÚÁÐÉÓÁÔØ
ÎÁÓÔÒÏÊËÕ ÈÏÓÔÁ ÉÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ, ÉÓÐÏÌØÚÕÑ ÐÁÒÁÍÅÔÒ -h
hostname .
çÄÅ ×Ù ÈÏÔÉÔÅ
ÒÁÚÍÅÓÔÉÔØ ÉÈ ÎÁ Ó×ÏÅÍ ËÏÍÐØÀÔÅÒÅ?
ðÏÌÅ prefix= ÕËÁÚÙ×ÁÅÔ
cvsup ÇÄÅ ÒÁÚÍÅÝÁÔØ ÐÏÌÕÞÁÅÍÙÅ ÆÁÊÌÙ.
÷ ÜÔÏÍ ÐÒÉÍÅÒÅ, ÍÙ ÐÏÍÅÓÔÉÍ ÆÁÊÌÙ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ × ÇÌÁ×ÎÏÅ
ÄÅÒÅ×Ï ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, /usr/src .
ëÁÔÁÌÏÇ src ÕÖÅ ÐÏÄÒÁÚÕÍÅ×ÁÅÔÓÑ ×
ËÏÌÌÅËÃÉÑÈ, ËÏÔÏÒÙÅ ÍÙ ÓÏÂÉÒÁÅÍÓÑ ÐÏÌÕÞÉÔØ, ÐÏÜÔÏÍÕ
ËÏÒÒÅËÔÎÏÅ ÕËÁÚÁÎÉÅ ÔÁËÏ×Ï:
*default prefix=/usr
çÄÅ ×Ù ÈÏÔÉÔÅ
ÒÁÚÍÅÓÔÉÔØ ÆÁÊÌÙ ÓÔÁÔÕÓÁ cvsup ?
ëÌÉÅÎÔ CVSup ÐÏÄÄÅÒÖÉ×ÁÅÔ
ÏÐÒÅÄÅÌÅÎÎÙÅ ÆÁÊÌÙ ÓÔÁÔÕÓÁ × ÔÁË ÎÁÚÙ×ÁÅÍÏÍ
base
ËÁÔÁÌÏÇÅ. üÔÉ ÆÁÊÌÙ ÐÏÍÏÇÁÀÔ
CVSup ÒÁÂÏÔÁÔØ ÂÏÌÅÅ ÜÆÆÅËÔÉ×ÎÏ
ÐÕÔÅÍ ÐÏÄÄÅÒÖËÉ ÉÓÔÏÒÉÉ ÕÖÅ ÐÏÌÕÞÅÎÎÙÈ ÏÂÎÏ×ÌÅÎÉÊ. íÙ ÂÕÄÅÍ
ÉÓÐÏÌØÚÏ×ÁÔØ ÓÔÁÎÄÁÒÔÎÙÊ ËÁÔÁÌÏÇ base,
/var/db :
*default base=/var/db
åÓÌÉ base ËÁÔÁÌÏÇ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ, ÔÅÐÅÒØ ÐÏÄÈÏÄÑÝÉÊ ÍÏÍÅÎÔ
ÄÌÑ ÅÇÏ ÓÏÚÄÁÎÉÑ. ëÌÉÅÎÔ cvsup ÎÅ
ÚÁÐÕÓÔÉÔÓÑ, ÅÓÌÉ base ËÁÔÁÌÏÇ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ.
òÁÚÌÉÞÎÙÅ ÎÁÓÔÒÏÊËÉ supfile :
óÕÝÅÓÔ×ÕÅÔ ÅÝÅ ÏÄÎÁ ÓÔÒÏËÁ, ËÏÔÏÒÁÑ ÏÂÙÞÎÏ ÄÏÌÖÎÁ
ÐÒÉÓÕÔÓÔ×Ï×ÁÔØ × supfile :
*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 ÉÌÉ ÂÙÓÔÒÅÅ, ×ÁÍ ×ÏÚÍÏÖÎÏ ÎÅ
ÐÏÔÒÅÂÕÅÔÓÑ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÓÖÁÔÉÑ. éÎÁÞÅ ÏÎÏ ÏÂÙÞÎÏ
ÐÏÍÏÇÁÅÔ.
÷ÓÅ ÜÔÏ ×ÍÅÓÔÅ:
÷ÏÔ ÐÏÌÎÙÊ supfile ÄÌÑ ÎÁÛÅÇÏ
ÐÒÉÍÅÒÁ:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
æÁÊÌ refuse
ëÁË ÕÐÏÍÑÎÕÔÏ ×ÙÛÅ, CVSup ÉÓÐÏÌØÚÕÅÔ
ÍÅÔÏÄ ÏÐÒÏÓÁ . ÷ ÏÓÎÏ×ÎÏÍ ÜÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ
×Ù ÐÏÄËÌÀÞÁÅÔÅÓØ Ë CVSup ÓÅÒ×ÅÒÕ, É ÏÎ
ÇÏ×ÏÒÉÔ ÷ÏÔ ÔÏ, ÞÔÏ ×Ù ÍÏÖÅÔÅ ÚÁÇÒÕÚÉÔØ Ó ÍÅÎÑ...
,
É ËÌÉÅÎÔ ÏÔ×ÅÞÁÅÔ OK, Ñ ×ÏÚØÍÕ ÜÔÏ, ÜÔÏ É ÜÔÏ.
ó ÎÁÓÔÒÏÊËÏÊ ÐÏ ÕÍÏÌÞÁÎÉÀ CVSup ËÌÉÅÎÔ
ÚÁÂÅÒÅÔ ËÁÖÄÙÊ ÆÁÊÌ, Ó×ÑÚÁÎÎÙÊ Ó ËÏÌÌÅËÃÉÅÊ É ÔÅÇÏÍ, ×ÙÂÒÁÎÎÙÍ
× ÆÁÊÌÅ ÎÁÓÔÒÏÊËÉ. ïÄÎÁËÏ, ÜÔÏ ÎÅ ×ÓÅÇÄÁ ÔÏ, ÞÔÏ ×ÁÍ ÎÕÖÎÏ,
ÏÓÏÂÅÎÎÏ ÅÓÌÉ ×Ù ÓÉÎÈÒÏÎÉÚÉÒÕÅÔÅ ÄÅÒÅ×ØÑ doc ,
ports , ÉÌÉ www —
ÂÏÌØÛÉÎÓÔ×Ï ÌÀÄÅÊ ÎÅ ÍÏÇÕÔ ÞÉÔÁÔØ ÎÁ ÐÑÔÉ ÉÌÉ ÞÅÔÙÒÅÈ ÑÚÙËÁÈ,
É ÓÌÅÄÏ×ÁÔÅÌØÎÏ ÉÍ ÎÅ ÔÒÅÂÕÀÔÓÑ ÌÏËÁÌÉÚÏ×ÁÎÎÙÅ ÆÁÊÌÙ. åÓÌÉ ×Ù
ÏÂÎÏ×ÌÑÅÔÅ ËÏÌÌÅËÃÉÀ ÐÏÒÔÏ×, ÜÔÏ ÍÏÖÎÏ ÏÂÏÊÔÉ ÐÕÔÅÍ ÉÎÄÉ×ÉÄÕÁÌØÎÏÇÏ
ÕËÁÚÁÎÉÑ ËÁÖÄÏÊ ËÏÌÌÅËÃÉÉ (ÎÁÐÒÉÍÅÒ,
ports-astrology ,
ports-biology É Ô.Ä. ×ÍÅÓÔÏ
ËÏÌÌÅËÃÉÉ ports-all ). ïÄÎÁËÏ, ÐÏÓËÏÌØËÕ ÄÌÑ
ÄÅÒÅרÅ× doc É www ÎÅÔ
ÓÐÅÃÉÆÉÞÎÙÈ ÄÌÑ ÑÚÙËÁ ËÏÌÌÅËÃÉÊ, ÉÓÐÏÌØÚÕÊÔÅ ÏÄÎÕ ÉÚ
ÚÁÍÅÞÁÔÅÌØÎÙÈ ×ÏÚÍÏÖÎÏÓÔÅÊ CVSup :
ÆÁÊÌ refuse .
æÁÊÌ refuse ÇÏ×ÏÒÉÔ
CVSup , ÞÔÏ ÏÎ ÎÅ ÄÏÌÖÅÎ ÚÁÂÉÒÁÔØ ËÁÖÄÙÊ
ÆÁÊÌ ÉÚ ËÏÌÌÅËÃÉÉ; ÄÒÕÇÉÍÉ ÓÌÏ×ÁÍÉ, ÏÎ ÇÏ×ÏÒÉÔ ËÌÉÅÎÔÕ
ÏÔËÁÚÁÔØÓÑ (refuse) ÏÔ ÐÏÌÕÞÅÎÉÑ Ó ÓÅÒ×ÅÒÁ
ÏÐÒÅÄÅÌÅÎÎÙÈ ÆÁÊÌÏ×. æÁÊÌ refuse ÍÏÖÎÏ ÎÁÊÔÉ
(ÉÌÉ, ÅÓÌÉ Õ ×ÁÓ ÅÇÏ ÅÝÅ ÎÅÔ, ÄÏÌÖÅÎ ÂÙÔØ ÐÏÍÅÝÅÎ) ×
base /sup/ .
base ÏÐÒÅÄÅÌÅÎ × ÆÁÊÌÅ
supfile ; ÎÁÛÅ ÓÔÁÎÄÁÒÔÎÏÅ ÒÁÓÐÏÌÏÖÅÎÉÅ
base ÜÔÏ
/var/db , ÞÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÐÏ
ÕÍÏÌÞÁÎÉÀ ÆÁÊÌ refuse ÜÔÏ
/var/db/sup/refuse .
æÏÒÍÁÔ ÆÁÊÌÁ refuse ÏÞÅÎØ ÐÒÏÓÔ; ÏÎ ÓÏÄÅÒÖÉÔ
ÉÍÅÎÁ ÆÁÊÌÏ× ÉÌÉ ËÁÔÁÌÏÇÏ×, ËÏÔÏÒÙÅ ×Ù ÎÅ ÈÏÔÉÔÅ ÚÁÇÒÕÖÁÔØ.
îÁÐÒÉÍÅÒ, ÅÓÌÉ ×Ù ÎÅ ÍÏÖÅÔÅ ÒÁÚÇÏ×ÁÒÉ×ÁÔØ ÎÉ ÎÁ ËÁËÏÍ ÑÚÙËÅ ËÒÏÍÅ
ÁÎÇÌÉÊÓËÏÇÏ É ÒÕÓÓËÏÇÏ, É ×Ù ÎÅ ÂÕÄÅÔÅ ÞÉÔÁÔØ ÄÏËÕÍÅÎÔÁÃÉÀ ÎÁ ÜÔÉÈ
ÑÚÙËÁÈ, ÐÏÍÅÓÔÉÔÅ ÓÌÅÄÕÀÝÉÅ ÓÔÒÏËÉ × ÆÁÊÌ
refuse :
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/sr_*
doc/tr_*
doc/zh_*
É ÔÁË ÄÁÌÅÅ ÄÌÑ ÄÒÕÇÉÈ ÑÚÙËÏ× (ÐÏÌÎÙÊ ÓÐÉÓÏË ÎÁÈÏÄÉÔÓÑ ÎÁ
ÓÔÒÁÎÉÃÅ FreeBSD
CVS ÒÅÐÏÚÉÔÏÒÉÑ ).
ó ÜÔÏÊ ÏÞÅÎØ ÐÏÌÅÚÎÏÊ ×ÏÚÍÏÖÎÏÓÔØÀ ÐÏÌØÚÏ×ÁÔÅÌÉ Ó
ÎÉÚËÏÓËÏÒÏÓÔÎÙÍ ÐÏÄËÌÀÞÅÎÉÅÍ ÉÌÉ Ó ÐÏÍÉÎÕÔÎÏÊ ÐÌÁÔÏÊ ÚÁ ÐÏÄËÌÀÞÅÎÉÅ
ÓÍÏÇÕÔ ÓÏÈÒÁÎÉÔØ ×ÒÅÍÑ, ÐÏÓËÏÌØËÕ ÉÍ ÂÏÌÅÅ ÎÅ ÐÏÔÒÅÂÕÅÔÓÑ ÚÁÇÒÕÖÁÔØ
ÆÁÊÌÙ, ËÏÔÏÒÙÅ ÏÎÉ ÎÉËÏÇÄÁ ÎÅ ÂÕÄÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ. úÁ ÂÏÌÅÅ
ÐÏÄÒÏÂÎÏÊ ÉÎÆÏÒÍÁÃÉÅÊ Ï ÆÁÊÌÁÈ refuse É
ÚÁÍÅÞÁÔÅÌØÎÙÈ ×ÏÚÍÏÖÎÏÓÔÑÈ CVSup ,
ÏÂÒÁÔÉÔÅÓØ Ë ÅÇÏ ÓÐÒÁ×ÏÞÎÏÊ ÓÔÒÁÎÉÃÅ.
úÁÐÕÓË CVSup
ôÅÐÅÒØ ×Ù ÇÏÔÏ×Ù Ë ÔÅÓÔÉÒÏ×ÁÎÉÀ ÏÂÎÏ×ÌÅÎÉÑ. ëÏÍÁÎÄÎÁÑ ÓÔÒÏËÁ ÄÌÑ
ÜÔÏÇÏ ÏÞÅÎØ ÐÒÏÓÔÁ:
&prompt.root; cvsup supfile
ÇÄÅ supfile
ÜÔÏ ËÏÎÅÞÎÏ ÉÍÑ supfile , ËÏÔÏÒÙÊ ÔÏÌØËÏ ÞÔÏ
ÂÙÌ ÓÏÚÄÁÎ. ðÒÉ ÚÁÐÕÓËÅ ÐÏÄ X11, cvsup
ÏÔÏÂÒÁÚÉÔ GUI ÉÎÔÅÒÆÅÊÓ Ó ÎÅÓËÏÌØËÉÍÉ ÐÏÌÅÚÎÙÍÉ ËÎÏÐËÁÍÉ. îÁÖÍÉÔÅ
ËÎÏÐËÕ go É ÓÍÏÔÒÉÔÅ ÚÁ ÅÇÏ ÒÁÂÏÔÏÊ.
ðÏÓËÏÌØËÕ × ÜÔÏÍ ÐÒÉÍÅÒÅ ÏÂÎÏ×ÌÑÅÔÓÑ ÓÕÝÅÓÔ×ÕÀÝÅÅ ÄÅÒÅ×Ï
/usr/src ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ, ÚÁÐÕÓË ÐÒÏÇÒÁÍÍÙ
ÉÚ ÐÏÄ root , ÞÔÏÂÙ Õ cvsup
ÂÙÌÉ ÐÒÁ×Á, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÏÂÎÏ×ÌÅÎÉÑ ÆÁÊÌÏ×. åÓÌÉ ÆÁÊÌ ÎÁÓÔÒÏÊËÉ
ÔÏÌØËÏ ÞÔÏ ÓÏÚÄÁÎ, É ÜÔÁ ÐÒÏÇÒÁÍÍÁ ÒÁÎØÛÅ ÎÉËÏÇÄÁ ÎÅ ÉÓÐÏÌØÚÏ×ÁÌÁÓØ,
ÜÔÏ ÍÏÖÅÔ ÄÅÊÓÔ×Ï×ÁÔØ ×ÁÍ ÎÁ ÎÅÒ×Ù. åÓÔØ ÐÒÏÓÔÏÊ ÓÐÏÓÏ ÄÌÑ
ÐÒÏÂÎÏÇÏ ÚÁÐÕÓËÁ ÂÅÚ ÚÁÔÒÁÇÉ×ÁÎÉÑ ×ÁÛÉÈ ÄÒÁÇÏÃÅÎÎÙÈ ÆÁÊÌÏ×.
ðÒÏÓÔÏ ÓÏÚÄÁÊÔÅ ÇÄÅ-ÎÉÂÕÄØ ÐÕÓÔÏÊ ËÁÔÁÌÏÇ É ÐÏÍÅÓÔÉÔÅ ÅÇÏ × ËÁÞÅÓÔ×Å
ÄÏÐÏÌÎÉÔÅÌØÎÏÇÏ ÁÒÇÕÍÅÎÔÁ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
õËÁÚÁÎÎÙÊ ËÁÔÁÌÏÇ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ × ËÁÞÅÓÔ×Å ÍÅÓÔÁ ÎÁÚÎÁÞÅÎÉÑ
×ÓÅÈ ÏÂÎÏ×ÌÅÎÉÊ. CVSup
ÂÕÄÅÔ ÒÁÂÏÔÁÔØ Ó ÆÁÊÌÁÍÉ ÉÚ /usr/src ,
ÎÏ ÎÅ ÓÔÁÎÅÔ ÉÚÍÅÎÑÔØ ÉÌÉ ÕÄÁÌÑÔØ ÉÈ. ÷ÍÅÓÔÏ ÜÔÏÇÏ ×ÓÅ ÏÂÎÏ×ÌÅÎÉÑ
ÆÁÊÌÏ× ÂÕÄÕÔ ÐÏÍÅÝÅÎÙ × /var/tmp/dest/usr/src .
ðÒÉ ÚÁÐÕÓËÅ ÔÁËÉÍ ÓÐÏÓÏÂÏÍ CVSup ÏÓÔÁ×ÉÔ
ÔÁËÖÅ ÎÅÐÒÉËÏÓÎÏ×ÅÎÎÙÍ ËÁÔÁÌÏÇ base. îÏ×ÙÅ ×ÅÒÓÉÉ ÜÔÉÈ ÆÁÊÌÏ× ÂÕÄÕÔ
ÚÁÐÉÓÁÎÙ × ÕËÁÚÁÎÎÙÊ ËÁÔÁÌÏÇ. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ÐÒÁ×Á ÎÁ ÞÔÅÎÉÅ
ËÁÔÁÌÏÇÁ /usr/src , ×ÁÍ ÄÁÖÅ ÎÅ ÐÏÔÒÅÂÕÅÔÓÑ
ÒÁÂÏÔÁÔØ ÐÏÄ root ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ ÐÒÏÂÎÏÇÏ
ÏÂÎÏ×ÌÅÎÉÑ.
åÓÌÉ ×Ù ÎÅ ÒÁÂÏÔÁÅÔÅ Ó X11 ÉÌÉ ÐÒÏÓÔÏ ÎÅ ÌÀÂÉÔÅ GUI, ÄÏÂÁרÔÅ
ÎÁÂÏÒ ÐÁÒÁÍÅÔÒÏ× ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ ÐÒÉ ÚÁÐÕÓËÅ
cvsup :
&prompt.root; cvsup -g -L 2 supfile
ðÁÒÁÍÅÔÒ -g ÕËÁÚÙ×ÁÅÔ
CVSup ÎÅ ÉÓÐÏÌØÚÏ×ÁÔØ GUI. ïÎ ÄÅÊÓÔ×ÕÅÔ
Á×ÔÏÍÁÔÉÞÅÓËÉ, ÅÓÌÉ ×Ù ÎÅ ÒÁÂÏÔÁÅÔÅ ÐÏÄ X11, ÎÏ ÉÎÁÞÅ ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ
ÅÇÏ ÕËÁÚÁÔØ.
ðÁÒÁÍÅÔÒ -L 2 ÕËÁÚÙ×ÁÅÔ
CVSup ×Ù×ÏÄÉÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ËÁÖÄÏÍ
ÐÒÏÉÚ×ÏÄÉÍÏÍ ÏÂÎÏ×ÌÅÎÉÉ. åÓÔØ ÔÒÉ ÕÒÏ×ÎÑ ÐÒÏÔÏËÏÌÉÒÏ×ÁÎÉÑ,
ÏÔ -L 0 ÄÏ -L 2 . õÒÏ×ÅÎØ
ÐÏ ÕÍÏÌÞÁÎÉÀ 0, ÞÔÏ ÏÚÎÁÞÁÅÔ ÐÏÌÎÏÅ ÏÔÓÕÔÓÔ×ÉÅ ÓÏÏÂÝÅÎÉÊ,
ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÓÏÏÂÝÅÎÉÊ ÏÂ ÏÛÉÂËÁÈ.
äÏÓÔÕÐÎÏ ÍÎÏÖÅÓÔ×Ï ÄÒÕÇÉÈ ÐÁÒÁÍÅÔÒÏ×. äÌÑ ÐÏÌÕÞÅÎÉÑ ÉÈ ËÒÁÔËÏÇÏ
ÓÐÉÓËÁ, ÎÁÂÅÒÉÔÅ cvsup -H . úÁ ÂÏÌÅÅ ÐÏÄÒÏÂÎÙÍ
ÏÐÉÓÁÎÉÅÍ ÏÂÒÁÔÉÔÅÓØ Ë ÓÔÒÁÎÉÃÅ ÓÐÒÁ×ÏÞÎÉËÁ.
ðÏÓÌÅ ÐÒÏ×ÅÒËÉ ÒÁÂÏÔÏÓÐÏÓÏÂÎÏÓÔÉ ÏÂÎÏ×ÌÅÎÉÊ ×Ù ÍÏÖÅÔÅ ÏÒÇÁÎÉÚÏ×ÁÔØ
ÒÅÇÕÌÑÒÎÙÅ ÚÁÐÕÓËÉ CVSup Ó ÐÏÍÏÝØÀ
&man.cron.8;. ïÞÅ×ÉÄÎÏ, ×Ù ÎÅ ÄÏÌÖÎÙ ÐÏÚ×ÏÌÑÔØ
CVSup ÉÓÐÏÌØÚÏ×ÁÔØ GUI ÐÒÉ ÚÁÐÕÓËÅ ÉÚ
&man.cron.8;.
ëÏÌÌÅËÃÉÉ ÆÁÊÌÏ× CVSup
ëÏÌÌÅËÃÉÉ ÆÁÊÌÏ×, ÄÏÓÔÕÐÎÙÅ ÞÅÒÅÚ
CVSup , ÏÒÇÁÎÉÚÏ×ÁÎÙ ÉÅÒÁÒÈÉÞÅÓËÉ.
óÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ ÂÏÌØÛÉÈ ËÏÌÌÅËÃÉÊ, É ÏÎÉ ÒÁÚÄÅÌÅÎÙ ÎÁ ÎÅÓËÏÌØËÏ
ÍÅÎØÛÉÈ ÐÏÄ-ËÏÌÌÅËÃÉÊ. ðÏÌÕÞÅÎÉÅ ÂÏÌØÛÏÊ ËÏÌÌÅËÃÉÉ ÜË×É×ÁÌÅÎÔÎÏ
ÐÏÌÕÞÅÎÉÀ ËÁÖÄÏÊ ÉÚ ÅÅ ÐÏÄËÏÌÌÅËÃÉÉ. éÅÒÁÒÈÉÞÅÓËÉÅ ÏÔÎÏÛÅÎÉÑ
ÍÅÖÄÕ ËÏÌÌÅËÃÉÑÍÉ ÏÔÒÁÖÁÀÔÓÑ ÐÕÔÅÍ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÏÔÓÔÕÐÏ× × ÓÐÉÓËÅ
ÎÉÖÅ.
îÁÉÂÏÌÅÅ ÉÓÐÏÌØÚÕÅÍÙÅ ËÏÌÌÅËÃÉÉ ÜÔÏ
src-all , É
ports-all . äÒÕÇÉÅ ËÏÌÌÅËÃÉÉ ÉÓÐÏÌØÚÕÀÔÓÑ
ÎÅÂÏÌØÛÉÍÉ ÇÒÕÐÐÁÍÉ ÌÀÄÅÊ ÄÌÑ ÓÐÅÃÉÁÌØÎÙÈ ÃÅÌÅÊ É
ÎÅËÏÔÏÒÙÅ ÓÁÊÔÙ ÚÅÒËÁÌ ÍÏÇÕÔ ÎÅ ÓÏÄÅÒÖÁÔØ ÉÈ ×ÓÅ.
cvs-all release=cvs
çÌÁ×ÎÙÊ FreeBSD CVS ÒÅÐÏÚÉÔÏÒÉÊ, ×ËÌÀÞÁÀÝÉÊ
ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÊ ËÏÄ.
distrib release=cvs
æÁÊÌÙ, ÏÔÎÏÓÑÝÉÅÓÑ Ë ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÀ É ÚÅÒËÁÌÉÒÏ×ÁÎÉÀ
FreeBSD.
doc-all release=cvs
éÓÈÏÄÎÙÅ ÔÅËÓÔÙ òÕËÏ×ÏÄÓÔ×Á FreeBSD É ÄÒÕÇÏÊ
ÄÏËÕÍÅÎÔÁÃÉÉ. ïÎÉ ÎÅ ×ËÌÀÞÁÀÔ ÆÁÊÌÙ ×ÅÂ-ÓÁÊÔÁ
FreeBSD.
ports-all release=cvs
ëÏÌÌÅËÃÉÑ ÐÏÒÔÏ× FreeBSD.
åÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÏÂÎÏ×ÌÑÔØ ×ÓÀ ËÏÌÌÅËÃÉÀ
ports-all (×ÓÅ ÄÅÒÅ×Ï ÐÏÒÔÏ×),
Á ÔÏÌØËÏ ÏÄÎÕ ÉÚ ÐÏÄËÏÌÌÅËÃÉÊ, ÐÅÒÅÞÉÓÌÅÎÎÙÈ ÎÉÖÅ,
ÕÂÅÄÉÔÅÓØ, ÞÔÏ ×Ù ËÁÖÄÙÊ ÒÁÚ
ÏÂÎÏ×ÌÑÅÔÅ ÐÏÄËÏÌÌÅËÃÉÀ ports-base !
ðÒÉ ÌÀÂÙÈ ÉÚÍÅÎÅÎÉÑÈ × ÉÎÆÒÁÓÔÒÕËÔÕÒÅ ÓÂÏÒËÉ ÐÏÒÔÏ×
ÐÏÄËÏÌÌÅËÃÉÉ ports-base , ÏÎÉ ÍÏÇÕÔ
ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ ÎÁÓÔÏÑÝÉÍÉ
ÐÏÒÔÁÍÉ
ÄÏ×ÏÌØÎÏ ÓËÏÒÏ. ôÁËÉÍ ÏÂÒÁÚÏÍ, ÅÓÌÉ ×Ù ÏÂÎÏ×ÌÑÅÔÅ
ÔÏÌØËÏ ÎÁÓÔÏÑÝÉÅ
ÐÏÒÔÙ É ÏÎÉ ÉÓÐÏÌØÚÕÀÔ
ÎÅËÏÔÏÒÙÅ ÎÏ×ÙÅ ×ÏÚÍÏÖÎÏÓÔÉ, ÅÓÔØ ÂÏÌØÛÏÊ ÛÁÎÓ ÔÏÇÏ,
ÞÔÏ ÉÈ ÓÂÏÒËÁ ÐÒÅÒ×ÅÔÓÑ Ó ÎÅÐÏÎÑÔÎÙÍ ÓÏÏÂÝÅÎÉÅÍ ÏÂ
ÏÛÉÂËÅ. óÁÍÏÅ ÐÅÒ×ÏÅ , ÞÔÏ ×Ù
ÄÏÌÖÎÙ ÓÄÅÌÁÔØ, ÜÔÏ ÕÂÅÄÉÔØÓÑ, ÞÔÏ ÐÏÄËÏÌÌÅËÃÉÑ
ports-base ÏÂÎÏ×ÌÅÎÁ.
åÓÌÉ ×Ù ÎÁÍÅÒÅÎÙ ÐÏÓÔÒÏÉÔØ ÓÏÂÓÔ×ÅÎÎÙÊ ×ÁÒÉÁÎÔ
ÆÁÊÌÁ ports/INDEX , ×Ù
ÄÏÌÖÎÙ ÏÂÎÏ×ÉÔØ ËÏÌÌÅËÃÉÀ
ports-all (ÐÏÌÎÏÅ ÄÅÒÅ×Ï ÐÏÒÔÏ×).
ðÏÓÔÒÏÅÎÉÅ ÆÁÊÌÁ ports/INDEX Ó
ÞÁÓÔØÀ ÄÅÒÅ×Á ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ, ÈÏÔÑ É ×ÏÚÍÏÖÎÏ.
óÍ. ÔÁËÖÅ
FAQ .
ports-accessibility
release=cvs
ðï ÄÌÑ ÐÏÄÄÅÒÖËÉ ÐÏÌØÚÏ×ÁÔÅÌÅÊ Ó ÎÁÒÕÛÅÎÉÑÍÉ
ÚÒÅÎÉÑ, ÓÌÕÈÁ É Ô.Ð.
ports-arabic
release=cvs
ðÏÄÄÅÒÖËÁ ÁÒÁÂÓËÏÇÏ ÑÚÙËÁ.
ports-archivers
release=cvs
áÒÈÉ×ÁÔÏÒÙ.
ports-astro
release=cvs
ðÏÒÔÙ ÄÌÑ ÁÓÔÒÏÎÏÍÉÉ.
ports-audio
release=cvs
ðÏÄÄÅÒÖËÁ Ú×ÕËÁ.
ports-base
release=cvs
éÎÆÒÁÓÔÒÕËÔÕÒÁ ÓÂÏÒËÉ ÐÏÒÔÏ× -
ÒÁÚÌÉÞÎÙÅ ÆÁÊÌÙ, ÒÁÓÐÏÌÏÖÅÎÎÙÅ × ÐÏÄËÁÔÁÌÏÇÁÈ
Mk/ É
Tools/ ËÁÔÁÌÏÇÁ
/usr/ports .
ðÏÖÁÌÕÊÓÔÁ, ÐÒÏÞÔÉÔÅ ×ÁÖÎÏÅ
ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ ×ÙÛÅ: ×Ù ÄÏÌÖÎÙ
×ÓÅÇÄÁ ÏÂÎÏ×ÌÑÔØ ÜÔÕ
ÐÏÄËÏÌÌÅËÃÉÀ, ÐÒÉ ËÁÖÄÏÍ ÏÂÎÏ×ÌÅÎÉÉ ÌÀÂÏÊ
ÞÁÓÔÉ ËÏÌÌÅËÃÉÉ ÐÏÒÔÏ× FreeBSD!
ports-benchmarks
release=cvs
éÚÍÅÒÅÎÉÅ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ.
ports-biology
release=cvs
ðÒÏÇÒÁÍÍÙ ÄÌÑ ÂÉÏÌÏÇÉÉ.
ports-cad
release=cvs
éÎÓÔÒÕÍÅÎÔÙ óáðò.
ports-chinese
release=cvs
ðÏÄÄÅÒÖËÁ ËÉÔÁÊÓËÏÇÏ ÑÚÙËÁ.
ports-comms
release=cvs
ëÏÍÍÕÎÉËÁÃÉÏÎÎÙÅ ÐÒÏÇÒÁÍÍÙ.
ports-converters
release=cvs
ðÒÅÏÂÒÁÚÏ×ÁÎÉÅ ËÏÄÉÒÏ×ÏË.
ports-databases
release=cvs
âÁÚÙ ÄÁÎÎÙÈ.
ports-deskutils
release=cvs
÷ÅÝÉ, ÉÓÐÏÌØÚÏ×Á×ÛÉÅÓÑ ÎÁ ÒÁÂÏÞÅÍ ÓÔÏÌÅ
ÄÏ ÉÚÏÂÒÅÔÅÎÉÑ ËÏÍÐØÀÔÅÒÏ×.
ports-devel
release=cvs
õÔÉÌÉÔÙ ÒÁÚÒÁÂÏÔËÉ.
ports-dns
release=cvs
ðÒÏÇÒÁÍÍÙ, ÉÍÅÀÝÉÅ ÏÔÎÏÛÅÎÉÅ Ë DNS.
ports-editors
release=cvs
òÅÄÁËÔÏÒÙ.
ports-emulators
release=cvs
üÍÕÌÑÔÏÒÙ ÄÒÕÇÉÈ ÏÐÅÒÁÃÉÏÎÎÙÈ ÓÉÓÔÅÍ.
ports-finance
release=cvs
æÉÎÁÎÓÏ×ÙÅ, ÒÁÓÞÅÔÎÙÅ É Ó×ÑÚÁÎÎÙÅ Ó ÎÉÍÉ
ÐÒÉÌÏÖÅÎÉÑ.
ports-ftp
release=cvs
ëÌÉÅÎÔÓËÉÅ É ÓÅÒ×ÅÒÎÙÅ ÕÔÉÌÉÔÙ FTP.
ports-games
release=cvs
éÇÒÙ.
ports-german
release=cvs
ðÏÄÄÅÒÖËÁ ÎÅÍÅÃËÏÇÏ ÑÚÙËÁ.
ports-graphics
release=cvs
çÒÁÆÉÞÅÓËÉÅ ÕÔÉÌÉÔÙ.
ports-hebrew
release=cvs
ðÏÄÄÅÒÖËÁ É×ÒÉÔÁ.
ports-hungarian
release=cvs
ðÏÄÄÅÒÖËÁ ×ÅÎÇÅÒÓËÏÇÏ ÑÚÙËÁ.
ports-irc
release=cvs
IRC ÕÔÉÌÉÔÙ.
ports-japanese
release=cvs
ðÏÄÄÅÒÖËÁ ÑÐÏÎÓËÏÇÏ ÑÚÙËÁ.
ports-java
release=cvs
&java; ÕÔÉÌÉÔÙ.
ports-korean
release=cvs
ðÏÄÄÅÒÖËÁ ËÏÒÅÊÓËÏÇÏ ÑÚÙËÁ.
ports-lang
release=cvs
ñÚÙËÉ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ.
ports-mail
release=cvs
ðÏÞÔÏ×ÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ.
ports-math
release=cvs
íÁÔÅÍÁÔÉÞÅÓËÉÅ ÐÒÏÇÒÁÍÍÙ.
ports-mbone
release=cvs
ðÒÉÌÏÖÅÎÉÑ MBone.
ports-misc
release=cvs
òÁÚÌÉÞÎÙÅ ÕÔÉÌÉÔÙ.
ports-multimedia
release=cvs
íÕÌØÔÉÍÅÄÉÊÎÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ.
ports-net
release=cvs
óÅÔÅ×ÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ.
ports-net-im
release=cvs
ðÒÏÇÒÁÍÍÙ ÏÂÍÅÎÁ ÂÙÓÔÒÙÍÉ ÓÏÏÂÝÅÎÉÑÍÉ.
ports-net-mgmt
release=cvs
ðï ÄÌÑ ÓÅÔÅ×ÏÇÏ ÕÐÒÁ×ÌÅÎÉÑ.
ports-net-p2p
release=cvs
óÅÔÉ ËÌÉÅÎÔÓËÏÇÏ ÏÂÍÅÎÁ (peer-to-peer).
ports-news
release=cvs
ðÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ ÎÏ×ÏÓÔÅÊ USENET.
ports-palm
release=cvs
ðÒÏÇÒÁÍÍÎÁÑ ÐÏÄÄÅÒÖËÁ ÄÌÑ
Palm .
ports-polish
release=cvs
ðÏÄÄÅÒÖËÁ ÐÏÌØÓËÏÇÏ ÑÚÙËÁ.
ports-portuguese
release=cvs
ðÏÄÄÅÒÖËÁ ÐÏÒÔÕÇÁÌØÓËÏÇÏ ÑÚÙËÁ.
ports-print
release=cvs
ðÒÏÇÒÁÍÍÙ ÐÅÞÁÔÉ.
ports-russian
release=cvs
ðÏÄÄÅÒÖËÁ ÒÕÓÓËÏÇÏ ÑÚÙËÁ.
ports-science
release=cvs
îÁÕÞÎÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ.
ports-security
release=cvs
õÔÉÌÉÔÙ ÂÅÚÏÐÁÓÎÏÓÔÉ.
ports-shells
release=cvs
ïÂÏÌÏÞËÉ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ.
ports-sysutils
release=cvs
óÉÓÔÅÍÎÙÅ ÕÔÉÌÉÔÙ.
ports-textproc
release=cvs
õÔÉÌÉÔÙ ÏÂÒÁÂÏÔËÉ ÔÅËÓÔÁ (ÎÅ ×ËÌÀÞÁÀÔ
ÎÁÓÔÏÌØÎÙÅ ÕÔÉÌÉÔÙ ÐÕÂÌÉËÁÃÉÉ).
ports-ukrainian
release=cvs
ðÏÄÄÅÒÖËÁ ÕËÒÁÉÎÓËÏÇÏ ÑÚÙËÁ.
ports-vietnamese
release=cvs
ðÏÄÄÅÒÖËÁ רÅÔÎÁÍÓËÏÇÏ ÑÚÙËÁ.
ports-www
release=cvs
ðÒÏÇÒÁÍÍÙ, ÏÔÎÏÓÑÝÉÅÓÑ Ë World Wide
Web.
ports-x11
release=cvs
ðÏÒÔÙ Ó ÐÏÄÄÅÒÖËÏÊ X window
system.
ports-x11-clocks
release=cvs
þÁÓÙ X11.
ports-x11-fm
release=cvs
æÁÊÌÏ×ÙÅ ÍÅÎÅÄÖÅÒÙ X11.
ports-x11-fonts
release=cvs
ûÒÉÆÔÙ É ÛÒÉÆÔÏ×ÙÅ ÕÔÉÌÉÔÙ X11.
ports-x11-toolkits
release=cvs
ðÁËÅÔÙ ÒÁÚÒÁÂÏÔËÉ ÐÒÉÌÏÖÅÎÉÊ ÄÌÑ X11.
ports-x11-servers
release=cvs
óÅÒ×ÅÒÙ X11.
ports-x11-themes
release=cvs
ôÅÍÙ X11.
ports-x11-wm
release=cvs
ïËÏÎÎÙÅ ÍÅÎÅÄÖÅÒÙ X11.
projects-all release=cvs
éÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÐÒÏÅËÔÏ× FreeBSD.
src-all release=cvs
ïÓÎÏ×ÎÙÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ FreeBSD, ×ËÌÀÞÁÑ
ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÊ ËÏÄ.
src-base
release=cvs
òÁÚÌÉÞÎÙÅ ÆÁÊÌÙ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÉÚ
/usr/src .
src-bin
release=cvs
õÔÉÌÉÔÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ
ÐÏÔÒÅÂÏ×ÁÔØÓÑ × ÏÄÎÏÐÏÌØÚÏ×ÁÔÅÌØÓËÏÍ ÒÅÖÉÍÅ
(/usr/src/bin ).
src-contrib
release=cvs
õÔÉÌÉÔÙ É ÂÉÂÌÉÏÔÅËÉ, ÚÁÉÍÓÔ×Ï×ÁÎÎÙÅ ÐÒÏÅËÔÏÍ
FreeBSD, ÉÓÐÏÌØÚÕÀÔÓÑ ÐÏÞÔÉ ÂÅÚ ÍÏÄÉÆÉËÁÃÉÊ
(/usr/src/contrib ).
src-crypto release=cvs
ëÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÅ ÕÔÉÌÉÔÙ É ÂÉÂÌÉÏÔÅËÉ,
ÚÁÉÍÓÔ×Ï×ÁÎÎÙÅ ÐÒÏÅËÔÏÍ FreeBSD, ÉÓÐÏÌØÚÕÀÔÓÑ
ÐÏÞÔÉ ÂÅÚ ÍÏÄÉÆÉËÁÃÉÊ
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos É DES
(/usr/src/eBones ). îÅ
ÉÓÐÏÌØÚÕÀÔÓÑ × ÔÅËÕÝÉÈ ÒÅÌÉÚÁÈ FreeBSD.
src-etc
release=cvs
æÁÊÌÙ ÎÁÓÔÒÏÊËÉ ÓÉÓÔÅÍÙ
(/usr/src/etc ).
src-games
release=cvs
éÇÒÙ
(/usr/src/games ).
src-gnu
release=cvs
õÔÉÌÉÔÙ, ÐÏÐÁÄÁÀÝÉÅ ÐÏÄ GNU Public
License (/usr/src/gnu ).
src-include
release=cvs
æÁÊÌÙ ÚÁÇÏÌÏ×ËÏ×
(/usr/src/include ).
src-kerberos5
release=cvs
ðÁËÅÔ ÂÅÚÏÐÁÓÎÏÓÔÉ Kerberos5
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
ðÁËÅÔ ÂÅÚÏÐÁÓÎÏÓÔÉ KerberosIV
(/usr/src/kerberosIV ).
src-lib
release=cvs
âÉÂÌÉÏÔÅËÉ
(/usr/src/lib ).
src-libexec
release=cvs
óÉÓÔÅÍÎÙÅ ÐÒÏÇÒÁÍÍÙ, ÏÂÙÞÎÏ ×ÙÐÏÌÎÑÅÍÙÅ
ÄÒÕÇÉÍÉ ÐÒÏÇÒÁÍÍÁÍÉ
(/usr/src/libexec ).
src-release
release=cvs
æÁÊÌÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÐÒÏÉÚ×ÏÄÓÔ×Á ÒÅÌÉÚÏ×
FreeBSD
(/usr/src/release ).
src-sbin release=cvs
óÉÓÔÅÍÎÙÅ ÕÔÉÌÉÔÙ ÄÌÑ ÏÄÎÏÐÏÌØÚÏ×ÁÔÅÌØÓËÏÇÏ
ÒÅÖÉÍÁ
(/usr/src/sbin ).
src-secure
release=cvs
ëÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ É ËÏÍÁÎÄÙ
(/usr/src/secure ).
src-share
release=cvs
æÁÊÌÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ
ÎÅÓËÏÌØËÉÍÉ ÓÉÓÔÅÍÁÍÉ
(/usr/src/share ).
src-sys
release=cvs
ñÄÒÏ
(/usr/src/sys ).
src-sys-crypto
release=cvs
ëÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÊ ËÏÄ ÑÄÒÁ
(/usr/src/sys/crypto ).
src-tools
release=cvs
òÁÚÌÉÞÎÙÅ ÉÎÓÔÒÕÍÅÎÔÙ ÄÌÑ ÐÏÄÄÅÒÖËÉ FreeBSD
(/usr/src/tools ).
src-usrbin
release=cvs
ðÏÌØÚÏ×ÁÔÅÌØÓËÉÅ ÕÔÉÌÉÔÙ
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
óÉÓÔÅÍÎÙÅ ÕÔÉÌÉÔÙ
(/usr/src/usr.sbin ).
www release=cvs
éÓÈÏÄÎÙÅ ÔÅËÓÔÙ www ÓÁÊÔÁ FreeBSD.
distrib release=self
óÏÂÓÔ×ÅÎÎÙÅ ÆÁÊÌÙ ÎÁÓÔÒÏÊËÉ ÓÅÒ×ÅÒÁ
CVSup . éÓÐÏÌØÚÕÀÔÓÑ ÚÅÒËÁÌÁÍÉ
CVSup .
gnats release=current
âÁÚÁ ÄÁÎÎÙÈ ÏÔÓÌÅÖÉ×ÁÎÉÑ ÏÛÉÂÏË GNATS.
mail-archive release=current
áÒÈÉ× ÓÐÉÓËÏ× ÒÁÓÓÙÌËÉ FreeBSD.
www release=current
æÁÊÌÙ ÐÒÅÄÏÂÒÁÂÏÔËÉ WWW ÓÁÊÔÁ FreeBSD (ÎÅ ÉÓÈÏÄÎÙÅ
ÆÁÊÌÙ). éÓÐÏÌØÚÕÀÔÓÑ ÚÅÒËÁÌÁÍÉ WWW.
äÁÌØÎÅÊÛÁÑ ÉÎÆÏÒÍÁÃÉÑ
CVSup FAQ É ÄÒÕÇÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï
CVSup ÎÁÈÏÄÉÔÓÑ ÎÁ
äÏÍÁÛÎÅÊ
ÓÔÒÁÎÉÃÅ CVSup .
âÏÌØÛÁÑ ÞÁÓÔØ Ó×ÑÚÁÎÎÙÈ Ó FreeBSD ÏÂÓÕÖÄÅÎÉÊ
CVSup ÐÒÏ×ÏÄÉÌÁÓØ × ÓÐÉÓËÅ ÒÁÓÓÙÌËÉ
&a.hackers.name;. îÏ×ÙÅ
×ÅÒÓÉÉ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ ÁÎÏÎÓÉÒÕÀÔÓÑ ÚÄÅÓØ É ×
ÓÐÉÓËÅ ÒÁÓÓÙÌËÉ &a.announce.name;.
÷ÏÐÒÏÓÙ É ÓÏÏÂÝÅÎÉÑ Ï ÏÛÉÂËÁÈ ÁÄÒÅÓÕÊÔÅ Á×ÔÏÒÕ ÐÒÏÇÒÁÍÍÙ
cvsup-bugs@polstra.com .
úÅÒËÁÌÁ CVSup
CVSup ÓÅÒ×ÅÒÙ ÄÌÑ FreeBSD ÒÁÂÏÔÁÀÔ ÎÁ
ÓÌÅÄÕÀÝÉÈ ÓÁÊÔÁÈ:
&chap.mirrors.cvsup.inc;
éÓÐÏÌØÚÏ×ÁÎÉÅ Portsnap
÷×ÅÄÅÎÉÅ
Portsnap — ÓÉÓÔÅÍÁ ÄÌÑ
ÚÁÝÉÝÅÎÎÏÇÏ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ÄÅÒÅ×Á ÐÏÒÔÏ× &os;. ðÒÉÍÅÒÎÏ ÒÁÚ
× ÞÁÓ ÇÅÎÅÒÉÒÕÅÔÓÑ ÓÎÜÐÛÏÔ
ÄÅÒÅ×Á ÐÏÒÔÏ×,
ËÏÔÏÒÙÊ ÚÁÔÅÍ ÁÒÈÉ×ÉÒÕÅÔÓÑ É ÐÏÄÐÉÓÙ×ÁÅÔÓÑ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÄÐÉÓØÀ.
ðÏÌÕÞÅÎÎÙÅ ÆÁÊÌÙ ÚÁÔÅÍ ÒÁÓÐÒÏÓÔÒÁÎÑÀÔÓÑ ÐÒÉ ÐÏÍÏÝÉ HTTP.
ðÏÄÏÂÎÏ CVSup ,
portsnap ÉÓÐÏÌØÚÕÅÔ
ÁËÔÉ×ÎÕÀ (pull) ÍÏÄÅÌØ ÏÂÎÏ×ÌÅÎÉÊ:
ÕÐÁËÏ×ÁÎÎÏÅ É ÐÏÄÐÉÓÁÎÎÏÅ ÄÅÒÅ×Ï ÐÏÍÅÝÁÅÔÓÑ ÎÁ ×ÅÂ-ÓÅÒ×ÅÒ, ÏÔËÕÄÁ
ÅÇÏ ÄÏÌÖÎÙ ÚÁÂÉÒÁÔØ ËÌÉÅÎÔÙ. ðÏÌØÚÏ×ÁÔÅÌØ ÄÏÌÖÅÎ ÌÉÂÏ ÚÁÐÕÓÔÉÔØ
&man.portsnap.8; ×ÒÕÞÎÕÀ, ÞÔÏÂÙ ÐÏÌÕÞÉÔØ
ÏÂÎÏ×ÌÅÎÉÑ, ÌÉÂÏ ÎÁÓÔÒÏÉÔØ ÐÅÒÉÏÄÉÞÅÓËÏÅ ÚÁÄÁÎÉÅ ÐÒÉ ÐÏÍÏÝÉ
&man.cron.8;.
ðÏ ÔÅÈÎÉÞÅÓËÉÍ ÐÒÉÞÉÎÁÍ Portsnap
ÎÅ ÏÂÎÏ×ÌÑÅÔ ÏÓÎÏ×ÎÏÅ (ÖÉ×ÏÅ
) ÄÅÒÅ×Ï ÐÏÒÔÏ× ×
ËÁÔÁÌÏÇÅ /usr/ports/ , Á ÒÁÂÏÔÁÅÔ ÓÏ ÓÖÁÔÏÊ
ËÏÐÉÅÊ ÄÅÒÅ×Á × ËÁÔÁÌÏÇÅ /var/db/portsnap/ .
÷ÐÏÓÌÅÄÓÔ×ÉÉ ÜÔÁ ËÏÐÉÑ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÏÂÎÏ×ÌÅÎÉÑ ÏÓÎÏ×ÎÏÇÏ
ÄÅÒÅ×Á.
åÓÌÉ Portsnap ÂÙÌ ÕÓÔÁÎÏ×ÌÅÎ ÉÚ
ëÏÌÌÅËÃÉÉ ÐÏÒÔÏ× &os;, ËÁÔÁÌÏÇÏÍ ÄÌÑ ÓÎÜÐÛÏÔÏ× ÂÕÄÅÔ
/usr/local/portsnap/ , Á ÎÅ
/var/db/portsnap/ .
õÓÔÁÎÏ×ËÁ
&os; ÎÁÞÉÎÁÑ Ó ×ÅÒÓÉÉ 6.0 ÓÏÄÅÒÖÉÔ
Portsnap × ÂÁÚÏ×ÏÊ ÐÏÓÔÁ×ËÅ ÓÉÓÔÅÍÙ.
äÌÑ ÂÏÌÅÅ ÒÁÎÎÉÈ ÒÅÌÉÚÏ× &os; ÜÔÁ ÕÔÉÌÉÔÁ ÍÏÖÅÔ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎÁ
ÉÚ ÐÏÒÔÁ sysutils/portsnap .
ëÏÎÆÉÇÕÒÁÃÉÑ Portsnap
ëÏÎÆÉÇÕÒÁÃÉÑ Portsnap ÏÐÉÓÙ×ÁÅÔÓÑ
ÆÁÊÌÏÍ /etc/portsnap.conf . äÌÑ ÂÏÌØÛÉÎÓÔ×Á
ÐÏÌØÚÏ×ÁÔÅÌÅÊ ×ÐÏÌÎÅ ÐÏÄÏÊÄÅÔ ËÏÎÆÉÇÕÒÁÃÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ;
ÚÁ ÐÏÄÒÏÂÎÏÓÔÑÍÉ ÏÂÒÁÝÁÊÔÅÓØ Ë ÓÔÒÁÎÉÃÅ ÓÐÒÁ×ÏÞÎÉËÁ
&man.portsnap.conf.5;.
ðÒÉ ÕÓÔÁÎÏ×ËÅ Portsnap ÉÚ
ëÏÌÌÅËÃÉÉ ÐÏÒÔÏ× ÉÓÐÏÌØÚÕÅÔÓÑ ÆÁÊÌ ËÏÎÆÉÇÕÒÁÃÉÉ
/usr/local/etc/portsnap.conf .
ðÒÉ ÕÓÔÁÎÏ×ËÅ ÐÏÒÔÁ ÜÔÏÔ ÆÁÊÌ ÎÅ ÓÏÚÄÁÅÔÓÑ; ×ÁÍ ÎÕÖÎÏ ÓÏÚÄÁÔØ
ÅÇÏ ÓÁÍÏÓÔÏÑÔÅÌØÎÏ ËÏÍÁÎÄÏÊ
&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf
ðÅÒ×ÙÊ ÚÁÐÕÓË Portsnap
ðÒÉ ÐÅÒ×ÏÍ ÚÁÐÕÓËÅ ÕÔÉÌÉÔÅ &man.portsnap.8;
ÐÏÔÒÅÂÕÅÔÓÑ ÚÁÇÒÕÚÉÔØ ÕÐÁËÏ×ÁÎÎÙÊ ÓÎÜÐÛÏÔ ÐÏÌÎÏÇÏ ÄÅÒÅ×Á ÐÏÒÔÏ×
× ËÁÔÁÌÏÇ /var/db/portsnap/
(/usr/local/portsnap/ , ÅÓÌÉ
Portsnap ÂÙÌ ÕÓÔÁÎÏ×ÌÅÎ ÉÚ ëÏÌÌÅËÃÉÉ
ÐÏÒÔÏ×). îÁ ÎÁÞÁÌÏ 2006 ÇÏÄÁ ÒÁÚÍÅÒ ÓÎÜÐÛÏÔÁ ÓÏÓÔÁ×ÌÑÅÔ ÏËÏÌÏ
41 íâ.
&prompt.root; portsnap fetch
ðÏÓÌÅ ÚÁÇÒÕÚËÉ ÓÎÜÐÛÏÔÁ ÉÚ ÎÅÇÏ ÍÏÖÅÔ ÂÙÔØ ÒÁÚ×ÅÒÎÕÔÏ ÏÓÎÏ×ÎÏÅ
ÄÅÒÅ×Ï ÐÏÒÔÏ×. üÔÏ ÎÅÏÂÈÏÄÉÍÏ, ÄÁÖÅ ÅÓÔØ ËÁÔÁÌÏÇ
/usr/ports/ ÚÁÐÏÌÎÅÎ ËÁËÉÍ-ÌÉÂÏ ÄÒÕÇÉÍ
ÓÐÏÓÏÂÏÍ, ÎÁÐÒÉÍÅÒ ÐÒÉ ÐÏÍÏÝÉ CVSup ,
ÐÏÓËÏÌØËÕ ÐÏÚ×ÏÌÑÅÔ ÕÓÔÁÎÏ×ÉÔØ ÔÏÞËÕ ÏÔÓÞÅÔÁ, ÏÔ ËÏÔÏÒÏÊ
portsnap ÂÕÄÅÔ ÏÐÒÅÄÅÌÑÔØ ÎÅÏÂÈÏÄÉÍÙÊ
ÏÂßÅÍ ÉÚÍÅÎÅÎÉÊ.
&prompt.root; portsnap extract
÷ ËÏÎÆÉÇÕÒÁÃÉÉ ÕÓÔÁÎÏ×ËÉ ÐÏ ÕÍÏÌÞÁÎÉÀ ËÁÔÁÌÏÇ
/usr/ports ÎÅ ÓÏÚÄÁÎ.
åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ &os; 6.0-RELEASE,
ÓÏÚÄÁÊÔÅ ÅÇÏ ÓÁÍÏÓÔÏÑÔÅÌØÎÏ ÐÅÒÅÄ ÐÅÒ×ÙÍ ÚÁÐÕÓËÏÍ
ÕÔÉÌÉÔÙ portsnap .
÷ ÂÏÌÅÅ ÐÏÚÄÎÉÈ ×ÅÒÓÉÑÈ &os; ÉÌÉ × ×ÅÒÓÉÉ ÉÚ ÐÏÒÔÏ×
Portsnap Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÚÄÁÓÔ
ÅÇÏ ÐÒÉ ÐÅÒ×ÏÍ ×ÙÚÏ×Å.
ïÂÎÏ×ÌÅÎÉÅ ÄÅÒÅ×Á ÐÏÒÔÏ×
ðÏÓÌÅ ÔÏÇÏ ËÁË ÐÅÒ×ÏÎÁÞÁÌØÎÙÊ ÓÎÜÐÛÏÔ ÄÅÒÅ×Á ÐÏÒÔÏ× ÂÕÄÅÔ
ÒÁÚ×ÅÒÎÕÔ × ËÁÔÁÌÏÇ /usr/ports/ , ÏÂÎÏ×ÌÅÎÉÅ
ÄÅÒÅ×Á ÐÏÒÔÏ× ÂÕÄÅÔ ÓÏÓÔÏÑÔØ ÉÚ Ä×ÕÈ ÛÁÇÏ×:
ÚÁÇÒÕÚËÉ (fetch ) ÏÂÎÏ×ÌÅÎÉÊ Ë ÕÐÁËÏ×ÁÎÎÏÍÕ
ÓÎÜÐÛÏÔÕ É ÐÏÓÌÅÄÕÀÝÅÇÏ ÏÂÎÏ×ÌÅÎÉÑ (update )
ÏÓÎÏ×ÎÏÇÏ ÄÅÒÅ×Á. ïÂÁ ÛÁÇÁ ÍÏÇÕÔ ÂÙÔØ ×ÙÐÏÌÎÅÎÙ ÏÄÎÉÍ ÚÁÐÕÓËÏÍ
portsnap :
&prompt.root; portsnap fetch update
îÅËÏÔÏÒÙÅ ÉÚ ÓÔÁÒÙÈ ×ÅÒÓÉÊ portsnap
ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔ ÔÁËÏÊ ÓÉÎÔÁËÓÉÓ; × ÜÔÏÍ ÓÌÕÞÁÅ, ÉÓÐÏÌØÚÕÊÔÅ Ä×Å
ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÙÅ ËÏÍÁÎÄÙ:
&prompt.root; portsnap fetch
&prompt.root; portsnap update
úÁÐÕÓË portsnap ÉÚ cron
äÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÉÚÂÅÖÁÔØ ÐÒÏÂÌÅÍ Ó ÂÅÚÕÍÎÙÍÉ
ÔÏÌÐÁÍÉ
ËÌÉÅÎÔÏ×, ÏÄÎÏ×ÒÅÍÅÎÎÏ ÐÒÉÈÏÄÑÝÉÍÉ ÎÁ ÓÅÒ×ÅÒÁ
Portsnap , ËÏÍÁÎÄÁ portsnap
fetch ÎÅ ÚÁÐÕÓÔÉÔÓÑ ËÁË ÚÁÄÁÎÉÅ &man.cron.8;.
äÌÑ ÒÁÂÏÔÙ ÉÚ cron ÐÒÅÄÎÁÚÎÁÞÅÎÁ ÓÐÅÃÉÁÌØÎÁÑ
ËÏÍÁÎÄÁ portsnap cron , ËÏÔÏÒÁÑ ÐÅÒÅÄ
ÚÁÇÒÕÚËÏÊ ÏÂÎÏ×ÌÅÎÉÊ ÏÖÉÄÁÅÔ ÓÌÕÞÁÊÎÏÅ ×ÒÅÍÑ ÄÏ 3600 ÓÅËÕÎÄ.
ëÒÏÍÅ ÔÏÇÏ, ÎÁÓÔÏÑÔÅÌØÎÏ ÎÅ ÒÅËÏÍÅÎÄÕÅÔÓÑ ÚÁÐÕÓËÁÔØ ÉÚ
cron ËÏÍÁÎÄÕ portsnap
update , ÐÏÓËÏÌØËÕ ÐÒÉ ÐÅÒÅÓÅÞÅÎÉÉ Ó ÐÒÏÃÅÓÓÏÍ ÓÂÏÒËÉ
ÉÌÉ ÕÓÔÁÎÏ×ËÉ ËÁËÏÇÏ-ÌÉÂÏ ÐÏÒÔÁ ÎÅÉÚÂÅÖÎÏ ×ÏÚÎÉËÎÅÔ ËÏÎÆÌÉËÔ.
ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ, ÂÅÚÏÐÁÓÎÏ ÏÂÎÏ×ÉÔØ ÉÎÄÅËÓÎÙÊ ÆÁÊÌ
INDEX , ÚÁÐÕÓÔÉ×
portsnap -I update (ÒÁÚÕÍÅÅÔÓÑ, ËÏÍÁÎÄÕ
portsnap update ÂÅÚ ËÌÀÞÁ -I
ÄÌÑ ÏÂÎÏ×ÌÅÎÉÑ ÏÓÔÁ×ÛÅÊÓÑ ÞÁÓÔÉ ÄÅÒÅ×Á ÐÏÒÔÏ× ÐÒÉÄÅÔÓÑ ÚÁÐÕÓÔÉÔØ
×ÒÕÞÎÕÀ).
äÌÑ ÅÖÅÄÎÅ×ÎÏÇÏ ÏÂÎÏ×ÌÅÎÉÑ ÕÐÁËÏ×ÁÎÎÏÇÏ ÓÎÜÐÛÏÔÁ É ÉÎÄÅËÓÎÏÇÏ
ÆÁÊÌÁ ÐÒÉ ÐÏÍÏÝÉ portsnap É ÐÏÓÌÅÄÕÀÝÅÇÏ
ÏÔÞÅÔÁ ÐÏÞÔÏÊ Ï ÕÓÔÁÒÅ×ÛÉÈ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ ÐÁËÅÔÁÈ ÄÏÂÁרÔÅ
× ×ÁÛ ÆÁÊÌ /etc/crontab ÓÔÒÏËÕ
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
åÓÌÉ ÓÉÓÔÅÍÎÙÅ ÞÁÓÙ ÎÅ ÕÓÔÁÎÏ×ÌÅÎÙ × ÌÏËÁÌØÎÏÅ ×ÒÅÍÑ,
ÐÏÖÁÌÕÊÓÔÁ, ÚÁÍÅÎÉÔÅ 3 ÎÁ ÓÌÕÞÁÊÎÏÅ
ÞÉÓÌÏ ÍÅÖÄÕ 0 É 23, ÞÔÏÂÙ ÎÅ ÓÏÚÄÁ×ÁÔØ ÐÉËÏ×ÙÈ ÎÁÇÒÕÚÏË ÎÁ
ÓÅÒ×ÅÒÙ portsnap .
óÔÁÒÙÅ ×ÅÒÓÉÉ ÕÔÉÌÉÔÙ portsnap
ÎÅ ÐÏÄÄÅÒÖÉ×ÁÌÉ ÎÅÓËÏÌØËÏ ËÏÍÁÎÄ ÐÒÉ ÏÄÎÏÍ ÚÁÐÕÓËÅ (ÎÁÐÒÉÍÅÒ,
cron update ). åÓÌÉ ËÏÍÁÎÄÁ, ÕËÁÚÁÎÎÁÑ ×ÙÛÅ,
ÎÅ ÓÒÁÂÏÔÁÅÔ, ÐÏÐÒÏÂÕÊÔÅ ÚÁÍÅÎÉÔØ
portsnap -I cron update ÎÁ
portsnap cron && portsnap -I update .
ôÅÇÉ CVS
ðÒÉ ÐÏÌÕÞÅÎÉÉ ÉÌÉ ÏÂÎÏ×ÌÅÎÉÉ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ
cvs ÉÌÉ
CVSup ÄÏÌÖÅÎ ÂÙÔØ ÕËÁÚÁÎ ÔÅÇ ÒÅ×ÉÚÉÉ
ôÅÇ ÏÔÎÏÓÉÔÓÑ ÌÉÂÏ Ë ÏÐÒÅÄÅÌÅÎÎÏÊ ÌÉÎÉÉ ÒÁÚÒÁÂÏÔËÉ &os;
ÌÉÂÏ Ë ÏÐÒÅÄÅÌÅÎÎÏÍÕ ÍÏÍÅÎÔÕ ×ÒÅÍÅÎÉ. ðÅÒ×ÙÊ ÔÉÐ ÎÁÚÙ×ÁÅÔÓÑ
ÔÅÇÏÍ ×ÅÔ×É
, ×ÔÏÒÏÊ ÔÉÐ ÎÁÚÙ×ÁÅÔÓÑ ÔÅÇÏÍ
ÒÅÌÉÚÁ
.
ôÅÇÉ ×ÅÔ×ÅÊ
÷ÓÅ ÏÎÉ, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ HEAD (ËÏÔÏÒÙÊ ×ÓÅÇÄÁ
ÒÁÂÏÔÁÅÔ), ÏÔÎÏÓÑÔÓÑ ÔÏÌØËÏ Ë ÄÅÒÅ×Õ src/ .
äÅÒÅ×ØÑ ports/ , doc/ É
www/ ÎÅ ÉÍÅÀÔ ÔÅÇÏ× ×ÅÔ×ÅÊ.
HEAD
óÉÍ×ÏÌÉÞÅÓËÏÅ ÉÍÑ ÄÌÑ ÏÓÎÏ×ÎÏÊ ×ÅÔ×É ÒÁÚÒÁÂÏÔËÉ,
FreeBSD-CURRENT. éÓÐÏÌØÚÕÅÔÓÑ ÐÏ ÕÍÏÌÞÁÎÉÀ, ÅÓÌÉ ÔÅÇ ÎÅ
ÕËÁÚÁÎ.
÷ CVSup , ÜÔÏÔ ÔÅÇ ÐÒÅÄÓÔÁ×ÌÅÎ
ÓÉÍ×ÏÌÏÍ . (ÎÅ ÚÎÁË ÐÕÎËÔÕÁÃÉÉ, Á
ÓÉÍ×ÏÌ .
).
÷ CVS ÔÅÇ ÐÏ ÕÍÏÌÞÁÎÉÀ ÉÓÐÏÌØÚÕÅÔÓÑ, ÅÓÌÉ ÔÅÇ ÎÅ ÕËÁÚÁÎ
×ÏÏÂÝÅ. ïÂÙÞÎÏ ÎÅ ÏÞÅÎØ ÈÏÒÏÛÅÊ ÉÄÅÅÊ Ñ×ÌÑÅÔÓÑ ÏÂÎÏ×ÌÅÎÉÅ
ÄÏ CURRENT ÎÁ ÍÁÛÉÎÅ ÓÏ STABLE, ÔÏÌØËÏ ÅÓÌÉ ×Ù ÎÅ ÓÔÒÅÍÉÔÅÓØ
ÉÍÅÎÎÏ Ë ÜÔÏÍÕ.
RELENG_6
÷ÅÔר ÒÁÚÒÁÂÏÔËÉ FreeBSD-6.X, ÉÚ×ÅÓÔÎÁÑ ÔÁËÖÅ ËÁË
FreeBSD 6-STABLE.
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. üÔÁ ×ÅÔר ÐÏ ÂÏÌØÛÅÊ ÞÁÓÔÉ ÕÓÔÁÒÅÌÁ.
ôÅÇÉ ÒÅÌÉÚÏ×
üÔÉ ÔÅÇÉ ÏÔÎÏÓÑÔÓÑ Ë ÏÐÒÅÄÅÌÅÎÎÙÍ ÍÏÍÅÎÔÁÍ ×ÒÅÍÅÎÉ, ËÏÇÄÁ
ÂÙÌÉ ×ÙÐÕÝÅÎÙ ËÏÎËÒÅÔÎÙÅ ×ÅÒÓÉÉ &os;. ðÒÏÃÅÓÓ ×ÙÐÕÓËÁ ÒÅÌÉÚÏ×
ÂÏÌÅÅ ÄÅÔÁÌØÎÏ ÄÏËÕÍÅÎÔÉÒÏ×ÁÎ × ÉÎÆÏÒÍÁÃÉÉ Ï ×ÙÐÕÓËÁÈ ÒÅÌÉÚÏ×
É ÓÔÁÔØÅ Ï
ÐÒÏÃÅÓÓÅ ÐÏÄÇÏÔÏ×ËÉ ÒÅÌÉÚÏ× . äÅÒÅ×Ï
src ÉÓÐÏÌØÚÕÅÔ ÉÍÅÎÁ ÔÅÇÏ×,
ÎÁÞÉÎÁÀÝÉÅÓÑ Ó RELENG_ . äÅÒÅרÑ
ports É
doc ÉÓÐÏÌØÚÕÀÔ ÔÅÇÉ, ÉÍÅÎÁ
ËÏÔÏÒÙÈ ÎÁÞÉÎÁÀÔÓÑ Ó RELEASE .
îÁËÏÎÅÃ, × ÄÅÒÅ×Å www
ÎÅÔ ÓÐÅÃÉÁÌØÎÙÈ ÉÍÅÎ ÄÌÑ ÒÅÌÉÚÏ×.
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
AFS ÓÁÊÔÙ
AFS ÓÅÒ×ÅÒÙ ÄÌÑ FreeBSD ÒÁÂÏÔÁÀÔ ÎÁ ÓÌÅÄÕÀÝÉÈ ÓÁÊÔÁÈ:
û×ÅÃÉÑ
þÁÓÔØ ÆÁÊÌÏ×:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
ïÔ×ÅÔÓÔ×ÅÎÎÙÊ ftp@stacken.kth.se
rsync ÓÁÊÔÙ
óÌÅÄÕÀÝÉÅ ÓÁÊÔÙ ÏÒÇÁÎÉÚÕÀÔ ÄÏÓÔÕÐ Ë FreeBSD ÞÅÒÅÚ ÐÒÏÔÏËÏÌ rsync
õÔÉÌÉÔÁ rsync ÒÁÂÏÔÁÅÔ × ÏÓÎÏ×ÎÏÍ ÔÅÍ ÖÅ
ÐÕÔÅÍ, ÞÔÏ É ËÏÍÁÎÄÁ &man.rcp.1;, ÎÏ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÂÏÌØÛÅ ÐÁÒÁÍÅÔÒÏ×
É ÉÓÐÏÌØÚÕÅÔ ÐÒÏÔÏËÏÌ ÕÄÁÌÅÎÎÏÇÏ ÏÂÎÏ×ÌÅÎÉÑ rsync, ËÏÔÏÒÙÊ ÐÅÒÅÄÁÅÔ
ÔÏÌØËÏ ÒÁÚÎÉÃÕ ÍÅÖÄÕ Ä×ÕÍÑ ÎÁÂÏÒÁÍÉ ÆÁÊÌÏ×, ÞÔÏ ÚÎÁÞÉÔÅÌØÎÏ ÐÏ×ÙÛÁÅÔ
ÓËÏÒÏÓÔØ ÓÉÎÈÒÏÎÉÚÁÃÉÉ ÐÏ ÓÅÔÉ. üÔÏ ÏÓÏÂÅÎÎÏ ÐÏÌÅÚÎÏ, ÅÓÌÉ ×Ù
ÐÏÄÄÅÒÖÉ×ÁÅÔÅ ÚÅÒËÁÌÏ ÓÅÒ×ÅÒÁ FreeBSD FTP, ÉÌÉ ÒÅÐÏÚÉÔÏÒÉÑ CVS.
ðÁËÅÔ rsync ÄÏÓÔÕÐÅÎ ÄÌÑ ÍÎÏÇÉÈ
ÏÐÅÒÁÃÉÏÎÎÙÈ ÓÉÓÔÅÍ, × FreeBSD ÉÓÐÏÌØÚÕÊÔÅ ÐÏÒÔ net/rsync ÉÌÉ ÐÁËÅÔ.
þÅÛÓËÁÑ ÒÅÓÐÕÂÌÉËÁ
rsync://ftp.cz.FreeBSD.org/
äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ:
ftp: þÁÓÔÉÞÎÏÅ ÚÅÒËÁÌÏ FreeBSD FTP
ÓÅÒ×ÅÒÁ.
FreeBSD: ðÏÌÎÏÅ ÚÅÒËÁÌÏ FreeBSD FTP
ÓÅÒ×ÅÒÁ.
çÅÒÍÁÎÉÑ
rsync://grappa.unix-ag.uni-kl.de/
äÏÓÔÕÐÎÙÅ ÓÏÅÄÉÎÅÎÉÑ:
freebsd-cvs: ðÏÌÎÙÊ FreeBSD CVS
ÒÅÐÏÚÉÔÏÒÉÊ.
üÔÏÔ ËÏÍÐØÀÔÅÒ ÐÏÍÉÍÏ ÐÒÏÞÉÈ ÔÁËÖÅ ÚÅÒËÁÌÉÒÕÅÔ CVS ÒÅÐÏÚÉÔÏÒÉÉ
ÐÒÏÅËÔÏ× NetBSD É OpenBSD.
îÉÄÅÒÌÁÎÄÙ
rsync://ftp.nl.FreeBSD.org/
äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ:
vol/4/freebsd-core: ðÏÌÎÏÅ ÚÅÒËÁÌÏ
FreeBSD FTP ÓÅÒ×ÅÒÁ.
÷ÅÌÉËÏÂÒÉÔÁÎÉÑ
rsync://rsync.mirror.ac.uk/
äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ:
ftp.FreeBSD.org: ðÏÌÎÏÅ ÚÅÒËÁÌÏ
FreeBSD FTP ÓÅÒ×ÅÒÁ.
óÏÅÄÉÎÅÎÎÙÅ ûÔÁÔÙ áÍÅÒÉËÉ
rsync://ftp-master.FreeBSD.org/
üÔÏÔ ÓÅÒ×ÅÒ ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÔÏÌØËÏ ÏÓÎÏ×ÎÙÍÉ ÚÅÒËÁÌÁÍÉ
FreeBSD.
äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ:
FreeBSD: ïÓÎÏ×ÎÏÊ ÁÒÈÉ× FreeBSD
FTP ÓÅÒ×ÅÒÁ.
acl: ïÓÎÏ×ÎÏÊ ACL ÓÐÉÓÏË
FreeBSD.
rsync://ftp13.FreeBSD.org/
äÏÓÔÕÐÎÙÅ ËÏÌÌÅËÃÉÉ:
FreeBSD: ðÏÌÎÏÅ ÚÅÒËÁÌÏ FreeBSD FTP
ÓÅÒ×ÅÒÁ.
diff --git a/share/xml/freebsd.sch b/share/xml/freebsd.sch
index 8b385077fe..7ada21d3fa 100644
--- a/share/xml/freebsd.sch
+++ b/share/xml/freebsd.sch
@@ -1,325 +1,322 @@
Image reference ( ) cannot have an extension; the proper format is inferred by the output type to generate.
Image reference ( ) format must not be specified; it is inferred by the output type to generate.
Filename ( ) has role="directory"; use class="directory"
Filename ( ) has role="package"; use the package element
Filename ( ) has role="port"; use the package element with role="port"
Filename ( ) has role attribute set; consider a properly set class attribute
Link ( ) element must have a content; or use xref to auto-generate the linking text.
Callouts with screenco are not supported; use screen and co instead.
Callouts with programlistingco are not supported; use programlisting and co instead.
Callouts on graphics are not supported.
Invalid edition value ( ); must be either 'online' or "print".
Invalid os value ( ); must be either 'freebsd8', 'freebsd9' or 'freebsd10'.
There must be a title either in the the doc component ( ) or in the info element.
There must be exactly one title for a doc component ( ).
You cannot use both colname and spanname attributes on table entries.
-
- The number of columns does not match the specified value (in section ).
-
Programlisting is not allowed in tables (in section ).
The screen element is not allowed in tables (in section ).
Footnote is not allowed in tables (in section ).
Indexterm ( ) is not allowed directly in question, place it into a concrete paragraph (in section ).
Indexterm ( ) is not allowed directly in answer, place it into a concrete paragraph (in section ).
Indexterm ( ) is not allowed directly in listitem, place it into a concrete paragraph (in section ).
@linkend on firstterm must point to a glossentry.
@linkend on footnoteref must point to a footnote.
@linkend on glossterm must point to a glossentry.
@linkend on synopfragmentref must point to a synopfragment.
@otherterm on glosssee must point to a glossentry.
@otherterm on glossseealso must point to a glossentry.
A termdef must contain exactly one firstterm
The number of seg elements must be the same as the number of segtitle elements in the parent segmentedlist
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
The root element must have a version attribute.
annotation must not occur in the descendants of annotation
caution must not occur in the descendants of caution
important must not occur in the descendants of caution
note must not occur in the descendants of caution
tip must not occur in the descendants of caution
warning must not occur in the descendants of caution
caution must not occur in the descendants of important
important must not occur in the descendants of important
note must not occur in the descendants of important
tip must not occur in the descendants of important
warning must not occur in the descendants of important
caution must not occur in the descendants of note
important must not occur in the descendants of note
note must not occur in the descendants of note
tip must not occur in the descendants of note
warning must not occur in the descendants of note
caution must not occur in the descendants of tip
important must not occur in the descendants of tip
note must not occur in the descendants of tip
tip must not occur in the descendants of tip
warning must not occur in the descendants of tip
caution must not occur in the descendants of warning
important must not occur in the descendants of warning
note must not occur in the descendants of warning
tip must not occur in the descendants of warning
warning must not occur in the descendants of warning
caution must not occur in the descendants of caption
equation must not occur in the descendants of caption
example must not occur in the descendants of caption
figure must not occur in the descendants of caption
important must not occur in the descendants of caption
note must not occur in the descendants of caption
sidebar must not occur in the descendants of caption
table must not occur in the descendants of caption
task must not occur in the descendants of caption
tip must not occur in the descendants of caption
warning must not occur in the descendants of caption
caution must not occur in the descendants of equation
equation must not occur in the descendants of equation
example must not occur in the descendants of equation
figure must not occur in the descendants of equation
important must not occur in the descendants of equation
note must not occur in the descendants of equation
table must not occur in the descendants of equation
tip must not occur in the descendants of equation
warning must not occur in the descendants of equation
caution must not occur in the descendants of example
equation must not occur in the descendants of example
example must not occur in the descendants of example
figure must not occur in the descendants of example
important must not occur in the descendants of example
note must not occur in the descendants of example
table must not occur in the descendants of example
tip must not occur in the descendants of example
warning must not occur in the descendants of example
caution must not occur in the descendants of figure
equation must not occur in the descendants of figure
example must not occur in the descendants of figure
figure must not occur in the descendants of figure
important must not occur in the descendants of figure
note must not occur in the descendants of figure
table must not occur in the descendants of figure
tip must not occur in the descendants of figure
warning must not occur in the descendants of figure
caution must not occur in the descendants of table
equation must not occur in the descendants of table
example must not occur in the descendants of table
figure must not occur in the descendants of table
important must not occur in the descendants of table
informaltable must not occur in the descendants of table
note must not occur in the descendants of table
tip must not occur in the descendants of table
warning must not occur in the descendants of table
caution must not occur in the descendants of footnote
epigraph must not occur in the descendants of footnote
equation must not occur in the descendants of footnote
example must not occur in the descendants of footnote
figure must not occur in the descendants of footnote
footnote must not occur in the descendants of footnote
important must not occur in the descendants of footnote
indexterm must not occur in the descendants of footnote
note must not occur in the descendants of footnote
sidebar must not occur in the descendants of footnote
table must not occur in the descendants of footnote
task must not occur in the descendants of footnote
tip must not occur in the descendants of footnote
warning must not occur in the descendants of footnote
sidebar must not occur in the descendants of sidebar
diff --git a/zh_CN.GB2312/articles/contributing/article.xml b/zh_CN.GB2312/articles/contributing/article.xml
index c01f86f58a..9174bf39c7 100644
--- a/zh_CN.GB2312/articles/contributing/article.xml
+++ b/zh_CN.GB2312/articles/contributing/article.xml
@@ -1,507 +1,507 @@
Ϊ FreeBSD Ìṩ°ïÖú
ÎÞÂÛÊÇ×÷Ϊ¸öÈË»¹ÊÇ×éÖ¯»ú¹¹£¬Èç¹ûÄúÏ£ÍûΪFreeBSDÏîÄ¿Ìṩ°ïÖú£¬
¶¼¿ÉÒÔÔÚ±¾ÎÄÖÐÕÒµ½ºÏÊʵķ½·¨¡£
Jordan
Hubbard
ÔÖø
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
¹±Ï×
ÄúÏ£Íû¸ø FreeBSD ÏîÄ¿×öµãʲôÂ𣿠̫ºÃÁË£¬ ÎÒÃÇ»¶ÓÄú¡£ FreeBSD ÕýÊÇ
ÒÀ¿¿ ¹ã´óÓû§µÄ¹±ÏײŵÃÒÔ·¢Õ¹×³´óµÄ¡£
ÎÒÃDz»½ö·Ç³£¸ÐлÄúËù×öµÄ¹±Ï×£¬¶øÇÒ£¬ÕâЩ¹¤×÷¶ÔÓÚ FreeBSD µÄ³ÖÐø·¢Õ¹Ò²ÖÁ¹ØÖØÒª¡£
Ò²ÐíÓëÄúÏëÏóµÄ²»Í¬£¬ Äú¼È²»±ØÊÇÒ»Ãû³öÉ«µÄ³ÌÐòÔ±£¬ Ò²ÎÞÐëºÍ
FreeBSD ºËÐÄÍŶӳÉÔ±ÓкܺõÄ˽½»£¬ ÎÒÃÇ»áÒ»ÊÓͬÈʵĶԴýÄúµÄ¹¤×÷¡£
FreeBSD µÄ¿ª·¢ÈËÔ±±é²¼È«Çò£¬ ´ó¼Ò¼¼Êõר³¤¸÷Ò죬 ÄêÁä·Ö²¼Ò²·Ç³£¹ã·º¡£
ÿÌ죬 ÎÒÃǶ¼ÔÚÃæ¶Ô³ÖÐøÔö³¤µÄ¹¤×÷¶ø¿àÓÚûÓÐ×ã¹»µÄÈËÊÖ£¬
Òò´ËÎÒÃÇËæÊ±»¶ÓÄúµÄ°ïÖú¡£
FreeBSD ÏîÄ¿´¦ÀíµÄÊÇÒ»¸öÍêÕûµÄ²Ù×÷ϵͳ»·¾³£¬
¶ø²»Ö»ÊÇÒ»¸öÄں˻òÊÇһЩÁãÉ¢µÄ¹¤¾ß°ü¡£ Òò´Ë£¬ ÎÒÃǵÄ
TODO ÈÎÎñÁбíÀï°üº¬¸÷ÖÖ¸÷ÑùµÄ¹¤×÷£¬
´ÓÎĵµ¡¢Óû§²âÊÔ¡¢ÑÝʾ£¬ µ½ÏµÍ³°²×°³ÌÐòºÍ¸ß¶ÈרҵµÄÄں˿ª·¢¡£
Òò´ËÎÞÂÛÄúµÄ¼¼ÊõˮƽÈçºÎ£¬ ´ÓʺÎÖÖÁìÓò£¬ ¶¼¿ÉÒÔ°ïÖúÕâ¸öÏîÄ¿¡£
ÎÒÃǹÄÀø´ÓÊÂºÍ FreeBSD Ïà¹Ø¹¤×÷µÄÆóÒµºÍÎÒÃÇÁªÏµ¡£
ÄúÐèÒªÒ»Ð©ÌØÊâµÄÀ©Õ¹À´Ê¹ÄúµÄ²úÆ·ÔËתÆðÀ´Ã´£¿
Äú»á·¢ÏÖÎÒÃǺÜÀÖÒâ´ðÓ¦ÄúµÄÇëÇó£¬ ³ý·ÇÊÇÌØ±ðÏ¡Ææ¹Å¹ÖµÄ¡£
ÄúÊÇ·ñÕý´ÓÊÂÏà¹ØµÄÔöÖµÒµÎñ£¿ ÈÃÎÒÃÇÀ´°ïÖúÄú°É£¬
ÎÒÃÇÒ²Ðí¿ÉÒÔÔÚÆäÖеÄijЩ·½ÃæÏ໥Ð×÷¡£
×ÔÓÉÈí¼þÊÀ½çÕýÔÚŬÁ¦´òÆÆ¾ÉÓеĹØÓÚÈí¼þ¿ª·¢¡¢ ÏúÊÛºÍά»¤µÄ¿ò¿ò£¬
ÎÒÃÇÏ£Íû¿ÒÇëÄúÖÁÉÙÄܸøËüÒ»´Î»ú»á¡£
ÎÒÃǵÄÐèÇó
ÏÂÃæÁгöÁËһЩÐèÒªÍê³ÉµÄÈÎÎñºÍ×ÓÏîÄ¿£¬
ËüÃÇ»ù±¾ÉÏ¿ÉÒÔ±»µÈͬÓÚ TODO (ÈÎÎñÁбí)
ÁÐ±í£¬ ÒÔ¼°Óû§µÄÒªÇó¡£
ÕýÔÚ½øÐÐÖеķǿª·¢ÈÎÎñ
ºÜ¶à²Î¼ÓFreeBSDÏîÄ¿µÄÈ˲»ÊdzÌÐòÔ±¡£
Õâ¸öÏîÄ¿ÀïÓÐÎĵµ×«Ð´Õß¡¢ ÍøÒ³Éè¼ÆÊ¦¡¢ ÒÔ¼°¼¼ÊõÖ§³ÖÈËÔ±¡£
¶ÔÓÚÕâЩ־ԸÕßÀ´Ëµ£¬ ËûÃÇÖ»ÐèÒª¹±Ï×һЩʱ¼ä£¬
²¢ÇÒ¾ßÓÐѧϰµÄÒâÔ¸¡£
Äú¿ÉÒÔ¾³£Í¨¶ÁFAQºÍÊֲᣬ Èç¹ûÄú·¢ÏÖÁË·±ËöµÄ½âÊÍ£¬
»òÕßÊǹýʱµÄ֪ʶ£¬ ÉõÖÁÍêÈ«²»ÕýÈ·µÄµØ·½£¬ ¶¼Çë¸æËßÎÒÃÇ¡£
Èç¹ûÄúÄÜ˳ÊÖ°ÑËûÃǸĹýÀ´ÄǾ͸üºÃÁË
(SGMLÆäʵ²¢²»ÄÑѧ£¬ µ«ÎÒÃÇÒ²²»·´¶ÔÄúÖ±½ÓÌá½»
ASCII µÄ°æ±¾)¡£
°ïÖúÎÒÃÇ°Ñ FreeBSD Îĵµ·Òë³ÉÄúµÄĸÓï¡£
Èç¹ûÄúµÄĸÓï°æ±¾ÒѾ´æÔÚÁË£¬
ÄúÒ²¿ÉÒÔ·ÒëһЩÆäËûµÄÎĵµ»òÕß¼ì²éÄÇЩÒÑÓеÄÎĵµÊÇ·ñÊÇ×îиüйýµÄ¡£
Äú¿ÉÒÔÏȼòµ¥¿´¿´ FreeBSD Îĵµ¼Æ»®ÖÐÓÐ¹Ø ·ÒëµÄ³£¼ûÎÊÌâ ¡£
²Î¼Ó·Ò빤×÷²¢²»ÊÇ˵ÄúÒª¹Â¾ü·ÜÕ½·ÒëËùÓÐµÄ FreeBSD Îĵµ¡£
×÷Ϊһ¸öÖ¾Ô¸Õߣ¬ ×ö¶àÉÙ¹¤×÷Íêȫȡ¾öÓÚÄúµÄÒâÔ¸¡£ Ò»µ©Ä³¸öÈË¿ªÊ¼·ÒëÁË£¬
ÆäËûÈ˼¸ºõÒ»¶¨»á²ÎÓëµ½ÕâЩ¹¤×÷ÖÐÀ´¡£
Èç¹ûÄúÖ»ÓÐÓÐÏÞµÄʱ¼ä»òÕß¾«Á¦È¥·Ò벿·ÖÎĵµ£¬
Äú¿ÉÒÔÊ×ÏÈÈ¥·Òë°²×°Ö¸ÄÏ¡£
ÔĶÁ &a.questions; ²¢Å¼¶û¿´Ò»¿´ &ng.misc;
(ÉõÖÁÓйæÂɵØÕâÑù×ö)¡£ Óë±ðÈË·ÖÏíÄúµÄרҵ֪ʶ£¬
²¢°ïÖúËûÃǽâ¾öÎÊÌâÊÇÒ»¼þÁîÈËÓäÔõÄÊÂÇ飻
ÓÐЩʱºòÄúÉõÖÁ¿ÉÒÔÔÚÕâ¸ö¹ý³ÌÖÐѧµ½Ò»Ð©Ð¶«Î÷£¡
ÕâЩÂÛ̳ÓÐʱҲ»áΪÄúÌṩһЩÓмÛÖµµÄÖ÷Òâ¡£
ÕýÔÚ½øÐеĿª·¢ÈÎÎñ
ÁÐÔÚÕâÀïµÄ´ó²¿·ÖÈÎÎñ¶¼ÐèÒªÄúͶÈë¿É¹ÛµÄʱ¼ä£¬
»òÕßÐèÒªÄúÔÚ FreeBSD Äں˷½ÃæÓзḻµÄ֪ʶ£¬ »òÕßÁ½Õß¶¼Òª¡£
µ±È»ÕâÀïÒ²ÓкܶàÖØÒªµÄÈÎÎñÒ²ÐíÄúÒ»¸ö
ÖÜÄ©¿ª·¢ÈËÔ±
¾Í¿ÉÒÔ¸ÉÍê¡£
Èç¹ûÄúÕýÔÚÔËÐÐ FreeBSD-CURRENT °æ±¾²¢ÇÒÓÐÒ»Ìõ¸ßËÙµÄ
Internet½ÓÈëÏß·£¬ Äú¿ÉÒÔ·ÃÎÊ current.FreeBSD.org £¬
ÕâÀïÿÌì»áÓÐÒ»¸öа汾 — Èç¹ûÄúÓпգ¬
Äú¿ÉÒÔ¸ôÈý²íÎ嵨ÏÂÔØÒ»·Ý²¢ÇÒ°²×°Ëü£¬
Æä¼äÈç¹û³öÁËʲôÎÊÌ⣬Çë¸æËßÎÒÃÇ¡£
ÔĶÁ &a.bugs;¡£ Äú¿ÉÄÜ»áΪÕâЩÎÊÌâÌṩ¾ßÓн¨ÉèÐÔÒâÒåµÄÆÀÂÛ£¬
»òÕß°ïæ²âÊÔһЩ²¹¶¡¡£ ´ËÍ⣬
ÄúÉõÖÁ¿ÉÒÔ³¢ÊÔÐÞÕýÆäÖеÄһЩÎÊÌâ¡£
Èç¹ûÄúÖªµÀÓÐһЩÐÞÕýÒѾÔÚ -CURRENT Éϳɹ¦µØ½øÐУ¬
µ«ÔÚ¾¹ýÒ»¶Îʱ¼äÖ®ºóÈÔȻûÓкϲ¢µ½ -STABLE
(ͨ³£ÊÇ 2ÖÜ×óÓÒ)£¬ ¸øÏà¹ØµÄ committer ·¢Ò»·âÀñòµÄÌáʾÐÅ¡£
½«µÚÈý·½Èí¼þ¼ÓÈëµ½Ô´´úÂëÖеÄ
src/contrib Ŀ¼¡£
È·±£ src/contrib
ÖеĴúÂëÊÇ×îеÄ
ÒÔ¸ü¸ßµÄ¾¯¸æ¼¶±ð¹¹½¨Ô´´úÂë (»òÒ»²¿·ÖÔ´´úÂë)
²¢ÇåÀíÕâЩ¾¯¸æ¡£
¸üÐÂÄÇЩÔÚ ports ÖÐʹÓùýʱµÄ¶«Î÷£¬
ÀýÈç gets() »ò°üº¬
malloc.h Ëù²úÉúµÄ¾¯¸æ¡£
Èç¹ûÄúÖÆ×÷ÁË ports£¬ ²¢½øÐÐÁËһЩÕë¶Ô
&os; µÄ¸Ä¶¯£¬ ½«ÄúµÄ²¹¶¡·¢»Ø¸øÔ×÷Õß
(ÕâÑùÏ´ÎÉý¼¶Ê±ÄúµÄ¹¤×÷»á±äµÃÇáËÉһЩ)¡£
»ñȡһ·ÝÕýʽµÄ±ê×¼£¬ Èç &posix; µÄ¸±±¾¡£
Äú¿ÉÒÔÔÚ FreeBSD
C99 & POSIX ±ê׼˳ӦÏîÄ¿ ÍøÕ¾Éϵõ½Ïà¹ØµÄÁ´½Ó¡£
½« FreeBSD µÄÐÐΪͬ±ê×¼½øÐбȽϡ£ Èç¹ûÓë±ê×¼²»Í¬£¬
ÌØ±ðÊÇÄÇЩϸ½ÚµØ·½µÄ΢С²îÒ죬 Çë·¢ËÍÒ»¸ö¹ØÓÚËüµÄ PR (ÎÊÌⱨ¸æ)¡£
Èç¹û¿ÉÄÜ£¬ ÇëÖ¸³öÈçºÎÐÞÕýËü£¬ ²¢Ëæ PR Ìá½»²¹¶¡¡£
Èç¹ûÄúÈÏΪ±ê×¼ÓÐÎÊÌ⣬
ÇëÏò±ê×¼»¯ÍÅÌåÒªÇó¶ÔÆä½øÐÐÖØÐµĿ¼ÂÇ¡£
ΪÕâ·ÝÁÐ±í½¨Òé¸ü¶àµÄÄÚÈÝ£¡
²é¿´Õû¸ö PR Êý¾Ý¿â
ÎÊÌⱨ¸æÊý¾Ý¿â
FreeBSD
PR Áбí չʾÁËËùÓе±Ç°´¦ÓÚ»îԾ״̬µÄÎÊÌⱨ¸æ£¬ ÒÔ¼°ÓÉ
FreeBSD Óû§Ìá½»µÄ¸Ä½ø½¨Òé¡£ PR
Êý¾Ý¿âͬʱ°üÀ¨ÁË¿ª·¢ÈËÔ±ºÍ·Ç¿ª·¢ÈËÔ±µÄÈÎÎñ¡£
²é¿´ÄÇЩÉÐδ½â¾öµÄ PR£¬ ²¢¿´¿´ÊÇ·ñÓÐÄú¸ÐÐËȤµÄÈÎÎñ¡£
ÕâÆäÖпÉÄÜÓÐһЩÊǷdz£¼òµ¥µÄÎÊÌ⣬
Ö»ÐèÒª¿´Ò»¿´²¢È·ÈÏ PR ÊÇÕýÈ·µÄ¡£ ÁíÍâһЩ¿ÉÄÜ»á·Ç³£¸´ÔÓ£¬
»òÕßÍêȫûÓаüÀ¨ÈκÎÐÞÕý¡£
Ê×ÏÈ¿´Ò»¿´ÄÇЩ»¹Ã»ÓÐÈ˽ÓÊÖµÄ PR¡£
Èç¹û PR ÒѾ·ÖÅ䏸ÁËÆäËüÈË£¬ µ«¿´ÆðÀ´ÊÇÄúÄܹ»´¦ÀíµÄ£¬
Äú¿ÉÒÔ¸øÄǸöÈË·¢ÐÅ£¬ ²¢Ñ¯ÎÊÄúÊÇ·ñ¿ÉÒÔÌṩ°ïÖú —
ËûÃÇ¿ÉÄÜÒѾÓÐÁ˿ɹ©²âÊԵIJ¹¶¡£¬ »òÓÐһЩ¿É¹©ÌÖÂÛµÄÒâ¼û¡£
´Ó µã×Ó
ÍøÒ³ÉÏÈÏÁìÏîÄ¿
&os;
Ö¾Ô¸ÕßÏîÄ¿ºÍµã×ÓÇåµ¥ Ò²ÊÇÌṩ¸øÔ¸ÒâΪ
&os; ÏîÄ¿×ö³ö¹±Ï×µÄÈËÃǵġ£
ÕâÕÅÇåµ¥Ò»Ö±ÔÚ±»¶¨ÆÚ¸üÐÂ×Å£¬
°üº¬Á˶ԳÌÐòÔ±ºÍ·Ç³ÌÐòÔ±ÓÐÓõÄÿ¸öÏîÄ¿µÄÐÅÏ¢¡£
ÈçºÎÌṩ°ïÖú
°ïÖú¸Ä½øÏµÍ³»ù±¾ÉÏ¿ÉÒÔ·ÖΪ 5 Àࣺ
´íÎ󱨸æºÍÒ»°ãµÄ×¢½â
ͨ³££¬ Ò»°ãÒâÒåÉϵÄ
¼¼ÊõÏë·¨ºÍ½¨ÒéÓ¦¸Ã·¢µ½ &a.hackers;¡£
ͬÑùµØ£¬ ¶ÔÓÚÕâЩ¶«Î÷ÓÐÐËȤµÄÈË (µ±È»£¬
ËûÃÇͬʱ»¹ÒªÄܹ»ÈÝÈÌ ´óÁ¿µÄ Óʼþ£¡)
¿ÉÒÔ¿¼ÂǶ©ÔÄ &a.hackers;¡£
²Î¼û FreeBSD
ʹÓÃÊÖ²á ÒÔÁË½â¹ØÓÚÕâ¸öÓʼþÁÐ±í£¬
ÒÔ¼°ÆäËüÓʼþÁбíµÄÏêϸÇé¿ö¡£
Èç¹ûÄú·¢ÏÖÁË bug »òÕßÏëÒªÌύijЩÐ޸ģ¬
Çëͨ¹ý &man.send-pr.1; ³ÌÐò»òʹÓÃ
»ùÓÚ WEB
µÄÌá½»Ò³Ãæ À´Ìá½»¡£ ÇëÊÔ×ÅÌîд bug ±¨¸æµÄÿһÏî¡£
Ò»°ãÀ´Ëµ£¬ ÎÒÃǽ¨ÒéÔÚ bug ±¨¸æÖÐÖ±½Ó¸½Éϲ¹¶¡£¬ ³ý·ÇËü³¬¹ýÁË 65KB¡£
Èç¹û²¹¶¡¿ÉÒÔÖ±½ÓÓ¦Óõ½Ô´´úÂëÉÏ£¬ Ôò½¨ÒéÄúÔÚ±¨¸æµÄ
synopsis Ò»À¸Ð´ÉÏ [PATCH] ¡£
ÔÚ¸½´ø²¹¶¡Ê±£¬ Çë ²»Òª
ͨ¹ý¸´ÖƺÍÕ³ÌùÀ´½øÐУ¬ ÒòΪÕâÑù×ö»á°Ñ tab ±ä³É¿Õ¸ñ£¬
½á¹û²¹¶¡ºÜ¿ÉÄܾͲ»ÄÜÓÃÁË¡£ Èç¹û²¹¶¡³¬¹ý 20KB ºÜ¶à£¬
Ó¦¿¼Âǽ«ÆäѹËõ (ÀýÈçʹÓà &man.gzip.1; »ò &man.bzip2.1;)
Ö®ºóÓà &man.uuencode.1; ½øÐбàÂëÖ®ºóÔٷŽøÄúµÄÎÊÌⱨ¸æÖС£
Ò»µ©±¨¸æ±»´æµµ£¬ Äú»áÊÕµ½Ò»·âÈ·ÈÏÓʼþÒÔ¼°Ò»¸öʼþ×·×Ù±àºÅ¡£
Çë±£ÁôÕâ¸ö±àºÅ£¬ ÒòΪÄú¿ÉÒÔÔÚÖ®ºóʹÓÃÕâ¸ö±àºÅ£¬
·¢Óʼþµ½ &a.bugfollowup;
À´Ìṩ¹ØÓÚ¸ÃʼþµÄ½øÒ»²½ÐÅÏ¢¡£ ÄúÐèÒª×öµÄÊǽ«±àºÅ·Åµ½ÓʼþµÄ±êÌâÖУ¬
ÀýÈç "Re:
kern/3377" ¡£
¹ØÓÚͬһÎÊÌâ¸ü½øÒ»²½µÄÇé¿öÓ¦¸Ãͨ¹ýÕâÖÖ·½Ê½À´Ìá½»¡£
Èç¹ûÄúÔÚÒ»¶Îʱ¼äÖ®ºóÈÔȻûÓÐÊÕµ½È·ÈÏÐÅ (³¬¹ý 3
ÌìÉõÖÁ 1 ÖÜ£¬ ÕâÈ¡¾öÓÚÄúµÄÓʼþ·þÎñ)
»òÕßÓÉÓÚijÖÖÔÒòÎÞ·¨Ê¹Óà &man.send-pr.1; ÃüÁ
Ôò¿ÉÒÔ·¢ÐŸø &a.bugs; ÒªÇó±ðÈË´úÄú·¢ËÍËü¡£
Çë²Î¼û ÕâÆªÎÄÕÂ
Á˽âÈçºÎ׫дºÃµÄÎÊÌⱨ¸æ¡£
¶ÔÓÚÎĵµµÄÐÞ¶©
Ìá½»Îĵµ
¶ÔÓÚÎĵµµÄÐÞ¸ÄÓÉ &a.doc; À´Éó²é¡£
Çë²Î¼û FreeBSD
Îĵµ¼Æ»®³õ¼¶¶Á±¾ À´»ñµÃÍêÕûµÄÖ¸µ¼¡£
Çë°´ÕÕ ÖнéÉܵķ½·¨Ê¹Óà &man.send-pr.1;
À´·¢ËÍеÄÎĵµ»òÕß¶ÔÓÚÏÖÓÐÎĵµµÄÍêÉÆ (ÄÄÅÂÊǺÜСµÄ¸Ä½øÒ²ÊÇ»¶ÓµÄ£¡)¡£
¶ÔÓÚÏÖÓÐÔ´´úÂëµÄÐÞ¸Ä
FreeBSD-CURRENT
ÔÚÏÖÓдúÂëÉϽøÐÐÐ޸ĻòÔö¼Ó¹¦ÄÜÔÚijÖ̶ֳÈÉÏÊÇÐèÒª¸ü¶à¼¼ÇɵÄÊÂÇ飬
²¢ÇÒ»¹ºÍÄú¶ÔÓÚĿǰ FreeBSD µÄ¿ª·¢ÏÖ×´µÄÁ˽âÓйء£
ÓжàÖÖ·½Ê½¿ÉÒԵõ½±»³Æ×÷ FreeBSD-CURRENT
µÄ FreeBSD ¿ª·¢°æ±¾£¬ Äú¿ÉÒÔͨ¹ýËüÀ´Á˽â×î½üµÄ¿ª·¢Çé¿ö¡£
Çë²Î¼û FreeBSD
ʹÓÃÊÖ²á À´Á˽âʹÓà FreeBSD-CURRENT µÄ½øÒ»²½ÏêÇé¡£
ÔھɵĴúÂëÉϽøÐÐÐ޸ģ¬ Ôòͨ³£¿ÉÄÜÓÉÓÚ´úÂëÒѾ¹ýʱ£¬
»òÓëеĿª·¢°æ±¾²îÒìÌ«´ó¶øÎÞ·¨±»ÖØÐ¼¯³Éµ½ FreeBSD ÖС£
Èç¹ûÄú¶©ÔÄÁË &a.announce; ÒÔ¼° &a.current; ÓʼþÁÐ±í£¬
Ôò¿ÉÒÔͨ¹ýËüÃÇÀ´´óÌåÁ˽âĿǰµÄ¿ª·¢×´Ì¬¡£
¼ÙÈç˵ÄúÄܹ»»ùÓÚ¾¡¿ÉÄÜеĴúÂëÀ´Íê³ÉÄúµÄÐ޸ģ¬
ÔòÏÂÒ»²½Òª×öµÄÊÂÇé¾ÍÊÇÉú³ÉÄúËù½øÐеÄÐ޸ĵIJîÒìÎļþ£¬
²¢½«Ëü·¢¸ø FreeBSD µÄά»¤ÈËÔ±¡£ ÕâÏ×÷¿ÉÒÔͨ¹ý &man.diff.1;
ÃüÁîÀ´Íê³É¡£
Ìá½»²¹¶¡Ê±ÍƼöµÄ &man.diff.1; ¸ñʽÊÇÒ»Ö²îÒì (unified diff)£¬
Ëü¿ÉÒÔͨ¹ý diff
-u À´Éú³É¡£ ²»¹ý£¬ Èç¹ûÄúÐÞ¸ÄÁË´óÁ¿µÄ´úÂ룬
ÔòʹÓà diff -c À´Éú³ÉµÄÉÏÏÂÎĸñʽ (context diff)
µÄ²îÒì¿ÉÄܸüÈÝÒ×ÔĶÁ£¬ Òò¶øÍƼöʹÓá£
diff
ÀýÈ磺
&prompt.user; diff -c oldfile newfile
»òÕß
&prompt.user; diff -c -r olddir newdir
½«·Ö±ðÉú³É¸ø¶¨Îļþ»òĿ¼½á¹¹µÄ context diff¡£
ÀàËÆµØ£¬
&prompt.user; diff -u oldfile newfile
»ò
&prompt.user; diff -u -r olddir newdir
µÄ×÷ÓÃÓëÇ°ÃæµÄÀàËÆ£¬ µ«²ÉÓõĸñʽÊÇ unified diff¡£
Çë²Î¼û &man.diff.1; Áª»úÊÖ²áÁ˽â¸ü¶àϸ½Ú¡£
Ò»µ©ÄúʹÓà &man.diff.1; Éú³ÉÁ˲îÒ켯 (¿ÉÒÔʹÓÃ
&man.patch.1; ÃüÁîÀ´²âÊÔÒ»ÏÂ)£¬ ¾Í¿ÉÒÔÌá½»ËüÃÇ£¬
ÒԱ㱻 FreeBSD ÊÕ¼¡£ ͨ¹ýʹÓÃ
ÖÐËù½éÉÜµÄ &man.send-pr.1; ³ÌÐò¾Í¿ÉÒÔÍê³ÉÕâÏ×÷¡£
²»Òª Ö»ÊǰѲîÒ켯·¢µ½ &a.hackers;£¬
·ñÔòËüÃÇ¿ÉÄܻᱻ¶ªµô£¡ ÎÒÃÇ»á·Ç³£¸Ð¼¤ÄúÌá½»µÄÐÞ¸Ä
(ÕâÊÇÒ»¸öÖ¾Ô¸ÕßÏîÄ¿£¡)£» ÒòΪÎÒÃǶ¼ºÜ棬
Òò´ËÓÐʱ²»Ò»¶¨Äܹ»Á¢¼´ÐÞÕýÎÊÌ⣬ µ« PR
Êý¾Ý¿â½«Ò»Ö±±£³Ö×ÅÕâЩ¼Ç¼£¬
Òò´ËÖ»ÒªÓÐÈËÓÐÁËʱ¼äËüÃǾÍÄܱ»¸ÄÕýÁË¡£
Èç¹ûÄúµÄÎÊÌⱨ¸æÖаüÀ¨²¹¶¡£¬ Ò»¶¨²»ÒªÍüÁËÔÚ±êÌâÉÏÓÃ
[PATCH] À´Ç¿µ÷һϡ£
uuencode
Èç¹ûÄúÈÏΪºÏÊÊ (ÀýÈçÄúÌí¼Ó¡¢ ɾ³ý»òÖØÃüÃûÁËÎļþ)£¬
»¹¿ÉÒÔ¿¼ÂÇʹÓÃ
tar À´½«Îļþ´ò°ü£¬ È»ºóÓà &man.uuencode.1;
À´±àÂë¡£ ÎÒÃÇÒ²»¶ÓÓà &man.shar.1; ´´½¨µÄ°ü¡£
Èç¹ûÄúµÄÐ޸ĿÉÄÜ´æÔÚDZÔÚµÄÕùÒ飬 ÀýÈ磬
Äú²»È·¶¨ÓëÖ®Ïà¹ØµÄ°æÈ¨ÎÊÌ⣬ »òÕ߸оõÐèÒª¾¹ý¸üÑϸñµÄ¸´Éó²Å¿ÉÒÔ·¢²¼ËüÃÇ£¬
ÔòÓ¦Ö±½Ó·¢¸ø &a.core;£¬ ¶ø²»ÊÇͨ¹ý &man.send-pr.1; À´·¢ËÍ¡£
&a.core; ÊÇÒ»¸öС×飬 Æä³ÉÔ±¸ü¶àµÄ´ÓÊ FreeBSD µÄÈÕ³£¹¤×÷¡£
ÐèҪעÒâµÄÊÇ£¬ Õâ¸öС×éÒ²Òò´Ë ºÜæ £¬
Òò´ËÖ»ÓÐÔڷdz£±ØÒªµÄʱºò²ÅÓ¦¸øËûÃÇдÐÅ¡£
Çë²Î¿¼ &man.intro.9; ºÍ &man.style.9; ÒÔÁË½â¹ØÓÚ±àÂëϰ¹ßºÍÔ¼¶¨µÄÏêÇé¡£
Èç¹ûÄúÁ˽âÕâЩԼ¶¨£¬ Ôò¶ÔÎÒÃÇÀ´Ëµ½«ÊǼ«´óµÄ°ïÖú¡£
дúÂë»òÖØÒªµÄÔöÖµÈí¼þ°ü
Èç¹ûÄú´òËãÌṩ¹æÄ£½Ï´óµÄ´úÂ룬 »òÕßΪ FreeBSD Ôö¼ÓÖØÒªµÄй¦ÄÜ£¬
Ôò¿ÉÄܱØÐ뽫ËüÃÇͨ¹ý uuencode ½øÐбàÂ룬 »ò´«µ½Ä³¸ö Web »ò
FTP Õ¾µã£¬ ÒÔ±ã¸ü¶àµÄÈËÄܹ»µÃµ½Ëü¡£ Èç¹ûÄúûÓÐÕâÑùµÄ·þÎñÆ÷£¬
Çëµ½Ïà¹ØµÄ FreeBSD ÓʼþÁбíÌá³ö£¬ ¿´¿´ÊÇ·ñÓÐÈËÔ¸Òâ°ïÄú·ÅÖÃËüÃÇ¡£
¶ÔÓÚ´óÁ¿µÄ´úÂë¶øÑÔ£¬ ¹ØÓÚ°æÈ¨µÄÎÊÌâ¿Ï¶¨»á±»Ìá³ö¡£
FreeBSD »ù±¾ÏµÍ³ÖÐÄܹ»Ê¹ÓõİæÈ¨ÉùÃ÷°üÀ¨£º
BSDBSD °æÈ¨ÉùÃ÷ °æÈ¨¡£ ÎÒÃÇÇãÏòÓÚʹÓÃÕâÀàÊÚȨµÄ´úÂ룬
ÒòΪËü ²»¸½¼Ó¶àÓàµÄÌõ¼þ
£¬ Òò¶ø¸üÄܹ»ÎüÒýÉÌÒµÆóҵʹÓá£
FreeBSD ²¢²»·´¶ÔÉÌÒµ¹«Ë¾Ê¹ÓÃËüµÄ´úÂ룬 Ïà·´£¬
ÎÒÃÇ»ý¼«µØ¹ÄÀøÉÌÒµ¹«Ë¾Ê¹ÓÃÎÒÃǵĴúÂ룬
µ±È»£¬ Èç¹ûËüÃÇ×îÖÕ°ÑÒ»²¿·Ö´úÂëÖØÐ¾èÔù¸ø FreeBSD
¾Í¸üºÃÁË¡£
GNU General Public License£¬GPL GNU General Public License GNU General Public License »ò¼ò³Æ GPL
¡£
ÎÒÃDz¢²»ºÜ»¶ÓʹÓÃÕâÑùÊÚȨµÄ´úÂ룬
ÒòΪÉÌÒµ¹«Ë¾Ê¹ÓÃËüÐèÒª×ö¸ü¶àµÄ¹¤×÷¡£ ²»¹ý£¬ ÓÉÓںܶàʹÓÃ
GPL ÊÚȨµÄ´úÂëĿǰÊÇÎÞ·¨±ÜÃâµÄ (±àÒëÆ÷¡¢ »ã±àÆ÷£¬
Îı¾ÅŰæ³ÌÐòµÈµÈ)£¬ ¾Ü¾øÊ¹ÓÃËùÓвÉÓÃÕâÑùÊÚȨµÄÈí¼þÊǺܲ»Ã÷Öǵġ£
²ÉÓà GPL ÊÚȨµÄ´úÂë»á±»·Åµ½Ô´´úÂëµÄһЩרÃŵÄλÖ㬠ÀýÈç
/sys/gnu »ò
/usr/src/gnu £¬
ÒÔ·½±ãÄÇЩʹÓà GPL ´úÂë¿ÉÄÜ»á¸øËûÃÇ´øÀ´ÎÊÌâµÄÈËʶ±ð¡£
ʹÓÃÆäËüÊÚȨµÄ´úÂëÔÚ½øÈë FreeBSD ֮ǰ±ØÐë¾¹ýÉ÷ÖØµÄ¸´ÉóºÍ¿¼ÂÇ¡£
²ÉÓðüº¬ÑÏÀ÷ÏÞÖÆµÄÉÌÒµÊÚȨµÄ´úÂ룬 Ò»°ãÀ´Ëµ»á±»¾Ü¾ø£¬
µ«ÎÒÃǹÄÀøÕâЩ´úÂëµÄ×÷Õßͨ¹ý×Ô¼ºµÄÇþµÀÀ´·¢²¼ËüÃÇ¡£
ÒªÔÚÄúµÄ³É¹ûÉϼÓÈë BSDʽ
µÄ°æÈ¨£¬
Çë°ÑÏÂÁÐÎı¾·Åµ½Ã¿Ò»¸öÔ´ÎļþµÄ×ʼ²¿·Ö£¬
²¢ÓÃÊʵ±µÄÎÄ×ÖÌæ»» %% Ö®¼äµÄÎÄ×Ö¡£
Copyright (c) %%proper_years_here%%
%%your_name_here%%, %%your_state%% %%your_zip%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
ΪÁË·½±ãÄúµÄʹÓ㬠ÔÚ
/usr/share/examples/etc/bsd-style-copyright
Ò²¿ÉÒÔÕÒµ½´ËÊÚȨµÄ¸±±¾¡£
×ʽ𡢠Ӳ¼þ»ò Internet ½ÓÈë
ÎÒÃǷdz£Ô¸Òâ½ÓÊܸ÷ÖÖÐÎʽµÄ¾èÔù£¬ ÒÔ½øÒ»²½ÍØÕ¹ FreeBSD
Project µÄÊÂÒµ£¬ ÒòΪÓÐÄúµÄÖ§³Ö£¬
ÏñÎÒÃÇÕâÑùµÄÖ¾Ô¸ÕßŬÁ¦²ÅÄܹ»Óиü´óµÄ³É¾Í£¡
¾èÔùÓ²¼þÒ²·Ç³£ÖØÒª£¬ ÒòΪÕâÑùÄܹ»°ïÖúÎÒÃÇÔö¼Ó¿ÉÒÔÖ§³ÖµÄÓ²¼þÖÖÀ࣬
¶øÎÒÃÇÖеĺܶàÈ˲¢Ã»ÓÐ×ã¹»µÄ×ʽðÀ´¹ºÖÃÕâЩӲ¼þ¡£
-
- ¾è¿î
+
+ ¾è¿î
FreeBSD »ù½ð»áÊÇÒ»¸ö·ÇÓªÀûµÄ¡¢ ÓпÎ˰»íÃâȨµÄ»ù½ð»á£¬
½¨Á¢Õâ¸ö»ù½ð»áµÄÄ¿±êÊÇΪÁËÈà FreeBSD Project Äܹ»´ï³É¸ü¼Ó³¤Ô¶µÄÄ¿±ê¡£
×÷Ϊ 501(c)3 ʵÌ壬 Ò»°ã¶øÑÔ»ù½ð»á¿ÉÒÔÃâÓèÉϽÉÃÀ¹úÁª°îÊÕÈë˰£¬
ÒÔ¼°¿ÆÂÞÀ¶àÖÝÊÕÈë˰¡£ ͨ³£¶ÔÓÚ¿Î˰»íÃâµÄʵÌå½øÐоèÔù£¬
¿ÉÒÔÕÛµÖÁª°îÊÕÈëÖÐÓ¦¿Î˰²¿·ÖµÄ½ð¶î¡£
Äú¿ÉÒÔ°Ñ֧Ʊ¼ÄÍù£º
The FreeBSD Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
FreeBSD »ù½ð»áÏÖÔÚ¿ÉÒÔͨ¹ý PayPal ´ÓÍøÉϽÓÊܾè¿î¡£
Èç¹ûÄúÏëÏò»ù½ð»á¾è¿î£¬ Çë·ÃÎÊËüµÄ web
Õ¾µã ¡£
¹ØÓÚ FreeBSD »ù½ð»áµÄ¸ü¶àÏêÇ飬 ¿ÉÒÔÔÚ FreeBSD
»ù½ð»á -- ½éÉÜ ÕÒµ½¡£ ÒªÁªÂç»ù½ð»á£¬
Çë·¢Ë͵ç×ÓÓʼþµ½
bod@FreeBSDFoundation.org ¡£
¾èÔùÓ²¼þ
¾èÔù
FreeBSD ¼Æ»®»¶ÓÈκÎÈ˾èÔù¿ÉÒÔʹÓõÄÓ²¼þ¡£
Èç¹ûÄúÓÐÐËȤ¾èÔùÓ²¼þ£¬ ÇëÁªÏµ ¾èÔùÁªÂçÈ˰칫ÊÒ ¡£
¾èÔù Internet ½ÓÈë
ÎÒÃÇ»¶ÓÐ嵀 FTP¡¢ WWW »ò
cvsup ¾µÏñ¡£ Èç¹ûÄúÏ£Íû³ÉΪÕâÑùµÄ¾µÏñ£¬
Çë²Î¼û ÈçºÎ¼ÜÉè FreeBSD ¾µÏñ
Ò»ÎÄ£¬ ÒÔÁË½â½øÒ»²½µÄÇé¿ö¡£
diff --git a/zh_CN.GB2312/books/handbook/mirrors/chapter.xml b/zh_CN.GB2312/books/handbook/mirrors/chapter.xml
index afbd007d72..6f5c3cf580 100644
--- a/zh_CN.GB2312/books/handbook/mirrors/chapter.xml
+++ b/zh_CN.GB2312/books/handbook/mirrors/chapter.xml
@@ -1,3155 +1,3155 @@
»ñÈ¡ &os;
CDROM ºÍ DVD ·¢ÐÐÉÌ
ÁãÊÛºÐ×°²úÆ·
¿ÉÒÔ´ÓÏÂÃæ¼¸¸öÁãÊÛÉÌÄÇÀïÂòµ½ &os; µÄºÐ×°²úÆ· (&os; CD£¬
¸½¼ÓÈí¼þ£¬Ó¡Ë¢Îĵµ)£º
CompUSA
WWW:
Frys Electronics
WWW:
CD ºÍ DVD ¹âÅÌ
&os; CD ºÍ DVD ¹âÅÌ¿ÉÒÔ´ÓÐí¶àÔÚÏßÁãÊÛÉÌÄÇÀïÂòµ½£º
&os; Mall, Inc.
700 Harvest Park Ste F
Brentwood , CA 94513
USA
Phone: +1 925 240-6652
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Dr. Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germany
Phone: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
France
WWW:
JMC Software
Ireland
Phone: 353 1 6291282
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
United Kingdom
Phone: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
Phone: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Phone: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
·¢ÐÐÈË
Èç¹ûÄúÊÇÏúÊÛÉ̲¢ÇÒÏëÏúÊÛ &os; CDROM ²úÆ·£¬
ÇëºÍ·¢ÐÐÈËÁªÏµ£º
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
USA
Phone: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
Phone: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
Phone: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Kz
Ust-Kamenogorsk
Kazakhstan
Phone: +7-705-501-6001
Email: info@linuxcenter.kz
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
USA
Phone: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
FTP Õ¾µã
¹Ù·½µÄ &os; Ô´´úÂë¿ÉÒԴӱ鲼ȫÇòµÄ¾µÏñÕ¾µã
ͨ¹ýÄäÃû FTP ÏÂÔØ¡£ Õ¾µã
ÓÐ×ÅÁ¼ºÃµÄÍøÂçÁ¬½Ó²¢ÇÒÔÊÐí´óÁ¿µÄ²¢·¢Á¬½Ó£¬ µ«ÊÇ
Äú»òÐí¸üÏëÕÒÒ»¸ö ¸ü½üµÄ
¾µÏñÕ¾µã (ÌØ±ðÊǵ±ÄúÏë½øÐÐijÖÖÐÎʽµÄ¾µÏñµÄʱºò)¡£
&os; ¿ÉÒÔ´ÓÏÂÃæÕâЩ¾µÏñÕ¾µãͨ¹ýÄäÃû FTP
ÏÂÔØ¡£Èç¹ûÄúÑ¡ÔñÁËͨ¹ýÄäÃû FTP »ñÈ¡ &os;£¬
Ç뾡Á¿Ê¹ÓÃÀëÄú±È½Ï½üµÄÕ¾µã¡£±»ÁÐΪ
Ö÷¾µÏñÕ¾µã
µÄ¾µÏñÕ¾µãÒ»°ã¶¼ÓÐÍêÕûµÄ &os; Îļþ
(Õë¶ÔÿÖÖÌåϵ½á¹¹µÄËùÓе±Ç°¿ÉÓõİ汾)£¬
Äú»òÐí´ÓÄúËùÔڵĹú¼Ò»òµØÇøµÄÕ¾µãÏÂÔØ»áµÃµ½¸ü¿ìµÄÏÂÔØËÙ¶È¡£
ÿ¸öÕ¾µãÌṩÁË×îÁ÷ÐеÄÌåϵ½á¹¹µÄ×î½üµÄ°æ±¾¶øÓпÉÄܲ»ÌṩÍêÕûµÄ
&os; ´æµµ¡£ËùÓеÄÕ¾µã¶¼ÌṩÄäÃû FTP
·ÃÎʶøÓÐЩվµãÒ²ÌṩÆäËûµÄ·ÃÎÊ·½Ê½¡£¶Ôÿ¸öÕ¾µã¿ÉÓõķÃÎÊ·½Ê½
ÔÚÆäÖ÷»úÃûºóÓÐËù˵Ã÷¡£
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
BitTorrent
BitTorrent
»ù±¾·¢Ðаæ CD µÄ ISO ¾µÏñÒ²¿ÉÒÔͨ¹ý BitTorrent »ñµÃ¡£
Óû§ÏÂÔØ¾µÏñµÄ torrent ÎļþÄܹ»ÔÚÕâÀïÕÒµ½ http://torrents.freebsd.org:8080
BitTorrent ¿Í»§¶ËÈí¼þ¿ÉÒÔ´ÓÕâ¸ö port
net-p2p/py-bittorrent
»òÔ¤±àÒëµÄ¶þ½øÖưü°²×°¡£
ÔÚͨ¹ý BitTorrent ÏÂÔØÁË ISO ¾µÏñÖ®ºó£¬
Äã¿ÉÒÔÕÕ×Å burncd
ÖеÄËùÃèÊöµÄ·½·¨ÉÕ¼µ½ CD »ò DVD ½éÖÊÉÏ¡£
ÄäÃû CVS
-
- ¸ÅÊö
+
+ ¸ÅÊö
CVS
ÄäÃû
ÄäÃû CVS(»òÈËÃdz£ËµµÄ
anoncvs )ÊÇÓÉºÍ &os; ¸½´øµÄ CVS ʵÓù¤¾ßÌṩµÄÓÃÓÚºÍÔ¶³ÌµÄ
CVS ´úÂë¿âͬ²½µÄÒ»ÖÖÌØÐÔ¡£
ÓÈÆäÊÇ£¬ ËüÔÊÐí &os; Óû§²»ÐèÒªÌØÊâµÄȨÏÞ¶ÔÈκÎһ̨ &os; ÏîÄ¿µÄ¹Ù·½
anoncvs ·þÎñÆ÷Ö´ÐÐÖ»¶ÁµÄ CVS ²Ù×÷¡£
ҪʹÓÃËü£¬¼òµ¥µÄÉèÖà CVSROOT
»·¾³±äÁ¿Ö¸ÏòÊʵ±µÄ anoncvs ·þÎñÆ÷£¬
ÊäÈë cvs login ÃüÁî
²¢Ìṩ¹ãΪÈËÖªµÄÃÜÂëanoncvs
£¬È»ºóʹÓÃ
&man.cvs.1; ÃüÁîÏñ·ÃÎÊÈκα¾µØ²Ö¿âÒ»ÑùÀ´·ÃÎÊËü¡£
cvs login ÃüÁî°ÑÓÃÀ´µÇ¼ CVS
·þÎñÆ÷µÄÃÜÂë´¢´æÔÚÄúµÄ HOME Ŀ¼ÖÐÒ»¸ö½Ð
.cvspass µÄÎļþÀï¡£
Èç¹ûÕâ¸öÎļþ²»´æÔÚ£¬
µÚÒ»´ÎʹÓà cvs
login µÄʱºò¿ÉÄÜ»á³ö´í¡£ Çë´´½¨Ò»¸ö¿ÕµÄ
.cvspass Îļþ£¬È»ºóÊÔÊÔÖØÐµÇ¼¡£
Ò²¿ÉÒÔÕâô˵ CVSup ºÍ anoncvs
·þÎñ±¾ÖÊÉÏÌṩÁËͬÑùµÄ¹¦ÄÜ£¬µ«ÊÇÓи÷ÖÖ¸÷Ñù
²»Í¬µÄ³¡ºÏ¿ÉÒÔÓ°ÏìÓû§¶Ôͬ²½·½Ê½µÄÑ¡Ôñ¡£¼òµ¥À´Ëµ£¬
CVSup ÔÚÍøÂç×ÊÔ´ÀûÓ÷½Ãæ
¸ü¼ÓÓÐЧ£¬¶øÇÒÊǵ½Ä¿Ç°ÎªÖ¹ÔÚÁ½ÕßÖ®Öм¼ÊõÉϸü³ÉÊìµÄ
³ýÁ˳ɱ¾·½Ã档ҪʹÓÃ
CVSup £¬ÔÚÏÂÔØÈκζ«Î÷֮ǰ
±ØÐëÊ×ÏȰ²×°ÅäÖÃÌØ¶¨µÄ¿Í»§¶Ë£¬
¶øÇÒÖ»ÄÜÓÃÓÚÏÂÔØÏ൱´ó¿éµÄ
CVSup ³Æ×÷
collections ¡£
Ïà±È֮ϣ¬anoncvs ¿ÉÒÔͨ¹ý CVS
Ä£¿éÃûÀ´´Óµ¥¸öÎļþÀï¼ì³öÈκζ«Î÷²¢¸³¸øÌض¨µÄ³ÌÐò
(±ÈÈç ls »òÕß grep )¡£
µ±È»£¬anoncvs Ò²Ö»ÊÊÓÃÓÚ¶Ô
CVS ²Ö¿âµÄÖ»¶Á²Ù×÷£¬ËùÒÔÈç¹ûÄúÊÇÏëÓÃºÍ &os; ÏîÄ¿¹²ÏíµÄ²Ö¿âÌṩ±¾µØ¿ª·¢µÄ»°£¬
CVSup ¼¸ºõÊÇÄúΨһµÄÑ¡Ôñ¡£
-
- ʹÓÃÄäÃû CVS
+
+ ʹÓÃÄäÃû CVS
ÅäÖà &man.cvs.1; ʹÓÃÄäÃû CVS ²Ö¿â¿ÉÒÔ¼òµ¥µÄÉ趨
CVSROOT »·¾³±äÁ¿Ö¸Ïò &os; ÏîÄ¿µÄ
anoncvs ·þÎñÆ÷Ö®Ò»¡£ µ½´ËÊéд×÷Ϊֹ£¬
ÏÂÃæµÄ·þÎñÆ÷¶¼ÊÇ¿ÉÓõģº
·¨¹ú :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(ʹÓà pserver ģʽʱ£¬ Óà cvs login
ÅäºÏ¿ÚÁî anoncvs
À´µÇ¼¡£
Èç¹ûʹÓõÄÊÇ ssh£¬ Ôò²»ÐèÒª¿ÚÁî¡£)
̨Íå µØÇø:
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(ʹÓà pserver ģʽʱ£¬ Óà cvs login
ÅäºÏ¿ÚÁî anoncvs
À´µÇ¼¡£
Èç¹ûʹÓõÄÊÇ ssh£¬ Ôò²»ÐèÒª¿ÚÁî¡£)
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
ÃÀ¹ú :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ʹÓà ssh ʱ£¬
ÇëʹÓÃÐÒé°æ±¾ 2£¬ ²»ÐèÒª¿ÚÁî¡£)
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
ÒòΪ CVS ʵ¼ÊÉÏÔÊÐí ¼ì³ö
Ôø¾´æÔÚµÄ (»òÕߣ¬Ä³ÖÖÇé¿öϽ«»á´æÔÚ)
&os; Ô´´úÂëµÄÈÎÒâ°æ±¾£¬ ÄúÐèÒªÊìϤ
&man.cvs.1; µÄ°æ±¾ (-r ) ²ÎÊý£¬
ÒÔ¼°ÔÚ &os; ´úÂë¿âÖпÉÓõÄÖµ¡£
ÓÐÁ½ÖÖ±êÇ©£¬ÐÞ¶©±êÇ©ºÍ·ÖÖ§±êÇ©¡£
ÐÞ¶©±êÇ©ÌØÖ¸Ò»¸öÌØ¶¨µÄÐÞ¶©°æ±¾¡£º¬ÒåʼÖÕÊDz»±äµÄ¡£
·ÖÖ§±êÇ©£¬ÁíÒ»·½Ã棬
Ö¸´ú¸ø¶¨Ê±¼ä¸ø¶¨¿ª·¢·ÖÖ§µÄ×îÐÂÐÞ¶©£¬
ÒòΪ·ÖÖ§±êÇ©²»Éæ¼°ÌØ¶¨µÄÐÞ¶©°æ±¾£¬
ËüÃ÷ÌìËù´ú±íµÄº¬Òå¾Í¿ÉÄܺͽñÌìµÄ²»Í¬¡£
°üÀ¨ÁËÓû§¿ÉÄܸÐÐËȤµÄ
ÐÞ¶©±êÇ©¡£ Çë×¢Ò⣬ ÕâЩ±êÇ©²¢²»ÊÊÓÃÓÚ Ports Collection£¬
ÒòΪËü²¢²»°üº¬¶à¸ö¿ª·¢·ÖÖ§¡£
µ±ÄúÖ¸¶¨Ò»¸ö·ÖÖ§±êÇ©£¬Äúͨ³£»áµÃµ½ÄǸö¿ª·¢·ÖÖ§µÄÎļþµÄ×îа汾¡£
Èç¹ûÄúÏ£ÍûµÃµ½Ò»Ð©¾ÉµÄ°æ±¾£¬Äú¿ÉÒÔÓÃ
-D date ±ê¼ÇÖÆ¶¨Ò»¸öÈÕÆÚ¡£
²ì¿´ &man.cvs.1; ÊÖ²áÒ³Á˽â¸ü¶àϸ½Ú¡£
ʾÀý
ÔÚÕâ֮ǰǿÁÒ½¨ÒéÄúͨ¶Á &man.cvs.1; µÄÊÖ²áÒ³£¬
ÕâÀïÓÐһЩ¼òµ¥µÄÀý×ÓÀ´Õ¹Ê¾ÈçºÎʹÓÃÄäÃû
CVS£º
´Ó -CURRENT ¼ì³öЩ¶«Î÷ (&man.ls.1;)£º
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
>ÔÚÌáʾ·û´¦£¬ÊäÈëÈÎÒâÃÜÂë password
.
&prompt.user; cvs co ls
ͨ¹ý SSH ¼ì³öÕû¸ö src/
´úÂëÊ÷£º
&prompt.user; 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.
¼ì³ö 8-STABLE ·ÖÖ§ÖÐµÄ &man.ls.1; °æ±¾£º
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
ÔÚÌáʾ·û´¦£¬ÊäÈëÈÎÒâÃÜÂë password
¡£
&prompt.user; cvs co -rRELENG_8 ls
´´½¨ &man.ls.1; µÄ±ä»¯Áбí(Óñê×¼µÄ diff)
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
ÔÚÌáʾ·û´¦£¬ÊäÈëÈÎÒâÃÜÂë password
¡£
&prompt.user; cvs rdiff -u -rRELENG_8_0_0_RELEASE -rRELENG_8_1_0_RELEASE ls
ÕÒ³ö¿ÉÒÔʹÓÃµÄÆäËüµÄÄ£¿éÃû£º
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
ÔÚÌáʾ·û´¦£¬ÊäÈëÈÎÒâÃÜÂë password
¡£
&prompt.user; cvs co modules
&prompt.user; more modules/modules
ÆäËû×ÊÔ´
ÏÂÃæ¸½¼ÓµÄ×ÊÔ´¿ÉÄܶÔѧϰ
CVS ÓаïÖú£º
CVS ½Ì³Ì £¬
À´×Ô¼ÓÖÝÖÝÁ¢Àí¹¤´óѧ¡£
CVS Ö÷Ò³ £¬
CVS ¿ª·¢ºÍÖ§³ÖÉçÇø¡£
CVSweb ÊÇ
&os; ÏîÄ¿µÄ CVS web ½çÃæ¡£
ʹÓà CTM
CTM
CTM ÊDZ£³ÖÔ¶³ÌĿ¼Ê÷ºÍÖÐÑë·þÎñÆ÷Ŀ¼Ê÷ͬ²½µÄÒ»ÖÖ·½·¨¡£
Ëü±»¿ª·¢ÓÃÓÚ &os; µÄÔ´´úÂëÊ÷£¬ËäÈ»ÆäËûÈËËæ×Åʱ¼äÍÆÒÆ»á·¢ÏÖËü¿ÉÒÔÓÃÓÚÆäËûÄ¿µÄ¡£
µ±Ç°¼¸ºõûÓУ¬Ò²»òÕßÖ»ÓкÜÉÙµÄÎĵµ½²Êö´´½¨ deltas µÄ²½Ö裬
ËùÒÔÈç¹ûÄúÏ£ÍûʹÓà CTM È¥×öÆäËüÊÂÇ飬
ÇëÁªÏµ &a.ctm-users.name; ÓʼþÁбíÁ˽â¸ü¶àÐÅÏ¢¡£
ΪʲôÎÒ¸ÃʹÓà CTM ?
CTM »á¸øÄúÒ»·Ý &os;
Ô´´úÂëÊ÷µÄ±¾µØ¸±±¾¡£ ´úÂëÊ÷ÓкܶàµÄ
flavors
¿ÉÓᣲ»¹ÜÄúÊÇÏ£Íû¸ú×ÙÍêÕûµÄ CVS Ê÷»¹ÊÇÖ»ÊÇÒ»¸ö·ÖÖ§£¬
CTM ¶¼»á¸øÄúÌṩÐÅÏ¢¡£
Èç¹ûÄúÊÇ &os; ÉϵÄÒ»¸ö»îÔ¾µÄ¿ª·¢Õߣ¬µ«ÊÇȱ·¦»òÕß²»´æÔÚ TCP/IP Á¬½Ó£¬»òÕßÖ»ÊÇÏ£Íû°Ñ±ä»¯×Ô¶¯·¢Ë͸øÄú£¬
CTM ¾ÍÊÇÊʺÏÄúµÄ¡£¶ÔÓÚ×î»ý¼«µÄ·ÖÖ§
Äú½«»áÿÌì»ñµÃÈý¸öÒÔÉ쵀 deltas¡£
È»¶ø£¬ÄúÓ¦¸Ã¿¼ÂÇͨ¹ýÓʼþÀ´×Ô¶¯·¢ËÍ¡£
Éý¼¶µÄ´óС×ÜÊDZ£Ö¤¾¡¿ÉÄܵÄС¡£
ͨ³£Ð¡ÓÚ 5K£¬Ò²Å¼È»(Ê®·ÖÖ®Ò»¿ÉÄÜ)»áÓÐ 10-50K£¬Ò²²»Ê±µØÓиö´óµÄ 100K+ ÉõÖÁ¸ü´óµÄ¡£
ÄúÒ²ÐèÒªÈÃ×Ô¼ºÁ˽âÖ±½ÓºÍ¿ª·¢´úÂë¶ø²»ÊÇÔ¤·¢Ðа汾´ò½»µÀµÄ¸÷ÖÖ¾¯¸æ¡£ÕâÖÖÇé¿ö»áºÜÏÔÖø£¬
Èç¹ûÄúÑ¡ÔñÁË current
´úÂëµÄ»°¡£Ç¿ÁÒ½¨ÒéÄúÔĶÁ ºÍ
&os; ±£³Öͬ²½¡£
ʹÓÃ
CTM ÎÒÐèÒª×öʲô£¿
ÄúÐèÒªÁ½Ñù¶«Î÷£ºCTM
³ÌÐò£¬»¹ÓгõʼµÄ deltas À´ feed it(´ïµ½
current
¼¶±ð)¡£
CTM ³ÌÐò´Ó°æ±¾ 2.0 ·¢²¼ÒÔÀ´
ÒѾÊÇ &os; µÄÒ»²¿·ÖÁË£¬Èç¹ûÄú°²×°ÁËÔ´´úÂ븱±¾µÄ»°£¬ ËüλÓÚ
/usr/src/usr.sbin/ctm ¡£
Äúι¸ø CTM µÄ deltas
¿ÉÒÔÓÐÁ½ÖÖ·½Ê½£¬FTP »òÕß email¡£
Èç¹ûÄúÓÐÆÕͨµÄ·ÃÎÊ Internet µÄ FTP ȨÏÞ£¬
ÄÇôÏÂÃæµÄ FTP Õ¾µãÖ§³Ö·ÃÎÊ
CTM £º
»òÕß¿´¿´ÕâһС½Ú ¾µÏñ¡£
FTP ·ÃÎÊÏà¹ØµÄĿ¼²¢È¡µÃ
README Îļþ£¬´ÓÄÇÀ↑ʼ¡£
Èç¹ûÄúÏ£Íûͨ¹ý email µÃµ½ÄúµÄ deltas£º
¶©ÔÄÒ»¸ö
CTM ·Ö·¢ÁÐ±í¡£
&a.ctm-cvs-cur.name; Ö§³ÖÍêÕûµÄ CVS Ê÷¡£
&a.ctm-src-cur.name; Ö§³Ö×îеĿª·¢·ÖÖ§¡£
&a.ctm-src-7.name; Ö§³Ö 7.X ·¢ÐзÖÖ§£¬
µÈµÈ¡£¡£(Èç¹ûÄú²»ÖªµÀÈçºÎ¶©ÔÄÓʼþÁÐ±í£¬
µã»÷ÉÏÃæµÄÁбíÃû»òÕßµ½
&a.mailman.lists.link; µã»÷ÄúÏ£Íû¶©ÔĵÄÁÐ±í¡£
ÁбíÒ³°üº¬ÁËËùÓбØÒªµÄ¶©ÔÄÖ¸µ¼¡£)
µ±Äú¿ªÊ¼½ÓÊÕµ½ÄúÓʼþÖÐµÄ CTM
Éý¼¶Ê±£¬Äú¿ÉÒÔʹÓÃ
ctm_rmail ³ÌÐòÀ´½âѹ²¢Ó¦ÓÃËüÃÇ¡£
ÊÂʵÉÏÈç¹ûÄúÏëÒªÈýø³ÌÒÔÈ«×Ô¶¯µÄÐÎʽÔËÐеϰ£¬Äú¿ÉÒÔͨ¹ýÔÚ
/etc/aliases ÖÐÉèÖÃÖ±½ÓʹÓà ctm_rmail ³ÌÐò¡£
²é¿´ ctm_rmail ÊÖ²áÒ³Á˽â¸ü¶àϸ½Ú¡£
²»¹ÜÄúʹÓÃʲô·½·¨µÃµ½
CTM deltas£¬Äú¶¼Ó¦¸Ã¶©ÔÄ
&a.ctm-announce.name; ÓʼþÁÐ±í¡£
ÒÔºó»áÓе¥¶ÀµÄµØ·½Ìá½»ÓйØ
CTM ϵͳµÄ²Ù×÷µÄ¹«¸æ¡£
µã»÷ÉÏÃæµÄÓʼþÁбíÃû²¢°´ÕÕָʾ¶©ÔÄÓʼþÁÐ±í¡£
µÚÒ»´ÎʹÓà CTM
ÔÚÄú¿ªÊ¼Ê¹Óà CTM
delta ֮ǰ£¬ÄúÐèÒª»ñµÃÒ»¸öÆðʼµã¡£
Ê×ÏÈÄúÓ¦¸ÃÈ·¶¨ÄúÒѾÓÐÁËʲô¡£Ã¿¸öÈ˶¼¿ÉÒÔ´ÓÒ»¸ö¿Õ
Ŀ¼¿ªÊ¼¡£
Äú±ØÐëÓÃÒ»¸ö³õʼµÄ ¿ÕµÄ
delta À´¿ªÊ¼ÄúµÄ
CTM Ö§³ÖÊ÷¡£Ôø¾ÎªÁËÄúµÄ±ãÀûÕâЩ
Æðʼ
deltas ±»ÓÐÒâµÄͨ¹ý CD À´·¢ÐУ¬
È»¶øÏÖÔÚÒѾ²»ÕâÑù×öÁË¡£
ÒòΪ´úÂëÊ÷ÓÐÊýÊ®Õ××Ö½Ú£¬ÄúÓ¦¸Ã¸üϲ»¶´ÓÊÖÍ·ÉÏÒѾÓеĶ«Î÷¿ªÊ¼¡£Èç¹ûÄúÓÐÒ»ÕÅ
-RELEASE CD ¹âÅÌ£¬Äú¿ÉÒÔ´ÓÀïÃæ¸´ÖÆ»òÕß½âѹËõÒ»·Ý³õʼ´úÂë³öÀ´¡£
Õâ»á½ÚÊ¡·Ç³£¶àµÄÊý¾Ý´«ÊäÁ¿¡£
Äú»á·¢ÏÖÕâЩ³õʼµÄ
deltas Ãû×ÖµÄÊý×ÖºóÃæ¶¼Óиö
X (±ÈÈç src-cur.3210XEmpty.gz )¡£
ºóÃæ¼ÓÒ»¸ö X µÄÉè¼Æ·ûºÏÄúµÄ³õʼ seed
µÄÓÉÀ´¡£
Empty ÊÇÒ»¸ö¿ÕĿ¼¡£Í¨³£Ò»¸ö»ù±¾µÄ´Ó
Empty ¿ªÊ¼µÄת»»ÓÉ
100 ¸ö deltas ¹¹³É¡£Ë³±ã˵һÏ£¬ËûÃǶ¼ºÜ´ó£¡70 µ½ 80
Õ××Ö½ÚµÄ gzip ѹËõµÄÊý¾Ý¶ÔÓÚ
XEmpty deltas ÊÇºÜÆ½³£µÄ¡£
Ò»µ©ÄúÒѾѡ¶¨ÁËÒ»¸ö»ù±¾µÄ delta ¿ªÊ¼£¬Äú¾ÍÐèÒª±ÈÕâ¸öÊý¸ßµÄËùÓÐµÄ delta¡£
ÔÚÄúµÄÈÕ³£Éú»îÖÐʹÓà CTM
ÒªÓ¦Óà deltas£¬¼òµ¥µÄ¼üÈ룺
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM Äܹ»Àí½â±»
gzip ѹËõµÄ deltas£¬ËùÒÔÄú²»ÐèÒªÏÈ
gunzip ËûÃÇ£¬Õâ¿ÉÒÔ½ÚÊ¡´ÅÅ̿ռ䡣
³ý·Ç¾õµÃÕû¸ö¹ý³Ì·Ç³£¿É¿¿£¬
CTM ²»»áÉæ¼°µ½ÄúµÄ´úÂëÊ÷µÄ¡£ÄúÒ²¿ÉÒÔʹÓÃ
-c ±ê¼ÇÀ´Ð£Ñé delta£¬
ÕâÑù CTM ¾Í²»»áÉæ¼°´úÂëÊ÷£»
Ëü»áֻУÑé delta µÄÍêÕûÐÔ¿´¿´ÊÇ·ñ¿ÉÒÔ°²È«µÄÓÃÓÚÄúµÄµ±Ç°´úÂëÊ÷¡£
CTM »¹ÓÐÆäËûµÄһЩ²ÎÊý£¬
²é¿´ÊÖ²áÒ³»òÕßÔ´´úÂëÁ˽â¸ü¶àÐÅÏ¢¡£
ÕâÕæµÄ¾ÍÊÇÈ«²¿µÄÊÂÇéÁË¡£Ã¿´ÎµÃµ½Ò»¸öеÄ
delta£¬¾Íͨ¹ý CTM ÔËÐÐËüÀ´±£Ö¤ÄúµÄ´úÂëÊÇ×îеġ£
Èç¹ûÕâЩ deltas ºÜÄÑÖØÐÂÏÂÔØµÄ»°²»ÒªÉ¾³ýËüÃÇ¡£
ÓÐЩ¶«Î÷»µµôµÄʱºòÄú»áÏëµ½±£ÁôËüÃǵġ£
¼´Ê¹ÄúÖ»ÓÐÈíÅÌ£¬Ò²Ç뿼ÂÇʹÓÃ
fdwrite À´×öÒ»·Ý¸±±¾¡£
ά³ÖÄú±¾µØµÄ±ä¶¯
×÷ΪһÃû¿ª·¢Õßϲ»¶ÊµÑ飬¸Ä¶¯´úÂëÊ÷ÖеÄÎļþ¡£
CTM
ÓÃÒ»ÖÖÊÜÏ޵ķ½Ê½Ö§³Ö±¾µØÐ޸ģºÔÙ¼ì²éÎļþ
foo ´æÔÚ֮ǰ£¬Ê×ÏȲéÕÒ
foo.ctm ¡£Èç¹ûÕâ¸öÎļþ´æÔÚ£¬
CTM »á¶ÔËü²Ù×÷¶ø²»ÊÇ
foo ¡£
ÕâÖÖÐÐΪ¸øÎÒÃÇÌṩÁËÒ»ÖÖ¼òµ¥µÄ·½Ê½À´Î¬³Ö±¾µØµÄ¸Ä¶¯£º
Ö»Òª¸´ÖÆÄú¼Æ»®Ð޸ĵÄÎļþ²¢ÓÃ
.ctm µÄºó×ºÖØÐÂÃüÃû¡£
È»ºó¾Í¿ÉÒÔ×ÔÓɵÄÐ޸ĴúÂëÁË£¬CTM »á¸üÐÂ
.ctm Îļþµ½×îа汾¡£
ÆäËûÓÐȤµÄ CTM Ñ¡Ïî
ÕýÈ·µÄÕÒ³öÄÄЩ½«±»¸üÐÂ
Äú¿ÉÒÔÈ·¶¨±ä¶¯ÁÐ±í£¬
CTM ¿ÉÒÔ×öµ½£¬ÔÚÄúµÄ´úÂë¿âÉÏʹÓÃ
CTM µÄ
-l Ñ¡Ïî¡£
ÕâºÜÓÐÓÃÈç¹ûÄúÏëÒª±£´æ¸Ä¶¯µÄÈÕÖ¾£¬
pre- »òÕß post- Óø÷ÖÖ·ç¸ñ´¦ÀíÐ޸ĵÄÎļþµÄ¼Í¼£¬
»òÕß½ö½öÊÇÏë¸ÐÊÜһϺ¢×Ó°ãµÄ·è¿ñ¡£
ÔÚÉý¼¶Ç°ÖÆ×÷±¸·Ý
ÓÐʱÄú¿ÉÄÜÏ뱸·Ý½«Òª±» CTM
Éý¼¶Ëù¸Ä¶¯µÄËùÓÐÎļþ¡£
Ö¸¶¨ -B backup-file Ñ¡Ïî»áµ¼ÖÂ
CTM ±¸·Ý½«Òª±»¸ø¶¨µÄ CTM
delta ¸Ä¶¯µÄËùÓÐÎļþµ½ backup-file ¡£
ÏÞ¶¨ÊÜÉý¼¶Ó°ÏìµÄÎļþ
ÓÐʱÄú¿ÉÄܶÔÏÞ¶¨Ò»¸ö¸ø¶¨µÄ CTM
Éý¼¶µÄ·¶Î§¸ÐÐËȤ£¬Ò²ÓпÉÄÜÏëÖªµÀÔõÑù´ÓÒ»ÁÐ deltas ÖнâѹËõÒ»²¿·ÖÎļþ¡£
Äú¿ÉÒÔͨ¹ýʹÓà -e ºÍ -x
Ñ¡ÏîÖ¸¶¨¹ýÂ˹æÔò±í´ïʽÀ´¿ØÖÆ CTM
¼´½«¶ÔÖ®²Ù×÷µÄÎļþÁÐ±í¡£
ÀýÈ磬Ҫ´ÓÄú±£´æµÄCTM deltas
¼¯Àï½âѹËõ³öÒ»¸ö×îÐ嵀 lib/libc/Makefile
Îļþ£¬ÔËÐÐÕâ¸öÃüÁ
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
¶ÔÓÚÿһ¸öÔÚ CTM
delta ÖÐÖ¸¶¨µÄÎļþ£¬-e
ºÍ -x Ñ¡Ïî°´ÕÕÃüÁîÐиø¶¨µÄ˳ÐòÓ¦Óá£
ÎļþÖ»ÓÐÔÚËùÓÐµÄ -e ºÍ
-x ±»Ó¦ÓÃÖ®ºó±ê¼ÇΪºÏ¸ñÖ®ºó
²ÅÄܱ» CTM ²Ù×÷¡£
CTM δÀ´µÄ¼Æ»®
ÆäÖм¸Ï
ÔÚ CTM ÖÐʹÓÃһЩÈÏÖ¤·½Ê½£¬
ÕâÑùÀ´ÔÊÐí²ì¾õð³äµÄ CTM ²¹¶¡¡£
ÕûÀí CTM µÄÑ¡Ï
ËüÃDZäµÃÔÓÂÒ¶øÎ¥·´Ö±¾õÁË¡£
ÔÓÏî
Ò²ÓÐһϵÁеÄ
ports collection µÄ deltas£¬µ«ÊÇÈËÃǶÔËüµÄÐËÖ»¹Ã»ÓÐÄÇô¸ß¡£
CTM ¾µÏñ
CTM/&os; ¿ÉÒÔÔÚÏÂÃæµÄ¾µÏñÕ¾µãͨ¹ýÄäÃû
FTP ÏÂÔØ¡£Èç¹ûÄúÑ¡Ôñͨ¹ýÄäÃû FTP »ñÈ¡ CTM £¬
ÇëÊÔ×ÅʹÓÃÒ»¸öÀëÄú½Ï½üµÄÕ¾µã¡£
Èç¹ûÓÐÎÊÌ⣬ÇëÁªÏµ &a.ctm-users.name;
ÓʼþÁÐ±í¡£
¼ÓÀû¸£ÄáÑÇÖÝ£¬¾É½ðɽÍåÇø£¬¹Ù·½Ô´´úÂë
ÄÏ·Ç£¬¾ÉµÄ deltas µÄ±¸·Ý·þÎñÆ÷
Öйų́Íå
Èç¹ûÄúÔÚÄú¸½½üÕÒ²»µ½¾µÏñ»òÕß¾µÏñ²»ÍêÕû£¬
ÊÔ×ÅʹÓÃËÑË÷ÒýÇæ±ÈÈç
alltheweb .
ʹÓà CVSup
¸ÅÊö
CVSup ÊÇÒ»¸öÓÃÓÚ´ÓÔ¶³Ì·þÎñÆ÷Ö÷»úÉϵÄÖ÷
CVS ²Ö¿â·¢²¼ºÍÉý¼¶Ô´´úÂëÊ÷µÄÈí¼þ°ü¡£
&os; µÄÔ´´úÂëά»¤ÔÚ¼ÓÀû¸£ÄáÑÇÖÝһ̨Ö÷¿ª·¢·þÎñÆ÷µÄ CVS ²Ö¿âÀï¡£
ÓÐÁË CVSup £¬ &os;
Óû§¿ÉÒÔºÜÈÝÒ׵ı£³ÖËûÃÇ×Ô¼ºµÄÔ´´úÂëÊ÷¸üС£
CVSup ʹÓÃËùνµÄÉý¼¶
pull ģʽ¡£ÔÚ pull
ģʽÏ£¬¿Í»§¶ËÔÚÐèÒªµÄʱºòÏò·þÎñÆ÷¶ËÇëÇó¸üС£
·þÎñÆ÷±»¶¯µÄµÈ´ý¿Í»§¶ËµÄÉý¼¶ÇëÇó¡£
Òò´ËËùÓеÄÉý¼¶¶¼Êǿͻ§¶Ë·¢ÆðµÄ¡£
·þÎñÆ÷¾ö²»»á·¢ËÍδÇëÇóµÄÉý¼¶¡£Óû§±ØÐëÊÖ¶¯ÔËÐÐ
CVSup ¿Í»§¶Ë»ñÈ¡¸üУ¬
»òÕßÉèÖÃÒ»¸ö cron ×÷ÒµÀ´ÈÃËüÒԹ̶¨µÄ¹æÂÉ×Ô¶¯ÔËÐС£
ÊõÓï CVSup Óôóд×ÖĸдÕýÊDZíʾ£¬
´ú±íÁËÍêÕûµÄÈí¼þ°ü¡£ ËüµÄÖ÷Òª×é¼þÊÇÔËÐÐÔÚÿ¸öÓû§»úÆ÷ÉϵĿͻ§¶Ë cvsup £¬
ºÍÔËÐÐÔÚÿ¸ö &os; ¾µÏñÕ¾µãÉϵķþÎñÆ÷¶Ë cvsupd ¡£
µ±ÄúÔĶÁ &os; ÎĵµºÍÓʼþÁбíʱ£¬Äú¿ÉÄܻῴ¼û
sup ¡£
Sup ÊÇ
CVSup µÄǰÉí£¬ÓÐ×ÅÏàËÆµÄÄ¿µÄ¡£
CVSup ʹÓúܶàºÍ sup ÏàͬµÄ·½Ê½£¬
¶øÇÒ£¬ Ëü»¹ÊÇÓÃʹÓÃºÍ sup µÄ¼æÈݵÄÅäÖÃÎļþ¡£
Sup ÒѾ²»ÔÙ±» &os; ÏîĿʹÓÃÁË£¬
ÒòΪ CVSup ¼È¿ìÓÖÓиüºÃµÄÁé»îÐÔ¡£
csup ÊÇÓà C ÓïÑÔ¶Ô
CVSup Èí¼þµÄÖØÐ´¡£ Ëü×î´óµÄºÃ´¦ÊÇ£¬
Õâ¸ö³ÌÐò¸ü¿ìһЩ£¬ ²¢ÇÒÒ²²»ÐèÒªÒÀÀµÓÚ
Modula-3 ÓïÑÔ£¬ Òò´ËÒ²¾Í²»ÐèÒª°²×°ºóÕß¡£ ÁíÍ⣬
Äú¿ÉÒÔÖ±½ÓʹÓÃËü£¬ ÒòΪËüÊÇ»ù±¾ÏµÍ³µÄÒ»²¿·Ö¡£
¼ÙÈçÄú¾ö¶¨Ê¹ÓÃ
csup £¬ Ôò¿ÉÒÔÌø¹ý°²×° CVSup
ÕâÒ»²½£¬ ²¢ÔÚÎÄÕÂÖÐÓàϲ¿·ÖÌáµ½µÄ CVSup ¸ÄΪ
csup ¡£
°²×°
°²×° CVSup ×î¼òµ¥µÄ·½Ê½¾ÍÊÇʹÓÃ
&os; packages collection
ÖÐÔ¤±àÒëµÄ net/cvsup °ü¡£
Èç¹ûÄúÏë´ÓÔ´´úÂë¹¹½¨ CVSup £¬
Äú¿ÉÒÔʹÓà net/cvsup
port¡£µ«ÊÇÔ¤ÏȾ¯¸æÒ»Ï£º
net/cvsup port ÒÀÀµÓÚ Modula-3
ϵͳ£¬»á»¨·ÑÏ൱µÄʱ¼äºÍ´ÅÅ̿ռäÀ´ÏÂÔØ±àÒë¡£
Èç¹ûÏëÔÚûÓа²×° &xorg; µÄ¼ÆËã»ú£¬
ÀýÈç·þÎñÆ÷ÉÏʹÓÃ
CVSup £¬ ÔòÖ»ÄÜʹÓò»°üº¬
CVSup GUI
µÄ net/cvsup-without-gui ¡£
CVSup ÅäÖÃ
CVSup µÄ²Ù×÷±»Ò»¸ö½Ð×ö
supfile µÄÅäÖÃÎļþËù¿ØÖÆ¡£
ÔÚĿ¼ /usr/share/examples/cvsup/
ÏÂÃæÓÐһЩʾÀýµÄ supfiles ¡£
supfile ÖеÄÐÅÏ¢½â´ðÁË
CVSup ÏÂÃæµÄ¼¸¸öÎÊÌ⣺
ÄúÏë½ÓÊÕ
ÄÄЩÎļþ£¿
ÄúÏëÒªËüÃǵÄ
Äĸö°æ±¾£¿
ÄúÏë´ÓÄÄÀï
»ñÈ¡ËüÃÇ£¿
ÄúÏë°ÑËüÃÇ
·ÅÔÚÄú×Ô¼º»úÆ÷µÄʲôµØ·½£¿
ÄúÏë°Ñ
ÄúµÄ״̬Îļþ·ÅÔÚÄÄ£¿
ÔÚÏÂÃæµÄÕ½ÚÀÎÒÃÇͨ¹ýÒÀ´Î»Ø´ðÕâЩÎÊÌâÀ´´´½¨Ò»¸öµäÐ͵Ä
supfile Îļþ¡£Ê×ÏÈ£¬ÎÒÃÇÃèÊöÒ»ÏÂ
supfile µÄÕûÌå¹¹³É¡£
supfile ÊǸöÎı¾Îļþ¡£×¢ÊÍÓÃ
# ¿ªÍ·£¬ÖÁÐÐβÓÐЧ¡£
¿ÕÐкÍÖ»°üº¬×¢Ê͵ÄÐлᱻºöÂÔ¡£
ÿ¸ö±£ÁôÐÐÃèÊöÒ»ÅúÓû§Ï£Íû½ÓÊÕµÄÎļþ¡£
ÿÐÐÒÔ collection
£¬
ÓÉ·þÎñÆ÷¶Ë¶¨ÒåµÄºÏÀíµÄÎļþ·Ö×飬µÄÃû×Ö¿ªÍ·¡£
collection µÄÃû×Ö¸æËß·þÎñÆ÷ÄúÏëÒªµÄÎļþ¡£
collection Ãû×Ö½áÊø»òÕßÓиü¶àµÄ×ֶΣ¬Óÿոñ·Ö¸ô¡£
ÕâЩ×ֶλشðÁËÉÏÃæÁгöµÄÎÊÌâ¡£
×Ö¶ÎÀàÐÍÓÐÁ½ÖÖ£º±ê¼Ç×ֶκÍÖµ×ֶΡ£
±ê¼Ç×Ö¶ÎÓɶÀÁ¢µÄ¹Ø¼ü×Ö×é³É£¬±ÈÈ磬
delete »òÕß
compress ¡£Öµ×Ö¶ÎÒ²Óùؼü×Ö¿ªÍ·£¬
¹Ø¼ü×ÖºóÃæ¸ú = ºÍµÚ¶þ¸ö´Ê¶øÃ»Óпոñ¡£
ÀýÈ磬release=cvs ÊÇÒ»¸öÖµ×ֶΡ£
Ò»¸öµäÐ굀 supfile ÍùÍù½ÓÊÕ¶àÓÚÒ»¸öµÄ
collection¡£´´½¨
supfile µÄÒ»ÖÖ·½Ê½ÊÇÃ÷È·µÄΪÿһ¸ö
collection Ö¸¶¨Ïà¹ØµÄ×ֶΡ£È»¶ø£¬ÕâÑùʹµÃ
supfile µÄÐбäµÃÌØ±ð³¤£¬ºÜ²»·½±ã£¬
ÒòΪ supfile ÖеÄËùÓÐ collection µÄ´ó²¿·Ö
×ֶζ¼ÊÇÏàͬµÄ¡£
CVSup ÌṩÁËÒ»¸öĬÈÏ»úÖÆÀ´±ÜÃâ
ÕâЩÎÊÌâ¡£ÓÃÌØ¶¨µÄα collection Ãû *default
¿ªÍ·µÄÐпÉÒÔ±»ÓÃÀ´ÉèÖñê¼ÇºÍֵΪ supfile
ÖÐËæºóµÄ collection ÖеÄĬÈÏÖµ¡£
ĬÈÏÖµ¿ÉÒÔͨ¹ýΪÕâ¸ö collection ×ÔÉíÖ¸¶¨²»Í¬µÄÖµÀ´¶Ôµ¥¸öµÄ
collection ¸²¸ÇÉèÖã¬
Ò²¿ÉÒÔÔÚ mid-supfile ÖÐͨ¹ý¸½¼ÓµÄ
*default Ðиıä»òÀ©³ä¡£
ÖªµÀÁËÕâЩ£¬ÎÒÃÇÏÖÔھͿÉÒÔ¿ªÊ¼´´½¨Ò»¸ö
ÓÃÓÚ½ÓÊÕºÍÉý¼¶ &os;-CURRENT Ö÷Ô´´úÂëÊ÷µÄ
supfile ÎļþÁË¡£
ÄúÏë½ÓÊÕÄÄЩÎļþ£¿
ͨ¹ý CVSup ¿ÉÓõÄÎļþ×éÖ¯³É½Ð×ö
collections
µÄÃû³Æ×é¡£
ÕâЩ¿ÉÓÃµÄ collection ÔÚ ËæºóµÄÕÂ½Ú ÖÐÃèÊö¡£
ÔÚÕâ¸öÀý×ÓÀ
ÎÒÃÇÏ£Íû½ÓÊÕ &os; ϵͳµÄÍêÕûµÄÖ÷´úÂëÊ÷¡£
ÓÐÒ»¸öµ¥¶ÀµÄ´óµÄ collection
src-all ÈÃÎÒÃÇÍê³ÉÕâ¸ö¡£
´´½¨ÎÒÃǵÄ
supfile µÄµÚÒ»²½£¬
ÎÒÃǼòµ¥µÄÁгöÕâЩ collection£¬Ã¿¸öÒ»ÐÐ(ÔÚÕâ¸öÀý×ÓÀ
Ö»ÓÐÒ»ÐÐ)£º
src-all
ÄúÏëÒªËûÃǵÄ
Äĸö°æ±¾£¿
ͨ¹ý CVSup £¬Äúʵ¼ÊÉÏ¿ÉÒÔ½ÓÊÕ
Ôø¾´æÔÚµÄÔ´´úÂëµÄÈκΰ汾¡£
ÕâÊÇÓпÉÄܵģ¬ÒòΪ
cvsupd ·þÎñÆ÷Ö±½Óͨ¹ý
CVS ²Ö¿â¹¤×÷£¬Äǰüº¬ÁËËùÓеİ汾¡£Äú¿ÉÒÔ
Óà tag= ºÍ date= Öµ×Ö¶Î
Ö¸¶¨Ò»¸öÄúÏëÒªµÄ°æ±¾¡£
×ÐϸµÄÕýÈ·Ö¸¶¨ÈκΠtag=
×ֶΡ£ÓÐһЩ tag Ö»¶ÔÌØ¶¨µÄ collection ÎļþºÏ·¨¡£
Èç¹ûÄúÖ¸¶¨ÁËÒ»¸ö²»ÕýÈ·µÄ»òÕß
ƴд´íÎóµÄ tag£¬CVSup
»áɾ³ýÄú¿ÉÄܲ»Ïëɾ³ýµÄÎļþ¡£
ÌØ±ðµØ£¬¶Ô ports-*
collection Ö» ʹÓÃ
tag=. ¡£
tag= ×Ö¶ÎÔÚ²Ö¿âÖбíʾΪһ¸ö·ûºÅ±êÇ©¡£
ÓÐÁ½ÖÖ±êÇ©£¬ÐÞ¶©±êÇ©ºÍ·ÖÖ§±êÇ©¡£
ÐÞ¶©±êÇ©´ú±íÒ»¸öÌØ¶¨µÄÐÞ¶©°æ±¾¡£
ËüµÄº¬ÒåÊÇÒ»³É²»±äµÄ¡£
·ÖÖ§±êÇ©£¬ÁíÒ»·½Ã棬´ú±í¸ø¶¨¿ª·¢ÏßÉϸø¶¨Ê±¼äµÄ×îÐÂÐÞ¶©¡£
ÒòΪ·ÖÖ§±êÇ©²»´ú±íÒ»¸öÌØ¶¨µÄÐÞ¶©°æ±¾£¬
ËüÃ÷ÌìµÄº¬Òå¾Í¿ÉÄܺͽñÌìµÄÓÐËù²»Í¬¡£
°üº¬ÁËÓû§¿ÉÄܸÐÐËȤµÄ·ÖÖ§±êÇ©¡£
µ±ÔÚ CVSup µÄÅäÖÃÎļþÖÐÖ¸¶¨±êÇ©µÄʱºò£¬±ØÐëÓÃ
tag= ¿ªÍ·
(RELENG_8 »á±ä³É
tag=RELENG_8 )¡£
¼ÇסֻÓÐ tag=. ¿ÉÒÔÓÃÓÚ
Ports Collection¡£
×¢ÒâÏñ¿´µ½µÄÄÇÑùÕýÈ·µÄÊäÈë±êÇ©Ãû¡£
CVSup ²»Äܱæ±ðºÏ·¨ºÍ²»ºÏ·¨±êÇ©¡£
Èç¹ûÄúƴд´íÁ˱êÇ©Ãû£¬
CVSup
»áÏñÄúÖ¸¶¨ÁËÒ»¸öûÓÐÈκÎÎļþµÄºÏ·¨±êǩһÑù¹¤×÷£¬
ÄÇ»áɾ³ýÄúÒѾ´æÔڵĴúÂë¡£
µ±ÄúÖ¸¶¨Ò»¸ö·ÖÖ§±êÇ©µÄʱºò£¬Äúͨ³£»áÊÕµ½¿ª·¢ÏßÉÏÎļþµÄ×îа汾¡£
Èç¹ûÄúÏ£Íû½ÓÊÕһЩ¹ýʱµÄ°æ±¾£¬Äú¿ÉÒÔͨ¹ýÓÃ
date= Öµ×Ö¶ÎÖ¸¶¨Ò»¸öÈÕÆÚÀ´×öµ½¡£
&man.cvsup.1; ÊÖ²áÒ³½âÊÍÁËÈçºÎÀ´×ö¡£
¶ÔÓÚÎÒÃǵÄʾÀýÀ´Ëµ£¬ÎÒÃÇÏ£Íû½ÓÊÕ &os;-CURRENT¡£
ÎÒÃÇÔÚÎÒÃǵÄ
supfile µÄ¿ªÍ·Ìí¼ÓÕâÐУº
*default tag=.
ÓÐÒ»¸öÖØÒªµÄÌØÀý£¬
Èç¹ûÄú¼Èûָ¶¨ tag= ×Ö¶ÎҲûָ¶¨
date= ×ֶεÄÇé¿ö¡£ÕâÖÖÇé¿öÏ£¬
Äú»áÊÕµ½Ö±½ÓÀ´×ÔÓÚ·þÎñÆ÷ CVS ²Ö¿âµÄÕæÊµµÄ RCS Îļþ£¬
¶ø²»ÊÇÄ³Ò»ÌØ¶¨°æ±¾¡£
¿ª·¢ÈËÔ±Ò»°ãϲ»¶ÕâÖÖ²Ù×÷ģʽ¡£
ͨ¹ýÔÚËûÃǵÄϵͳÉÏά»¤Ò»·Ý²Ö¿â×ÔÉíµÄ¸±±¾£¬
ËûÃÇ¿ÉÒÔä¯ÀÀÐÞ¶©ÀúÊ·ÒÔ¼°¼ì²éÎļþ¹ýÈ¥µÄ°æ±¾¡£
È»¶ø£¬Õâ¸öºÃ´¦ÊÇÒÔ´óÁ¿µÄ´ÅÅ̿ռäΪ´ú¼ÛµÄ¡£
ÄúÏë´ÓÄÄÀï»ñÈ¡ËûÃÇ£¿
ÎÒÃÇʹÓà host= ×Ö¶ÎÀ´¸æËß
cvsup ´ÓÄÄÀï»ñÈ¡¸üС£
ÈκÎÒ»¸ö CVSup ¾µÏñÕ¾µã¶¼¿ÉÒÔ£¬
ËäÈ»ÄúÓ¦¸ÃÑ¡ÔñÒ»¸öÀëÄú±È½Ï½üµÄÕ¾µã¡£
ÔÚÕâ¸öÀý×ÓÀïÎÒÃǽ«Ê¹ÓÃÒ»¸öÐéÄâµÄ &os; ·¢²¼Õ¾µã£¬
cvsup99.FreeBSD.org £º
*default host=cvsup99.FreeBSD.org
ÄúÐèÒªÔÚÔËÐÐ CVSup
֮ǰ°ÑÕâ¸ö¸Ä³ÉÒ»¸öʵ¼Ê´æÔÚµÄÕ¾µã¡£
ÔÚÈκΠcvsup ÔËÐеÄÌØ¶¨Ê±¿Ì£¬
Äú¶¼¿ÉÒÔÔÚÃüÁîÐÐÉÏʹÓà -h
hostname Ñ¡ÏîÀ´¸²¸ÇÖ÷»úÉèÖá£
ÄúÏë°ÑËüÃÇ·ÅÔÚ
Äú×Ô¼º»úÆ÷µÄʲôµØ·½£¿
prefix= ×ֶθæËß
cvsup °Ñ½ÓÊÕµÄÎļþ·ÅÔÚÄÄÀï¡£
ÔÚÕâ¸öÀý×ÓÀÎÒÃǰÑÔ´´úÂëÎļþÖ±½Ó·Å½øÎÒÃǵÄÖ÷Ô´´úÂëÊ÷£¬
/usr/src ¡£
src Ŀ¼ÒѾÒþº¬ÔÚÎÒÃÇÑ¡Ôñ½ÓÊÕµÄ collection ÀïÁË£¬
ËùÒÔÕýÈ·µÄд·¨ÊÇ£º
*default prefix=/usr
cvsup ÔÚÄÄÀïά»¤ËüµÄ״̬Îļþ£¿
CVSup ¿Í»§¶ËÔÚ±»½Ð×ö base
µÄĿ¼Àïά»¤Á˼¸¸ö״̬Îļþ¡£ ÕâЩÎļþ°ïÖú
CVSup ¸üÓÐЧµÄ¹¤×÷£¬
ͨ¹ý¸ú×ÙÄúÒѾ½ÓÊÕµ½ÄÄЩ¸üеķ½Ê½¡£
ÎÒÃǽ«Ê¹Óñê×¼µÄ base Ŀ¼£¬
/var/db £º
*default base=/var/db
Èç¹ûÄúµÄ base Ŀ¼»¹²»´æÔÚ£¬ÏÖÔÚ×îºÃ´´½¨Ëü¡£
Èç¹û base Ŀ¼²»´æÔÚ£¬cvsup
¿Í»§¶Ë»á¾Ü¾ø¹¤×÷¡£
ÆäËûµÄ supfile
ÉèÖãº
ÔÚ supfile
ÖÐÓÐһЩÆäËûÑ¡ÏîÐèÒª½éÉÜһϣº
*default release=cvs delete use-rel-suffix compress
release=cvs ÏÔʾ·þÎñÆ÷Ó¦¸Ã´Ó &os; µÄÖ÷ CVS ²Ö¿âÖлñÈ¡ÐÅÏ¢¡£
ÊÂʵÉÏ×ÜÊÇÕâÑùµÄ£¬µ«ÊÇÒ²ÓпÉÄܻᳬ³öÕâ¸öÌÖÂ۵ķ¶Î§¡£
delete ¸ø
CVSup ȨÏÞɾ³ýÎļþ¡£
ÄúÓ¦¸Ã×ÜÊÇÖ¸¶¨Õâ¸ö£¬ÕâÑù
CVSup
¿ÉÒÔ±£Ö¤ÄúµÄÔ´´úÂëÊ÷ÍêÈ«¸üС£CVSup
ºÜСÐĵÄֻɾ³ýÄÇЩ²»ÔÙÒÀÀµµÄÎļþ¡£
ÄúÓµÓеÄÈκζîÍâµÄÎļþ»á±»ÑϸñµÄ±£Áô¡£
use-rel-suffix ÊÇ ... ²»¿É˼ÒéµÄ¡£
Èç¹ûÄúÕæµÄÏëÁ˽âËü£¬²é¿´ &man.cvsup.1; ÊÖ²áÒ³¡£
·ñÔò£¬¾ÍÖ¸¶¨¶ø²»Óõ£ÐÄÕâ¸ö¡£
compress ÆôÓà gzip ·ç¸ñµÄÐŵÀѹËõ¡£
Èç¹ûÄúµÄÍøÂçÁ¬½ÓÊÇ T1 »òÕ߸ü¿ì£¬ Äú¿ÉÄܲ»ÏëʹÓÃѹËõ¡£
·ñÔò£¬Ëü·Ç³£ÓаïÖú¡£
°ÑËüÃÇ·ÅÔÚÒ»Æð£º
ÕâÊÇÎÒÃǵÄʾÀýµÄÍêÕû supfile
Îļþ£º
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
refuse Îļþ
ÏñÉÏÃæÌáµ½µÄ£¬CVSup ʹÓÃÒ»ÖÖ
pull ·½·¨ ¡£»ù±¾ÉÏ£¬ÕâÒâζ×ÅÄúÒªÁ¬½Óµ½
CVSup ·þÎñÆ÷£¬·þÎñÆ÷˵£¬
ÕâÓÐЩÄúÄÜÏÂÔØµÄ¶«Î÷
...
£¬È»ºóÄúµÄ¿Í»§¶Ë·´Ó¦ºÃ£¬ÎÒÒªÕâ¸ö£¬
Õâ¸ö£¬Õâ¸ö£¬»¹ÓÐÕâ¸ö¡£
ÔÚĬÈϵÄÅäÖÃÖУ¬
CVSup ¿Í»§¶Ë»áÈ¡»ØÄúÔÚÅäÖÃÎļþÖÐÑ¡¶¨µÄ
collection ºÍ±êÇ©µÄÿ¸öÎļþ¡£
È»¶ø£¬²¢²»×ÜÊÇÄúÏëÒªµÄ£¬
ÓÈÆäÊÇÄúÔÚͬ²½ doc £¬ports £¬»òÕß
www Ê÷ — ´ó²¿·ÖÈ˶¼²»ÄÜÔĶÁËÄÖÖ»òÕßÎåÖÖ
ÓïÑÔ£¬Òò´ËËûÃDz»ÐèÒªÏÂÔØÌØ¶¨ÓïÑÔµÄÎļþ¡£
Èç¹ûÄúÔÚ CVSup Ports Collection£¬Äú
¿ÉÒÔͨ¹ýµ¥¶ÀÖ¸¶¨Ã¿¸ö collection À´±ÜÃâÕâ¸ö
(±ÈÈ磬ports-astrology £¬
ports-biology £¬µÈµÈÈ¡´ú¼òµ¥µÄ˵Ã÷
ports-all )¡£È»¶ø£¬ÒòΪ doc
ºÍ www Ê÷ûÓÐÌØ¶¨ÓïÑ﵀ collection£¬Äú±ØÐë
ʹÓà CVSup Ðí¶à¼«ºÃµÄÌØÐÔÖ®Ò»£º
refuse Îļþ¡£
refuse Îļþ±¾ÖÊÉÏÊǸæËß
CVSup Ëü²»Ó¦¸Ã´Ó collection
ÖÐÈ¡µÃijЩÎļþ£»»»¾ä»°Ëµ£¬Ëü¸æË߿ͻ§¶Ë
¾Ü¾ø À´×Ô·þÎñÆ÷µÄÌØ¶¨µÄÎļþ¡£
refuse Îļþ¿ÉÒÔÔÚ
base /sup/
ÖÐÕÒµ½(»òÕߣ¬Èç¹ûÄúûÓУ¬Ó¦¸Ã´´½¨Ò»¸ö)¡£
base ÔÚÄúµÄ supfile Öж¨Ò壻
ĬÈÏÇé¿öÏ£¬base ¾ÍÊÇ
/var/db £¬
ÕâÒâζ×ÅĬÈ쵀 refuse Îļþ¾ÍÊÇ
/var/db/sup/refuse ¡£
refuse ÎļþµÄ¸ñʽºÜ¼òµ¥£»
Ëü½ö½ö°üº¬Äú²»Ï£ÍûÏÂÔØµÄÎļþºÍĿ¼Ãû¡£
ÀýÈ磬Èç¹ûÄú³ýÁËÓ¢ÓïºÍµÂÓïÖ®Íâ²»»á½²ÆäËûÓïÑÔ£¬
¶øÇÒÒ²²»´òËãÔĶÁµÂÎĵÄÎĵµ·Òë°æ±¾£¬
Ôò¿ÉÒÔ°ÑÏÂÃæÕâЩ·ÅÔÚÄúµÄ
refuse ÎļþÀ
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_*
µÈµÈÆäËûÓïÑÔ(Äú¿ÉÒÔͨ¹ýä¯ÀÀ
&os;
CVS ²Ö¿â ÕÒµ½ÍêÕûµÄÁбí)¡£
ÓÐÕâ¸ö·Ç³£ÓÐÓõÄÌØÐÔ£¬ÄÇЩÂýËÙÁ¬½Ó»òÕßҪΪËûÃÇµÄ Internet
Á¬½Ó°´Ê±¸¶·ÑµÄÓû§¾Í¿ÉÒÔ½ÚÊ¡±¦¹óµÄʱ¼äÒòΪËûÃDz»ÔÙÐèÒª
ÏÂÔØÄÇЩ´ÓÀ´²»ÓõÄÎļþ¡£ÒªÁ˽â
refuse ÎļþµÄ¸ü¶àÐÅÏ¢ÒÔ¼°ÆäËü
CVSup µÄÓÅÑŵÄÌØÐÔ£¬Çëä¯ÀÀËüµÄ
ÊÖ²áÒ³¡£
ÔËÐÐ CVSup
ÄúÏÖÔÚ×¼±¸³¢ÊÔÉý¼¶ÁË¡£ÃüÁîºÜ¼òµ¥£º
&prompt.root; cvsup supfile
supfile
µÄλÖõ±È»¾ÍÊÇÄú¸Õ¸Õ´´½¨µÄ supfile ÎļþÃûÀ²¡£
Èç¹ûÄúÔÚ X11 ÏÂÃæÔËÐУ¬cvsup
»áÏÔʾһ¸öÓÐһЩ¿ÉÒÔ×öƽ³£ÊÂÇéµÄ°´Å¥µÄ GUI ´°¿Ú¡£
°´ go °´Å¥£¬È»ºó¿´×ÅËüÔËÐС£
ÔÚÕâ¸öÀý×ÓÀïÄú½«ÒªÉý¼¶ÄúĿǰµÄ
/usr/src Ê÷£¬Äú½«ÐèÒª
Óà root À´ÔËÐгÌÐò£¬ÕâÑù
cvsup ÓÐÐèÒªµÄȨÏÞÀ´¸üÐÂÄúµÄÎļþ¡£
¸Õ¸Õ´´½¨ÁËÄúµÄÅäÖÃÎļþ£¬ÓÖ´ÓÀ´Ã»ÓÐʹÓùýÕâ¸ö³ÌÐò£¬
½ôÕŲ»°²ÊÇ¿ÉÒÔÀí½âµÄ¡£ÓÐÒ»¸ö¼òµ¥µÄ·½·¨²»¸Ä±äÄúµ±Ç°µÄÎļþ
À´×öÒ»´ÎÊÔÑéÐÔµÄÔËÐС£Ö»ÒªÔÚ·½±ãµÄµØ·½´´½¨Ò»¸ö
¿ÕĿ¼£¬²¢ÔÚÃüÁîÐÐÉÏ×÷Ϊһ¸ö¶îÍâµÄ²ÎÊý˵Ã÷£º
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
ÄúÖ¸¶¨µÄĿ¼»á×÷ΪËùÓÐÎļþ¸üеÄÄ¿µÄ·¾¶¡£
CVSup »á¼ì²éÄúÔÚ
/usr/src ÖеÄÎļþ£¬µ«ÊDz»»áÐ޸Ļò
ɾ³ý¡£ÈκÎÎļþ¸üж¼»á±»·Åµ½
/var/tmp/dest/usr/src ÀïÁË¡£
ÔÚÕâÖÖ·½Ê½ÏÂÔËÐÐ CVSup Ò²»á°ÑËüµÄ base
Ŀ¼״̬Îļþ±£³ÖÔÑù¡£ÕâЩÎļþµÄа汾
»á±»Ð´µ½Ö¸¶¨µÄĿ¼¡£
ÒòΪÄúÓÐ
/usr/src Ŀ¼µÄ¶ÁȨÏÞ£¬ËùÒÔÖ´ÐÐÕâÖÖÊÔÑéÐÔµÄÔËÐÐ
ÉõÖÁ²»ÐèҪʹÓà root Óû§¡£
Èç¹ûÄúûÓÐÔËÐÐ X11 »òÕß²»Ï²»¶ GUI£¬
µ±ÄúÔËÐÐ cvsup µÄʱºòÐèÒªÔÚÃüÁîÐÐÌí¼Ó
Á½¸öÑ¡Ï
&prompt.root; cvsup -g -L 2 supfile
-g ¸æËß
CVSup ²»ÒªÊ¹Óà GUI¡£Èç¹ûÄú
ûÔÚÔËÐÐ X11 Õâ¸öÊÇ×Ô¶¯µÄ£¬·ñÔòÄú±ØÐëÖ¸¶¨Ëü¡£
-L 2 ¸æËß
CVSup Êä³öËùÓÐÕýÔÚÉý¼¶µÄÎļþµÄϸ½Ú¡£
ÓÐÈý¸öµÈ¼¶¿ÉÒÔÑ¡Ôñ£¬´Ó -L 0 µ½
-L 2 ¡£Ä¬ÈÏÊÇ 0£¬Òâζ×ųýÁË´íÎóÏûÏ¢
ʲô¶¼²»Êä³ö¡£
»¹ÓÐÐí¶àÆäËüµÄÑ¡Ïî¿ÉÓá£ÏëÒªÒ»¸ö¼ò¶ÌµÄÁÐ±í£¬
ÊäÈë cvsup -H ¡£Òª²é¿´¸üÏêϸµÄÃèÊö£¬
Çë²é¿´ÊÖ²áÒ³¡£
Ò»µ©Äú¶ÔÉý¼¶¹¤×÷µÄ·½Ê½ÂúÒâÁË£¬Äú¾Í
¿ÉÒÔʹÓà &man.cron.8; À´°²ÅŹæÔòµÄÔËÐÐ
CVSup ¡£
ºÜÏÔÈ»µÄ£¬Äú²»Ó¦¸ÃÈà CVSup
ͨ¹ý &man.cron.8; ÔËÐеÄʱºòʹÓÃËüµÄ GUI¡£
CVSup Îļþ collection
CVSup ¿ÉÓõÄÎļþ collection
ÊÇ·Ö¼¶×éÖ¯µÄ¡£
Óм¸¸ö´óµÄ collection£¬È»ºóËüÃÇÓзֳɸüСµÄ×Ó
collection¡£½ÓÊÕÒ»¸ö´óµÄ collection µÈͬÓÚ
½ÓÊÕËüµÄÿһ¸ö×Ó collection¡£
collection µÄµÈ¼¶¹ØÏµÔÚÏÂÃæÁбíÖÐͨ¹ýËõ½øµÄʹÓÃ
·´Ó³³öÀ´¡£
×î³£ÓÃµÄ collection ÊÇ
src-all £¬ºÍ
ports-all ¡£ÆäËüµÄ collection Ö»±»ÓÐ×ÅÌØ¶¨
Ä¿µÄµÄС²¿·ÖÈËʹÓã¬
ÓÐЩվµã¿ÉÄܲ»È«²¿Ö§³Ö¡£
cvs-all release=cvs
&os; Ö÷ CVS ²Ö¿â£¬°üº¬
ÃÜÂëϵͳµÄ´úÂë¡£
distrib release=cvs
&os; ·¢Ðа汾ºÍ¾µÏñÏà¹ØµÄ
Îļþ¡£
doc-all release=cvs
&os; ʹÓÃÊÖ²áºÍÆäËüÎĵµµÄÔ´´úÂë¡£
ÆäÖв»°üº¬ &os; web Õ¾µãµÄÎļþ¡£
ports-all release=cvs
&os; Ports Collection¡£
Èç¹ûÄú²»ÏëÉý¼¶È«²¿µÄ
ports-all (Õû¸ö ports Ê÷)£¬
¶øÖ»ÊÇʹÓÃÏÂÃæÁгöµÄÒ»¸ö×Ó¼¯£¬
ÇëÈ·±£Äú×ÜÊÇ Éý¼¶ÁË
ports-base ×Ó collection£¡
ÎÞÂÛºÎʱÔÚ ports ¹¹½¨Ï²㹹ÔìÓÐËù¸Ä±äµÄʱºò¶¼»áͨ¹ý
ports-base ±íÏÖ³öÀ´£¬ÊÂʵÉÏijЩ
¸Ä±ä»áºÜ¿ìµÄ±»Êµ¼ÊµÄ
ports ʹÓã¬Òò´Ë£¬Èç¹ûÄúÖ»Éý¼¶ÁË
ʵ¼ÊµÄ
ports ¶øËûÃÇʹÓÃÁËһЩеÄÌØÐÔ£¬
¾ÍÓм«´óµÄ¿ÉÄܱàÒë»áÒòһЩÉñÃØµÄ´íÎóÐÅÏ¢¶øÊ§°Ü¡£
ÕâÖÖÇé¿öÏ·dz£¿ìËÙµÄ Òª×öµÄÊÂÇé
¾ÍÊÇÈ·±£ÄúµÄ
ports-base ×Ó collection ¸üе½
×îС£
Òª×ÔÐй¹½¨ ports/INDEX £¬ Äú
±ØÐë ½ÓÊÜ
ports-all (ÍêÕûµÄ ports tree)¡£
ÔÚ²¿·Ö ports tree ÉϹ¹½¨ ports/INDEX
ÊDz»±»Ö§³ÖµÄ¡£ Çë²Î¼û
FAQ ¡£
ports-accessibility
release=cvs
ÓÃÒÔ°ïÖú²Ð¼²Óû§µÄÈí¼þ¡£
ports-arabic
release=cvs
°¢À²®ÓïÖ§³Ö¡£
ports-archivers
release=cvs
´æµµ¹¤¾ß¡£
ports-astro
release=cvs
ÌìÎÄÏà¹ØµÄ ports¡£
ports-audio
release=cvs
ÉùÒôÖ§³Ö¡£
ports-base
release=cvs
Ports Collection ¹¹½¨Ï²¿¹¹Ôì -
λÓÚ /usr/ports µÄ
Mk/ ºÍ
Tools/ ×ÓĿ¼µÄ
¸÷ÖÖ¸÷ÑùµÄÎļþ¡£
Çë²é¿´
ÖØÒª¾¯¸æ£ºÄúÓ¦¸Ã
×ÜÊÇ ¸üÐÂÕâ¸ö
×Ó collection£¬ÎÞÂÛÄú¸üÐÂ
&os; Ports Collection µÄÈκβ¿·ÖµÄʱºò£¡
ports-benchmarks
release=cvs
»ù×¼¡£
ports-biology
release=cvs
ÉúÎïѧ¡£
ports-cad
release=cvs
¼ÆËã»ú¸¨ÖúÉè¼Æ¹¤¾ß¡£
ports-chinese
release=cvs
ÖÐÎÄÓïÑÔÖ§³Ö¡£
ports-comms
release=cvs
ͨÐÅÈí¼þ¡£
ports-converters
release=cvs
×Ö·û±àÂëת»»¡£
ports-databases
release=cvs
Êý¾Ý¿â
ports-deskutils
release=cvs
¼ÆËã»ú·¢Ã÷ǰ³£³öÏÖÔÚ×ÀÃæÉϵĶ«Î÷¡£
ports-devel
release=cvs
¿ª·¢¹¤¾ß¡£
ports-dns
release=cvs
DNS Ïà¹ØÈí¼þ¡£
ports-editors
release=cvs
±à¼Æ÷
ports-emulators
release=cvs
ÆäËü²Ù×÷ϵͳµÄÄ£ÄâÆ÷
ports-finance
release=cvs
»õ±Ò£¬½ðÈÚÏà¹ØÓ¦ÓóÌÐò¡£
ports-ftp
release=cvs
FTP ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë¹¤¾ß¡£
ports-games
release=cvs
ÓÎÏ·
ports-german
release=cvs
µÂÓïÖ§³Ö¡£
ports-graphics
release=cvs
ͼÐÎͼÏñ¹¤¾ß¡£
ports-hebrew
release=cvs
Ï£²®À´ÓïÖ§³Ö¡£
ports-hungarian
release=cvs
ÐÙÑÀÀûÓïÑÔÖ§³Ö¡£
ports-irc
release=cvs
Internet ¶àÏß½»Ì¸(IRC)¹¤¾ß¡£
ports-japanese
release=cvs
ÈÕÓïÖ§³Ö¡£
ports-java
release=cvs
&java; ¹¤¾ß¡£
ports-korean
release=cvs
º«¹úÓïÑÔÖ§³Ö¡£
ports-lang
release=cvs
±à³ÌÓïÑÔ¡£
ports-mail
release=cvs
ÓʼþÈí¼þ¡£
ports-math
release=cvs
ÊýÖµ¼ÆËãÈí¼þ¡£
ports-misc
release=cvs
ÔÓÑù¹¤¾ß¡£
ports-multimedia
release=cvs
¶àýÌåÈí¼þ¡£
ports-net
release=cvs
ÍøÂçÈí¼þ¡£
ports-net-im
release=cvs
¼´Ê±ÏûÏ¢Èí¼þ¡£
ports-net-mgmt
release=cvs
Íø¹ÜÈí¼þ¡£
ports-net-p2p
release=cvs
¶ÔµÈÍø (peer to peer network) Ó¦Óá£
ports-news
release=cvs
USENET ÐÂÎÅÈí¼þ¡£
ports-palm
release=cvs
Palm
ϵÁÐÈí¼þÖ§³Ö¡£
ports-polish
release=cvs
²¨À¼ÓïÖ§³Ö¡£
ports-ports-mgmt
release=cvs
ÓÃÓÚ¹ÜÀí ports ºÍÔ¤±àÒë°üµÄ¹¤¾ß¡£
ports-portuguese
release=cvs
ÆÏÌÑÑÀÓïÖ§³Ö¡£
ports-print
release=cvs
´òÓ¡Èí¼þ¡£
ports-russian
release=cvs
¶íÓïÖ§³Ö¡£
ports-science
release=cvs
¿ÆÑ§¼ÆËã¡£
ports-security
release=cvs
°²È«¹¤¾ß¡£
ports-shells
release=cvs
ÃüÁîÐÐ shell¡£
ports-sysutils
release=cvs
ϵͳʵÓù¤¾ß¡£
ports-textproc
release=cvs
Îı¾´¦Àí¹¤¾ß(²»
°üº¬×ÀÃæ³ö°æ)¡£
ports-ukrainian
release=cvs
ÎÚ¿ËÀ¼ÓïÖ§³Ö¡£
ports-vietnamese
release=cvs
Ô½ÄÏÓïÖ§³Ö¡£
ports-www
release=cvs
ÍòÎ¬Íø(WWW)Ïà¹ØÈí¼þ¡£
ports-x11
release=cvs
Ö§³Ö X window ϵͳµÄ ports¡£
ports-x11-clocks
release=cvs
X11 ʱÖÓ¡£
ports-x11-drivers
release=cvs
X11 Çý¶¯³ÌÐò¡£
ports-x11-fm
release=cvs
X11 Îļþ¹ÜÀíÆ÷¡£
ports-x11-fonts
release=cvs
X11 ×ÖÌåºÍ×ÖÌ幤¾ß¡£
ports-x11-toolkits
release=cvs
X11 ¹¤¾ß°ü¡£
ports-x11-servers
release=cvs
X11 ·þÎñÆ÷¡£
ports-x11-themes
release=cvs
X11 Ö÷Ìâ¡£
ports-x11-wm
release=cvs
X11 ´°¿Ú¹ÜÀíÆ÷¡£
projects-all release=cvs
&os; ÄÚ²¿ÏîÄ¿µÄ´úÂë¿â¡£
src-all release=cvs
&os; Ö÷´úÂ룬°üº¬ÃÜÂëϵͳµÄ´úÂë¡£
src-base
release=cvs
/usr/src
¶¥²ãµÄ¸÷ʽ¸÷ÑùµÄÎļþ¡£
src-bin
release=cvs
µ¥Óû§Ä£Ê½Ï¿ÉÄÜÓõ½µÄÓû§¹¤¾ß
(/usr/src/bin )¡£
src-cddl
release=cvs
²ÉÓÃÁË
CDDL ÊÚȨµÄʵÓù¤¾ßºÍº¯Êý¿â
(/usr/src/cddl )¡£
src-contrib
release=cvs
&os; ÏîĿ֮ÍâµÄ¹¤¾ßºÍ¿â£¬Í¨³£ÔÚ &os; Öв»×÷ÐÞ¸Ä
(/usr/src/contrib )¡£
src-crypto release=cvs
&os; ÏîĿ֮ÍâµÄ
ÃÜÂëϵͳ¹¤¾ßºÍ¿â£¬Í¨³£ÔÚ &os; Öв»×÷ÐÞ¸Ä
(/usr/src/crypto )¡£
src-eBones release=cvs
Kerberos ºÍ DES
(/usr/src/eBones )¡£
ĿǰµÄ &os; Öв»ÔÙʹÓÃʹÓá£
src-etc
release=cvs
ϵͳÅäÖÃÎļþ
(/usr/src/etc )¡£
src-games
release=cvs
ÓÎÏ·
(/usr/src/games )¡£
src-gnu
release=cvs
GNU ¹«¹²Ðí¿ÉÐÒéµÄ¹¤¾ß
(/usr/src/gnu )¡£
src-include
release=cvs
Í·Îļþ
(/usr/src/include )¡£
src-kerberos5
release=cvs
Kerberos5 °²È«°ü
(/usr/src/kerberos5 )¡£
src-kerberosIV
release=cvs
KerberosIV °²È«°ü
(/usr/src/kerberosIV )¡£
src-lib
release=cvs
¿â
(/usr/src/lib )¡£
src-libexec
release=cvs
ͨ³£±»ÆäËü³ÌÐòµ÷ÓõÄϵͳ³ÌÐò
(/usr/src/libexec )¡£
src-release
release=cvs
Éú³É &os; °æ±¾±ØÐèµÄÎļþ
(/usr/src/release )¡£
src-rescue
release=cvs
ÓÃÓÚ½ô¼±ÐÞ¸´µÄ¾²Ì¬Áª±àµÄ³ÌÐò£» Çë²Î¼û &man.rescue.8;
(/usr/src/rescue )¡£
src-sbin release=cvs
µ¥Óû§Ä£Ê½µÄϵͳ¹¤¾ß
(/usr/src/sbin )¡£
src-secure
release=cvs
ÃÜÂëÏà¹Ø¿âºÍÃüÁî
(/usr/src/secure )¡£
src-share
release=cvs
¿ç¶à¸öƽ̨µÄ¹²ÏíµÄÎļþ
(/usr/src/share )¡£
src-sys
release=cvs
ÄÚºË
(/usr/src/sys )¡£
src-sys-crypto
release=cvs
ÄÚºËÃÜÂëϵͳ´úÂë
(/usr/src/sys/crypto )¡£
src-tools
release=cvs
ά»¤ &os; µÄ¸÷ÖÖ¸÷ÑùµÄ¹¤¾ß
(/usr/src/tools )¡£
src-usrbin
release=cvs
Óû§¹¤¾ß
(/usr/src/usr.bin )¡£
src-usrsbin
release=cvs
ϵͳ¹¤¾ß
(/usr/src/usr.sbin )¡£
www release=cvs
&os; WWW Õ¾µãµÄÔ´´úÂë¡£
distrib release=self
CVSup ·þÎñÆ÷µÄ
ÅäÖÃÎļþ¡£ÓÃÓÚ CVSup
¾µÏñÕ¾µã¡£
gnats release=current
GNATS bug ¸ú×ÙÊý¾Ý¿â¡£
mail-archive release=current
&os; ÓʼþÁÐ±í´æµµ¡£
www release=current
Ô¤´¦Àí¹ýµÄ &os; WWW Õ¾µãÎļþ(²»ÊÇÔ´Îļþ)¡£
ÓÃÓÚ WWW ¾µÏñÕ¾µã¡£
¸ü¶àÐÅÏ¢
CVSup FAQ ÒÔ¼°¹ØÓÚ
CVSup µÄÆäËûÐÅÏ¢£¬ Çë²é¿´
CVSup Ö÷Ò³ ¡£
¶àÊýÓë &os; ÓйصÄ
CVSup ÌÖÂÛ»áÔÚ
&a.hackers; ½øÐС£ Õâ¸öÈí¼þµÄа汾»áÔÚÄÇÀïºÍ &a.announce; ¹«²¼¡£
Èç¹û¶ÔÓÚ
CVSup ÓÐÈκÎÎÊÌ⣬ »òÏ£ÍûÌá½» bug ±¨¸æ£¬ Çë²ÎÔÄ
CVSup FAQ ¡£
CVSup Õ¾µã
&os; µÄ CVSup ·þÎñÆ÷ÔËÐÐÓÚ
ÏÂÁÐÕ¾µã£º
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
CVS ±êÇ©
µ±Ê¹Óà cvs »òÕß
CVSup
»ñÈ¡ºÍÉý¼¶Ô´´úÂëµÄʱºò£¬±ØÐëÖ¸¶¨Ò»¸öÐÞ¶©±êÇ©¡£
ÐÞ¶©±êÇ©´ú±í &os; ¿ª·¢µÄÒ»¸öÌØ¶¨·ÖÖ§£¬
»òÕßÒ»¸öÌØ¶¨µÄʱ¼äµã¡£µÚÒ»ÖÖ½Ð×ö
·ÖÖ§±êÇ©
£¬µÚ¶þÖÖ½Ð×ö
°æ±¾±êÇ©
¡£
·ÖÖ§±êÇ©
ËùÓÐÕâЩ£¬³ýÁË HEAD (Õâ¸ö×ÜÊÇ
ºÏ·¨±êÇ©)ÒÔÍ⣬ֻÊÊÓÃÓÚ src/
Ê÷¡£ports/ £¬doc/ £¬ºÍ
www/ Ê÷ûÓзÖÖ§¡£
HEAD
Ö÷ÏߵķûºÅÃû£¬»òÕß˵ &os;-CURRENT¡£
µ±Ã»ÓÐÖ¸¶¨ÐÞ¶©°æ±¾µÄʱºòÒ²ÊÇĬÈϵġ£
ÔÚ CVSup ÀÕâ¸ö±êǩͨ¹ý
Ò»¸ö . À´·´Ó³³öÀ´(²»ÊDZêµã£¬¶øÊÇÒ»¸ö
. ×Ö·û)¡£
ÔÚ CVS Àµ±Ã»ÓÐÐÞ¶©±êǩָ¶¨Ê±ÕâÊÇĬÈϵġ£
ÔÚһ̨ STABLE »úÆ÷Éϼì³ö»òÕßÉý¼¶µ½ CURRENT Ô´´úÂë
ͨ³£²»ÊÇ
Ò»¸öºÃÖ÷Ò⣬³ý·ÇÕâÊÇÄúµÄ±¾Òâ¡£
RELENG_8
ÕâÊÇ &os;-8.X µÄ¿ª·¢·ÖÖ§£¬
Ò²±»³Æ×÷ &os; 8-STABLE¡£
RELENG_8_2
ÕâÊÇ &os;-8.2 ·¢Ðаæ·ÖÖ§£¬Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_8_1
&os;-8.1 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_8_0
&os;-8.0 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_7
ÕâÊÇ &os;-7.X µÄ¿ª·¢·ÖÖ§£¬
Ò²±»³Æ×÷ &os; 7-STABLE¡£
RELENG_7_4
&os;-7.4 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_7_3
&os;-7.3 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_7_2
&os;-7.2 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_7_1
&os;-7.1 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_7_0
&os;-7.0 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_6
ÕâÊÇ &os;-6.X µÄ¿ª·¢·ÖÖ§£¬
Ò²±»³Æ×÷ &os; 6-STABLE¡£
RELENG_6_4
&os;-6.4 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_6_3
&os;-6.3 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_6_2
&os;-6.2 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_6_1
&os;-6.1 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_6_0
&os;-6.0 µÄ·¢Ðаæ·ÖÖ§£¬ Ö»ÓÃÓÚ°²È«¹«¸æ£¬
ÒÔ¼°ÆäËûÖØÒª¸üС£
RELENG_5
ÕâÊÇ &os;-5.X µÄ¿ª·¢·ÖÖ§£¬
Ò²±»³Æ×÷ &os; 5-STABLE¡£
RELENG_5_5
&os;-5.5 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_5_4
&os;-5.4 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_5_3
&os;-5.3 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_5_2
Õë¶Ô &os;-5.2 ºÍ &os;-5.2.1 µÄ°²È«·ÖÖ§£¬
Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_5_1
Õë¶Ô &os;-5.1 µÄ·¢Ðа汾·ÖÖ§£¬
Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_5_0
Õë¶Ô &os;-5.0 µÄ·¢Ðа汾·ÖÖ§£¬
Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4
&os;-4.X ¿ª·¢Ïߣ¬Ò²±»½Ð×ö
&os;-STABLE¡£
RELENG_4_11
&os;-4.11 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_10
&os;-4.10 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_9
&os;-4.9 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_8
&os;-4.8 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_7
&os;-4.7 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_6
&os;-4.6 ºÍ 4.6.2 µÄ°²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_5
&os;-4.5 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_4
&os;-4.4 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_4_3
&os;-4.3 °²È«·ÖÖ§¡£ Ö»±»°²È«¹«¸æºÍÆäËüÖØÒª¸üÐÂʹÓá£
RELENG_3
&os;-3.X µÄ¿ª·¢Ïߣ¬Ò²±»½Ð×ö
3.X-STABLE¡£
RELENG_2_2
&os;-2.2.X µÄ¿ª·¢Ïߣ¬ Ò²±»½Ð×ö
2.2-STABLE¡£ Õâ¸ö·ÖÖ§»ù±¾ÉÏÒѾ¹ýʱÁË¡£
°æ±¾±êÇ©
µ±Ò»¸öÌØ¶¨µÄ &os; °æ±¾·¢ÐÐʱ£¬
ÕâЩ±êÇ©´ú±íÁËÒ»¸öÖ¸¶¨µÄʱ¼äµã¡£·¢²¼¹¤³Ì½ø³ÌÔÚ
Release Engineering
Information ºÍ
Release
Process ÎĵµÖб»ÏêϸÃèÊö¡£
src
Ê÷ʹÓÃÒÔ RELENG_ ¿ªÍ·µÄ±êÇ©¡£
ports ºÍ
doc Ê÷ʹÓÃÒÔ
RELEASE ¿ªÍ·µÄ±êÇ©¡£
×îºó£¬ www Ê÷Éϲ»»áÓÐÈκÎÌØ¶¨·¢ÐаæµÄ±êÇ©¡£
RELENG_8_2_0_RELEASE
&os; 8.2
RELENG_8_1_0_RELEASE
&os; 8.1
RELENG_8_0_0_RELEASE
&os; 8.0
RELENG_7_4_0_RELEASE
&os; 7.4
RELENG_7_3_0_RELEASE
&os; 7.3
RELENG_7_2_0_RELEASE
&os; 7.2
RELENG_7_1_0_RELEASE
&os; 7.1
RELENG_7_0_0_RELEASE
&os; 7.0
RELENG_6_4_0_RELEASE
&os; 6.4
RELENG_6_3_0_RELEASE
&os; 6.3
RELENG_6_2_0_RELEASE
&os; 6.2
RELENG_6_1_0_RELEASE
&os; 6.1
RELENG_6_0_0_RELEASE
&os; 6.0
RELENG_5_5_0_RELEASE
&os; 5.5
RELENG_5_4_0_RELEASE
&os; 5.4
RELENG_4_11_0_RELEASE
&os; 4.11
RELENG_5_3_0_RELEASE
&os; 5.3
RELENG_4_10_0_RELEASE
&os; 4.10
RELENG_5_2_1_RELEASE
&os; 5.2.1
RELENG_5_2_0_RELEASE
&os; 5.2
RELENG_4_9_0_RELEASE
&os; 4.9
RELENG_5_1_0_RELEASE
&os; 5.1
RELENG_4_8_0_RELEASE
&os; 4.8
RELENG_5_0_0_RELEASE
&os; 5.0
RELENG_4_7_0_RELEASE
&os; 4.7
RELENG_4_6_2_RELEASE
&os; 4.6.2
RELENG_4_6_1_RELEASE
&os; 4.6.1
RELENG_4_6_0_RELEASE
&os; 4.6
RELENG_4_5_0_RELEASE
&os; 4.5
RELENG_4_4_0_RELEASE
&os; 4.4
RELENG_4_3_0_RELEASE
&os; 4.3
RELENG_4_2_0_RELEASE
&os; 4.2
RELENG_4_1_1_RELEASE
&os; 4.1.1
RELENG_4_1_0_RELEASE
&os; 4.1
RELENG_4_0_0_RELEASE
&os; 4.0
RELENG_3_5_0_RELEASE
&os;-3.5
RELENG_3_4_0_RELEASE
&os;-3.4
RELENG_3_3_0_RELEASE
&os;-3.3
RELENG_3_2_0_RELEASE
&os;-3.2
RELENG_3_1_0_RELEASE
&os;-3.1
RELENG_3_0_0_RELEASE
&os;-3.0
RELENG_2_2_8_RELEASE
&os;-2.2.8
RELENG_2_2_7_RELEASE
&os;-2.2.7
RELENG_2_2_6_RELEASE
&os;-2.2.6
RELENG_2_2_5_RELEASE
&os;-2.2.5
RELENG_2_2_2_RELEASE
&os;-2.2.2
RELENG_2_2_1_RELEASE
&os;-2.2.1
RELENG_2_2_0_RELEASE
&os;-2.2.0
AFS Õ¾µã
&os; µÄ AFS ·þÎñÆ÷ÔËÐÐÓÚÏÂÃæµÄÕ¾µã£º
Èðµä
ÎļþµÄ·¾¶ÊÇ£º
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
ά»¤Õß ftp@stacken.kth.se
rsync Õ¾µã
ÏÂÃæµÄÕ¾µãÈà &os; ¿ÉÒÔͨ¹ý rsync ÐÒéÏÂÔØ¡£
rsync ʵÓóÌÐòºÍ
&man.rcp.1; µÄ¹¤×÷·½Ê½ºÜÏàÏñ£¬
µ«ÊÇÓиü¶àµÄÑ¡ÏʹÓà rsync Ô¶³Ì¸üÐÂÐÒéÖ»´«Êä
Á½·ÝÎļþµÄ²»Í¬Ö®´¦£¬
Òò´ËÄܹ»´ó·ù¶ÈµÄÌá¸ßÍøÂçͬ²½ËÙÂÊ¡£
Èç¹ûÄúÊÇ &os; FTP ·þÎñÆ÷»òÕß CVS ²Ö¿âµÄ¾µÏñÕ¾µã£¬
ÕâÒ»µã·Ç³£ÓÐÓá£
rsync Ì×¼þ¿ÉÒÔ¹¤×÷ÔÚÐí¶àÖÖ
²Ù×÷ϵͳÉÏ£¬ÔÚ &os; ÉÏ£¬²é¿´
net/rsync
port »òÕßʹÓà package¡£
½Ý¿Ë¹²ºÍ¹ú
rsync://ftp.cz.FreeBSD.org/
¿ÉÓÃµÄ collection£º
ftp£º &os; FTP ·þÎñÆ÷µÄ
²¿·Ö¾µÏñ¡£
&os;£º &os; FTP ·þÎñÆ÷µÄ
ÍêÕû¾µÏñ¡£
ºÉÀ¼
rsync://ftp.nl.FreeBSD.org/
¿ÉÓÃµÄ collection£º
&os;: ¶ÔÓÚ
&os; FTP ·þÎñÆ÷µÄÍêÕû¾µÏñ¡£
¶íÂÞ˹
rsync://ftp.mtu.ru/
¿ÉÓÃµÄ collections:
&os;: ÍêÕûµÄ &os; FTP
·þÎñÆ÷¾µÏñ¡£
&os;-gnats: GNATS ÎÊÌâ×·×ÙÊý¾Ý¿â¡£
&os;-Archive: &os; µµ°¸µÄ FTP
·þÎñÆ÷¾µÏñ¡£
Èðµä
rsync://ftp4.se.freebsd.org/
¿ÉÓÃµÄ collections£º
&os;£º &os; FTP
·þÎñÆ÷µÄÍêÕû¾µÏñ¡£
̨ÍåµØÇø (Öйú)
rsync://ftp.tw.FreeBSD.org/
rsync://ftp2.tw.FreeBSD.org/
rsync://ftp6.tw.FreeBSD.org/
¿ÉÓÃµÄ collection£º
&os;£º &os; FTP
·þÎñÆ÷µÄÍêÕû¾µÏñ¡£
Ó¢¹ú
rsync://rsync.mirrorservice.org/
¿ÉÓÃµÄ collection£º
sites/ftp.FreeBSD.org: &os; FTP ·þÎñÆ÷
µÄÍêÕû¾µÏñ¡£
ÃÀ¹ú
rsync://ftp-master.FreeBSD.org/
·þÎñÆ÷Ö»¹© &os; Ö÷¾µÏñÕ¾µãʹÓá£
¿ÉÓÃµÄ collection£º
&os;£º&os; FTP ·þÎñÆ÷µÄÖ÷Òª´æµµ¡£
acl£º&os; Ö÷ ACL
ÁÐ±í¡£
rsync://ftp13.FreeBSD.org/
¿ÉÓÃµÄ collection£º
&os;£º&os; FTP ·þÎñÆ÷µÄÍêÕû
¾µÏñ¡£
diff --git a/zh_TW.Big5/articles/contributing/article.xml b/zh_TW.Big5/articles/contributing/article.xml
index 6b2e31f503..c755d6d3bd 100644
--- a/zh_TW.Big5/articles/contributing/article.xml
+++ b/zh_TW.Big5/articles/contributing/article.xml
@@ -1,484 +1,484 @@
À°§U FreeBSD
µL½×¬OÓ¤H©Î¬O¦UºØ²Õ´¡A¦pªG§Æ±æ¬° FreeBSD ´£¨ÑÀ°§U¡A³£¥i¥H¦b¥»¤å¤¤§ä¨ì¦X¾Aªº¤èªk¡C
Jordan
Hubbard
ìµÛ¡G
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.general;
$FreeBSD$
$FreeBSD$
°^Äm
§A§Æ±æ´À FreeBSD °µÂI¤°»ò¶Ü¡H¤Ó¦n¤F¡A§ÚÌÅwªï§A¡CFreeBSD
¥¿¬O¦³¿à©ó¼s¤j¨Ï¥ÎªÌªº°^Äm¤~±o¥Hµo®i§§¤jªº¡C§Ṳ́£¶È«D±`·PÁ±z©Ò°µªº°^Äm¡A¦Ó¥B¡A³o¨Ç¤u§@¹ï©ó FreeBSD ªº«ùÄòµo®i¤]¦ÜÃö«n¡C
¤]³\»P±z·Q¹³ªº¤£¦P¡A±z¬J¤£¥²±o¬O¤@¦W¥X¦âªº Programmer¡A¤]µL¶·©M
FreeBSD core team ¦¨û¦³«Ü¦nªº¨p¥æ¡A§ÚÌ·|¤@µø¦P¤¯ªº¹ï«Ý±zªº¤u§@¡C
FreeBSD ªº¶}µo¤Hû¹M¥¬¥þ²y¡A¤j®a§Þ³N±Mªø¦U²§¡A¦~ÄÖ¤À¥¬¤]«D±`¼sªx¡C
µM¦Ó¡A¨C¤Ñ§Ú̳£¦b±¹ï«ùÄò¼W¥[ªº¤u§@¡A¦ÓW©ó¨S¦³¨¬°÷ªº¤H¤â¡A¦]¦¹§ÚÌÀH®ÉÅwªï±zªºÀ°§U¡C
FreeBSD p¹º©Ò³B²zªº¬O¤@Ó§¹¾ãªº§@·~¨t²ÎÀô¹Ò¡A¦Ó¤£¥u¬O¤@Ó kernel ©Î¬O¤@¨Ç¹s´²ªº¤u¨ã¥]¡C
¦]¦¹¡A§Ú̪º TODO «Ý¿ì¥ô°È¦Cªí¸Ì¥]§t¦U¦¡¦U¼Ëªº¤u§@¡G
±q¤å¥ó¡B¨Ï¥ÎªÌ´ú¸Õ¡Bdemo¡A¨ì¨t²Î¦w¸Ëµ{¦¡©M§ó±M·~ªº kernel ¶}µo¡C
¦]¦¹µL½×±zªº§Þ³N¤ô·Ç¦p¦ó¡A±q¨Æ¦óºØ»â°ì¡A³£¥i¥HÀ°§U³oÓp¹º¡C
§Ú̹ªÀy±q¨Æ©M FreeBSD ¬ÛÃö¤u§@ªº¥ø·~©M§ÚÌÁpô¡C
±z»Ýn¤@¨Ç¯S®íªºÂX®i¨Ó¨Ï±zªº²£«~¹BÂà°_¨Ó¶Ü¡H
±z·|µo²{§Úַ̫ܼNµªÀ³±zªº½Ð¨D¡A°£«D¬O¯S§Oµ}©_¥j©Çªº¡C
±z¬O§_¥¿±q¨Æ¬ÛÃöªº¼WÈ·~°È¡H Åý§Ų́ÓÀ°§U±z§a¡A
§Ṳ́]³\¥i¥H¦b¬Y¨Ç¤è±¬Û¤¬¦X§@¡C
¦Û¥Ñ³nÅé¬É¥¿¦b§V¤O¥´¯}¦³ªº®Ø®Ø(¹³¬OÃö©ó³nÅé¶}µo¡B¾P°â©MºûÅ@)¡A
§Ú̧ƱæÀµ½Ð±z¦Ü¤Ö¯àµ¹¥¦¤@¦¸¾÷·|¡C
§Ú̪º»Ý¨D
¤U±¦C¥X¤F¤@¨Ç»Ýn§¹¦¨ªº¥ô°È©M¤lp¹º¡A
¥¦Ì¥Nªí TODO («Ý¿ì¥ô°È¦Cªí)
¦Cªíªº·N«ä¡A¥H¤Î¨Ï¥ÎªÌªºn¨D¡C
¥¿¦b¶i¦æ¤¤ªº¥ô°È(«Dµ{¦¡¶}µo¤Hû)
«Ü¦h°Ñ¥[ FreeBSD p¹ºªº¤H¤£¬O Programmer¡C
³oÓp¹º¸Ì¦³¤å¥ó¼¶¼gªÌ¡Bºô¶³]p®v¡B¥H¤Î§Þ³N¤ä´©¤Hû¡C
¹ï©ó³o¨Ç¸q¤u¨Ó»¡¡A¥LÌ¥u»Ýn°^Äm¤@¨Ç®É¶¡¡A¨Ã¥B¨ã¦³¾Ç²ßªº·NÄ@¡C
±z¥i¥H®É±`½¾\ FAQ ©M¤â¥U(Handbook)
¡A¦pªGµo²{¦³¸ÑÄÀ¤£²M·¡ªº¦a¤è¡A©Î¬O¤£¦X®É©yªº¤å¥ó¡A¬Æ¦Ü§¹¥þ¤£¥¿½Tªº¦a¤è¡A
³£½Ð§i¶D§ÚÌ¡C·íµM¡AY¯à¶¶¤â§â¥LÌ×¥¿¡A¨Ã§â°É»~±Hµ¹§ÚÌ¡A¨º´N§ó¦n¤F¡C:)
(SGML ¨ä¹ê¨Ã¤£Ãø¾Ç¡A¦ý§Ṳ́]¤£¤Ï¹ï±zª½±µ´£¥æ¤@¯ë ASCII ªº¯Â¤å¦rª©¥»)¡C
À°§U§Ú̧â FreeBSD ¤å¥ó½Ķ¦¨§Aªº¥À»y¡C
¦pªG§Aªº¥À»yª©¥»¤w¸g¦s¦b¤F¡A
¤]¥i¥H½Ķ¤@¨ÇÃB¥~ªº¤å¥ó¡A©ÎªÌÀˬd¨º¨Ç¤w¦³ªº¤å¥ó¬O§_¬°³Ì·sª©¡C
±z¥i¥H¥ý²³æ¬Ý¬Ý FreeBSD ¤å¥óp¹º¤¤¦³Ãö ½Ķ®Éªº±`¨£°ÝÃD ¡C
°Ñ¥[½Ķ¤u§@¡A¨Ã¤£¬O»¡±zn©tx¾Ä¾Ô½Ķ©Ò¦³ FreeBSD ¤å¥ó¡C
¨¬°¸q¤u¡An°µ¦h¤Ö¤u§@§¹¥þ¨ú¨M©ó±zªº·NÄ@¡C¤@¥¹¬YÓ¤H¶}©l½Ķ¤F¡A
¤§«á´X¥G¤@©w·|¦³¨ä¥L¤H°Ñ»P¨ì³o¨Ç¤u§@¤¤¨Ó¡C
¦pªG®É¶¡¦³¡A©ÎªÌºë¤O¤£°÷¥h½Ķ¾ã¥÷¤å¥ó¡A¨º¥i¥Hº¥ý¥h½Ķ¦w¸Ë«ü«n¡C
¾\Ū &a.questions; ¨Ã°¸º¸Â½¾\(¬Æ¦Ü¦³³W«ß¦a³o¼Ë°µ) &ng.misc;
¡C»P§O¤H¤À¨É±zªº±M·~ª¾ÃÑ¡A
¨ÃÀ°§U¥L̸ѨM°ÝÃD¡A¬O¥ó¥O¤H´r®®ªº¨Æ±¡¡F
¦³®ÉÔ¡A±z¬Æ¦Ü¥i¥H¦b³oÓ¹Lµ{¤¤¾Ç¨ì¤@¨Ç·sªF¦è¡I
³o¨Ç½×¾Â¦³®É¤]·|¬°±z¿Eµo¥X¤@¨Ç¤£¿ùªº·Qªk¡C
¥¿¦b¶i¦æ¤¤ªº¥ô°È(µ{¦¡¶}µo¤Hû)
¦C¦b³o¸Ìªº¤j³¡¤À¥ô°È³£»Ýn±z§ë¤J¥iÆ[ªº®É¶¡¡A©ÎªÌ»Ýn±z¦b FreeBSD kernel
¤è±¦³Â×´Iªºª¾ÃÑ¡A©ÎªÌ¨âªÌ³£n¡C·íµM³o¸Ì¤]¦³«Ü¦h«nªº¥ô°È¡A¾A¦X¹³¬O
weekend hackers
³oÃþ¥u¥Î¶g¥½´N¥i¥H·d©wªº Hacker¡C
¦pªG±z¥¿¦b¶]ªº¬O FreeBSD -CURRENT ª©¥»¡A¨Ã¥Bºô¸ô³t«×ÁÙ¤£¿ù¡A
¨º»ò¥i¥H¨ì current.FreeBSD.org ¡A
³o¥x¨C¤Ñ·|¦³¤@Ó·sª©¥» — ¦pªG±z¦³ªÅ¡A
±z¥i¥H¤T¤£¤®É¤U¸ü¨Ã¦w¸Ë¡A
¨ä¶¡¦pªG¥X¤F¤°»ò°ÝÃD¡A½Ð§i¶D§ÚÌ¡C
¾\Ū &a.bugs;¡C³o¨Ç°ÝÃD¡A©Î³\±z¯à´£¨Ñ¦³«Ø³]©Ê·N¸qªº·N¨£¡A
©ÎªÌÀ°¦£´ú¸Õ¤@¨Ç patch ¡C¦¹¥~¡A¬Æ¦Ü¥i¥H¹Á¸Õ×¥¿¨ä¤¤ªº¤@¨Ç°ÝÃD¡C
¦pªG±zª¾¹D¦³¤@¨Ç×¥¿¤w¸g¦b -CURRENT ¤W¦¨¥\¦a¨Ï¥Î¡A
¦ý¦b¸g¹L¤@¬q®É¶¡(³q±`¬O 2 ¶g¥ª¥k)¤§«á¡A¤´¥¼¦X¨Ö¨ì -STABLE
(³o¨BÆJ´N¬O MFC -- Merged From Current)¡A¨º»ò¥i¥Hµ¹¬ÛÃöªº committer ¤Hûµo«Ê§»ªªº´£¿ô«H¡C
±N²Ä¤T¤è(3rd party)³nÅé¥[¤J¨ìì©l½X¤¤ªº
src/contrib ¥Ø¿ý¡C
½T«O src/contrib ¤¤ªºì©l½X¬O³Ì·sªº¡C
½sĶì©l½X(©Î¬O³¡¤Àì©l½X)®É¡A½Ð§ï¥Î§ó°ªªºÄµ§iµ¥¯Å(warning level)
¥H«K°»¿ù(debug)¥Î¡A¨Ã¦b§¹¦¨´ú¸Õ¡B½T»{¥¿±`§¹²¦¤§«á¡A²M°£³o¨Ç½sĶªºÄµ§iµ¥¯Å¡C
§ó·s¨º¨Ç¦b ports ¤¤¨Ï¥Î¹L®ÉªºªF¦è¡A
¨Ò¦p gets() ©Î¥]§t
malloc.h ©Ò²£¥ÍªºÄµ§i¡C
¦pªG¦³¬° ports §@¤F¥ô¦ó×¥¿¡A
½Ð°O±o±N±zªº patch µoµ¹ì§@ªÌ (³o¼Ë¤U¦¸¤É¯Å®É¡A±zªº¤u§@·|Åܱo»´ÃP¤@¨Ç)¡C
¥ý¨ú±o¥¿¦¡ªº¼Ð·Ç¡A¦p &posix; ªº°Æ¥»¡C
¦b FreeBSD
C99 & POSIX ¼Ð·Ç¬Û®ep¹º ºô¯¸¤W¡A¥i¥H±o¨ì¬ÛÃöÃì±µ¡C
½Ð±N FreeBSD ªº¦æ¬°»P¤Wzªº¼Ð·Ç¶i¦æ¤ñ¸û¡AY©Ò±oµ²ªG»P C99 & POSIX ¼Ð·Ç¤£¦Pªº¸Ü¡A
¯S§O¬O¨º¨Ç²Ó¸`¦a¤èªº·L¤p®t²§¡A½Ðµo¤@ÓÃö©ó¥¦ªº PR (°ÝÃD³ø§i)¡C
¦pªG¥i¯à¡A½Ð«ü¥X¦p¦ó×¥¿¥¦¡A¨ÃÀH PR ´£¥æ patch ¡C
¦pªG±z»{¬°¼Ð·Ç¦³°ÝÃD¡A½Ð¦V³o¨Ç³W®æ¼Ð·Çªº¬ÛÃö¹ÎÅé¡A½Ð¨D¹ï¨ä¶i¦æ«·sªº¦Ò¼{¡C
¬°³o¥÷¦Cªí´£¨Ñ§ó¦h«ØÄ³¡I
¬d¾\¾ãÓ PR ¸ê®Æ®w
°ÝÃD³ø§i¸ê®Æ®w
FreeBSD
PR ¦Cªí ³o¸Ì·|Åã¥Ü¥Ø«e©Ò¦³ PR ªº°ÝÃDª¬ºA¡A¥H¤Î¥Ñ
FreeBSD ¨Ï¥ÎªÌ´£¥æªº§ï¶i«ØÄ³¡C
PR ¸ê®Æ®w¦P®É¥]¬A¤F¶}µo¤Hû©M«D¶}µo¤Hûªº¥ô°È¡C
¬d¬Ý¨º¨Ç©|¥¼¸Ñ¨Mªº PR¡A¨Ã¬Ý¬Ý¬O§_¦³±z·P¿³½ìªº¥ô°È¡C
³o¨ä¤¤¥i¯à¦³¤@¨Ç¬O«D±`²³æªº°ÝÃD¡A¥u»Ýn¬Ý¤@¬Ý¨Ã½T»{ PR ¬O¥¿½Tªº¡C
¥t¥~¤@¨Ç¥i¯à·|«D±`½ÆÂø¡A©ÎªÌ§¹¥þ¥¼ªþ¥ô¦ó×¥¿¡C
º¥ý¬Ý¤@¬Ý¨º¨ÇÁÙ¨S¦³¤H±µ¤âªº PR¡C
¦pªG PR ¤w¸g¤À°tµ¹¤F¨ä¥¦¤H¡A¦ý¬Ý°_¨Ó¬O±z¯à°÷³B²zªº¡A
±z¥i¥H±H«Hµ¹¨ºÓ¤H¡A¨Ã¸ß°Ý±z¬O§_¥i¥H´£¨ÑÀ°§U —
¥LÌ¥i¯à¤w¸g¦³¥i¨Ñ´ú¸Õªº patch ¡A©Î¦³¤@¨Ç¥i¨Ñ°Q½×ªº·N¨£¡C
¥Ñ Ideas
¤¤¿ï¤@¶µ
&os; list of
projects and ideas for volunteers ¦P¼Ë¦a¶}©ñµ¹¦³·NÄ@°Ñ»P
&os; p¹ºªº¤H¡C
³o¥÷²M³æ±N«ùÄò¦a§ó·s¡A¦P®É´£¨Ñ¦UÓ¶µ¥Øªº¸ê°Tµ¹©Ò¦³¤H
¡]¤£½×¬O§_¬°µ{¦¡³]p¤Hû¡^¡C
¦p¦ó´£¨ÑÀ°§U
°ò¥»¤W¥i¥H¤À¬°¥H¤U 5 ºØ¤è¦¡¡G
¿ù»~³ø§i©M·N¨£µoªí
³q±`¡A¤@¯ë
ªº§Þ³N·Qªk©M«ØÄ³À³¸Óµo¨ì &a.hackers;¡C
¦P¼Ë¦a¡A¹ï©ó³o¨ÇªF¦è¦³¿³½ìªº¤H (·íµM¡A
¥L̦P®ÉÁÙn¯à°÷®e§Ô ¤j¶qªº ¶l¥ó¡I)
¥i¥H¦Ò¼{q¾\ &a.hackers;¡C
½Ð°Ñ¾\ FreeBSD
¨Ï¥Î¤â¥U ¥H¤F¸ÑÃö©ó³oÓ¶l»¼½×¾Â¡A
¥H¤Î¨ä¥¦¶l»¼½×¾Âªº¸Ô²Ó±¡ªp¡C
¦pªG±zµo²{¤F bug ©ÎªÌ·Qn´£¥æ¬Y¨Ç×§ï¡A
½Ð³z¹L &man.send-pr.1; µ{¦¡©Î¨Ï¥Î
ºô¶¤¶±
ªº¦^³ø ¨Ó´£¥æ¡C½Ð¸ÕµÛ¶ñ¼g PR ªº¨CÓ¶µ¥Ø¡C
¤@¯ë¨Ó»¡¡A°£«D patch ÀɶW¹L 65 KB¡A§ÚÌ«ØÄ³¦b PR ¤¤ª½±µªþ¤W patch ´N¥i¥H¤F¡C
Y¥iª½±µ®M¥Î patch ¨ìì©l½Xªº¸Ü¡A¨º»ò«ØÄ³¦b PR ªº
Synopsis Äæ¦ìµù©ú [PATCH] ¡C
¹ï¤F¡A¦bªþ¤W patch ®É¡A½Ð ¤£n
³z¹L·Æ¹«ªº¡y½Æ»s¡B¶K¤W¡z¨Ó¶i¦æ¡A¦]¬°³o¼Ë°µ·|§â Tab Åܦ¨ªÅ®æ¡A
·|¾ÉP patch ´N¤£¯à¥Î¤F¡C¦pªG patch ¶W¹L 20KB¡A
½Ð¦Ò¼{À£ÁY¥¦¨Ã¨Ï¥Î &man.uuencode.1; ¨Ó¶i¦æ½s½X¡C
¦b¼g§¹ PR ¤§«á¡A±z·|¦¬¨ì¤@«Ê½T»{¶l¥ó¥H¤Î¨Æ¥ó°lÂܽs¸¹¡C
½Ð«O¯d³oÓ½s¸¹¡A¦]¬°¨Æ«á¥i¥H¥Î³o½s¸¹µo«H¨ì &a.bugfollowup;
¨Ó¦^ÂСB´£¨ÑÃö©ó¸Ó¨Æ¥óªº«áÄò¸ê®Æ¡C±z»Ýn°µªº¬O±N½s¸¹©ñ¨ì¶l¥óªº¼ÐÃD¤¤¡A
¨Ò¦p "Re:
kern/3377" ¡C
Y¬O¦P¤@°ÝÃDªº¦^ÂФ象AÀ³¸Ó³z¹L³oºØ¤è¦¡¨Ó¶i¦æ¡C
¦pªG±z¦b¤@¬q®É¶¡ (¶W¹L 3 ¤Ñ¬Æ¦Ü 1 ¶g¡A³o¨ú¨M©ó±zªº¶l¥óªA°È)¤§«á¤´µM¨S¦³¦¬¨ì½T»{«H
©ÎªÌ¥Ñ©ó¤@¨Çì¦]µLªk¨Ï¥Î &man.send-pr.1; µ{¦¡¡A
«h¥i¥Hµo«H¨ì &a.bugs; ¨Ó½Ð§O¤HÀ°§A¥N±H¡C
½Ð°Ñ¾\ ³o½g¤å³¹
¤F¸Ñ¦p¦ó¼¶¼g¦nªº°ÝÃD³ø§i¡C
¹ï©ó¤å¥óªº×q
´£¥æ¤å¥ó
¤å¥óªº×§ï¤è±¡A¬O¥Ñ &a.doc; ¨Ó¼f¬d¡C
½Ð°Ñ¾\ FreeBSD Documentation Project Primer
¨ÓÀò±o§¹¾ãªº±Ð¾Ç²Ó¸`¡C
½Ð«ö·Ó ¤¤¤¶²Ðªº¤èªk¨Ï¥Î &man.send-pr.1;
¨Ó´£¥æ·sªº¤å¥ó¡A©ÎªÌ§ïµ½²{¦³ªº¤å¥ó (þ©È¬O«Ü¤pªº§ï¶i¤]¬OÅwªïªº¡I)¡C
¹ï©ó²{¦³ì©l½Xªº×§ï
FreeBSD-CURRENT
¦b²{¦³ì©l½X¤W¶i¦æ×§ï©Î¼W¥[¥\¯à¡A¦b¬YºØµ{«×¤W¬O»Ýn§ó¦h§Þ¥©ªº¨Æ¡A
¨Ã¥BÁÙ¸ò±z¹ï©ó¥Ø«e FreeBSD ªº¶}µo²{ª¬¤F¸Ñµ{«×¦³Ãö¡C
¦³¦hºØ¤è¦¡¥i¥H±o¨ì³QºÙ§@ FreeBSD-CURRENT
ªº FreeBSD ¶}µoª©¥»¡C
½Ð°Ñ¾\ FreeBSD ¨Ï¥Î¤â¥Uªº ¬ÛÃö³¡¥÷ ¡A¨Ó¤F¸Ñ¨Ï¥Î FreeBSD-CURRENT ªº¸Ô±¡¡C
¦bªºì©l½X¤W¶i¦æ×§ï¡A«h³q±`¥i¯àì©l½X¤w¹L®É¡A
©Î»P·sªºª©¥»®t²§¤Ó¤j¦ÓµLªk³Q«·s¾ã¦X¨ì FreeBSD ¤¤¡C
¦pªG±z¦³q &a.announce; ¥H¤Î &a.current; ªº¸Ü¡A
«h¥i¥H³z¹L¥¦Ì¨Ó¤jP¤F¸Ñ¥Ø«eªº¶}µoª¬ºA¡C
Y±z¯à°÷¾¨¶q¥H³Ì·sªºì©l½X¨Ó¶i¦æ±zªº×§ï¡A
«h¤U¤@¨Bn°µªº¨Æ±¡´N¬O²£¥Í±z©Òק諸 diff ÀÉ¡A
¨Ã±N¥¦µoµ¹ FreeBSD ªººûÅ@¤Hû¡C³o¶µ¤u§@¥i¥H³z¹L &man.diff.1;
©R¥O¨Ó§¹¦¨¡C
´£¥æ patch ®É¡A«ØÄ³ &man.diff.1; ®æ¦¡±Ä¥Î unified diff (¥i¥H¥Î diff
-u ¨Ó²£¥Í)¡C¤£¹L¡A¦pªG±z×§ï¤F¤j¶qªºì©l½X¡A
«h¨Ï¥Î diff -c ¨Ó¥Í¦¨ªº context diff
ªº diff ¥i¯à§ó®e©ö¾\Ū¡A¦]¦Ó±ÀÂ˨ϥΡC¤@¯ë¦Ó¨¥¡A¤j³£¬O±Ä¥Î diff -ruN §Y¥i¡C
diff
¨Ò¦p¡G
&prompt.user; diff -c oldfile newfile
©Î
&prompt.user; diff -c -r olddir newdir
±N·|¹ï¯S©w¥Ø¿ý¡A²£¥Í context ªº diff ÀÉ¡C
©ÎªÌ¹³¬O...
&prompt.user; diff -u oldfile newfile
©Î
&prompt.user; diff -u -r olddir newdir
±N²£¥Í¤@¼Ëªº diff ¡A¦ý¬O®æ¦¡¬° unified ¡C
§ó¦hªº²Ó¸`³¡¥÷¡A½Ð°Ñ¾\ &man.diff.1;¡C
¤@¥¹±z¨Ï¥Î &man.diff.1; ¨Ó²£¥Í diff ÀÉ (¥i¥H¨Ï¥Î
&man.patch.1; ©R¥O¨Ó´ú¸Õ¤@¤U)¡A´N¥i¥H´£¥æ¥¦Ì¡A¥H«K³Q FreeBSD ¦¬¿ý¡C
³z¹L¨Ï¥Î
¤¤©Ò¤¶²Ðªº &man.send-pr.1; µ{¦¡´N¥i¥H§¹¦¨³o¶µ¤u§@¡C
½Ðª`·N¡G¤£n¥u§â diff Àɵo¨ì &a.hackers;¡A
§_«h¥¦Ì¥i¯à·|³Q¿ò§Ñ¡I §ÚÌ·|«D±`·P¿E±z´£¥æªº×§ï
(³o¬O¤@Ó¸q¤up¹º¡I)¡F ¦]¬°§Ú̳£«Ü¦£¡A
¦]¦¹¦³®É¤£¤@©w¯à°÷¥ß§Y×¥¿°ÝÃD¡A¦ý PR ¸ê®Æ®w±N¤@ª½«O«ùµÛ³o¨Ç°O¿ý¡A
¦]¦¹¥un¦³¤H¦³¤F®É¶¡¥¦Ì´N¯à³Q§ï¥¿¤F¡C
¦pªG±zªº°ÝÃD³ø§i¤¤¥]¬A patch ¡A¤£n§Ñ¤F¦b¼ÐÃD¥[¤W
[PATCH] ¨Ó±j½Õ¤@¤U¡C
uuencode
¦pªG±z»{¬°¦X¾A (¨Ò¦p¼W¡B§RÀɮשΧó§ïÀɦW)¡A
ÁÙ¥i¥H¦Ò¼{¨Ï¥Î
tar ¨Ó±NÀÉ®×¥´¥]¡AµM«á¥Î &man.uuencode.1;
¨Ó½s½X¡C¦¹¥~¡A¤]¥i¥H¥Î &man.shar.1; ²£¥Íªº¤è¦¡¡C
¦pªG±zªº×§ï¥i¯à¦s¦b¼ç¦bªºª§Ä³¡A¨Ò¦p¡A
±z¤£½T©w¬ÛÃöªºª©Åv°ÝÃD¡A©ÎªÌ·Pı»Ýn¸g¹L§óÄY®æªº´_¼f¤~¥i¥Hµo§G¥¦Ì¡A
«hÀ³ª½±µµoµ¹ &a.core;¡A¦Ó¤£¬O³z¹L &man.send-pr.1; ¨Óµo°e¡C
&a.core; ³o¤p²Õ¦¨û¤j¦h±q¨Æ FreeBSD ªº¤é±`¤u§@¡C
»Ýnª`·Nªº¬O¡A³oÓ¤p²Õ¤]¦]¦¹¤Q¤À¦£¸L¡A
¦]¦¹¥u¦³¦b«D±`¥²nªº®ÉÔ¡A¤~À³¼g«Hµ¹¥LÌ¡C
½Ð°Ñ¦Ò &man.intro.9; ©M &man.style.9; ¥H¤F¸ÑÃö©ó¼¶¼gµ{¦¡½Xªº·®æ°¾¦n¡C
Y¯à¦b°e¥X¬ÛÃöµ{¦¡½X¤§«e¡A¥ý¤F¸Ñ³o¨Ç¡A¨º¹ï¤j®a¨Ó»¡±N¬O·¥¤jªºÀ°§U¡C
·sì©l½X©Î«nªº¥[ȳnÅé¥]
¦pªG±z¥´ºâ´£¨Ñ³W¼Ò¸û¤jªºì©l½X¡A©ÎªÌ¬° FreeBSD ¼W¥[«nªº·s¥\¯à¡A
«h¥i¯à¥²¶·±N¥¦Ì³z¹L uuencode ¶i¦æ½s½X¡A©Î¶Ç¨ì¬YÓ Web ©Î
FTP ¯¸ÂI¡A¥H«K§ó¦hªº¤H¯à°÷±o¨ì¥¦¡C¦pªG±z¨S¦³³o¼Ëªº¥D¾÷¡A
½Ð¨ì¬ÛÃöªº FreeBSD ¶l»¼½×¾Â´£¥X¡A¬Ý¬Ý¬O§_¦³¤HÄ@·NÀ°±z©ñ¸m¥¦Ì¡C
¹ï©ó¤j¶qªºì©l½X¦Ó¨¥¡AÃö©óª©Åvªº°ÝÃDªÖ©w·|³Q´£¥X¡C
FreeBSD °ò¥»¨t²Î¤¤¯à°÷¨Ï¥Îªºª©ÅvÁn©ú¥]¬A¡G
BSDBSD ª©ÅvÁn©ú ª©Åv¡C§Ú̶ɦV©ó¨Ï¥Î³oÃþ±ÂÅvªºì©l½X¡A
¦]¬°¥¦¡y¤£ªþ¥[¦h¾lªº±ø¥ó¡z¡A¦]¦Ó§ó¯à°÷§l¤Þ°Ó·~¥ø·~¨Ï¥Î¡C
FreeBSD ¨Ã¤£¤Ï¹ï°Ó·~¤½¥q¨Ï¥Î¥¦ªºì©l½X¡A¬Û¤Ï¡A
§ÚÌ¿n·¥¦a¹ªÀy°Ó·~¤½¥q¨Ï¥Î§Ú̪ºì©l½X¡A
·íµM¡A¦pªG¥¦ÌY³Ì²×¯à§â³¡¤Àì©l½X¡A«·s®½Ãص¹ FreeBSD ´N§ó¦n¤F¡C
GNU General Public License¡A©Î²ºÙ GPL
¡CGPL GNU General Public License GNU General Public License
§Ų́䣫ÜÅwªï¨Ï¥Î³o¼Ë±ÂÅvªºì©l½X¡A
¦]¬°°Ó·~¤½¥q¨Ï¥Î¥¦»Ýn°µ§ó¦hªº¤u§@¡C¤£¹L¡A¥Ñ©ó«Ü¦h¨Ï¥Î
GPL ±ÂÅvªºì©l½X¥Ø«e¬OµLªkÁ×§Kªº (compiler, assembler, text formatterµ¥µ¥)
¡A©Úµ´¨Ï¥Î©Ò¦³±Ä¥Î³o¼Ë±ÂÅvªº³nÅé¬O«Ü¤£©ú´¼ªº¡C
±Ä¥Î GPL ±ÂÅvªºì©l½X·|³Q©ñ¨ìì©l½Xªº¤@¨Ç¯S©wªº¦ì¸m¡A¨Ò¦p
/sys/gnu ©Î
/usr/src/gnu ¡A¥H«K¨º¨Ç»{¬° GPL
¥i¯à·|³y¦¨³Â·Ðªº¤H¯à°÷§@¥X¾A·íªº§PÂ_¡C
¨Ï¥Î¨ä¥¦±ÂÅvªºì©l½X¦b¶i¤J FreeBSD ¤§«e¥²¶·¸g¹L·V«ªº´_¼f©M¦Ò¼{¡C
±Ä¥Î¥]§tÄY¼F¨îªº°Ó·~±ÂÅvªºì©l½X¡A¤@¯ë¨Ó»¡·|³Q©Úµ´¡A
¦ý§Ú̹ªÀy³o¨Çì©l½Xªº§@ªÌ¡A³z¹L¦Û¤vªººÞ¹D¨Óµo¥¬¥¦Ì¡C
Yn¦b±zªº¦¨ªG¤W¥[¤J BSD-based
ª©Åvªº¸Ü¡A
½Ð§â¤U¦C¤å¦r©ñ¨ì¨C¥÷ì©l½Xªº³Ì¶}©l³¡¤À¡A
¨Ã¥Î¾A·íªº¤å¦r´À´« %% ¤§¶¡ªº¤å¦r¡C
Copyright (c) %%proper_years_here%%
%%your_name_here%%, %%your_state%% %%your_zip%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
$Id$
¬°¤F¤è«K±zªº¨Ï¥Î¡A¦b
/usr/share/examples/etc/bsd-style-copyright
¤]¥i¥H§ä¨ì¦¹±ÂÅvªº°Æ¥»¡C
ÃÙ§U¸êª÷¡BµwÅé©Î Internet mirror
§ÚÌ«D±`Ä@·N±µ¨ü¦UºØ§Î¦¡ªº®½ÃØ¡A¥H¶i¤@¨B©Ý®i FreeBSD p¹º
¡A¦]¬°¦³±zªº¤ä«ù¡A¹³§Ú̳o¼Ëªº¸q¤u§V¤O¤~¯à°÷¦³§ó¤jªº¦¨´N¡I
®½ÃصwÅé¤]«D±`«n¡A¦]¬°³o¼Ë¯à°÷À°§U§Ú̼W¥[¥i¤ä´©ªºµwÅéºØÃþ¡A
¦Ó§Ṳ́¤ªº«Ü¦h¤H¨Ã¨S¦³¨¬°÷ªº¸êª÷¨ÓÁʸm³o¨ÇµwÅé¡C
-
- ®½´Ú
+
+ ®½´Ú
FreeBSD °òª÷·|¬O¤@Ó«DÀç§Qªº¡B¦³½Òµ|ÁŧKÅvªº°òª÷·|¡A
¤§©Ò¥H·|«Ø¥ß³oÓ°òª÷·|¡A¬O¬°¤FÅý FreeBSD p¹º¯à°÷¥iªø¥i¤[¡C
¦]¬°¸Ó°òª÷·|ÄÝ 501(c)3 ¹êÅé¡A¤@¯ë¦Ó¨¥®½´Úµ¹°òª÷·|ªº¸Ü¡A¥i¥H§Kú¬ü°êÁp¨¹¦¬¤Jµ|¡A
¥H¤Î¬ìù©Ô¦h¦{¦¬¤Jµ|¡C³q±`¹ï©ó¦³½Òµ|ÁŧKÅvªº¹êÅé¶i¦æ®½Ãتº¸Ü¡A
¥i¥H§é©èÁp¨¹¦¬¤J¤¤À³½Òµ|³¡¤Àªºª÷ÃB¡C
±z¥i¥H§â¤ä²¼±H©¹¡G
The FreeBSD Foundation
7321 Brockway Dr.
Boulder , CO 80303
USA
FreeBSD °òª÷·|²{¦b¥i¥H³z¹L PayPal ±qºô¤W±µ¨ü®½´Ú¡C
¦pªG±z·Q¦V°òª÷·|®½´Ú¡A½Ð°Ñ¾\ FreeBSD °òª÷·| ºô¯¸¡C
Ãö©ó FreeBSD °òª÷·|ªº§ó¦h¸Ô±¡¡A¥i¥H¦b FreeBSD
°òª÷·| -- ¤¶²Ð §ä¨ì¡CnÁpµ¸°òª÷·|¡A
½Ðµo°e¹q¤l¶l¥ó¨ì
bod@FreeBSDFoundation.org ¡C
®½ÃصwÅé
®½ÃØ
FreeBSD p¹ºÅwªï¥ô¦ó¤H®½ÃØ¥i¥H¨Ï¥ÎªºµwÅé¡C
¦pªG±z¦³¿³½ì®½ÃصwÅé¡A½ÐÁpô ®½ÃØÁpµ¸¤H¿ì¤½«Ç ¡C
¦¨¬° FreeBSD mirror ªººô¯¸
§ÚÌÅwªï·sªº FTP¡BWWW ©Î
cvsup mirror ¯¸¡C¦pªG±z§Æ±æ¦¨¬°³o¼Ëªº mirror ¯¸¡A
½Ð°Ñ¾\ ¦p¦ó¬[³] FreeBSD mirror
¤@¤å¡A¥H¤F¸Ñ¶i¤@¨Bªº±¡ªp¡C
diff --git a/zh_TW.Big5/books/handbook/mirrors/chapter.xml b/zh_TW.Big5/books/handbook/mirrors/chapter.xml
index e143fa9cca..47a4d3d27b 100644
--- a/zh_TW.Big5/books/handbook/mirrors/chapter.xml
+++ b/zh_TW.Big5/books/handbook/mirrors/chapter.xml
@@ -1,3201 +1,3201 @@
¨ú±o FreeBSD ªº¤è¦¡
CDROM ¤Î DVD µo¦æ°Ó
²°¸Ë²£«~ªº¹s°â³B¡G
FreeBSD ²°¸Ë²£«~(§t FreeBSD ¥úºÐ¤Î¨ä¥L¤@¨Ç³nÅé¡B®Ñ±¤å¥ó)ªº¹s°â·~ªÌ¡G
CompUSA
WWW:
Frys Electronics
WWW:
CD ¤Î DVD ¦X¶°
FreeBSD ¥úºÐ(CD ¤Î DVD)ªººô¸ô¹s°â·~ªÌ¡G
BSD Mall by Daemon News
PO Box 161
Nauvoo , IL 62354
USA
Phone: +1 866 273-6255
Fax: +1 217 453-9956
Email: sales@bsdmall.com
WWW:
BSD-Systems
Email: info@bsd-systems.co.uk
WWW:
FreeBSD Mall, Inc.
3623 Sanford Street
Concord , CA 94520-1405
USA
Phone: +1 925 674-0783
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW:
Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germany
Phone: (089) 428 419
WWW:
Ikarios
22-24 rue Voltaire
92000 Nanterre
France
WWW:
JMC Software
Ireland
Phone: 353 1 6291282
WWW:
Linux CD Mall
Private Bag MBE N348
Auckland 1030
New Zealand
Phone: +64 21 866529
WWW:
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
United Kingdom
Phone: +44 1491 837010
Fax: +44 1491 837016
WWW:
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Poland
Phone: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW:
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Phone: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW:
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
¸g¾P°Ó(Distributors)
Y§A¬O°Ï°ì¸g¾P°Ó¡A¨Ã·Q¥N²z¸g¾P FreeBSD ¥úºÐ²£«~ªº¸Ü¡A½Ð»P¤U¦Cªº¥N²z°ÓÁpô¡G
Cylogistics
809B Cuesta Dr., #2149
Mountain View , CA 94040
USA
Phone: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW:
Ingram Micro
1600 E. St. Andrew Place
Santa Ana , CA 92705-4926
USA
Phone: 1 (800) 456-8000
WWW:
Kudzu, LLC
7375 Washington Ave. S.
Edina , MN 55439
USA
Phone: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.com
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: info@linuxcenter.ru
WWW:
Navarre Corp
7400 49th Ave South
New Hope , MN 55428
USA
Phone: +1 763 535-8333
Fax: +1 763 535-0341
WWW:
FTP ¯¸
The official sources for FreeBSD are available via anonymous FTP
from a worldwide set of mirror sites. The site
is well
connected and allows a large number of connections to it, but
you are probably better off finding a closer
mirror site (especially if you decide to set up some sort of
mirror site).
The FreeBSD mirror
sites database is more accurate than the mirror listing in the
Handbook, as it gets its information from the DNS rather than relying on
static lists of hosts.
Additionally, FreeBSD is available via anonymous FTP from the
following mirror sites. If you choose to obtain FreeBSD via anonymous
FTP, please try to use a site near you. The mirror sites listed as
Primary Mirror Sites
typically have the entire FreeBSD archive (all
the currently available versions for each of the architectures) but
you will probably have faster download times from a site that is
in your country or region. The regional sites carry the most recent
versions for the most popular architecture(s) but might not carry
the entire FreeBSD archive. All sites provide access via anonymous
FTP but some sites also provide access via other methods. The access
methods available for each site are provided in parentheses
after the hostname.
&chap.mirrors.ftp.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.ftp.inc;
Anonymous CVS
-
- anoncvs ²¤¶
+
+ anoncvs ²¤¶
CVS
anonymous
Anonymous CVS (or, as it is otherwise known,
anoncvs ) is a feature provided by the CVS
utilities bundled with FreeBSD for synchronizing with a remote
CVS repository. Among other things, it allows users of FreeBSD
to perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers.
To use it, one simply sets the CVSROOT
environment variable to point at the appropriate anoncvs server,
provides the well-known password anoncvs
with the
cvs login command, and then uses the
&man.cvs.1; command to access it like any local
repository.
The cvs login command, stores the passwords
that are used for authenticating to the CVS server in a file
called .cvspass in your
HOME directory. If this file does not exist,
you might get an error when trying to use cvs
login for the first time. Just make an empty
.cvspass file, and retry to login.
While it can also be said that the CVSup and anoncvs
services both perform essentially the same function, there are
various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell,
CVSup is much more efficient in its
usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use
CVSup , a special client must first be
installed and configured before any bits can be grabbed, and
then only in the fairly large chunks which
CVSup calls
collections .
Anoncvs , by contrast, can be used
to examine anything from an individual file to a specific
program (like ls or grep )
by referencing the CVS module name. Of course,
anoncvs is also only good for
read-only operations on the CVS repository, so if it is your
intention to support local development in one repository shared
with the FreeBSD project bits then
CVSup is really your only
option.
-
- Using Anonymous CVS
+
+ Using Anonymous CVS
Configuring &man.cvs.1; to use an Anonymous CVS repository
is a simple matter of setting the CVSROOT
environment variable to point to one of the FreeBSD project's
anoncvs servers. At the time of this
writing, the following servers are available:
Austria(¶ø¦a§Q) :
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(Use cvs login and enter any
password when prompted.)
France(ªk°ê) :
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (password anoncvs
), ssh (no password))
Germany(¼w°ê) :
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(Use cvs login and enter the password
anoncvs
when prompted.)
Germany(¼w°ê) :
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
Japan(¤é¥») :
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Use cvs login and enter the password
anoncvs
when prompted.)
USA(¬ü°ê) :
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(ssh only - no password)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
USA(¬ü°ê) :
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (ssh only - no
password)
SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com
SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub
Since CVS allows one to check out
virtually
any version of the FreeBSD sources that ever existed (or, in
some cases, will exist), you need to be
familiar with the revision (-r ) flag to
&man.cvs.1; and what some of the permissible values for it in
the FreeBSD Project repository are.
There are two kinds of tags, revision tags and branch tags.
A revision tag refers to a specific revision. Its meaning stays
the same from day to day. A branch tag, on the other hand,
refers to the latest revision on a given line of development, at
any given time. Because a branch tag does not refer to a
specific revision, it may mean something different tomorrow than
it means today.
contains revision tags that users
might be interested
in. Again, none of these are valid for the Ports Collection
since the Ports Collection does not have multiple
revisions.
When you specify a branch tag, you normally receive the
latest versions of the files on that line of development. If
you wish to receive some past version, you can do so by
specifying a date with the -D date flag.
See the &man.cvs.1; manual page for more details.
Examples
While it really is recommended that you read the manual page
for &man.cvs.1; thoroughly before doing anything, here are some
quick examples which essentially show how to use Anonymous
CVS:
Checking Out Something from -CURRENT (&man.ls.1;):
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co ls
Using SSH to check out the src/
tree:
&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
Checking Out the Version of &man.ls.1; in the 6-STABLE
Branch:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co -rRELENG_6 ls
Creating a List of Changes (as Unified Diffs) to &man.ls.1;
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
Finding Out What Other Module Names Can Be Used:
&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs login
At the prompt, enter the password anoncvs
.
&prompt.user; cvs co modules
&prompt.user; more modules/modules
Other Resources
The following additional resources may be helpful in learning
CVS:
CVS Tutorial from Cal Poly.
CVS Home ,
the CVS development and support community.
CVSweb is
the FreeBSD Project web interface for CVS.
Using CTM
CTM
CTM is a method for keeping a
remote directory tree in sync with a central one. It has been
developed for usage with FreeBSD's source trees, though other
people may find it useful for other purposes as time goes by.
Little, if any, documentation currently exists at this time on the
process of creating deltas, so contact the &a.ctm-users.name; mailing list for more
information and if you wish to use CTM
for other things.
Why Should I Use CTM ?
CTM will give you a local copy of
the FreeBSD source trees. There are a number of
flavors
of the tree available. Whether you wish
to track the entire CVS tree or just one of the branches,
CTM can provide you the information.
If you are an active developer on FreeBSD, but have lousy or
non-existent TCP/IP connectivity, or simply wish to have the
changes automatically sent to you,
CTM was made for you. You will need
to obtain up to three deltas per day for the most active
branches. However, you should consider having them sent by
automatic email. The sizes of the updates are always kept as
small as possible. This is typically less than 5K, with an
occasional (one in ten) being 10-50K and every now and then a
large 100K+ or more coming around.
You will also need to make yourself aware of the various
caveats related to working directly from the development sources
rather than a pre-packaged release. This is particularly true
if you choose the current
sources. It is
recommended that you read Staying
current with FreeBSD.
What Do I Need to Use
CTM ?
You will need two things: The CTM
program, and the initial deltas to feed it (to get up to
current
levels).
The CTM program has been part of
FreeBSD ever since version 2.0 was released, and lives in
/usr/src/usr.sbin/ctm if you have a copy
of the source available.
The deltas
you feed
CTM can be had two ways, FTP or
email. If you have general FTP access to the Internet then the
following FTP sites support access to
CTM :
or see section mirrors.
FTP the relevant directory and fetch the
README file, starting from there.
If you wish to get your deltas via email:
Subscribe to one of the
CTM distribution lists.
&a.ctm-cvs-cur.name; supports the entire CVS tree.
&a.ctm-src-cur.name; supports the head of the development
branch. &a.ctm-src-4.name; supports the 4.X release
branch, etc.. (If you do not know how to subscribe yourself
to a list, click on the list name above or go to
&a.mailman.lists.link; and click on the list that you
wish to subscribe to. The list page should contain all of
the necessary subscription instructions.)
When you begin receiving your CTM
updates in the mail, you may use the
ctm_rmail program to unpack and apply them.
You can actually use the ctm_rmail program
directly from a entry in /etc/aliases if
you want to have the process run in a fully automated fashion.
Check the ctm_rmail manual page for more
details.
No matter what method you use to get the
CTM deltas, you should subscribe to
the &a.ctm-announce.name; mailing list. In
the future, this will be the only place where announcements
concerning the operations of the
CTM system will be posted. Click
on the list name above and follow the instructions
to subscribe to the
list.
Using CTM for the First
Time
Before you can start using CTM
deltas, you will need to get to a starting point for the deltas
produced subsequently to it.
First you should determine what you already have. Everyone
can start from an empty
directory. You must use
an initial Empty
delta to start off your
CTM supported tree. At some point it
is intended that one of these started
deltas be
distributed on the CD for your convenience, however, this does
not currently happen.
Since the trees are many tens of megabytes, you should
prefer to start from something already at hand. If you have a
-RELEASE CD, you can copy or extract an initial source from it.
This will save a significant transfer of data.
You can recognize these starter
deltas by the
X appended to the number
(src-cur.3210XEmpty.gz for instance). The
designation following the X corresponds to
the origin of your initial seed
.
Empty is an empty directory. As a rule a
base transition from Empty is produced
every 100 deltas. By the way, they are large! 70 to 80
Megabytes of gzip 'd data is common for the
XEmpty deltas.
Once you have picked a base delta to start from, you will also
need all deltas with higher numbers following it.
Using CTM in Your Daily
Life
To apply the deltas, simply say:
&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM understands deltas which have
been put through gzip , so you do not need to
gunzip them first, this saves disk space.
Unless it feels very secure about the entire process,
CTM will not touch your tree. To
verify a delta you can also use the -c flag and
CTM will not actually touch your
tree; it will merely verify the integrity of the delta and see
if it would apply cleanly to your current tree.
There are other options to CTM
as well, see the manual pages or look in the sources for more
information.
That is really all there is to it. Every time you get a new
delta, just run it through CTM to
keep your sources up to date.
Do not remove the deltas if they are hard to download again.
You just might want to keep them around in case something bad
happens. Even if you only have floppy disks, consider using
fdwrite to make a copy.
Keeping Your Local Changes
As a developer one would like to experiment with and change
files in the source tree. CTM
supports local modifications in a limited way: before checking
for the presence of a file foo , it first
looks for foo.ctm . If this file exists,
CTM will operate on it instead of
foo .
This behavior gives us a simple way to maintain local
changes: simply copy the files you plan to modify to the
corresponding file names with a .ctm
suffix. Then you can freely hack the code, while CTM keeps the
.ctm file up-to-date.
Other Interesting CTM Options
Finding Out Exactly What Would Be Touched by an
Update
You can determine the list of changes that
CTM will make on your source
repository using the -l option to
CTM .
This is useful if you would like to keep logs of the
changes, pre- or post- process the modified files in any
manner, or just are feeling a tad paranoid.
Making Backups Before Updating
Sometimes you may want to backup all the files that would
be changed by a CTM update.
Specifying the -B backup-file option
causes CTM to backup all files that
would be touched by a given CTM
delta to backup-file .
Restricting the Files Touched by an Update
Sometimes you would be interested in restricting the scope
of a given CTM update, or may be
interested in extracting just a few files from a sequence of
deltas.
You can control the list of files that
CTM would operate on by specifying
filtering regular expressions using the -e
and -x options.
For example, to extract an up-to-date copy of
lib/libc/Makefile from your collection of
saved CTM deltas, run the commands:
&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
For every file specified in a
CTM delta, the -e
and -x options are applied in the order given
on the command line. The file is processed by
CTM only if it is marked as
eligible after all the -e and
-x options are applied to it.
Future Plans for CTM
Tons of them:
Use some kind of authentication into the CTM system, so
as to allow detection of spoofed CTM updates.
Clean up the options to CTM ,
they became confusing and counter intuitive.
Miscellaneous Stuff
There is a sequence of deltas for the
ports collection too, but interest has not
been all that high yet.
CTM Mirrors
CTM/FreeBSD is available via anonymous
FTP from the following mirror sites. If you choose to obtain CTM via
anonymous FTP, please try to use a site near you.
In case of problems, please contact the &a.ctm-users.name;
mailing list.
California, Bay Area, official source
South Africa, backup server for old deltas
Taiwan/R.O.C.(¥xÆW/¤¤µØ¥Á°ê)
If you did not find a mirror near to you or the mirror is
incomplete, try to use a search engine such as
alltheweb .
Using CVSup
CVSup ²¤¶
CVSup is a software package for
distributing and updating source trees from a master CVS
repository on a remote server host. The FreeBSD sources are
maintained in a CVS repository on a central development machine
in California. With CVSup , FreeBSD
users can easily keep their own source trees up to date.
CVSup uses the so-called
pull model of updating. Under the pull
model, each client asks the server for updates, if and when they
are wanted. The server waits passively for update requests from
its clients. Thus all updates are instigated by the client.
The server never sends unsolicited updates. Users must either
run the CVSup client manually to get
an update, or they must set up a cron job to
run it automatically on a regular basis.
The term CVSup , capitalized just
so, refers to the entire software package. Its main components
are the client cvsup which runs on each
user's machine, and the server cvsupd which
runs at each of the FreeBSD mirror sites.
As you read the FreeBSD documentation and mailing lists, you
may see references to sup .
Sup was the predecessor of
CVSup , and it served a similar
purpose. CVSup is used much in the
same way as sup and, in fact, uses configuration files which are
backward-compatible with sup 's.
Sup is no longer used in the FreeBSD
project, because CVSup is both faster
and more flexible.
Installation
The easiest way to install CVSup
is to use the precompiled net/cvsup package
from the FreeBSD packages collection.
If you prefer to build CVSup from
source, you can use the net/cvsup
port instead. But be forewarned: the
net/cvsup port depends on the Modula-3
system, which takes a substantial amount of time and
disk space to download and build.
If you are going to be using
CVSup on a machine which will not have
&xfree86; or &xorg; installed, such as a server, be
sure to use the port which does not include the
CVSup GUI ,
net/cvsup-without-gui .
CVSup Configuration
CVSup 's operation is controlled
by a configuration file called the supfile .
There are some sample supfiles in the
directory /usr/share/examples/cvsup/ .
The information in a supfile answers
the following questions for CVSup :
Which files do you
want to receive?
Which versions of them
do you want?
Where do you want to
get them from?
Where do you want to
put them on your own machine?
Where do you want to
put your status files?
In the following sections, we will construct a typical
supfile by answering each of these
questions in turn. First, we describe the overall structure of
a supfile .
A supfile is a text file. Comments
begin with # and extend to the end of the
line. Lines that are blank and lines that contain only
comments are ignored.
Each remaining line describes a set of files that the user
wishes to receive. The line begins with the name of a
collection
, a logical grouping of files defined by
the server. The name of the collection tells the server which
files you want. After the collection name come zero or more
fields, separated by white space. These fields answer the
questions listed above. There are two types of fields: flag
fields and value fields. A flag field consists of a keyword
standing alone, e.g., delete or
compress . A value field also begins with a
keyword, but the keyword is followed without intervening white
space by = and a second word. For example,
release=cvs is a value field.
A supfile typically specifies more than
one collection to receive. One way to structure a
supfile is to specify all of the relevant
fields explicitly for each collection. However, that tends to
make the supfile lines quite long, and it
is inconvenient because most fields are the same for all of the
collections in a supfile .
CVSup provides a defaulting mechanism
to avoid these problems. Lines beginning with the special
pseudo-collection name *default can be used
to set flags and values which will be used as defaults for the
subsequent collections in the supfile . A
default value can be overridden for an individual collection, by
specifying a different value with the collection itself.
Defaults can also be changed or augmented in mid-supfile by
additional *default lines.
With this background, we will now proceed to construct a
supfile for receiving and updating the main
source tree of FreeBSD-CURRENT.
Which files do you want
to receive?
The files available via CVSup
are organized into named groups called
collections
. The collections that are
available are described in the following section. In this
example, we
wish to receive the entire main source tree for the FreeBSD
system. There is a single large collection
src-all which will give us all of that.
As a first step toward constructing our
supfile , we
simply list the collections, one per line (in this case,
only one line):
src-all
Which version(s) of them
do you want?
With CVSup , you can receive
virtually any version of the sources that ever existed.
That is possible because the
cvsupd server works directly from
the CVS repository, which contains all of the versions. You
specify which one of them you want using the
tag= and date= value
fields.
Be very careful to specify any tag=
fields correctly. Some tags are valid only for certain
collections of files. If you specify an incorrect or
misspelled tag, CVSup
will delete files which you probably
do not want deleted. In particular, use only
tag=. for the
ports-* collections.
The tag= field names a symbolic tag
in the repository. There are two kinds of tags, revision
tags and branch tags. A revision tag refers to a specific
revision. Its meaning stays the same from day to day. A
branch tag, on the other hand, refers to the latest revision
on a given line of development, at any given time. Because
a branch tag does not refer to a specific revision, it may
mean something different tomorrow than it means
today.
contains branch tags that
users might be interested in. When specifying a tag in
CVSup 's configuration file, it
must be preceded with tag=
(RELENG_4 will become
tag=RELENG_4 ).
Keep in mind that only the tag=. is
relevant for the Ports Collection.
Be very careful to type the tag name exactly as shown.
CVSup cannot distinguish
between valid and invalid tags. If you misspell the tag,
CVSup will behave as though you
had specified a valid tag which happens to refer to no
files at all. It will delete your existing sources in
that case.
When you specify a branch tag, you normally receive the
latest versions of the files on that line of development.
If you wish to receive some past version, you can do so by
specifying a date with the date= value
field. The &man.cvsup.1; manual page explains how to do
that.
For our example, we wish to receive FreeBSD-CURRENT. We
add this line at the beginning of our
supfile :
*default tag=.
There is an important special case that comes into play
if you specify neither a tag= field nor a
date= field. In that case, you receive
the actual RCS files directly from the server's CVS
repository, rather than receiving a particular version.
Developers generally prefer this mode of operation. By
maintaining a copy of the repository itself on their
systems, they gain the ability to browse the revision
histories and examine past versions of files. This gain is
achieved at a large cost in terms of disk space,
however.
Where do you want to get
them from?
We use the host= field to tell
cvsup where to obtain its updates. Any
of the CVSup mirror
sites will do, though you should try to select one
that is close to you in cyberspace. In this example we will
use a fictional FreeBSD distribution site,
cvsup99.FreeBSD.org :
*default host=cvsup99.FreeBSD.org
You will need to change the host to one that actually
exists before running CVSup .
On any particular run of
cvsup , you can override the host setting
on the command line, with -h
hostname .
Where do you want to put
them on your own machine?
The prefix= field tells
cvsup where to put the files it receives.
In this example, we will put the source files directly into
our main source tree, /usr/src . The
src directory is already implicit in
the collections we have chosen to receive, so this is the
correct specification:
*default prefix=/usr
Where should
cvsup maintain its status files?
The CVSup client maintains
certain status files in what
is called the base
directory. These files
help CVSup to work more
efficiently, by keeping track of which updates you have
already received. We will use the standard base directory,
/var/db :
*default base=/var/db
If your base directory does not already exist, now would
be a good time to create it. The cvsup
client will refuse to run if the base directory does not
exist.
Miscellaneous supfile
settings:
There is one more line of boiler plate that normally
needs to be present in the
supfile :
*default release=cvs delete use-rel-suffix compress
release=cvs indicates that the server
should get its information out of the main FreeBSD CVS
repository. This is virtually always the case, but there
are other possibilities which are beyond the scope of this
discussion.
delete gives
CVSup permission to delete files.
You should always specify this, so that
CVSup can keep your source tree
fully up-to-date. CVSup is
careful to delete only those files for which it is
responsible. Any extra files you happen to have will be
left strictly alone.
use-rel-suffix is ... arcane. If you
really want to know about it, see the &man.cvsup.1; manual
page. Otherwise, just specify it and do not worry about
it.
compress enables the use of
gzip-style compression on the communication channel. If
your network link is T1 speed or faster, you probably should
not use compression. Otherwise, it helps
substantially.
Putting it all together:
Here is the entire supfile for our
example:
*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
The refuse File
As mentioned above, CVSup uses
a pull method . Basically, this means that
you connect to the CVSup server, and
it says, Here is what you can download from
me...
, and your client responds OK, I will take
this, this, this, and this.
In the default
configuration, the CVSup client will
take every file associated with the collection and tag you
chose in the configuration file. However, this is not always
what you want, especially if you are synching the doc , ports , or
www trees — most people cannot read four or five
languages, and therefore they do not need to download the
language-specific files. If you are
CVSup ing the Ports Collection, you
can get around this by specifying each collection individually
(e.g., ports-astrology ,
ports-biology , etc instead of simply
saying ports-all ). However, since the doc
and www trees do not have language-specific collections, you
must use one of CVSup 's many nifty
features: the refuse file.
The refuse file essentially tells
CVSup that it should not take every
single file from a collection; in other words, it tells the
client to refuse certain files from the
server. The refuse file can be found (or, if you do not yet
have one, should be placed) in
base /sup/ .
base is defined in your supfile ;
our defined base is
/var/db ,
which means that by default the refuse file is
/var/db/sup/refuse .
The refuse file has a very simple format; it simply
contains the names of files or directories that you do not wish
to download. For example, if you cannot speak any languages other
than English and some German, and you do not feel the need to read
the German translation of documentation, you can put the following in your
refuse file:
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
and so forth for the other languages (you can find the
full list by browsing the FreeBSD
CVS repository ).
With this very useful feature, those users who are on
slow links or pay by the minute for their Internet connection
will be able to save valuable time as they will no longer need
to download files that they will never use. For more
information on refuse files and other neat
features of CVSup , please view its
manual page.
Running CVSup
You are now ready to try an update. The command line for
doing this is quite simple:
&prompt.root; cvsup supfile
where supfile
is of course the name of the supfile you have just created.
Assuming you are running under X11, cvsup
will display a GUI window with some buttons to do the usual
things. Press the go button, and watch it
run.
Since you are updating your actual
/usr/src tree in this example, you will
need to run the program as root so that
cvsup has the permissions it needs to update
your files. Having just created your configuration file, and
having never used this program before, that might
understandably make you nervous. There is an easy way to do a
trial run without touching your precious files. Just create an
empty directory somewhere convenient, and name it as an extra
argument on the command line:
&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/dest
The directory you specify will be used as the destination
directory for all file updates.
CVSup will examine your usual files
in /usr/src , but it will not modify or
delete any of them. Any file updates will instead land in
/var/tmp/dest/usr/src .
CVSup will also leave its base
directory status files untouched when run this way. The new
versions of those files will be written into the specified
directory. As long as you have read access to
/usr/src , you do not even need to be
root to perform this kind of trial run.
If you are not running X11 or if you just do not like GUIs,
you should add a couple of options to the command line when you
run cvsup :
&prompt.root; cvsup -g -L 2 supfile
The -g tells
CVSup not to use its GUI. This is
automatic if you are not running X11, but otherwise you have to
specify it.
The -L 2 tells
CVSup to print out the
details of all the file updates it is doing. There are three
levels of verbosity, from -L 0 to
-L 2 . The default is 0, which means total
silence except for error messages.
There are plenty of other options available. For a brief
list of them, type cvsup -H . For more
detailed descriptions, see the manual page.
Once you are satisfied with the way updates are working, you
can arrange for regular runs of CVSup
using &man.cron.8;.
Obviously, you should not let CVSup
use its GUI when running it from &man.cron.8;.
CVSup File Collections
The file collections available via
CVSup are organized hierarchically.
There are a few large collections, and they are divided into
smaller sub-collections. Receiving a large collection is
equivalent to receiving each of its sub-collections. The
hierarchical relationships among collections are reflected by
the use of indentation in the list below.
The most commonly used collections are
src-all , and
ports-all . The other collections are used
only by small groups of people for specialized purposes, and
some mirror sites may not carry all of them.
cvs-all release=cvs
The main FreeBSD CVS repository, including the
cryptography code.
distrib release=cvs
Files related to the distribution and mirroring
of FreeBSD.
doc-all release=cvs
Sources for the FreeBSD Handbook and other
documentation. This does not include files for
the FreeBSD web site.
ports-all release=cvs
The FreeBSD Ports Collection.
If you do not want to update the whole of
ports-all (the whole ports tree),
but use one of the subcollections listed below,
make sure that you always update
the ports-base subcollection!
Whenever something changes in the ports build
infrastructure represented by
ports-base , it is virtually certain
that those changes will be used by real
ports real soon. Thus, if you only update the
real
ports and they use some of the new
features, there is a very high chance that their build
will fail with some mysterious error message. The
very first thing to do in this
case is to make sure that your
ports-base subcollection is up to
date.
If you are going to be building your own local
copy of ports/INDEX , you
must accept
ports-all (the whole ports tree).
Building ports/INDEX with
a partial tree is not supported. See the
FAQ .
ports-accessibility
release=cvs
Software to help disabled users.
ports-arabic
release=cvs
Arabic language support.
ports-archivers
release=cvs
Archiving tools.
ports-astro
release=cvs
Astronomical ports.
ports-audio
release=cvs
Sound support.
ports-base
release=cvs
The Ports Collection build infrastructure -
various files located in the
Mk/ and
Tools/ subdirectories of
/usr/ports .
Please see the important
warning above: you should
always update this
subcollection, whenever you update any part of
the FreeBSD Ports Collection!
ports-benchmarks
release=cvs
Benchmarks.
ports-biology
release=cvs
Biology.
ports-cad
release=cvs
Computer aided design tools.
ports-chinese
release=cvs
Chinese language support.
ports-comms
release=cvs
Communication software.
ports-converters
release=cvs
character code converters.
ports-databases
release=cvs
Databases.
ports-deskutils
release=cvs
Things that used to be on the desktop
before computers were invented.
ports-devel
release=cvs
Development utilities.
ports-dns
release=cvs
DNS related software.
ports-editors
release=cvs
Editors.
ports-emulators
release=cvs
Emulators for other operating
systems.
ports-finance
release=cvs
Monetary, financial and related applications.
ports-ftp
release=cvs
FTP client and server utilities.
ports-games
release=cvs
Games.
ports-german
release=cvs
German language support.
ports-graphics
release=cvs
Graphics utilities.
ports-hebrew
release=cvs
Hebrew language support.
ports-hungarian
release=cvs
Hungarian language support.
ports-irc
release=cvs
Internet Relay Chat utilities.
ports-japanese
release=cvs
Japanese language support.
ports-java
release=cvs
&java; utilities.
ports-korean
release=cvs
Korean language support.
ports-lang
release=cvs
Programming languages.
ports-mail
release=cvs
Mail software.
ports-math
release=cvs
Numerical computation software.
ports-mbone
release=cvs
MBone applications.
ports-misc
release=cvs
Miscellaneous utilities.
ports-multimedia
release=cvs
Multimedia software.
ports-net
release=cvs
Networking software.
ports-net-im
release=cvs
Instant messaging software.
ports-net-mgmt
release=cvs
Network management software.
ports-net-p2p
release=cvs
Peer to peer networking.
ports-news
release=cvs
USENET news software.
ports-palm
release=cvs
Software support for Palm
series.
ports-polish
release=cvs
Polish language support.
ports-portuguese
release=cvs
Portuguese language support.
ports-print
release=cvs
Printing software.
ports-russian
release=cvs
Russian language support.
ports-science
release=cvs
Science.
ports-security
release=cvs
Security utilities.
ports-shells
release=cvs
Command line shells.
ports-sysutils
release=cvs
System utilities.
ports-textproc
release=cvs
text processing utilities (does not
include desktop publishing).
ports-ukrainian
release=cvs
Ukrainian language support.
ports-vietnamese
release=cvs
Vietnamese language support.
ports-www
release=cvs
Software related to the World Wide
Web.
ports-x11
release=cvs
Ports to support the X window
system.
ports-x11-clocks
release=cvs
X11 clocks.
ports-x11-fm
release=cvs
X11 file managers.
ports-x11-fonts
release=cvs
X11 fonts and font utilities.
ports-x11-toolkits
release=cvs
X11 toolkits.
ports-x11-servers
release=cvs
X11 servers.
ports-x11-themes
release=cvs
X11 themes.
ports-x11-wm
release=cvs
X11 window managers.
projects-all release=cvs
Sources for the FreeBSD projects repository.
src-all release=cvs
The main FreeBSD sources, including the
cryptography code.
src-base
release=cvs
Miscellaneous files at the top of
/usr/src .
src-bin
release=cvs
User utilities that may be needed in
single-user mode
(/usr/src/bin ).
src-contrib
release=cvs
Utilities and libraries from outside the
FreeBSD project, used relatively unmodified
(/usr/src/contrib ).
src-crypto release=cvs
Cryptography utilities and libraries from
outside the FreeBSD project, used relatively
unmodified
(/usr/src/crypto ).
src-eBones release=cvs
Kerberos and DES
(/usr/src/eBones ). Not
used in current releases of FreeBSD.
src-etc
release=cvs
System configuration files
(/usr/src/etc ).
src-games
release=cvs
Games
(/usr/src/games ).
src-gnu
release=cvs
Utilities covered by the GNU Public
License (/usr/src/gnu ).
src-include
release=cvs
Header files
(/usr/src/include ).
src-kerberos5
release=cvs
Kerberos5 security package
(/usr/src/kerberos5 ).
src-kerberosIV
release=cvs
KerberosIV security package
(/usr/src/kerberosIV ).
src-lib
release=cvs
Libraries
(/usr/src/lib ).
src-libexec
release=cvs
System programs normally executed by other
programs
(/usr/src/libexec ).
src-release
release=cvs
Files required to produce a FreeBSD
release
(/usr/src/release ).
src-sbin release=cvs
System utilities for single-user mode
(/usr/src/sbin ).
src-secure
release=cvs
Cryptographic libraries and commands
(/usr/src/secure ).
src-share
release=cvs
Files that can be shared across multiple
systems
(/usr/src/share ).
src-sys
release=cvs
The kernel
(/usr/src/sys ).
src-sys-crypto
release=cvs
Kernel cryptography code
(/usr/src/sys/crypto ).
src-tools
release=cvs
Various tools for the maintenance of
FreeBSD
(/usr/src/tools ).
src-usrbin
release=cvs
User utilities
(/usr/src/usr.bin ).
src-usrsbin
release=cvs
System utilities
(/usr/src/usr.sbin ).
www release=cvs
The sources for the FreeBSD WWW site.
distrib release=self
The CVSup server's own
configuration files. Used by CVSup
mirror sites.
gnats release=current
The GNATS bug-tracking database.
mail-archive release=current
FreeBSD mailing list archive.
www release=current
The pre-processed FreeBSD WWW site files (not the
source files). Used by WWW mirror sites.
For More Information
For the CVSup FAQ and other
information about CVSup , see
The
CVSup Home Page .
Most FreeBSD-related discussion of
CVSup takes place on the
&a.hackers;. New versions of the software are announced there,
as well as on the &a.announce;.
Questions and bug reports should be addressed to the author
of the program at cvsup-bugs@polstra.com .
CVSup Sites
CVSup servers for FreeBSD are running
at the following sites:
&chap.mirrors.cvsup.index.inc;
&chap.mirrors.lastmod.inc;
&chap.mirrors.cvsup.inc;
Using Portsnap
Portsnap ²¤¶
Portsnap is a system for securely
distributing the &os; ports tree. Approximately once an hour,
a snapshot
of the ports tree is generated,
repackaged, and cryptographically signed. The resulting files
are then distributed via HTTP.
Like CVSup ,
Portsnap uses a
pull model of updating: The packaged and
signed ports trees are placed on a web server which waits
passively for clients to request files. Users must either run
&man.portsnap.8; manually to download updates
or set up a &man.cron.8; job to download updates
automatically on a regular basis.
For technical reasons, Portsnap
does not update the live
ports tree in
/usr/ports/ directly; instead, it works
via a compressed copy of the ports tree stored in
/var/db/portsnap/ by default. This
compressed copy is then used to update the live ports tree.
If Portsnap is installed from
the &os; Ports Collection, then the default location for its
compressed snapshot will be /usr/local/portsnap/
instead of /var/db/portsnap/ .
Installation
On &os; 6.0 and more recent versions,
Portsnap is contained in the &os;
base system. On older versions of &os;, it can be installed
using the sysutils/portsnap
port.
Portsnap Configuration
Portsnap 's operation is controlled
by the /etc/portsnap.conf configuration
file. For most users, the default configuration file will
suffice; for more details, consult the &man.portsnap.conf.5;
manual page.
If Portsnap is installed from
the &os; Ports Collection, it will use the configuration file
/usr/local/etc/portsnap.conf instead of
/etc/portsnap.conf . This configuration
file is not created when the port is installed, but a sample
configuration file is distributed; to copy it into place, run
the following command:
&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf
Running Portsnap for the First
Time
The first time &man.portsnap.8; is run,
it will need to download a compressed snapshot of the entire
ports tree into /var/db/portsnap/ (or
/usr/local/portsnap/ if
Portsnap was installed from the
Ports Collection). For the beginning of 2006 this is approximately a 41 MB
download.
&prompt.root; portsnap fetch
Once the compressed snapshot has been downloaded, a
live
copy of the ports tree can be extracted into
/usr/ports/ . This is necessary even if a
ports tree has already been created in that directory (e.g., by
using CVSup ), since it establishes a
baseline from which portsnap can
determine which parts of the ports tree need to be updated
later.
&prompt.root; portsnap extract
In the default installation
/usr/ports is not
created. If you run &os; 6.0-RELEASE, it should be created before
portsnap is used. On more recent
versions of &os; or Portsnap ,
this operation will be done automatically at first use
of the portsnap command.
Updating the Ports Tree
After an initial compressed snapshot of the ports tree has
been downloaded and extracted into /usr/ports/ ,
updating the ports tree consists of two steps:
fetch ing updates to the compressed
snapshot, and using them to update the
live ports tree. These two steps can be specified to
portsnap as a single command:
&prompt.root; portsnap fetch update
Some older versions of portsnap
do not support this syntax; if it fails, try instead the
following:
&prompt.root; portsnap fetch
&prompt.root; portsnap update
Running Portsnap from cron
In order to avoid problems with flash crowds
accessing the Portsnap servers,
portsnap fetch will not run from
a &man.cron.8; job. Instead, a special
portsnap cron command exists, which
waits for a random duration up to 3600 seconds before fetching
updates.
In addition, it is strongly recommended that
portsnap update not be run from a
cron job, since it is liable to cause
major problems if it happens to run at the same time as a port
is being built or installed. However, it is safe to update
the ports' INDEX files, and this can be done by passing the
-I flag to
portsnap . (Obviously, if
portsnap -I update is run from
cron , then it will be necessary to run
portsnap update without the -I
flag at a later time in order to update the rest of the tree.)
Adding the following line to /etc/crontab
will cause portsnap to update its
compressed snapshot and the INDEX files in
/usr/ports/ , and will send an email if any
installed ports are out of date:
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
If the system clock is not set to the local time zone,
please replace 3 with a random
value between 0 and 23, in order to spread the load on the
Portsnap servers more evenly.
Some older versions of portsnap
do not support listing multiple commands (e.g., cron update )
in the same invocation of portsnap . If
the line above fails, try replacing
portsnap -I cron update with
portsnap cron && portsnap -I update .
CVS Tags
When obtaining or updating sources using
cvs or
CVSup , a revision tag must be specified.
A revision tag refers to either a particular line of &os;
development, or a specific point in time. The first type are called
branch tags
, and the second type are called
release tags
.
Branch Tags
All of these, with the exception of HEAD (which
is always a valid tag), only apply to the src/
tree. The ports/ , doc/ , and
www/ trees are not branched.
HEAD
Symbolic name for the main line, or FreeBSD-CURRENT.
Also the default when no revision is specified.
In CVSup , this tag is represented
by a . (not punctuation, but a literal
. character).
In CVS, this is the default when no revision tag is
specified. It is usually not
a good idea to checkout or update to CURRENT sources
on a STABLE machine, unless that is your intent.
RELENG_6
The line of development for FreeBSD-6.X, also known
as FreeBSD 6-STABLE
RELENG_6_1
The release branch for FreeBSD-6.1, used only for
security advisories and other critical fixes.
RELENG_6_0
The release branch for FreeBSD-6.0, used only for
security advisories and other critical fixes.
RELENG_5
The line of development for FreeBSD-5.X, also known
as FreeBSD 5-STABLE.
RELENG_5_5
The release branch for FreeBSD-5.5, used only
for security advisories and other critical fixes.
RELENG_5_4
The release branch for FreeBSD-5.4, used only
for security advisories and other critical fixes.
RELENG_5_3
The release branch for FreeBSD-5.3, used only
for security advisories and other critical fixes.
RELENG_5_2
The release branch for FreeBSD-5.2 and FreeBSD-5.2.1, used only
for security advisories and other critical fixes.
RELENG_5_1
The release branch for FreeBSD-5.1, used only
for security advisories and other critical fixes.
RELENG_5_0
The release branch for FreeBSD-5.0, used only
for security advisories and other critical fixes.
RELENG_4
The line of development for FreeBSD-4.X, also known
as FreeBSD 4-STABLE.
RELENG_4_11
The release branch for FreeBSD-4.11, used only
for security advisories and other critical fixes.
RELENG_4_10
The release branch for FreeBSD-4.10, used only
for security advisories and other critical fixes.
RELENG_4_9
The release branch for FreeBSD-4.9, used only
for security advisories and other critical fixes.
RELENG_4_8
The release branch for FreeBSD-4.8, used only
for security advisories and other critical fixes.
RELENG_4_7
The release branch for FreeBSD-4.7, used only
for security advisories and other critical fixes.
RELENG_4_6
The release branch for FreeBSD-4.6 and FreeBSD-4.6.2,
used only for security advisories and other
critical fixes.
RELENG_4_5
The release branch for FreeBSD-4.5, used only
for security advisories and other critical fixes.
RELENG_4_4
The release branch for FreeBSD-4.4, used only
for security advisories and other critical fixes.
RELENG_4_3
The release branch for FreeBSD-4.3, used only
for security advisories and other critical fixes.
RELENG_3
The line of development for FreeBSD-3.X, also known
as 3.X-STABLE.
RELENG_2_2
The line of development for FreeBSD-2.2.X, also known
as 2.2-STABLE. This branch is mostly obsolete.
Release Tags
These tags refer to a specific point in time when a particular
version of &os; was released. The release engineering process is
documented in more detail by the
Release Engineering
Information and
Release
Process documents.
The src tree uses tag names that
start with RELENG_ tags.
The ports and
doc trees use tags whose names
begin with RELEASE tags.
Finally, the www tree is not
tagged with any special name for releases.
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
AFS Sites
AFS servers for FreeBSD are running at the following sites:
Sweden
The path to the files are:
/afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.se
Maintainer ftp@stacken.kth.se
rsync Sites
The following sites make FreeBSD available through the rsync
protocol. The rsync utility works in
much the same way as the &man.rcp.1; command,
but has more options and uses the rsync remote-update protocol
which transfers only the differences between two sets of files,
thus greatly speeding up the synchronization over the network.
This is most useful if you are a mirror site for the
FreeBSD FTP server, or the CVS repository. The
rsync suite is available for many
operating systems, on FreeBSD, see the
net/rsync
port or use the package.
Czech Republic
rsync://ftp.cz.FreeBSD.org/
Available collections:
ftp: A partial mirror of the FreeBSD FTP
server.
FreeBSD: A full mirror of the FreeBSD FTP
server.
Germany
rsync://grappa.unix-ag.uni-kl.de/
Available collections:
freebsd-cvs: The full FreeBSD CVS
repository.
This machine also mirrors the CVS repositories of the
NetBSD and the OpenBSD projects, among others.
Netherlands
rsync://ftp.nl.FreeBSD.org/
Available collections:
vol/4/freebsd-core: A full mirror of the
FreeBSD FTP server.
United Kingdom
rsync://rsync.mirror.ac.uk/
Available collections:
ftp.FreeBSD.org: A full mirror of the
FreeBSD FTP server.
United States of America
rsync://ftp-master.FreeBSD.org/
This server may only be used by FreeBSD primary mirror
sites.
Available collections:
FreeBSD: The master archive of the FreeBSD
FTP server.
acl: The FreeBSD master ACL
list.
rsync://ftp13.FreeBSD.org/
Available collections:
FreeBSD: A full mirror of the FreeBSD FTP
server.