diff --git a/el_GR.ISO8859-7/books/handbook/bibliography/chapter.sgml b/el_GR.ISO8859-7/books/handbook/bibliography/chapter.sgml
index a26a57dcac..c373eb8229 100644
--- a/el_GR.ISO8859-7/books/handbook/bibliography/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/bibliography/chapter.sgml
@@ -1,700 +1,701 @@
ΒιβλιογραφίαΑν και τα manual pages παρέχουν μία επίσημη αναφορά για ξεχωριστά
τμήματα του FreeBSD λειτουργικού συστήματος, έχουν κακή φήμη για το ότι δεν
επεξηγούν πως να ενώσεις τα τμήματα μαζί για να κάνεις όλο το λειτουργικό
σύστημα να λειτουργεί ομαλά. Για αυτό, δεν υπάρχει υποκατάστατο από ένα καλό βιβλίο στην
διαχείριση συστημάτων &unix; και ένα καλό εγχειρίδιο χρήστη.Βιβλία & Περιοδικά σχετικά με το FreeBSDΔιεθνή βιβλία &
περιοδικά:Using FreeBSD (σε Παραδοσιακά Κινέζικα).FreeBSD Unleashed (Μετάφραση σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την
China Machine
Press. ISBN 7-111-10201-0.
FreeBSD From Scratch First Edition (σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την China Machine Press. ISBN 7-111-07482-3.
FreeBSD From Scratch Second Edition (σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την China Machine Press. ISBN 7-111-10286-X.
FreeBSD Handbook Second Edition (Μετάφραση σε Απλοποιημένα
Κινέζικα), εκδόθηκε από την
Posts & Telecom
Press. ISBN 7-115-10541-3.
FreeBSD 3.x Internet (σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την
Tsinghua
University Press. ISBN 7-900625-66-6.FreeBSD & Windows (σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την
China Railway Publishing
House. ISBN 7-113-03845-XFreeBSD Internet Services HOWTO (σε Απλοποιημένα Κινέζικα),
εκδόθηκε από την China Railway Publishing House.
ISBN 7-113-03423-3FreeBSD for PC 98'ers (στα Γιαπωνέζικα), εκδόθηκε από την SHUWA System
Co, LTD. ISBN 4-87966-468-5 C3055 P2900E.FreeBSD (στα Γιαπωνέζικα), εκδόθηκε από την CUTT. ISBN 4-906391-22-2
C3055 P2400E.Complete Introduction to FreeBSD
(στα Γιαπωνέζικα), εκδόθηκε από την Shoeisha Co., Ltd.
ISBN 4-88135-473-6 P3600E.Personal UNIX Starter Kit FreeBSD
(στα Γιαπωνέζικα), εκδόθηκε από την ASCII.
ISBN 4-7561-1733-3 P3000E.FreeBSD Handbook (Γιαπωνέζικη μετάφραση), εκδόθηκε από την
ASCII.
ISBN 4-7561-1580-2 P3800E.FreeBSD mit Methode (στα Γερμανικά), εκδόθηκε από την Computer und Literatur Verlag/Vertrieb Hanser, 1998. ISBN 3-932311-31-0.FreeBSD 4 - Installieren,
Konfigurieren, Administrieren
(στα Γερμανικά), εκδόθηκε από την Computer und Literatur Verlag,
2001. ISBN 3-932311-88-4.FreeBSD 5 - Installieren,
Konfigurieren, Administrieren
(στα Γερμανικά), εκδόθηκε από την Computer und Literatur Verlag,
2003. ISBN 3-936546-06-1.
FreeBSD de Luxe (στα Γερμανικά), εκδόθηκε από την
Verlag Modere Industrie,
2003. ISBN 3-8266-1343-0.
FreeBSD Install and Utilization Manual
(στα Γιαπωνέζικα), εκδόθηκε από την Mainichi Communications
Inc..Onno W Purbo, Dodi Maryanto, Syahrial Hubbany, Widjil Widodo
Building Internet Server with
FreeBSD (στην Ινδονησιακή γλώσσα), εκδόθηκε
από την Elex Media
Komputindo.Absolute BSD: The Ultimate Guide to FreeBSD (Μετάφραση σε
Παραδοσιακά Κινέζικα), εκδόθηκε από την GrandTech Press, 2003.
ISBN 986-7944-92-5.The FreeBSD 6.0 Book
(σε Παραδοσιακά Κινέζικα), εκδόθηκε από την Drmaster, 2006.
ISBN 9-575-27878-X.Βιβλία & περιοδικά στην Αγγλική γλώσσα:
- Absolute
- BSD: The Ultimate Guide to FreeBSD, εκδόθηκε από την
- No Starch Press, 2002.
- ISBN: 1886411743
+ Absolute
+ FreeBSD, 2nd Edition: The Complete Guide to FreeBSD,
+ εκδόθηκε από την No Starch Press, 2007.
+ ISBN: 978-1-59327-151-0
The Complete FreeBSD, εκδόθηκε από την
O'Reilly, 2003.
ISBN: 0596005164The
FreeBSD Corporate Networker's Guide, εκδόθηκε από την
Addison-Wesley, 2000.
ISBN: 0201704811
FreeBSD: An Open-Source Operating System for Your Personal
Computer, εκδόθηκε από την The Bit Tree Press, 2001.
ISBN: 0971204500Teach Yourself FreeBSD in 24 Hours, εκδόθηκε από την
Sams, 2002.
ISBN: 0672324245FreeBSD 6 Unleashed, εκδόθηκε από την
Sams, 2006.
ISBN: 0672328755FreeBSD: The Complete Reference, εκδόθηκε από την
McGrawHill, 2003.
ISBN: 0072224096 BSD Magazine,
εκδίδεται από την Software Press Sp. z o.o. SK.
ISSN 1898-9144Οδηγοί χρήστηComputer Systems Research Group, UC Berkeley. 4.4BSD
User's Reference Manual. O'Reilly & Associates,
Inc., 1994. ISBN 1-56592-075-9Computer Systems Research Group, UC Berkeley. 4.4BSD
User's Supplementary Documents. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-076-7UNIX in a Nutshell. O'Reilly &
Associates, Inc., 1990. ISBN 093717520XMui, Linda. What You Need To Know When You Can't Find
Your UNIX System Administrator. O'Reilly &
Associates, Inc., 1995. ISBN 1-56592-104-6Το Ohio State
University έγραψε τα Εισαγωγικά
μαθήματα UNIX που διατίθενται σε HTML και σε μορφή
PostScript.Μια Ιταλική μετάφραση
αυτού του κειμένου διατίθεται ως μέρος του FreeBSD Italian
Documentation Project.Jpman Project, Japan
FreeBSD Users Group. FreeBSD User's
Reference Manual (Japanese translation). Mainichi Communications
Inc., 1998. ISBN4-8399-0088-4 P3800E.Το Edinburgh
University έγραψε ένα Online οδηγό για
νέους στο περιβάλλον του UNIX.Οδηγοί διαχειριστήAlbitz, Paul and Liu, Cricket. DNS and
BIND, 4th Ed. O'Reilly & Associates, Inc., 2001.
ISBN 1-59600-158-4Computer Systems Research Group, UC Berkeley. 4.4BSD
System Manager's Manual. O'Reilly & Associates,
Inc., 1994. ISBN 1-56592-080-5Costales, Brian, et al. Sendmail, 2nd Ed.
O'Reilly & Associates, Inc., 1997. ISBN 1-56592-222-0Frisch, Æleen. Essential System
Administration, 2nd Ed. O'Reilly & Associates,
Inc., 1995. ISBN 1-56592-127-5Hunt, Craig. TCP/IP Network
Administration, 2nd Ed. O'Reilly & Associates, Inc., 1997.
ISBN 1-56592-322-7Nemeth, Evi. UNIX System Administration
Handbook. 3rd Ed. Prentice Hall, 2000. ISBN
0-13-020601-6Stern, Hal Managing NFS and NIS O'Reilly
& Associates, Inc., 1991. ISBN 0-937175-75-7Jpman Project, Japan
FreeBSD Users Group. FreeBSD System
Administrator's Manual (Γιαπωνέζικη μετάφραση). Mainichi Communications
Inc., 1998. ISBN4-8399-0109-0 P3300E.Dreyfus, Emmanuel. Cahiers
de l'Admin: BSD 2nd Ed. (στα Γαλλικά), Eyrolles, 2004.
ISBN 2-212-11463-XΟδηγοί προγραμματιστώνAsente, Paul, Converse, Diana, and Swick, Ralph.
X Window System Toolkit. Digital Press,
1998. ISBN 1-55558-178-1Computer Systems Research Group, UC Berkeley. 4.4BSD
Programmer's Reference Manual. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-078-3Computer Systems Research Group, UC Berkeley. 4.4BSD
Programmer's Supplementary Documents. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-079-1Harbison, Samuel P. and Steele, Guy L. Jr. C: A
Reference Manual. 4th ed. Prentice Hall, 1995.
ISBN 0-13-326224-3Kernighan, Brian and Dennis M. Ritchie. The C
Programming Language. 2nd Ed. PTR Prentice Hall, 1988.
ISBN 0-13-110362-8Lehey, Greg. Porting UNIX Software.
O'Reilly & Associates, Inc., 1995. ISBN 1-56592-126-7Plauger, P. J. The Standard C Library.
Prentice Hall, 1992. ISBN 0-13-131509-9Spinellis, Diomidis. Code
Reading: The Open Source Perspective.
Addison-Wesley, 2003. ISBN 0-201-79940-5Spinellis, Diomidis. Code
Quality: The Open Source Perspective.
Addison-Wesley, 2006. ISBN 0-321-16607-8Stevens, W. Richard and Stephen A. Rago.
Advanced Programming in the UNIX
Environment. 2nd Ed.
Reading, Mass. : Addison-Wesley, 2005.
ISBN 0-201-43307-9Stevens, W. Richard. UNIX Network
Programming. 2nd Ed, PTR Prentice Hall, 1998. ISBN
0-13-490012-XWells, Bill. Writing Serial Drivers for UNIX.
Dr. Dobb's Journal. 19(15), December 1994.
pp68-71, 97-99.Το εσωτερικό του λειτουργικού συστήματοςAndleigh, Prabhat K. UNIX System
Architecture. Prentice-Hall, Inc., 1990. ISBN
0-13-949843-5Jolitz, William. Porting UNIX to the 386.
Dr. Dobb's Journal. January 1991-July
1992.Leffler, Samuel J., Marshall Kirk McKusick, Michael J Karels and
John Quarterman The Design and Implementation of the
4.3BSD UNIX Operating System. Reading, Mass. :
Addison-Wesley, 1989. ISBN 0-201-06196-1Leffler, Samuel J., Marshall Kirk McKusick, The Design
and Implementation of the 4.3BSD UNIX Operating System: Answer
Book. Reading, Mass. : Addison-Wesley, 1991. ISBN
0-201-54629-9McKusick, 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(Το κεφάλαιο 2 από αυτό το βιβλίο διατίθεται online ως μέρος του
FreeBSD Documentation Project, και το κεφάλαιο 9
εδώ.)Marshall Kirk McKusick, George V. Neville-Neil
The Design and Implementation of the FreeBSD Operating
System.
Boston, Mass. : Addison-Wesley, 2004. ISBN 0-201-70245-2Stevens, W. Richard. TCP/IP Illustrated, Volume 1:
The Protocols. Reading, Mass. : Addison-Wesley,
1996. ISBN 0-201-63346-9Schimmel, Curt. Unix Systems for Modern
Architectures. Reading, Mass. : Addison-Wesley, 1994.
ISBN 0-201-63338-8Stevens, W. Richard. TCP/IP Illustrated, Volume 3:
TCP for Transactions, HTTP, NNTP and the UNIX Domain
Protocols. Reading, Mass. : Addison-Wesley, 1996.
ISBN 0-201-63495-3Vahalia, Uresh. UNIX Internals -- The New
Frontiers. Prentice Hall, 1996. ISBN
0-13-101908-2Wright, Gary R. and W. Richard Stevens. TCP/IP
Illustrated, Volume 2: The Implementation. Reading,
Mass. : Addison-Wesley, 1995. ISBN 0-201-63354-XΑναφορές ασφαλείαςCheswick, William R. and Steven M. Bellovin. Firewalls
and Internet Security: Repelling the Wily Hacker.
Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-63357-4Garfinkel, Simson and Gene Spafford.
Practical UNIX & Internet Security.
2nd Ed. O'Reilly & Associates, Inc., 1996. ISBN
1-56592-148-8Garfinkel, Simson. PGP Pretty Good
Privacy O'Reilly & Associates, Inc., 1995. ISBN
1-56592-098-8Αναφορές υλικούAnderson, Don and Tom Shanley. Pentium Processor
System Architecture. 2nd Ed. Reading, Mass. :
Addison-Wesley, 1995. ISBN 0-201-40992-5Ferraro, Richard F. Programmer's Guide to the EGA,
VGA, and Super VGA Cards. 3rd ed. Reading, Mass. :
Addison-Wesley, 1995. ISBN 0-201-62490-7Η Intel Corporation δημοσιεύει τεκμηρίωση για τις CPUs,
τα chipsets και πρότυπα στο developer web site,
συνήθως ως αρχεία PDF.Shanley, Tom. 80486 System Architecture.
3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-40994-1Shanley, Tom. ISA System Architecture.
3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-40996-8Shanley, Tom. PCI System Architecture.
4th ed. Reading, Mass. : Addison-Wesley, 1999. ISBN
0-201-30974-2Van Gilluwe, Frank. The Undocumented PC, 2nd Ed.
Reading, Mass: Addison-Wesley Pub. Co., 1996. ISBN
0-201-47950-8Messmer, Hans-Peter. The Indispensable PC Hardware Book, 4th Ed.
Reading, Mass: Addison-Wesley Pub. Co., 2002. ISBN
0-201-59616-4Ιστορία του &unix;Lion, John Lion's Commentary on UNIX, 6th Ed. With
Source Code. ITP Media Group, 1996. ISBN
1573980137Raymond, Eric S. The New Hacker's Dictionary, 3rd
edition. MIT Press, 1996. ISBN
0-262-68092-0. Γνωστό και ως το Jargon
FileSalus, Peter H. A quarter century of UNIX.
Addison-Wesley Publishing Company, Inc., 1994. ISBN
0-201-54777-5Simon Garfinkel, Daniel Weise, Steven Strassmann. The
UNIX-HATERS Handbook. IDG Books Worldwide, Inc.,
1994. ISBN 1-56884-203-1. Εκτός κυκλοφορίας, αλλά διατίθεται
online.Don Libes, Sandy Ressler Life with UNIX
— special edition. Prentice-Hall, Inc., 1989. ISBN
0-13-536657-7The BSD family tree.
η το /usr/share/misc/bsd-family-tree
σε ένα FreeBSD μηχάνημα.Networked Computer Science Technical Reports
Library. Παλαιές BSD εκδόσεις από το Computer Systems Research
group (CSRG).
:
Το 4CD set έχει όλες τις BSD εκδόσεις από την 1BSD μέχρι την
4.4BSD και την 4.4BSD-Lite2 (αλλά όχι την 2.11BSD, δυστυχώς).
Το τελευταίο δισκάκι περιέχει επίσης τον τελικό πηγαίο κώδικα συν
τα αρχεία SCCS.Περιοδικά και εφημερίδεςThe C/C++ Users Journal. R&D
Publications Inc. ISSN 1075-2838Sys Admin — The Journal for UNIX System
Administrators Miller Freeman, Inc., ISSN
1061-2688freeX — Das Magazin für Linux - BSD - UNIX
(στα Γερμανικά) Computer- und Literaturverlag GmbH, ISSN 1436-7033
diff --git a/el_GR.ISO8859-7/books/handbook/cutting-edge/chapter.sgml b/el_GR.ISO8859-7/books/handbook/cutting-edge/chapter.sgml
index c4ba2745d4..17c8efc503 100644
--- a/el_GR.ISO8859-7/books/handbook/cutting-edge/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/cutting-edge/chapter.sgml
@@ -1,3437 +1,3437 @@
JimMockΑναδομήθηκε, αναδιοργανώθηκε, και τμήματα του ανανεώθηκαν
από τον JordanHubbardΑρχική συνεισφορά από τους Poul-HenningKampJohnPolstraNikClaytonΕνημέρωση και Αναβάθμιση του &os;ΣύνοψηΤο &os; βρίσκεται υπό συνεχή εξέλιξη μεταξύ των επίσημων εκδόσεων
του. Μερικοί άνθρωποι προτιμούν να χρησιμοποιούν τις επίσημες εκδόσεις,
ενώ άλλοι προτιμούν να κρατούν το σύστημα τους ενημερωμένο με τις
τελευταίες εξελίξεις. Ωστόσο, ακόμα και οι επίσημες εκδόσεις
ενημερώνονται συχνά με διορθώσεις κρίσιμων σφαλμάτων και ασφαλείας.
Όποια έκδοση και να χρησιμοποιήσετε, το &os; παρέχει όλα τα
απαραίτητα εργαλεία για να κρατήσετε το σύστημα σας ενημερωμένο, και
επίσης σας επιτρέπει να αναβαθμιστείτε εύκολα σε κάποια επόμενη
έκδοση. Το κεφάλαιο αυτό θα σας βοηθήσει να αποφασίσετε αν θέλετε να
παρακολουθείτε το σύστημα ανάπτυξης, ή αν θα προτιμήσετε να παραμείνετε
σε μια από τις παγιωμένες εκδόσεις. Θα παρουσιάσουμε επίσης τα βασικά
εργαλεία που απαιτούνται για την ενημέρωση και αναβάθμιση του
συστήματος.Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε:Ποια βοηθητικά προγράμματα μπορείτε να χρησιμοποιήσετε για να
ενημερώσετε το σύστημα και την Συλλογή των Ports.Πως να διατηρείτε το σύστημα σας ενημερωμένο με τα προγράμματα
freebsd-updateCVSup,
CVS, ή
CTM.Πως να συγκρίνετε την κατάσταση ενός εγκατεστημένου συστήματος,
με αναφορά ένα γνωστό και εγγυημένα σωστό σύστημα.Πως να διατηρήσετε την τεκμηρίωση σας ενημερωμένη μέσω του
CVSup ή των ports της τεκμηρίωσης .Τη διαφορά μεταξύ των δύο κλάδων που βρίσκονται σε εξέλιξη: του
&os.stable; και του &os.current;.Πως να ξαναφτιάξετε και να επανεγκαταστήσετε ολόκληρο
το βασικό σύστημα με την make buildworld
(κλπ).Πριν διαβάσετε αυτό το κεφάλαιο, θα πρέπει:Να ρυθμίσετε σωστά τη σύνδεση σας στο δίκτυο ().Να γνωρίζετε πως να εγκαταστήσετε πρόσθετο λογισμικό
τρίτου κατασκευαστή ().Στο κεφάλαιο αυτό γίνεται συχνά χρήση της εντολής
cvsup για την ανάκτηση ή ενημέρωση των αρχείων
πηγαίου κώδικα του &os;. Για να την χρησιμοποιήσετε, θα πρέπει να
εγκαταστήσετε ένα πακέτο ή port όπως το
net/cvsup-without-gui.
Αν χρησιμοποιείτε &os; 6.2-RELEASE ή νεώτερο, μπορείτε να
αντικαταστήσετε αυτή την εντολή με την &man.csup.1; η οποία ανήκει
πλέον στο βασικό σύστημα.TomRhodesΓράφηκε από τον ColinPercivalΒασίστηκε σε σημειώσεις που παρείχε ο Ενημερώνοντας το &os;Updating and Upgrading FreeBSDfreebsd-updateupdating-upgradingΗ εφαρμογή ενημερώσεων ασφαλείας αποτελεί ένα σημαντικό τμήμα της
συντήρησης λογισμικού, ειδικά όταν πρόκειται για το λειτουργικό σύστημα.
Για μεγάλο διάστημα, η διαδικασία αυτή δεν ήταν εύκολη στο &os;.
Έπρεπε να εφαρμοστούν patches στον πηγαίο κώδικα, να γίνει μεταγλώττιση
του από την αρχή, και να εγκατασταθούν ξανά τα νέα εκτελέσιμα.Αυτό δεν είναι πλέον αναγκαίο, καθώς το &os; διαθέτει τώρα ένα
βοηθητικό πρόγραμμα, το freebsd-update. Το πρόγραμμα
παρέχει δύο διαφορετικές λειτουργίες. Η πρώτη είναι η δυνατότητα
δυαδικής (binary) ενημέρωσης του βασικού συστήματος με τις τελευταίες
διορθώσεις ασφάλειας και λαθών, χωρίς να χρειάζεται ξανά μεταγλώττιση
και εγκατάσταση. Η δεύτερη είναι η δυνατότητα αναβάθμισης του
συστήματος σε μια νέα μικρή ή μεγάλη επίσημη έκδοση (release).Δυαδικές διορθώσεις λαθών και ασφάλειας, διατίθενται για όλες
τις αρχιτεκτονικές και εκδόσεις που υποστηρίζονται από την ομάδα
ασφάλειας. Ωστόσο, ορισμένα χαρακτηριστικά όπως η δυνατότητα
αναβάθμισης του λειτουργικού σε μια νέα έκδοση, απαιτούν την
τελευταία έκδοση του &man.freebsd-update.8; και του &os; 6.3.
Πριν προχωρήσετε στην αναβάθμιση σε μια νέα έκδοση, θα πρέπει να
διαβάσετε τις σχετικές με αυτήν ανακοινώσεις, καθώς μπορεί να
περιέχουν σημαντικές πληροφορίες. Μπορείτε να δείτε τις
ανακοινώσεις εκδόσεων στην παρακάτω τοποθεσία:
.Αν υπάρχει κάποιο crontab που χρησιμοποιεί τις
δυνατότητες του freebsd-update, θα πρέπει να
απενεργοποιηθεί πριν ξεκινήσει η παρακάτω διαδικασία. Μπορείτε να
εγκαταστήσετε την τελευταία έκδοση του
freebsd-update κατεβάζοντας το συμπιεσμένο πακέτο
από το παραπάνω URL και εκτελώντας τις παρακάτω
εντολές:&prompt.root; gunzip -c freebsd-update-upgrade.tgz | tar xvf -
&prompt.root; mv freebsd-update.sh /usr/sbin/freebsd-update
&prompt.root; mv freebsd-update.conf /etcΔεν απαιτείται να κατεβάσετε την τελευταία έκδοση, αν χρησιμοποιείτε
κάποια από τις τρέχουσες εκδόσεις του &os;.Το Αρχείο ΡυθμίσεωνΚάποιοι χρήστες ίσως θέλουν να αλλάξουν το προεπιλεγμένο αρχείο
ρυθμίσεων /etc/freebsd-update.conf, ώστε
να έχουν καλύτερο έλεγχο της διαδικασίας. Οι επιλογές είναι γενικά
αρκετά καλά τεκμηριωμένες, αλλά οι παρακάτω ίσως να χρειάζονται
κάποιες επιπλέον επεξηγήσεις:# Components of the base system which should be kept updated.
Components src world kernelΑυτή η παράμετρος ελέγχει ποια τμήματα του &os; θα διατηρούνται
ενημερωμένα. Η προεπιλογή είναι να ενημερώνεται ο πηγαίος κώδικας,
όλο το βασικό σύστημα, και ο πυρήνας. Τα τμήματα είναι τα ίδια
που διατίθενται και κατά την εγκατάσταση, για παράδειγμα αν βάλετε
την επιλογή world/games θα εγκαθίστανται ενημερώσεις
για τα παιχνίδια. Αν βάλετε src/bin θα επιτρέψετε
την ενημέρωση του πηγαίου κώδικα του καταλόγου
src/bin.Η καλύτερη επιλογή είναι να αφήσετε εδώ την προεπιλεγμένη τιμή,
καθώς αν την αλλάξετε ώστε να περιέχει συγκεκριμένα μόνο τμήματα,
θα αναγκαστείτε να αναφέρετε χωριστά μέσα στο αρχείο ρυθμίσεων κάθε
τμήμα που θέλετε να ενημερώνεται. Αυτό ίσως έχει καταστροφικά
αποτελέσματα, καθώς είναι πιθανό ο πηγαίος κώδικας και τα εκτελέσιμα
προγράμματα να μην είναι πλέον σε συγχρονισμό μεταξύ τους.# Paths which start with anything matching an entry in an IgnorePaths
# statement will be ignored.
IgnorePathsΠροσθέστε διαδρομές σε καταλόγους, όπως
/bin ή
/sbin για να αφήσετε
απείραχτους τους συγκεκριμένους καταλόγους κατά την διαδικασία
ενημέρωσης. Η επιλογή αυτή μπορεί να χρησιμοποιηθεί για να αποτρέψει
το freebsd-update να γράψει πάνω σε πιθανόν
δικές σας τοπικές αλλαγές.# Paths which start with anything matching an entry in an UpdateIfUnmodified
# statement will only be updated if the contents of the file have not been
# modified by the user (unless changes are merged; see below).
UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profileΗ επιλογή αυτή θα ενημερώσει τα αρχεία ρυθμίσεων στους καταλόγους
που καθορίζονται, μόνο αν αυτά δεν έχουν μεταβληθεί από το χρήστη.
Αν υπάρχουν τοπικές αλλαγές, δεν θα γίνει ενημέρωση. Υπάρχει μια
ακόμα επιλογή, η KeepModifiedMetadata, η οποία
οδηγεί το freebsd-update να αποθηκεύσει τις αλλαγές
μεταξύ των δύο εκδόσεων κατά τη διάρκεια της συγχώνευσης
(merge).# When upgrading to a new &os; release, files which match MergeChanges
# will have any local changes merged into the version from the new release.
MergeChanges /etc/ /var/named/etc/Πρόκειται για τη λίστα των καταλόγων που περιέχουν αρχεία
ρυθμίσεων, και στα οποία το freebsd-update θα
επιχειρεί την διαδικασία συγχώνευσης αλλαγών. Η διαδικασία
συγχώνευσης γίνεται με μια σειρά από patches τύπου &man.diff.1;
παρόμοια με το &man.mergemaster.8; αλλά με λιγότερες επιλογές. Οι
συγχωνεύσεις είτε γίνονται δεκτές, είτε προκαλούν το άνοιγμα κάποιου
συντάκτη κειμένου, διαφορετικά η εκτέλεση του
freebsd-update ακυρώνεται. Αν δεν είστε
σίγουρος, κρατήστε αντίγραφο ασφαλείας του καταλόγου
/etc και απλώς δεχθείτε τις
αλλαγές. Δείτε το για
περισσότερες πληροφορίες σχετικά με την εντολή
mergemaster.# Directory in which to store downloaded updates and temporary
# files used by &os; Update.
# WorkDir /var/db/freebsd-updateΣτον κατάλογο αυτό φυλάσσονται όλα τα patches και τα προσωρινά
αρχεία. Σε περιπτώσεις όπου ο χρήστης εκτελεί αναβάθμιση σε μια
νεότερη έκδοση του &os;, θα πρέπει να διαθέτει τουλάχιστον ένα
gigabyte ελεύθερου χώρου.# When upgrading between releases, should the list of Components be
# read strictly (StrictComponents yes) or merely as a list of components
# which *might* be installed of which &os; Update should figure out
# which actually are installed and upgrade those (StrictComponents no)?
# StrictComponents noΑν θέσετε την παραπάνω επιλογή στο yes,
το freebsd-update θα υποθέσει ότι η λίστα
Components είναι πλήρης και δεν θα επιχειρήσει
να προχωρήσει σε αλλαγές εκτός λίστας. Ουσιαστικά, το
freebsd-update θα προσπαθήσει να ενημερώσει κάθε
αρχείο που ανήκει στη λίστα Components.Patches Σχετικά με την ΑσφάλειαΤα patches που σχετίζονται με την ασφάλεια, αποθηκεύονται σε
ένα απομακρυσμένο μηχάνημα και μπορούν να μεταφορτωθούν και να
εγκατασταθούν με την ακόλουθη εντολή:&prompt.root; freebsd-update fetch
&prompt.root; freebsd-update installΑν με την παραπάνω εντολή εγκατασταθούν ενημερώσεις στον πυρήνα,
θα χρειαστεί να επανεκκινήσετε το σύστημα. Αν όλα πάνε καλά, το
σύστημα θα είναι πλέον ενημερωμένο και μπορείτε να εκτελείτε το
freebsd-update αυτόματα με την βοήθεια του
&man.cron.8;. Μια απλή καταχώριση στο αρχείο
/etc/crontab είναι επαρκής για αυτό
το σκοπό:@daily root freebsd-update cronΗ παραπάνω καταχώριση ορίζει ότι το
freebsd-update θα εκτελείται μια φορά την ημέρα.
Με τον τρόπο αυτό, και όταν η εκτέλεση είναι μέσω της επιλογής
, το freebsd-update απλώς
θα ελέγχει για ενημερώσεις. Αν υπάρχουν, η εφαρμογή θα τις
κατεβάζει, αλλά δεν θα τις εγκαθιστά. Θα στέλνει όμως ένα email
στο χρήστη root ώστε να τις εγκαταστήσει
χειροκίνητα.Αν οτιδήποτε πάει στραβά, το freebsd-update
έχει την ικανότητα να επιστρέφει στην προηγούμενη σταθερή κατάσταση,
αναιρώντας το τελευταίο σετ αλλαγών με την ακόλουθη εντολή:&prompt.root; freebsd-update rollbackΜε την ολοκλήρωση της εντολής, θα πρέπει να επανεκκινήσετε το
σύστημα αν έχουν γίνει αλλαγές στον πυρήνα ή σε κάποιο από τα
αρθρώματα του. Αυτό θα επιτρέψει στο &os; να φορτώσει τα νέα
εκτελέσιμα στη μνήμη.Το βοηθητικό πρόγραμμα freebsd-update μπορεί
να ενημερώσει αυτόματα μόνο τον πυρήνα GENERIC.
Αν χρησιμοποιείται προσαρμοσμένος πυρήνας, θα πρέπει να
μεταγλωττιστεί ξανά, όταν το freebsd-update
τελειώσει με την εγκατάσταση των υπόλοιπων ενημερώσεων. Ωστόσο, το
freebsd-update θα ανιχνεύσει και θα ενημερώσει
τον πυρήνα GENERIC στο /boot/GENERIC (αν υπάρχει), ακόμα
και αν δεν είναι ο ενεργός πυρήνας του συστήματος (αυτός που
εκτελείται τη συγκεκριμένη στιγμή).Είναι γενικά καλή ιδέα να έχετε πάντα ένα αντίγραφο του
πυρήνα GENERIC στον κατάλογο /boot/GENERIC. Θα σας βοηθήσει στην
διάγνωση διάφορων προβλημάτων, καθώς και στην αναβάθμιση σε επόμενες
εκδόσεις του &os;, μέσω του freebsd-update.
Η διαδικασία αυτή περιγράφεται στο
.Αν δεν έχουν γίνει αλλαγές στις προεπιλεγμένες ρυθμίσεις στο
αρχείο /etc/freebsd-update.conf, το
freebsd-update θα εγκαταστήσει τα ανανεωμένα αρχεία
πηγαίου κώδικα μαζί με τις υπόλοιπες ενημερώσεις. Μπορείτε έπειτα να
προχωρήσετε στη μεταγλώττιση και εγκατάσταση νέου προσαρμοσμένου
πυρήνα, με το συνήθη τρόπο.Οι ενημερώσεις που διανέμονται μέσω του
freebsd-update δεν περιλαμβάνουν πάντοτε αλλαγές
στον πυρήνα. Δεν είναι απαραίτητο να επαναμεταγλωττίσετε τον
προσαρμοσμένο πυρήνα σας, αν η εκτέλεση του
freebsd-update install δεν επέφερε αλλαγές στα
αρχεία πηγαίου κώδικα του πυρήνα. Ωστόσο, το
freebsd-update ενημερώνει πάντοτε το αρχείο
/usr/src/sys/conf/newvers.sh. Το αρχείο αυτό
περιέχει το τρέχον επίπεδο ενημερώσεων (patch level) το οποίο και
αναφέρεται ως αριθμός -p από εντολές όπως η
uname -r. Μεταγλωττίζοντας ξανά τον
προσαρμοσμένο πυρήνα σας (ακόμα και αν δεν υπάρχουν άλλες αλλαγές)
θα δώσετε τη δυνατότητα στην &man.uname.1; να αναφέρει με ακρίβεια
το επίπεδο ενημερώσεων. Αυτό μπορεί να είναι ιδιαίτερα χρήσιμο
όταν συντηρείτε πολλαπλά συστήματα, καθώς σας επιτρέπει να
αξιολογήσετε με μια ματιά τι ενημερώσεις έχουν εγκατασταθεί στο
καθένα.Αναβαθμίσεις σε Μικρές και Μεγάλες ΕκδόσειςΗ διαδικασία αυτή θα απομακρύνει τα παλιά αρχεία αντικειμενικού
κώδικα (object files) καθώς και τις παλιές βιβλιοθήκες, κάνοντας
τις περισσότερες εφαρμογές τρίτων κατασκευαστών να μη λειτουργούν.
Σας συνιστούμε είτε να απεγκαταστήσετε όλα τα εγκατεστημένα ports και
να τα εγκαταστήσετε ξανά, ή να τα αναβαθμίσετε αργότερα,
χρησιμοποιώντας το βοηθητικό πρόγραμμα
ports-mgmt/portupgrade.
Οι περισσότεροι χρήστες θα θέλουν να κάνουν μια δοκιμαστική
μεταγλώττιση χρησιμοποιώντας την ακόλουθη εντολή:&prompt.root; portupgrade -afΜε αυτό τον τρόπο εξασφαλίζεται ότι τα πάντα θα επανεγκατασταθούν
σωστά. Σημειώστε ότι αν θέσετε την μεταβλητή περιβάλλοντος
BATCH στην τιμή yes, όλες οι
πιθανές ερωτήσεις που θα εμφανιστούν κατά τη διαδικασία, θα
απαντηθούν αυτόματα με yes. Έτσι δεν υπάρχει πλέον
ανάγκη για παρέμβαση του χρήστη κατά τη διάρκεια της διαδικασίας
μεταγλώττισης.Αν χρησιμοποιείται προσαρμοσμένος πυρήνας, η διαδικασία
αναβάθμισης είναι ελαφρά πιο πολύπλοκη. Θα χρειαστείτε ένα αντίγραφο
του πυρήνα GENERIC στον κατάλογο /boot/GENERIC. Αν δεν υπάρχει ήδη ο
πυρήνας GENERIC στο σύστημα σας, μπορείτε να τον
ανακτήσετε χρησιμοποιώντας μια από τις παρακάτω μεθόδους:Αν έχετε μεταγλωττίσει προσαρμοσμένο πυρήνα μόνο μια φορά, ο
πυρήνας στον κατάλογο /boot/kernel.old είναι στην
πραγματικότητα ο GENERIC. Απλώς μετονομάστε
τον κατάλογο σε /boot/GENERIC.Αν έχετε φυσική πρόσβαση στο μηχάνημα, μπορείτε να
εγκαταστήσετε ένα αντίγραφο του πυρήνα GENERIC
από το CD-ROM της εγκατάστασης. Τοποθετήστε το CD-ROM στον οδηγό
και χρησιμοποιήστε τις παρακάτω εντολές:&prompt.root; mount /cdrom
&prompt.root; cd /cdrom/X.Y-RELEASE/kernels
&prompt.root; ./install.sh GENERICΑντικαταστήστε το X.Y-RELEASE
με τους πραγματικούς αριθμούς της έκδοσης που χρησιμοποιείτε.
Ο πυρήνας GENERIC θα εγκατασταθεί από
προεπιλογή στον κατάλογο /boot/GENERIC.Αν δεν έχετε κάποια από τις παραπάνω επιλογές, μπορείτε να
μεταγλωττίσετε και να εγκαταστήσετε τον πυρήνα
GENERIC μέσω του πηγαίου κώδικα:&prompt.root; cd /usr/src/
&prompt.root; env DESTDIR=/boot/GENERIC make kernel
&prompt.root; mv /boot/GENERIC/boot/kernel/* /boot/GENERIC
&prompt.root; rm -rf /boot/GENERIC/bootΓια να αναγνωριστεί αυτός ο πυρήνας ως
GENERIC από το
freebsd-update, δεν θα πρέπει να έχουν γίνει
αλλαγές στο αρχείο ρυθμίσεων του GENERIC.
Συνίσταται επίσης η μεταγλώττιση να γίνει χωρίς άλλες
εξειδικευμένες ρυθμίσεις (κατά προτίμηση με κενό το
/etc/make.conf).Δεν χρειάζεται τη δεδομένη στιγμή να επανεκκινήσετε με τον πυρήνα
GENERIC.Είναι δυνατές οι αναβαθμίσεις τόσο σε μικρές όσο και σε μεγάλες
εκδόσεις, δίνοντας στην εντολή freebsd-update τον
επιθυμητό αριθμό έκδοσης. Για παράδειγμα, η ακόλουθη εντολή θα
αναβαθμίσει το σύστημα σε &os; 6.4:&prompt.root; freebsd-update -r 6.4-RELEASE upgradeΜετά τη λήψη της εντολής, το
freebsd-update θα αξιολογήσει την κατάσταση του
συστήματος και του αρχείου ρυθμίσεων του, σε μια απόπειρα να μαζέψει
τις απαραίτητες πληροφορίες για την αναβάθμιση του συστήματος.
Οι πληροφορίες που ανιχνεύθηκαν θα εμφανιστούν στην οθόνη με τη μορφή
μιας λίστας εγκατεστημένων προγραμμάτων. Για παράδειγμα:Looking up update.FreeBSD.org mirrors... 1 mirrors found.
Fetching metadata signature for 6.3-RELEASE from update1.FreeBSD.org... done.
Fetching metadata index... done.
Inspecting system... done.
The following components of FreeBSD seem to be installed:
kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
world/base world/info world/lib32 world/manpages
The following components of FreeBSD do not seem to be installed:
kernel/generic world/catpages world/dict world/doc world/games
world/proflibs
Does this look reasonable (y/n)? yΣτο σημείο αυτό, το freebsd-update θα
κατεβάσει όλα τα αρχεία που απαιτούνται για την αναβάθμιση. Σε
μερικές περιπτώσεις, ο χρήστης θα κληθεί να απαντήσει σε ερωτήσεις
σχετικά με το τι θα εγκατασταθεί ή πως πρέπει να προχωρήσει η
διαδικασία.Όταν χρησιμοποιείται προσαρμοσμένος πυρήνας, το παραπάνω βήμα
θα προκαλέσει την εμφάνιση της παρακάτω προειδοποίησης:WARNING: This system is running a "MYKERNEL" kernel, which is not a
kernel configuration distributed as part of FreeBSD 6.3-RELEASE.
This kernel will not be updated: you MUST update the kernel manually
before running "/usr/sbin/freebsd-update install"Μπορείτε να αγνοήσετε αυτή την προειδοποίηση. Θα χρησιμοποιήσουμε
τον ενημερωμένο πυρήνα GENERIC ως ενδιάμεσο βήμα
στη διαδικασία αναβάθμισης.Αφού μεταφορτωθούν όλα τα patches στο τοπικό σύστημα, θα γίνει
και η εφαρμογή τους. Η διαδικασία αυτή ίσως πάρει λίγο χρόνο,
ανάλογα με την ταχύτητα και το φορτίο του μηχανήματος. Έπειτα θα
γίνει η συγχώνευση των αρχείων ρυθμίσεων. Αυτό το μέρος της
διαδικασίας απαιτεί παρέμβαση του χρήστη, καθώς σε κάποια αρχεία θα
χρειαστεί η συγχώνευση να γίνει χειροκίνητα με τη βοήθεια κάποιου
συντάκτη κειμένου. Ο χρήστης θα ενημερώνεται για το αποτέλεσμα κάθε
επιτυχημένης συγχώνευσης καθώς εξελίσσεται η διαδικασία. Σε
περίπτωση αποτυχημένης συγχώνευσης (ή αγνόησης της), η διαδικασία
αναβάθμισης θα διακοπεί. Ενδεχομένως να θέλετε να κρατήσετε αντίγραφο
ασφαλείας του καταλόγου /etc
και να συγχωνεύσετε αργότερα (χειροκίνητα) κάποια σημαντικά αρχεία,
όπως το master.passwd ή το
group.Στο σημείο αυτό δεν έχει γίνει ακόμα καμιά αλλαγή στο σύστημα,
καθώς όλη η διαδικασία της αναβάθμισης και συγχώνευσης γίνεται σε
διαφορετικό κατάλογο. Όταν εφαρμοστούν επιτυχώς όλα τα patches
και ολοκληρωθεί με επιτυχία η διαδικασία της συγχώνευσης όλων των
αρχείων ρύθμισης, ο χρήστης θα πρέπει να επιβεβαιώσει την τελική
εγκατάσταση.Με το τέλος αυτής τη διαδικασίας, η αναβάθμιση μπορεί να
οριστικοποιηθεί στο δίσκο, με τη χρήση της ακόλουθης εντολής:&prompt.root; freebsd-update installΣτην πρώτη φάση, θα αλλαχθεί ο πυρήνας και τα σχετικά αρθρώματα.
Στο σημείο αυτό, θα πρέπει να γίνει επανεκκίνηση του μηχανήματος.
Σε μηχάνημα με προσαρμοσμένο πυρήνα, χρησιμοποιήστε την εντολή
&man.nextboot.8; ώστε να θέσετε τον πυρήνα για την επόμενη εκκίνηση
στον /boot/GENERIC (ο οποίος
έχει ήδη αναβαθμιστεί):&prompt.root; nextboot -k GENERICΠριν επανεκκινήσετε με τον πυρήνα GENERIC,
βεβαιωθείτε ότι περιέχει όλα τα προγράμματα οδήγησης που απαιτούνται
για την επιτυχή εκκίνηση του συστήματος σας (και τη λειτουργία του
δικτύου, αν αναβαθμίζετε κάποιο απομακρυσμένο μηχάνημα).
Ειδικότερα, αν ο προηγούμενος προσαρμοσμένος πυρήνας περιείχε
λειτουργίες που συνήθως παρέχονται από αρθρώματα (modules),
βεβαιωθείτε ότι φροντίσατε να φορτωθούν προσωρινά στον πυρήνα
GENERIC χρησιμοποιώντας τις δυνατότητες του
αρχείου /boot/loader.conf. Ίσως επίσης να
θέλετε να απενεργοποιήσετε υπηρεσίες, προσαρτήσεις δίσκων και
δικτύου κ.λ.π. που δεν είναι απαραίτητες, μέχρι την ολοκλήρωση της
διαδικασίας αναβάθμισης.Μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή για να
επανεκκινήσετε το μηχάνημα με τον νέο πυρήνα:&prompt.root; shutdown -r nowΜόλις το σύστημα επανέλθει σε λειτουργία, θα πρέπει να εκτελέσετε
ξανά το freebsd-update. Η προηγούμενη λειτουργία
έχει αποθηκευθεί, και έτσι το freebsd-update δεν θα
ξεκινήσει από την αρχή, αλλά θα απομακρύνει όλες τις παλιές
κοινόχρηστες βιβλιοθήκες και τα αρχεία αντικειμενικού κώδικα. Για να
συνεχίσετε σε αυτό το στάδιο, δώστε την ακόλουθη εντολή:&prompt.root; freebsd-update installΑνάλογα με το αν υπήρξαν αλλαγές στους αριθμούς εκδόσεων των
βιβλιοθηκών, ίσως να υπάρχουν μόνο δύο φάσεις εγκατάστασης αντί για
τρεις.Όλο το λογισμικό τρίτου κατασκευαστή θα πρέπει τώρα να
μεταγλωττιστεί και να επανεγκατασταθεί από την αρχή. Αυτό απαιτείται
καθώς το εγκατεστημένο λογισμικό ίσως εξαρτάται από βιβλιοθήκες οι
οποίες αφαιρέθηκαν κατά τη διαδικασία της αναβάθμισης. Μπορείτε να
χρησιμοποιήσετε την εντολή
ports-mgmt/portupgrade
για να αυτοματοποιήσετε αυτή τη διαδικασία. Για να ξεκινήσετε, δώστε
τις παρακάτω εντολές:&prompt.root; portupgrade -f ruby
&prompt.root; rm /var/db/pkg/pkgdb.db
&prompt.root; portupgrade -f ruby18-bdb
&prompt.root; rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db
&prompt.root; portupgrade -afΜόλις ολοκληρωθεί το παραπάνω, ολοκληρώστε τη διαδικασία
αναβάθμισης με μια τελευταία κλήση της εντολής
freebsd-update. Δώστε την παρακάτω εντολή για να
ολοκληρώσετε οτιδήποτε έχει απομείνει στη διαδικασία
αναβάθμισης:&prompt.root; freebsd-update installΑν χρησιμοποιούσατε προσωρινά τον πυρήνα
GENERIC, αυτή είναι η κατάλληλη στιγμή για να
μεταγλωττίσετε και να εγκαταστήσετε νέο προσαρμοσμένο πυρήνα, με το
συνήθη τρόπο.Επανεκκινήστε το μηχάνημα σας στην νέα έκδοση του &os;.
Η διαδικασία έχει ολοκληρωθεί.Σύγκριση Κατάστασης του ΣυστήματοςΤο βοηθητικό πρόγραμμα freebsd-update μπορεί να
χρησιμοποιηθεί για να ελέγξετε την κατάσταση της εγκατεστημένης
έκδοσης του &os; σε σχέση με μια γνωστή και σωστή εγκατάσταση.
Η επιλογή αυτή συγκρίνει και αξιολογεί την τρέχουσα έκδοση των
προγραμμάτων συστήματος, των βιβλιοθηκών και των αρχείων ρύθμισης.
Για να ξεκινήσετε τη σύγκριση, δώστε την ακόλουθη εντολή:&prompt.root; freebsd-update IDS >> outfile.idsΑν και το όνομα της εντολής είναι IDS, δεν
θα πρέπει σε καμιά περίπτωση να θεωρηθεί υποκατάστατο ενός
συστήματος ανίχνευσης εισβολέα (intrusion detection system) όπως
είναι για παράδειγμα το
security/snort.
Καθώς το freebsd-update αποθηκεύει τα δεδομένα
του στο δίσκο, υπάρχει πάντα η πιθανότητα να έχει γίνει αλλοίωση
τους. Αν και η πιθανότητα αυτή μπορεί να μειωθεί χρησιμοποιώντας
τη ρύθμιση kern.securelevel και αποθηκεύοντας
τα δεδομένα της εντολής freebsd-update σε ένα
σύστημα αρχείων μόνο για ανάγνωση, μια ακόμα καλύτερη λύση θα ήταν
να συγκρίνετε το σύστημα με κάποιο δίσκο που θεωρείτε σίγουρα
ασφαλή. Μπορείτε να χρησιμοποιήσετε ένα δίσκο
DVD ή ένα εξωτερικό δίσκο USB
που φυλάσσετε σε ασφαλή τοποθεσία.Θα γίνει τώρα μια επιθεώρηση του συστήματος και θα εκτυπωθεί
μια λίστα από αρχεία και τιμές hash του τύπου &man.sha256.1;,
τόσο για το εγκατεστημένο όσο και για το γνωστό σύστημα. Επειδή
πρόκειται για μεγάλη λίστα, την ανακατευθύνουμε στο αρχείο
outfile.ids. Στην οθόνη το κείμενο θα κυλούσε
πολύ γρήγορα, και σύντομα θα γέμιζε την προσωρινή μνήμη απεικόνισης
της κονσόλας.Οι γραμμές αυτές έχουν γενικά μεγάλο μήκος, αλλά είναι εύκολο
να επεξεργαστούμε την έξοδο. Για παράδειγμα, για να δείτε μια λίστα
όλων των αρχείων που διαφέρουν από αυτά της επίσημης έκδοσης, δώστε
την ακόλουθη εντολή:&prompt.root; cat outfile.ids | awk '{ print $1 }' | more
/etc/master.passwd
/etc/motd
/etc/passwd
/etc/pf.confΤα παραπάνω είναι μόνο ένα μέρος της εξόδου, υπάρχουν ακόμα
πολλά διαφορετικά αρχεία. Κάποια από αυτά τα αρχεία είναι φυσιολογικό
να έχουν τροποποιηθεί. Για παράδειγμα, το
/etc/passwd έχει τροποποιηθεί, καθώς έχουν
προστεθεί χρήστες στο σύστημα. Σε μερικές περιπτώσεις, μπορεί να
υπάρχουν και άλλα αρχεία, όπως π.χ. αρθρώματα πυρήνα τα οποία
διαφέρουν αφού έχουν ενημερωθεί μέσω της
freebsd-update. Για να εξαιρέσετε συγκεκριμένα
αρχεία ή καταλόγους, προσθέστε τα στην επιλογή
IDSIgnorePaths στο αρχείο ρυθμίσεων
/etc/freebsd-update.conf.Εκτός από την χρήση που αναφέραμε προηγουμένως, το σύστημα αυτό
μπορεί να χρησιμοποιηθεί και ως τμήμα μιας λεπτομερούς διαδικασίας
αναβάθμισης.TomRhodesΓράφηκε από τον ColinPercivalΒασισμένο σε σημειώσεις που παρείχε ο Portsnap: Ένα Εργαλείο Ενημέρωσης της Συλλογής των PortsUpdating and UpgradingPortsnapUpdating and UpgradingΤο βασικό σύστημα του &os; περιλαμβάνει επίσης ένα βοηθητικό
πρόγραμμα για την ενημέρωση της Συλλογής των Ports. Πρόκειται για το
&man.portsnap.8;. Όταν το εκτελέσετε, θα συνδεθεί σε ένα απομακρυσμένο
διακομιστή, θα επαληθεύσει το κλειδί του πηγαίου κώδικα, και θα
κατεβάσει ένα νέο αντίγραφο της Συλλογής των Ports. Το κλειδί
χρησιμοποιείται για να επαληθεύσει την ακεραιότητα όλων των αρχείων
που μεταφορτώνονται, εξασφαλίζοντας ότι δεν έχουν αλλοιωθεί κατά
την μεταφορά. Για να κατεβάσετε τα τελευταία αρχεία της Συλλογής των
Ports, εκτελέστε την ακόλουθη εντολή:&prompt.root; portsnap fetch
Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
Fetching snapshot tag from portsnap1.FreeBSD.org... done.
Fetching snapshot metadata... done.
Updating from Wed Aug 6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008.
Fetching 3 metadata patches.. done.
Applying metadata patches... done.
Fetching 3 metadata files... done.
Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done.
Applying patches... done.
Fetching 133 new ports or files... done.Το παραπάνω παράδειγμα δείχνει ότι το &man.portsnap.8;
βρήκε και επαλήθευσε αρκετά patches τα οποία πρέπει να εφαρμοστούν
στο υπάρχον δέντρο των ports. Αυτό δείχνει επίσης ότι το πρόγραμμα
έχει εκτελεστεί κατά το παρελθόν. Αν αυτή ήταν η πρώτη φορά που
εκτελούνταν, θα γίνονταν απλώς κατέβασμα της συλλογής.Όταν το &man.portsnap.8; εκτελέσει επιτυχώς τη λειτουργία
fetch, η Συλλογή των Ports και τα
αντίστοιχα patches έχουν αποθηκευθεί στο τοπικό σύστημα και έχει γίνει
η επαλήθευση τους. Την πρώτη φορά που θα εκτελέσετε το
portsnap, χρησιμοποιήστε το
extract για να εγκαταστήσετε τα ενημερωμένα
αρχεία:&prompt.root; portsnap extract
/usr/ports/.cvsignore
/usr/ports/CHANGES
/usr/ports/COPYRIGHT
/usr/ports/GIDs
/usr/ports/KNOBS
/usr/ports/LEGAL
/usr/ports/MOVED
/usr/ports/Makefile
/usr/ports/Mk/bsd.apache.mk
/usr/ports/Mk/bsd.autotools.mk
/usr/ports/Mk/bsd.cmake.mk
...Σε κάθε εκτέλεση μετά την πρώτη φορά, χρησιμοποιήστε το
update μετά την εκτέλεση της
portsnap fetch:&prompt.root; portsnap updateΗ διαδικασία έχει πλέον ολοκληρωθεί, και μπορείτε να εγκαταστήσετε
ή να αναβαθμίσετε εφαρμογές χρησιμοποιώντας την ενημερωμένη Συλλογή των
Ports.Μπορείτε να εκτελέσετε τις διαδικασίες fetch και
extract ή update διαδοχικά, όπως
φαίνεται στο παρακάτω παράδειγμα:&prompt.root; portsnap fetch updateΕνημερώνοντας την ΤεκμηρίωσηUpdating and UpgradingDocumentationUpdating and UpgradingΕκτός από το βασικό σύστημα και την Συλλογή των Ports, η τεκμηρίωση
αποτελεί επίσης βασικό τμήμα ενός συστήματος &os;. Αν και πάντα
μπορείτε να βρείτε την πιο πρόσφατη τεκμηρίωση στην δικτυακή τοποθεσία του &os;,
ορισμένοι χρήστες ίσως έχουν αργή ή μη σταθερή σύνδεση με το Διαδίκτυο.
Ευτυχώς υπάρχουν αρκετοί τρόποι για να ενημερώσετε την τεκμηρίωση η
οποία παρέχεται με κάθε επίσημη έκδοση, διατηρώντας το δικό σας τοπικό
αντίγραφο της πιο πρόσφατης τεκμηρίωσης του &os;.Χρησιμοποιώντας το CVSup για την Ενημέρωση της
ΤεκμηρίωσηςΟ πηγαίος κώδικας και το εγκατεστημένο αντίγραφο της τεκμηρίωσης
του &os;, μπορούν να ενημερωθούν με την βοήθεια του
CVSup, χρησιμοποιώντας ένα μηχανισμό
παρόμοιο με αυτόν που χρησιμοποιείται στο βασικό σύστημα (δείτε το
). Η ενότητα αυτή περιγράφει:Πως να εγκαταστήσετε τα εργαλεία που απαιτούνται για την
τεκμηρίωση, με τα οποία μπορείτε να δημιουργήσετε την τεκμηρίωση
του &os; ξεκινώντας από τον πηγαίο της κώδικα.Πως να κατεβάσετε ένα αντίγραφο του πηγαίου κώδικα της
τεκμηρίωσης στον κατάλογο /usr/doc χρησιμοποιώντας το
CVSup.Πως να αναδημιουργήσετε την τεκμηρίωση του &os; από τον
πηγαίο της κώδικα, και να την εγκαταστήσετε στον κατάλογο
/usr/share/doc/.Εγκαθιστώντας το CVSup και τη Σειρά Εργαλείων της
ΤεκμηρίωσηςΗ αναδημιουργία της τεκμηρίωσης του &os; από τον πηγαίο κώδικα,
απαιτεί μια σχετικά μεγάλη συλλογή εργαλείων. Τα εργαλεία αυτά δεν
είναι μέρος του βασικού συστήματος του &os;, καθώς χρειάζονται αρκετό
χώρο στο δίσκο και δεν είναι χρήσιμα σε όλους τους χρήστες.
Είναι χρήσιμα μόνο στους χρήστες που ασχολούνται με τη συγγραφή νέας
τεκμηρίωσης για το &os;, ή που ενημερώνουν συχνά την τοπική τους
τεκμηρίωση μέσω του πηγαίου κώδικα.Όλα τα απαιτούμενα εργαλεία διατίθενται μέσω της Συλλογής των
Ports. Το textproc/docproj είναι το κύριο port το
οποίο έχει αναπτυχθεί από την Ομάδα Τεκμηρίωσης του &os;, για να
βοηθήσει στην αρχική εγκατάσταση και τις μελλοντικές αναβαθμίσεις
αυτών των εργαλείων.Αν δεν απαιτείται η δημιουργία τεκμηρίωσης σε μορφές
&postscript; ή PDF, μπορείτε να εγκαταστήσετε το port textproc/docproj-nojadetex. Αυτή η
έκδοση των εργαλείων περιέχει τα πάντα εκτός από την μηχανή
στοιχειοθεσίας teTeX.
Το teTeX είναι μια αρκετά μεγάλη συλλογή
εργαλείων, και δεν έχει νόημα να το εγκαταστήσετε αν δεν σας
είναι απαραίτητη η παραγωγή της τεκμηρίωσης σε μορφή
PDF.Για περισσότερες πληροφορίες σχετικά με την εγκατάσταση και χρήση
του CVSup, δείτε την ενότητα Χρησιμοποιώντας το CVSup.Ενημερώνοντας τον Πηγαίο Κώδικα της ΤεκμηρίωσηςΤο βοηθητικό πρόγραμμα CVSup μπορεί να
κατεβάσει ένα καθαρό αντίγραφο του πηγαίου κώδικα της τεκμηρίωσης,
χρησιμοποιώντας το
/usr/share/examples/cvsup/doc-supfile
ως πρότυπο αρχείο ρυθμίσεων. Ο προεπιλεγμένος υπολογιστής ενημερώσεων
στο παραπάνω αρχείο είναι ρυθμισμένος σε πλασματική τιμή. Ωστόσο,
η &man.cvsup.1; δέχεται όνομα υπολογιστή μέσω της γραμμής εντολών,
έτσι μπορείτε να ανακτήσετε τον πηγαίο κώδικα της τεκμηρίωσης μέσω
κάποιου εξυπηρετητή CVSup γράφοντας:&prompt.root; cvsup -h cvsup.FreeBSD.org -g -L 2 /usr/share/examples/cvsup/doc-supfileΑλλάξτε το cvsup.FreeBSD.org με τον
κοντινότερο σας εξυπηρετητή CVSup. Δείτε
το για μια πλήρη λίστα των mirror
sites.Το αρχικό κατέβασμα του πηγαίου κώδικα της τεκμηρίωσης μπορεί
να διαρκέσει αρκετή ώρα. Αφήστε το να εκτελείται μέχρι να
ολοκληρωθεί.Μπορείτε να συνεχίσετε να ενημερώνετε τον πηγαίο κώδικα της
τεκμηρίωσης χρησιμοποιώντας την ίδια εντολή. Το βοηθητικό πρόγραμμα
CVSup κατεβάζει και αντιγράφει μόνο τις
ενημερώσεις σε σχέση με την τελευταία εκτέλεση του, έτσι κάθε εκτέλεση
του CVSup μετά την πρώτη θα πρέπει να
είναι αρκετά γρήγορη.Μετά την αρχική ανάκτηση του πηγαίου κώδικα, ένας εναλλακτικός
τρόπος ενημέρωσης της τεκμηρίωσης είναι μέσω του αρχείου
Makefile στον κατάλογο /usr/doc. Θέτοντας τις μεταβλητές
SUP_UPDATE, SUPHOST και
DOCSUPFILE στο αρχείο
/etc/make.conf, μπορείτε να εκτελέσετε:&prompt.root; cd /usr/doc
&prompt.root; make updateΤυπικές τιμές για τις παραπάνω επιλογές του &man.make.1; στο
αρχείο /etc/make.conf είναι:SUP_UPDATE= yes
SUPHOST?= cvsup.freebsd.org
DOCSUPFILE?= /usr/share/examples/cvsup/doc-supfileΑν θέσετε τις τιμές των SUPHOST και
DOCSUPFILE σε ?=, θα μπορείτε
να ορίσετε άλλες τιμές για αυτές στη γραμμή εντολής του make.
Αυτός είναι και ο συνιστώμενος τρόπος να προσθέσετε επιλογές στο
make.conf, ώστε να αποφεύγετε να τροποποιείτε
συνέχεια το αρχείο κάθε φορά που θέλετε να δοκιμάσετε μια νέα τιμή
σε μια επιλογή.Προσαρμογή Επιλογών στον Πηγαίο Κώδικα της ΤεκμηρίωσηςΤο σύστημα ενημέρωσης και μεταγλώττισης της τεκμηρίωσης του &os;,
υποστηρίζει μερικές επιλογές που διευκολύνουν τη διαδικασία
ενημέρωσης ενός μόνο μέρους της τεκμηρίωσης, ή την μεταγλώττιση
της τεκμηρίωσης κάποιων συγκεκριμένων μεταφράσεων. Αν θέλετε οι
επιλογές αυτές να ισχύουν μόνιμα, μπορείτε να τις ορίσετε μέσα στο
αρχείο /etc/make.conf, διαφορετικά μπορείτε να
τις ορίζετε κάθε φορά στη γραμμή εντολής της &man.make.1;.Κάποιες από τις επιλογές αυτές φαίνονται παρακάτω:DOC_LANGΛίστα των γλωσσών και κωδικοποιήσεων που θα μεταγλωττιστούν
και θα εγκατασταθούν, π.χ. en_US.ISO8859-1
αν είναι επιθυμητή μόνο η Αγγλική τεκμηρίωση.FORMATSΗ μορφή (ή μια λίστα από μορφές) στην οποία θα παραχθεί η
μεταγλωττισμένη τεκμηρίωση. Τη δεδομένη στιγμή υποστηρίζονται
οι μορφές html,
html-split, txt,
ps, pdf και
rtf.SUPHOSTΤο όνομα του εξυπηρετητή CVSup
που θα χρησιμοποιηθεί κατά την ενημέρωση.DOCDIRΟ κατάλογος στον οποίο θα εγκατασταθεί η τεκμηρίωση. Από
προεπιλογή είναι ο /usr/share/doc.Για περισσότερες πληροφορίες σχετικά με τις μεταβλητές του make
που υποστηρίζονται ως επιλογές συστήματος στο &os;, δείτε την σελίδα
manual του &man.make.conf.5;.Για περισσότερες πληροφορίες και μεταβλητές make που
υποστηρίζονται από το σύστημα μεταγλώττισης της τεκμηρίωσης του &os;,
παρακαλούμε δείτε τις Οδηγίες της Ομάδας
Τεκμηρίωσης του &os; για Νέους Συγγραφείς.Εγκατάσταση της Τεκμηρίωσης του FreeBSD από τον Πηγαίο
ΚώδικαΈχοντας ενημερώσει το τοπικό αντίγραφο του πηγαίου κώδικα της
τεκμηρίωσης στον κατάλογο /usr/doc, είμαστε έτοιμοι για την
ενημέρωση της εγκατεστημένης τεκμηρίωσης.Μπορείτε να προχωρήσετε σε πλήρη ενημέρωση όλων των γλωσσών που
ορίζονται στην επιλογή DOC_LANG του Makefile,
γράφοντας:&prompt.root; cd /usr/doc
&prompt.root; make install cleanΑν έχετε ρυθμίσει το make.conf με τις σωστές
τιμές για τις επιλογές DOCSUPFILE,
SUPHOST και SUP_UPDATE, μπορείτε
να συνδυάσετε τα βήματα ενημέρωσης και εγκατάστασης του πηγαίου
κώδικα σε ένα, γράφοντας:&prompt.root; cd /usr/doc
&prompt.root; make update install cleanΑν επιθυμείτε την ενημέρωση μιας μόνο συγκεκριμένης γλώσσας,
μπορείτε να καλέσετε την &man.make.1; σε ένα συγκεκριμένο
υποκατάλογο του /usr/doc,
π.χ.:&prompt.root; cd /usr/doc/en_US.ISO8859-1
&prompt.root; make update install cleanΜπορείτε να καθορίσετε τη μορφή της τεκμηρίωσης που θα
εγκατασταθεί, ρυθμίζοντας τη μεταβλητή FORMATS του
make, π.χ.:&prompt.root; cd /usr/doc
&prompt.root; make FORMATS='html html-split' install cleanMarcFonvieilleΒασισμένο σε εργασία του Χρησιμοποιώντας τα Ports της ΤεκμηρίωσηςUpdating and Upgradingdocumentation packageUpdating and UpgradingΣτην προηγούμενη ενότητα, παρουσιάσαμε μια μέθοδο για την
ενημέρωση της τεκμηρίωσης του &os; μέσω του πηγαίου κώδικα.
Ωστόσο, οι ενημερώσεις που βασίζονται στον πηγαίο κώδικα μπορεί να
μην είναι δυνατές ή πρακτικές για κάθε σύστημα &os;. Η διαδικασία
μεταγλώττισης του πηγαίου κώδικα της τεκμηρίωσης απαιτεί σχετικά
μεγάλο αριθμό εργαλείων και βοηθητικών προγραμμάτων, γνωστά ως
εργαλεία τεκμηρίωσης. Απαιτεί επίσης και μια
σχετική εξοικείωση με το CVS και τη
διαδικασία ανάκτησης των αρχείων από αυτό, καθώς και μια σειρά
από βήματα για τη μεταγλώττιση του κώδικα. Στην ενότητα αυτή
περιγράφουμε ένα εναλλακτικό τρόπο ενημέρωσης της τεκμηρίωσης που
εγκαθίσταται μαζί με το &os;. Η μέθοδος αυτή χρησιμοποιεί την
Συλλογή των Ports και δίνει τις παρακάτω δυνατότητες:Κατέβασμα και εγκατάσταση προ-μεταγλωττισμένων στιγμιότυπων
της τεκμηρίωσης, χωρίς να απαιτείται καμιά τοπική μεταγλώττιση
(εξαλείφοντας έτσι και την ανάγκη εγκατάστασης όλων των εργαλείων
τεκμηρίωσης).Κατέβασμα του πηγαίου κώδικα της τεκμηρίωσης και
μεταγλώττιση του μέσω των δυνατοτήτων που παρέχουν τα εργαλεία
των ports (απλοποιώντας με αυτό τον τρόπο τη χειροκίνητη
διαδικασία ανάκτησης και μεταγλώττισης).Αυτές οι δύο μέθοδοι ενημέρωσης της τεκμηρίωσης του &os;
υποστηρίζονται από μια σειρά από
ports τεκμηρίωσης τα οποία ενημερώνονται κάθε
μήνα από την &a.doceng;. Στη Συλλογή των Ports, θα τα βρείτε κάτω
από την κατηγορία docs.Μεταγλώττιση και Εγκατάσταση των Ports της ΤεκμηρίωσηςΤα ports της τεκμηρίωσης χρησιμοποιούν τις δυνατότητες
μεταγλώττισης που παρέχει το σύστημα των ports ώστε να διευκολύνουν
τη διαδικασία δημιουργίας της τεκμηρίωσης. Με αυτό τον τρόπο
η ανάκτηση του πηγαίου κώδικα της τεκμηρίωσης γίνεται αυτόματα με
την εκτέλεση της &man.make.1; και τις κατάλληλες ρυθμίσεις στο
περιβάλλον. Η εγκατάσταση και απεγκατάσταση της τεκμηρίωσης
είναι το ίδιο εύκολη με την εγκατάσταση οποιουδήποτε άλλου port
ή πακέτου στο &os;.Σε περίπτωση τοπικής μεταγλώττισης των ports της τεκμηρίωσης,
απαιτείται και η εγκατάσταση των
εργαλείων τεκμηρίωσης. Τα εργαλεία αυτά
ωστόσο θα εγκατασταθούν αυτόματα.Η οργάνωση των ports τεκμηρίωσης φαίνεται παρακάτω:Υπάρχει ένα κεντρικό master port, το
misc/freebsd-doc-en το
οποίο διαθέτει τα απαραίτητα αρχεία και αποτελεί την
βάση όλων των άλλων ports τεκμηρίωσης. Από προεπιλογή, το
port αυτό μεταγλωττίζει μόνο την Αγγλική τεκμηρίωση.Υπάρχει ένα port όλα σε ένα, το
misc/freebsd-doc-all το
οποίο μεταγλωττίζει και εγκαθιστά όλη την τεκμηρίωση σε όλες τις
διαθέσιμες γλώσσες.Τέλος, υπάρχει ένα εξαρτώμενο port για κάθε
μετάφραση, π.χ.: misc/freebsd-doc-el για την
Ελληνική τεκμηρίωση. Όλα αυτά τα ports εξαρτώνται από το
master port και εγκαθιστούν την τεκμηρίωση που έχει μεταφραστεί
στην αντίστοιχη γλώσσα.Για να εγκαταστήσετε ένα port τεκμηρίωσης από τον πηγαίο κώδικα,
εκτελέστε τις παρακάτω εντολές
(ως root):&prompt.root; cd /usr/ports/misc/freebsd-doc-en
&prompt.root; make install cleanΤο παραπάνω θα μεταγλωττίσει και θα εγκαταστήσει την Αγγλική
τεκμηρίωση σε μορφή τμηματικών HTML κειμένων
(όπως χρησιμοποιούνται και στο ), στον κατάλογο /usr/local/share/doc/freebsd.Συνηθισμένες Επιλογές και Παράμετροι ΜεταγλώττισηςΜπορείτε να χρησιμοποιήσετε αρκετές επιλογές για την
τροποποίηση της προεπιλεγμένης συμπεριφοράς των ports τεκμηρίωσης.
Παρακάτω δείχνουμε μερικές μόνο από αυτές:WITH_HTMLΕπιτρέπει τη δημιουργία της τεκμηρίωσης σε μορφή HTML.
Θα δημιουργηθεί ένα αρχείο HTML για κάθε κείμενο.
Η μορφοποιημένη τεκμηρίωση θα αποθηκευθεί, ανάλογα με την
περίπτωση, σε ένα αρχείο με όνομα
article.html ή
book.html. Θα γίνει επίσης και
αποθήκευση των αντίστοιχων εικόνων.WITH_PDFΕπιτρέπει τη δημιουργία εγγράφου σε μορφή &adobe;
Portable Document Format (PDF) για χρήση με τον &adobe;
&acrobat.reader;, το Ghostscript,
ή άλλα προγράμματα προβολής εγγράφων PDF. Η μορφοποιημένη
τεκμηρίωση θα αποθηκευθεί, ανάλογα με την περίπτωση, σε ένα
αρχείο article.pdf ή
book.pdf.DOCBASEΠρόκειται για την θέση στην οποία θα εγκατασταθεί η
τεκμηρίωση. Από προεπιλογή, είναι ο κατάλογος /usr/local/share/doc/freebsd.Παρατηρήστε ότι ο προεπιλεγμένος κατάλογος διαφέρει
από αυτόν που χρησιμοποιείται στη μέθοδο
CVSup. Αυτό συμβαίνει επειδή
γίνεται εγκατάσταση port, τα οποία από προεπιλογή
χρησιμοποιούν τον κατάλογο /usr/local. Μπορείτε
να παρακάμψετε αυτή την προεπιλογή, αλλάζοντας την τιμή
της μεταβλητής PREFIX.Παρακάτω θα βρείτε ένα σύντομο παράδειγμα σχετικό με τη χρήση
των μεταβλητών για την εγκατάσταση της Αγγλικής τεκμηρίωσης σε
μορφή PDF:&prompt.root; cd /usr/ports/misc/freebsd-doc-en
&prompt.root; make -DWITH_PDF DOCBASE=share/doc/freebsd/en install cleanΧρήση Έτοιμων Πακέτων ΤεκμηρίωσηςΗ μεταγλώττιση των ports τεκμηρίωσης από τον πηγαίο κώδικα
(όπως είδαμε στην προηγούμενη ενότητα), απαιτεί τοπική εγκατάσταση
των αντίστοιχων εργαλείων τεκμηρίωσης και επάρκεια χώρου στο δίσκο
για την διαδικασία. Όταν δεν διατίθενται οι απαραίτητοι πόροι για
την εγκατάσταση των εργαλείων τεκμηρίωσης (ή επειδή η μεταγλώττιση
από τα ports θα χρησιμοποιούσε πολύ χώρο), η εγκατάσταση μπορεί
να γίνει μέσω έτοιμων πακέτων τεκμηρίωσης.H &a.doceng; προετοιμάζει μηνιαία στιγμιότυπα πακέτων
τεκμηρίωσης του &os;. Τα έτοιμα αυτά πακέτα μπορούν να
χρησιμοποιηθούν με την βοήθεια οποιουδήποτε εργαλείου διαχείρισης
πακέτων που διατίθεται με το &os;, όπως για παράδειγμα τα
&man.pkg.add.1;, &man.pkg.delete.1; κ.λ.π.Όταν χρησιμοποιείτε έτοιμα πακέτα, η εγκατάσταση της
τεκμηρίωσης της επιλεγμένης γλώσσας θα γίνεται σε όλες τις
διαθέσιμες μορφές.Για παράδειγμα, η παρακάτω εντολή θα εγκαταστήσει την τελευταία
έκδοση του έτοιμου πακέτου της Ελληνικής τεκμηρίωσης:&prompt.root; pkg_add -r el-freebsd-docΤα πακέτα χρησιμοποιούν τη μορφή
lang-freebsd-doc στο
όνομα τους, η οποία διαφέρει από την αντίστοιχη μορφή του port.
Το lang είναι η σύντομη μορφή της
γλώσσας, π.χ. el για Ελληνικά ή
zh_cn για Απλοποιημένα Κινέζικα.Ενημερώνοντας τα Ports της ΤεκμηρίωσηςΓια να ενημερώσετε ένα ήδη εγκατεστημένο port τεκμηρίωσης,
μπορείτε να χρησιμοποιήσετε οποιοδήποτε εργαλείο αναβάθμισης ports.
Για παράδειγμα, η παρακάτω εντολή ενημερώνει την εγκατεστημένη
Ελληνική τεκμηρίωση μέσω του εργαλείου ports-mgmt/portupgrade με τη χρήση μόνο
έτοιμων πακέτων:&prompt.root; portupgrade -PP el-freebsd-docPavLucistnikΒασισμένο σε πληροφορίες που παρείχε ο Χρησιμοποιώντας το DocsnapUpdating and UpgradingDocsnapUpdating and UpgradingΤο Docsnap είναι ένα αποθετήριο
(repository) &man.rsync.1; για την ενημέρωση της εγκατεστημένης
τεκμηρίωσης του &os; μέσω ενός σχετικά εύκολου και γρήγορου
τρόπου. Ένας
εξυπηρετητής Docsnap
ανακτά τον ενημερωμένο πηγαίο κώδικα της τεκμηρίωσης και τον
μεταγλωττίζει σε μορφή HTML κάθε μια ώρα. Δεν χρειάζεται να
εγκαταστήσετε το textproc/docproj
με το Docsnap, καθώς σας παρέχει
έτοιμες διορθώσεις για την ήδη εγκατεστημένη τεκμηρίωση.Η μόνη απαίτηση για την παραπάνω τεχνική, είναι να έχετε
εγκαταστήσει το πακέτο ή port net/rsync. Για να το προσθέσετε,
χρησιμοποιήστε την παρακάτω εντολή:&prompt.root; pkg_add -r rsyncΤο Docsnap αναπτύχθηκε αρχικά για
την ενημέρωση της τεκμηρίωσης που έχει εγκατασταθεί στον κατάλογο
/usr/share/doc, αλλά τα
παρακάτω παραδείγματα μπορούν να προσαρμοστούν και για άλλους
καταλόγους. Για καταλόγους χρηστών, οι εντολές δεν χρειάζεται να
εκτελεστούν με προνόμια root.Για την ενημέρωση της τεκμηρίωσης, χρησιμοποιήστε την παρακάτω
εντολή:&prompt.root; rsync -rltvz docsnap.sk.FreeBSD.org::docsnap /usr/share/docΥπάρχει μόνο ένας εξυπηρετητής
Docsnap τη δεδομένη στιγμή:
ο εξυπηρετητής docsnap.sk.FreeBSD.org που φαίνεται
παραπάνω.Μην χρησιμοποιήσετε την επιλογή , καθώς
η make installworld εγκαθιστά κάποια πράγματα στον
κατάλογο /usr/share/doc τα
οποία θα σβηστούν. Για να καθαρίσετε τα παλιά αρχεία, χρησιμοποιήστε
την παρακάτω εντολή:&prompt.root; rsync -rltvz --delete docsnap.sk.FreeBSD.org::docsnap/??_??\.\* /usr/share/docΑν επιθυμείτε να ενημερώσετε ένα υποσύνολο της τεκμηρίωσης, για
παράδειγμα μόνο την Αγγλική τεκμηρίωση, μπορείτε να χρησιμοποιήσετε
την παρακάτω εντολή:&prompt.root; rsync -rltvz docsnap.sk.FreeBSD.org::docsnap/en_US.ISO8859-1 /usr/share/doc
]]>
Παρακολούθηση Ενός Κλάδου Ανάπτυξης-CURRENT-STABLEΥπάρχουν δύο κλάδοι ανάπτυξης στο &os;, το &os.current; και το
&os.stable;. Στην ενότητα αυτή, θα εξηγήσουμε κάποια πράγματα σχετικά
με αυτούς τους κλάδους, και θα περιγράψουμε πως μπορείτε να διατηρήσετε
το σύστημα σας ενημερωμένο σε κάποιον από αυτούς. Θα μιλήσουμε αρχικά
για το &os.current; και έπειτα για το &os.stable;.Παρακολουθώντας το &os.current;Καθώς διαβάζετε αυτό το κείμενο, να έχετε υπόψιν σας ότι το
&os.current; είναι πράγματι η κόψη του ξυραφιού στην
ανάπτυξη του &os;. Οι χρήστες του &os.current; αναμένεται να έχουν
αυξημένες τεχνικές γνώσεις, και να είναι ικανοί να επιλύουν δύσκολα
προβλήματα του συστήματος τους, χωρίς βοήθεια. Αν είστε καινούριος
στο &os;, μάλλον θα πρέπει να το ξανασκεφτείτε πριν το
εγκαταστήσετε.Τι Είναι το &os.current;;snapshotΤο &os.current; αποτελείται από τον πλέον πρόσφατο λειτουργικό
πηγαίο κώδικα του &os;. Περιλαμβάνει αλλαγές που βρίσκονται σε
εξέλιξη, πειραματικές αλλαγές, και μηχανισμούς μετάβασης οι οποίοι
δεν είναι σίγουρο ότι θα περιλαμβάνονται στην επόμενη επίσημη
έκδοση του λογισμικού. Αν και πολλά μέλη της ομάδας ανάπτυξης του
&os; μεταγλωττίζουν καθημερινά τον πηγαίο κώδικα του &os.current;,
υπάρχουν χρονικές περίοδοι που η μεταγλώττιση του είναι αδύνατη.
Τα προβλήματα αυτά γενικά επιλύονται όσο πιο γρήγορα γίνεται, αλλά
το αν το &os.current; θα σας φέρει την καταστροφή ή κάποιο
πολυπόθητο χαρακτηριστικό, είναι περισσότερο θέμα της χρονικής
στιγμής που θα επιλέξετε να ανακτήσετε τον πηγαίο κώδικα!Ποιος Χρειάζεται το &os.current;;Το &os.current; διατίθεται και ενδιαφέρει κυρίως τις παρακάτω
τρεις ομάδες:Μέλη της κοινότητας του &os; που δουλεύουν ενεργά σε κάποιο
τμήμα του πηγαίου κώδικα, και για τους οποίους η παρακολούθηση
του &os.current; είναι απόλυτα απαραίτητη.Μέλη της κοινότητας του &os; που είναι ενεργοί testers
και είναι πρόθυμοι να αναλώσουν το χρόνο τους για να λύσουν
προβλήματα, ώστε να εξασφαλίσουν ότι το &os.current;
θα παραμείνει όσο το δυνατόν πιο σωστό. Συνήθως, τα μέλη αυτά
κάνουν προτάσεις για τοπικές αλλαγές και για την γενική
κατεύθυνση του &os;, και στέλνουν patches για την
πραγματοποίηση τους.Αυτοί που απλώς θέλουν να βλέπουν τις τελευταίες
ενημερώσεις, ή να χρησιμοποιούν τον τελευταίο πηγαίο κώδικα ως
αναφορά (π.χ. για μελέτη και όχι για
εκτέλεση). Μέλη αυτής της ομάδας μπορεί επίσης περιστασιακά να
συνεισφέρουν σχόλια ή κώδικα.Τι Δεν Είναι το &os.current;;Δεν είναι ένας γρήγορος τρόπος να πάρετε κώδικα ο
οποίος δεν έχει κυκλοφορήσει ακόμα σε κάποια έκδοση, με την
ελπίδα ότι περιέχει κάποια νέα εκπληκτική δυνατότητα και
θέλετε να είστε ο πρώτος που τη χρησιμοποιεί. Αν είστε
πράγματι ο πρώτος που την χρησιμοποιεί, θα είστε επίσης και ο
πρώτος που θα συναντήσετε τα νέα προβλήματα και bugs.Δεν είναι ένας γρήγορος τρόπος για να ανακτήσετε
διορθώσεις προβλημάτων. Κάθε νέα έκδοση του &os.current;
μπορεί να εισάγει τόσα νέα bugs όσα και αυτά που
διορθώνει.Το &os.current; δεν αποτελεί
επίσημα υποστηριζόμενο κώδικα. Αν και
καταβάλλουμε κάθε δυνατή προσπάθεια να βοηθήσουμε όσους
ανήκουν πραγματικά σε κάποια από τις τρεις
ομάδες που αναφέραμε, ωστόσο δεν έχουμε το
χρόνο να παρέχουμε τεχνική υποστήριξη. Αυτό δεν
συμβαίνει επειδή είμαστε κακοήθεις και δύσκολοι και δεν θέλουμε
να βοηθάμε τους ανθρώπους (δεν θα είχαμε καν δημιουργήσει το
&os; αν σκεφτόμασταν έτσι). Πολύ απλά, δεν μπορούμε να
απαντάμε εκατοντάδες μηνύματα την ημέρα και
ταυτόχρονα να δουλεύουμε στο &os;! Αν
δώσετε σε οποιοδήποτε μέλος της ομάδας ανάπτυξης την επιλογή
να απαντάει σε πολλές ερωτήσεις σχετικά με πειραματικό κώδικα
ή να δουλεύει για τη βελτίωση του &os;, θα επιλέξει σίγουρα το
δεύτερο.Χρησιμοποιώντας το &os.current;-CURRENTusingΓραφτείτε στις λίστες &a.current.name; και
&a.svn-src-head.name;. Δεν είναι απλώς καλή ιδέα, είναι
βασικό να το κάνετε. Αν δεν είστε
γραμμένος στη λίστα &a.current.name;, δεν
θα βλέπετε τα σχόλια σχετικά με την τρέχουσα κατάσταση του
συστήματος από όσους το χρησιμοποιούν, και έτσι πιθανώς θα
καταλήξετε να αντιμετωπίζετε πολλά προβλήματα που άλλοι έχουν
ήδη ανακαλύψει και λύσει. Ακόμα πιο σημαντικό είναι ότι θα
χάνετε σημαντικές ανακοινώσεις, οι οποίες μπορεί να είναι
κρίσιμες για την διατήρηση του συστήματος σας σε υγιή
κατάσταση.Η λίστα &a.svn-src-head.name; θα σας επιτρέψει να βλέπετε
τις καταχωρήσεις στο commit log για κάθε αλλαγή που γίνεται,
καθώς και πληροφορίες για πιθανές παρενέργειες που μπορεί να
έχει.Για να γραφτείτε σε αυτές, ή σε οποιεσδήποτε από τις
υπάρχουσες λίστες, επισκεφθείτε την τοποθεσία
&a.mailman.lists.link; και επιλέξτε τη λίστα στην οποία θέλετε
να γίνετε συνδρομητής. Οδηγίες για την υπόλοιπη διαδικασία
θα βρείτε επιτόπου. Αν σας ενδιαφέρει να παρακολουθείτε τις
αλλαγές σε όλο το δέντρο πηγαίου κώδικα, σας συνιστούμε να
εγγραφείτε στη λίστα &a.svn-src-all.name;.Ανακτήστε τον πηγαίο κώδικα από ένα
mirror site του &os;. Αυτό
μπορεί να γίνει με δύο τρόπους:cvsupcron-CURRENTSyncing with CVSupΧρησιμοποιήστε το πρόγραμμα cvsup σε συνδυασμό με το
supfile με την ονομασία
standard-supfile το οποίο θα βρείτε
στον κατάλογο
/usr/share/examples/cvsup.
Αυτή είναι και η πλέον συνιστώμενη μέθοδος, καθώς σας
επιτρέπει να ανακτήσετε όλη τη συλλογή με μια κίνηση, και
στις επόμενες ανανεώσεις θα παίρνετε μόνο τις αλλαγές.
Πολλοί χρήστες εκτελούν το cvsup μέσω
του cron ώστε να κρατάνε τον πηγαίο
κώδικα του συστήματος τους πάντα ανανεωμένο αυτόματα. Θα
πρέπει να προσαρμόσετε το υπόδειγμα του
supfile που δίνουμε παραπάνω, και να
ρυθμίσετε το cvsup για το
περιβάλλον σας.Το υπόδειγμα του αρχείου
standard-supfile προορίζεται για
χρήση με κάποιο συγκεκριμένο κλάδο ασφάλειας (security
branch) του &os;, και όχι με το &os.current;. Θα πρέπει
να επεξεργαστείτε το αρχείο και να αντικαταστήσετε την
παρακάτω γραμμή:*default release=cvs tag=RELENG_X_Yμε την ακόλουθη:*default release=cvs tag=.Για περισσότερες πληροφορίες σχετικά με τα tags που
μπορείτε να χρησιμοποιήσετε, παρακαλούμε διαβάστε στο
Εγχειρίδιο την ενότητα Ετικέτες (Tags) για το CVS.-CURRENTSyncing with CTMΧρησιμοποιήστε την υπηρεσία CTM. Αν έχετε πολύ κακή
συνδεσιμότητα (υψηλό κόστος σύνδεσης ή πρόσβαση μόνο μέσω
email) το CTM αποτελεί για σας
μια εναλλακτική λύση. Μπορεί ωστόσο να σας δημιουργήσει
διάφορα προβλήματα και να καταλήξετε με χαλασμένα αρχεία.
Για το λόγο αυτό, το CTM
χρησιμοποιείται σπάνια, κάτι το οποίο αυξάνει ακόμα
περισσότερο την πιθανότητα να μη δουλεύει σωστά για μεγάλα
χρονικά διαστήματα. Σας συνιστούμε να χρησιμοποιήσετε το
CVSup
αν διαθέτετε modem 9600 bps ή ταχύτερο.Αν σκοπεύετε να ανακτήσετε τον πηγαίο κώδικα για κανονική
χρήση (εκτέλεση) και όχι απλώς για να τον δείτε, τότε
ανακτήστε ολόκληρο το &os.current; και όχι
κάποια επιλεγμένα τμήματα. Σε διαφορετική περίπτωση, είναι
αρκετά πιθανό να συναντήσετε προβλήματα, καθώς πολλά κομμάτια
του κώδικα εξαρτώνται από ανανεώσεις σε άλλα, και δεν μπορούν
να μεταγλωττιστούν αυτόνομα.-CURRENTcompilingΠριν μεταγλωττίσετε το &os.current;, διαβάστε προσεκτικά το
Makefile στον κατάλογο
/usr/src. Θα πρέπει να μεταγλωττίσετε τον πυρήνα και όλο το
βασικό σύστημα (world) την πρώτη φορά, ως μέρος της
διαδικασίας αναβάθμισης. Διαβάζοντας την &a.current;
και το /usr/src/UPDATING θα είστε
ενημερωμένοι για νέες διαδικασίες όσο αφορά την εκκίνηση στο νέο
σας σύστημα. Οι διαδικασίες αυτές είναι συχνά απαραίτητες όσο
πλησιάζουμε σε μια νέα επίσημη έκδοση.Γίνετε ενεργό μέλος! Αν χρησιμοποιείτε το &os.current;,
θέλουμε να ξέρουμε τη γνώμη σας για αυτό, ειδικά αν έχετε
προτάσεις για βελτιώσεις ή διορθώσεις λαθών. Προτάσεις που
συνοδεύονται και από κώδικα γίνονται δεκτές με
ενθουσιασμό!Χρησιμοποιώντας το &os;-STABLEΤι Είναι το &os.stable;;-STABLEΤο &os.stable; είναι ένας κλάδος ανάπτυξης από τον οποίο
προκύπτουν οι μεγάλες (major) εκδόσεις. Οι αλλαγές
εισάγονται σε αυτό τον κλάδο με διαφορετικό ρυθμό, και με τη γενική
παραδοχή ότι έχουν πρώτα περάσει από το &os.current; για δοκιμή.
Ωστόσο, δεν παύει να είναι ένας κλάδος
ανάπτυξης, και αυτό σημαίνει ότι ο κώδικας του &os.stable; μπορεί
μια δεδομένη χρονική στιγμή να είναι ακατάλληλος για συγκεκριμένες
εφαρμογές. Πρόκειται για μια ακόμα γραμμή ανάπτυξης για τους
προγραμματιστές, και δεν είναι απαραίτητα κατάλληλη για τους
τελικούς χρήστες.Ποιος Χρειάζεται το &os.stable;;Αν σας ενδιαφέρει να παρακολουθείτε ή να συμβάλλετε στην
ανάπτυξη του &os;, και ειδικά όσο αφορά την επόμενη επίσημη
έκδοση του από τον ίδιο κλάδο (point release), είναι καλή ιδέα να
παρακολουθείτε το &os.stable;.Αν και είναι αλήθεια ότι οι διορθώσεις ασφάλειας γίνονται και
στον κλάδο &os.stable;, ωστόσο δεν χρειάζεται
να παρακολουθείτε το &os.stable; μόνο για αυτό το λόγο. Κάθε
αναφορά προβλήματος ασφάλειας του &os; εξηγεί πως να διορθώσετε το
πρόβλημα για κάθε επίσημη έκδοση η οποία επηρεάζεται από αυτό
Αυτό βέβαια δεν είναι απόλυτα αληθινό. Δεν μπορούμε
να συνεχίσουμε να υποστηρίζουμε τις παλιές εκδόσεις του &os; για
πάντα, αν και τις υποστηρίζουμε για πολλά χρόνια. Για πλήρη
περιγραφή της τρέχουσας πολιτικής όσο αφορά την ασφάλεια των
παλιών εκδόσεων του &os;, δείτε http://www.FreeBSD.org/security/.,
και η παρακολούθηση ενός κλάδου ανάπτυξης μόνο για λόγους
ασφαλείας, πιθανόν να φέρει επίσης και άλλες ανεπιθύμητες αλλαγές
μαζί της.Αν και καταβάλλουμε κάθε δυνατή προσπάθεια ώστε να εξασφαλίσουμε
ότι ο κλάδος &os.stable; μπορεί να μεταγλωττιστεί και να εκτελεστεί
σε κάθε δεδομένη χρονική στιγμή, δεν μπορούμε ωστόσο να το
εγγυηθούμε. Επιπρόσθετα, αν και ο κώδικας αναπτύσσεται στο
&os.current; πριν περάσει στο &os.stable;, ο κόσμος που εκτελεί το
&os.stable; είναι περισσότερος, και έτσι είναι αναπόφευκτο να
ανακαλύπτονται πιο πολλά σφάλματα και ακραίες περιπτώσεις στο
&os.stable; τα οποία δεν έχουν γίνει εμφανή στο &os.current;.Για τους λόγους αυτούς, δεν συνιστούμε να
παρακολουθείτε τυφλά το &os.stable;, και ειδικότερα είναι σημαντικό
να μην αναβαθμίζετε σε αυτό εξυπηρετητές σε περιβάλλοντα παραγωγής,
χωρίς να έχετε πρώτα ελέγξει αναλυτικά τον κώδικα στο δικό σας
περιβάλλον ανάπτυξης.Αν δεν διαθέτετε τους πόρους για να το κάνετε αυτό, σας
συνιστούμε να χρησιμοποιείτε την τελευταία επίσημη έκδοση του &os;,
και να αναβαθμίζεστε από τη μια έκδοση στην επόμενη μέσω του
μηχανισμού δυαδικών ενημερώσεων.Χρησιμοποιώντας το &os.stable;-STABLEusingΓραφτείτε συνδρομητής στη λίστα &a.stable.name;. Θα είστε
έτσι ενημερωμένοι για εξαρτήσεις μεταγλώττισης που ίσως
εμφανιστούν στο &os.stable;, ή για άλλα προβλήματα που χρήζουν
ειδικής προσοχής. Στη λίστα αυτή θα βρίσκετε επίσης
ανακοινώσεις από μέλη της ομάδας ανάπτυξης, όταν πρόκειται να
συμπεριληφθεί κάποια αμφιλεγόμενη ανανέωση ή διόρθωση, δίνοντας
έτσι στους χρήστες την ευκαιρία να εκφέρουν γνώμη σχετικά με τα
προβλήματα που θα προκαλέσει η προτεινόμενη αλλαγή.Θα πρέπει να εγγραφείτε στην κατάλληλη λίστα
SVN ανάλογα με τον κλάδο που
παρακολουθείτε. Για παράδειγμα, αν παρακολουθείτε τον κλάδο
7-STABLE, η κατάλληλη λίστα είναι η &a.svn-src-stable-7.name;.
Αυτό θα σας επιτρέψει να βλέπετε τις
καταχωρήσεις στο commit log για κάθε αλλαγή που γίνεται, καθώς
και πληροφορίες για πιθανές παρενέργειες που μπορεί να
έχει.Για να γραφτείτε σε αυτές, ή σε οποιεσδήποτε από τις
υπάρχουσες λίστες, επισκεφθείτε την τοποθεσία
&a.mailman.lists.link; και επιλέξτε τη λίστα στην οποία θέλετε
να γίνετε συνδρομητής. Οδηγίες για την υπόλοιπη διαδικασία
θα βρείτε επιτόπου. Αν σας ενδιαφέρει να παρακολουθείτε τις
αλλαγές σε όλο το δέντρο πηγαίου κώδικα, σας συνιστούμε να
εγγραφείτε στη λίστα &a.svn-src-all.name;.Αν πρόκειται να εγκαταστήσετε ένα νέο σύστημα με σκοπό να
εκτελείτε τα μηνιαία snapshot του &os.stable;, παρακαλούμε να
ελέγξετε την τοποθεσία Snapshots για
περισσότερες πληροφορίες. Εναλλακτικά, είναι δυνατόν να
εγκαταστήσετε το πιο πρόσφατο &os.stable; από κάποιο
mirror site ακολουθώντας τις
παρακάτω οδηγίες ώστε να αναβαθμίσετε το σύστημα σας στην πλέον
πρόσφατη έκδοση πηγαίου κώδικα του &os.stable;.Αν διαθέτετε ήδη κάποια προηγούμενη έκδοση του &os; και
επιθυμείτε να αναβαθμιστείτε μέσω του πηγαίου κώδικα, μπορείτε
εύκολα να χρησιμοποιήσετε κάποιο mirror site του &os;. Υπάρχουν δύο
τρόποι για να γίνει αυτό:cvsupcron-STABLEsyncing with CVSupΧρησιμοποιήστε το πρόγραμμα cvsup σε συνδυασμό με το
supfile με την ονομασία
stable-supfile το οποίο θα βρείτε
στον κατάλογο
/usr/share/examples/cvsup.
Αυτή είναι και η πλέον συνιστώμενη μέθοδος, καθώς σας
επιτρέπει να ανακτήσετε όλη τη συλλογή με μια κίνηση, και
στις επόμενες ανανεώσεις θα παίρνετε μόνο τις αλλαγές.
Πολλοί χρήστες εκτελούν το cvsup μέσω
του cron ώστε να κρατάνε τον πηγαίο
κώδικα του συστήματος τους πάντα ανανεωμένο αυτόματα. Θα
πρέπει να προσαρμόσετε το υπόδειγμα του
supfile που δίνουμε παραπάνω, και να
ρυθμίσετε το cvsup για το
περιβάλλον σας.-STABLEsyncing with CTMΧρησιμοποιήστε την υπηρεσία CTM. Αν δεν έχετε
γρήγορη και φτηνή σύνδεση με το Internet, αυτή είναι η
συνιστώμενη μέθοδος.Ουσιαστικά, αν χρειάζεστε γρήγορη και κατά απαίτηση
πρόσβαση στον πηγαίο κώδικα, και το εύρος ζώνης της σύνδεσης
δεν αποτελεί πρόβλημα, χρησιμοποιήστε το
cvsup ή το ftp.
Διαφορετικά, χρησιμοποιήστε το
CTM.-STABLEcompilingΠριν μεταγλωττίσετε το &os.stable;, διαβάστε προσεκτικά το
Makefile στον κατάλογο
/usr/src. Θα πρέπει να μεταγλωττίσετε τον πυρήνα και όλο το
βασικό σύστημα (world) την πρώτη φορά, ως μέρος της
διαδικασίας αναβάθμισης. Διαβάζοντας την &a.stable;
και το /usr/src/UPDATING θα είστε
ενημερωμένοι για νέες διαδικασίες όσο αφορά την εκκίνηση στο νέο
σας σύστημα. Οι διαδικασίες αυτές είναι συχνά απαραίτητες όσο
πλησιάζουμε σε μια νέα επίσημη έκδοση.Συγχρονίζοντας τον Πηγαίο σας ΚώδικαΥπάρχουν διάφοροι τρόποι να χρησιμοποιήσετε μια σύνδεση Internet
(ή email) για να ενημερώνετε οποιοδήποτε τμήμα πηγαίου
κώδικα του &os; Project σας ενδιαφέρει, ή και όλα αν το
επιθυμείτε. Οι βασικές υπηρεσίες που προσφέρουμε είναι το
Ανώνυμο CVS, το
CVSup, και το CTM.Αν και είναι δυνατόν να ενημερώσετε μόνο κάποια τμήματα του
δέντρου πηγαίου κώδικα, η μόνη διαδικασία ενημέρωσης που
υποστηρίζεται αφορά την ενημέρωση ολόκληρου του δέντρου. Μετά την
ενημέρωση, θα πρέπει να μεταγλωττίσετε ξανά τόσο το userland (δηλ. τα
προγράμματα που εκτελούνται στην περιοχή χρήστη, όπως αυτά που
βρίσκονται στους καταλόγους /bin και
/sbin) όσο και τον πηγαίο κώδικα του πυρήνα.
Αν ενημερώσετε μόνο ένα τμήμα του πηγαίου κώδικα, μόνο τον πυρήνα ή
μόνο το userland, θα αντιμετωπίσετε προβλήματα. Τα προβλήματα αυτά
μπορεί να κυμαίνονται από σφάλματα μεταγλώττισης μέχρι kernel panic
και καταστροφή δεδομένων.CVSanonymousΤο Ανώνυμο CVS και το
CVSup χρησιμοποιούν τη μέθοδο
pull για την ενημέρωση του πηγαίου κώδικα. Στην
περίπτωση του CVSup, ο χρήστης (η κάποιο
script που εκτελείται μέσω cron) εκτελεί το πρόγραμμα
cvsup το οποίο αλληλεπιδρά με ένα αντίστοιχο
εξυπηρετητή cvsupd ώστε να ενημερώσει τα σχετικά
αρχεία. Οι ενημερώσεις που λαμβάνετε είναι πάντοτε οι τελευταίες
διαθέσιμες, και θα τις λάβετε μόνο όταν τις ζητήσετε. Μπορείτε εύκολα
να περιορίσετε τις ενημερώσεις σε συγκεκριμένα αρχεία ή καταλόγους τα
οποία σας ενδιαφέρουν. Οι ενημερώσεις δημιουργούνται δυναμικά από τον
εξυπηρετητή, ανάλογα με το τι έχετε εγκατεστημένο και τι επιθυμείτε να
λάβετε. Το Ανώνυμο CVS είναι κάπως πιο
απλοϊκό από το CVSup, δεδομένου ότι είναι
απλώς μια επέκταση του CVS που επιτρέπει την
ανάκτηση αλλαγών απευθείας από κάποιο απομακρυσμένο CVS repository. Το
CVSup είναι αρκετά πιο αποτελεσματικό σε
αυτόν το τομέα, αλλά το Ανώνυμο CVS είναι
απλούστερο στη χρήση.CTMΑπό την άλλη μεριά, το CTM δεν συγκρίνει
άμεσα τον πηγαίο κώδικα που έχετε με αυτόν που υπάρχει στον κεντρικό
εξυπηρετητή ώστε να ανακτήσει μόνο τις αλλαγές. Αντίθετα, στο κεντρικό
μηχάνημα CTM, εκτελείται αρκετές φορές την ημέρα ένα script. Το script
αυτό αναγνωρίζει τις αλλαγές στα αρχεία σε σχέση με την προηγούμενη
εκτέλεση του, και έπειτα πακετάρει και συμπιέζει τις αλλαγές με τρόπο
κατάλληλο για αποστολή μέσω email (μόνο εκτυπώσιμοι ASCII χαρακτήρες).
Σε κάθε τέτοιο πακέτο αλλαγών αντιστοιχίζεται ένας μοναδιαίος αριθμός
ακολουθίας (sequence number) που το αναγνωρίζει. Μετά τη λήψη τους,
μπορείτε να δώσετε αυτά τα αρχεία διαφορών του
CTM (CTM deltas) στο βοηθητικό
πρόγραμμα &man.ctm.rmail.1; το οποίο αυτόματα θα τα αποκωδικοποιήσει,
θα τα επαληθεύσει, και θα εφαρμόσει τις αλλαγές στο αντίγραφο πηγαίου
κώδικα του χρήστη. Η διαδικασία αυτή είναι πολύ πιο αποδοτική από το
CVSup, και επιβαρύνει λιγότερο τους
εξυπηρετητές μας, καθώς είναι μια διαδικασία τύπου
push αντί για pull.Υπάρχουν φυσικά κάποια σημεία που υστερεί. Αν από λάθος διαγράψετε
κάποια τμήματα του πηγαίου σας κώδικα, το
CVSup θα ανιχνεύσει και θα διορθώσει αυτόματα
τη βλάβη για σας. Το CTM δεν θα το κάνει
αυτό, και αν σβήσετε κάποιο τμήμα του δέντρου σας (και δεν έχετε
αντίγραφο ασφαλείας) θα πρέπει να ξεκινήσετε από την αρχή (από το πιο
πρόσφατο CVS base delta) και να το ξανακτίσετε από την
αρχή με το CTM. Με το
Ανώνυμο CVS, μπορείτε απλώς να διαγράψετε
τα προβληματικά αρχεία και να συγχρονίσετε ξανά τον πηγαίο σας
κώδικα.Μεταγλωττίζοντας το Βασικό Σύστημα (world)Rebuilding worldΈχοντας συγχρονίσει το τοπικό σας δέντρο πηγαίου κώδικα σε κάποια
συγκεκριμένη έκδοση του &os; (&os.stable;, &os.current;, κ.ο.κ.),
μπορείτε έπειτα να το χρησιμοποιήσετε για να μεταγλωττίσετε το
σύστημα σας από την αρχή.Δημιουργήστε Ένα Αντίγραφο ΑσφαλείαςΔεν μπορούμε παρά να τονίσουμε πόσο σημαντικό είναι να
δημιουργήσετε ένα αντίγραφο ασφαλείας του συστήματος σας
πριν ξεκινήσετε αυτή τη διαδικασία. Αν και η
μεταγλώττιση του βασικού συστήματος είναι (όσο τουλάχιστον ακολουθείτε
αυτές τις οδηγίες) μια σχετικά απλή διαδικασία, αναμφίβολα θα υπάρξουν
και περιπτώσεις που λάθη δικά σας, ή άλλων (στο δέντρο πηγαίου
κώδικα), θα σας οδηγήσουν σε ένα σύστημα που δεν θα μπορεί να
εκκινήσει.Βεβαιωθείτε ότι έχετε ενημερωμένο αντίγραφο ασφαλείας. Καλό θα
είναι να έχετε επίσης πρόχειρη μια δισκέτα fixit ή ένα CD εκκίνησης.
Ίσως να μην χρειαστεί ποτέ να τα χρησιμοποιήσετε, αλλά καλύτερα να
είστε ασφαλής παρά να το μετανοιώνετε αργότερα!Γίνετε Συνδρομητής στη Σωστή Λίστα Ηλ. Ταχυδρομείουmailing listΑπό τη φύση τους, οι κλάδοι &os.stable; και &os.current;
βρίσκονται σε συνεχή ανάπτυξη. Όσοι συνεισφέρουν
στο &os; είναι απλώς άνθρωποι, και περιστασιακά λάθη απλώς
συμβαίνουν.Ορισμένες φορές τα λάθη αυτά είναι μάλλον ακίνδυνα, και το μόνο
που κάνουν είναι να εμφανίζουν μερικές διαγνωστικές προειδοποιήσεις
στο σύστημα σας. Ή μπορεί η αλλαγή να είναι καταστροφική, και να
οδηγήσει το σύστημα σας σε αδυναμία εκκίνησης ή ακόμα και να
καταστρέψει τα συστήματα αρχείων σας (ή και ακόμα χειρότερες
συνέπειες).Αν συμβούν τέτοια προβλήματα, σύντομα θα εμφανιστεί ένα μήνυμα
τύπου heads up στις σχετικές λίστες ταχυδρομείου, το
οποίο θα εξηγεί το πρόβλημα και ποια συστήματα επηρεάζει. Όταν το
πρόβλημα λυθεί, θα γίνει μια αντίστοιχη all clear
ανακοίνωση.Αν προσπαθείτε να ακολουθήσετε το &os.stable; ή το &os.current;,
και δεν διαβάζετε τις αντίστοιχες λίστες &a.stable.name; και
&a.current.name;, ψάχνετε για μπελάδες.Μην Χρησιμοποιήσετε την εντολή
make worldΜεγάλο μέρος της παλαιότερης τεκμηρίωσης, συνιστά τη χρήση της
εντολής make world. Αν την χρησιμοποιήσετε, θα
παραλειφθούν ορισμένα σημαντικά βήματα της διαδικασίας.
Χρησιμοποιήστε τη μόνο αν είστε απόλυτα σίγουροι για αυτό που κάνετε.
Για τις περισσότερες περιπτώσεις, η εντολή
make world είναι λανθασμένη, και αντί για αυτή
θα πρέπει να ακολουθήσετε τη διαδικασία που περιγράφουμε
παρακάτω.Ο Κανονικός Τρόπος να Ενημερώσετε το Σύστημα σαςΠριν ενημερώσετε το σύστημα σας, θα πρέπει να ελέγξετε το
/usr/src/UPDATING για τυχόν βήματα που θα πρέπει
να εκτελέσετε πριν την εκκίνηση της μεταγλώττισης. Τα βήματα αυτά
εξαρτώνται από την έκδοση του πηγαίου κώδικα που πρόκειται να
χρησιμοποιήσετε. Έπειτα, ακολουθήστε τη διαδικασία που περιγράφεται
στις επόμενες παραγράφους.Η διαδικασία αναβάθμισης η οποία περιγράφεται εδώ βασίζεται στην
υπόθεση ότι έχετε ήδη εγκαταστήσει μια παλιότερη έκδοση του &os;, με
μια παλιά έκδοση του μεταγλωττιστή, ένα παλιό πυρήνα,
παλιά εργαλεία χρήστη και αρχεία ρυθμίσεων. Εργαλεία
χρήστη θεωρούνται τα βασικά εκτελέσιμα, οι βιβλιοθήκες και τα αρχεία
προγραμματισμού. Ο μεταγλωττιστής είναι κι αυτός μέρος των
εργαλείων χρήστη στο &os;, αλλά χρειάζεται ειδική
μεταχείριση κατά τη διαδικασία αναβάθμισης.Υποθέτουμε, επίσης, ότι έχετε ήδη κατεβάσει μια ενημερωμένη έκδοση
από τον πηγαίο κώδικα του συστήματος. Αν ο πηγαίος κώδικας στο
συγκεκριμένο σύστημα είναι από παλιότερη έκδοση, δείτε
το για λεπτομερείς οδηγίες σχετικά με το πως
να συγχρονίσετε τον πηγαίο κώδικα σε μια νεότερη έκδοση.Η αναβάθμιση του &os; από τον πηγαίο κώδικά του φαίνεται να είναι
πολύ απλή διαδικασία. Στην πραγματικότητα, έχει κάποιες
ιδιαιτερότητες. Με τα χρόνια, καθώς οι εξαρτήσεις μεταξύ των βημάτων
της αναβάθμισης ανακαλύπτονται ή αναλύονται καλύτερα, οι
προγραμματιστές του &os; αλλάζουν σιγά-σιγά αυτή τη διαδικασία. Οι
παρακάτω παράγραφοι περιγράφουν τη λογική με την οποία έχει σχεδιασθεί
η προτεινόμενη διαδικασία αναβάθμισης.Μια επιτυχής διαδικασία αναβάθμισης πρέπει να καλύψει τουλάχιστον
τις δύο πιο βασικές ιδιαιτερότητες μιας αναβάθμισης από πηγαίο
κώδικα:Ο παλιός μεταγλωττιστής συστήματος μπορεί να είναι ακατάλληλος
για μεταγλώττιση του νέου πυρήνα. (Και οι μεταγλωττιστές έχουν
ορισμένες φορές προβλήματα, όπως κάθε άλλο λογισμικό.) Οπότε ο
νέος πυρήνας πρέπει να μεταγλωττιστεί με το νέο μεταγλωττιστή.
Πιο συγκεκριμένα, ο νέος μεταγλωττιστής πρέπει να αναβαθμιστεί
πριν από το νέο πυρήνα. Αυτό δε σημαίνει βέβαια ότι αυτός ο νέος
μεταγλωττιστής πρέπει να εγκατασταθεί πριν
μεταγλωττιστεί ο νέος πυρήνας.Τα νέα εργαλεία χρήστη από το βασικό σύστημα του &os; μπορεί
να εξαρτώνται από τον τρόπο λειτουργίας του νέου πυρήνα. Οπότε ο
νέος πυρήνας πρέπει να εγκατασταθεί πριν από το νέο βασικό
σύστημα.Αυτά τα δύο σημεία είναι οι βασικοί λόγοι για τους οποίους
προτείνονται τα κεντρικά βήματα μιας αναβάθμισης, τα
βήματα buildworld,
buildkernel,
installkernel,
και installworld. Στις επόμενες παραγράφους
θα περιγράψουμε πιο αναλυτικά αυτά τα βήματα. Υπάρχουν κι άλλοι λόγοι
όμως για τους οποίους χρειάζεται προσοχή όταν κάνετε μια τέτοια
αναβάθμιση. Μερικοί από αυτούς είναι οι εξής:Τα παλιά εργαλεία του βασικού συστήματος μπορεί να μην τρέχουν
σωστά με το νέο πυρήνα. Γι αυτό πρέπει να εγκατασταθεί το
ενημερωμένο βασικό σύστημα αμέσως μετά την εγκατάσταση του νέου
πυρήνα.Μερικές φορές χρειάζονται αλλαγές στα αρχεία ρυθμίσεων πριν
εγκατασταθεί το νέο βασικό σύστημα. Άλλες φορές η εγκατάσταση
όλων των αρχείων ρυθμίσεων μπορεί να δημιουργήσει προβλήματα στην
εγκατάσταση. Γι αυτό έχουμε χωρίσει την ενημέρωση των αρχείων
ρυθμίσεων σε δύο ξεχωριστά βήματα.Στην πλειοψηφία των περιπτώσεων η διαδικασία εγκατάστασης
αντικαθιστά ή προσθέτει αρχεία του συστήματος· δε σβήνει κανένα
υπάρχον αρχείο. Σε μερικές περιπτώσεις αυτό μπορεί να
δημιουργήσει προβλήματα. Όταν υπάρχει τέτοια περίπτωση, η
διαδικασία εγκατάστασης τυπώνει ενημερωτικά μηνύματα για τα αρχεία
τα οποία πρέπει να σβηστούν χειροκίνητα. Αυτό το βήμα μπορεί να
αυτοματοποιηθεί στο μέλλον.Έχοντας όλες αυτές τις ιδιαιτερότητες μιας αναβάθμισης από πηγαίο
κώδικα, καταλήξαμε στην παρακάτω διαδικασία αναβάθμισης. Ορισμένες
φορές μπορεί να χρειάζεται να προσθέσετε κάποια βήματα σε αυτή τη
διαδικασία. Τα βασικά βήματα όμως παραμένουν τα ίδια, κι είναι τα
εξής:make buildworldΑυτό το βήμα μεταγλωττίζει πρώτα μια ενημερωμένη έκδοση του
ίδιου του μεταγλωττιστή συστήματος και μερικών απαραίτητων
εργαλείων. Ύστερα, χρησιμοποιώντας το νέο μεταγλωττιστή,
προετοιμάζει μια νέα έκδοση όλου του βασικού συστήματος του &os;.
Τα ενημερωμένα εκτελέσιμα, βιβλιοθήκες και αρχεία προγραμματισμού
καταλήγουν στον
κατάλογο /usr/obj.make buildkernelΣε αντίθεση με παλιότερες διαδικασίες αναβάθμισης (οι οποίες
καλούσαν χειροκίνητα το &man.config.8; και το &man.make.1;) αυτό
το βήμα μεταγλωττίζει τον πυρήνα του &os; χρησιμοποιώντας τον
ενημερωμένο μεταγλωττιστή συστήματος από τον
κατάλογο /usr/obj. Αυτό
σας προστατεύει από προβλήματα ασυμβατότητας μεταξύ του
μεταγλωττιστή και του πυρήνα.make installkernelΕγκατάσταση του νέου πυρήνα και των αρθρωμάτων του στο δίσκο
του συστήματος. Έτσι μπορεί πλέον το σύστημα να ξεκινήσει με το
νέο, ενημερωμένο πυρήνα.Εκκίνηση σε λειτουργία single user.Η λειτουργία single user ελαχιστοποιεί την πιθανότητα να έχετε
προβλήματα επειδή αναβαθμίσατε κάποιο πρόγραμμα που τρέχει ήδη.
Είναι επίσης πιο ασφαλής, αφού δε χρειάζεται να τρέξετε τις
εφαρμογές του παλιού βασικού συστήματος με το νέο πυρήνα.mergemaster Αυτό το βήμα ενημερώνει τα απολύτως βασικά αρχεία ρυθμίσεων
του &os;, για να μπορέσετε να εγκαταστήσετε σωστά το νέο βασικό
σύστημα. Ενημερώνει, για παράδειγμα, τη βάση χρηστών και ομάδων
χρηστών του &os;. Κάθε φορά που προστίθεται ένας νέος χρήστης
συστήματος ή μια νέα ομάδα χρηστών, το
βήμα installworld της αναβάθμισης θεωρεί
ότι έχετε ήδη ρυθμίσει τους νέους χρήστες ή τις νέες ομάδες. Αυτό
ακριβώς κάνει σε αυτό το σημείο το εργαλείο
&man.mergemaster.8;.make installworldΤο επόμενο βήμα είναι να εγκαταστήσετε το ενημερωμένο βασικό
σύστημα από τον
κατάλογο /usr/obj. Μετά
από αυτό έχετε πλέον ένα νέο πυρήνα και ένα ενημερωμένο βασικό
σύστημα, το οποίο ταιριάζει με τον νέο πυρήνα.mergemasterΈνα από τα τελευταία βήματα είναι η αναβάθμιση των αρχείων
ρυθμίσεων του συστήματος. Το εργαλείο &man.mergemaster.8; μπορεί
να σας βοηθήσει σε αυτό το βήμα, αφού ενημερώνει τα αρχεία
ρυθμίσεων κρατώντας και οποιεσδήποτε τοπικές αλλαγές έχετε κάνει
στο σύστημά σας.Επανεκκινήστε το σύστημα.Μια τελευταία επανεκκίνηση του συστήματος σας εξασφαλίζει ότι
το σύστημα ξεκινάει με το νέο πυρήνα, το ενημερωμένο βασικό
σύστημα και τα καινούρια αρχεία ρυθμίσεων.Αν η αναβάθμιση που κάνετε είναι από μια έκδοση του &os; σε μια
πιο καινούρια έκδοση του ίδιου κλάδου ανάπτυξης, π.χ. από 7.0 σε 7.1,
τότε μερικά από τα βήματα αυτή της διαδικασίας μπορεί να μη
χρειάζονται αφού είναι λιγότερο πιθανό να συναντήσετε ασυμβατότητες
μεταξύ του μεταγλωττιστή συστήματος, του πυρήνα, του βασικού
συστήματος και των αρχείων ρυθμίσεων. Η αναβάθμιση σε τέτοιες
περιπτώσεις, μεταξύ δύο minor εκδόσεων του &os;, ίσως μπορεί να γίνει
και με την παλιότερη διαδικασία:
τρέχονταςmake world και
ύστερα μεταγλωττίζοντας και στήνοντας ένα νέο πυρήνα.Όταν όμως αναβαθμίσετε το &os; μεταξύ major εκδόσεων, καλύτερα να
χρησιμοποιήσετε τη διαδικασία που περιγράφουμε εδώ. Αλλιώς μπορεί να
αντιμετωπίσετε προβλήματα είτε κατά τη διάρκεια της αναβάθμισης ή αφού
έχει πλέον ολοκληρωθεί.Κάποιες από τις αναβαθμίσεις (π.χ. από μια έκδοση
4.X σε 5.0) μπορεί να απαιτούν μερικά
χειροκίνητα βήματα (όπως το να μετακινήσετε ή να σβήσετε συγκεκριμένα
αρχεία πριν το βήμα installworld). Πριν από
κάθε αναβάθμιση διαβάστε προσεκτικά τις οδηγίες στο
αρχείο /usr/src/UPDATING· ειδικά τις οδηγίες στο
τέλος του αρχείου, οι οποίες περιγράφουν αναλυτικά την προτεινόμενη
διαδικασία αναβάθμισης.Αυτή η διαδικασία αναβάθμισης εξελίσσεται και διορθώνεται καθώς οι
προγραμματιστές του &os; ανακαλύπτουν καινούριες εξαρτήσεις μεταξύ των
συστατικών του συστήματος ή κάνουν διορθώσεις για να αποφύγουν
ασυμβατότητες μεταξύ των διαφορετικών υποσυστημάτων. Ελπίζουμε ότι τα
κεντρικά βήματα της διαδικασίας που περιγράφεται εδώ δε θα αλλάξουν
πολύ για αρκετό καιρό πλέον.Η αναβάθμιση του &os; από τις εκδόσεις
3.X ή από παλιότερες εκδόσεις είναι
σχετικά πιο περίπλοκη διαδικασία. Διαβάστε με πολλή προσοχή το
αρχείο UPDATING αν πραγματικά χρειαστεί να
αναβαθμίσετε ένα τέτοιο σύστημα.Οπότε, συγκεντρώνοντας όλα τα βήματα τα οποία περιγράψαμε
παραπάνω, η προτεινόμενη διαδικασία αναβάθμισης του &os; από τον
πηγαίο κώδικα του συστήματος είναι:&prompt.root; cd /usr/src
&prompt.root; make buildworld
&prompt.root; make buildkernel
&prompt.root; make installkernel
&prompt.root; shutdown -r nowΥπάρχουν κάποιες μάλλον σπάνιες περιπτώσεις, που απαιτείται
μια επιπλέον εκτέλεση του mergemaster -p πριν
το βήμα buildworld. Οι περιπτώσεις αυτές
περιγράφονται στο UPDATING. Σε γενικές
γραμμές πάντως, μπορείτε με ασφάλεια να παραλείψετε αυτό το βήμα,
αν δεν αναβαθμίζετε το σύστημα σας μεταξύ πολλαπλών εκδόσεων του
&os;.Μετά την επιτυχή ολοκλήρωση του
installkernel, θα πρέπει να επανεκκινήσετε
σε κατάσταση ενός χρήστη (π.χ. χρησιμοποιώντας την εντολή
boot -s στην προτροπή του φορτωτή εκκίνησης).
Έπειτα εκτελέστε:&prompt.root; adjkerntz -i
&prompt.root; mount -a -t ufs
&prompt.root; mergemaster -p
&prompt.root; cd /usr/src
&prompt.root; make installworld
&prompt.root; mergemaster
&prompt.root; rebootΔιαβάστε τις Επιπλέον ΕξηγήσειςΗ διαδικασία που περιγράψαμε παραπάνω είναι μια απλή περίληψη
για να σας βοηθήσει να ξεκινήσετε. Θα πρέπει ωστόσο να διαβάσετε
τις παρακάτω ενότητες για να κατανοήσετε πλήρως κάθε βήμα, ειδικά
αν θέλετε να χρησιμοποιήσετε δικό σας προσαρμοσμένο πυρήνα.Διαβάστε το /usr/src/UPDATINGΠριν κάνετε οτιδήποτε άλλο, διαβάστε το
/usr/src/UPDATING (ή το αντίστοιχο αρχείο, αν
έχετε αποθηκεύσει τον πηγαίο κώδικα σε άλλο κατάλογο). Το αρχείο
αυτό περιέχει σημαντικές πληροφορίες σχετικά με προβλήματα που μπορεί
να συναντήσετε ή ίσως να καθορίζει τη σειρά με την οποία πρέπει να
εκτελεστούν κάποιες εντολές. Αν το αρχείο
UPDATING έρχεται σε σύγκρουση με κάτι που
διαβάσατε εδώ, προτεραιότητα έχει το αρχείο
UPDATING.Η ανάγνωση του αρχείου UPDATING δεν είναι
αποδεκτό υποκατάστατο της συνδρομής στη σωστή λίστα ηλεκτρονικού
ταχυδρομείου, όπως περιγράψαμε προηγουμένως. Οι δύο απαιτήσεις
είναι συμπληρωματικές, δεν αλληλοαναιρούνται.Ελέγξτε το /etc/make.confmake.confΕξετάστε τα αρχεία
/usr/share/examples/etc/make.conf
και
/etc/make.conf. Το πρώτο περιέχει κάποιες
προεπιλεγμένες μεταβλητές (defines), οι περισσότερες από τις οποίες
είναι ως σχόλια. Για να τα χρησιμοποιήσετε όταν μεταγλωττίζετε το
σύστημα σας, προσθέστε τα στο /etc/make.conf.
Να έχετε υπόψη σας, πως οτιδήποτε προσθέτετε στο αρχείο
/etc/make.conf χρησιμοποιείτε επίσης κάθε φορά
που εκτελείτε την εντολή make, έτσι είναι γενικά
καλή ιδέα να βάλετε τιμές που είναι λογικές για το
σύστημα σας.Ένας τυπικός χρήστης θα θέλει πιθανώς να αντιγράψει τις γραμμές
CFLAGS και
NO_PROFILE από το αρχείο
/usr/share/examples/etc/make.conf
στο
/etc/make.conf αφαιρώντας ταυτόχρονα και το
σύμβολο του σχολίου.Εξετάστε και τις άλλες μεταβλητές (COPTFLAGS,
NOPORTDOCS κ.ο.κ.) και αποφασίστε αν σχετίζονται
με το επιθυμητό για σας αποτέλεσμα.Ενημερώστε τα Αρχεία στο /etcΟ κατάλογος /etc περιέχει μεγάλο μέρος των
πληροφοριών ρύθμισης του συστήματος σας, όπως επίσης και scripts που
εκτελούνται κατά την εκκίνηση του συστήματος. Μερικά από τα scripts
αυτά αλλάζουν από έκδοση σε έκδοση του &os;.Ορισμένα από τα αρχεία ρυθμίσεων χρησιμοποιούνται επίσης κατά την
καθημερινή χρήση του συστήματος. Το /etc/group
είναι ένα από αυτά.Έχουν υπάρξει περιπτώσεις στο παρελθόν, όπου το
make installworld ανέμενε από πριν την ύπαρξη
συγκεκριμένων ονομάτων χρηστών (usernames) ή ομάδων (groups). Κατά
τη διαδικασία της αναβάθμισης ήταν αρκετά πιθανό αυτοί οι χρήστες ή
ομάδες να μην υπήρχαν. Αυτό δημιουργούσε προβλήματα στην
διαδικασία. Σε κάποιες περιπτώσεις, το
make buildworld θα ελέγξει αν υπάρχουν αυτοί οι
χρήστες ή ομάδες.Μια τέτοια περίπτωση παρουσιάστηκε όταν προστέθηκε ο χρήστης
smmsp. Η διαδικασία αναβάθμισης αποτύγχανε σε
πολλούς χρήστες, τη στιγμή που το &man.mtree.8; προσπαθούσε να
δημιουργήσει τον κατάλογο
/var/spool/clientmqueue.Η λύση είναι να εκτελέσετε το &man.mergemaster.8; σε κατάσταση
προ-εγκατάστασης, δίνοντας την επιλογή . Αυτή
θα συγκρίνει μόνο τα αρχεία που είναι απαραίτητα για την επιτυχία
εκτέλεσης του buildworld ή του
installworld. Αν η έκδοση του
mergemaster που έχετε είναι παλιά και δεν
υποστηρίζει το , χρησιμοποιήστε την νέα έκδοση
από το δέντρο του πηγαίου κώδικα όταν την εκτελέσετε για πρώτη
φορά:&prompt.root; cd /usr/src/usr.sbin/mergemaster
&prompt.root; ./mergemaster.sh -pΑν αισθάνεστε ιδιαίτερα παρανοϊκός, μπορείτε να ελέγξετε το
σύστημα σας για να δείτε ποια αρχεία ανήκουν στην ομάδα που
μετονομάζετε ή διαγράφετε:&prompt.root; find / -group GID -printΗ παραπάνω εντολή θα σας δείξει όλα τα αρχεία τα οποία ανήκουν
στην ομάδα GID (μπορείτε να δώσετε όνομα
ή αριθμητικό αναγνωριστικό της ομάδας).Μεταβείτε σε Κατάσταση Ενός Χρήστηsingle-user modeΊσως προτιμάτε να μεταγλωττίσετε το σύστημα σε κατάσταση ενός
χρήστη. Εκτός από το προφανές πλεονέκτημα της ελαφρά μεγαλύτερης
ταχύτητας, η επανεγκατάσταση του συστήματος θα επηρεάσει πολλά
σημαντικά αρχεία του συστήματος, όλα τα εκτελέσιμα αρχεία του βασικού
συστήματος, τις βιβλιοθήκες, τα αρχεία include κ.α. Αν τα αλλάξετε
αυτά σε ένα σύστημα που βρίσκεται σε κανονική λειτουργία (και ειδικά
αν υπάρχουν ενεργοί χρήστες την δεδομένη στιγμή), ψάχνετε για
μπελάδες.multi-user modeΜια άλλη μέθοδος είναι να μεταγλωττίσετε το σύστημα σε κατάσταση
κανονικής λειτουργίας, αλλά να μεταβείτε σε κατάσταση ενός χρήστη για
την εγκατάσταση. Αν θέλετε να το κάνετε με αυτό τον τρόπο, απλώς
μην εκτελέσετε τα ακόλουθα βήματα μέχρι το τέλος της μεταγλώττισης.
Μπορείτε να αναβάλλετε τη μετάβαση σε κατάσταση ενός χρήστη μέχρι
να είστε έτοιμοι για το installkernel ή
installworld.Ως υπερχρήστης μπορείτε να εκτελέσετε:&prompt.root; shutdown nowσε ένα σύστημα σε κανονική λειτουργία για να μεταβείτε σε
κατάσταση ενός χρήστη.Εναλλακτικά, επανεκκινήστε το σύστημα και στην προτροπή του
φορτωτή εκκίνησης, επιλέξτε single user. Το σύστημα
θα ξεκινήσει σε κατάσταση ενός χρήστη. Στην προτροπή της γραμμής
εντολών θα πρέπει να γράψετε:&prompt.root; fsck -p
&prompt.root; mount -u /
&prompt.root; mount -a -t ufs
&prompt.root; swapon -aΘα γίνει έλεγχος στα συστήματα αρχείων, και προσάρτηση του
/ με δυνατότητα ανάγνωσης/εγγραφής. Έπειτα θα
προσαρτηθούν όλα τα άλλα συστήματα αρχείων UFS τα οποία αναφέρονται
στο /etc/fstab, και θα ενεργοποιηθεί το
swap.Αν το CMOS ρολόι του υπολογιστή σας είναι ρυθμισμένο σε
τοπική ώρα και όχι σε GMT (αυτό είναι αλήθεια αν η έξοδος της
εντολής &man.date.1; δεν δείχνει σωστή ημερομηνία και ώρα), ίσως
χρειαστεί να εκτελέσετε επίσης την παρακάτω εντολή:&prompt.root; adjkerntz -iΜε αυτό τον τρόπο θα βεβαιωθείτε ότι οι τοπικές σας ρυθμίσεις
ώρας έχουν ρυθμιστεί σωστά. Διαφορετικά, μπορεί να συναντήσετε
προβλήματα αργότερα.Διαγράψτε το /usr/objΚαθώς γίνεται η επαναμεταγλώττιση, τμήματα του συστήματος
τοποθετούνται από προεπιλογή σε υποκαταλόγους του
/usr/obj. Οι υποκατάλογοι αυτοί αντιγράφουν τη
δομή που ακολουθείται στο /usr/src.Μπορείτε να επιταχύνετε τη διαδικασία του
make buildworld και επίσης να γλυτώσετε από κάποια
πιθανά προβλήματα, αν διαγράψετε και αυτό τον κατάλογο.Κάποια αρχεία σε υποκαταλόγους του /usr/obj
μπορεί να έχουν χαρακτηριστεί ως immutable μέσω του αντίστοιχου flag
(για περισσότερες λεπτομέρειες δείτε το &man.chflags.1;). Πριν
διαγράψετε αυτά τα αρχεία, θα πρέπει πρώτα να καταργήσετε αυτό το
flag.&prompt.root; cd /usr/obj
&prompt.root; chflags -R noschg *
&prompt.root; rm -rf *Επαναμεταγλωττίστε το Βασικό ΣύστημαΑποθηκεύστε την ΈξοδοΚαθώς εκτελείται η &man.make.1;, είναι καλή ιδέα η έξοδος της
να αποθηκεύεται σε κάποιο άλλο αρχείο. Αν κάτι πάει στραβά, θα
έχετε ένα αντίγραφο του μηνύματος λάθους. Αν και αυτό ίσως δεν σας
βοηθήσει να βρείτε τι πήγε στραβά, μπορεί να διευκολύνει άλλους αν
στείλετε το μήνυμα σας σε μια από τις λίστες ηλεκτρονικού
ταχυδρομείου του &os;.Ο ευκολότερος τρόπος για να γίνει αυτό, είναι χρησιμοποιώντας
την εντολή &man.script.1; με μια παράμετρο που να καθορίζει το όνομα
του αρχείου στο οποίο θα αποθηκευτεί η έξοδος. Θα πρέπει να
το εκτελέσετε αμέσως πριν ξεκινήσετε την μεταγλώττιση του βασικού
συστήματος, και να γράψετε exit μόλις
η διαδικασία ολοκληρωθεί.&prompt.root; script /var/tmp/mw.out
Script started, output file is /var/tmp/mw.out
&prompt.root; make TARGET… μεταγλώττιση, μεταγλώττιση, μεταγλώττιση …
&prompt.root; exit
Script done, …Αν αποφασίσετε να αποθηκεύσετε την έξοδο,
μη χρησιμοποιήσετε για αυτό το σκοπό τον
κατάλογο /tmp. Τα περιεχόμενα αυτού του
καταλόγου πιθανώς να διαγραφούν την επόμενη φορά που θα εκκινήσετε
το σύστημα σας. Ένας καλύτερος κατάλογος για την αποθήκευση του
είναι ο /var/tmp (όπως στο προηγούμενο
παράδειγμα) ή ο προσωπικός κατάλογος του
root.Μεταγλωττίστε το Βασικό ΣύστημαΘα πρέπει να βρίσκεστε στον κατάλογο
/usr/src:&prompt.root; cd /usr/src(εκτός αν φυσικά έχετε αποθηκεύσει τον πηγαίο κώδικα σε κάποιο
άλλο κατάλογο, οπότε απλώς μετακινηθείτε σε αυτόν).makeΓια να επαναμεταγλωττίσετε το βασικό σύστημα, χρησιμοποιήστε
την εντολή &man.make.1;. Η εντολή αυτή διαβάζει τις σχετικές
οδηγίες από το αρχείο Makefile, το οποίο
περιγράφει με ποιο τρόπο πρέπει να μεταγλωττιστούν τα προγράμματα
από τα οποία αποτελείται το &os;, τη σειρά με την οποία πρέπει να
γίνει η μεταγλώττιση κ.ο.κ.Η γενική μορφή της εντολής που θα πληκτρολογήσετε είναι η
παρακάτω:&prompt.root; make -x -DVARIABLEtargetΣτο παράδειγμα αυτό, το
αντιπροσωπεύει μια
επιλογή που θέλετε να δώσετε στην &man.make.1;. Δείτε την σελίδα
manual του &man.make.1; για παραδείγματα δυνατών επιλογών.Η επιλογή
περνάει μια μεταβλητή στο Makefile.
Η συμπεριφορά του Makefile ελέγχεται από
τέτοιου είδους μεταβλητές. Πρόκειται για τις ίδιες μεταβλητές που
καθορίζονται και στο /etc/make.conf, και αυτός
είναι ένας ακόμα τρόπος καθορισμού τους.&prompt.root; make -DNO_PROFILE targetΤο παραπάνω δείχνει ένα επιπλέον τρόπο να καθορίσετε ότι δεν
θέλετε να μεταγλωττιστούν οι βιβλιοθήκες με πληροφορίες profiling,
και αντιστοιχεί με την παρακάτω γραμμή στο
/etc/make.conf:NO_PROFILE= true # Avoid compiling profiled librariesΤο target δηλώνει στο &man.make.1;
τι θέλετε να κάνετε. Σε κάθε Makefile ορίζεται
ένας αριθμός διαφορετικών targets, και η επιλογή που
θα κάνετε, καθορίζει τι ακριβώς θα γίνει.Κάποια από τα targets που καθορίζονται στο
Makefile, δεν προορίζονται για άμεση εκτέλεση
από το χρήστη. Αντί για αυτό, χρησιμοποιούνται από τη διαδικασία
μεταγλώττισης για να μοιραστεί ο αριθμός των βημάτων που απαιτούνται
για τη μεταγλώττιση του συστήματος, σε ένα αριθμό
υπo-βημάτων.Στις περισσότερες περιπτώσεις δεν θα χρειαστεί να δώσετε καμία
παράμετρο στο &man.make.1;, και έτσι η εντολή σας θα μοιάζει με την
παρακάτω:&prompt.root; make targetΌπου το target θα είναι μια από τις
πολλές επιλογές μεταγλώττισης. Το πρώτο target θα πρέπει πάντα να
είναι το buildworld.Όπως εννοείται και από το όνομα, το
buildworld μεταγλωττίζει ένα πλήρες δέντρο
μέσα στον κατάλογο /usr/obj, ενώ το
installworld, εγκαθιστά αυτό το δέντρο στο
τρέχον μηχάνημα.Η ύπαρξη διαφορετικών επιλογών, είναι χρήσιμη για δύο λόγους.
Πρώτα από όλα, σας επιτρέπει να εκτελέσετε τη διαδικασία
μεταγλώττισης με ασφάλεια, γνωρίζοντας ότι δεν πρόκειται να
επηρεαστεί κανένα τμήμα του τρέχοντος συστήματος σας. Η διαδικασία
μεταγλώττισης είναι self hosted, απομονωμένη από την
υπόλοιπη λειτουργία του μηχανήματος. Μπορείτε έτσι να εκτελέσετε
το buildworld σε ένα μηχάνημα που βρίσκεται
σε κανονική λειτουργία (πολλαπλών χρηστών) χωρίς να υπάρχει φόβος
παρενεργειών. Ωστόσο, συνίσταται να εκτελέσετε το
installworld σε κατάσταση λειτουργίας
ενός χρήστη.Ο δεύτερος λόγος είναι ότι σας επιτρέπει να χρησιμοποιήσετε
προσαρτήσεις NFS για να αναβαθμίσετε πολλά μηχανήματα του δικτύου
σας. Αν έχετε τρία μηχανήματα, τα
A, B και C
τα οποία θέλετε να αναβαθμίσετε, εκτελέστε το
make buildworld και το
make installworld στο μηχάνημα
A. Το B και το
C μπορούν να προσαρτήσουν τον κατάλογο
/usr/src και τον
/usr/obj από τον A μέσω NFS,
και έπειτα μπορείτε να εκτελέσετε το
make installworld για να εγκαταστήσετε το
έτοιμο πλέον σύστημα στον B και
C.Αν και υπάρχει ακόμα το target world,
δεν συνίσταται πλέον η χρήση του.Εκτελέστε την εντολή:&prompt.root; make buildworldΜπορείτε να καθορίσετε την επιλογή στην
make ώστε να εκτελεστεί σε πολλαπλές διεργασίες.
Αυτό είναι περισσότερο χρήσιμο σε μηχανήματα με πολλούς
επεξεργαστές, ωστόσο καθώς το μεγαλύτερο μέρος της διαδικασίας
μεταγλώττισης καθυστερεί εξαιτίας του σκληρού δίσκου (IO bound)
και όχι της CPU, μπορεί να σας φανεί χρήσιμο ακόμα και σε μηχανήματα
με ένα επεξεργαστή.Σε ένα τυπικό μηχάνημα με μια CPU, θα μπορούσατε να
δώσετε:&prompt.root; make -j4 buildworldΜε την παραπάνω εντολή, το &man.make.1; θα χρησιμοποιεί μέχρι
4 διεργασίες κάθε χρονική στιγμή. Από την εμπειρία που έχουμε
και από ότι αναφέρουν οι χρήστες στις λίστες, φαίνεται ότι η
ρύθμιση αυτή δίνει γενικά την καλύτερη απόδοση.Αν έχετε μηχάνημα με πολλούς επεξεργαστές, και χρησιμοποιείτε
πυρήνα με δυνατότητα SMP, δοκιμάστε τιμές μεταξύ του 6 και του 10
για να δείτε ποια επιταχύνει καλύτερα το αποτέλεσμα.Χρόνος Μεταγλώττισηςrebuilding worldtimingsΟ χρόνος που απαιτείται για την μεταγλώττιση επηρεάζεται από
πολλούς παράγοντες. Ωστόσο, σε σύγχρονα μηχανήματα η διαδικασία
δεν κρατάει συνήθως παραπάνω από μία ή δύο ώρες, όταν γίνεται
μεταγλώττιση του δέντρου &os.stable;, και μάλιστα χωρίς να
χρειάζεται να γίνουν ειδικές ρυθμίσεις ή κόλπα. Το δέντρο
&os.current; χρειάζεται γενικά λίγο περισσότερο χρόνο για να
μεταγλωττιστεί.Μεταγλωττίστε και Εγκαταστήστε Νέο ΠυρήναkernelcompilingΓια να εκμεταλλευθείτε πλήρως το νέο σας σύστημα, θα πρέπει να
επαναμεταγλωττίσετε τον πυρήνα. Αυτό είναι πρακτικά αναγκαίο, καθώς
κάποιες δομές στη μνήμη πιθανώς να έχουν αλλάξει, και έτσι
προγράμματα όπως τα &man.ps.1; και &man.top.1; δεν θα λειτουργούν
σωστά μέχρι να συγχρονίσετε τον πυρήνα με την έκδοση πηγαίου
κώδικα του βασικού συστήματος.Ο απλούστερος και πλέον ασφαλής τρόπος, είναι να μεταγλωττίσετε
και να εγκαταστήσετε ένα πυρήνα βασισμένο στον
GENERIC. Αν και ο GENERIC
μπορεί να μην περιέχει όλες τις απαραίτητες συσκευές για το σύστημα
σας, θα πρέπει να περιέχει ότι χρειάζεται ώστε να ξεκινήσετε ξανά
το σύστημα σας σε κατάσταση λειτουργίας ενός χρήστη. Αυτό είναι ένα
καλό τεστ σωστής λειτουργίας του συστήματος. Μετά την εκκίνηση με
τον GENERIC, και αφού επαληθεύσετε τη σωστή
λειτουργία του συστήματος, μπορείτε να μεταγλωττίσετε ένα νέο
πυρήνα βασισμένο στο δικό σας προσαρμοσμένο αρχείο ρυθμίσεων.Στο &os; είναι σημαντικό να εκτελέσετε το build world πριν μεταγλωττίσετε νέο
πυρήνα.Αν θέλετε να μεταγλωττίσετε νέο πυρήνα, και έχετε ήδη ένα
αρχείο με προσαρμοσμένες ρυθμίσεις, χρησιμοποιήστε απλώς την επιλογή
KERNCONF=MYKERNEL
με τον τρόπο που φαίνεται παρακάτω:&prompt.root; cd /usr/src
&prompt.root; make buildkernel KERNCONF=MYKERNEL
&prompt.root; make installkernel KERNCONF=MYKERNELΣημειώστε ότι αν έχετε ανεβάσει την τιμή του
kern.securelevel πάνω από το 1,
και έχετε θέσει το flag
noschg ή κάποιο αντίστοιχο στο εκτελέσιμο αρχείο
του πυρήνα, μάλλον θα χρειαστεί να μεταβείτε σε κατάσταση λειτουργίας
ενός χρήστη για να χρησιμοποιήσετε το
installkernel. Διαφορετικά, μπορείτε να
εκτελέσετε και τις δύο αυτές εντολές από την κανονική κατάσταση
λειτουργίας (πολλών χρηστών) χωρίς να δημιουργηθούν προβλήματα.
Δείτε τη σελίδα manual του &man.init.8; για λεπτομέρειες σχετικά με
τη ρύθμιση kern.securelevel και τη σελίδα
του &man.chflags.1; για λεπτομέρειες σχετικά με τα διάφορα flags
που χρησιμοποιούνται σε αρχεία.Επανεκκινήστε σε Κατάσταση Λειτουργίας Ενός Χρήστηsingle-user modeΘα πρέπει να επανεκκινήσετε σε κατάσταση λειτουργίας ενός χρήστη
για να επαληθεύσετε τη λειτουργία του νέου πυρήνα. Για το σκοπό
αυτό, χρησιμοποιήστε τις οδηγίες που είδαμε στο
.Εγκαταστήστε τα Νέα Εκτελέσιμα του ΣυστήματοςΑν μεταγλωττίζατε μια αρκετά πρόσφατη έκδοση του &os;, η οποία
διαθέτει το target make buildworld, θα πρέπει
τώρα να χρησιμοποιήσετε το installworld
για να εγκαταστήσετε τα νέα εκτελέσιμα του συστήματος.Εκτελέστε τις παρακάτω εντολές:&prompt.root; cd /usr/src
&prompt.root; make installworldΑν έχετε καθορίσει μεταβλητές στη γραμμή εντολών του
make buildworld θα πρέπει να καθορίσετε τις
ίδιες μεταβλητές και στην γραμμή εντολών του
make installworld. Αυτό δεν είναι απαραίτητα
αλήθεια για άλλες επιλογές. Για παράδειγμα, η επιλογή
δεν πρέπει ποτέ να χρησιμοποιείτε με το
installworld.Για παράδειγμα αν εκτελέσετε:&prompt.root; make -DNO_PROFILE buildworldΘα πρέπει να εγκαταστήσετε το αποτέλεσμα χρησιμοποιώντας:&prompt.root; make -DNO_PROFILE installworldδιαφορετικά το &man.make.1; θα προσπαθήσει να εγκαταστήσει
βιβλιοθήκες με profiling, τις οποίες όμως δεν μεταγλωττίσατε κατά
τη διάρκεια της φάσης make buildworld.Ενημερώστε Όσα Αρχεία δεν Ενημερώθηκαν από το
make installworldΗ επαναμεταγλώττιση του βασικού συστήματος δεν θα ενημερώσει
ορισμένους καταλόγους (ειδικότερα τους
/etc, /var και
/usr) με τα νέα ή αλλαγμένα αρχεία
ρυθμίσεων.Ο απλούστερος τρόπος για να ενημερώσετε τα αρχεία αυτά είναι να
χρησιμοποιήσετε το &man.mergemaster.8;, αν και μπορείτε να το κάνετε
και χειροκίνητα αν προτιμάτε. Άσχετα από τον τρόπο που θα
προτιμήσετε, βεβαιωθείτε ότι έχετε πάρει αντίγραφο ασφαλείας του
/etc σε περίπτωση που κάτι πάει στραβά.TomRhodesΣυνεισφορά του mergemastermergemasterΤο βοηθητικό πρόγραμμα &man.mergemaster.8; είναι ένα Bourne
script το οποίο θα σας βοηθήσει να καθορίσετε τις διαφορές μεταξύ
των εγκατεστημένων στο /etc αρχείων ρυθμίσεων,
και των αντίστοιχων στο δέντρο πηγαίου κώδικα στο
/usr/src/etc. Αυτή είναι και η συνιστώμενη
λύση για να ενημερώσετε τα αρχεία ρυθμίσεων του συστήματος με τυχόν
αλλαγές που έχουν γίνει στον νέο πηγαίο κώδικα.Για να ξεκινήσετε, απλώς γράψτε mergemaster
στην προτροπή της γραμμής εντολών και παρακολουθήστε την καθώς
λειτουργεί. Το mergemaster θα δημιουργήσει ένα
προσωρινό περιβάλλον root, από το / και κάτω,
και θα το γεμίσει με διάφορα αρχεία ρυθμίσεων του συστήματος. Έπειτα
θα γίνει σύγκριση αυτών των αρχείων με τα αντίστοιχα που βρίσκονται
ήδη εγκατεστημένα στο σύστημα σας. Στο σημείο αυτό, θα σας δείξει
τα αρχεία που διαφέρουν με μορφή &man.diff.1;, όπου οι γραμμές που
έχουν τροποποιηθεί ή είναι νέες θα φαίνονται με ένα
, ενώ με το θα φαίνονται οι
γραμμές που είτε αφαιρούνται εντελώς ή που αντικαθίστανται από μια
νέα γραμμή. Δείτε τη σελίδα manual του &man.diff.1; για περισσότερες
πληροφορίες σχετικά με τη σύνταξη του &man.diff.1; και για τον τρόπο
με τον οποίο φαίνονται οι διαφορές μεταξύ των αρχείων.Το &man.mergemaster.8; θα σας δείξει έπειτα κάθε αρχείο που
παρουσιάζει διαφορές, και στο σημείο αυτό θα έχετε την δυνατότητα
είτε να διαγράψετε το νέο αρχείο (το οποίο αναφέρεται ως προσωρινό
αρχείο), είτε να εγκαταστήσετε το προσωρινό αρχείο χωρίς να κάνετε
σε αυτό καμιά αλλαγή, είτε να συγχωνεύσετε τις αλλαγές των δύο
αρχείων, ή τέλος να ξαναδείτε τις διαφορές μέσω της
&man.diff.1;.Αν επιλέξετε να διαγράψετε το προσωρινό αρχείο, το
&man.mergemaster.8; θα καταλάβει ότι επιθυμείτε να διατηρήσετε το
τρέχον αρχείο σας χωρίς αλλαγές, και να διαγράψετε τη νέα έκδοση.
Η επιλογή αυτή γενικά δεν συνίσταται, εκτός αν δεν βλέπετε κανένα
λόγο να αλλάξετε το τρέχον αρχείο. Μπορείτε να δείτε βοήθεια
οποιαδήποτε στιγμή κατά τη διάρκεια της διαδικασίας, πληκτρολογώντας
? στην προτροπή του &man.mergemaster.8;. Αν
αποφασίσετε να παραλείψετε κάποιο αρχείο, αυτό θα εμφανιστεί
ξανά μετά το τέλος όλων των άλλων αρχείων.Αν επιλέξετε να εγκαταστήσετε το προσωρινό αρχείο χωρίς αλλαγές,
αυτό θα αντικαταστήσει το ήδη εγκατεστημένο σας αρχείο. Αυτή είναι
και η καλύτερη επιλογή για τα αρχεία τα οποία δεν έχετε αλλάξει
εσείς χειροκίνητα.Αν επιλέξετε να συγχωνεύσετε τα δύο αρχεία, θα εμφανιστεί ένας
επεξεργαστής κειμένου με τα περιεχόμενα και των δύο αρχείων.
Μπορείτε τώρα να τα συγχωνεύσετε παρατηρώντας ταυτόχρονα και τα δύο
αρχεία δίπλα-δίπλα, και επιλέγοντας τμήματα και από τα δύο για να
δημιουργήσετε την τελική έκδοση. Κατά τη σύγκριση αυτή, μπορείτε να
χρησιμοποιήσετε το πλήκτρο l για να επιλέξετε τα
περιεχόμενα που φαίνονται στην αριστερή πλευρά, ή το
r για τα αντίστοιχα περιεχόμενα στη δεξιά.
Το τελικό αποτέλεσμα θα είναι ένα αρχείο που θα αποτελείται από
τμήματα και των δύο αρχείων, και το οποίο μπορείτε να εγκαταστήσετε.
Η επιλογή αυτή χρησιμοποιείται συνήθως για αρχεία των οποίων το
περιεχόμενο έχει μεταβληθεί από το χρήστη.Αν επιλέξετε να δείτε ξανά τις διαφορές μέσω της &man.diff.1;,
αυτές θα εμφανιστούν ακριβώς όπως έγινε και πριν
σας ρωτήσει το &man.mergemaster.8; να επιλέξετε τι θέλετε να κάνετε
με το αρχείο.Μόλις ολοκληρωθεί η λειτουργία του &man.mergemaster.8; στα αρχεία
συστήματος, θα σας ρωτήσει για άλλες επιλογές.
Το &man.mergemaster.8; ίσως σας ρωτήσει αν θέλετε να αναδημιουργήσετε
το αρχείο των κωδικών (password file), και θα τελειώσει δίνοντας σας
την επιλογή να διαγράψετε τυχόν προσωρινά αρχεία που δημιουργήθηκαν
κατά την διαδικασία.Χειροκίνητη ΕνημέρωσηΑν επιθυμείτε να κάνετε την ενημέρωση χειροκίνητα, δεν μπορείτε
απλώς να αντιγράψετε τα αρχεία από τον κατάλογο
/usr/src/etc στον /etc και
να περιμένετε ότι το σύστημα σας θα λειτουργήσει σωστά. Κάποια από
αυτά τα αρχεία θα πρέπει να εγκατασταθούν πρώτα. Αυτό
συμβαίνει επειδή ο κατάλογος /usr/src/etcδεν είναι κανονικό αντίγραφο του
/etc. Επιπρόσθετα, υπάρχουν αρχεία τα οποία
πρέπει να βρίσκονται στον κατάλογο /etc, αλλά
δεν υπάρχουν στον /usr/src/etc.Αν χρησιμοποιείτε το &man.mergemaster.8; (όπως και συνίσταται),
μπορείτε να διαβάσετε κατευθείαν την επόμενη ενότητα.Ο απλούστερος τρόπος να το κάνετε αυτό χειροκίνητα, είναι να
εγκαταστήσετε τα αρχεία σε ένα νέο κατάλογο, και έπειτα να τα
εξετάσετε ένα-ένα ψάχνοντας για τις αλλαγές.Κρατήστε Ένα Αντίγραφο Ασφαλείας του Καταλόγου
/etcΑν και θεωρητικά, τίποτα δεν πρόκειται να πειράξει αυτό τον
κατάλογο αυτόματα, είναι πάντα καλύτερα να είμαστε σίγουροι.
Για το λόγο αυτό, αντιγράψτε τον υπάρχοντα κατάλογο
/etc σε κάποιο ασφαλές μέρος. Χρησιμοποιήστε
μια εντολή όπως η παρακάτω:&prompt.root; cp -Rp /etc /etc.oldΗ επιλογή πραγματοποιεί αναδρομική
αντιγραφή, ενώ η διατηρεί τα δικαιώματα, την
ιδιοκτησία, τις ημερομηνίες των αρχείων, κ.ο.κ.θα πρέπει να δημιουργήσετε μια ψευτο-δομή καταλόγων για να
εγκαταστήσετε το νέο κατάλογο /etc και άλλα
αρχεία. Μια λογική επιλογή είναι ο κατάλογος
/var/tmp/root, και κάτω από αυτόν, θα πρέπει
επίσης να δημιουργήσετε και μια ολόκληρη σειρά από τους υποκαταλόγους
που απαιτούνται.&prompt.root; mkdir /var/tmp/root
&prompt.root; cd /usr/src/etc
&prompt.root; make DESTDIR=/var/tmp/root distrib-dirs distributionΟι παραπάνω εντολές θα δημιουργήσουν την απαιτούμενη δομή
καταλόγων και θα εγκαταστήσουν τα αρχεία. Μεγάλο μέρος των
υποκαταλόγων που έχουν δημιουργηθεί κάτω από τον
/var/tmp/root είναι άδειοι, και πρέπει να
διαγραφούν. Ο απλούστερος τρόπος για να γίνει αυτό, φαίνεται
παρακάτω:&prompt.root; cd /var/tmp/root
&prompt.root; find -d . -type d | xargs rmdir 2>/dev/nullΑυτό θα διαγράψει όλους τους άδειους υποκαταλόγους. (Η έξοδος
σφάλματος ανακατευθύνεται στο /dev/null ώστε
να μην εμφανίζονται στην οθόνη προειδοποιήσεις για καταλόγους που
δεν είναι άδειοι.)Τώρα, ο /var/tmp/root περιέχει όλα τα αρχεία
που θα πρέπει να τοποθετηθούν σε κατάλληλες θέσεις κάτω από τον
/. Θα πρέπει τώρα να διατρέξετε καθένα από
αυτά τα αρχεία, και να καθορίσετε πως καθένα από αυτά διαφέρει από
το αντίστοιχο υπάρχον (εγκατεστημένο) αρχείο.Σημειώστε ότι κάποια από τα αρχεία τα οποία έχουν
εγκατασταθεί στον /var/tmp/root έχουν μια
αρχική .. Τη στιγμή που γράφονται αυτές οι γραμμές,
τα μόνα αρχεία στα οποία συμβαίνει αυτό είναι τα αρχεία εκκίνησης
του κελύφους στον κατάλογο /var/tmp/root/ και
/var/tmp/root/root/, αν και μπορεί να υπάρχουν
και άλλα (ανάλογα με το πότε διαβάζετε το κείμενο). Βεβαιωθείτε ότι
χρησιμοποιείτε την εντολή ls -a για να τα δείτε
όλα.Ο απλούστερος τρόπος για να συγκρίνετε δύο αρχεία, είναι να
χρησιμοποιήσετε την εντολή &man.diff.1;:&prompt.root; diff /etc/shells /var/tmp/root/etc/shellsΗ παραπάνω εντολή θα σας δείξει τις διαφορές μεταξύ του αρχείου
/etc/shells και του νέου αρχείου
/var/tmp/root/etc/shells. Χρησιμοποιήστε τις
διαφορές αυτές για να αποφασίσετε αν θα πρέπει να συγχωνεύσετε τις
αλλαγές που έχετε κάνει, ή απλώς να αντιγράψετε το παλιό σας αρχείο
πάνω από το νέο.Προσθέστε την Ημερομηνία στο Όνομα του Νέου Root Καταλόγου,
(/var/tmp/root) Ώστε να Μπορείτε Εύκολα να
Συγκρίνετε Διαφορετικές Εκδόσεις Μεταξύ τουςΑν μεταγλωττίζετε συχνά το βασικό σύστημα, θα πρέπει επίσης
να ενημερώνετε συχνά τον κατάλογο /etc, το
οποίο μπορεί να είναι ενοχλητικό.Μπορείτε να επιταχύνετε αυτή τη διαδικασία, τηρώντας ένα
αντίγραφο του τελευταίου σετ αλλαγμένων αρχείων τα οποία
συγχωνεύσατε στον κατάλογο /etc. Η παρακάτω
διαδικασία θα σας δώσει μια ιδέα για το πως μπορεί να
γίνει αυτό:Μεταγλωττίστε το βασικό σύστημα όπως κάνετε συνήθως. Όταν
θέλετε να ενημερώσετε τον /etc και τους
άλλους καταλόγους, δώστε στον κατάλογο προορισμού ένα όνομα
βασισμένο στην τρέχουσα ημερομηνία. Αν το κάνατε αυτό
στις 14 Φεβρουαρίου 1998, θα γράφατε κάτι σαν το
παρακάτω:&prompt.root; mkdir /var/tmp/root-19980214
&prompt.root; cd /usr/src/etc
&prompt.root; make DESTDIR=/var/tmp/root-19980214 \
distrib-dirs distributionΣυγχωνεύστε τις αλλαγές από αυτό τον κατάλογο, με τον τρόπο
που περιγράψαμε παραπάνω.Μην διαγράψετε τον κατάλογο
/var/tmp/root-19980214 όταν τελειώσετε
με την παραπάνω διαδικασία.Όταν κατεβάσετε την τελευταία έκδοση του πηγαίου κώδικα και
τον μεταγλωττίσετε ξανά, ακολουθήστε το βήμα 1. Αυτό θα σας
δώσει ένα κατάλογο που μπορεί να ονομάζεται
/var/tmp/root-19980221 (αν ανάμεσα στις
δύο μεταγλωττίσεις παρεμβάλλεται διάστημα μιας
εβδομάδας).Μπορείτε τώρα να δείτε τις διαφορές που υπάρχουν ανάμεσα
στις δύο εβδομάδες, χρησιμοποιώντας την εντολή
&man.diff.1; σε αναδρομική λειτουργία για να δημιουργήσετε τις
διαφορές μεταξύ των δύο καταλόγων:&prompt.root; cd /var/tmp
&prompt.root; diff -r root-19980214 root-19980221Τυπικά, αυτό το σετ αλλαγών θα είναι πολύ μικρότερο από
αυτό μεταξύ του /var/tmp/root-19980221/etc
και του /etc. Καθώς αυτό το σετ αλλαγών
είναι μικρότερο, είναι και πιο εύκολο να εφαρμόσετε αυτές
τις αλλαγές στον κατάλογο /etc.Μπορείτε τώρα να διαγράψετε τον παλιότερο από τους δύο
καταλόγους /var/tmp/root-*:&prompt.root; rm -rf /var/tmp/root-19980214Επαναλάβετε αυτή τη διαδικασία κάθε φορά που θέλετε να
συγχωνεύσετε τις αλλαγές στον κατάλογο
/etc.Μπορείτε επίσης να χρησιμοποιήσετε την εντολή &man.date.1; για
να αυτοματοποιήσετε την δημιουργία των ονομάτων καταλόγων:&prompt.root; mkdir /var/tmp/root-`date "+%Y%m%d"`ΕπανεκκίνησηΗ διαδικασία έχει πλέον ολοκληρωθεί. Αφού επαληθεύσετε ότι όλα
βρίσκονται στις σωστές θέσεις, μπορείτε να επανεκκινήσετε το σύστημα.
Μια απλή εντολή &man.shutdown.8; είναι επαρκής:&prompt.root; shutdown -r nowΟλοκλήρωσηΈχετε πλέον αναβαθμίσει το &os; σύστημα σας. Συγχαρητήρια.Αν τα πράγματα δεν πήγαν εντελώς σωστά, είναι εύκολο να
μεταγλωττίσετε ξανά οποιοδήποτε τμήμα του συστήματος.
Για παράδειγμα, αν διαγράψετε κατά λάθος το
/etc/magic ως μέρος μιας αναβάθμισης ή
συγχώνευσης του /etc, η εντολή &man.file.1;
θα σταματήσει να λειτουργεί. Στην περίπτωση αυτή, η διόρθωση είναι
να εκτελέσετε:&prompt.root; cd /usr/src/usr.bin/file
&prompt.root; make all installΕρωτήσειςΠρέπει να μεταγλωττίσω ξανά ολόκληρο το βασικό σύστημα σε
κάθε αλλαγή;Δεν υπάρχει εύκολη απάντηση σε αυτό το ερώτημα, καθώς
εξαρτάται από τη φύση της αλλαγής. Για παράδειγμα, αν
εκτελέσετε το CVSup, και δείτε ότι
ενημερώθηκαν τα παρακάτω αρχεία:src/games/cribbage/instr.csrc/games/sail/pl_main.csrc/release/sysinstall/config.csrc/release/sysinstall/media.csrc/share/mk/bsd.port.mkΤο πιθανότερο είναι ότι δεν χρειάζεται να μεταγλωττίσετε
ξανά όλο το βασικό σύστημα. Μπορείτε απλώς να μεταβείτε στους
σχετικούς υποκαταλόγους και να εκτελέσετε το
make all install, και θα έχετε τελειώσει.
Αν όμως υπάρχει κάποια σημαντική αλλαγή, για παράδειγμα το
src/lib/libc/stdlib, θα πρέπει είτε να
επαναμεταγλωττίσετε το βασικό σύστημα, ή τουλάχιστον αυτά τα
κομμάτια τα οποία είναι στατικά συνδεδεμένα (όπως και οτιδήποτε
άλλο έχετε προσθέσει εσείς και το οποίο είναι στατικά
συνδεδεμένο).Τελικά, η απόφαση είναι δική σας. Μπορεί να είστε
ικανοποιημένος αν μεταγλωττίζετε το βασικό σύστημα κάθε δύο
βδομάδες, αφήνοντας τις αλλαγές να συγκεντρωθούν στη διάρκεια
αυτού του διαστήματος. Ή μπορεί να θέλετε να μεταγλωττίσετε
μόνο τις αλλαγές, αν έχετε την πεποίθηση ότι μπορείτε να
εντοπίσετε όλες τις εξαρτήσεις τους.Και φυσικά, όλα αυτά εξαρτώνται από το πόσο συχνά θέλετε να
ενημερώνετε το σύστημα σας, και από το αν ακολουθείτε το
&os.stable; ή το &os.current;.Η μεταγλώττιση μου απέτυχε με πλήθος μηνυμάτων signal 11
(ή λάθη με άλλα σήματα). Τι έχει συμβεί;signal 11Αυτό συνήθως δείχνει προβλήματα υλικού. Η διαδικασία
μεταγλώττισης του βασικού συστήματος είναι ένας αποτελεσματικός
τρόπος να δοκιμάσετε το υλικό σας στα όρια του, και συχνά θα
δείξει προβλήματα που σχετίζονται με τη μνήμη. Το πιο σύνηθες
σύμπτωμα, είναι η απότομη διακοπή της μεταγλώττισης, με τον
μεταγλωττιστή να φαίνεται ότι έχει λάβει κάποιο μυστηριώδες
σήμα.Ένα σίγουρο σημάδι για το παραπάνω, είναι να επανεκκινήσετε
τη διαδικασία, και αυτή να σταματήσει σε διαφορετικό
σημείο.Στην περίπτωση αυτή, δεν υπάρχουν και πολλά που μπορείτε να
κάνετε, εκτός από το να αρχίσετε να αλλάζετε εξαρτήματα στο
μηχάνημα σας μέχρι να βρείτε αυτό που είναι υπαίτιο.Μπορώ να διαγράψω το /usr/obj όταν
τελειώσω;Η σύντομη απάντηση είναι ναι.Το /usr/obj περιέχει όλα τα
αντικειμενικά αρχεία που παράγονται κατά τη διάρκεια της
μεταγλώττισης. Συνήθως, ένα από τα πρώτα βήματα στην
διαδικασία make buildworld είναι η διαγραφή
αυτού του καταλόγου και η αναδημιουργία του. Στην περίπτωση
αυτή, το να κρατήσετε τον κατάλογο
/usr/obj αφού έχετε τελειώσει, δεν έχει
και πολύ νόημα, ενώ αν τον σβήσετε θα κερδίσετε ένα μεγάλο
κομμάτι ελεύθερου χώρου (την παρούσα στιγμή περίπου
340 MB).Όμως, αν ξέρετε τι κάνετε, μπορείτε να οδηγήσετε το
make buildworld να παραλείψει αυτό το βήμα.
Αυτό θα επιταχύνει ιδιαίτερα τις νέες μεταγλωττίσεις, καθώς
τα περισσότερα τμήματα του πηγαίου κώδικα δεν θα χρειάζονται
ξανά μεταγλώττιση. Το μειονέκτημα είναι ότι ορισμένες φορές
εμφανίζονται προβλήματα που έχουν σχέση με όχι και τόσο
εμφανείς εξαρτήσεις, και μπορεί να οδηγήσουν σε μυστηριώδη
αποτυχία της μεταγλώττισης. Τέτοια προβλήματα συχνά δημιουργούν
θόρυβο στις λίστες του &os;, όταν κάποιος χρήστης
παραπονιέται ότι η μεταγλώττιση του αποτυγχάνει, χωρίς να
αντιλαμβάνεται ότι αυτό οφείλεται στην προσπάθεια του να
συντομεύσει την διαδικασία.Μπορώ να συνεχίσω μια μεταγλώττιση που διέκοψα;Αυτό εξαρτάται από το πόσο έχετε προχωρήσει στη διαδικασία
μέχρι τη στιγμή που βρήκατε το πρόβλημα.Σε γενικές γραμμές (και αυτός δεν
είναι κανόνας που ισχύει πάντα), η διεργασία του
make buildworld μεταγλωττίζει νέα αντίγραφα
βασικών εργαλείων (όπως τα &man.gcc.1;, και &man.make.1;) καθώς
και των βιβλιοθηκών συστήματος. Έπειτα εγκαθιστώνται αυτά
τα εργαλεία και οι βιβλιοθήκες. Τα νέα εργαλεία και
βιβλιοθήκες χρησιμοποιούνται έπειτα για να επαναμεταγλωττίσουν
τους εαυτούς τους, και εγκαθίστανται ξανά. Ολόκληρο το σύστημα
(το οποίο τώρα περιλαμβάνει και τα συνηθισμένα προγράμματα
χρήστη όπως το &man.ls.1; ή το &man.grep.1;)
επαναμεταγλωττίζεται χρησιμοποιώντας τα νέα αρχεία του
συστήματος.Αν βρίσκεστε στο τελευταίο στάδιο, το οποίο θα το γνωρίζετε
κοιτάζοντας την έξοδο που έχετε αποθηκεύσει, είναι σχετικά
ασφαλές να κάνετε:… fix the problem …
&prompt.root; cd /usr/src
&prompt.root; make -DNO_CLEAN allΜε τον τρόπο αυτό δεν θα αναιρέσετε την εργασία που έχει
γίνει από το προηγούμενο
make buildworld.Αν δείτε το μήνυμα:--------------------------------------------------------------
Building everything..
--------------------------------------------------------------στην έξοδο της εντολής make buildworld,
τότε είναι μάλλον ασφαλές να προχωρήσετε με αυτό τον
τρόπο.Αν δεν δείτε αυτό το μήνυμα, ή αν δεν είστε σίγουρος, τότε
είναι καλύτερα να κάνετε πλήρη μεταγλώττιση παρά να μετανιώνετε
αργότερα.Πως μπορώ να επιταχύνω τη μεταγλώττιση του βασικού
συστήματος;Εκτελέστε την σε κατάσταση ενός χρήστη.Βάλτε τους καταλόγους /usr/src
και /usr/obj σε διαφορετικά συστήματα
αρχείων τα οποία βρίσκονται και σε διαφορετικούς φυσικούς
δίσκους. Αν είναι δυνατόν, βάλτε αυτούς τους δίσκους σε
χωριστούς ελεγκτές.Ακόμα καλύτερα, μοιράστε αυτά τα συστήματα αρχείων
σε πολλαπλούς δίσκους, χρησιμοποιώντας το πρόγραμμα
οδήγησης &man.ccd.4; (concatenated disk driver, οδήγησης
συνενωμένων δίσκων).Απενεργοποιήστε το profiling (θέστε την μεταβλητή
NO_PROFILE=true στο
/etc/make.conf). Είναι σχεδόν σίγουρο
ότι δεν το χρειάζεστε.Στο αρχείο /etc/make.conf, θέστε
το CFLAGS σε κάτι όπως
. Η βελτιστοποίηση
χρειάζεται αρκετά περισσότερο χρόνο,
και η διαφορά απόδοσης μεταξύ
και είναι συνήθως
αμελητέα. Το επιτρέπει στον
μεταγλωττιστή να χρησιμοποιήσει pipes για επικοινωνία αντί
για προσωρινά αρχεία. Αυτό καταναλώνει περισσότερη μνήμη,
αλλά χρησιμοποιεί λιγότερο το σκληρό δίσκο.Χρησιμοποιήστε την επιλογή
στο
&man.make.1; ώστε να εκτελούνται παράλληλα πολλαπλές
διεργασίες μεταγλώττισης. Αυτό συνήθως βοηθάει ακόμα και
σε περίπτωση που έχετε μηχάνημα με ένα επεξεργαστή.Μπορείτε να προσαρτήσετε (ή να επαναπροσαρτήσετε) το
σύστημα αρχείων στο οποίο είναι αποθηκευμένο το
/usr/src με την επιλογή
. Αυτό αποτρέπει την καταγραφή
ημερομηνίας / ώρας πρόσβασης στο σύστημα αρχείων. Κατά πάσα
πιθανότητα, δεν χρειάζεστε αυτή την πληροφορία έτσι και
αλλιώς.&prompt.root; mount -u -o noatime /usr/srcΤο παράδειγμα προϋποθέτει ότι έχετε το
/usr/src στο δικό του σύστημα
αρχείων. Αν αυτό δεν συμβαίνει (αν είναι μέρος του
/usr για παράδειγμα) θα χρειαστεί
να χρησιμοποιήσετε αυτό το σημείο προσάρτησης, και όχι
το /usr/src.Μπορείτε να προσαρτήσετε (ή να επαναπροσαρτήσετε) το
σύστημα αρχείων που περιέχει το
/usr/obj με την επιλογή
. Με τον τρόπο αυτό, οι εγγραφές στο
δίσκο θα γίνονται ασύγχρονα. Με άλλα λόγια, οι εγγραφές
φαίνεται ότι ολοκληρώνονται άμεσα, ενώ η πραγματική εγγραφή
στο δίσκο γίνεται λίγα δευτερόλεπτα αργότερα. Αυτό
επιτρέπει την ομαδοποίηση των εγγραφών, το οποίο μπορεί να
προσφέρει δραματική βελτίωση απόδοσης.Να έχετε υπόψιν σας ότι αυτή η επιλογή μπορεί να
κάνει το σύστημα αρχείων σας πολύ πιο ευαίσθητο. Με την
επιλογή αυτή, υπάρχει αυξημένη πιθανότητα το σύστημα
αρχείων να βρεθεί σε μη
επισκευάσιμη κατάσταση αν υπάρξει διακοπή
ρεύματος.Αν το σύστημα αρχείων περιέχει μόνο το
/usr/obj, το παραπάνω δεν είναι
πρόβλημα. Αν ωστόσο έχετε και άλλα πολύτιμα δεδομένα
στο ίδιο σύστημα αρχείων, σιγουρευτείτε ότι έχετε
ενημερωμένα αντίγραφα ασφαλείας πριν ενεργοποιήσετε αυτή
την επιλογή.&prompt.root; mount -u -o async /usr/objΌπως και προηγουμένως, αν το
/usr/obj δεν είναι σύστημα αρχείων
από μόνο του, αντικαταστήστε το στο παράδειγμα με το
όνομα του πραγματικού σημείου προσάρτησης.Τι να κάνω αν κάτι πάει στραβά;Σιγουρευτείτε ότι το περιβάλλον σας δεν έχει υπολείμματα
από προηγούμενες μεταγλωττίσεις. Αυτό είναι αρκετά απλό.&prompt.root; chflags -R noschg /usr/obj/usr
&prompt.root; rm -rf /usr/obj/usr
&prompt.root; cd /usr/src
&prompt.root; make cleandir
&prompt.root; make cleandirΝαι, θα πρέπει να εκτελέσετε το
make cleandir δύο φορές.Επανεκκινήστε έπειτα όλη τη διαδικασία, ξεκινώντας με το
make buildworld.Αν έχετε ακόμα προβλήματα, στείλτε το μήνυμα λάθους και την
έξοδο του uname -a στην &a.questions;. Να
είστε προετοιμασμένοι να απαντήσετε επιπλέον ερωτήσεις σχετικά
με την εγκατάσταση σας!MikeMeyerΣυνεισφορά του Διαδικασία για Πολλαπλά ΜηχανήματαNFSinstalling multiple machinesΑν έχετε πολλαπλά μηχανήματα στα οποία πρόκειται να χρησιμοποιήσετε
το ίδιο δέντρο πηγαίου κώδικα, είναι σπατάλη πόρων (δίσκου, δικτύου και
επεξεργαστή) να επαναλαμβάνετε σε όλα τη διαδικασία ανάκτησης και
μεταγλώττισης. Η λύση είναι να ορίσετε ένα μηχάνημα να εκτελεί το
μεγαλύτερο μέρος της εργασίας, ενώ τα υπόλοιπα θα μπορούν να την
ανακτούν μέσω NFS. Στην ενότητα αυτή θα παρουσιάσουμε ένα τρόπο με
τον οποίο μπορεί να γίνει αυτό.ΠροκαταρκτικάΠρώτα από όλα, αναγνωρίστε το σετ των μηχανημάτων στα οποία
σκοπεύετε να χρησιμοποιήσετε τα ίδια εκτελέσιμα. Θα ονομάσουμε αυτή
την ομάδα σετ μεταγλώττισης. Κάθε μηχάνημα
μπορεί να έχει δικό του προσαρμοσμένο πυρήνα, αλλά θα έχουν όλα τα
ίδια εκτελέσιμα userland. Από το σετ αυτό, επιλέξτε ένα μηχάνημα το
οποίο θα γίνει το μηχάνημα μεταγλώττισης.
Θα είναι το μηχάνημα στο οποίο θα μεταγλωττίζεται το βασικό σύστημα
και ο πυρήνας. Το ιδανικό είναι να επιλέξετε ένα γρήγορο μηχάνημα,
στο οποίο να υπάρχει αρκετός ελεύθερος χρόνος στον επεξεργαστή για να
εκτελεί τα make buildworld και
make buildkernel. Θα πρέπει επίσης να επιλέξετε
ένα μηχάνημα δοκιμών στο οποίο θα δοκιμάζετε τις
ενημερώσεις λογισμικού πριν τις μεταφέρετε στην παραγωγή. Μπορεί να
είναι και το ίδιο το μηχάνημα μεταγλώττισης, αλλά αυτό δεν είναι
απαραίτητο.Όλα τα μηχανήματα στο σετ μεταγλώττισης χρειάζεται να
προσαρτήσουν το /usr/obj και το
/usr/src από το ίδιο μηχάνημα, και στο ίδιο
σημείο προσάρτησης. Το ιδανικό είναι αυτά τα δύο συστήματα αρχείων
να βρίσκονται σε διαφορετικό φυσικό δίσκο στο μηχάνημα μεταγλώττισης,
αλλά μπορείτε να τα προσαρτήσετε μέσω NFS ακόμα και σε αυτό το
μηχάνημα. Αν έχετε πολλαπλά σετ μεταγλώττισης, το
/usr/src θα πρέπει να βρίσκεται σε ένα από τα
μηχανήματα μεταγλώττισης, και να προσαρτάται στα υπόλοιπα μέσω
NFS.Τέλος, βεβαιωθείτε ότι τα αρχεία
/etc/make.conf και
/etc/src.conf σε όλα τα μηχανήματα του σετ
μεταγλώττισης, είναι ίδια με τα αντίστοιχα στο μηχάνημα μεταγλώττισης.
Αυτό σημαίνει ότι το μηχάνημα μεταγλώττισης θα πρέπει να
μεταγλωττίζει όλα τα τμήματα του βασικού συστήματος τα οποία θα
εγκατασταθούν σε κάθε μηχάνημα του σετ. Επίσης, σε κάθε μηχάνημα
στο σετ μεταγλώττισης θα πρέπει να οριστεί το όνομα του δικού του
προσαρμοσμένου πυρήνα μέσω της μεταβλητής
KERNCONF στο /etc/make.conf,
ενώ και το μηχάνημα μεταγλώττισης θα πρέπει να έχει μια λίστα όλων
των άλλων στο KERNCONF, ξεκινώντας από το δικό
του. Το μηχάνημα μεταγλώττισης, θα πρέπει να έχει τα αρχεία ρύθμισης
του πυρήνα όλων των άλλων μηχανημάτων στον κατάλογο
/usr/src/sys/arch/conf
αν πρόκειται να μεταγλωττίζει τους πυρήνες τους.Το Βασικό ΣύστημαΈχοντας πραγματοποιήσει όλα τα παραπάνω, είστε έτοιμος να
μεταγλωττίσετε τα πάντα. Μεταγλωττίστε τον πυρήνα και το βασικό
σύστημα όπως περιγράψαμε στο
χρησιμοποιώντας το μηχάνημα μεταγλώττισης, αλλά μην εγκαταστήσετε
τίποτα. Μετά το τέλος της μεταγλώττισης, χρησιμοποιήστε το μηχάνημα
δοκιμών και εγκαταστήστε τον πυρήνα που μόλις δημιουργήσατε. Αν το
μηχάνημα αυτό προσαρτά το /usr/src και το
/usr/obj μέσω NFS, όταν το επανεκκινήσετε σε
κατάσταση ενός χρήστη, θα χρειαστεί να ενεργοποιήσετε το δίκτυο και
να τα προσαρτήσετε. Ο ευκολότερος τρόπος για αυτό, είναι να
εκκινήσετε σε κατάσταση πολλαπλών χρηστών και έπειτα να εκτελέσετε
shutdown now για να μεταβείτε σε κατάσταση ενός
χρήστη. Μόλις γίνει αυτό, μπορείτε να εγκαταστήσετε τον νέο πυρήνα
και το βασικό σύστημα, και να εκτελέσετε το
mergemaster όπως θα κάνατε συνήθως. Όταν
τελειώσετε, επανεκκινήστε αυτό το μηχάνημα στην κανονική λειτουργία
πολλαπλών χρηστών.Όταν βεβαιωθείτε ότι όλα λειτουργούν σωστά στο μηχάνημα δοκιμών,
χρησιμοποιήστε την ίδια διαδικασία για να εγκαταστήσετε το νέο
λογισμικό σε κάθε ένα από τα υπόλοιπα μηχανήματα του σετ
μεταγλώττισης.PortsΜπορείτε να χρησιμοποιήσετε τις ίδιες ιδέες και για το δέντρο
των ports. Το πρώτο κρίσιμο βήμα είναι να προσαρτήσετε το
/usr/ports από το ίδιο μηχάνημα, σε όλα τα
μηχανήματα του σετ μεταγλώττισης. Μπορείτε έπειτα να ρυθμίσετε το
/etc/make.conf ώστε να διαμοιράζονται τα
distfiles. Θα πρέπει να θέσετε το DISTDIR σε ένα
κοινόχρηστο κατάλογο, στον οποίο θα δώσετε δικαιώματα εγγραφής σε
οποιοδήποτε χρήστη έχετε δηλώσει ως root στο
NFS. Σε κάθε μηχάνημα θα πρέπει επίσης να οριστεί η μεταβλητή
WRKDIRPREFIX ώστε να δείχνει σε ένα τοπικό
κατάλογο. Τέλος, αν σκοπεύετε να μεταγλωττίζετε και να διανέμετε
έτοιμα πακέτα, θα πρέπει να θέσετε την μεταβλητή
PACKAGES σε ένα κατάλογο, όπως κάνατε και με την
DISTDIR.
diff --git a/el_GR.ISO8859-7/books/handbook/desktop/chapter.sgml b/el_GR.ISO8859-7/books/handbook/desktop/chapter.sgml
index 5a28cdedd7..b8d485a7dc 100644
--- a/el_GR.ISO8859-7/books/handbook/desktop/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/desktop/chapter.sgml
@@ -1,1208 +1,1214 @@
ChristopheJunietΣυνεισφορά του Desktop ΕφαρμογέςΣύνοψηΤο &os; μπορεί να εκτελέσει μια ευρεία γκάμα desktop εφαρμογών, όπως
φυλλομετρητές (browsers) και επεξεργαστές κειμένου. Οι περισσότερες από
αυτές είναι διαθέσιμες ως πακέτα (packages) ή μπορούν να εγκατασταθούν
αυτόματα από την Συλλογή των Ports. Πολλοί νέοι χρήστες αναμένουν να
βρουν τέτοιου είδους εφαρμογές στο desktop τους. Το κεφάλαιο αυτό θα
σας δείξει πως να εγκαταστήσετε χωρίς κόπο τις πιο δημοφιλείς desktop
εφαρμογές, είτε από πακέτα είτε από τη Συλλογή των Ports.Σημειώστε ότι όταν εγκαθιστάτε προγράμματα από τη Συλλογή των Ports,
γίνεται μεταγλώττιση από τον πηγαίο κώδικα. Αυτό μπορεί να χρειαστεί
πολύ χρόνο, καθώς εξαρτάται από το πρόγραμμα το οποίο μεταγλωττίζετε και
την υπολογιστική ισχύ του μηχανήματός σας. Αν το χρονικό διάστημα το
οποίο χρειάζεται η μεταγλώττιση είναι απαγορευτικά μεγάλο, μπορείτε να
εγκαταστήσετε τα περισσότερα προγράμματα της Συλλογής των Ports από
προ-μεταγλωττισμένα πακέτα.Καθώς το &os; διαθέτει συμβατότητα με εκτελέσιμα προγράμματα για
Linux, πολλές εφαρμογές που αναπτύχθηκαν αρχικά για το Linux είναι
διαθέσιμες για το desktop σας. Σας συνιστούμε θερμά να διαβάσετε το
πριν εγκαταστήσετε οποιαδήποτε από τις
εφαρμογές Linux. Πολλά από τα ports που χρησιμοποιούν τη συμβατότητα με
Linux έχουν ονόματα που ξεκινούν με linux-. Θυμηθείτε το
όταν ψάχνετε για κάποιο συγκεκριμένο port, για παράδειγμα με την
&man.whereis.1;. Στο κείμενο που ακολουθεί θεωρείται ότι έχετε
ενεργοποιήσει την συμβατότητα με εκτελέσιμα προγράμματα Linux πριν
εγκαταστήσετε οποιαδήποτε από τις εφαρμογές του Linux.Οι κατηγορίες που καλύπτονται από αυτό το κεφάλαιο είναι οι
εξής:Φυλλομετρητές (όπως Firefox,
Opera,
Konqueror)Εφαρμογές γραφείου (όπως
KOffice,
AbiWord,
The GIMP,
OpenOffice.org)Προγράμματα προβολής εγγράφων
(όπως &acrobat.reader;,
gv,
Xpdf,
GQview)Χρηματοοικονομικές εφαρμογές (όπως
GnuCash,
Gnumeric,
Abacus)Πριν διαβάσετε αυτό το κεφάλαιο θα πρέπει:Να ξέρετε πως να εγκαταστήσετε πρόσθετο λογισμικό τρίτου
κατασκευαστή ().Να ξέρετε πως να εγκαταστήσετε πρόσθετο λογισμικό Linux
().Για πληροφορίες σχετικά με την εγκατάσταση πολυμεσικού περιβάλλοντος
διαβάστε το . Αν θέλετε να ρυθμίσετε και να
χρησιμοποιήσετε κάποια υπηρεσία ηλεκτρονικού ταχυδρομείου δείτε
το .Φυλλομετρητές (Browsers)browserswebΤο &os; δεν έχει προεγκατεστημένο κάποιο συγκεκριμένο φυλλομετρητή.
Στον κατάλογο
www
της συλλογής Ports μπορείτε να βρείτε αρκετούς φυλλομετρητές, έτοιμους
για εγκατάσταση. Αν δεν έχετε χρόνο για να μεταγλωττίσετε
ότι χρειάζεστε (ίσως χρειαστείτε αρκετή ώρα), πολλοί
από αυτούς είναι διαθέσιμοι και ως έτοιμα πακέτα.Τα KDE και
GNOME, ως πλήρη περιβάλλοντα εργασίας,
παρέχουν τους δικούς τους φυλλομετρητές HTML. Δείτε το
για περισσότερες πληροφορίες σχετικά με την
εγκατάσταση τους.Αν ενδιαφέρεστε για ελαφρείς (από άποψη κατανάλωσης πόρων)
φυλλομετρητές, δείτε τις ακόλουθες εφαρμογές στη συλλογή των Ports:
www/dillo2,
www/links, ή
www/w3m.Το τμήμα αυτό καλύπτει τις παρακάτω εφαρμογές:Όνομα ΕφαρμογήςΑπαιτούμενοι ΠόροιΕγκατάσταση από PortsΒασικές ΕξαρτήσειςFirefoxμεσαίαβαριάGtk+Operaλίγοι (ελαφριά)ελαφριάΥπάρχουν διαθέσιμες εκδόσεις για &os; και Linux. Η έκδοση
για Linux εξαρτάται από την δυαδική συμβατότητα με Linux (Linux
Binary Compatibility) και το
linux-openmotif.KonquerorμεσαίαβαριάΒιβλιοθήκες KDEFirefoxFirefoxΟ Firefox είναι ένας μοντέρνος,
ελεύθερος, ανοιχτός και σταθερός φυλλομετρητής, ο οποίος είναι πλήρως
προσαρμοσμένος για χρήση στο &os;. Διαθέτει μηχανή απεικόνισης η
οποία εναρμονίζεται πλήρως με τις τυποποιήσεις της HTML, και
δυνατότητες όπως εμφάνιση πολλαπλών σελίδων σε tabs, μπλοκάρισμα
αναδυόμενων παραθύρων (popups), πρόσθετα προγράμματα, βελτιωμένη
ασφάλεια και πολλά ακόμη. Ο Firefox
βασίζεται στον αρχικό πηγαίο κώδικα του
Mozilla.Εγκαταστήστε το πακέτο γράφοντας:&prompt.root; pkg_add -r firefoxΗ παραπάνω εντολή θα εγκαταστήσει τον
- Firefox της σειράς
- 2.X. Αν θέλετε να εγκαταστήσετε τον
- Firefox 3.X,
- γράψτε:
+ Firefox 3.6. Αν θέλετε να εγκαταστήσετε
+ τον Firefox 3.5, γράψτε:
- &prompt.root; pkg_add -r firefox3
+ &prompt.root; pkg_add -r firefox35Μπορείτε επίσης να χρησιμοποιήσετε την Συλλογή των Ports αν
προτιμάτε να μεταγλωττίσετε από τον πηγαίο κώδικα:&prompt.root; cd /usr/ports/www/firefox
&prompt.root; make install clean
- Για τον Firefox
- 3.X, αντικαταστήστε στην παραπάνω εντολή
- τη λέξη firefox με
- firefox3.
+ Για τον Firefox 3.5, αντικαταστήστε
+ στην παραπάνω εντολή τη λέξη firefox με
+ firefox35.Ο Firefox και το Πρόσθετο (plugin) της &java;Σε αυτό και το επόμενο τμήμα, θεωρούμε ότι έχετε ήδη
εγκαταστήσει τον Firefox.
+
+ Τη δεδομένη στιγμή, το πρόσθετο της &java; δεν λειτουργεί με
+ τον Firefox 3.6.To &os; Foundation διαθέτει άδεια από την Sun Microsystems για
την διανομή εκτελέσιμου &os; προγράμματος για το περιβάλλον
Εκτέλεσης της Java (Java Runtime Environment - &jre;) καθώς και για
το περιβάλλον ανάπτυξης της Java (Java Development Kit - &jdk;). Τα
αντίστοιχα εκτελέσιμα πακέτα για το &os; είναι διαθέσιμα στην
τοποθεσία &os;
Foundation.Για να προσθέσετε υποστήριξη &java; στον
Firefox, πρέπει πρώτα να εγκαταστήσετε το
port java/javavmwrapper. Έπειτα,
κατεβάστε το πακέτο Diablo &jre; από την
τοποθεσία ,
και εγκαταστήστε το με την &man.pkg.add.1;.Ξεκινήστε το φυλλομετρητή σας, γράψτε
about:plugins στη γραμμή διευθύνσεων και πιέστε
Enter. Θα δείτε μια σελίδα που αναφέρεται στα
εγκατεστημένα plugins, και εκεί θα πρέπει να δείτε και την
&java;. Αν αυτό δεν συμβαίνει, κάθε
χρήστης θα πρέπει να εκτελέσει την ακόλουθη εντολή:
- &prompt.user; ln -s /usr/local/diablo-jre1.6.0/plugin/i386/ns7/libjavaplugin_oji.so \
+ &prompt.user; ln -s /usr/local/diablo-jre1.6.0/plugin/i386/ns7/libjavaplugin_oji.so \
$HOME/.mozilla/pluginsΑν έχετε εγκαταστήσει το πακέτο
Diablo &jdk;, θα χρειαστεί να
εκτελέσετε:
- &prompt.user; ln -s /usr/local/diablo-jdk1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so \
+ &prompt.user; ln -s /usr/local/diablo-jdk1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so \
$HOME/.mozilla/pluginsΕπανεκκινήστε το φυλλομετρητή σας για να ισχύσουν οι
αλλαγές.
+
+
+ Στις παραπάνω εντολές θεωρούμε ότι χρησιμοποιείτε αρχιτεκτονική
+ &arch.i386;. Διατίθενται ωστόσο πακέτα και για την αρχιτεκτονική
+ &arch.amd64;.
+ Ο Firefox και το ¯omedia; &flash; PluginFlashΤο ¯omedia; &flash; plugin δεν διατίθεται για το &os;.
Ωστόσο, υπάρχει ένα επίπεδο εξομοίωσης (software layer, wrapper) για
την εκτέλεση του αντίστοιχου plugin του Linux. To wrapper αυτό
υποστηρίζει επίσης και τα plugins για τον &adobe; &acrobat;, το
RealPlayer και άλλα.Εκτελέστε τα παρακάτω βήματα, ανάλογα με την έκδοση του &os; που
χρησιμοποιείτε:Για το &os; 7.XΕγκαταστήστε το port
www/nspluginwrapper.
Το port αυτό απαιτεί το
emulators/linux_base-fc4
το οποίο είναι μεγάλο.Το επόμενο βήμα είναι η εγκατάσταση του port
www/linux-flashplugin9.
Θα εγκατασταθεί η έκδοση
&flash; 9.X η οποία
γνωρίζουμε ότι δουλεύει σωστά στο
&os; 7.X.Σε εκδόσεις του &os; παλαιότερες από την 7.1-RELEASE, θα
πρέπει να εγκαταστήσετε το πακέτο www/linux-flashplugin7 και να
παραλείψετε το βήμα σχετικά με το &man.linprocfs.5; που
φαίνεται παρακάτω.Για το &os; 8.XΕγκαταστήστε το port
www/nspluginwrapper.
Το port αυτό απαιτεί το
emulators/linux_base-f10
το οποίο είναι μεγάλο.Το επόμενο βήμα είναι η εγκατάσταση του port
www/linux-f10-flashplugin10.
Θα εγκατασταθεί η έκδοση
&flash; 10.X η οποία
γνωρίζουμε ότι δουλεύει σωστά στο
&os; 8.X.Για να λειτουργήσει σωστά αυτή η έκδοση, θα χρειαστεί να
δημιουργήσετε τον συμβολικό σύνδεσμο που φαίνεται
παρακάτω:&prompt.root; ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \
/usr/local/lib/browser_plugins/Μετά την εγκατάσταση του σωστού (σύμφωνα με την έκδοση του &os;)
&flash; port, ο κάθε χρήστης θα πρέπει να ολοκληρώσει την προσωπική
του εγκατάσταση του plugin εκτελώντας την παρακάτω εντολή του
nspluginwrapper:&prompt.user; nspluginwrapper -v -a -iΘα πρέπει να προσαρτήσετε το σύστημα αρχείων διεργασιών του
&linux;, &man.linprocfs.5; στον κατάλογο /usr/compat/linux/proc, αν επιθυμείτε
να αναπαράγετε &flash; σκηνές (animations). Αυτό μπορεί να γίνει με
την επομένη εντολή:&prompt.root; mount -t linprocfs linproc /usr/compat/linux/procΗ προσάρτηση μπορεί επίσης να γίνεται αυτόματα κατά την εκκίνηση,
προσθέτοντας την παρακάτω γραμμή στο
/etc/fstab:linproc /usr/compat/linux/proc linprocfs rw 0 0Μετά την εγκατάσταση του plugin, ξεκινήστε το φυλλομετρητή σας,
γράψτε about:plugins στη γραμμή διευθύνσεων και
πιέστε Enter. Θα πρέπει να δείτε μια λίστα με όλα
τα τρέχοντα διαθέσιμα plugins.Ο Firefox και το Swfdec &flash; PluginTo Swfdec είναι μια βιβλιοθήκη για αποκωδικοποίηση και αναπαραγωγή
σκηνών &flash;. Το Swfdec-Mozilla είναι ένα plugin για τους
φυλλομετρητές Firefox το οποίο χρησιμοποιεί
αυτή τη βιβλιοθήκη για την αναπαραγωγή αρχείων SWF. Είναι ακόμα στο
στάδιο της ανάπτυξης.Αν δεν μπορείτε ή δεν θέλετε να το μεταγλωττίσετε, απλώς
εγκαταστήστε το πακέτο από το δίκτυο:&prompt.root; pkg_add -r swfdec-pluginΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να το μεταγλωττίσετε
και να το εγκαταστήσετε από τη Συλλογή των Ports:&prompt.root; cd /usr/ports/www/swfdec-plugin
&prompt.root; make install cleanΜετά την εγκατάσταση, επανεκκινήστε το φυλλομετρητή σας για να
ενεργοποιηθεί το plugin.OperaOperaΟ Opera είναι ένας φυλλομετρητής με
πλήρεις δυνατότητες και συμβατός με τα πρότυπα. Έρχεται επίσης με
ενσωματωμένο πρόγραμμα ανάγνωσης ταχυδρομείου (mail) και ειδήσεων
(news), πρόγραμμα για IRC, αναγνώστη για RSS/Atom και πολλά ακόμα.
Παρ'όλα αυτά, ο Opera είναι μια σχετικά
ελαφριά και πολύ γρήγορη εφαρμογή. Έρχεται σε δύο τύπους: μια
εγγενής έκδοση για το &os; και μια έκδοση που
εκτελείται μέσω της συμβατότητας με το Linux.Για να χρησιμοποιήσετε την &os; έκδοση του
Opera, εγκαταστήστε το πακέτο:&prompt.root; pkg_add -r operaΟρισμένες τοποθεσίες FTP δεν διαθέτουν όλα τα πακέτα, αλλά
μπορείτε να έχετε το ίδιο αποτέλεσμα μέσω της συλλογής των Ports,
γράφοντας:&prompt.root; cd /usr/ports/www/opera
&prompt.root; make install cleanΓια να εγκαταστήσετε την Linux έκδοση του
Opera, αντικαταστήστε με
linux-opera το
opera στα παραπάνω παραδείγματα. Η έκδοση Linux
είναι χρήσιμη σε καταστάσεις που απαιτούν τη χρήση plugins που
είναι διαθέσιμα μόνο για Linux, όπως το
Adobe &acrobat.reader;. Σε κάθε άλλη
περίπτωση, οι εκδόσεις Linux και &os; είναι λειτουργικά
ισοδύναμες.KonquerorKonquerorΟ Konqueror είναι κομμάτι του
KDE αλλά μπορεί να χρησιμοποιηθεί και έξω
από το KDE με την εγκατάσταση του
x11/kdebase3. Ο
Konqueror είναι πολύ περισσότερο από ένας
απλός φυλλομετρητής, είναι επίσης διαχειριστής αρχείων και πρόγραμμα
προβολής αρχείων πολυμέσων.Ο Konqueror διατίθεται επίσης με ένα
σετ από plugins, στο
misc/konq-plugins.Ο Konqueror υποστηρίζει επίσης
&flash; και οι σχετικές οδηγίες (How To)
είναι διαθέσιμες στο .Εφαρμογές ΓραφείουΌσο αφορά τις εφαρμογές γραφείου, οι νέοι χρήστες συχνά αναζητούν
μια καλή σουίτα εφαρμογών ή ένα φιλικό επεξεργαστή κειμένου. Αν και
κάποια γραφικά περιβάλλοντα όπως το
KDE παρέχουν τη δική τους
σουίτα εφαρμογών γραφείου, δεν υπάρχει ωστόσο προεπιλεγμένη εφαρμογή.
Το &os; παρέχει ότι χρειάζεστε, άσχετα από το περιβάλλον εργασίας
σας.Το τμήμα αυτό καλύπτει τις παρακάτω εφαρμογές:Όνομα ΕφαρμογήςΑπαιτούμενοι ΠόροιΕγκατάσταση από PortsΒασικές ΕξαρτήσειςKOfficeλίγοι (ελαφριά)βαριάKDEAbiWordλίγοι (ελαφριά)ελαφριάGtk+ ή GNOMEThe Gimpλίγοι (ελαφριά)βαριάGtk+OpenOffice.orgπολλοί (βαριά)εξαιρετικά βαριά&jdk;, MozillaKOfficeKOfficeoffice suiteKOfficeΗ κοινότητα του KDE εξοπλίζει το γραφικό της περιβάλλον με μια
σουίτα εφαρμογών γραφείου που μπορεί να χρησιμοποιηθεί και έξω από
το KDE. Περιλαμβάνει τα τέσσερα βασικά
προγράμματα που μπορείτε επίσης να βρείτε και σε άλλες σουίτες
γραφείου. Το KWord είναι ο επεξεργαστής
κειμένου, το KSpread είναι το πρόγραμμα
υπολογιστικών φύλλων, το KPresenter
διαχειρίζεται τις παρουσιάσεις, ενώ το
Kontour σας επιτρέπει να δημιουργήσετε
έγγραφα με γραφικά.Πριν εγκαταστήσετε το τελευταίο
KOffice, βεβαιωθείτε ότι έχετε ανανεωμένη
έκδοση του KDE.Για να εγκαταστήσετε το KOffice ως
πακέτο, δώστε την ακόλουθη εντολή:&prompt.root; pkg_add -r kofficeΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
συλλογή των ports. Για παράδειγμα, για να εγκαταστήσετε το
KOffice για το
KDE3, γράψτε:&prompt.root; cd /usr/ports/editors/koffice-kde3
&prompt.root; make install cleanAbiWordAbiWordΤο AbiWord είναι ένα ελεύθερο πρόγραμμα
επεξεργασίας κειμένου, όμοιο στην αίσθηση και την εμφάνιση με το
µsoft; Word.
Είναι κατάλληλο για την πληκτρολόγηση άρθρων, γραμμάτων, αναφορών,
υπενθυμίσεων κ.ο.κ. Είναι πολύ γρήγορο, έχει αρκετές δυνατότητες και
είναι ιδιαίτερα φιλικό στο χρήστη.Το AbiWord μπορεί να εισάγει ή να
εξάγει αρχεία διάφορων μορφών, περιλαμβανομένων και κάποιων
κλειστών όπως το .doc της µsoft;.Το AbiWord είναι διαθέσιμο ως πακέτο.
Μπορείτε να το εγκαταστήσετε γράφοντας:&prompt.root; pkg_add -r abiwordΑν το πακέτο δεν είναι διαθέσιμο για κάποιο λόγο, μπορείτε να το
μεταγλωττίσετε από την Συλλογή των Ports. Σε αυτή την περίπτωση
πιθανώς να εγκαταστήσετε νεώτερη έκδοση σε σχέση με το έτοιμο πακέτο.
Μπορείτε να το κάνετε ως εξής:&prompt.root; cd /usr/ports/editors/abiword
&prompt.root; make install cleanΤο GIMPThe GIMPΤο The GIMP είναι ένα ιδιαίτερα
εξελιγμένο πρόγραμμα διαχείρισης γραφικών για δημιουργία εικόνων ή
επεξεργασία φωτογραφιών. Μπορεί να χρησιμοποιηθεί ως απλό
πρόγραμμα ζωγραφικής ή σαν σουίτα επεξεργασίας και διόρθωσης
φωτογραφιών. Περιέχει μεγάλο αριθμό από plugins ενώ διαθέτει και
scripting interface. Το The GIMP μπορεί να
διαβάσει και να γράψει μεγάλο φάσμα αρχείων εικόνας. Περιλαμβάνει
επίσης διεπαφές διασύνδεσης με σαρωτές και tablets.Μπορείτε να εγκαταστήσετε το πακέτο δίνοντας την εντολή:&prompt.root; pkg_add -r gimpΑν η τοποθεσία FTP που χρησιμοποιείτε δεν διαθέτει αυτό το
πακέτο, μπορείτε να χρησιμοποιήσετε την Συλλογή των Ports.
Ο κατάλογος graphics
της Συλλογής των Ports περιέχει επίσης και το
The Gimp Manual (εγχειρίδιο χρήσης). Δείτε
παρακάτω πως να το εγκαταστήσετε:&prompt.root; cd /usr/ports/graphics/gimp
&prompt.root; make install clean
&prompt.root; cd /usr/ports/graphics/gimp-manual-pdf
&prompt.root; make install cleanΟ κατάλογος graphics
της συλλογής των Ports έχει επίσης την υπό εξέλιξη έκδοση
της εφαρμογής The GIMP στο
graphics/gimp-devel.
Μπορείτε να βρείτε την HTML έκδοση του εγχειριδίου,
The Gimp Manual στο
graphics/gimp-manual-html.OpenOffice.orgOpenOffice.orgoffice suiteOpenOffice.orgΤο OpenOffice.org περιέχει όλες τις
απαραίτητες εφαρμογές σε μια πλήρη σουίτα εφαρμογών γραφείου:
επεξεργαστή κειμένου, υπολογιστικό φύλλο, διαχειριστή
παρουσιάσεων και πρόγραμμα σχεδίασης. Το περιβάλλον εργασίας του
είναι πολύ όμοιο με άλλες σουίτες γραφείου, και μπορεί να
χρησιμοποιήσει διάφορους δημοφιλείς τύπους αρχείων. Είναι διαθέσιμο
σε πολλές διαφορετικές γλώσσες, τόσο ως προς το περιβάλλον εργασίας
όσο και ως προς τα λεξικά και τον ορθογραφικό έλεγχο.Ο επεξεργαστής κειμένου του
OpenOffice.org χρησιμοποιεί εγγενώς
μορφή αρχείου XML για αυξημένη φορητότητα και ευελιξία. Το πρόγραμμα
υπολογιστικών φύλλων διαθέτει γλώσσα μακροεντολών και μπορεί να
διασυνδεθεί με εξωτερικές βάσεις δεδομένων. Το
OpenOffice.org είναι σταθερή εφαρμογή και
εκτελείται εγγενώς στα &windows;, το &solaris;, το Linux, το &os;,
καθώς και στο &macos; X. Περισσότερες πληροφορίες για το
OpenOffice.org μπορείτε να βρείτε
στη δικτυακή τοποθεσία του
OpenOffice.org .
Για πληροφορίες σχετικά με την έκδοση για &os;, καθώς και για
απευθείας κατέβασμα πακέτων, χρησιμοποιήστε την δικτυακή τοποθεσία
FreeBSD OpenOffice.org
Porting Team.Για να εγκαταστήσετε το OpenOffice.org,
γράψτε:&prompt.root; pkg_add -r openoffice.orgΑν χρησιμοποιείτε -RELEASE έκδοση του &os;, το παραπάνω πρέπει
να δουλέψει. Διαφορετικά, θα πρέπει να δείτε την δικτυακή τοποθεσία
του &os; OpenOffice.org Porting Team για
να κατεβάσετε και να εγκαταστήσετε το αντίστοιχο πακέτο
χρησιμοποιώντας την &man.pkg.add.1;. Τόσο η τρέχουσα όσο και η υπό
εξέλιξη έκδοση είναι διαθέσιμες για κατέβασμα από την παραπάνω
τοποθεσία.Από τη στιγμή που το πακέτο εγκατασταθεί, πρέπει να γράψετε απλώς
την παρακάτω εντολή για να εκτελέσετε το
OpenOffice.org:&prompt.user; openoffice.orgΚατά την πρώτη εκκίνηση, θα σας γίνουν διάφορες ερωτήσεις και
θα δημιουργηθεί ένας κατάλογος με όνομα
.openoffice.org μέσα στον προσωπικό σας
κατάλογο.Αν τα πακέτα του OpenOffice.org δεν
είναι διαθέσιμα, έχετε πάντα την επιλογή να μεταγλωττίσετε το
αντίστοιχο port. Ωστόσο, να έχετε υπόψη σας ότι αυτό απαιτεί αρκετό
χώρο στο δίσκο και θα χρειαστεί και πάρα πολύ χρόνο για να
ολοκληρωθεί.&prompt.root; cd /usr/ports/editors/openoffice.org-3
&prompt.root; make install cleanΑν θέλετε να δημιουργήσετε μια έκδοση με τις δικές σας τοπικές
ρυθμίσεις, αντικαταστήστε την προηγούμενη γραμμή εντολών με την
επόμενη:&prompt.root; make LOCALIZED_LANG=your_language install cleanΠρέπει να αντικαταστήσετε το
your_language με το σωστό ISO κωδικό για
τη γλώσσα σας. Η λίστα με τους υποστηριζόμενους κωδικούς γλωσσών
είναι διαθέσιμη στο αρχείο
files/Makefile.localized, το οποίο βρίσκεται
στον κατάλογο του port.Μόλις γίνει αυτό, μπορείτε να ξεκινήσετε την εφαρμογή
OpenOffice.org δίνοντας την εντολή:&prompt.user; openoffice.orgΠρογράμματα Προβολής ΕγγράφωνΠρόσφατα έχουν γίνει αρκετά δημοφιλείς κάποιες νέες μορφές αρχείων.
Τα προγράμματα προβολής που απαιτούνται για τα αρχεία αυτά ίσως να μην
είναι διαθέσιμα στο βασικό σύστημα. Στο τμήμα αυτό θα δούμε πως
μπορείτε να τα εγκαταστήσετε.Το τμήμα αυτό καλύπτει τις εφαρμογές:Όνομα ΕφαρμογήςΑπαιτούμενοι ΠόροιΕγκατάσταση από PortsΒασικές Εξαρτήσεις&acrobat.reader;λίγοι (ελαφριά)ελαφριάΔυαδική συμβατότητα με Linux (Linux Binary Compatibility)gvλίγοι (ελαφριά)ελαφριάXaw3dXpdfλίγοι (ελαφριά)ελαφριάFreeTypeGQviewλίγοι (ελαφριά)ελαφριάGtk+ ή GNOME&acrobat.reader;Acrobat ReaderPDFviewingΠολλά έγγραφα διανέμονται πλέον ως αρχεία PDF το οποίο σημαίνει
Portable Document Format (Φορητή Μορφή Εγγράφου). Ένα
από τα συνιστώμενα προγράμματα προβολής για αυτό τον τύπο αρχείων
είναι το &acrobat.reader;, το οποίο η Adobe
διαθέτει για Linux. Καθώς το &os; μπορεί να χρησιμοποιήσει εκτελέσιμα
του Linux, η εφαρμογή είναι επίσης διαθέσιμη για το &os;.Για να εγκαταστήσετε το
&acrobat.reader; 8 από τη Συλλογή των
Ports, γράψτε:&prompt.root; cd /usr/ports/print/acroread8
&prompt.root; make install cleanΔεν υπάρχει διαθέσιμο πακέτο, λόγω περιορισμών στην άδεια
χρήσης.gvgvPDFviewingPostScriptviewingΤο gv είναι ένα πρόγραμμα προβολής
εγγράφων για αρχεία &postscript; και PDF. Είναι αρχικά βασισμένο
στην εφαρμογή ghostview αλλά έχει καλύτερη
εμφάνιση χάρη στη βιβλιοθήκη Xaw3d. Είναι
γρήγορο, και το interface του είναι ξεκάθαρο. Το
gv έχει πολλές δυνατότητες, όπως
προσανατολισμό και μέγεθος χαρτιού, εμφάνιση υπό κλίμακα και βελτίωση
εμφάνισης γραμματοσειρών (antialias). Σχεδόν κάθε λειτουργία του
μπορεί να εκτελεστεί τόσο από το πληκτρολόγιο όσο και από το
ποντίκι.Για να εγκαταστήσετε το gv ως πακέτο,
γράψτε:&prompt.root; pkg_add -r gvΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
συλλογή των Ports:&prompt.root; cd /usr/ports/print/gv
&prompt.root; make install cleanXpdfXpdfPDFviewingΑν θέλετε ένα μικρό πρόγραμμα προβολής αρχείων PDF για το &os;, το
Xpdf είναι ελαφρύ και αποδοτικό. Απαιτεί
ελάχιστους πόρους και είναι ιδιαίτερα σταθερό. Χρησιμοποιεί τις
βασικές γραμματοσειρές των X και δεν απαιτεί χρήση του
&motif; ή άλλης εργαλειοθήκης των Χ.Για να εγκαταστήσετε το Xpdf ως
πακέτο, δώστε την εντολή:&prompt.root; pkg_add -r xpdfΑν το πακέτο δεν είναι διαθέσιμο ή προτιμάτε να χρησιμοποιήσετε
την Συλλογή των Ports, γράψτε:&prompt.root; cd /usr/ports/graphics/xpdf
&prompt.root; make install cleanΜόλις ολοκληρωθεί η εγκατάσταση, μπορείτε να ξεκινήσετε το
Xpdf και να χρησιμοποιήσετε το δεξί
πλήκτρο του ποντικιού για να ενεργοποιήσετε το μενού.GQviewGQviewΤο GQview είναι ένας διαχειριστής
εικόνων. Μπορείτε να δείτε ένα αρχείο με ένα απλό κλικ, να
ξεκινήσετε ένα εξωτερικό πρόγραμμα επεξεργασίας, να δείτε
προεπισκόπηση σε μορφή thumbnail και πολλά άλλα. Διαθέτει επίσης
προβολή παρουσίασης και κάποιες βασικές λειτουργίες
αρχείων. Μπορείτε να διαχειριστείτε συλλογές εικόνων και να βρείτε με
εύκολο τρόπο τις διπλές. Το GQview μπορεί
να χρησιμοποιηθεί για προβολή σε πλήρη οθόνη και υποστηρίζει τοπικές
/ διεθνείς ρυθμίσεις.Αν θέλετε να εγκαταστήσετε το
GQview ως πακέτο, γράψτε:&prompt.root; pkg_add -r gqviewΑν το πακέτο δεν είναι διαθέσιμο, ή προτιμάτε να χρησιμοποιήσετε
την Συλλογή των Ports, γράψτε:&prompt.root; cd /usr/ports/graphics/gqview
&prompt.root; make install cleanΧρηματοοικονομικές ΕφαρμογέςΑν, για οποιοδήποτε λόγο, θέλετε να διαχειρίζεστε τα
χρηματοοικονομικά σας μέσω του &os; desktop σας, υπάρχουν κάποιες
ισχυρές και εύκολες στη χρήση εφαρμογές, έτοιμες προς εγκατάσταση.
Ορισμένες από αυτές είναι συμβατές με διαδεδομένες μορφές αρχείων, όπως
αυτές που χρησιμοποιούνται στα έγγραφα του
Quicken ή του Excel.Το τμήμα αυτό καλύπτει τις εφαρμογές:Όνομα ΕφαρμογήςΑπαιτούμενοι ΠόροιΕγκατάσταση Από PortsΒασικές ΕξαρτήσειςGnuCashλίγοι (ελαφριά)βαριάGNOMEGnumericλίγοι (ελαφριά)βαριάGNOMEAbacusλίγοι (ελαφριά)ελαφριάTcl/TkKMyMoneyλίγοι (ελαφριά)βαριάKDEGnuCashGnuCashΤο GnuCash είναι μέρος της προσπάθειας
του GNOME να παρέχει φιλικές εφαρμογές
στους τελικούς χρήστες. Με το GnuCash,
μπορείτε να κρατάτε λογαριασμό των εσόδων και εξόδων σας, των
τραπεζικών σας λογαριασμών και των μετοχών σας. Διαθέτει περιβάλλον
εργασίας το οποίο είναι εύκολο στη χρήση χωρίς να χρειάζεται
ιδιαίτερη εκμάθηση, αλλά είναι ταυτόχρονα και πολύ
επαγγελματικό.Το GnuCash παρέχει έξυπνο σύστημα
καταχώρησης, ιεραρχικό σύστημα λογαριασμών, πολλά πλήκτρα συντομεύσεων
πληκτρολογίου, καθώς και μεθόδους αυτόματης συμπλήρωσης. Μπορεί να
διαχωρίσει μια συναλλαγή σε πολλά λεπτομερή τμήματα. Το
GnuCash μπορεί να εισάγει και να
συγχωνεύσει αρχεία QIF του Quicken. Μπορεί
επίσης να χειριστεί τις περισσότερες διεθνείς μορφές ημερομηνιών και
νομισματικών μονάδων.Για να εγκαταστήσετε το GnuCash στο
σύστημα σας, γράψτε:&prompt.root; pkg_add -r gnucashΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
συλλογή των ports:&prompt.root; cd /usr/ports/finance/gnucash
&prompt.root; make install cleanGnumericGnumericspreadsheetGnumericΤο Gnumeric είναι ένα υπολογιστικό
φύλλο και αποτελεί μέρος του περιβάλλοντος εργασίας
GNOME. Διαθέτει βολική αυτόματη
πρόβλεψη της εισόδου του χρήστη σύμφωνα με τη μορφή του
κελιού καθώς και σύστημα αυτόματης συμπλήρωσης (autofill) για διάφορες
ακολουθίες. Μπορεί να εισάγει αρχεία διάφορων δημοφιλών μορφών, όπως
αυτά που χρησιμοποιούνται στο Excel, το
Lotus 1-2-3, ή το
Quattro Pro.
Το Gnumeric υποστηρίζει γραφήματα μέσω του
προγράμματος γραφικών
math/guppi. Έχει μεγάλο αριθμό
ενσωματωμένων συναρτήσεων και επιτρέπει όλες τις συνήθεις μορφές
κελιών, όπως αριθμούς, νομισματικές μονάδες, ημερομηνίες, ώρες και
πολλές ακόμα.Για να εγκαταστήσετε το Gnumeric ως
πακέτο, γράψτε:&prompt.root; pkg_add -r gnumericΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
συλλογή των ports, γράφοντας:&prompt.root; cd /usr/ports/math/gnumeric
&prompt.root; make install cleanAbacusAbacusspreadsheetAbacusΤο Abacus είναι ένα μικρό και εύκολο
στη χρήση υπολογιστικό φύλλο. Περιλαμβάνει πολλές ενσωματωμένες
συναρτήσεις οι οποίες είναι χρήσιμες σε διάφορα πεδία, όπως η
στατιστική, τα χρηματοοικονομικά και τα μαθηματικά. Μπορεί να εισάγει
και να εξάγει αρχεία του Excel. Το
Abacus μπορεί να παράγει έξοδο μορφής
&postscript;.Για να εγκαταστήσετε το Abacus ως
πακέτο, γράψτε:&prompt.root; pkg_add -r abacusΑν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
συλλογή των ports, γράφοντας:&prompt.root; cd /usr/ports/deskutils/abacus
&prompt.root; make install cleanKMyMoneyKMyMoneyspreadsheetKMyMoneyΤο KMyMoney είναι μια εφαρμογή
διαχείρισης των προσωπικών σας οικονομικών, φτιαγμένη για το
περιβάλλον KDE. To
KMyMoney στοχεύει να παρέχει και
να ενσωματώσει όλες τις λειτουργίες που διατίθενται σε αντίστοιχες
εμπορικές εφαρμογές. Το KMyMoney μπορεί
να εισάγει αρχεία του προτύπου QIF (Quicken Interchange Format),
να τηρεί καταγραφή των επενδύσεων σας, να χειρίζεται πολλαπλές
νομισματικές μονάδες και να παρέχει πλήθος αναφορών. Μέσα από
ξεχωριστό plugin, παρέχεται επίσης η δυνατότητα εισαγωγής αρχείων
OFX.Για να εγκαταστήσετε το KMyMoney ως
πακέτο, εκτελέστε την εντολή:&prompt.root; pkg_add -r kmymoney2Αν το πακέτο δεν είναι διαθέσιμο, μπορείτε να χρησιμοποιήσετε την
Συλλογή των Ports, όπως φαίνεται παρακάτω:&prompt.root; cd /usr/ports/finance/kmymoney2
&prompt.root; make install cleanΠερίληψηΑν και το &os; είναι δημοφιλές στους παροχείς Internet (ISPs) για
την απόδοση και τη σταθερότητα του, είναι επίσης έτοιμο και για
καθημερινή χρήση ως desktop. Με αρκετές χιλιάδες εφαρμογές διαθέσιμες
ως πακέτα ή
ports,
μπορείτε να δημιουργήσετε το τέλειο desktop που καλύπτει όλες τις
ανάγκες σας.Παρακάτω, φαίνεται μια γρήγορη περίληψη όλων των desktop εφαρμογών
που παρουσιάστηκαν σε αυτό το κεφάλαιο:Όνομα ΕφαρμογήςΌνομα ΠακέτουΌνομα PortOperaoperawww/operaFirefoxfirefoxwww/firefoxKOfficekoffice-kde3editors/koffice-kde3AbiWordabiwordeditors/abiwordThe GIMPgimpgraphics/gimpOpenOffice.orgopenofficeeditors/openoffice.org-3&acrobat.reader;acroreadprint/acroread8gvgvprint/gvXpdfxpdfgraphics/xpdfGQviewgqviewgraphics/gqviewGnuCashgnucashfinance/gnucashGnumericgnumericmath/gnumericAbacusabacusdeskutils/abacusKMyMoneykmymoney2finance/kmymoney2
diff --git a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
index 4aedbcc0c6..555672e1cd 100644
--- a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
@@ -1,3367 +1,3360 @@
Που θα Βρείτε το &os;Εκδόσεις σε CDROM και DVDRetail ΕκδόσειςΤο &os; είναι διαθέσιμο ως εμπορικό προϊόν (&os; CD, επιπρόσθετο
λογισμικό, και τυπωμένη τεκμηρίωση) από διάφορους προμηθευτές:CompUSA
WWW: Frys Electronics
WWW: CD και DVD διανομέςΤο &os; είναι διαθέσιμο σε CD και DVD για αγορά μέσω διαδικτύου
από τους παρακάτω προμηθευτές:&os; Mall, Inc.700 Harvest Park Ste FBrentwood, CA94513USA
Τηλέφωνο: +1 925 674-0783
Fax: +1 925 674-0821
Email: info@freebsdmall.com
WWW: Dr. Hinner EDVSt. Augustinus-Str. 10D-81825MünchenGermany
Τηλέφωνο: (089) 428 419
WWW: Ikarios22-24 rue Voltaire92000NanterreFrance
WWW: JMC SoftwareIreland
Τηλέφωνο: 353 1 6291282
WWW: The Linux EmporiumHilliard House, Lester WayWallingfordOX10 9TAUnited Kingdom
Τηλέφωνο: +44 1491 837010
Fax: +44 1491 837016
WWW: Linux+ DVD MagazineLewartowskiego 6Warsaw00-190Poland
Τηλέφωνο: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW: Linux System Labs Australia21 Ray DriveBalwyn NorthVIC - 3104Australia
Τηλέφωνο: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW: LinuxCenter.KzUst-KamenogorskKazakhstan
Τηλέφωνο: +7-705-501-6001
Email: info@linuxcenter.kz
WWW: LinuxCenter.RuGalernaya Street, 55Saint-Petersburg190000Russia
Τηλέφωνο: +7-812-3125208
Email: info@linuxcenter.ru
WWW: ΔιανομείςΑν είστε μεταπωλητής και μπορείτε να διανείμετε σε CD-ROM προϊόντα
βασισμένα στο &os;, παρακαλούμε επικοινωνήστε με κάποιον από τους
διανομείς:Cylogistics809B Cuesta Dr., #2149Mountain View, CA94040USA
Τηλέφωνο: +1 650 694-4949
Fax: +1 650 694-4953
Email: sales@cylogistics.com
WWW: Ingram Micro1600 E. St. Andrew PlaceSanta Ana, CA92705-4926USA
Τηλέφωνο: 1 (800) 456-8000
WWW: Kudzu, LLC7375 Washington Ave. S.Edina, MN55439USA
Τηλέφωνο: +1 952 947-0822
Fax: +1 952 947-0876
Email: sales@kudzuenterprises.comLinuxCenter.RuGalernaya Street, 55Saint-Petersburg190000Russia
Τηλέφωνο: +7-812-3125208
Email: info@linuxcenter.ru
WWW: Navarre Corp7400 49th Ave SouthNew Hope, MN55428USA
Τηλέφωνο: +1 763 535-8333
Fax: +1 763 535-0341
WWW: Εξυπηρετητές FTPΟι επίσημες εκδόσεις του &os; είναι διαθέσιμες μέσω ανώνυμης FTP
σύνδεσης από διάφορους εξυπηρετητές FTP σε όλο τον κόσμο. Ο κεντρικός
εξυπηρετητής
έχει πολύ καλή σύνδεση με τον υπόλοιπο κόσμο, και επιτρέπει ένα μεγάλο
αριθμό ταυτόχρονων συνδέσεων. Ακόμα κι έτσι όμως, είναι μάλλον καλή
ιδέα να βρείτε κάποιο εξυπηρετητή FTP που είναι πιο κοντά
σας (ειδικά αν θέλετε να στήσετε κάποιο τοπικό mirror site).Η βάση των mirror
sites του &os; είναι πιο ενημερωμένη και έγκυρη από την
αντίστοιχη λίστα στο Εγχειρίδιο του &os;, κυρίως επειδή παίρνει τις
πληροφορίες της από το DNS κι όχι από μια στατική λίστα από ονόματα
εξυπηρετητών.Το &os; είναι επίσης διαθέσιμο μέσω σύνδεσης ανώνυμου FTP από τα
παρακάτω mirror sites. Αν επιλέξετε να κατεβάσετε το &os; μέσω ανώνυμου
FTP, σας παρακαλούμε να διαλέξετε κάποιο εξυπηρετητή ο οποίος είναι
κοντά σας. Τα mirror sites που αναφέρονται ως Κύρια Mirror
Sites έχουν συνήθως την πλήρη συλλογή αρχείων του &os; (όλες τις
διαθέσιμες εκδόσεις, για κάθε διαθέσιμη αρχιτεκτονική συστήματος), αλλά
είναι πιθανόν να πετύχετε καλύτερες ταχύτητες εξυπηρέτησης με κάποιο
εξυπηρετητή που είναι στη δική σας χώρα ή περιοχή. Τα τοπικά sites
έχουν συνήθως τις πιο πρόσφατες εκδόσεις για τις πιο δημοφιλείς
αρχιτεκτονικές συστήματος, οπότε μπορεί να μην έχουν όλες τις πιθανές
εκδόσεις του &os;. Όλα τα sites δέχονται συνδέσεις μέσω ανώνυμου FTP.
Μερικά από αυτά μπορεί να υποστηρίζουν και άλλης μορφής συνδέσεις. Οι
εναλλακτικές μορφές σύνδεσης αναφέρονται ξεχωριστά για κάθε site
παρακάτω:
&chap.mirrors.ftp.inc;
BitTorrentBitTorrentΜπορείτε να ανακτήσετε τα βασικά αρχεία ISO των εκδόσεων του &os;,
μέσω του συστήματος BitTorrent. Στην τοποθεσία http://torrents.freebsd.org:8080
υπάρχει μια πλήρης συλλογή από αρχεία torrent που μπορείτε να
κατεβάσετε.Για να χρησιμοποιήσετε τα αρχεία torrent, θα χρειαστείτε κατάλληλο
λογισμικό-πελάτη, όπως αυτό που παρέχεται από το port ή πακέτο
net-p2p/py-bittorrent.Αφού κατεβάσετε το αρχείο ISO με το BitTorrent, μπορείτε να το
γράψετε σε CD ή DVD, όπως περιγράφεται στο
(burncd).Ανώνυμο CVSΕισαγωγήCVSanonymousΗ σύνδεση ανώνυμου 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Η ρύθμιση του &man.cvs.1; ώστε να χρησιμοποιεί ένα ανώνυμο CVS
repository γίνεται απλώς ρυθμίζοντας την μεταβλητή περιβάλλοντος
CVSROOT ώστε να δείχνει σε έναν από τους
anoncvs εξυπηρετητές του &os; project. Την ώρα
που γράφονται αυτές οι γραμμές, είναι διαθέσιμοι οι ακόλουθοι
εξυπηρετητές:Γαλλία:
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
- (pserver (κωδικός anoncvs), ssh (χωρίς
- κωδικό))
+ (Για pserver χρησιμοποιήστε την εντολή
+ cvs login και δώστε τον κωδικό
+ anoncvs όταν σας ζητηθεί. Το ssh δεν απαιτεί
+ τη χρήση κωδικού.)
-
+
Ταΐβάν:
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
- (για τον pserver χρησιμοποιήστε την εντολή
+ (Για pserver χρησιμοποιήστε την εντολή
cvs login και δώστε οτιδήποτε για κωδικό
- όταν σας ζητηθεί, το ssh δεν έχει κωδικό.)
+ όταν σας ζητηθεί, Το 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Ηνωμένες Πολιτείες Αμερικής:
- 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 (μόνο ssh2 - χωρίς
- κωδικό)
+ anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (Για πρόσβαση μέσω ssh,
+ χρησιμοποιήστε την έκδοση 2 του ssh, χωρίς κωδικό.)
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 σας επιτρέπει να κάνετε check out
ουσιαστικά οποιαδήποτε έκδοση του πηγαίου κώδικα του &os; υπήρξε
ποτέ (και σε ορισμένες περιπτώσεις ακόμα και εκδόσεις που δεν έχουν
κυκλοφορήσει ακόμα), θα πρέπει να είστε εξοικειωμένος με την επιλογή
του &man.cvs.1; με την οποία επιλέγεται το revision (πρόκειται για
την ) και ποιες είναι οι επιτρεπτές τιμές
της για το repository του &os; project.Υπάρχουν δύο είδη tags (ετικετών), τα revision tags (ετικέτες
έκδοσης) και τα branch tags. Ένα revision tag αναφέρεται σε μια
συγκεκριμένη έκδοση. Η έννοια του παραμένει σταθερή μέρα με τη
μέρα. Από την άλλη, ένα branch tag δείχνει την τελευταία έκδοση
μιας συγκεκριμένης πορείας ανάπτυξης, σε κάθε χρονική στιγμή. Καθώς
το branch tag δεν αναφέρεται σε κάποια συγκεκριμένη έκδοση, μπορεί
αύριο να σημαίνει κάτι διαφορετικό από ότι σημαίνει σήμερα.Το περιέχει revision tags τα οποία
μπορεί να ενδιαφέρουν τους χρήστες. Υπενθυμίζουμε ότι κανένα από
αυτά δεν είναι έγκυρο για την Συλλογή των Ports, καθώς αυτή δεν
έχει πολλαπλές εκδόσεις (revisions).Όταν καθορίζετε κάποιο branch tag, φυσιολογικά λαμβάνετε τις
τελευταίες εκδόσεις των αρχείων που υπάρχουν σε αυτή τη γραμμή
ανάπτυξης. Αν θέλετε να λάβετε κάποια παλιότερη έκδοση, μπορείτε
χρησιμοποιώντας την ημερομηνία σε συνδυασμό με την επιλογή
. Δείτε τη σελίδα 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 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
Branch:&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
&prompt.user; cvs loginΣτην προτροπή, δώστε οποιαδήποτε λέξη γιαpassword.
&prompt.user; cvs co -rRELENG_6 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_5_3_0_RELEASE -rRELENG_5_4_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.Χρησιμοποιώντας το CTMCTMΤο 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-4.name;
υποστηρίζει την έκδοση 4.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 μπορείτε επίσης να χρησιμοποιήσετε την
επιλογή και το CTM
δεν θα πειράξει τίποτα, απλώς θα επαληθεύσει την ακεραιότητα του
delta και θα δει αν μπορεί να το εφαρμόσει χωρίς προβλήματα στο
τρέχον δέντρο.Υπάρχουν και άλλες επιλογές στο CTM,
δείτε τις αντίστοιχες σελίδες manual ή κοιτάξτε τον πηγαίο κώδικα
για περισσότερες πληροφορίες.Αυτό είναι όλο στην πραγματικότητα. Κάθε φορά που λαμβάνετε ένα
νέο delta, απλώς περάστε το στο CTM ώστε
να έχετε πάντοτε ανανεωμένο τον πηγαίο σας κώδικα.Μην σβήνετε τα deltas αν είναι δύσκολο να τα κατεβάσετε ξανά.
Ίσως θέλετε να τα φυλάξετε για την περίπτωση που κάτι πάει στραβά.
Ακόμα και αν το μόνο μέσο που έχετε είναι δισκέτες, κάντε αντίγραφο
χρησιμοποιώντας την fdwrite.Κρατώντας τις Τοπικές σας ΑλλαγέςΩς προγραμματιστής, θα θέλετε να πειραματιστείτε και να αλλάξετε
αρχεία στο δέντρο του πηγαίου κώδικα. Το
CTM υποστηρίζει περιορισμένου τύπου
τοπικές αλλαγές: πριν ελέγξει για την παρουσία ενός αρχείου
foo, ελέγχει πρώτα για το
foo.ctm. Αν το αρχείο αυτό υπάρχει, το
CTM θα χρησιμοποιήσει αυτό αντί για το
foo.Η συμπεριφορά αυτή μας παρέχει ένα απλό τρόπο να διατηρήσουμε
τοπικές αλλαγές: απλώς αντιγράψτε τα αρχεία που σκοπεύετε να
αλλάξετε σε αντίστοιχα αρχεία με κατάληξη .ctm.
Μπορείτε κατόπιν να κάνετε ότι αλλαγές θέλετε στον κώδικα ενώ το
CTM θα διατηρεί ανανεωμένο το αρχείο
.ctm.Άλλες Ενδιαφέρουσες Επιλογές του
CTMΒρίσκοντας τι Ακριβώς θα Αλλάξει σε μια ΑνανέωσηΜπορείτε να προσδιορίσετε τις αλλαγές που θα προκαλέσει το
CTM στο repository του πηγαίου σας
κώδικα, χρησιμοποιώντας την επιλογή .Αυτό θα είναι χρήσιμο αν θέλετε να κρατήσετε ημερολόγιο των
αλλαγών, αν θέλετε να επεξεργαστείτε τα τροποποιημένα αρχεία πριν
ή μετά την τροποποίηση τους, ή αν απλώς αισθάνεστε ελαφρώς
παρανοϊκός.Δημιουργώντας Αντίγραφα Ασφαλείας πριν την ΑνανέωσηΜερικές φορές θα θέλετε να κρατήσετε αντίγραφο ασφαλείας όλων
των αρχείων που πρόκειται να αλλαχθούν από μια ανανέωση μέσω
CTM.Δίνοντας την επιλογή
το CTM θα δημιουργήσει αντίγραφο
ασφαλείας όλων των αρχείων που πρόκειται να αλλαχθούν από κάποιο
συγκεκριμένο delta στο αρχείο
backup-file.Περιορίζοντας τα Αρχεία που θα Αλλαχθούν από Κάποια
ΑνανέωσηΜερικές φορές ίσως να ενδιαφέρεστε να περιορίσετε την περιοχή
δράσης μιας συγκεκριμένης ανανέωσης μέσω
CTM ή ίσως σας ενδιαφέρει να πάρετε
μόνο λίγα αρχεία από κάποια σειρά από deltas.Μπορείτε να ελέγξετε τη λίστα των αρχείων στα οποία θα
λειτουργήσει το CTM χρησιμοποιώντας ως
φίλτρα, regular expressions με τις επιλογές
και .Για παράδειγμα, για να εξάγετε ένα ανανεωμένο αντίγραφο του
αρχείου 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, οι επιλογές
και εφαρμόζονται με τη
σειρά που εμφανίζονται στη γραμμή εντολών. Στο αρχείο γίνεται
επεξεργασία από το CTM, μόνο αν
μαρκαριστεί ως έγκυρο προς ανανέωση μετά την εφαρμογή όλων των
επιλογών και .Μελλοντικά Σχέδια για το 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, την οποία και
δεν χρειάζεται πλέον να εγκαταστήσετε. Επίσης, αν χρησιμοποιείτε
έκδοση &os; 6.2 ή μεταγενέστερη, μπορείτε να το χρησιμοποιήσετε
άμεσα, καθώς περιλαμβάνεται στο βασικό σύστημα. Παλιότερες εκδόσεις
του &os; δεν έχουν το &man.csup.1; στο βασικό σύστημα, αλλά μπορείτε
να το εγκαταστήσετε εύκολα από το port
net/csup port, ή από έτοιμο
πακέτο. Αν αποφασίσετε να χρησιμοποιήσετε
το csup, απλώς παραλείψτε τα βήματα για
την εγκατάσταση του CVSup και
αντικαταστήστε κάθε αναφορά στο CVSup σε
αυτό το άρθρο, με csup.ΕγκατάστασηΟ ευκολότερος τρόπος για να εγκαταστήσετε το
CVSup είναι μέσω του έτοιμου πακέτου
net/cvsup από την
συλλογή πακέτων του &os;. Αν προτιμάτε
να μεταγλωττίσετε το CVSup από τον πηγαίο
κώδικα, μπορείτε να χρησιμοποιήσετε το port
net/cvsup. Σας προειδοποιούμε
ωστόσο ότι το port net/cvsup
εξαρτάται από την Modula-3, η οποία χρειάζεται αρκετό χρόνο και χώρο
στο δίσκο για να κατέβει και να μεταγλωττιστεί.Αν πρόκειται να χρησιμοποιήσετε το
CVSup σε ένα μηχάνημα το οποίο δεν θα
διαθέτει γραφικό περιβάλλον μέσω
&xfree86; ή
&xorg;, όπως π.χ. σε ένα εξυπηρετητή,
βεβαιωθείτε ότι εγκαθιστάτε το αντίστοιχο port το οποίο δεν
περιλαμβάνει γραφικό περιβάλλον, δηλαδή το
net/cvsup-without-gui.Αν θέλετε να εγκαταστήσετε το csup στο
&os; 6.1 ή προγενέστερο, μπορείτε να χρησιμοποιήσετε το έτοιμο πακέτο
net/csup από την
συλλογή πακέτων του &os;.
Αν θέλετε να μεταγλωττίσετε το csup από
τον πηγαίο κώδικα, μπορείτε να χρησιμοποιήσετε το port,
net/csup.Ρύθμιση του 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= και .Θα πρέπει να δώσετε ιδιαίτερη προσοχή στον καθορισμό των
πεδίων 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_4 θα γίνει
tag=RELENG_4). Να έχετε υπόψιν σας ότι για την
συλλογή των Ports, το tag=. είναι το μόνο
έγκυρο.Να είστε ιδιαίτερα προσεκτικός, ώστε να γράψετε το tag
ακριβώς όπως φαίνεται. Το CVSup δεν
μπορεί να διαχωρίσει μεταξύ έγκυρων και μη-έγκυρων tags. Αν
γράψετε λάθος το tag, το CVSup θα
συμπεριφερθεί σαν να έχετε δώσει ένα έγκυρο tag το οποίο δεν
αναφέρεται σε κανένα αρχείο. Στην περίπτωση αυτή θα διαγράψει
τα υπάρχοντα αρχεία σας πηγαίου κώδικα.Όταν καθορίσετε κάποιο branch tag, φυσιολογικά θα λάβετε τις
τελευταίες εκδόσεις των αρχείων που υπάρχουν σε αυτή τη γραμμή
ανάπτυξης. Αν θέλετε να λάβετε κάποιες παλιότερες εκδόσεις,
μπορείτε να το κάνετε καθορίζοντας μια ημερομηνία μέσω του πεδίου
τιμών . Η σελίδα 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, έχετε την δυνατότητα
να ανατρέπετε αυτή τη ρύθμιση μέσω της γραμμής εντολών με την
επιλογή .Που θέλετε να τα αποθηκεύσετε
στο μηχάνημα σας;Το πεδίο 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Η επιλογή λέει στο
CVSup να μη χρησιμοποιήσει το γραφικό του
περιβάλλον. Αυτό γίνεται αυτόματα αν δεν εκτελούνται τα X11, αλλά
διαφορετικά θα πρέπει να το καθορίσετε.Η επιλογή λέει στο
CVSup να εμφανίσει όλες τις λεπτομέρειες
για όλες τις ανανεώσεις αρχείων που εκτελεί. Υπάρχουν τρία επίπεδα
περιγραφής, από το ως το .
Η προεπιλογή είναι το 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=cvsPorts σχετικά με αστρονομία.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-mbone
release=cvsΕφαρμογές MBone.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=cvsShells για την γραμμή εντολών.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=cvsPorts για υποστήριξη του συστήματος 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=cvsKerberos και 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=currentH βάση δεδομένων του συστήματος παρακολούθησης προβλημάτων
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.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_8Η γραμμή ανάπτυξης για το &os;-8.X, γνωστή επίσης και ως
&os; 8-STABLERELENG_8_0Η γραμμή έκδοσης του &os;-8.0, χρησιμοποιείται μόνο για
ενημερώσεις ασφαλείας και άλλες κρίσιμες διορθώσεις.RELENG_7Η γραμμή ανάπτυξης για το &os;-7.X, γνωστή επίσης και ως
&os; 7-STABLERELENG_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-STABLERELENG_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_8_0_0_RELEASE&os; 8.0RELENG_7_3_0_RELEASE&os; 7.3RELENG_7_2_0_RELEASE&os; 7.2RELENG_7_1_0_RELEASE&os; 7.1RELENG_7_0_0_RELEASE&os; 7.0RELENG_6_4_0_RELEASE&os; 6.4RELENG_6_3_0_RELEASE&os; 6.3RELENG_6_2_0_RELEASE&os; 6.2RELENG_6_1_0_RELEASE&os; 6.1RELENG_6_0_0_RELEASE&os; 6.0RELENG_5_5_0_RELEASE&os; 5.5RELENG_5_4_0_RELEASE&os; 5.4RELENG_4_11_0_RELEASE&os; 4.11RELENG_5_3_0_RELEASE&os; 5.3RELENG_4_10_0_RELEASE&os; 4.10RELENG_5_2_1_RELEASE&os; 5.2.1RELENG_5_2_0_RELEASE&os; 5.2RELENG_4_9_0_RELEASE&os; 4.9RELENG_5_1_0_RELEASE&os; 5.1RELENG_4_8_0_RELEASE&os; 4.8RELENG_5_0_0_RELEASE&os; 5.0RELENG_4_7_0_RELEASE&os; 4.7RELENG_4_6_2_RELEASE&os; 4.6.2RELENG_4_6_1_RELEASE&os; 4.6.1RELENG_4_6_0_RELEASE&os; 4.6RELENG_4_5_0_RELEASE&os; 4.5RELENG_4_4_0_RELEASE&os; 4.4RELENG_4_3_0_RELEASE&os; 4.3RELENG_4_2_0_RELEASE&os; 4.2RELENG_4_1_1_RELEASE&os; 4.1.1RELENG_4_1_0_RELEASE&os; 4.1RELENG_4_0_0_RELEASE&os; 4.0RELENG_3_5_0_RELEASE&os;-3.5RELENG_3_4_0_RELEASE&os;-3.4RELENG_3_3_0_RELEASE&os;-3.3RELENG_3_2_0_RELEASE&os;-3.2RELENG_3_1_0_RELEASE&os;-3.1RELENG_3_0_0_RELEASE&os;-3.0RELENG_2_2_8_RELEASE&os;-2.2.8RELENG_2_2_7_RELEASE&os;-2.2.7RELENG_2_2_6_RELEASE&os;-2.2.6RELENG_2_2_5_RELEASE&os;-2.2.5RELENG_2_2_2_RELEASE&os;-2.2.2RELENG_2_2_1_RELEASE&os;-2.2.1RELENG_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://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/el_GR.ISO8859-7/books/handbook/virtualization/chapter.sgml b/el_GR.ISO8859-7/books/handbook/virtualization/chapter.sgml
index 7407aa04a0..84c4298469 100644
--- a/el_GR.ISO8859-7/books/handbook/virtualization/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/virtualization/chapter.sgml
@@ -1,923 +1,1130 @@
MurrayStokelyΣυνεισφορά από τον ΕικονικοποίησηΣύνοψηΤο λογισμικό εικονικοποίησης επιτρέπει σε πολλαπλά λειτουργικά
συστήματα να εκτελούνται ταυτόχρονα στον ίδιο υπολογιστή. Σε υπολογιστές
PC το λογισμικό αυτό τυπικά χρησιμοποιεί ένα λειτουργικό ως ξενιστή
(host) στο οποίο και εκτελείται, και το οποίο υποστηρίζει ένα
οποιοδήποτε αριθμό από φιλοξενούμενα (guest) λειτουργικά.Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε:Τη διαφορά μεταξύ ενός ξενιστή (host) και ενός φιλοξενούμενου
(guest) λειτουργικού.Πως να εγκαταστήσετε το &os; σε ένα &apple; &macintosh;
υπολογιστή που βασίζεται σε &intel; αρχιτεκτονική.Πως να εγκαταστήσετε το &os; στο Linux με τη βοήθεια του
&xen;.Πώς να εγκαταστήσετε το &os; κάτω από µsoft.windows; με
το Virtual PC.Πως να βελτιστοποιήσετε ένα &os; σύστημα για την καλύτερη
απόδοση σε περιβάλλον εικονικού μηχανήματος.Πριν διαβάσετε αυτό το κεφάλαιο, θα πρέπει:Να έχετε κατανοήσει τις βασικές έννοιες του &unix; και του &os; ().Να γνωρίζετε πως θα εγκαταστήσετε το &os; ().Να γνωρίζετε πως θα ρυθμίσετε τη σύνδεση σας στο δίκτυο
().Να γνωρίζετε πως να εγκαταστήσετε πρόσθετο λογισμικό
τρίτου κατασκευαστή ().Το &os; ως φιλοξενούμενο λειτουργικόΤο Parallels σε MacOSΤο Parallels Desktop για &mac; είναι
ένα εμπορικό λογισμικό το οποίον είναι διαθέσιμο για υπολογιστές
&apple; &mac; με επεξεργαστή &intel; και λειτουργικό &macos; 10.4.6 ή
νεότερο. Το &os; παρέχει πλήρη υποστήριξη ως φιλοξενούμενο
λειτουργικό. Όταν το Parallels έχει
εγκατασταθεί στο &macos; X, ο χρήστης πρέπει να ρυθμίσει ένα εικονικό
σύστημα και στη συνέχεια να εγκαταστήσει το φιλοξενούμενο λειτουργικό
σύστημα που επιθυμεί.Εγκαθιστώντας το &os; στο Parallels/&macos; XΤο πρώτο βήμα για την εγκατάσταση του &os; στο &macos;
X/Parallels είναι να δημιουργήσετε ένα
νέο εικονικό σύστημα για το &os;. Όταν ερωτηθείτε, επιλέξτε
το &os; σαν το φιλοξενούμενο
λειτουργικό (Guest OS) .Ορίστε ένα λογικό μέγεθος δίσκου και μνήμης που να
ανταποκρίνεται στα σχέδια που έχετε για την εικονικοποίηση του
&os;. 4GB δίσκος και 512MB μνήμης δουλεύουν μια χαρά για τους
περισσότερους χρήστες του &os;μέσα από το
Parallels:Επιλέξτε τον τύπο δικτύωσης και τον προσαρμογέα δικτύου:Αποθήκευση και τέλος των ρυθμίσεων:Όταν το εικονικό σύστημα έχει δημιουργηθεί, θα χρειαστεί να
εγκαταστήσετε το ίδιο το &os;. Ο καλύτερος τρόπος για να γίνει
η εγκατάσταση είναι με το επίσημο &os; CD-ROM ή με κάποιο αρχείο
ISO, κατεβασμένο από τον επίσημο FTP τόπο. Όταν έχετε το κατάλληλο
ISO στο σκληρό σας, ή το CD-ROM στον οδηγό CD, ενεργοποιήστε με το ποντίκι το
εικονίδιο του CD στο κάτω δεξί μέρος της οθόνης του
Parallels. Με αυτόν τον τρόπο θα
μπορέσετε να ορίσετε την πηγή της εγκατάστασης. Μπορείτε να
ορίσετε το CDROM ή κάποιο διαθέσιμο ISO αρχείο.Όταν έχετε αντιστοιχήσει τη πηγή εγκατάστασης, επανεκκινήστε το
εικονικό σύστημα πατώντας απλά το κουμπί της επανεκκίνησης (reboot)
- του Parallels. To
+ του Parallels. Το
Parallels θα ξεκινήσει με ένα ειδικό
BIOS το οποίο πρώτα ελέγχει εάν υπάρχει διαθέσιμο κάποιο CD-ROM,
όπως κάνει και ένα φυσιολογικό BIOS.Σε αυτή τη περίπτωση θα βρει το μέσο εγκατάστασης του &os;
και θα ξεκινήσει το sysinstall όπως
περιγράφεται στο . Μπορείτε να
εγκαταστήσετε το X11, αλλά μη δοκιμάσετε να ρυθμίσετε αυτή τη
στιγμή.Όταν τελειώσετε με την εγκατάσταση, κάντε μια επανεκκίνηση στο
φρέσκο εικονικό &os;.Ρυθμίζοντας το &os; στο &macos; X/ParallelsΑφού έχει εγκατασταθεί επιτυχώς το &os; στο &macos; X με το
Parallels, υπάρχουν μερικά βήματα ακόμη
που μπορούν να σας βοηθήσουν να ρυθμίσετε το εικονικό σας
σύστημα.Μεταβλητές του boot loaderΤο ποιο σημαντικό βήμα είναι να μειώσετε το μέγεθος του
προκειμένου να αξιοποιήσετε τη CPU
μέσα από το Parallels. Αυτό μπορεί
να γίνει με το να προσθέσετε την ακόλουθη γραμμή στο
/boot/loader.conf:kern.hz=100Χωρίς αυτή τη ρύθμιση, ένα αδρανές &os; στο
Parallels θα καταναλώνει το 15% της
CPU ενός μονοπύρηνου &imac;. Μετά από την αλλαγή, η
κατανάλωση θα πέσει κοντά στο 5%.Δημιουργία νέου αρχείου ρυθμίσεων του πυρήναΜπορείτε να αφαιρέσετε όλες τους οδηγούς για SCSI,
FireWire, και USB συσκευές.
Το Parallels παρέχει ένα εικονικό
προσαρμογέα δικτύου ο οποίος χρησιμοποιείται από τον οδηγό
&man.ed.4;, οπότε όλοι οι οδηγοί για δικτυακές συσκευές εκτός
των &man.ed.4; και &man.miibus.4; μπορούν να αφαιρεθούν από
τον πυρήνα.Ρύθμιση δικτύουΗ πιο απλή ρύθμιση δικτύου κάνει χρήση του DHCP για να
συνδεθεί το εικονικό σας σύστημα στο ίδιο τοπικό δίκτυο με τον
&mac;. Αυτό μπορεί εύκολα να γίνει με το να προσθέσετε τη
γραμμή ifconfig_ed0="DHCP"
στο /etc/rc.conf. Πολυπλοκότερες
ρυθμίσεις δικτύου περιγράφονται στο
κεφάλαιο .
+
&os; με &xen; στο LinuxΤο &xen; hypervisor είναι ένα προϊόν
παρα-εικονικοποίησης (paravirtualization) ανοιχτού κώδικα το οποίο
υποστηρίζεται από την εταιρεία XenSource. Τα φιλοξενούμενα
λειτουργικά είναι γνωστά σαν domU domains, και ο ξενιστής σαν dom0.
Το πρώτο βήμα για να τρέξετε ένα εικονικό σύστημα &os; μέσα από
το Linux είναι να εγκαταστήσετε το &xen;
για Linux dom0. Εμείς χρησιμοποιήσαμε ως ξενιστή της διανομή
Slackware Linux.Εγκατάσταση &xen; 3 σε Linux dom0Κατέβασμα &xen; 3.0 από XenSourceΚατεβάστε xen-3.0.4_1-src.tgz
from .Ξεπακετάρετε το tarball&prompt.root; cd xen-3.0.4_1-src
&prompt.root; KERNELS="linux-2.6-xen0 linux-2.6-xenU" make world
&prompt.root; make installΓια να μεταγλωττίσετε ξανά τον πυρήνα για το dom0:&prompt.root; cd xen-3.0.4_1-src/linux-2.6.16.33-xen0
&prompt.root; make menuconfig
&prompt.root; make
&prompt.root; make installΠαλιές εκδόσεις του &xen; ίσως χρειάζονται να οριστεί το
make ARCH=xen menuconfigΠροσθήκη στη λίστα του Grub menu.lstΕπεξεργαστείτε το /boot/grub/menu.lst
και προσθέστε τις παρακάτω γραμμές:title Xen-3.0.4
root (hd0,0)
kernel /boot/xen-3.0.4-1.gz dom0_mem=262144
module /boot/vmlinuz-2.6.16.33-xen0 root=/dev/hda1 roΕπανεκκινήστε το σύστημά σας και φορτώστε το &xen;Αρχικά, επεξεργαστείτε
το /etc/xen/xend-config.sxp, και
προσθέστε τις παρακάτω γραμμές:(network-script 'network-bridge netdev=eth0')Στη συνέχεια, μπορούμε να τρέξουμε το
&xen;:&prompt.root; /etc/init.d/xend start
&prompt.root; /etc/init.d/xendomains startΤο dom0 τρέχει:&prompt.root; xm list
Name ID Mem VCPUs State Time(s)
-Domain-0 0 256 1 r----- 54452.9
+Domain-0 0 256 1 r––––– 54452.9
&os; 7-CURRENT domUΚατεβάστε το &os; domU kernel για το &xen;
3.0 και την εικόνα δίσκο (disk image)
από http://www.fsmware.com/kernel-currentmdroot-7.0.bz2xmexample1.bsdΤοποθετήστε το αρχείο
ρυθμίσεων xmexample1.bsd μέσα
στο /etc/xen/ και αλλάξτε τα στοιχεία που
σχετίζονται με το που βρίσκεται ο πυρήνας και η εικόνα δίσκου. Θα
πρέπει να μοιάζει με το παρακάτω:kernel = "/opt/kernel-current"
memory = 256
name = "freebsd"
vif = [ '' ]
disk = [ 'file:/opt/mdroot-7.0,hda1,w' ]
#on_crash = 'preserve'
extra = "boot_verbose"
extra += ",boot_single"
extra += ",kern.hz=100"
extra += ",vfs.root.mountfrom=ufs:/dev/xbd769a"Το αρχείο mdroot-7.0.bz2 θα πρέπει να είναι αποσυμπιεσμένοΣτη συνέχεια, το __xen_guest που βρίσκεται
στο kernel-current πρέπει να αλλάξει για να
προστεθεί το VIRT_BASE που απαιτεί το
&xen; 3.0.3:&prompt.root; objcopy kernel-current -R __xen_guest
&prompt.root; perl -e 'print "LOADER=generic,GUEST_OS=freebsd,GUEST_VER=7.0,XEN_VER=xen-3.0,BSD_SYMTAB,VIRT_BASE=0xC0000000\x00"' > tmp
-&prompt.root; objcopy kernel-current --add-section __xen_guest=tmp
+&prompt.root; objcopy kernel-current ––add-section __xen_guest=tmp&prompt.root; objdump -j __xen_guest -s kernel-current
kernel-current: file format elf32-i386
Contents of section __xen_guest:
0000 4c4f4144 45523d67 656e6572 69632c47 LOADER=generic,G
0010 55455354 5f4f533d 66726565 6273642c UEST_OS=freebsd,
0020 47554553 545f5645 523d372e 302c5845 GUEST_VER=7.0,XE
0030 4e5f5645 523d7865 6e2d332e 302c4253 N_VER=xen-3.0,BS
0040 445f5359 4d544142 2c564952 545f4241 D_SYMTAB,VIRT_BA
0050 53453d30 78433030 30303030 3000 SE=0xC0000000. Τώρα είμαστε έτοιμοι να δημιουργήσουμε και να εκκινήσουμε το
domU:&prompt.root; xm create /etc/xen/xmexample1.bsd -c
Using config file "/etc/xen/xmexample1.bsd".
Started domain freebsd
WARNING: loader(8) metadata is missing!
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 7.0-CURRENT #113: Wed Jan 4 06:25:43 UTC 2006
kmacy@freebsd7.gateway.2wire.net:/usr/home/kmacy/p4/freebsd7_xen3/src/sys/i386-xen/compile/XENCONF
WARNING: DIAGNOSTIC option enabled, expect reduced performance.
Xen reported: 1796.927 MHz processor.
Timecounter "ixen" frequency 1796927000 Hz quality 0
CPU: Intel(R) Pentium(R) 4 CPU 1.80GHz (1796.93-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0xf29 Stepping = 9
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,
DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0x4400<CNTX-ID,<b14>>
real memory = 265244672 (252 MB)
avail memory = 255963136 (244 MB)
xc0: <Xen Console> on motherboard
cpu0 on motherboard
Timecounters tick every 10.000 msec
[XEN] Initialising virtual ethernet driver.
xn0: Ethernet address: 00:16:3e:6b:de:3a
[XEN]
Trying to mount root from ufs:/dev/xbd769a
WARNING: / was not properly dismounted
Loading configuration files.
No suitable dump device was found.
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Starting file system checks:
/dev/xbd769a: 18859 files, 140370 used, 113473 free (10769 frags, 12838 blocks, 4.2% fragmentation)
Setting hostname: demo.freebsd.org.
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
inet 127.0.0.1 netmask 0xff000000
Additional routing options:.
Mounting NFS file systems:.
Starting syslogd.
/etc/rc: WARNING: Dump device does not exist. Savecore not run.
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/X11R6/lib /usr/local/lib
a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout
Starting usbd.
usb: Kernel module not available: No such file or directory
Starting local daemons:.
Updating motd.
Starting sshd.
Initial i386 initialization:.
Additional ABI support: linux.
Starting cron.
Local package initialization:.
Additional TCP options:.
Starting background file system checks in 60 seconds.
Sun Apr 1 02:11:43 UTC 2007
FreeBSD/i386 (demo.freebsd.org) (xc0)
login: Το domU θα πρέπει να τρέχει τον πυρήνα
&os; 7.0-CURRENT:&prompt.root; uname -a
FreeBSD demo.freebsd.org 7.0-CURRENT FreeBSD 7.0-CURRENT #113: Wed Jan 4 06:25:43 UTC 2006
kmacy@freebsd7.gateway.2wire.net:/usr/home/kmacy/p4/freebsd7_xen3/src/sys/i386-xen/compile/XENCONF i386Τώρα μπορούμε να ρυθμίσουμε και το δίκτυο στο domU. Το &os; domU
θα κάνει χρήση ενός ειδικού προσαρμογέα με όνομα
xn0:&prompt.root; ifconfig xn0 10.10.10.200 netmask 255.0.0.0
&prompt.root; ifconfig
xn0: flags=843<UP,BROADCAST,RUNNING,SIMPLEX> mtu 1500
inet 10.10.10.200 netmask 0xff000000 broadcast 10.255.255.255
ether 00:16:3e:6b:de:3a
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
inet 127.0.0.1 netmask 0xff000000 Στο dom0 Slackware, κάποιa network interfaces που εξαρτώνται από
το &xen; θα πρέπει τώρα να είναι
διαθέσιμα:&prompt.root; ifconfig
eth0 Link encap:Ethernet HWaddr 00:07:E9:A0:02:C2
inet addr:10.10.10.130 Bcast:0.0.0.0 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:815 errors:0 dropped:0 overruns:0 frame:0
TX packets:1400 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:204857 (200.0 KiB) TX bytes:129915 (126.8 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:99 errors:0 dropped:0 overruns:0 frame:0
TX packets:99 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9744 (9.5 KiB) TX bytes:9744 (9.5 KiB)
peth0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:1853349 errors:0 dropped:0 overruns:0 frame:0
TX packets:952923 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2432115831 (2.2 GiB) TX bytes:86528526 (82.5 MiB)
Base address:0xc000 Memory:ef020000-ef040000
vif0.1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:1400 errors:0 dropped:0 overruns:0 frame:0
TX packets:815 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:129915 (126.8 KiB) TX bytes:204857 (200.0 KiB)
vif1.0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:157 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:140 (140.0 b) TX bytes:158 (158.0 b)
xenbr1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:112 (112.0 b) TX bytes:0 (0.0 b)&prompt.root; brctl show
bridge name bridge id STP enabled interfaces
xenbr1 8000.feffffffffff no vif0.1
peth0
vif1.0
+-->
+
+ Το Virtual PC στα &windows;
+
+ Το Virtual PC για &windows; είναι ένα
+ προϊόν της µsoft; που διατίθεται για δωρεάν κατέβασμα. Δείτε
+ τις απαιτήσεις συστήματος.
+ Μετά την εγκατάσταση του Virtual PC στα
+ µsoft.windows;, ο χρήστης πρέπει να ρυθμίσει ένα εικονικό
+ μηχάνημα και να εγκαταστήσει το φιλοξενούμενο λειτουργικό που
+ επιθυμεί.
+
+
+ Εγκατάσταση του &os; στο Virtual PC/µsoft.windows;
+
+ Το πρώτο βήμα στην εγκατάσταση του &os; στα µsoft.windows;
+ με χρήση του Virtual PC, είναι η
+ δημιουργία ενός νέου εικονικού μηχανήματος για την εγκατάσταση του.
+ Επιλέξτε Create a virtual machine όταν
+ ερωτηθείτε:
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Στην ερώτηση Operating System
+ επιλέξτε Other:
+
+
+
+
+
+
+
+ Επιλέξτε έπειτα κατάλληλο μέγεθος για το σκληρό δίσκο και τη
+ μνήμη RAM του εικονικού μηχανήματος, ανάλογα με τη χρήση που
+ σκοπεύετε να κάνετε. Στις περισσότερες περιπτώσεις, τα 4GB δίσκου
+ και 512MB RAM είναι αρκετά για χρήση του &os; στο
+ Virtual PC:
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Ολοκληρώστε αποθηκεύοντας τις ρυθμίσεις:
+
+
+
+
+
+
+
+ Επιλέξτε την εικονική μηχανή &os; που δημιουργήσατε και
+ κάντε κλικ στο Settings. Ρυθμίστε
+ έπειτα το είδος και την διεπαφή (interface) του δικτύου:
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Αφού δημιουργήσετε την εικονική μηχανή σας για το &os;, θα
+ πρέπει να εγκαταστήσετε το λειτουργικό σε αυτήν. Ο καλύτερος
+ τρόπος είναι να χρησιμοποιήσετε ένα από τα επίσημα CDROM του
+ &os; ή να κατεβάσετε κάποιο αρχείο ISO από την επίσημη τοποθεσία
+ FTP. Έχοντας το κατάλληλο αρχείο ISO στο τοπικό σας σύστημα
+ αρχείων των &windows; (ή το αντίστοιχο CDROM στον οδηγό), κάντε
+ διπλό κλικ στο εικονίδιο της εικονικής μηχανής &os; για να την
+ εκκινήσετε. Έπειτα κάντε κλικ στο CD και
+ επιλέξτε Capture ISO Image... στο παράθυρο
+ του Virtual PC. Θα εμφανιστεί ένα
+ παράθυρο που θα σας επιτρέψει να συσχετίσετε τον εικονικό οδηγό
+ CDROM με ένα αρχείο ISO ή και με τον πραγματικό σας οδηγό.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Μόλις δημιουργήσετε τη συσχέτιση με την πηγή που θα
+ χρησιμοποιήσετε ως CDROM, επανεκκινήστε το εικονικό σας &os;
+ μηχάνημα, επιλέγοντας Reset από το μενού
+ Action.
+ Το Virtual PC εκκινεί με ένα ειδικό
+ BIOS το οποίο ελέγχει πρώτα αν υπάρχει CDROM στον οδηγό, όπως
+ ακριβώς συμβαίνει και με ένα φυσιολογικό BIOS.
+
+
+
+
+
+
+
+ Στη δική μας περίπτωση, θα ανιχνεύσει το μέσο εγκατάστασης του
+ &os; και θα ξεκινήσει η συνηθισμένη διαδικασία εγκατάστασης μέσω
+ του sysinstall, όπως περιγράφεται στο
+ . Μπορείτε να προχωρήσετε με την
+ εγκατάσταση, αλλά μη προσπαθήσετε να ρυθμίσετε το γραφικό
+ σύστημα X11 τη δεδομένη στιγμή.
+
+
+
+
+
+
+
+ Όταν τελειώσετε την εγκατάσταση, μη ξεχάσετε να βγάλετε το
+ CDROM από τον οδηγό (ή να καταργήσετε την αντίστοιχη συσχέτιση με
+ το αρχείο ISO). Μπορείτε έπειτα να επανεκκινήσετε στη νέα σας
+ εγκατάσταση του &os;.
+
+
+
+
+
+
+
+
+
+ Ρύθμιση του &os; στο Virtual PC σε µsoft.windows;
+
+ Μετά την επιτυχή εγκατάσταση του &os; στα µsoft.windows;
+ μέσω του Virtual PC, θα πρέπει να
+ εκτελέσετε μια σειρά από ρυθμίσεις για να βελτιστοποιήσετε
+ την λειτουργία του συστήματος σε περιβάλλον εικονικής
+ μηχανής.
+
+
+
+ Θέστε τιμές στις μεταβλητές του φορτωτή εκκίνησης
+
+ Η πιο σημαντική ρύθμιση είναι να μειώσετε την τιμή της
+ μεταβλητής για να μειώσετε τη χρήση
+ της CPU στο &os; όταν το χρησιμοποιείτε στο εικονικό περιβάλλον
+ του Virtual PC. Αυτό μπορεί να
+ επιτευχθεί προσθέτοντας την παρακάτω γραμμή στο αρχείο
+ /boot/loader.conf:
+
+ kern.hz=100
+
+ Χωρίς αυτή τη ρύθμιση, μια εικονική μηχανή &os; στο
+ Virtual PC, όταν εκτελείται χωρίς
+ φορτίο, θα χρησιμοποιεί περίπου το 40% του επεξεργαστή σε
+ ένα μηχάνημα με μία CPU. Μετά από την αλλαγή αυτή, η χρήση
+ θα είναι κοντά στο 3%.
+
+
+
+ Δημιουργήστε ένα νέο αρχείο ρυθμίσεων πυρήνα
+
+ Μπορείτε να αφαιρέσετε όλα τα προγράμματα οδήγησης για
+ συσκευές SCSI, Firewire και USB.
+ Το Virtual PC παρέχει μια εικονική
+ κάρτα δικτύου η οποία υποστηρίζεται από το πρόγραμμα οδήγησης
+ &man.de.4;, άρα μπορείτε να αφαιρέσετε όλες τις άλλες κάρτες
+ δικτύου από τον πυρήνα, εκτός από το &man.de.4; και το
+ &man.miibus.4;.
+
+
+
+ Ρύθμιση δικτύου
+
+ Η πιο απλή ρύθμιση δικτύου περιλαμβάνει τη χρήση του
+ πρωτοκόλλου DHCP για να συνδέσετε το εικονικό μηχάνημα σας στο
+ ίδιο τοπικό δίκτυο με το μηχάνημα ξενιστή. Αυτό επιτυγχάνεται
+ προσθέτοντας τη γραμμή ifconfig_de0="DHCP"
+ στο /etc/rc.conf. Μπορείτε να βρείτε
+ πιο προχωρημένες ρυθμίσεις δικτύου στο .
+
+
+
+ Το VMware σε MacOSΤο VMware Fusion για &mac; είναι ένα
εμπορικό πρόγραμμα. Υπάρχει διαθέσιμο για υπολογιστές &apple; &mac;
αρχιτεκτονικής &intel; που τρέχουν &macos; 10.4.9 ή κάποια πιο
πρόσφατη έκδοση. Το &os; υποστηρίζεται πλήρως ως φιλοξενούμενο
(guest) λειτουργικό. Μόλις ολοκληρωθεί η εγκατάσταση
του VMware Fusion στο &macos; X, πρέπει να
ρυθμίσετε μια εικονική μηχανή και να εγκαταστήσετε το φιλοξενούμενο
λειτουργικό σύστημα.Εγκατάσταση του &os; στο VMware/&macos; XΑρχικά ξεκινήστε το VMware Fusion, και θα φορτώσει η Συλλογή
Εικονικών Μηχανών. Επιλέξτε "New" για να δημιουργήσετε μια νέα
εικονική μηχανή:Θα δείτε να φορτώνει το New Virtual Machine Assistant, το
βοηθητικό πρόγραμμα δημιουργίας μιας νέας εικονικής μηχανής.
Επιλέξτε Continue για να συνεχίσετε:Στην επιλογή λειτουργικού συστήματος
διαλέξτε Other και ως έκδοση λειτουργικού
συστήματος διαλέξτε &os;
ή &os; 64-bit (ανάλογα με το αν θέλετε
υποστήριξη για 64-bit εφαρμογές ή όχι):Δώστε ένα όνομα για το VM Image και ρυθμίστε τον κατάλογο στον
οποίο θέλετε να αποθηκευθεί:Ρυθμίστε το μέγεθος του Εικονικού Δίσκου για την εικονική
μηχανή:Επιλέξτε μια μέθοδο εγκατάστασης για την εικονική μηχανή: είτε
από ένα ISO image είτε από το CD-ROM:Μόλις επιλέξετε Finish, η εικονική μηχανή θα ξεκινήσει τη
διαδικασία εκκίνησης (boot):Εγκαταστήστε το &os; όπως θα κάνατε και σε οποιοδήποτε άλλο
υπολογιστή, ή ακολουθώντας τις οδηγίες από
το :Μόλις ολοκληρωθεί η εγκατάσταση, μπορείτε να αλλάξετε τις
ρυθμίσεις της εικονικής μηχανής, όπως π.χ. το μέγεθος μνήμης που θα
χρησιμοποιεί:Οι ρυθμίσεις υλικού μιας εικονικής μηχανής δε μπορούν να
αλλάξουν όσο τρέχει αυτή η εικονική μηχανή.Μπορείτε, ακόμη, να ρυθμίσετε τον αριθμό των επεξεργαστών τους
οποίους επιτρέπεται να χρησιμοποιήσει αυτή η εικονική μηχανή:Ίσως έχει νόημα, επίσης, να αλλάξετε το αρχείο ή τη συσκευή που
φαίνεται ως CD-ROM μέσα στην εικονική μηχανή. Συνήθως μπορείτε να
αποσυνδέσετε το CD-ROM ή το ISO image από την εικονική μηχανή, αφού
δε χρειάζεται πλέον όταν έχει ολοκληρωθεί η εγκατάσταση του
&os;:Μια από τις τελευταίες ρυθμίσεις είναι η σύνδεση της εικονικής
μηχανής με το δίκτυο. Για να μπορείτε να συνδεθείτε στην ΕΜ από
άλλα μηχανήματα (εκτός του ξενιστή), ενεργοποιήστε την
επιλογή Connect directly to the physical network
(Bridged). Αλλιώς, για να μπορεί η ΕΜ να συνδεθεί
στο δίκτυο μέσω του ξενιστή, αλλά να μη μπορούν άλλα μηχανήματα να
συνδεθούν σε αυτή, ενεργοποιήστε την επιλογή Share the
host's internet connection (NAT).Μόλις τελειώσετε με αυτές τις ρυθμίσεις, μπορείτε να εκκινήσετε
τη νέα εικονική μηχανή με το φρεσκο-εγκατεστημένο &os; σας.Ρυθμίσεις του &os; μέσα στο &macos; X/VMwareΑφού τελειώσετε με την εγκατάσταση του &os; σε μια εικονική
μηχανή VMware μέσα σε &macos; X, πρέπει
να κάνετε κάποιες ρυθμίσεις για να βελτιωθεί η απόδοση του &os; ως
φιλοξενούμενου συστήματος.Ρυθμίσεις μεταβλητών του boot loaderΗ πιο σημαντική ρύθμιση είναι να μειώσετε την τιμή της
μεταβλητής , για να μειωθεί κάπως η
χρήση του επεξεργαστή από το &os; καθώς τρέχει μέσα
στο VMware. Προσθέστε, λοιπόν, την
παρακάτω γραμμή στο
αρχείο /boot/loader.conf:kern.hz=100Χωρίς αυτή τη ρύθμιση ένα φιλοξενούμενο &os; που τρέχει μέσα
σε VMware μπορεί να χρησιμοποιεί μέχρι και 15% του επεξεργαστή
ενός &imac;. Μετά από αυτή τη ρύθμιση η χρήση του επεξεργαστή
μπορεί να είναι μικρότερη από 5%.Δημιουργήστε ένα νέο αρχείο ρυθμίσεων πυρήναΜπορείτε να αφαιρέσετε όλες τις συσκευές FireWire και USB.
Το VMware παρέχει μια εικονική κάρτα
δικτύου, η οποία είναι συμβατή με τον οδηγό &man.em.4;, οπότε
μπορείτε να αφαιρέσετε όλες τις υπόλοιπες κάρτες δικτύου από τον
πυρήνα σας.Ρυθμίστε το δίκτυοΟ πιο εύκολος τρόπος να ρυθμίσετε το δίκτυο της εικονικής
μηχανής είναι να συνδεθείτε μέσω DHCP με το τοπικό δίκτυο,
χρησιμοποιώντας τη διεύθυνση MAC του ξενιστή. Αυτό μπορεί να
γίνει προσθέτοντας τη
γραμμή ifconfig_em0="DHCP" στο
αρχείο /etc/rc.conf. Για περισσότερες
πληροφορίες και πιο προχωρημένες ρυθμίσεις δικτύου, δείτε
το . Το &os; ως Ξενιστής (Host)Για αρκετά χρόνια, κανένα από τα πακέτα εικονικοποίησης δεν
υποστήριζε επίσημα το &os; ως ξενιστή. Κάποιοι χρήστες
χρησιμοποιούσαν παλιές και κατά βάση εγκαταλελειμμένες εκδόσεις του
VMware (όπως το emulators/vmware3), οι οποίες
χρησιμοποιούσαν την συμβατότητα εκτέλεσης προγραμμάτων &linux;.
Λίγο μετά την επίσημη κυκλοφορία του &os; 7.2, έγινε διαθέσιμη
στη Συλλογή των Ports η έκδοση Ανοικτού Κώδικα
(OSE, Open Source Edition) του
&virtualbox; της &sun;. Η εφαρμογή αυτή
εκτελείται ως εγγενές πρόγραμμα του &os;.Το &virtualbox; είναι ένα πλήρες πακέτο
εικονικοποίησης το οποίο βρίσκεται σε διαρκή ανάπτυξη. Είναι διαθέσιμο
για τα περισσότερα λειτουργικά συστήματα, συμπεριλαμβανομένων των
&windows;, &macos;, &linux; και &os;. Έχει τη δυνατότητα να εκτελεί το
ίδιο καλά τόσο λειτουργικά τύπου &windows; όσο και &unix;. Έρχεται σε
δύο εκδόσεις: ανοικτού και κλειστού κώδικα. Από την μεριά του χρήστη,
ίσως ο μεγαλύτερος περιορισμός της έκδοσης ανοικτού κώδικα είναι η
έλλειψη υποστήριξης συσκευών USB. Μπορείτε να δείτε όλες τις διαφορές
στη σελίδα Editions του
&virtualbox; wiki, στην τοποθεσία .
Τη δεδομένη στιγμή, μόνο η έκδοση OSE διατίθεται για το &os;.Εγκατάσταση του &virtualbox;Το &virtualbox; είναι διαθέσιμο ως &os;
port στο emulators/virtualbox-ose,
και μπορείτε να το εγκαταστήσετε με τις παρακάτω εντολές:&prompt.root; cd /usr/ports/emulators/virtualbox-ose
&prompt.root; make install cleanΜια χρήσιμη επιλογή που εμφανίζεται στο διάλογο ρυθμίσεων, αφορά
την εγκατάσταση των προγραμμάτων GuestAdditions.
Τα προγράμματα αυτά παρέχουν μια σειρά από χρήσιμες λειτουργίες στα
φιλοξενούμενα λειτουργικά, όπως η διάφανη λειτουργία του δείκτη
ποντικιού (επιτρέπει στο ποντίκι να κινείται ελεύθερα μεταξύ του
ξενιστή και του φιλοξενούμενου λειτουργικού, χωρίς να απαιτείται η
χρήση κάποιου ειδικού πλήκτρου για εναλλαγή) καθώς και ταχύτερη
γραφική απεικόνιση, ειδικά σε λειτουργικά &windows;. Μπορείτε να
βρείτε τα guest additions στο μενού Devices, όταν
ολοκληρώσετε την εγκατάσταση του φιλοξενούμενου λειτουργικού.Πριν χρησιμοποιήσετε το &virtualbox;
για πρώτη φορά, θα πρέπει να αλλάξετε κάποιες ρυθμίσεις. Το port
εγκαθιστά ένα άρθρωμα πυρήνα στον κατάλογο /boot/modules το οποίο θα πρέπει να
φορτώσετε στον πυρήνα που εκτελείται:&prompt.root; kldload vboxdrvΓια να φορτώνεται το άρθρωμα αυτόματα σε κάθε επανεκκίνηση
του συστήματος, προσθέστε την παρακάτω γραμμή στο αρχείο
/boot/loader.conf:vboxdrv_load="YES"
- Οικ εκδόσεις του &virtualbox; πριν την
+ Οι εκδόσεις του &virtualbox; πριν την
3.1.2 απαιτούν επίσης την προσάρτηση του συστήματος αρχείων proc. Αυτό δεν απαιτείται στις
πρόσφατες εκδόσεις, οι οποίες χρησιμοποιούν τις συναρτήσεις που
παρέχει η βιβλιοθήκη &man.sysctl.3;.Όταν χρησιμοποιείτε κάποια παλιότερη έκδοση του port, ακολουθήστε
τις παρακάτω οδηγίες για να βεβαιωθείτε ότι γίνεται σωστά η
προσάρτηση του proc:&prompt.root; mount -t procfs proc /procΓια να παραμείνει αυτή η ρύθμιση μετά από μια επανεκκίνηση, θα
πρέπει να προσθέσετε την παρακάτω γραμμή στο αρχείο
/etc/fstab:proc /proc procfs rw 0 0Αν δείτε το παρακάτω μήνυμα όταν εκτελείτε το
&virtualbox; μέσω τερματικού:VirtualBox: supR3HardenedExecDir: couldn't read "", errno=2 cchLink=-1Η πιο πιθανή αιτία είναι κάποιο πρόβλημα με το σύστημα αρχείων
proc. Χρησιμοποιήστε την
εντολή mount για να δείτε αν το proc έχει προσαρτηθεί σωστά.Κατά τη διάρκεια της εγκατάστασης του
&virtualbox;, δημιουργείται αυτόματα η
ομάδα χρηστών vboxusers. Όλοι οι χρήστες που
χρειάζονται πρόσβαση στο &virtualbox;, θα
πρέπει να ανήκουν σε αυτή την ομάδα. Μπορείτε να χρησιμοποιήσετε την
εντολή pw για να προσθέσετε νέα μέλη στην
ομάδα:&prompt.root; pw groupmod vboxusers -m yourusernameΓια να εκτελέσετε το &virtualbox;,
μπορείτε απλώς να επιλέξετε την καταχώριση
Sun VirtualBox από το μενού του γραφικού
σας περιβάλλοντος, ή να πληκτρολογήσετε το παρακάτω σε ένα
τερματικό:&prompt.user; VirtualBoxΓια περισσότερες πληροφορίες σχετικά με τη ρύθμιση και χρήση του
&virtualbox;, παρακαλούμε επισκεφθείτε την
επίσημη δικτυακή τοποθεσία στο . Καθώς το &os; port είναι
πολύ πρόσφατο, η εξέλιξη του είναι συνεχής. Για τις τελευταίες
πληροφορίες καθώς και για οδηγίες αντιμετώπισης τυχόν προβλημάτων,
παρακαλούμε δείτε τη σχετική σελίδα στο wiki του &os;, στην τοποθεσία
.Άλλες Επιλογές ΕικονικοποίησηςΥπό εξέλιξη βρίσκεται η προσπάθεια να λειτουργήσει το
&xen; ως περιβάλλον ξενιστή για το
&os;.