diff options
author | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-09-06 22:58:11 +0000 |
---|---|---|
committer | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-09-06 22:58:11 +0000 |
commit | e681d68d99b557569f6da48e938df744f52e46b9 (patch) | |
tree | c49689353fdf5866dfde74a903b467c4861e6310 /el_GR.ISO8859-7 | |
parent | 90fca4fb6099aaa015df0b8902d8b2236cfb8465 (diff) |
Notes
Diffstat (limited to 'el_GR.ISO8859-7')
-rw-r--r-- | el_GR.ISO8859-7/articles/Makefile | 1 | ||||
-rw-r--r-- | el_GR.ISO8859-7/articles/releng/Makefile | 27 | ||||
-rw-r--r-- | el_GR.ISO8859-7/articles/releng/article.sgml | 992 | ||||
-rw-r--r-- | el_GR.ISO8859-7/articles/releng/branches.ascii | 30 | ||||
-rw-r--r-- | el_GR.ISO8859-7/articles/releng/branches.pic | 116 | ||||
-rw-r--r-- | el_GR.ISO8859-7/articles/releng/extra.css | 17 |
6 files changed, 1183 insertions, 0 deletions
diff --git a/el_GR.ISO8859-7/articles/Makefile b/el_GR.ISO8859-7/articles/Makefile index ed37f67eb3..2cc53016ba 100644 --- a/el_GR.ISO8859-7/articles/Makefile +++ b/el_GR.ISO8859-7/articles/Makefile @@ -9,6 +9,7 @@ SUBDIR+= freebsd-questions SUBDIR+= java-tomcat SUBDIR+= laptop SUBDIR+= new-users +SUBDIR+= releng DOC_PREFIX?= ${.CURDIR}/../.. .include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/el_GR.ISO8859-7/articles/releng/Makefile b/el_GR.ISO8859-7/articles/releng/Makefile new file mode 100644 index 0000000000..38dd0b4a23 --- /dev/null +++ b/el_GR.ISO8859-7/articles/releng/Makefile @@ -0,0 +1,27 @@ +# +# $FreeBSD$ +# Original version: 1.7 +# +# Article: FreeBSD Release Engineering + +DOC?= article + +FORMATS?= html + +INSTALL_COMPRESSED?= gz +INSTALL_ONLY_COMPRESSED?= + +JADEFLAGS+= -V %generate-article-toc% +TIDYFLAGS+= -raw + +# SGML content +SRCS= article.sgml branches.ascii + +# IMAGES +IMAGES= branches.pic + +CSS_SHEET_ADDITIONS= extra.css + +DOC_PREFIX?= ${.CURDIR}/../../.. + +.include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/el_GR.ISO8859-7/articles/releng/article.sgml b/el_GR.ISO8859-7/articles/releng/article.sgml new file mode 100644 index 0000000000..cf8f63d448 --- /dev/null +++ b/el_GR.ISO8859-7/articles/releng/article.sgml @@ -0,0 +1,992 @@ +<!-- + The FreeBSD Documentation Project + Original revision: 1.35 +--> + +<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ +<!ENTITY branches.ascii SYSTEM "branches.ascii"> +<!ENTITY % authors PUBLIC "-//FreeBSD//ENTITIES DocBook Author Entities//EN"> +%authors; +<!ENTITY % teams PUBLIC "-//FreeBSD//ENTITIES DocBook Team Entities//EN"> +%teams; +<!ENTITY % mailing-lists PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//EL"> +%mailing-lists; +<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> +%man; +<!ENTITY % freebsd PUBLIC "-//FreeBSD//ENTITIES DocBook Miscellaneous FreeBSD Entities//EN"> +%freebsd; +<!ENTITY art.re.pkgs '<ulink url="../releng-packages/article.html">Η Οργάνωση Έκδοσης των Πακέτων Λογισμικού από Τρίτους</ulink>'> +]> + +<article lang="el"> + <title>Η Οργάνωση των Εκδόσεων του FreeBSD</title> + <articleinfo> + + <!-- Αυτή η εργασία παρουσιάστηκε στο BSDCon Europe στο Brighton, UK στις + 11 Νοέμβρη 2001 --> + <confgroup> + <confdates>Νοέμβρης 2001</confdates> + <conftitle>BSDCon Europe</conftitle> + </confgroup> + + <authorgroup> + <author> + <firstname>Murray</firstname> + <surname>Stokely</surname> + <authorblurb> + <para>Έχω ασχοληθεί με την ανάπτυξη προϊόντων βασισμένων στο FreeBSD + από το 1997, στην Walnut Creek CDROM, στην BSDi, και τώρα στην + Wind River Systems. Η έκδοση 4.4 του FreeBSD ήταν η πρώτη επίσημη + έκδοση του FreeBSD στην οποία έπαιξα σημαντικό ρόλο.</para> + </authorblurb> + <affiliation> + <address><email>murray@FreeBSD.org</email> + <otheraddr><ulink + url="http://www.FreeBSD.org/~murray">http://www.FreeBSD.org/~murray</ulink></otheraddr> + </address> + </affiliation> + </author> + </authorgroup> + + <pubdate>$FreeBSD$</pubdate> + <abstract> + <para>Αυτό το άρθρο περιγράφει την αντιμετώπιση και οργάνωση της ομάδας + ανάπτυξης του FreeBSD, όσον αφορά στην προετοιμασία ποιοτικών εκδόσεων + του Λειτουργικού Συστήματος FreeBSD. Εξηγεί με λεπτομέρεια την + μεθοδολογία που χρησιμοποιήθηκε στην έκδοση 4.4 του FreeBSD και + περιγράφει τα εργαλεία που είναι διαθέσιμα σε όσους ενδιαφέρονται να + παράγουν παραμετροποιημένες εκδόσεις του FreeBSD για εσωτερική ή + εμπορική χρήση και ανάπτυξη προϊόντων.</para> + </abstract> + + </articleinfo> + +<!-- Εισαγωγή --> +<sect1 id="introduction"> + <title>Εισαγωγή</title> + + <para>Η ανάπτυξη του FreeBSD είναι μια πολύ ανοιχτή διαδικασία. Το FreeBSD + αποτελείται από συνεισφορές χιλιάδων ανθρώπων από όλο τον κόσμο. Η ομάδα + του FreeBSD παρέχει πρόσβαση μέσω ανώνυμου <acronym>CVS</acronym>[1] σε + όλους, έτσι ώστε να μπορεί όποιος θέλει να δει μηνύματα log, διαφορές + (patches) που έχουν τα διάφορα development branches, και άλλα + χαρακτηριστικά που βοηθούν την ανάπτυξη, τα οποία προκύπτουν από την χρήση + ενός αυστηρού συστήματος διαχείρισης κώδικα. Αυτό αποτέλεσε και τον πιο + σημαντικό παράγοντα έλξης για ένα μεγάλο αριθμό από ταλαντούχους + προγραμματιστές από όλο τον κόσμο στο FreeBSD. Είναι προφανές, βέβαια, + πως πολύ σύντομα θα είχε γίνει εντελώς χαοτική η κατάσταση αν είχαν όλοι, + από όλο τον κόσμο, πρόσβαση να γράψουν στον κώδικα. Γι' αυτό, μόνο μια + <quote>επιλεγμένη</quote> ομάδα από περίπου 300 άτομα έχουν πρόσβαση να + γράψουν στο <acronym>CVS</acronym> repository. Αυτοί οι + <emphasis>committers[6]</emphasis> είναι υπεύθυνοι για το μεγαλύτερο μέρος + της ανάπτυξηςς που γίνεται στο FreeBSD. Μια + <emphasis>κεντρική-ομάδα[7]</emphasis> (core team) από διακεκριμένους + προγραμματιστές εκλέγεται για να παρέχει κάποιου είδους καθοδήγηση και μια + κατεύθυνση στο σύνολο των committers.</para> + + <para>Οι ταχύτατοι ρυθμοί ανάπτυξης του <systemitem + class="osname">FreeBSD</systemitem> δεν αφήνουν και πολύ χρόνο για το + ξεκαθάρισμα του συστήματος ανάπτυξης σε μια έκδοση με ποιότητα που να + αξίζει να χρησιμοποιείται ευρέως. Για να λυθεί αυτό το δίλλημα, η + ανάπτυξη γίνεται ταυτόχρονα σε δυο παράλληλα μονοπάτια. Ο κύριος κορμός + ανάπτυξης είναι ο <emphasis>HEAD</emphasis> ή <emphasis>trunk</emphasis> + στο CVS repository μας, γνωστός και ως <quote>FreeBSD-CURRENT</quote>, ή + <quote>-CURRENT</quote> εν συντομία.</para> + + <para>Ένας πιο σταθερός κορμός συντηρείται, γνωστός με το όνομα + <quote>FreeBSD-STABLE</quote> ή πιο σύντομα <quote>-STABLE</quote>. + Και οι δυο κορμοί είναι αποθηκευμένοι στο κύριο CVS repository, στην + Καλιφόρνια, και αντιγράφονται μέσω <application + class="software">CVSup</application>[2] σε mirrors παντού στον κόσμο. + Το FreeBSD-CURRENT[8] είναι η <quote>πρώτη σειρά</quote> της ανάπτυξης του + FreeBSD καθώς σε αυτό γίνονται πρώτα όλες οι καινούριες αλλαγές. + Το FreeBSD-STABLE είναι ο κορμός ανάπτυξης από τον οποίο φτιάχνονται οι + εκδόσεις. Οι αλλαγές εισέρχονται σε αυτόν, τον δεύτερο κορμό ανάπτυξης, + με πιο αργό ρυθμό, αφού πρώτα (σύμφωνα με την πολιτική μας) δοκιμαστούν + στο FreeBSD-CURRENT και έχουν εξεταστεί πολύ καλά.</para> + + <para>Κατά την περίοδο που μεσολαβεί από τη μια έκδοση στην επόμενη, + φτιάχνονται καθημερινά snapshots από τα μηχανήματα της ομάδας του FreeBSD + και είναι διαθέσιμες από τον εξυπηρετητή <systemitem + class="resource">ftp://stable.FreeBSD.org/</systemitem>. Η μεγάλη + διαθεσιμότητα των εκτελέσιμων snapshots, καθώς και η τάση της κοινότητας + των χρηστών μας να ενημερώνουν τα μηχανήματά τους με τις πρόσφατες -STABLE + εκδόσεις μέσω CVSup και <quote><command>make</command> + <MakeTarget>world</MakeTarget></quote>[8] βοηθούν να κρατιέται το + FreeBSD-STABLE σε μια πολύ αξιόπιστη κατάσταση ακόμα και πριν αρχίσει ο + κύκλος των ελέγχων ποιότητας ακριβώς πριν από την διάθεση μιας + έκδοσης του FreeBSD.</para> + + <para>Συνεχώς στέλνονται από τους χρήστες μας αναφορές προβλημάτων και + αιτήσεις για καινούρια χαρακτηριστικά, κατά τη διάρκεια του κύκλου της + κάθε έκδοσης. Οι αναφορές προβλημάτων εισάγονται στην βάση + <application class="software">GNATS</application>[9] μέσω e-mail, με την + εφαρμογή &man.send-pr.1;, ή μέσω του web-interface που παρέχεται στην + διεύθυνση <ulink url="http://www.FreeBSD.org/send-pr.html"></ulink>. + Εκτός από τις διάφορες λίστες ηλεκτρονικού ταχυδρομείου με θέμα τα τεχνικά + χαρακτηριστικά του FreeBSD υπάρχει και η λίστα &a.qa;, η οποία παρέχει ένα + φόρουμ για συζητήσεις σχετικά με τις λεπτομέρειες της + <quote>οργάνωσης των εκδόσεων</quote>.</para> + + <para>Για να εξυπηρετηθούν οι πιο συντηρητικοί χρήστες μας, με έκδοση του + FreeBSD 4.3 αρχίσαμε να χρησιμοποιούμε ξεχωριστούς κορμούς εκδόσεων. + Αυτοί οι κορμοί δημιουργούνται λίγο πρίν φτιαχτεί η τελική έκδοση. Μετά + την ανακοίνωση της έκδοσης, μόνο πολύ σημαντικές αλλαγές και προσθήκες + σχετικές με την ασφάλεια γίνονται στον κορμό της έκδοσης. Εκτός από την + δυνατότητα αναβάθμισης μέσω CVS, εκτελέσιμα patchkits φτιάχνονται για να + μπορούν να αναβαθμίσουν τα συστήματά τους όσοι χρησιμοποιούν τις εκδόσεις + <emphasis>RELENG_4_3</emphasis> και <emphasis>RELENG_4_4</emphasis>.</para> + + <para>Το <xref linkend="release-proc"> εξηγεί με λεπτομέρειες τα διάφορα + στάδια της διαδικασίας που βρίσκεται πίσω από κάθε έκδοση, μέχρι και τα + βήματα που οδηγούν στην μεταγλώττιση του συστήματος και το <xref + linkend="release-build"> εξηγεί την ίδια τη διαδικασία της μεταγλώττισης. + Το <xref linkend="extensibility"> περιγράφει πως μπορεί να επεκταθεί το + βασικό σύστημα από τρίτους και το <xref linkend="lessons-learned"> + περιγράφει κάποια από τα πράγματα που μάθαμε από την διαδικασία έκδοσης + του FreeBSD 4.4. Τέλος, το <xref linkend="future"> παρουσιάζει κάποιες + από τις κατευθύνσεις που θέλουμε να πάρει η ανάπτυξη στο μέλλον.</para> +</sect1> + +<!-- Η Διαδικασία Έκδοσης --> +<sect1 id="release-proc"> + <title>Η Διαδικασία Δημιουργίας μιας Έκδοσης</title> + + <para>Οι νέες εκδόσεις του FreeBSD φτιάχνονται από τον -STABLE κορμό + ανάπτυξης περίπου κάθε τέσσερεις μήνες. Η διαδικασία προετοιμασίας μιας + έκδοσης ξεκινάει σχεδόν 45 μέρες πριν την αναμενόμενη ημερομηνία έκδοσης, + όταν ο υπεύθυνος εκδόσεων του FreeBSD στέλνει ένα γράμμα στις λίστες των + προγραμματιστών για να υπενθυμίσει στους προγραμματιστές ότι έχουν 15 + μέρες καιρό να κάνουν όποιες αλλαγές θέλουν, πριν το πάγωμα του κώδικα. + Μέσα σε αυτό τον καιρό, πολλοί προγραμματιστές κάνουν μια σειρά από + αλλαγές που έχουν μείνει πλέον γνωστές ως <quote>ξεκαθαρίσματα + MFC</quote>. Ο όρος <acronym>MFC</acronym> σημαίνει <quote>Merge From + CURRENT</quote> και περιγράφει την διαδικασία προσαρμογής του κώδικα μιας + δοκιμασμένης αλλαγής από τον -CURRENT πειραματικό κορμό ανάπτυξης στον + σταθερό -STABLE κορμό.</para> + + <sect2> + <title>Έλεγχος Κώδικα</title> + + <para>Τριάντα ημέρες πριν την αναμενόμενη ημερομηνία έκδοσης, ο κώδικας + του repository εισέρχεται σε μια περίοδο <quote>καθυστέρησης</quote>. + Κατά τη διάρκεια αυτής της περιόδου, όλες οι αλλαγές στον -STABLE κορμό + πρέπει να έχουν την έγκριση της &a.re;. Οι αλλαγές που επιτρέπονται σε + αυτή την περίοδο που διαρκεί 15 ημέρες είναι:</para> + + <itemizedlist> + <listitem> + <para>Διορθώσεις γνωστών προβλημάτων.</para> + </listitem> + + <listitem> + <para>Ενημερώσεις στην τεκμηρίωση.</para> + </listitem> + + <listitem> + <para>Αλλαγές σχετικές με την ασφάλεια.</para> + </listitem> + + <listitem> + <para>Μικρές αλλαγές στους οδηγούς συσκευών, όπως π.χ. η προσθήκη των + IDs νέων συσκευών.</para> + </listitem> + + <listitem> + <para>Οποιαδήποτε άλλη αλλαγή πιστεύει η ομάδα ανάπτυξης ότι πρέπει να + γίνει, με το αναμενόμενο πάντα ρίσκο.</para> + </listitem> + </itemizedlist> + + <para>Μετά τις πρώτες 15 μέρες καθυστέρησης, φτιάχνεται μια + <emphasis>δοκιμαστική έκδοση</emphasis> για να χρησιμοποιηθεί σαν δοκιμή + της τελικής έκδοσης και ο κώδικας εισέρχεται σε μια περίοδο + <quote>παγώματος</quote>. Πλέον είναι πολύ πιο δύσκολο να γίνουν νέες + αλλαγές στο σύστημα, εκτός κι αν διορθώνουν κάποιο πολύ σοβαρό bugή + κάποιο πρόβλημα ασφάλειας. Κατά τη διάρκεια του παγώματος του κώδικα, + τουλάχιστον μία δοκιμαστική έκδοση φτιάχνεται κάθε εβδομάδα, μέχρι να + είναι έτοιμη η τελική έκδοση. Τις ημέρες ακριβώς πριν την τελική + έκδοση, η ομάδα που είναι υπεύθυνη για τις εκδόσεις είναι σε συνεχή + επικοινωνία με την ομάδα ασφάλειας, την ομάδα συντήρησης της + τεκμηρίωσης, και την ομάδα συντήρησης των ports, για να βεβαιωθούν πως + όλα τα απαραίτητα κομμάτια για μια πλήρη έκδοση είναι διαθέσιμα.</para> + </sect2> + + <sect2> + <title>Λίστα Ελέγχου της Τελικής Έκδοσης</title> + + <para>Όταν αρκετές δοκιμαστικές εκδόσεις έχουν γίνει διαθέσιμες, έχουν + δοκιμαστεί από αρκετό κόσμο και όλα τα σοβαρά θέματα έχουν αναλυθεί, η + τελική έκδοση μπορεί να αρχίσει.</para> + + <sect3> + <title>Δημιουργία του Κορμού Έκδοσης</title> + + <para>Όπως περιγράψαμε στην εισαγωγή, ο κορμός + <literal>RELENG_X_Y</literal> είναι μια σχετικά νέα προσθήκη στην + μεθοδολογία των εκδόσεών μας. Το πρώτο βήμα στην δημιουργία αυτού του + κορμού είναι να βεβαιωθείτε ότι δουλεύετε με την τελευταία έκδοση του + πηγαίου κώδικα από τον <literal>RELENG_X</literal> κορμού + <emphasis>από τον οποίο</emphasis> θα φτιάξετε το νέο κορμό.</para> + + <screen>/usr/src&prompt.root; <userinput>cvs update -rRELENG_4 -P -d</userinput></screen> + + <para>Το επόμενο βήμα είναι να δημιουργήσετε μια + <emphasis>ετικέτα</emphasis> (tag) στο σημείο εκκίνησης του κορμού, + ώστε να μπορείτε να δείτε τις διαφορές με την αρχή του κορμού εύκολα + στο μέλλον με το CVS:</para> + + <screen>/usr/src&prompt.root; <userinput>cvs rtag -rRELENG_4 RELENG_4_4_BP src</userinput></screen> + + <para>Και τότε μπορείτε να δημιουργήσετε το νέο κορμό με:</para> + + <screen>/usr/src&prompt.root; <userinput>cvs rtag -b -rRELENG_4_4_BP RELENG_4_4 src</userinput></screen> + + <note> + <para><emphasis>Οι ετικέτες <literal>RELENG_*</literal> είναι + δεσμευμένες για χρήση από τους CVS-meisters και την ομάδα των + εκδόσεων.</emphasis></para> + </note> + + <sidebar> + <para>Ο όρος <quote><emphasis>ετικέτα</emphasis></quote> είναι ορολογία + του CVS. Σημαίνει ένα όνομα που καθορίζει μια συγκεκριμένη έκδοση + του κώδικα στο χρόνο. Χρησιμοποιώντας ετικέτες στον πηγαίο κώδικα + βοηθάμε όποιον φτιάξει στο μέλλον εκδόσεις του FreeBSD να βρίσκει + και να χρησιμοποιεί ακριβώς τον ίδιο κώδικα που χρησιμοποιήθηκε για + τις επίσημες εκδόσεις της Ομάδας του FreeBSD.</para> + </sidebar> + + <mediaobject> + <imageobject> + <imagedata fileref="branches" align="center"> + </imageobject> + + <textobject> + <literallayout> + &branches.ascii; + </literallayout> + </textobject> + + <textobject> + <phrase>Κορμοί Ανάπτυξης του FreeBSD</phrase> + </textobject> + </mediaobject> + + </sect3> + + <sect3 id="versionbump"> + <title>Αυξάνοντας τον Αριθμό Έκδοσης</title> + + <para>Πριν μπει η ετικέτα, μεταγλωττιστεί και ετοιμαστεί η τελική + έκδοση, πρέπει να γίνουν αλλαγές στα παρακάτω αρχεία για να περιέχουν + τον σωστό αριθμό έκδοσης για το FreeBSD:</para> + + <itemizedlist> + <listitem> + <para><filename>doc/en_US.ISO8859-1/books/handbook/mirrors/chapter.sgml + </filename></para> + </listitem> + + <listitem> + <para><filename>doc/share/sgml/freebsd.ent</filename></para> + </listitem> + + <listitem> + <para><filename>src/Makefile.inc</filename></para> + </listitem> + + <listitem> + <para><filename>src/UPDATING</filename></para> + </listitem> + + <listitem> + <para><filename>src/gnu/usr.bin/groff/tmac/mdoc.local</filename></para> + </listitem> + + <listitem> + <para><filename>src/release/Makefile</filename></para> + </listitem> + + <listitem> + <para><filename>src/release/doc/en_US.ISO8859-1/share/sgml/release.dsl</filename></para> + </listitem> + + <listitem> + <para><filename>src/release/doc/share/examples/Makefile.relnotesng</filename></para> + </listitem> + + <listitem> + <para><filename>src/release/doc/share/sgml/release.ent</filename></para> + </listitem> + + <listitem> + <para><filename>src/share/examples/cvsup/standard-supfile</filename></para> + </listitem> + + <listitem> + <para><filename>src/share/misc/bsd-family-tree</filename></para> + </listitem> + + <listitem> + <para><filename>src/sys/conf/newvers.sh</filename></para> + </listitem> + + <listitem> + <para><filename>src/sys/sys/param.h</filename></para> + </listitem> + + <listitem> + <para><filename>www/en/releases/*</filename></para> + </listitem> + + <listitem> + <para><filename>www/en/docs.sgml</filename></para> + </listitem> + + <listitem> + <para><filename>www/en/cgi/ports.cgi</filename></para> + </listitem> + </itemizedlist> + + <para>Οι σημειώσεις έκδοσης και τα αρχεία με τις διορθώσεις της + τελευταίας στιγμής πρέπει επίσης να προσαρμοστούν στην νέα έκδοση + (στον κορμό της έκδοσης) και να επεξεργαστούν κατάλληλα (στους δύο + κορμούς stable και current):</para> + + <itemizedlist> + <listitem> + <para><filename>src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml + </filename></para> + </listitem> + + <listitem> + <para><filename>src/release/doc/en_US.ISO8859-1/errata/article.sgml + </filename></para> + </listitem> + </itemizedlist> + + <para>Η εφαρμογή <application>sysinstall</application> πρέπει επίσης να + ενημερωθεί με τον σωστό αριθμό των ports και το χώρο του δίσκου που + απαιτείται για την Συλλογή των Ports. Αυτές οι πληροφορίες υπάρχουν + στο αρχείο <filename>src/release/sysinstall/dist.c</filename>.</para> + </sect3> + + <sect3> + <title>Δημιουργία των Ετικετών της Έκδοσης</title> + + <para>Όταν η τελική έκδοση είναι έτοιμη, η παρακάτω εντολή θα + δημιουργήσει την ετικέτα + <literal>RELENG_4_4_0_RELEASE</literal>.</para> + + <screen>/usr/src&prompt.root; <userinput>cvs rtag -rRELENG_4_4 RELENG_4_4_0_RELEASE src</userinput></screen> + + <para>Οι υπεύθυνοι της Τεκμηρίωσης και των Ports είναι αυτοί που πρέπει + να δημιουργήσουν τις ετικέτες <literal>RELEASE_4_4_0</literal> στα + κατάλληλα δέντρα πηγαίου κώδικα.</para> + + <para>Μερικές φορές, μπορεί να χρειαστεί να γίνουν κάποιες αλλαγές + τελευταία στιγμή <emphasis>μετά</emphasis> την τοποθέτηση των + ετικετών. Γενικά, δεν είναι δύσκολο να γίνει κάτι τέτοιο αφού το + <acronym>CVS</acronym> επιτρέπει να μετακινήσει κάποιος τις ετικέτες + με εντολές όπως <command>cvs tag -d <replaceable>tagname + filename</replaceable></command>. Είναι πολύ σημαντικό όμως αυτές οι + αλλαγές της τελευταίας στιγμής να σημειωθούν με τις σωστές ετικέτες + για την συγκεκριμένη έκδοση. Οι επίσημες εκδόσεις του FreeBSD πρέπει + να είναι πάντα εύκολο να αναπαραχθούν. Τοπικές αλλαγές στο περιβάλλον + του μηχανικού των εκδόσεων δεν επιτρέπονται.</para> + </sect3> + </sect2> +</sect1> + +<!-- Μεταγλώττιση της Έκδοσης --> +<sect1 id="release-build"> + <title>Μεταγλώττιση της Έκδοσης</title> + + <para>Οι <quote>εκδόσεις</quote> του FreeBSD μπορούν να μεταγλωττιστούν από + οποιονδήποτε έχει ένα σχετικά γρήγορο μηχάνημα και πρόσβαση στο repository + του πηγαίου κώδικα. (Όλοι έχουν αυτή τη δυνατότητα, αφού παρέχουμε + πρόσβαση μέσω ανώνυμου CVS! Δείτε το Εγχειρίδιο του FreeBSD για + περισσότερες λεπτομέρειες.) Η μόνη ειδική απαίτηση είναι να υπάρχει + υποστήριξη στον πυρήνα σας για την συσκευή &man.vn.4;. (Στο -CURRENT, + αυτή η συσκευή έχει αντικατασταθεί από την νέα συσκευή δίσκου βασισμένου + σε μνήμη &man.md.4;.) Αν η συσκευή δεν είναι ενσωματωμένη στον πυρήνα + σας, τότε ο κατάλληλος οδηγός θα φορτωθεί αυτόματα όταν εκτελεστεί η + εντολή &man.vnconfig.8; κατά τη διάρκεια της φάσης ετοιμασίας του μέσου + εκκίνησης. Όλα τα εργαλεία που χρειάζονται για να μεταγλωττίσετε μια + έκδοση είναι διαθέσιμα σε μορφή πηγαίου κώδικα στον κατάλογο + <filename>src/release</filename>. Αυτά τα εργαλεία έχουν ως σκοπό να + παρέχουν ότι χρειάζεται για να χτίζονται οι εκδόσεις του FreeBSD με ένα + συνεπή και συγκεκριμένο τρόπο. Μια πλήρης έκδοση μπορεί να μεταγλωττιστεί + χρησιμοποιώντας αυτά τα εργαλεία με μια και μόνο εντολή, + συμπεριλαμβανομένης και της δημιουργίας ενός <acronym>ISO</acronym> + αρχείου κατάλληλο για να καεί σε CDROM, οι δισκέττες εκκίνησης, καθώς και + ο κατάλληλος εγκατάστασης μέσω FTP. Αυτή η εντολή είναι φυσική η + <command>make release</command>.</para> + + <sect2> + <title>Η εντολή <command>make release</command></title> + + <para>Για να μεταγλωττίσετε επιτυχώς μια έκδοση, πρέπει πρώτα να υπάρχουν + τα κατάλληλα αρχεία μέσα στον κατάλογο <filename>/usr/obj</filename>. + Μπορείτε να τα δημιουργήσετε είτε με την εντολή <command>make + world</command> ή απλά <command>make buildworld</command>. Για να + πετύχει επίσης η μεταγλώττιση της έκδοσης πρέπει να δώσετε τις + κατάλληλες τιμές και σε κάποιες μεταβλητές:</para> + + <itemizedlist> + <listitem> + <para><makevar>CHROOTDIR</makevar> - Ο κατάλογος που θα χρησιμοποιηθεί + σαν περιβάλλον chroot για όλη την μεταγλώττιση της έκδοσης.</para> + </listitem> + + <listitem> + <para><makevar>BUILDNAME</makevar> - Το όνομα της έκδοσης που θα + μεταγλωττίσετε.</para> + </listitem> + + <listitem> + <para><makevar>CVSROOT</makevar> - Ο κατάλογος στον οποίο βρίσκεται το + CVS repository.</para> + </listitem> + + <listitem> + <para><makevar>RELEASETAG</makevar> - Η ετικέτα CVS που αντιστοιχεί + στην έκδοση την οποία θέλετε να μεταγλωττίσετε.</para> + </listitem> + </itemizedlist> + + <para>Αν δεν έχετε ήδη πρόσβαση σε κάποιο τοπικό CVS repository με τον + κώδικα του FreeBSD, μπορείτε πάντα να φτιάξετε το δικό σας τοπικό CVS + mirror με το <ulink + url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/synching.html#CVSUP">CVSup</ulink>. + Υπάρχει ένα supfile, στο αρχείο + <filename>/usr/share/examples/cvsup/cvs-supfile</filename>, + το οποίο μπορείτε να χρησιμοποιήσετε για να αντιγράψετε το CVS + repository του FreeBSD στο δικό σας τοπικό mirrror.</para> + + <para>Αν παραλείψετε την ετικέτα <makevar>RELEASETAG</makevar>, τότε θα + μεταγλωττιστεί μια πλήρης έκδοση από την κορυφή του + <literal>HEAD</literal> (δηλ. του -CURRENT) κορμού. Οι εκδόσεις που + φτιάχνονται από αυτόν τον κορμό, συνήθως αναφέρονται σαν <quote>-CURRENT + snapshots</quote>.</para> + + <para>Υπάρχουν και πολλές άλλες μεταβλητές που μπορούν να χρησιμοποιηθούν + για να παραμετροποιήσετε την έκδοσή σας. Οι πιο πολλές από αυτές τις + μεταβλητές περιγράφονται στην κορυφή του αρχείου + <filename>src/release/Makefile</filename>. Η ακριβής εντολή που + χρησιμοποιήθηκε για να φτιαχτεί η επίσημη έκδοση 4.4 του FreeBSD + (x86 πλατφόρμα) ήταν:</para> + + <screen><command>make <literal>release CHROOTDIR=/local3/release \ + BUILDNAME=4.4-RELEASE \ + CVSROOT=/host/cvs/usr/home/ncvs \ + RELEASETAG=RELENG_4_4_0_RELEASE</literal></command></screen> + + <para>Το <filename>Makefile</filename> που χρησιμοποιείται για να + μεταγλωττίζονται οι εκδόσεις μπορεί να χωριστεί σε αρκετά ξεχωριστά + μεταξύ τους βήματα.</para> + + <itemizedlist> + <listitem> + <para>Δημιουργία ενός καθαρού περιβάλλοντος σε μια ξεχωριστή ιεραρχία + καταλόγων με την εντολή <quote><command>make + <literal>installworld</literal></command></quote>.</para> + </listitem> + + <listitem> + <para>Εξαγωγή από το CVS μιας καινούριας έκδοσης του πηγαίου κώδικα + του συστήματος, της τεκμηρίωσης και των ports μέσα στην ιεραρχία + καταλόγων μεταγλώττισης της έκδοσης.</para> + </listitem> + + <listitem> + <para>Ρυθμίσεις των αρχείων στον κατάλογο <filename>/etc</filename> + και <filename>/dev</filename> μέσα στο περιβάλλον chroot.</para> + </listitem> + + <listitem> + <para>Εκτέλεση της εντολής <command>chroot</command> μέσα στην + ιεραρχία καταλόγων που ετοιμάστηκε, για να μην μπορεί το εξωτερικό + περιβάλλον να επηρεάσει τη μεταγλώττιση της έκδοσης.</para> + </listitem> + + <listitem> + <para>Εκτέλεση της εντολής <command>make world</command> μέσα στο + περιβάλλον chroot.</para> + </listitem> + + <listitem> + <para>Μεταγλώττιση των εκτελέσιμων που είναι σχετικά με το σύστημα + Kerberos.</para> + </listitem> + + <listitem> + <para>Μεταγλώττιση του πυρήνα <filename>GENERIC</filename>.</para> + </listitem> + + <listitem> + <para>Δημιουργία ενός τελικού καταλόγου στον οποίο θα μεταγλωττιστούν + και θα αποθηκευθούν οι εκτελέσιμες μορφές των τελικών + πακέτων.</para> + </listitem> + + <listitem> + <para>Μεταγλώττιση και εγκατάσταση των εργαλείων που χρειάζονται για + την προετοιμασία της έκδοσης και τη μετατροπή της τεκμηρίωσης από + τον πηγαίο κώδικα (SGML) σε html και αρχεία κειμένου που θα + συνοδεύουν την έκδοση.</para> + </listitem> + + <listitem> + <para>Μετατροπή και εγκατάσταση της τεκμηρίωσης (εγχειρίδια χρήστη, + εισαγωγικά κείμενα, σημειώσεις έκδοσης, λίστες συμβατότηταςς υλικού, + κλπ.)</para> + </listitem> + + <listitem> + <para>Μεταγλώττιση των <quote>συμπιεσμένων</quote> (crunched) + εκτελέσιμων που θα χρησιμοποιηθούν στις δισκέττες + εγκατάστασης.</para> + </listitem> + + <listitem> + <para>Δημιουργία των πακέτων της εγκατάστασης και των πακέτων πηγαίου + κώδικα.</para> + </listitem> + + <listitem> + <para>Δημιουργία των μέσων εκκίνησης και της δισκέττας + <quote>fixit</quote>.</para> + </listitem> + + <listitem> + <para>Δημιουργία της ιεραρχίας καταλόγων για την εγκατάσταση μέσω + FTP.</para> + </listitem> + + <listitem> + <para><emphasis>(προαιρετικά)</emphasis> Δημιουργία των ISO αρχείων + για μέσα CDROM/DVD media.</para> + </listitem> + </itemizedlist> + + <para>Για περισσότερες πληροφορίες σχετικά με την διαδικασία δημιουργίας + μιας έκδοσης, δείτε την σελίδα τεκμηρίωσης &man.release.7;.</para> + </sect2> + + <sect2> + <title>Μεταγλώττιση των XFree86</title> + + <para>Το γραφικό περιβάλλον XFree86 είναι ένα σημαντικό κομμάτι κάθε + έκδοσης για πολλούς χρήστες που θέλουν το FreeBSD για σταθμούς εργασίας. + Ο πιο εύκολος τρόπος να μεταγλωττίσετε το περιβάλλον XFree86 είναι να + χρησιμοποιήσετε το πρόγραμμα + <filename>src/release/scripts/X11/build_x.sh</filename>. + Αυτό το πρόγραμμα απαιτεί να είναι ήδη στημένα στο σύστημά σας τόσο το + περιβάλλον XFree86 όσο και η γλώσσα Tcl/Tk. Μετά την μεταγλώττιση των + κατάλληλων X servers, το πρόγραμμα θα πακετάρει όλα τα αρχεία σε + συλλογές αρχείων που περιμένει να βρει το &man.sysinstall.8; μέσα στον + κατάλογο <filename>XF86336</filename> στο μέσο εγκατάστασης.</para> + + <note><para>Είναι πολύ σημαντικό να αφαιρέσετε από το αρχείο + <filename>/etc/make.conf</filename> οποιεσδήποτε τοπικές ρυθμίσεις έχετε + κάνει. Για παράδειγμα, δεν είναι καλή ιδέα να διανέμετε εκτελέσιμα που + έχουν μεταγλωττιστεί σε κάποιο συγκεκριμένο σύστημα με ορισμένη την τιμή + της μεταβλητής <varname>CPUTYPE</varname> για βελτιστοποίηση των + εκτελέσιμων για κάποιο συγκεκριμένο επεξεργαστή.</para></note> + </sect2> + + <sect2> + <title>Προγράμματα Τρίτων (<quote>ports</quote>)</title> + + <para>Η <ulink url="http://www.FreeBSD.org/ports">Συλλογή των Ports του + FreeBSD</ulink> είναι μια συλλογή με περισσότερα από &os.numports; + προγράμματα από τρίτους, που είναι διαθέσιμα για FreeBSD. Οι &a.portmgr; + είναι υπεύθυνοι για την συντήρηση ενός δέντρου από πηγαίο κώδικα για τα + ports, που μπορεί να χρησιμοποιηθεί για να δημιουργηθούν τα πακέτα με τα + προγράμματα που συνοδεύουν τις επίσημες εκδόσεις του FreeBSD.</para> + + <para>Η διαδικασία συντήρησης της συλλογής των ports είναι κάτι που δεν + μπορούμε να καλύψουμε εδώ. Ένα ξεχωριστό άρθρο, με τίτλο &art.re.pkgs;, + καλύπτει αυτό το θέμα.</para> + </sect2> + + <sect2> + <title>Αρχεία ISO της Έκδοσης</title> + + <para>Ξεκινώντας με την έκδοση 4.4 του FreeBSD, η Ομάδα Ανάπτυξης του + FreeBSD αποφάσισε να διανέμει και τα τέσσερα ISO αρχεία που πρώτα + πουλούσαν οι εταιρείες <emphasis>BSDi/Wind River Systems/FreeBSD + Mall</emphasis> στις <quote>επίσημες</quote> διανομές CDROM που έκαναν. + Κάθε ένα από τα τέσσερα ISO αρχεία πρέπει να περιέχει ένα αρχείο + <filename>README.TXT</filename> που περιγράφει τα περιεχόμενα του + δίσκου, κι ένα αρχείο <filename>CDROM.INF</filename> που περιέχει + μετα-πληροφορίες για να μπορεί το πρόγραμμα &man.sysinstall.8; να + ελέγξει και να χρησιμοποιήσει αυτό το δίσκο, καθώς κι ένα αρχείο + <filename>filename.txt</filename> που παρέχει μια λίστα αρχείων του + CDROM. Αυτή η λίστα μπορεί να δημιουργηθεί πολύ απλά, ως εξής:</para> + + <screen>/stage/cdrom&prompt.root; <userinput>find . -type f | sed -e 's/^\.\///' | sort > filename.txt</userinput></screen> + + <para>Οι συγκεκριμένες απαιτήσεις για κάθε ένα από αυτά τα CD + περιγράφονται παρακάτω:</para> + + <sect3> + <title>Δίσκος 1</title> + + <para>Ο πρώτος δίσκος είναι σχεδόν αποκλειστικά αποτέλεσμα της εντολής + <command>make release</command>. Οι μόνες αλλαγές που πρέπει να + γίνουν στον κατάλογο <filename>disc1</filename> είναι η προσθήκη του + κατάλογου <filename>tools</filename>, των <application + class="software">XFree86</application>, και όσο το δυνατόν + περισσότερων πακέτων μπορούν να χωρέσουν στο δίσκο. Ο κατάλογος + <filename>tools</filename> περιέχει εργαλεία που επιτρέπουν σε χρήστες + άλλων λειτουργικών συστημάτων να φτιάξουν τις δισκέττες εκκίνησης. + Αυτός ο πρώτος δίσκος πρέπει να φτιάχνεται bootable έτσι ώστε να + μπορούν οι χρήστες των μοντέρνων υπολογιστών να αποφεύγουν το στάδιο + δημιουργίας των δισκεττών εκκίνησης.</para> + + <para>Αν μια διαφορετική έκδοση των XFree86 θα διανέμεται με την έκδοση + αυτή, πρέπει να ενημερωθεί το πρόγραμμα &man.sysinstall.8; για την νέα + θέση και οι οδηγίες εγκατάστασης. Ο σχετικός κώδικας υπάρχει στον + κατάλογο <filename>src/release/sysinstall</filename> στον -STABLE + κορμό ή στον κατάλογο <filename>src/usr.sbin/sysinstall</filename> + στον -CURRENT κορμό. Συγκεκριμένα, τα αρχεία + <filename>dist.c</filename>, <filename>menus.c</filename>, και + <filename>config.c</filename> θα χρειαστεί να ενημερωθούν.</para> + </sect3> + + <sect3> + <title>Δίσκος 2</title> + + <para>Ο δεύτερος δίσκος είναι επίσης αποτέλεσμα της εντολής + <command>make release</command> κατά ένα μεγάλο μέρος. Αυτός ο δίσκος + περιέχει ένα <quote>live filesystem</quote> που μπορεί να χρησιμοποιηθεί + από το &man.sysinstall.8; για να εξεταστούν προβλήματα σε μια + εγκατάσταση του FreeBSD. Κι αυτός ο δίσκος πρέπει να είναι bootable. + Θα πρέπει επίσης να περιέχει ένα συμπιεσμένο αντίγραφο του CVS + repository στον κατάλογο <filename>CVSROOT</filename> και δείγματα από + εμπορικά προγράμματα στον κατάλογο <filename>commerce</filename>.</para> + </sect3> + + <sect3> + <title>Δίσκοι 3 και 4</title> + + <para>Οι υπόλοιποι δυο δίσκοι περιέχουν επιπρόσθετα πακέτα λογισμικού + για το FreeBSD. Τα πακέτα θα πρέπει να είναι ομαδοποιημένα, έτσι ώστε + κάθε πακέτο να είναι στον ίδιο δίσκο με όλα τα πακέτα από τα οποία + εξαρτάται για να εγκατασταθεί και να τρέξει. Περισσότερες πληροφορίες + για την δημιουργία αυτών των δίσκων αναφέρονται στο άρθρο + &art.re.pkgs;.</para> + </sect3> + </sect2> +</sect1> + +<!-- Διανομή των Εκδόσεων --> +<sect1 id="distribution"> + <title>Διανομή των Εκδόσεων</title> + + <sect2 id="dist-ftp"> + <title>Εξυπηρετητές FTP</title> + + <para>Όταν η έκδοση είναι έτοιμη, έχει δοκιμαστεί εκτενώς, και έχει + πακεταριστεί για διανομή, ο κύριος FTP εξυπηρετητής πρέπει να + ενημερωθεί. Οι επίσημοι εξυπηρετητές FTP του FreeBSD είναι όλοι mirrors + ενός κύριου εξυπηρετητή στον οποίο έχουν πρόσβαση μόνο άλλοι FTP + εξυπηρετητές. Αυτός ο εξυπηρετητής είναι γνωστός ως + <hostid>ftp-master</hostid>. Όταν η έκδοση είναι έτοιμη, πρέπει να + ενημερωθούν τα παρακάτω αρχεία στον <hostid>ftp-master</hostid>:</para> + + <variablelist> + <varlistentry> + <term><filename>/pub/FreeBSD/index.html</filename></term> + <listitem> + <para>Μια απλή web σελίδα που περιέχει δείκτες σε διάφορους + σημαντικούς FTP καταλόγους για την τρέχουσα έκδοση του + FreeBSD.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><filename>/pub/FreeBSD/releases/<replaceable>arch</replaceable>/<replaceable>X.Y</replaceable>-RELEASE/</filename></term> + <listitem> + <para>Ο κατάλογος από τον οποίο μπορούν να γίνουν εγκαταστάσεις μέσω + FTP, όπως τον έχει προετοιμάσει η εντολή <command>make + release</command>.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><filename>/pub/FreeBSD/ports/<replaceable>arch</replaceable>/packages/packages-<replaceable>X.Y</replaceable>-release/</filename></term> + <listitem> + <para>Όλα τα προμεταγλωττισμένα πακέτα για την τρέχουσα έκδοση.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><filename>/pub/FreeBSD/releases/<replaceable>arch</replaceable>/<replaceable>X.Y</replaceable>-RELEASE/tools</filename></term> + <listitem> + <para>Μια συμβολική συντόμευση για τον κατάλογο + <filename>../../../tools</filename>.</para></listitem> + </varlistentry> + + <varlistentry> + <term><filename>/pub/FreeBSD/releases/<replaceable>arch</replaceable>/<replaceable>X.Y</replaceable>-RELEASE/packages</filename></term> + <listitem> + <para>Μια συμβολική συντόμευση για τον κατάλογο + <filename>../../../ports/i386/packages-<replaceable>X.Y</replaceable>-release</filename>.</para></listitem> + </varlistentry> + + <varlistentry> + <term><filename>/pub/FreeBSD/releases/<replaceable>arch</replaceable>/ISO-IMAGES/<replaceable>X.Y</replaceable>/<replaceable>X.Y</replaceable>-*.iso</filename></term> + <listitem> + <para>Τα αρχεία ISO.</para> + </listitem> + </varlistentry> + </variablelist> + + <para>Για περισσότερες πληροφορίες σχετικά με την οργάνωση των mirror + διανομής FTP του FreeBSD, παρακαλώ δείτε το άρθρο <ulink + url="../hubs/">Φτιάχνοντας ένα FreeBSD mirror</ulink>.</para> + + <para>Μπορεί να πάρει αρκετές ώρες από την στιγμή που θα ενημερωθεί ο + <hostid>ftp-master</hostid> μέχρι να ενημερωθούν στην πλειοψηφία τους τα + πρώτου επιπέδου FTP mirror με την νέα έκδοση. Επιβάλλεται οι υπεύθυνοι + έκδοσης να συνεννοηθούν με την &a.hubs; πριν ανακοινώσουν την γενική + διαθεσιμότητα της νέας έκδοσης στους εξυπηρετητές FTP.</para> + </sect2> + + <sect2 id="dist-cdrom"> + <title>Μαζική Αναπαραγωγή των CD-ROM</title> + + <para>Θα συμπληρωθεί σύντομα: Συμβουλές για την αποστολή των ISO αρχείων + του FreeBSD σε κάποιον που μπορεί να κάνει μαζική αναπαραγωγή, και μέτρα + ελέγχου ποιότητας που μπορούν να παρθούν.</para> + </sect2> +</sect1> + +<!-- Επεκτασιμότητα --> +<sect1 id="extensibility"> + <title>Επεκτασιμότητα</title> + + <para>Παρόλο που το FreeBSD είναι ένα πλήρες λειτουργικό σύστημα, δεν + υπάρχει κάτι που να σας αναγκάζει να χρησιμοποιήσετε το σύστημα ακριβώς + όπως το έχουμε πακετάρει εμείς για διανομή. Έχουμε προσπαθήσει να + σχεδιάσουμε το σύστημα έτσι που να είναι όσο το δυνατόν πιο επεκτάσιμο, + για να είναι εύκολο να χρησιμοποιηθεί σαν βάση πάνω στην οποία άλλα + εμπορικά προϊόντα να μπορούν να στηριχθούν. Ο μόνος + <quote>κανόνας</quote> που έχουμε σχετικά με αυτό είναι πως αν σχεδιάζετε + να διανείμετε το FreeBSD με μεγάλης κλίμακας αλλαγές, σας ενθαρρύνουμε να + τεκμηριώσετε τις αλλαγές σας. Η κοινότητα του FreeBSD μπορεί μόνο να + βοηθήσει στην υποστήριξη αυτών που χρησιμοποιούν το λογισμικό ακριβώς όπως + το διανέμουμε εμείς. Ενθαρρύνουμε και δεχόμαστε κάθε αλλαγή που προωθεί + την ανάπτυξη πιο εξελιγμένων εργαλείων εγκατάστασης και διαχείρισης, για + παράδειγμα, αλλά δεν θα πρέπει να περιμένει κανείς να μπορούμε να + απαντήσουμε και ερωτήσεις σχετικά με κάτι τέτοιο.</para> + + <sect2> + <title>Δημιουργία Προσαρμοσμένων Δισκεττών Εκκίνησης.</title> + + <para>Πολλές εγκαταστάσεις έχουν πολύπλοκες απαιτήσεις που μπορεί με τη + σειρά τους να απαιτούν την προσθήκη περισσότερων οδηγών ή εργαλείων + χρήστη στις δισκέττες εγκατάστασης. Ο <quote>μπακάλικος</quote> τρόπος + να το κάνετε αυτό είναι να κάνετε τις αλλαγές σας στον κατάλογο που έχει + ετοιμάσει μετά το τέλος της η διαδικασία + <command>make release</command>:</para> + + <itemizedlist> + <listitem> + <para>Περάστε τα patches σας ή προσθέστε τα επιπλέον αρχεία μέσα στον + κατάλογο chroot της έκδοσης.</para> + </listitem> + + <listitem> + <para><command>rm ${CHROOTDIR}/usr/obj/usr/src/release/release.[48]</command></para> + </listitem> + + <listitem> + <para>Μεταγλωττίστε πάλι το &man.sysinstall.8;, τον πυρήνα, ή όποια + άλλα προγράμματα έχουν επηρεαστεί από τις αλλαγές σας.</para> + </listitem> + + <listitem> + <para><command>chroot ${CHROOTDIR} ./mk release.4</command></para> + </listitem> + + <listitem> + <para><command>chroot ${CHROOTDIR} ./mk release.8</command></para> + </listitem> + </itemizedlist> + + <para>Οι νέες δισκέττες εγκατάστασης θα δημιουργηθούν στον κατάλογο + <filename>${CHROOTDIR}/R/stage/floppies</filename>.</para> + + <para>Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το make target + <filename>boot.flp</filename>, ή μπορείτε να τρέξετε απευθείας το script + που δημιουργεί τα συστήματα αρχείων + <filename>src/release/scripts/doFS.sh</filename>.</para> + + <para>Μπορείτε επίσης να κανονίσετε ώστε δικές σας αλλαγές να περαστούν με + μορφή patch στην έκδοση όπως θα φτιάχνεται, δίνοντας τιμή στην μεταβλητή + <makevar>LOCAL_PATCH</makevar> όταν τρέξετε την εντολή <command>make + release</command>.</para> + </sect2> + + <sect2> + <title>Προγραμματίζοντας το <command>sysinstall</command></title> + + <para>Το εργαλείο εγκατάστασης και ρύθμισης του FreeBSD, το + &man.sysinstall.8;, μπορεί να προγραμματιστεί για να κάνει + πιο εύκολες τις αυτοματοποιημένες εγκαταστάσεις σε πολλά μηχανήματα. + Αυτό το χαρακτηριστικό του προγράμματος μπορεί να χρησιμοποιηθεί σε + συνδυασμό με το PXE[13] της Intel για να ξεκινήσει η εγκατάσταση από το + δίκτυο, ή σε συνδυασμό με προσαρμοσμένες δισκέττες εκκίνησης κι ένα + sysinstall script. Ένα παράδειγμα από τέτοιο sysinstall script μπορείτε + να βρείτε στο αρχείο + <filename>src/release/sysinstall/install.cfg</filename>.</para> + </sect2> +</sect1> + +<!-- Μαθήματα που Πήραμε --> +<sect1 id="lessons-learned"> + <title>Μαθήματα που Πήραμε από την Έκδοση 4.4 του FreeBSD</title> + + <para>Η διαδικασία ετοιμασίας της έκδοσης 4.4 του FreeBSD ξεκίνησε επίσημα + την 1η Αυγούστου 2001. Μετά από αυτή την ημερομηνία, όλες οι αλλαγές στον + κορμό <literal>RELENG_4</literal> του FreeBSD έπρεπε να έχουν έγκριση από + την &a.re;. Η πρώτη δοκιμαστική έκδοση για την αρχιτεκτονική x86 έγινε + διαθέσιμη στις 16 Αυγούστου, κι ακολουθήθηκε από 4 ακόμα δοκιμαστικές + εκδόσεις που οδήγησαν στην τελική έκδοση στις 18 του Σεπτέμβρη. + Ο υπεύθυνος ασφάλειας έπαιξε σημαντικό ρόλο κατά την διάρκεια της + τελευταίας εβδομάδας καθώς κάποια προβλήματα ασφάλειας βρέθηκαν σε + προηγούμενες, δοκιμαστικές εκδόσεις. Συνολικά, πάνω από + <emphasis>500</emphasis> email στάλθηκαν στην &a.re; σε διάστημα μικρότερο + από ένα μήνα.</para> + + <para>Η κοινότητα των χρηστών μας έκανε σαφές ότι η ασφάλεια και η + σταθερότητα μιας έκδοσης δεν θά 'πρεπε να θυσιάζεται για κανενός είδους + προθεσμίες ή ημερομηνίες που έχουν τεθεί σαν στόχοι από πριν. Το FreeBSD + έχει μεγαλώσει δραματικά κατά τη διάρκεια της ζωής του σαν σύστημα, και η + ανάγκη για συγκεκριμένη πολιτική και οργάνωση για την δημιουργία νέων + εκδόσεων είναι πλέον φανερή περισσότερο από ποτέ. Αυτή η ανάγκη θα γίνει + ακόμα πιο σημαντική καθώς το FreeBSD θα αρχίσει να μεταφέρεται σε νέες + πλατφόρμες.</para> +</sect1> + +<!-- Μελλοντικές Κατευθύνσεις --> +<sect1 id="future"> + <title>Μελλοντικές Κατευθύνσεις</title> + + <para>Είναι ζωτικής σημασίας οι πρακτικές και η οργάνωση της διαδικασίας + δημιουργίας των εκδόσεών μας να συμβαδίζουν με την συνεχώς αυξανόμενη βάση + των χρηστών μας. Με βάση αυτή τη σκέψη εργαζόμαστε σκληρά για να + τεκμηριώσουμε την διαδικασία παραγωγής των εκδόσεων του FreeBSD.</para> + + <itemizedlist> + <listitem> + <para><emphasis>Παράλληλη εκτέλεση</emphasis> - Μερικά μέρη της + μεταγλώττισης μιας εγκατάστασης μπορούν να γίνουν <quote>πολύ + παράλληλα</quote>. Τα πιο πολλά από τα στάδια είναι + I/O intensive, οπότε η ύπαρξη πολλών υψηλής-ταχύτητας δίσκων + είναι πιο σημαντική από τηνν χρήση πολλών επεξεργαστών για να + επιταχυνθεί κάπως η διαδικασία του <command>make release</command>. + Αν διαφορετικοί δίσκοι χρησιμοποιηθούν για τμήματα της ιεραρχίας του + &man.chroot.2; περιβάλλοντος, τότε το CVS checkout των καταλόγων + <filename>ports</filename> και <filename>doc</filename> μπορεί να + γίνει ταυτόχρονα με την εντολή <command>make world</command> στον άλλο + δίσκο. Χρησιμοποιώντας μια <acronym>RAID</acronym> λύση (hardware ή + software) μπορεί να μειώσει δραστικά τον συνολικό χρόνο που + χρειάζεται να μεταγλωττιστεί μια πλήρης έκδοση.</para> + </listitem> + + <listitem> + <para><emphasis>Μεταγλώττιση εκδόσεων για διαφορετικές + αρχιτεκτονικές</emphasis> - Θέλετε να μεταγλωττίσετε μια έκδοση για + IA-64 ή Alpha σε κάποιον x86 επεξεργαστή? <command>make + TARGET=ia64 release</command>. + </para> + </listitem> + + <listitem> + <para><emphasis>Δοκιμές για λάθη</emphasis> - Χρειαζόμαστε καλύτερα + εργαλεία για αυτόματο έλεγχο ορθότητας στο FreeBSD.</para> + </listitem> + + <listitem> + <para><emphasis>Εργαλεία Εγκατάστασης</emphasis> - Το πρόγραμμά μας για + την εγκατάσταση του FreeBSD έχει ξεπεράσει προ πολλού τον αναμενόμενο + χρόνο ζωής του. Υπάρχουν διάφορες ομάδες που εργάζονται για να + υλοποιήσουν κάποιον άλλο, πιο μοντέρνο μηχανισμό εγκατάστασης. Μια + από τις πιο υποσχόμενες, είναι η ομάδα libh[5] που στοχεύει στην + υλοποίηση ενός έξυπνου, νέου τρόπου πακεταρίσματος λογισμικού και ενός + GUI προγράμματος εγκατάστασης.</para> + </listitem> + </itemizedlist> +</sect1> + +<!-- Ευχαριστίες --> +<sect1 id="ackno"> + <title>Ευχαριστίες</title> + + <para>Θα ήθελα να ευχαριστήσω τον Jordan Hubbard, που μου έδωσε την ευκαιρία + να πάρω κάποια από την ευθύνη της έκδοσης 4.4 του FreeBSD, καθώς και για + όλη την δουλειά που έχει κάνει εδώ και χρόνια για να είναι το FreeBSD αυτό + που είναι σήμερα. Φυσικά, η έκδοση δεν θα ήταν ποτέ δυνατόν να + ολοκληρωθεί χωρίς όλη την σχετική με την έκδοση δουλειά που έκαναν οι + &a.asami;, &a.steve;, &a.bmah;, &a.nik;, &a.obrien;, &a.kris;, &a.jhb; και + όλοι οι υπόλοιποι που ασχολούνται με την ανάπτυξη του FreeBSD. Θέλω + επίσης να ευχαριστήσω τους &a.rgrimes;, &a.phk;, και όλους τους άλλους που + εργάστηκαν για να φτιάξουν τα εργαλεία για τις εκδόσεις στις πρώτες μέρες + της δημιουργίας του FreeBSD. Αυτό το άρθρο έχει επηρεαστεί από κείμενα + σχετικά με την οργάνωση των εκδόσεων από το CSRG[14], την Ομάδα του + NetBSD[11], και την πρόταση για μια διαδικασία οργάνωσης των εκδόσεων του + John Baldwin[12].</para> +</sect1> + +<!-- Αναφορές / Biblio Section --> +<sect1 id="biblio"> + <title>Αναφορές</title> + + <para>[1] CVS - Concurrent Versions System + <ulink url="http://www.cvshome.org"></ulink></para> + + <para>[2] CVSup - The CVS-Optimized General Purpose Network File Distribution + System <ulink url="http://www.polstra.com/projects/freeware/CVSup"></ulink></para> + + <para>[3] <ulink url="http://bento.FreeBSD.org"></ulink></para> + + <para>[4] FreeBSD Ports Collection + <ulink url="http://www.FreeBSD.org/ports"></ulink></para> + + <para>[5] The libh Project + <ulink url="http://www.FreeBSD.org/projects/libh.html"></ulink></para> + + <para>[6] FreeBSD Committers <ulink + url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/contributors/staff-committers.html"></ulink></para> + + <para>[7] FreeBSD Core-Team + <ulink url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/contributors/staff-core.html"></ulink></para> + + <para>[8] FreeBSD Handbook + <ulink url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook"></ulink></para> + + <para>[9] GNATS: The GNU Bug Tracking System + <ulink url="http://www.gnu.org/software/gnats"></ulink></para> + + <para>[10] FreeBSD PR Statistics + <ulink url="http://www.FreeBSD.org/prstats/index.html"></ulink></para> + + <para>[11] NetBSD Developer Documentation: Release Engineering + <ulink url="http://www.NetBSD.org/developers/releng/index.html"></ulink></para> + + <para>[12] John Baldwin's FreeBSD Release Engineering Proposal + <ulink url="http://people.FreeBSD.org/~jhb/docs/releng.txt"></ulink></para> + + <para>[13] PXE Jumpstart Guide + <ulink url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/pxe/index.html"></ulink></para> + + <para>[14] Marshall Kirk McKusick, Michael J. Karels, and Keith Bostic: + <ulink url="http://docs.freebsd.org/doc/papers/releng.html"><emphasis>The Release Engineering of 4.3BSD</emphasis></ulink></para> +</sect1> +</article> diff --git a/el_GR.ISO8859-7/articles/releng/branches.ascii b/el_GR.ISO8859-7/articles/releng/branches.ascii new file mode 100644 index 0000000000..531bed46bf --- /dev/null +++ b/el_GR.ISO8859-7/articles/releng/branches.ascii @@ -0,0 +1,30 @@ +$FreeBSD$ + + | FreeBSD Development Branches + +--------------+ + | 3.0-RELEASE | + | | + +--------------+ + | RELENG_3 +H ______|____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + - - - - - - + +E / \ | | | | | | | | | | | | +A |3.1-RELEASE|-|3.2R |-|3.3R |-|3.4R |-|3.5R |-| 3.5.1R|---| 3.X-STABLE | +D \___________/ |_ _ _| |_ _ _| |_ _ _| |_ _ _| |_ _ _ _| | | + | + - - - - - - + + | + + - - - - - - - + + | 4.0-CURRENT | + | | + + - - - - - - - + + | RELENG_4 + _____|_____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + - - - - - - + + / \ | | | | | | | | | | | | + |4.0-RELEASE|-|4.1R |-|4.1.1R |-|4.2R |-|4.3R |-|4.4R |---| 4.X-STABLE | + \___________/ |_ _ _| |_ _ _ _| |_ _ _| |_ _ _| |_ _ _| | | + | ___| |__ + - - - - - - + + | _ _ _ | _ _ _ _ _ |_ _ _ __ + | | | | | + + - - - - - - - + | RELENG_4_3 | | RELENG_4_4 | + | 5.0-CURRENT | |_ _ _ _ _ _ _| |_ _ _ _ _ _ _| + | | + + - - - - - - - + diff --git a/el_GR.ISO8859-7/articles/releng/branches.pic b/el_GR.ISO8859-7/articles/releng/branches.pic new file mode 100644 index 0000000000..b492eaf25a --- /dev/null +++ b/el_GR.ISO8859-7/articles/releng/branches.pic @@ -0,0 +1,116 @@ +.\" -*- nroff -*- +.\" Original version: 1.5 +.\" $FreeBSD$ + +.PS 6 + +HEAD_3: + box width .9 "\s-23.0-CURRENT\s+2" dashed + + line -> down from HEAD_3.s +RELENG_3_0_0_RELEASE: + box width .9 "\s-23.0-RELEASE\s+2" + move right 3 + "\s-2RELENG_3\s+2" + + line -> down from RELENG_3_0_0_RELEASE.s +RELENG_3_1_0_RELEASE: + ellipse width .9 "\s-23.1-RELEASE\s+2" + move left .75 + "\s-2H\s+2" + move down .15 + "\s-2E\s+2" + move down .15 + "\s-2A\s+2" + move down .15 + "\s-2D\s+2" + + line -> right from RELENG_3_1_0_RELEASE.e +RELENG_3_2_0_RELEASE: + box width .5 "\s-23.2R\s+2" + + line -> right from RELENG_3_2_0_RELEASE.e +RELENG_3_3_0_RELEASE: + box width .5 "\s-23.3R\s+2" + + line -> right from RELENG_3_3_0_RELEASE.e +RELENG_3_4_0_RELEASE: + box width .5 "\s-23.4R\s+2" + + line -> right from RELENG_3_4_0_RELEASE.e +RELENG_3_5_0_RELEASE: + box width .5 "\s-23.5R\s+2" + + line -> right from RELENG_3_5_0_RELEASE.e +RELENG_3_5_1_RELEASE: + box width .5 "\s-23.5.1R\s+2" + + line -> right from RELENG_3_5_1_RELEASE.e +RELENG_3: + box "\s-23-STABLE\s+2" + + line -> down from RELENG_3_1_0_RELEASE.s +HEAD_4: + box width .9 "\s-24.0-CURRENT\s+2" dashed + move right 3 + "\s-2RELENG_4\s+2" + + line -> down from HEAD_4.s +RELENG_4_0_0_RELEASE: + ellipse width .9 "\s-24.0-RELEASE\s+2" + + line -> right from RELENG_4_0_0_RELEASE.e +RELENG_4_1_0_RELEASE: + box width .5 "\s-24.1R\s+2" + + line -> right from RELENG_4_1_0_RELEASE.e +RELENG_4_1_1_RELEASE: + box width .5 "\s-24.1.1R\s+2" + + line -> right from RELENG_4_1_1_RELEASE.e +RELENG_4_2_0_RELEASE: + box width .5 "\s-24.2R\s+2" + + line -> right from RELENG_4_2_0_RELEASE.e +RELENG_4_3_0_RELEASE: + ellipse width .5 "\s-24.3R\s+2" + + line -> down from RELENG_4_3_0_RELEASE.s +RELENG_4_3: + box width .9 "\s-3RELENG_4_3\s+3" dashed + + line -> right from RELENG_4_3_0_RELEASE.e +RELENG_4_4_0_RELEASE: + ellipse width .5 "\s-24.4R\s+2" + + line -> down from RELENG_4_4_0_RELEASE.s +RELENG_4_4: + box width .9 "\s-3RELENG_4_4\s+3" dashed + + line -> right from RELENG_4_4_0_RELEASE.e +RELENG_4_5_0_RELEASE: + ellipse width .5 "\s-24.5R\s+2" + + line -> down from RELENG_4_5_0_RELEASE.s +RELENG_4_5: + box width .9 "\s-3RELENG_4_5\s+3" dashed + + line -> right from RELENG_4_5_0_RELEASE.e +RELENG_4_6_0_RELEASE: + ellipse width .5 "\s-24.6R\s+2" + + line -> down from RELENG_4_6_0_RELEASE.s +RELENG_4_6_2_RELEASE: + ellipse width .5 "\s-24.6.2R\s+2" + line -> down from RELENG_4_6_2_RELEASE.s +RELENG_4_6: + box width .9 "\s-3RELENG_4_6\s+3" dashed + + line -> right from RELENG_4_6_0_RELEASE.e +RELENG_4:box "\s-24-STABLE\s+2" + + line -> down from RELENG_4_0_0_RELEASE.s +HEAD_5: + box width .9 "\s-25.0-CURRENT\s+2" dashed + +.PE diff --git a/el_GR.ISO8859-7/articles/releng/extra.css b/el_GR.ISO8859-7/articles/releng/extra.css new file mode 100644 index 0000000000..aea80fa12f --- /dev/null +++ b/el_GR.ISO8859-7/articles/releng/extra.css @@ -0,0 +1,17 @@ +/* + * Netscape 4 does not recognize the @import directive of CSS, so we + * can't add an additional stylesheet layer on top of the default one. + * Instead, we use this hack to copy this file to the end of + * docbook.css. + * + * $FreeBSD$ + * Original version: 1.1 + */ + +/* @import "docbook.css"; */ + +/* Customization that looks good for this particular article. */ + +DIV.TITLEPAGE { + text-align: center; +} |