diff --git a/el_GR.ISO8859-7/books/handbook/eresources/chapter.sgml b/el_GR.ISO8859-7/books/handbook/eresources/chapter.sgml
index 4e56fa28d1..92fe1a8e40 100644
--- a/el_GR.ISO8859-7/books/handbook/eresources/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/eresources/chapter.sgml
@@ -1,2140 +1,2145 @@
Πηγές Πληροφόρησης στο ΔιαδίκτυοΗ ραγδαία εξέλιξη του &os; καθιστά τα έντυπα μέσα ανίκανα να
ακολουθήσουν τις τελευταίες εξελίξεις. Οι ηλεκτρονικές πηγές είναι ο
καλύτερος (αν όχι ο μόνος) τρόπος για να παραμείνετε ενήμερος για τις
τελευταίες εξελίξεις. Καθώς το &os; είναι μια εθελοντική προσπάθεια, η
κοινότητα των χρηστών λειτουργεί και ως
τμήμα τεχνικής υποστήριξης, με το ηλεκτρονικό ταχυδρομείο,
τα web forums, και τα USENET news να είναι οι πλέον αποτελεσματικοί
τρόποι για να έλθετε σε επαφή με αυτή την κοινότητα.Στις παρακάτω ενότητες, θα βρείτε τα σημαντικότερα σημεία
επικοινωνίας με την κοινότητα χρηστών του &os;. Αν γνωρίζετε και άλλες
πηγές, οι οποίες δεν αναφέρονται εδώ, παρακαλούμε να τις στείλετε στην
&a.doc; ώστε να ενταχθούν και αυτές.Λίστες Ηλεκτρονικού ΤαχυδρομείουΟι λίστες ηλεκτρονικού ταχυδρομείου είναι ο πιο άμεσος τρόπος για
να απευθύνετε τις ερωτήσεις σας ή να ανοίξετε μια τεχνική συζήτηση που
να απευθύνεται σε κοινό ειδικευμένο στο &os;. Υπάρχει μεγάλη ποικιλία
από λίστες, οι οποίες καλύπτουν ευρύ φάσμα θεμάτων του &os;.
Κατευθύνοντας τις ερωτήσεις σας στη σωστή λίστα, θα εξασφαλίσετε
ταχύτερη και ακριβέστερη απόκριση.Στο τέλος αυτού του κειμένου θα βρείτε ένα πίνακα με τη θεματολογία
της κάθε λίστας. Παρακαλούμε να τον διαβάσετε πριν αρχίσετε
να συμμετέχετε ή να στέλνετε μηνύματα σε οποιαδήποτε λίστα.
Οι περισσότεροι από τους συνδρομητές μας δέχονται καθημερινά
εκατοντάδες μηνύματα σχετικά με το &os;. Οι κανόνες που έχουμε
καθιερώσει, βοηθάνε να γίνεται σωστή χρήση και να διατηρείται σε υψηλό
επίπεδο η αναλογία σήματος προς θόρυβο της κάθε λίστας. Εάν ήμασταν
πιο χαλαροί, οι λίστες μας θα έχαναν την αποτελεσματικότητα τους ως
μέσο επικοινωνίας για το Project.Αν θέλετε να δοκιμάσετε την ικανότητα σας να στέλνετε
μηνύματα στις λίστες του &os;, στείλτε ένα δοκιμαστικό μήνυμα στην
λίστα &a.test.name;. Παρακαλούμε μη στέλνετε δοκιμαστικά
μηνύματα σε οποιαδήποτε άλλη λίστα.Αν βρίσκεστε σε δίλημμα σχετικά με το ποια λίστα να στείλετε μια
ερώτηση, δείτε το Πως να
χρησιμοποιείτε με επιτυχία την λίστα ηλεκτρονικού ταχυδρομείου
&os;-questions.Πριν στείλετε κάτι σε οποιαδήποτε λίστα, μάθετε πως να
χρησιμοποιείτε καλύτερα τις λίστες ηλεκτρονικού ταχυδρομείου. Για
παράδειγμα, δείτε πως μπορείτε να βοηθήσετε ώστε να αποφεύγονται συχνά
επαναλαμβανόμενες συζητήσεις, διαβάζοντας το κείμενο Συχνές Ερωτήσεις Σχετικά με
τις Λίστες Ταχυδρομείου (FAQ).Για όλες τις λίστες ηλεκτρονικού ταχυδρομείου διατηρείται αρχείο με
τις παλιές δημοσιεύσεις, στο οποίο μπορεί να γίνει αναζήτηση
χρησιμοποιώντας την Δικτυακή
Τοποθεσία του &os;. Είναι δυνατή η αναζήτηση στο αρχείο μέσω
λέξεων-κλειδιών, το οποίο αποτελεί ένα άριστο τρόπο για να βρείτε
απαντήσεις σε συχνές ερωτήσεις. Πριν στείλετε μια ερώτηση, καλό θα
είναι να πραγματοποιήσετε μια τέτοια αναζήτηση. Σημειώστε επίσης ότι
τα μηνύματα που στέλνονται σε αυτές τις λίστες αποθηκεύονται για πάντα.
Αν σας προβληματίζει η προστασία των προσωπικών σας δεδομένων, σας
συνιστούμε να χρησιμοποιήσετε μια δευτερεύουσα διεύθυνση email, και να
μην γράφετε ποτέ προσωπικές σας πληροφορίες.Σύνοψη ΛιστώνΓενικές λίστες: Οι ακόλουθες είναι γενικές
λίστες όπου ο καθένας είναι ελεύθερος (και ενθαρρύνεται) να
συμμετέχει:ΛίσταΣκοπός&a.advocacy.name;Διαφήμιση και προώθηση του &os;&a.announce.name;Σημαντικά γεγονότα και ανακοινώσεις&a.arch.name;Συζητήσεις αρχιτεκτονικής και σχεδιασμού&a.bugbusters.name;Συζητήσεις που αναφέρονται στην συντήρηση της
βάσης δεδομένων αναφοράς προβλημάτων του &os;, και των
σχετικών εργαλείων της&a.bugs.name;Αναφορές σφαλμάτων&a.chat.name;Μη-τεχνικά θέματα που σχετίζονται με την κοινότητα του
&os;&a.current.name;Συζητήσεις που σχετίζονται με τη χρήση
&os.current;&a.isp.name;Θέματα για Παροχείς Υπηρεσιών Διαδικτύου που
χρησιμοποιούν το &os;&a.jobs.name;Συμβουλευτικές υπηρεσίες και θέσεις εργασίας σχετικές
με &os;&a.policy.name;Κατευθυντήριες αποφάσεις (policy) της ομάδας &os; Core.
Λίστα με μικρή κίνηση, και μόνο για ανάγνωση&a.questions.name;Απορίες χρηστών και τεχνική υποστήριξη&a.security-notifications.name;Ειδοποιήσεις ασφαλείας&a.stable.name;Συζητήσεις που σχετίζονται με την χρήση του
&os.stable;&a.test.name;Στείλτε εδώ τα δοκιμαστικά σας μηνύματα αντί για μια
από τις πραγματικές λίστεςΤεχνικές λίστες: Οι ακόλουθες λίστες είναι
για τεχνικές συζητήσεις. Πριν αρχίσετε να συμμετέχετε και να
στέλνετε μηνύματα σε αυτές, θα πρέπει να διαβάσετε προσεκτικά την
περιγραφή τους. Υπάρχουν αυστηρές οδηγίες για τη χρήση και το
περιεχόμενο τους.ΛίσταΣκοπός&a.acpi.name;Ανάπτυξη της διαχείρισης ενέργειας και του ACPI&a.afs.name;Μεταφορά του AFS στο &os;&a.aic7xxx.name;Ανάπτυξη οδηγών για κάρτες &adaptec; AIC 7xxx&a.alpha.name;Μεταφορά του &os; στον Alpha&a.amd64.name;Μεταφορά του &os; σε συστήματα AMD64&a.apache.name;Συζήτηση για ports σχετικά με τον
Apache&a.arm.name;Μεταφορά του &os; σε επεξεργαστές &arm;&a.atm.name;Χρήση δικτύωσης ATM στο &os;&a.audit.name;Project ελέγχου πηγαίου κώδικα&a.binup.name;Σχεδίαση και ανάπτυξη του συστήματος έτοιμων ενημερώσεων
(binary updates)&a.bluetooth.name;Χρήση της τεχνολογίας &bluetooth; στο &os;&a.cluster.name;Χρήση του &os; σε παράλληλα συστήματα&a.cvsweb.name;Συντήρηση του CVSweb&a.database.name;Συζήτηση για την χρήση και ανάπτυξη βάσεων δεδομένων στο
&os;&a.doc.name;Δημιουργία τεκμηρίωσης για το &os;&a.drivers.name;Δημιουργία οδηγών συσκευών για το &os;&a.eclipse.name;Συζήτηση για τη χρήση του Eclipse IDE, των εργαλείων
του, καθώς και rich client εφαρμογών και ports
στο &os;.&a.embedded.name;Χρήση του &os; σε embedded εφαρμογές&a.eol.name;Ομότιμη υποστήριξη για λογισμικό σχετικό με &os;, που
δεν υποστηρίζεται πλέον από το &os; Project.&a.emulation.name;Εξομοίωση άλλων συστημάτων, όπως είναι τα
Linux/&ms-dos;/&windows;&a.firewire.name;Τεχνική συζήτηση για &os; &firewire;
(iLink, IEEE 1394)&a.fs.name;Συστήματα αρχείων&a.gecko.name;Συζήτηση σχετικά με το
Gecko Rendering Engine&a.geom.name;Συζητήσεις σχετικές με το GEOM και τις υλοποιήσεις
του&a.gnome.name;Μεταφορά του GNOME και των
εφαρμογών του&a.hackers.name;Γενικές τεχνικές συζητήσεις&a.hardware.name;Γενική συζήτηση για συμβατότητα υλικού με το
&os;&a.i18n.name;Διεθνοποίηση του &os;&a.ia32.name;Το &os; στην αρχιτεκτονική IA-32 (&intel; x86)&a.ia64.name;Μεταφορά του &os; στα νέα συστήματα IA64 της
&intel;&a.ipfw.name;Τεχνική συζήτηση που επικεντρώνεται στον επανασχεδιασμό
του κώδικα IP του firewall&a.isdn.name;Ομάδα ανάπτυξης του ISDN&a.jail.name;Συζήτηση σχετικά με τις δυνατότητες του
&man.jail.8;&a.java.name;Ομάδα ανάπτυξης &java; και άτομα που μεταφέρουν τα
&jdk;s στο &os;&a.kde.name;Μεταφορά του KDE και των
εφαρμογών του&a.lfs.name;Μεταφορά του LFS στο &os;&a.libh.name;Το σύστημα εγκατάστασης και διαχείρισης πακέτων
δεύτερης γενιάς&a.mips.name;Μεταφορά του &os; σε επεξεργαστές &mips;&a.mobile.name;Συζητήσεις σχετικές με φορητά υπολογιστικά
συστήματα&a.mono.name;Εφαρμογές Mono και C# στο &os;&a.mozilla.name;Μεταφορά του Mozilla
στο &os;&a.multimedia.name;Εφαρμογές πολυμέσων&a.newbus.name;Τεχνικές συζητήσεις σχετικές με την αρχιτεκτονική
διαύλων&a.net.name;Συζητήσεις δικτύωσης και πηγαίος κώδικας TCP/IP&a.openoffice.name;Μεταφορά του OpenOffice.org
και του &staroffice;
στο &os;&a.performance.name;Ερωτήσεις σχετικές με βελτιστοποίηση απόδοσης για
εγκαταστάσεις υψηλής απόδοσης και μεγάλου φορτίου&a.perl.name;Υποστήριξη ενός αριθμού από ports σχετικά με Perl&a.pf.name;Συζήτηση και ερωτήσεις σχετικές με το σύστημα packet
filter firewall&a.platforms.name;Συζήτηση για μεταφορά σε μη-&intel;
αρχιτεκτονικές&a.ports.name;Συζήτηση για την Συλλογή των Ports&a.ports-bugs.name;Συζήτηση για σφάλματα και αναφορές σφαλμάτων (PRs) που
αφορούν ports&a.ppc.name;Μεταφορά του &os; στο &powerpc;&a.proliant.name;Τεχνική συζήτηση για χρήση του &os; σε διακομιστές HP
ProLiant&a.python.name;Θέματα σχετικά με Python στο &os;&a.qa.name;Συζήτηση σχετικά με Έλεγχο και Διασφάλιση Ποιότητας
(Quality Assurance), συνήθως πριν από μια επίσημη έκδοση
του &os;&a.rc.name;Συζήτηση σχετικά με το σύστημα rc.d
και την ανάπτυξή του&a.realtime.name;Ανάπτυξη επεκτάσεων πραγματικού χρόνου του &os;&a.ruby.name;Συζήτηση σχετικά με τη Ruby στο &os;&a.scsi.name;Το υποσύστημα SCSI&a.security.name;Θέματα ασφαλείας που επηρεάζουν το &os;&a.small.name;Χρήση του &os; σε embedded συστήματα
(Δεν χρησιμοποιείται πλέον: αντί για αυτή τη λίστα,
χρησιμοποιήστε την &a.embedded.name;)&a.smp.name;Συζητήσεις ανάπτυξης για την [α]συμμετρική
πολυεπεξεργασία&a.sparc.name;Μεταφορά του &os; σε &sparc; συστήματα&a.standards.name;Συμμόρφωση του &os; με τα πρότυπα C99
και &posix;&a.sun4v.name;Μεταφορά του &os; σε &ultrasparc; T1 συστήματα
+
+ &a.sysinstall.name;
+ Συζήτηση για την ανάπτυξη του &man.sysinstall.8;
+
+
&a.threads.name;Πολυνηματική επεξεργασία στο &os;&a.testing.name;Δοκιμές απόδοσης και σταθερότητας του &os;&a.tokenring.name;Υποστήριξη του Token Ring στο &os;&a.usb.name;Συζήτηση υποστήριξης του USB στο &os;&a.virtualization.name;Συζήτηση σχετικά με διάφορες τεχνικές εικονικοποίησης
που υποστηρίζονται από το &os;&a.vuxml.name;Συζήτηση για την υποδομή VuXML&a.x11.name;Συντήρηση και υποστήριξη του X11 στο &os;&a.xen.name;Συζήτηση για τη μεταφορά του &os; στο &xen; —
υλοποίηση και χρήσηΠεριορισμένες λίστες: Οι ακόλουθες λίστες
είναι για πιο ειδικό (και απαιτητικό) κοινό και πιθανώς δεν
ενδιαφέρουν το γενικό κοινό. Πριν αρχίσετε να συμμετέχετε σε κάποια
από αυτές, καλό θα είναι να έχετε παρακολουθήσει τις τεχνικές λίστες,
ώστε να αντιλαμβάνεστε τον κώδικα επικοινωνίας και συμπεριφοράς που
ισχύει σε αυτές.ΛίσταΣκοπός&a.hubs.name;Άτομα που διατηρούν mirror sites (υποστήριξη
υποδομών)&a.usergroups.name;Οργάνωση των συλλόγων χρηστών&a.vendors.name;Οργάνωση μεταπωλητών πριν από επίσημες εκδόσεις&a.wip-status.name;Κατάσταση εργασιών του &os; που βρίσκονται σε εξέλιξη
(Work-in-Progress).&a.www.name;Συντηρητές του www.FreeBSD.orgΛίστες digest: Όλες οι παραπάνω λίστες
διατίθενται και σε μορφή digest (περίληψης). Μόλις εγγραφείτε σε μία
λίστα, μπορείτε να αλλάξετε τις επιλογές digest στο τμήμα ρυθμίσεων
του λογαριασμού σας.Λίστες CVS & SVN: Οι ακόλουθες λίστες
είναι για όσους ενδιαφέρονται να βλέπουν τα μηνύματα (log) που
δείχνουν τις αλλαγές σε διάφορες περιοχές του πηγαίου κώδικα. Είναι
λίστες μόνο για ανάγνωση και δεν πρέπει να
στέλνετε μηνύματα σε αυτές.ΛίσταΠεριοχή πηγαίου κώδικαΠεριγραφή περιοχής (κώδικας για)&a.cvsall.name;/usr/(CVSROOT|doc|ports)Όλες οι αλλαγές σε κάθε μέρος του δέντρου (περιέχει όλες
τις άλλες λίστες CVS)&a.cvs-doc.name;/usr/(doc|www)Όλες οι αλλαγές στα δέντρα doc και www&a.cvs-ports.name;/usr/portsΌλες οι αλλαγές στο δέντρο των ports&a.cvs-projects.name;/usr/projectsΌλες οι αλλαγές στο δέντρο των projects&a.cvs-src.name;/usr/srcΌλες οι αλλαγές στο δέντρο src (δημιουργείται από τα
commit του προγράμματος μετατροπής svn-to-cvs)&a.svn-src-all.name;/usr/srcΌλες οι αλλαγές στο Subversion repository (εκτός από
τις περιοχές user και
projects)&a.svn-src-head.name;/usr/srcΌλες οι αλλαγές στον κλάδο head του
Subversion repository (πρόκειται για τον κλάδο
&os;-CURRENT)&a.svn-src-projects.name;/usr/projectsΌλες οι αλλαγές στην περιοχή πηγαίου κώδικα
projects του Subversion
repository&a.svn-src-release.name;/usr/srcΌλες οι αλλαγές στην περιοχή πηγαίου κώδικα
releases του Subversion
repository&a.svn-src-releng.name;/usr/srcΌλες οι αλλαγές σε όλους τους κλάδους πηγαίου κώδικα
releng του Subversion repository
(πρόκειται για τους κλάδους security / release
engineering)&a.svn-src-stable.name;/usr/srcΌλες οι αλλαγές σε όλους τους κλάδους πηγαίου κώδικα
stable του Subversion repository&a.svn-src-stable-6.name;/usr/srcΌλες οι αλλαγές στον κλάδο πηγαίου κώδικα
stable/6 του Subversion
repository&a.svn-src-stable-7.name;/usr/srcΌλες οι αλλαγές στον κλάδο πηγαίου κώδικα
stable/7 του Subversion
repository&a.svn-src-stable-8.name;/usr/srcΌλες οι αλλαγές στον κλάδο πηγαίου κώδικα
stable/8 του Subversion
repository&a.svn-src-stable-other.name;/usr/srcΌλες οι αλλαγές στους παλιούς
stable κλάδους πηγαίου κώδικα
του Subversion repository&a.svn-src-svnadmin.name;/usr/srcΌλες οι αλλαγές στα scripts διαχείρισης, τα hooks,
και άλλα δεδομένα που αφορούν τις ρυθμίσεις του
Subversion repository&a.svn-src-user.name;/usr/srcΌλες οι αλλαγές στην πειραματική περιοχή πηγαίου
κώδικα user του Subversion
repository&a.svn-src-vendor.name;/usr/srcΌλες οι αλλαγές στην περιοχή εργασίας πηγαίου κώδικα
vendor του Subversion repositoryΠως να ΕγγραφείτεΓια να εγγραφείτε σε μία λίστα, επιλέξτε το όνομα της από τους
παραπάνω δεσμούς ή πηγαίνετε στο &a.mailman.lists.link;
και επιλέξτε την λίστα για την οποία ενδιαφέρεστε. Η σελίδα της
λίστας πρέπει να περιέχει όλες τις απαραίτητες πληροφορίες
εγγραφής.Για να γράψετε σε μια λίστα, απλώς στείλτε το μήνυμα σας στο
όνομα-λίστας@FreeBSD.org.
Το μήνυμα σας θα διανεμηθεί σε όλα τα μέλη της λίστας, σε οποιοδήποτε
σημείο του κόσμου και αν βρίσκονται.Για να διαγραφείτε από μια λίστα, επιλέξτε το URL που
βρίσκεται στο τέλος κάθε μηνύματος που λαμβάνετε από την λίστα.
Μπορείτε επίσης να στείλετε ένα μήνυμα στο
όνομα-λίστας-unsubscribe@FreeBSD.org
για να διαγραφείτε μόνος σας.Για ακόμα μια φορά, θα θέλαμε να σας ζητήσουμε να διατηρήσετε τη
συζήτηση των τεχνικών λιστών στα αντίστοιχα τεχνικά θέματα. Αν
ενδιαφέρεστε μόνο για σημαντικές ανακοινώσεις, τότε προτείνουμε να
εγγραφείτε στην &a.announce;, η οποία έχει μικρή κίνηση.Πίνακες ΛιστώνΌλες οι &os; λίστες έχουν συγκεκριμένους
βασικούς κανόνες οι οποίοι πρέπει να ακολουθούνται από οποιονδήποτε
τις χρησιμοποιεί. Όποιος αποτύχει να ακολουθήσει αυτούς τους κανόνες
θα λάβει δύο (2) γραπτές προειδοποιήσεις από τον &os; Postmaster
postmaster@FreeBSD.org. Σε περίπτωση τρίτης
παραβίασης, το άτομο αυτό θα απομακρυνθεί από όλες τις λίστες του
&os; και τα μηνύματα του προς αυτές θα φιλτράρονται. Λυπόμαστε που
χρειάζεται να επιβάλλουμε αυτούς τους κανόνες και μέτρα, αλλά το
σημερινό Διαδίκτυο είναι καθώς φαίνεται ένα πολύ σκληρό περιβάλλον,
και πολλοί δεν εκτιμούν πόσο εύθραυστοι είναι μερικοί μηχανισμοί
του.Κανόνες:Το θέμα κάθε μηνύματος πρέπει να είναι σχετικό με τον βασικό
σκοπό της λίστας που στάλθηκε, π.χ. αν η λίστα σχετίζεται με
τεχνικά θέματα τότε το μήνυμα σας πρέπει να περιέχει τεχνικό
περιεχόμενο. Η άσχετη φλυαρία ή το flaming μειώνει την αξία της
λίστας για όλους που την παρακολουθούν και δεν μπορούμε να
ανεχτούμε αυτή τη συμπεριφορά. Για ελεύθερες συζητήσεις χωρίς
κάποιο συγκεκριμένο θέμα, διατίθεται η &a.chat; την οποία και θα
πρέπει να χρησιμοποιείτε.Κανένα μήνυμα δεν θα πρέπει να σταλεί σε περισσότερες από 2
λίστες, και σε 2 μόνο όταν υπάρχει ξεκάθαρος και προφανής λόγος
για κάτι τέτοιο. Πολλοί συνδρομητές είναι έτσι και αλλιώς
γραμμένοι σε περισσότερες από μία λίστες. Έτσι, αν δεν πρόκειται
να κάνετε κάποιο περίεργο συνδυασμό
(π.χ. -stable & -scsi), δεν υπάρχει λόγος να
στείλετε μήνυμα σε περισσότερες από μία λίστα κάθε φορά. Αν
λάβετε κάποιο μήνυμα στο οποίο φαίνονται πολλαπλές λίστες στην
γραμμή Cc, καλό θα είναι να περικόψετε κάποιες
από αυτές πριν στείλετε απάντηση. Θεωρείστε υπεύθυνος
για τα δικά σας cross-postings, ανεξάρτητα ποιος είναι ο
δημιουργός τους.Προσωπικές επιθέσεις και ασέβεια (στο περιεχόμενο μιας
αντιπαράθεσης) δεν επιτρέπονται, και αυτό αφορά τόσο τους χρήστες
όσο και τους developers. Μεγάλες παραβάσεις των κανόνων
(netiquette), όπως χρήση τμημάτων ή ολόκληρων προσωπικών
μηνυμάτων όταν δεν έχει δοθεί άδεια για να γίνει αυτό και δεν
ήταν αναμενόμενο, αποδοκιμάζονται αλλά δεν απαγορεύονται ρητά.
Όμως, υπάρχουν μερικές περιπτώσεις όπου
τέτοιο περιεχόμενο εμπίπτει στους κανονισμούς κάποιας λίστας και
μπορεί να οδηγήσει σε προειδοποίηση (ή ακόμα και αποκλεισμό) από
αυτήν.Διαφήμιση προϊόντων ή υπηρεσιών που δεν σχετίζονται με το &os;
απαγορεύεται αυστηρά και θα οδηγήσει σε άμεσο αποκλεισμό αν είναι
φανερό ότι ο πταίστης διαφημίζεται με spam.Ατομικοί πίνακες λιστών:&a.acpi.name;Ανάπτυξη της διαχείρισης ενέργειας και του
ACPI&a.afs.name;Andrew File SystemΑυτή η λίστα είναι για συζήτηση της μεταφοράς και της
χρήσης του AFS από το CMU/Transarc&a.announce.name;Σημαντικά γεγονότα και
ανακοινώσειςΑυτή η λίστα είναι για άτομα που ενδιαφέρονται μόνο για
περιστασιακές ανακοινώσεις σημαντικών γεγονότων του &os;.
Περιλαμβάνει ανακοινώσεις σχετικά με snapshots και άλλα
releases. Επίσης δημοσιεύονται σε αυτήν ανακοινώσεις για νέες
ικανότητες του &os;. Μπορεί να περιέχει εκκλήσεις για
εθελοντές κτλ. Πρόκειται για μία λίστα με μικρή κίνηση, και οι
δημοσιεύσεις ελέγχονται αυστηρά.&a.arch.name;Συζητήσεις αρχιτεκτονικής και
σχεδιασμούΣε αυτή την λίστα συζητείται η αρχιτεκτονική του &os;.
Τα μηνύματα είναι κατά κύριο λόγο αρκετά τεχνικά. Παραδείγματα
σχετικών θεμάτων είναι:Πως να επανασχεδιαστεί το σύστημα μεταγλώττισης ώστε να
εκτελεί ταυτόχρονα πολλές προσαρμοσμένες
μεταγλωττίσεις.Τι πρέπει να επισκευαστεί στο VFS ώστε να λειτουργούν
τα Heidemann layers.Πώς πρέπει να μετατρέψουμε τη διεπαφή (interface) των
οδηγών συσκευών ώστε να μπορούμε να χρησιμοποιήσουμε τα
ίδια προγράμματα οδήγησης σε πολλούς διαύλους και
αρχιτεκτονικές.Πως να γράψετε ένα οδηγό δικτύου.&a.audit.name;Project ελέγχου πηγαίου κώδικαΑυτή η λίστα χρησιμοποιείται για το project ελέγχου του
πηγαίου κώδικα του &os;. Αν και αρχικά προορίζονταν για
συζητήσεις αλλαγών που σχετίζονταν με την ασφάλεια, διευρύνθηκε
ώστε να ασχολείται με οποιαδήποτε αλλαγή κώδικα.Η λίστα είναι γεμάτη με patches, και
πιθανότατα δεν θα ενδιαφέρει έναν απλό χρήστη του &os;.
Συζητήσεις ασφαλείας που δεν σχετίζονται με συγκεκριμένη
αλλαγή στον κώδικα, γίνονται στην λίστα freebsd-security.
Αντίθετα, όλοι οι developers παροτρύνονται να στέλνουν εδώ τα
patches τους για έλεγχο, ειδικά αν σχετίζονται
με ένα μέρος του συστήματος όπου ένα σφάλμα μπορεί να επηρεάσει
ολόκληρη την ακεραιότητα του.&a.binup.name;Project αναβάθμισης του &os; μέσω έτοιμων
(δυαδικών) αρχείωνΣε αυτή την λίστα συζητείται το σύστημα αναβάθμισης μέσω
έτοιμων (binary) αρχείων, ή binup.
Σε αυτή τη λίστα ανήκουν θέματα σχεδιασμού, λεπτομέρειες
υλοποίησης, patches, αναφορές σφαλμάτων,
αναφορές κατάστασης, αιτήσεις για πρόσθετα χαρακτηριστικά,
commit logs, και ότι άλλο σχετίζεται με το
binup.&a.bluetooth.name;Χρήση της τεχνολογίας &bluetooth;
στο &os;Σε αυτή τη λίστα συναθροίζονται οι χρήστες του &bluetooth;
στο &os;. Η λίστα ασχολείται με θέματα σχεδιασμού,
λεπτομέρειες υλοποίησης, patches, αναφορές
σφαλμάτων, αναφορές κατάστασης, αιτήσεις για πρόσθετα
χαρακτηριστικά, και ότι άλλο σχετίζεται με το
&bluetooth;.&a.bugbusters.name;Προσπάθεια οργάνωσης του χειρισμού των αναφορών
προβλημάτωνΣκοπός αυτής της λίστας είναι να λειτουργεί ως χώρος
οργάνωσης και συζήτησης για τον Bugmeister, τους Bugbusters,
και όσους άλλους ενδιαφέρονται για την βάση δεδομένων PR.
Αυτή ή λίστα δεν είναι για συζητήσεις σχετικά με ιδιαίτερα
σφάλματα, patches ή PRs.&a.bugs.name;Αναφορές σφαλμάτωνΑυτή η λίστα είναι για αναφορές σφαλμάτων του &os;.
Όποτε είναι δυνατό, τα σφάλματα πρέπει να στέλνονται με την
εντολή &man.send-pr.1; ή μέσω της αντίστοιχης διεπαφή WEB.&a.chat.name;Μη τεχνικά θέματα που σχετίζονται με την
κοινότητα του &os;Αυτή η λίστα περιέχει κοινωνικές συζητήσεις, και γενικότερα
ότι δεν σχετίζεται με τεχνικές πληροφορίες με τις οποίες
ασχολούνται οι υπόλοιπες λίστες. Περιέχει συζητήσεις για το αν
ο Jordan μοιάζει με μικρό κουνάβι ή όχι, για το αν πρέπει ή όχι
να γράφουμε με κεφαλαία, ποιος πίνει πολύ καφέ, που φτιάχνεται η
καλύτερη μπύρα, ποιος φτιάχνει μπύρα στο υπόγειο του, και άλλα.
Περιστασιακές ανακοινώσεις σημαντικών γεγονότων (όπως
πάρτυ, γάμοι, γεννήσεις, καινούργιες δουλειές κλπ) μπορούν να
γίνουν στις τεχνικές λίστες, αλλά οι απαντήσεις τους πρέπει να
στέλνονται στην λίστα -chat.&a.core.name;Ομάδα core του &os;Αυτή είναι μία εσωτερική λίστα για χρήση από τα μέλη του
core. Σε αυτή τη λίστα μπορείτε να στείλετε μηνύματα, όταν
προκύψει κάποιο θέμα σχετικό με το &os; το οποίο απαιτεί
διαιτησία ή λεπτομερή εξέταση.&a.current.name;Συζητήσεις σχετικά με την χρήση του
&os.current;Αυτή η λίστα είναι για χρήστες του &os.current;. Περιέχει
προειδοποιήσεις για νέα χαρακτηριστικά που πρόκειται να
προστεθούν στο -CURRENT και τα οποία θα επηρεάσουν τους
χρήστες, και οδηγίες για τις κινήσεις που πρέπει να γίνουν
ώστε να παραμείνετε στο -CURRENT. Όποιος εκτελεί το
CURRENT πρέπει να εγγραφεί σε αυτήν την λίστα.
Είναι μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.cvsweb.name;&os; CVSweb ProjectΤεχνικές συζητήσεις για την χρήση, την ανάπτυξη και την
συντήρηση του &os;-CVSweb.&a.doc.name;Project τεκμηρίωσης του &os;Αυτή η λίστα είναι για συζήτηση θεμάτων και
projects που σχετίζονται με την δημιουργία τεκμηρίωσης για το
&os;. Τα μέλη αυτής της λίστας αποκαλούνται συνολικά ως
The &os; Documentation Project. Είναι μια
ανοικτή λίστα και είστε ελεύθερος να συμμετέχετε και να
συνεισφέρετε!&a.drivers.name;Δημιουργία οδηγών συσκευών για
το &os;Αυτή η λίστα προορίζεται για τεχνικές συζητήσεις σχετικές με
οδηγούς συσκευών στο &os;. Χρησιμοποιείται κυρίως από τους
δημιουργούς οδηγών συσκευών για ερωτήσεις σχετικές με τη
συγγραφή οδηγών, χρησιμοποιώντας τα APIs που παρέχει ο πυρήνας
του &os;.&a.eclipse.name;&os; χρήστες του Eclipse IDE, των εργαλείων του,
rich client εφαρμογών, και ports.Πρόθεση της λίστας αυτής είναι να προσφέρει αμοιβαία
υποστήριξη για ότι έχει να κάνει με την επιλογή, εγκατάσταση,
χρήση, ανάπτυξη και συντήρηση του Eclipse IDE, των
εργαλείων του, εφαρμογών rich client στην πλατφόρμα του &os;
και για βοήθεια σχετικά με την μεταφορά του Eclipse IDE και των
πρόσθετων του στο περιβάλλον του &os;.Πρόθεση της είναι επίσης να διευκολύνει την ανταλλαγή
πληροφοριών ανάμεσα στην κοινότητα του Eclipse και στην
κοινότητα του &os;, προς όφελος και των δύο.Αν και η λίστα επικεντρώνεται κυρίως στις ανάγκες των
χρηστών του Eclipse, προσφέρει επίσης ένα χώρο συζήτησης για
όσους θέλουν να αναπτύξουν εφαρμογές σχετικές με το &os;
χρησιμοποιώντας το Eclipse.&a.embedded.name;Χρήση του &os; σε embedded
εφαρμογέςΗ λίστα συζητά θέματα σχετικά με την χρήση του &os; σε
embedded συστήματα. Είναι μια τεχνική λίστα
και συζητούνται μόνο αυστηρά τεχνικά θέματα. Για τον σκοπό της
λίστας αυτής, ορίζουμε ως embedded συστήματα τις υπολογιστικές
συσκευές που δεν προορίζονται για desktop εφαρμογές, και που
συνήθως καλύπτουν μια μόνο ανάγκη, αντίθετα με τα γενικά
υπολογιστικά περιβάλλοντα. Συμπεριλαμβάνονται, εκτός των άλλων,
όλα τα τηλέφωνα, δικτυακός εξοπλισμός όπως routers, switches
και PBXs, εξοπλισμός μετρήσεων από απόσταση, PDAs, συστήματα
Point Of Sale, και πάει λέγοντας.&a.emulation.name;Εξομοίωση άλλων συστημάτων όπως είναι τα
Linux/&ms-dos;/&windows;Είναι μια λίστα για τεχνικές συζητήσεις, σχετικές με την
εκτέλεση στο &os; προγραμμάτων που δημιουργήθηκαν για άλλα
λειτουργικά.&a.eol.name;Ομότιμη υποστήριξη για λογισμικό σχετικό με το
&os; που δεν υποστηρίζεται πλέον από το
&os; Project.Αυτή η λίστα είναι για όσους ενδιαφέρονται να παρέχουν ή να
χρησιμοποιήσουν την ομότιμη υποστήριξη για λογισμικό σχετικό με
το &os; που δεν υποστηρίζεται πλέον από το &os; Project
(π.χ., με την μορφή patches και ανακοινώσεων
ασφαλείας).&a.firewire.name;&firewire; (iLink, IEEE 1394)Αυτή η λίστα είναι για την συζήτηση της σχεδίασης και
υλοποίησης ενός υποσυστήματος &firewire; (γνωστό και ως
IEEE 1394 ή iLink) για το &os;. Σχετικά θέματα
είναι τα πρότυπα, οι συσκευές διαύλου και τα
πρωτόκολλά τους, κάρτες, προσαρμογείς και chipsets, και
η αρχιτεκτονική και η υλοποίηση του κώδικα για την
σωστή υποστήριξη τους.&a.fs.name;Συστήματα αρχείωνΣυζητήσεις σχετικές με τα συστήματα αρχείων του &os;. Είναι
μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.gecko.name;Gecko Rendering EngineΣυζητήσεις σχετικές με εφαρμογές που χρησιμοποιούν την
μηχανή Gecko στο &os;.Η συζήτηση επικεντρώνεται σε εφαρμογές της Συλλογής των
Ports που χρησιμοποιούν τη μηχανή Gecko, και ειδικότερα την
εγκατάσταση, ανάπτυξη και υποστήριξη τους στο &os;.&a.geom.name;GEOMΣυζητήσεις σχετικές με το GEOM και παρόμοιες υλοποιήσεις.
Είναι μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.gnome.name;GNOMEΣυζητήσεις σχετικές με το περιβάλλον
GNOME για συστήματα &os;. Είναι μια
τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.ipfw.name;IP FirewallΑυτή η λίστα είναι για τεχνικές συζητήσεις που αφορούν τον
επανασχεδιασμό του κώδικα IP firewall στο &os;. Είναι μια
τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.ia64.name;Μεταφορά του &os; στην αρχιτεκτονική
IA64Πρόκειται για μια τεχνική λίστα, για άτομα που δουλεύουν
ενεργά στην μεταφορά του &os; στην πλατφόρμα IA-64 της &intel;,
για να αναφέρουν προβλήματα ή να συζητήσουν εναλλακτικές
λύσεις. Άτομα που ενδιαφέρονται να παρακολουθήσουν την
τεχνική συζήτηση είναι επίσης ευπρόσδεκτα.&a.isdn.name;Ανάπτυξη του ISDNΑυτή η λίστα είναι για άτομα που συζητούν την
ανάπτυξη της υποστήριξης ISDN στο &os;.&a.java.name;Ανάπτυξη της &java;Αυτή η λίστα είναι για άτομα που συζητούν την
ανάπτυξη σημαντικών εφαρμογών &java; για το &os; και την
μεταφορά και συντήρηση των &jdk;s.&a.jobs.name;Ζήτηση και προσφορά εργασίαςΑυτός είναι ένας χώρος για δημοσίευση ανακοινώσεων για
προσφορά και ζήτηση εργασίας που σχετίζεται με το &os;, καθώς
και βιογραφικών σχετικών με το &os;. Αν για παράδειγμα
αναζητάτε εργασία σχετική με το &os;, ή προσφέρετε μια θέση
εργασίας σχετική με το &os;, αυτό είναι το σωστό μέρος για να
τη διαφημίσετε. Η λίστα αυτή δεν είναι
για γενικά θέματα εργασίας, για τα οποία υπάρχει πληθώρα από
άλλες λίστες στο Διαδίκτυο.Αυτή η λίστα, όπως και οι υπόλοιπες λίστες του
FreeBSD.org, διανέμονται
παγκόσμια. Έτσι, πρέπει να είστε σαφής για την τοποθεσία και
την δυνατότητα τηλεργασίας ή βοήθειας στην μετοίκηση.Το μήνυμα σας θα πρέπει να χρησιμοποιεί μόνο ανοιχτά
πρότυπα — κατά προτίμηση απλό κείμενο, αν και βασικής
μορφής Portable Document Format (PDF), HTML,
και μερικά άλλα είναι αποδεκτά από πολλούς χρήστες. Κλειστά
πρότυπα όπως το µsoft; Word (.doc) θα
απορριφθούν από τον διακομιστή της λίστας.&a.kde.name;KDEΣυζητήσεις που αφορούν το KDE σε
συστήματα &os;. Είναι μια τεχνική λίστα και συζητούνται μόνο
αυστηρά τεχνικά θέματα.&a.hackers.name;Τεχνικές συζητήσειςΕίναι ένας χώρος για τεχνικές συζητήσεις σχετικές με το
&os;. Αυτή είναι η κύρια τεχνική λίστα. Είναι για άτομα
που αναπτύσσουν ενεργά το &os;, για να αναφέρουν προβλήματα ή
να συζητήσουν εναλλακτικές λύσεις. Άτομα που ενδιαφέρονται να
παρακολουθήσουν την τεχνική συζήτηση είναι ευπρόσδεκτα. Είναι
μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.hardware.name;Γενική συζήτηση για υλικό κι εξαρτήματα
υπολογιστών στο &os;Γενικές συζητήσεις για τύπους υλικού που λειτουργούν στο
&os;, διάφορα προβλήματα και προτάσεις σχετικά με το τι να
αγοράσετε ή να αποφύγετε.&a.hubs.name;Mirror sitesΑνακοινώσεις και συζητήσεις για άτομα που συντηρούν
mirror sites του &os;.&a.isp.name;Θέματα για Παροχείς Υπηρεσιών
ΔιαδικτύουΑυτή η λίστα είναι για συζήτηση θεμάτων σχετικών με
Παροχείς Υπηρεσιών Διαδικτύου (ISPs) που χρησιμοποιούν &os;.
Είναι μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.mono.name;Εφαρμογές Mono και C# στο &os;Αυτή η λίστα είναι για συζήτηση θεμάτων σχετικών με το
σύστημα ανάπτυξης εφαρμογών Mono στο &os;. Πρόκειται για μια
τεχνική λίστα. Προορίζεται για οποιονδήποτε ασχολείται ενεργά
με την ανάπτυξη ή τη μεταφορά εφαρμογών Mono ή C# στο &os;.
Η συζήτηση αφορά την επίλυση προβλημάτων η την εύρεση
εναλλακτικών λύσεων. Άτομα που ενδιαφέρονται να παρακολουθήσουν
την τεχνική συζήτηση είναι επίσης ευπρόσδεκτα.&a.openoffice.name;OpenOffice.orgΣυζητήσεις σχετικές με την μεταφορά και συντήρηση
του OpenOffice.org και του
&staroffice;.&a.performance.name;Συζητήσεις για την ρύθμιση και την βελτιστοποίηση
του &os;Αυτή η λίστα υπάρχει για να παρέχει ένα μέρος όπου οι
hackers, οι διαχειριστές, και όσοι άλλοι ενδιαφέρονται, να
συζητούν θέματα σχετικά με την απόδοση του &os;.
Αποδεκτά θέματα είναι οι συζητήσεις που αναφέρονται σε
εγκαταστάσεις &os; που υπόκεινται σε μεγάλο φόρτο,
έχουν προβλήματα απόδοσης, ή φτάνουν το &os; στα όρια του.
Συνιστούμε ανεπιφύλακτα να γραφούν στη λίστα όσοι ενδιαφέρονται
να βελτιώσουν την απόδοση του &os;. Είναι μία τεχνική λίστα
που απευθύνεται σε έμπειρους χρήστες του &os;, hackers, ή
διαχειριστές που ενδιαφέρονται να κάνουν το &os; γρήγορο και
αξιόπιστο. Δεν πρόκειται για μια λίστα ερωτήσεων και απαντήσεων
που μπορεί να αντικαταστήσει την μελέτη της τεκμηρίωσης, αλλά
ένα μέρος για συνεισφορές ή για απαντήσεις σε αναπάντητα θέματα
σχετικά με την απόδοση.&a.pf.name;Συζητήσεις και ερωτήσεις για το σύστημα packet
filter firewallΣυζητήσεις σχετικές με το packet filter (pf) firewall
system στο &os;. Τεχνικές συζητήσεις και ερωτήσεις χρηστών
είναι ευπρόσδεκτες. Η λίστα είναι επίσης ένα μέρος για
συζήτηση του ALTQ QoS framework.&a.platforms.name;Μεταφορά του &os; σε μη-&intel;
πλατφόρμεςΠροβλήματα του &os; που εμφανίζονται σε περισσότερες από
μία πλατφόρμες, καθώς και γενικές συζητήσεις και προτάσεις για
μεταφορά του &os; σε μη-&intel; πλατφόρμες. Είναι μια τεχνική
λίστα και συζητούνται μόνο αυστηρά τεχνικά θέματα.&a.policy.name;Κατευθυντήριες αποφάσεις (policy) της ομάδας
Core του &os;Αυτή είναι μία λίστα με μικρή κίνηση, μόνο για ανάγνωση,
για τις αποφάσεις της Core ομάδας του &os; σχετικά με κάποια
θέματα κατεύθυνσης του Project (policies).&a.ports.name;Συζήτηση για τα
portsΣυζητήσεις σχετικές με την Συλλογή των Ports
του &os; (/usr/ports), την υποδομή των
ports, και γενικά τις προσπάθειες συντονισμού των ports. Είναι
μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα.&a.ports-bugs.name;Συζήτηση για τα σφάλματα
των portsΣυζητήσεις που σχετίζονται με τις αναφορές προβλημάτων της
Συλλογής των Ports
(/usr/ports) του &os;, προτάσεις για νέα
ports ή για αλλαγές σε υπάρχοντα ports. Είναι μια τεχνική λίστα
και συζητούνται μόνο αυστηρά τεχνικά θέματα.&a.proliant.name;Τεχνική συζήτηση για το &os; σε διακομιστές HP
ProLiantΑυτή η λίστα είναι για τεχνικές συζητήσεις σχετικά με την
χρήση του &os; σε διακομιστές HP ProLiant. Η συζήτηση
περιλαμβάνει θέματα προγραμμάτων οδήγησης για ProLiant,
λογισμικό διαχείρισης, εργαλεία ρυθμίσεων, και ανανεώσεις του
BIOS. Η λίστα αυτή είναι το καταλληλότερο μέρος για συζήτηση
σχετικά με τα αρθρώματα hpasmd, hpasmcli, και hpacucli.&a.python.name;Η Python στο &os;Αυτή η λίστα είναι για συζητήσεις σχετικές με την
βελτιστοποίηση της υποστήριξης της Python στο &os;. Είναι μια
τεχνική λίστα. Προορίζεται για άτομα που ασχολούνται με την
μεταφορά της Python, των αρθρωμάτων της (modules) και του
Zope στο &os;. Όσοι ενδιαφέρονται
να παρακολουθήσουν την τεχνική συζήτηση, είναι
ευπρόσδεκτοι.&a.questions.name;Ερωτήσεις χρηστώνΑυτή η λίστα είναι για ερωτήσεις σχετικές με το &os;. Δεν
πρέπει να στέλνετε ερωτήσεις τύπου how to σε
τεχνικές λίστες εκτός αν πιστεύετε ότι η ερώτηση σας είναι πολύ
εξειδικευμένη.&a.ruby.name;Συζήτηση σχετικά με τη Ruby
στο &os;Η λίστα αυτή είναι για συζητήσεις που σχετίζονται με την
υποστήριξη της Ruby στο &os;. Πρόκειται για μια λίστα τεχνικών
ερωτήσεων. Απευθύνεται σε άτομα που δουλεύουν σε Ports της
Ruby, σε βιβλιοθήκες τρίτων κατασκευαστών, και σε άλλα
πλαίσια λειτουργιών.Είναι επίσης ευπρόσδεκτοι όσοι ενδιαφέρονται για αυτού του
είδους την τεχνική συζήτηση.&a.scsi.name;Το υποσύστημα SCSIΑυτή η λίστα είναι για άτομα που εργάζονται στο SCSI
υποσύστημα του &os;. Είναι μια τεχνική λίστα και συζητούνται
μόνο αυστηρά τεχνικά θέματα.&a.security.name;Θέματα ασφαλείαςΑφορά θέματα ασφαλείας υπολογιστών που εκτελούν &os;
(DES, Kerberos, γνωστά θέματα ασφαλείας και διορθώσεις, κτλ).
Είναι μια τεχνική λίστα και συζητούνται μόνο αυστηρά τεχνικά
θέματα. Σημειώστε ότι δεν πρόκειται για λίστα ερωτήσεων και
απαντήσεων, αλλά η συνεισφορά (τόσο ερωτήσεων όσο ΚΑΙ
απαντήσεων) στο FAQ είναι ευπρόσδεκτη.&a.security-notifications.name;Ειδοποιήσεις ασφαλείαςΕιδοποιήσεις για προβλήματα ασφαλείας και διορθώσεις στο
&os;. Δεν πρόκειται για λίστα συζητήσεων. Η λίστα συζητήσεων
είναι η &os;-security.&a.small.name;Χρήση του &os; σε embedded
εφαρμογέςΑυτή η λίστα συζητά θέματα σχετικά με ασυνήθιστα μικρές και
embedded εγκαταστάσεις του &os;. Είναι μια τεχνική λίστα
και συζητούνται μόνο αυστηρά τεχνικά θέματα.Η λίστα αυτή έχει αντικατασταθεί από την
&a.embedded.name;.&a.stable.name;Συζητήσεις σχετικές με την χρήση του
&os.stable;Αυτή η λίστα είναι για τους χρήστες του &os.stable;.
Περιέχει προειδοποιήσεις για νέα χαρακτηριστικά που πρόκειται
να ενσωματωθούν στο -STABLE και τα οποία ενδεχομένως να
επηρεάσουν τους χρήστες του. Επίσης περιέχει οδηγίες για τα
βήματα που πρέπει να ακολουθήσετε ώστε να παραμείνετε στο
-STABLE. Θα πρέπει να εγγραφείτε σε αυτή τη λίστα, αν
ακολουθείτε το STABLE. Είναι μια τεχνική λίστα
και συζητούνται μόνο αυστηρά τεχνικά θέματα.&a.standards.name;Συμμόρφωση με τα πρότυπα C99 &
POSIXΑυτή η λίστα είναι για τεχνικές συζητήσεις σχετικά με την
συμμόρφωση του &os; με τα πρότυπα C99 και POSIX.&a.usb.name;Συζήτηση για την υποστήριξη του διαύλου USB
στο &os;Αυτή η λίστα είναι για τεχνικές συζητήσεις σχετικά με την
υποστήριξη του διαύλου USB στο &os;.&a.usergroups.name;Οργάνωση των συλλόγων χρηστώνΑυτή η λίστα είναι για τους συντονιστές των επιμέρους
τοπικών συλλόγων χρηστών για συζήτηση θεμάτων μεταξύ τους
και με κάποιο μέλος της ομάδας Core. Αυτή η λίστα
θα πρέπει να αναφέρει μόνο τις συναντήσεις και την οργάνωση
projects που αναφέρονται σε περισσότερους από ένα συλλόγους
χρηστών.&a.vendors.name;ΠωλητέςΟργάνωση συζητήσεων μεταξύ του &os; Project και των
πωλητών λογισμικού και υλικού σχετικού με το &os;.&a.virtualization.name;Συζήτηση διάφορων τεχνικών εικονικοποίησης που
υποστηρίζονται από το &os;.Μια λίστα για τη συζήτηση των διάφορων τεχνικών
εικονικοποίησης που υποστηρίζονται από το &os;. Από τη μια
μεριά εστιάζει στην υλοποίηση των βασικών λειτουργιών αλλά και
την προσθήκη νέων δυνατοτήτων. Από την άλλη, οι χρήστες θα
έχουν μια ομάδα συζητήσεων όπου μπορούν να ζητούν βοήθεια σε
περίπτωση προβλημάτων, ή να συζητούν τις δικές τους
χρήσεις.&a.wip-status.name;Κατάσταση εργασιών σε εξέλιξη
στο &os;Στη λίστα αυτή μπορείτε να ανακοινώσετε την έναρξη και την
πρόοδο κάποιας εργασίας σας που σχετίζεται με το &os;. Τα
μηνύματα σε αυτή τη λίστα ελέγχονται. Συνίσταται να στείλετε το
μήνυμα σας με παραλήπτη μια πιο τοπική σας λίστα του &os;, και
απλώς να κοινοποιήσετε το μήνυμα σας σε αυτή τη λίστα. Με τον
τρόπο αυτό, μπορείτε επίσης να συζητήσετε για την εργασία σας
στην τοπική λίστα, καθώς η συζήτηση σε αυτή τη λίστα δεν
επιτρέπεται.Δείτε τα αρχεία της λίστας για να πάρετε μια ιδέα της μορφής
των μηνυμάτων που μπορείτε να στείλετε.Μια περίληψη των περιεχομένων της λίστας ενδέχεται να
δημοσιεύεται κατά τακτά διαστήματα στη δικτυακή τοποθεσία του
&os;, ως μέρος των Αναφορών Κατάστασης (Status Reports)
.
Στην ίδια τοποθεσία, μπορείτε επίσης να βρείτε περισσότερα
παραδείγματα και προηγούμενες αναφορές.&a.xen.name;Συζήτηση για τη μεταφορά του &os; στο &xen;
— υλοποίηση και χρήσηΠρόκειται για μια λίστα που εστιάζει στην μεταφορά του &os;
στο &xen;. Η κίνηση σε αυτή τη λίστα αναμένεται να είναι μικρή,
και έτσι θα χρησιμοποιηθεί τόσο για τεχνικές συζητήσεις σχετικά
με το σχεδιασμό και την υλοποίηση, όσο και με προβλήματα
εγκατάστασης και διαχείρισης.Φιλτράρισμα στις Λίστες Ηλεκτρονικού ΤαχυδρομείουΟι λίστες ηλεκτρονικού ταχυδρομείου του &os; φιλτράρονται με
πολλαπλούς τρόπους για να αποφύγουμε την διανομή spam, ιών, και άλλων
ανεπιθύμητων μηνυμάτων. Το φιλτράρισμα που περιγράφεται σε αυτή την
ενότητα, αποτελεί ένα μόνο μέρος των συνολικών μέτρων που λαμβάνουμε
για την προστασία των λιστών ηλεκτρονικού ταχυδρομείου.Στις λίστες επιτρέπονται μόνο συγκεκριμένοι τύποι συνημμένων
αρχείων. Όλα τα συνημμένα αρχεία με τύπο MIME που δεν βρίσκεται
στην παρακάτω λίστα, διαγράφονται πριν διανεμηθεί το μήνυμα στις
λίστες.application/octet-streamapplication/pdfapplication/pgp-signatureapplication/x-pkcs7-signaturemessage/rfc822multipart/alternativemultipart/relatedmultipart/signedtext/htmltext/plaintext/x-difftext/x-patchΜερικές λίστες μπορεί να επιτρέπουν συνημμένα αρχεία
και άλλων τύπων MIME, αλλά οι παραπάνω τύποι ισχύουν
στις περισσότερες λίστες.Εάν το κείμενο ενός μηνύματος περιέχεται τόσο σε μορφή HTML όσο
και απλού κειμένου, το τμήμα HTML θα αφαιρεθεί. Εάν ένα μήνυμα
περιέχει μόνο HTML, θα μετατραπεί σε απλό κείμενο.Usenet NewsgroupsΕκτός από δύο newsgroups που ασχολούνται με το &os;, υπάρχουν πολλά
ακόμα στα οποία γίνεται συζήτηση για το &os; ή άλλα θέματα που
ενδεχομένως ενδιαφέρουν τους χρήστες του. Για κάποια από αυτά τα
newsgroups, μπορείτε να κάνετε αναζήτηση
με λέξεις-κλειδιά στις παλιές δημοσιεύσεις, χάρη στην
υπηρεσία που προσφέρει ο Warren Toomey
wkt@cs.adfa.edu.au.Newsgroups Σχετικά με το BSDcomp.unix.bsd.freebsd.announcecomp.unix.bsd.freebsd.miscde.comp.os.unix.bsd (Στα Γερμανικά)fr.comp.os.bsd (Στα Γαλλικά)it.comp.os.freebsd (Στα Ιταλικά)tw.bbs.comp.386bsd (Σε Παραδοσιακά Κινέζικα)Άλλα Ενδιαφέροντα &unix; Newsgroupscomp.unixcomp.unix.questionscomp.unix.admincomp.unix.programmercomp.unix.shellcomp.unix.user-friendlycomp.security.unixcomp.sources.unixcomp.unix.advocacycomp.unix.misccomp.bugs.4bsdcomp.bugs.4bsd.ucb-fixescomp.unix.bsdΣύστημα X Windowcomp.windows.x.i386unixcomp.windows.xcomp.windows.x.appscomp.windows.x.announcecomp.windows.x.intrinsicscomp.windows.x.motifcomp.windows.x.pexcomp.emulators.ms-windows.wineΔιακομιστές ΙστοσελίδωνForums, Blogs, και Κοινωνικά ΔίκτυαΤα Forums
του &os; βασίζονται σε διεπαφή web και είναι κατάλληλα
για τεχνικές συζητήσεις και ερωτήσεις που αφορούν το &os;.Το Planet
&os; συγκεντρώνει σε ένα σημείο τις ροές από δεκάδες
ιστολόγια μελών της ομάδας ανάπτυξης του &os;. Πολλά από τα μέλη,
χρησιμοποιούν αυτή τη δυνατότητα για να γνωστοποιήσουν την εργασία
που κάνουν τη δεδομένη στιγμή, τυχόν νέες διορθώσεις, καθώς και τα
μελλοντικά τους σχέδια.Το κανάλι
BSDConferences στο Youtube παρέχει μια συλλογή βίντεο
υψηλής ποιότητας, από διάφορα BSD συνέδρια σε όλο τον κόσμο.
Πρόκειται για ένα θαυμάσιο τρόπο να παρακολουθήσετε σημαντικά μέλη
της ομάδας ανάπτυξης να παρουσιάζουν τη νέα τους δουλειά στο
&os;.Επίσημα Mirrors
&chap.eresources.www.inc;
Διευθύνσεις Ηλεκτρονικού ΤαχυδρομείουΟι ακόλουθες ενώσεις χρηστών παρέχουν στα μέλη τους διευθύνσεις
ηλεκτρονικού ταχυδρομείου που σχετίζονται με το &os;. Ο διαχειριστής
που αναφέρεται παρακάτω, διατηρεί το δικαίωμα να ανακαλέσει την
διεύθυνση, αν γίνει κατάχρηση της με οποιοδήποτε τρόπο.ΤομέαςΥπηρεσίεςΈνωση ΧρηστώνΔιαχειριστήςukug.uk.FreeBSD.orgΜόνο προώθησηukfreebsd@uk.FreeBSD.orgLee Johnston
lee@uk.FreeBSD.org
diff --git a/el_GR.ISO8859-7/books/handbook/l10n/chapter.sgml b/el_GR.ISO8859-7/books/handbook/l10n/chapter.sgml
index 3fc3e67c0f..373def7667 100644
--- a/el_GR.ISO8859-7/books/handbook/l10n/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/l10n/chapter.sgml
@@ -1,1040 +1,1040 @@
AndreyChernovΣυνεισφορά του Michael C.WuΓράφηκε ξανά από τον Τοπικές Ρυθμίσεις - Χρήση και ρύθμιση I18N/L10NΣύνοψηΤο &os; είναι ένα ιδιαίτερα αποκεντρωμένο έργο με χρήστες και
εθελοντές σε ολόκληρο τον κόσμο. Στο κεφάλαιο αυτό συζητούνται
οι δυνατότητες τοπικών και διεθνών ρυθμίσεων του &os;, οι οποίες
επιτρέπουν σε χρήστες γλωσσών εκτός της Αγγλικής να εκτελέσουν
πραγματική εργασία. Υπάρχουν πολλοί παράγοντες στην υλοποίηση του
πλαισίου i18n, τόσο σε επίπεδο συστήματος, όσο και εφαρμογών, και
για το λόγο αυτό, όπου χρειάζεται, παραπέμπουμε τον αναγνώστη σε πιο
συγκεκριμένες πηγές τεκμηρίωσης.Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε:Πως κωδικοποιούνται οι γλώσσες και οι τοπικές ρυθμίσεις
στα σύγχρονα λειτουργικά συστήματα.Πως να βάλετε τοπικές ρυθμίσεις στο κέλυφος σας (login
shell).Πως να ρυθμίσετε την κονσόλα για γλώσσες εκτός της
Αγγλικής.Πως να χρησιμοποιήσετε αποτελεσματικά το σύστημα X
Windows με διαφορετικές γλώσσες.Που να βρείτε περισσότερες πληροφορίες για τη συγγραφή
εφαρμογών συμβατών με το πρότυπο i18n.Πριν διαβάσετε αυτό το κεφάλαιο, θα πρέπει:Να γνωρίζετε πως να εγκαταστήσετε πρόσθετο λογισμικό
τρίτου κατασκευαστή ().Βασικές ΓνώσειςΤι Είναι το I18N/L10N;internationalizationlocalizationlocalizationΟι ομάδες ανάπτυξης λογισμικού δημιούργησαν τον όρο I18N,
ως συντόμευση της λέξης internationalization
(διεθνοποίηση), μετρώντας απλώς τα γράμματα της λέξης ανάμεσα
στο πρώτο και το τελευταίο. Ο όρος L10N έχει προκύψει με τον ίδιο
τρόπο, αυτή τη φορά από τη λέξη localization
(τοπικοποίηση, ή απλώς τοπικές ρυθμίσεις). Συνδυάζοντας μεταξύ τους
τις μεθόδους, τα πρωτόκολλα, και τις εφαρμογές που συμβαδίζουν με τα
I18N/L10N, οι χρήστες μπορούν να χρησιμοποιήσουν τις γλώσσες της
επιλογής τους.Οι εφαρμογές I18N προγραμματίζονται με τη βοήθεια εργαλείων
(kits) και βιβλιοθηκών. Επιτρέπεται έτσι στους προγραμματιστές να
γράψουν ένα απλό αρχείο και να μεταφράσουν τα μενού και τα κείμενα
που απεικονίζει η εφαρμογή, σε κάθε γλώσσα που απαιτείται.
Συνιστούμε ένθερμα στους προγραμματιστές να ακολουθούν την παραπάνω
σύμβαση.Γιατί Πρέπει να Χρησιμοποιήσω τα I18N/L10N;Τα I18N/L10N χρησιμοποιούνται κάθε φορά που επιθυμείτε να δείτε,
να εισάγετε, ή να επεξεργαστείτε δεδομένα σε γλώσσες εκτός της
Αγγλικής.Ποιες Γλώσσες Υποστηρίζονται στο I18N;Το I18N και το L10N δεν είναι ειδικά φτιαγμένα για το &os;. Την
δεδομένη στιγμή, υποστηρίζονται οι περισσότερες γνωστές γλώσσες,
συμπεριλαμβανομένων των: Κινεζικών, Γερμανικών, Γιαπωνέζικων,
Κορεατικών, Γαλλικών, Ρωσικών, Βιετναμέζικων, κ.α.Χρήση των Τοπικών ΡυθμίσεωνΤο I18N είναι στην πραγματικότητα μια σύμβαση, και δεν έχει
δημιουργηθεί αποκλειστικά για το &os;. Επιθυμούμε τη βοήθεια σας
ώστε το &os; να ακολουθεί αυτή τη σύμβαση.localeΟι τοπικές ρυθμίσεις βασίζονται σε τρεις βασικούς όρους:
Κωδικό Γλώσσας, Κωδικό Χώρας και Κωδικοποίηση. Τα ονόματα των τοπικών
ρυθμίσεων προκύπτουν από τους παραπάνω όρους, με τον τρόπο που
περιγράφεται παρακάτω:ΚωδικόςΓλώσσας_ΚωδικόςΧώρας.ΚωδικοποίησηΚωδικοί Γλωσσών και Χωρώνlanguage codescountry codesΓια να χρησιμοποιηθούν οι τοπικές ρυθμίσεις για μια συγκεκριμένη
γλώσσα σε ένα σύστημα &os; (ή σε άλλο σύστημα τύπου &unix; που
υποστηρίζει το πρότυπο I18N), ο χρήστης θα πρέπει να βρει τους
κωδικούς της συγκεκριμένης χώρας και γλώσσας (οι κωδικοί χωρών
καθοδηγούν τις εφαρμογές σχετικά με τη διάλεκτο της γλώσσας που πρέπει
να χρησιμοποιηθεί). Προγράμματα όπως φυλλομετρητές, εξυπηρετητές
ιστοσελίδων, εξυπηρετητές SMTP/POP κλπ. παίρνουν επίσης κάποιες
αποφάσεις που εξαρτώνται από τους κωδικούς αυτούς. Παρακάτω φαίνονται
μερικά παραδείγματα γλωσσών/χωρών:Κωδικός Γλώσσας/ΧώραςΠεριγραφήen_USΑγγλικά - Ηνωμένες Πολιτείεςru_RUΡώσικα - Ρωσίαzh_TWΠαραδοσιακά Κινέζικα - ΤαϊβάνΚωδικοποιήσειςencodingsASCIIΚάποιες γλώσσες χρησιμοποιούν κωδικοποιήσεις που δεν είναι ASCII,
αλλά περιέχουν χαρακτήρες 8-bit, wide, ή multibyte (δείτε τη
σελίδα manual &man.multibyte.3; για περισσότερες πληροφορίες). Οι
πιο καινούριες εφαρμογές συνήθως αναγνωρίζουν τους χαρακτήρες 8-bit.
Ανάλογα με την υλοποίηση, οι χρήστες μπορεί να χρειάζεται να
μεταγλωττίσουν μια εφαρμογή με υποστήριξη χαρακτήρων wide ή
multibyte, ή να προσαρμόσουν τις ρυθμίσεις του προγράμματος. Για να
έχετε την ικανότητα να εισάγετε και να επεξεργάζεστε χαρακτήρες
multibyte, η Συλλογή των Ports
του &os; διαθέτει προγράμματα για κάθε γλώσσα. Δείτε την
τεκμηρίωση για το I18N στο αντίστοιχο Port του &os;.Ειδικότερα, ο χρήστης χρειάζεται να διαβάσει την τεκμηρίωση της
εφαρμογής, για να αποφασίσει πως πρέπει να τη ρυθμίσει σωστά ή πως να
περάσει τις σωστές τιμές στο configure, το Makefile ή τον
μεταγλωττιστή.Θα πρέπει να έχετε κατά νου κάποια πράγματα:Σετ χαρακτήρων που εξαρτώνται από τη γλώσσα (single C chars
character set, δείτε την &man.multibyte.3;), π.χ.
ISO8859-1, ISO8859-15, KOI8-R, CP437.Κωδικοποιήσεις Wide ή multibyte, π.χ. EUC, Big5.Μπορείτε να δείτε την ενεργή λίστα των σετ χαρακτήρων στο
Μητρώο
IANA.Το &os; χρησιμοποιεί για τις τοπικές ρυθμίσεις κωδικοποιήσεις
συμβατές με το X11.Εφαρμογές I18NΣτο σύστημα πακέτων και ports του &os;, οι εφαρμογές που
σχετίζονται με το I18N έχουν στο όνομα τους τη λέξη
I18N ώστε να αναγνωρίζονται εύκολα. Ωστόσο, μπορεί
να μην υποστηρίζουν πάντοτε τη γλώσσα που χρειάζεστε.Τοπικές ΡυθμίσειςΕίναι συνήθως αρκετό να γίνει export η τιμή με την ονομασία της
επιθυμητής τοπικής ρύθμισης, μέσω της μεταβλητής περιβάλλοντος
LANG στο κέλυφος εισόδου. Αυτό μπορεί να γίνει στο
αρχείο ~/.login_conf του χρήστη, ή στο αρχείο
εκκίνησης του κελύφους του χρήστη (~/.profile,
~/.bashrc, ~/.cshrc).
Δεν είναι ανάγκη να θέσετε και τις υπόλοιπες μεταβλητές των τοπικών
ρυθμίσεων, όπως οι LC_CTYPE, LC_CTIME.
Για περισσότερες πληροφορίες, διαβάστε την τεκμηρίωση του &os; που
σχετίζεται με την υποστήριξη της επιθυμητής γλώσσας.Θα πρέπει να θέσετε τις δύο παρακάτω μεταβλητές περιβάλλοντος,
στα αρχεία ρυθμίσεων:POSIXΤην LANG για λειτουργίες που ανήκουν στην
οικογένεια &posix; &man.setlocale.3;MIMEΤην MM_CHARSET για το σύνολο χαρακτήρων MIME
των εφαρμογών.Το παραπάνω περιλαμβάνει την ρύθμιση του κελύφους χρήστη, την
ρύθμιση για μια συγκεκριμένη εφαρμογή, και τη ρύθμιση για τα
X11.Μέθοδοι Αλλαγής Τοπικών Ρυθμίσεωνlocalelogin classΥπάρχουν δύο μέθοδοι για την αλλαγή των τοπικών ρυθμίσεων, τις
οποίες και περιγράφουμε παρακάτω. Η πρώτη (την οποία και
συνιστούμε) υλοποιείται θέτοντας τιμές στις μεταβλητές περιβάλλοντος
στο login class, και η δεύτερη
αλλάζοντας τις τιμές των μεταβλητών περιβάλλοντος στο
αρχείο εκκίνησης του κελύφους
του χρήστη.Μέθοδος Κλάσεων Εισόδου (Login Class)Η μέθοδος αυτή επιτρέπει να γίνει η ρύθμιση των μεταβλητών
περιβάλλοντος μια φορά για κάθε κέλυφος, αντί να χρειάζεται να
τεθούν συγκεκριμένες τιμές στο αρχείο εκκίνησης του καθενός
χωριστά. Οι Ρυθμίσεις σε Επίπεδο
Χρήστη μπορούν να γίνουν από τον ίδιο το χρήστη, ενώ οι
Ρυθμίσεις σε Επίπεδο Διαχειριστή
απαιτούν προνόμια υπερχρήστη.Ρυθμίσεις σε Επίπεδο ΧρήστηΤο παρακάτω απλό παράδειγμα, δείχνει ένα αρχείο
.login_conf στον κατάλογο κάποιου χρήστη
στο οποίο και οι δύο μεταβλητές έχουν τεθεί για κωδικοποίηση
Latin-1:me:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:Traditional ChineseBIG-5 encodingΠαρακάτω βλέπετε ένα .login_conf στο
οποίο οι μεταβλητές έχουν τεθεί για Παραδοσιακά Κινέζικα σε
κωδικοποίηση BIG-5. Παρατηρήστε ότι έχουμε θέσει πολύ
περισσότερες μεταβλητές, καθώς κάποιες εφαρμογές δεν σέβονται
σωστά τις μεταβλητές για Κινέζικα, Γιαπωνέζικα και
Κορεάτικα.#Users who do not wish to use monetary units or time formats
#of Taiwan can manually change each variable
me:\
:lang=zh_TW.Big5:\
- :setenv=LC_ALL=zh_TW.Big:\
+ :setenv=LC_ALL=zh_TW.Big5:\
:setenv=LC_COLLATE=zh_TW.Big5:\
:setenv=LC_CTYPE=zh_TW.Big5:\
:setenv=LC_MESSAGES=zh_TW.Big5:\
:setenv=LC_MONETARY=zh_TW.Big5:\
:setenv=LC_NUMERIC=zh_TW.Big5:\
:setenv=LC_TIME=zh_TW.Big5:\
:charset=big5:\
:xmodifiers="@im=gcin": #Set gcin as the XIM Input ServerΓια περισσότερες πληροφορίες, δείτε τις Ρυθμίσεις σε Επίπεδο Διαχειριστή
και την &man.login.conf.5;.Ρυθμίσεις σε Επίπεδο ΔιαχειριστήΒεβαιωθείτε ότι έχει οριστεί η σωστή γλώσσα στην κλάση του
χρήστη, στο αρχείο /etc/login.conf.
Στο αρχείο αυτό θα πρέπει να υπάρχουν οι παρακάτω
ρυθμίσεις:language_name|Account Type Description:\
:charset=MIME_charset:\
:lang=locale_name:\
:tc=default:Με βάση το προηγούμενο παράδειγμα μας που χρησιμοποιήσαμε
Latin-1, το αρχείο θα μοιάζει με το παρακάτω:german|German Users Accounts:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:\
:tc=default:Πριν κάνετε αλλαγές στις Κλάσεις Εισόδου (Login Classes) των
χρηστών, εκτελέστε την παρακάτω εντολή:&prompt.root; cap_mkdb /etc/login.confώστε να ενεργοποιηθούν στο σύστημα οι αλλαγές που κάνατε στο
/etc/login.conf.Αλλαγή Κλάσεων Εισόδου μέσω της &man.vipw.8;vipwΧρησιμοποιήστε την vipw για να
προσθέσετε νέους χρήστες, και κάντε την καταχώριση να μοιάζει με
την παρακάτω:user:password:1111:11:language:0:0:User Name:/home/user:/bin/shΑλλαγή Κλάσεων Εισόδου μέσω της &man.adduser.8;adduserlogin classΧρησιμοποιήστε την adduser για να
προσθέσετε νέους χρήστες, και έπειτα ακολουθήστε τις παρακάτω
οδηγίες:Θέστε το defaultclass =
language στο
/etc/adduser.conf. Να έχετε υπόψη σας
ότι σε αυτή την περίπτωση, θα πρέπει να ορίσετε μια κλάση
default για όλους τους χρήστες άλλων
γλωσσών.Μια εναλλακτική λύση, είναι να απαντάτε κάθε φορά στην
ερώτησηEnter login class: default []: που εμφανίζεται από την &man.adduser.8;.Ακόμα μια εναλλακτική λύση, είναι να χρησιμοποιήσετε το
παρακάτω σε κάθε χρήστη που θέλετε να προσθέσετε και ο
οποίος χρησιμοποιεί διαφορετική γλώσσα:&prompt.root; adduser -class languageΑλλαγή Κλάσεων Εισόδου μέσω της &man.pw.8;pwΑν χρησιμοποιείτε την &man.pw.8; για να προσθέσετε νέους
χρήστες, καλέστε την με τον παρακάτω τρόπο:&prompt.root; pw useradd user_name -L languageΜέθοδος Αρχείων Εκκίνησης ΚελύφουςΗ μέθοδος αυτή δεν συνίσταται, καθώς απαιτεί διαφορετικές
ρυθμίσεις για κάθε διαφορετικό πρόγραμμα κελύφους που
χρησιμοποιείται. Προτιμήστε καλύτερα την μέθοδο των
Κλάσεων Εισόδου.MIMElocaleΓια να προσθέσετε τις τοπικές ρυθμίσεις και το σετ χαρακτήρων
MIME, ρυθμίστε απλώς τις δύο μεταβλητές περιβάλλοντος που
φαίνονται παρακάτω στο αρχείο
/etc/profile ή/και στο
/etc/csh.login. Θα χρησιμοποιήσουμε τα
Γερμανικά ως γλώσσα για το παρακάτω παράδειγμα:Στο /etc/profile:LANG=de_DE.ISO8859-1; export LANGMM_CHARSET=ISO-8859-1; export MM_CHARSETΉ στο /etc/csh.login:setenv LANG de_DE.ISO8859-1setenv MM_CHARSET ISO-8859-1Εναλλακτικά, μπορείτε να προσθέσετε τις παραπάνω οδηγίες στο
/usr/share/skel/dot.profile (αντίστοιχα με
τις οδηγίες για το /etc/profile που είδαμε
παραπάνω), ή στο /usr/share/skel/dot.login
(αντίστοιχα με τις οδηγίες για το
/etc/csh.login που είδαμε επίσης
παραπάνω).Για το X11:Στο $HOME/.xinitrc:LANG=de_DE.ISO8859-1; export LANGΉ:setenv LANG de_DE.ISO8859-1Ανάλογα με το κέλυφος που χρησιμοποιείτε (δείτε
παραπάνω).Ρυθμίσεις για την ΚονσόλαΓια όλα τα single C σετ χαρακτήρων, μπορείτε να θέσετε τις
γραμματοσειρές της κονσόλας στο /etc/rc.conf
για την επιθυμητή γλώσσα, γράφοντας:font8x16=font_name
font8x14=font_name
font8x8=font_nameΤο font_name εδώ προκύπτει από το
αντίστοιχο αρχείο του καταλόγου
/usr/share/syscons/fonts, αφαιρώντας την
κατάληξη .fnt.sysinstallkeymapscreenmapΑν χρειάζεται, χρησιμοποιήστε την κατάλληλη αντιστοίχηση
πληκτρολογίου (keymap) και οθόνης για το σετ χαρακτήρων single C που
χρησιμοποιείτε, μέσω του
sysinstall.
Μόλις εκτελέσετε το sysinstall, επιλέξτε
το Configure, και έπειτα το
Console. Εναλλακτικά, μπορείτε να
προσθέσετε το παρακάτω στο /etc/rc.conf:scrnmap=screenmap_name
keymap=keymap_name
keychange="fkey_number sequence"Στην περίπτωση αυτή, το screenmap_name
προέρχεται από ένα αρχείο του καταλόγου
/usr/share/syscons/scrnmaps, χωρίς την κατάληξη
.scm. Η αντιστοίχηση οθόνης μαζί με την
αντίστοιχη γραμματοσειρά, χρησιμοποιείται συνήθως για την επέκταση του
8ου bit στο 9o, για κάρτες VGA που χρησιμοποιούν μήτρα χαρακτήρων με
8 στήλες.Αν έχετε ενεργοποιημένο τον δαίμονα
moused στο αρχείο
/etc/rc.conf:moused_enable="YES"καλό θα είναι να εξετάσετε τις πληροφορίες σχετικά με τον δρομέα
του ποντικιού που εμφανίζονται στην παρακάτω παράγραφο.mousedΟ προεπιλεγμένος δρομέας του ποντικιού που χρησιμοποιείται από το
πρόγραμμα οδήγησης &man.syscons.4;, καταλαμβάνει τις θέσεις 0xd0-0xd3
του συνόλου χαρακτήρων. Αν αυτή η περιοχή χαρακτήρων δεν είναι
διαθέσιμη στη γλώσσα που χρησιμοποιείτε, θα πρέπει να μετακινήσετε την
περιοχή του δρομέα έξω από αυτήν. Για να γίνει αυτό στο &os;,
προσθέστε την ακόλουθη γραμμή στο
/etc/rc.conf:mousechar_start=3Το keymap_name προέρχεται από ένα
αρχείο του καταλόγου /usr/share/syscons/keymaps,
χωρίς την κατάληξη .kbd. Αν δεν είστε σίγουρος
για την αντιστοίχηση πληκτρολογίου που χρειάζεται να χρησιμοποιήσετε,
μπορείτε να χρησιμοποιήσετε το &man.kbdmap.1; για να κάνετε δοκιμές
σε διάφορες αντιστοιχίσεις, χωρίς να χρειάζεται να κάνετε
επανεκκίνηση.Η λειτουργία keychange χρησιμοποιείται συνήθως
για τον προγραμματισμό των πλήκτρων λειτουργιών (function keys), ώστε
να ταιριάζουν με τον επιλεγμένο τύπο τερματικού, καθώς οι ακολουθίες
των πλήκτρων λειτουργιών δεν μπορούν να καθοριστούν στις
αντιστοιχίσεις πληκτρολογίου.Βεβαιωθείτε επίσης ότι έχετε ρυθμίσει το σωστό τύπου τερματικού
στο /etc/ttys για όλες τις καταχωρίσεις
ttyv*. Τη δεδομένη στιγμή, οι προκαθορισμένες
αντιστοιχίες είναι:Σετ ΧαρακτήρωνΤύπος ΤερματικούISO8859-1 ή ISO8859-15cons25l1ISO8859-2cons25l2ISO8859-7cons25l7KOI8-Rcons25rKOI8-Ucons25uCP437 (προεπιλεγμένο VGA)cons25US-ASCIIcons25wΓια γλώσσες με χαρακτήρες wide ή multibyte, χρησιμοποιήστε το
σωστό &os; port στον κατάλογο
/usr/ports/language.
Μερικές θύρες εμφανίζονται ως κονσόλα, ενώ το σύστημα τις βλέπει ως
σειριακά vtty, και έτσι πρέπει να παρακρατήσετε αρκετά vtty, τόσο για
το X11 όσο και για την ψευτό-σειριακή κονσόλα. Παρακάτω θα βρείτε
μια μερικώς ενημερωμένη λίστα για χρήση άλλων γλωσσών στην
κονσόλα:ΓλώσσαΤοποθεσίαΠαραδοσιακά Κινέζικα (BIG-5)chinese/big5conΓιαπωνέζικαjapanese/kon2-16dot
ή
japanese/mule-freewnnΚορεάτικαkorean/hanΡύθμιση του X11Αν και το X11 δεν είναι μέρος του &os; Project, θα δώσουμε
εδώ κάποιες χρήσιμες πληροφορίες για όσους το χρησιμοποιούν στο &os;.
Για περισσότερες πληροφορίες, δείτε την δικτυακή τοποθεσία του &xorg;,
ή του εξυπηρετητή X11 που πρόκειται να χρησιμοποιήσετε.Στο αρχείο ~/.Xresources, μπορείτε
επιπρόσθετα να αλλάξετε και άλλες ρυθμίσεις που σχετίζονται με το
I18N (π.χ. γραμματοσειρές, μενού, κ.λ.π.).Απεικόνιση ΓραμματοσειρώνX11 True Type font serverΕγκαταστήστε τον εξυπηρετητή &xorg;
(x11-servers/xorg-server)
ή τον εξυπηρετητή &xfree86;
(x11-servers/XFree86-4-Server),
και έπειτα εγκαταστήστε τις γραμματοσειρές &truetype; για την
επιθυμητή γλώσσα. Με τις σωστές τοπικές ρυθμίσεις, θα μπορείτε να
δείτε την επιλεγμένη γλώσσα στα μενού και τα μηνύματα του γραφικού
περιβάλλοντος.Εισαγωγή μη-Αγγλικών ΧαρακτήρωνX11 Input Method (XIM)Η μέθοδος εισόδου X11 (XIM, X11 Input Method), είναι ένα νέο
πρότυπο για όλους τους πελάτες X11. Όλες οι εφαρμογές του X11 θα
πρέπει να γράφονται ως πελάτες του XIM, και να λαμβάνουν είσοδο από
εξυπηρετητές εισόδου XIM. Υπάρχουν διαθέσιμοι διάφοροι
εξυπηρετητές XIM, για διαφορετικές γλώσσες.Ρύθμιση ΕκτυπωτήΚάποια σετ χαρακτήρων single C είναι συνήθως ενσωματωμένα στο
ίδιο το υλικό των εκτυπωτών. Τα σετ χαρακτήρων τύπου wide ή multibyte
απαιτούν ειδικές ρυθμίσεις, και συνιστούμε να χρησιμοποιήσετε το
apsfilter. Μπορείτε επίσης να μετατρέψετε
το έγγραφο σας σε &postscript; ή PDF, χρησιμοποιώντας εργαλεία ειδικά
φτιαγμένα για τη συγκεκριμένη γλώσσα.Πυρήνας και Συστήματα ΑρχείωνΤο σύστημα αρχείων FFS (fast filesystem) του &os; μπορεί να
διαχειριστεί ονόματα αρχείων που ανήκουν σε σετ single C (είναι 8-bit
clean, δείτε και το &man.multibyte.3;), αλλά δεν αποθηκεύει το σετ
χαρακτήρων που χρησιμοποιείται. Με άλλα λόγια, είναι 8-bit αλλά δεν
γνωρίζει τίποτα για την κωδικοποίηση των χαρακτήρων. Επίσημα, το FFS
δεν υποστηρίζει ακόμα σετ χαρακτήρων wide ή multibyte. Υπάρχουν
ωστόσο κάποια ανεξάρτητα patches για το FFS που υποστηρίζουν αυτές τις
δυνατότητες. Πρόκειται μόνο για προσωρινές και μη μεταφέρσιμες λύσεις
ή hacks, και έχουμε αποφασίσει να μην τα περιλάβουμε στο κεντρικό
δέντρο πηγαίου κώδικα. Δείτε τις ιστοσελίδες των αντίστοιχων γλωσσών
για περισσότερες πληροφορίες και για να ανακτήσετε τα απαραίτητα
αρχεία.DOSUnicodeΤο σύστημα αρχείων &ms-dos; στο &os; έχει την δυνατότητα να
ρυθμιστεί ώστε να μετατρέπει μεταξύ των σετ χαρακτήρων
Unicode, του &ms-dos;, και του σετ χαρακτήρων που έχει επιλεγεί για
το σύστημα αρχείων του &os;. Για περισσότερες λεπτομέρειες, δείτε τη
σελίδα manual &man.mount.msdosfs.8;.Μεταγλώττιση Προγραμμάτων I18NΠολλά ports του &os; διαθέτουν υποστήριξη I18N. Σε μερικά από αυτά,
το -I18N είναι μέρος του ονόματος τους. Τα προγράμματα αυτά, και πολλά
περισσότερα, έχουν ενσωματωμένη υποστήριξη για I18N και δεν χρειάζονται
άλλες ειδικές ρυθμίσεις.MySQLΩστόσο, σε κάποιες εφαρμογές όπως η
MySQL, θα πρέπει να ρυθμιστεί το
Makefile με το επιθυμητό σετ χαρακτήρων. Αυτό
συνήθως γίνεται περνώντας μια τιμή στο
configure στον πηγαίο κώδικα, ή αλλάζοντας
το ίδιο το Makefile.Τοπικές Ρυθμίσεις για Συγκεκριμένες ΓλώσσεςAndreyChernovΑρχική συνεισφορά του Ρώσικη Γλώσσα (Κωδικοποίηση KOI8-R)localizationRussianΓια περισσότερες πληροφορίες σχετικά με την κωδικοποίηση KOI8-R,
δείτε τις Αναφορές Σχετικά με το Σετ
Χαρακτήρων KOIR-8 (Ρωσικό Σύνολο Χαρακτήρων).Τοπικές ΡυθμίσειςΤοποθετήστε τις ακόλουθες γραμμές στο αρχείο σας
~/.login_conf:me:My Account:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:Για παραδείγματα που σχετίζονται με τις
Τοπικές Ρυθμίσεις, δείτε
προηγούμενες ενότητες σε αυτό το κεφάλαιο.Ρύθμιση ΚονσόλαςΠροσθέστε την ακόλουθη γραμμή στο αρχείο
/etc/rc.conf:mousechar_start=3Χρησιμοποιήστε επίσης τις παρακάτω ρυθμίσεις στο
/etc/rc.conf:keymap="ru.koi8-r"
scrnmap="koi8-r2cp866"
font8x16="cp866b-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8"Για κάθε καταχώριση ttyv* στο αρχείο
/etc/ttys, χρησιμοποιήστε το
cons25r ως τύπο τερματικού.Για παραδείγματα που σχετίζονται με την ρύθμιση της
κονσόλας, δείτε προηγούμενες
ενότητες αυτού του κεφαλαίου.Ρύθμιση ΕκτυπωτήprintersΚαθώς οι περισσότεροι εκτυπωτές που διαθέτουν Ρωσικούς
χαρακτήρες έχουν ενσωματωμένη την κωδικοσελίδα CP866, θα χρειαστείτε
ειδικό φίλτρο εξόδου για να μετατρέψετε από το KOI8-R στο CP866.
Το φίλτρο αυτό εγκαθίσταται από προεπιλογή στο
/usr/libexec/lpr/ru/koi2alt. Η καταχώριση για
ένα Ρώσικο εκτυπωτή στο /etc/printcap θα
μοιάζει με την παρακάτω:lp|Russian local line printer:\
:sh:of=/usr/libexec/lpr/ru/koi2alt:\
:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:Δείτε το &man.printcap.5; για πιο λεπτομερή περιγραφή.Σύστημα Αρχείων &ms-dos; και Ρώσικα Ονόματα ΑρχείωνΤο παρακάτω υπόδειγμα καταχώρισης στο &man.fstab.5; ενεργοποιεί
την υποστήριξη για Ρώσικα ονόματα αρχείων σε προσαρτημένα συστήματα
αρχείων τύπου &ms-dos;:/dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0Η επιλογή επιλέγει τις τοπικές ρυθμίσεις που
θα χρησιμοποιηθούν, και η ορίζει τον πίνακα
μετατροπής χαρακτήρων. Για να χρησιμοποιήσετε την επιλογή
βεβαιωθείτε ότι έχετε προσαρτήσει την κατάτμηση
/usr πριν την κατάτμηση &ms-dos;, καθώς οι
πίνακες μετατροπής βρίσκονται στο
/usr/libdata/msdosfs. Για περισσότερες
πληροφορίες, δείτε τη σελίδα manual του
&man.mount.msdosfs.8;.Ρύθμιση X11Εκτελέστε πρώτα τις γενικές
τοπικές ρυθμίσεις που έχουμε ήδη περιγράψει.Αν χρησιμοποιείτε τον εξυπηρετητή
&xorg;, εγκαταστήστε το πακέτο
x11-fonts/xorg-fonts-cyrillic.Ελέγξτε την ενότητα "Files" στο αρχείο
/etc/X11/xorg.conf. Θα πρέπει να
προσθέσετε την παρακάτω γραμμή πριν
από οποιαδήποτε άλλη καταχώριση
FontPath:FontPath "/usr/local/lib/X11/fonts/cyrillic"Δείτε στην Συλλογή των Ports για περισσότερες κυριλλικές
γραμματοσειρές.Για την ενεργοποίηση του Ρωσικού πληκτρολογίου, προσθέστε
τις παρακάτω γραμμές στην ενότητα "Keyboard"
του αρχείου xorg.conf:Option "XkbLayout" "us,ru"
Option "XkbOptions" "grp:toggle"Βεβαιωθείτε επίσης ότι η γραμμή
XkbDisable είναι ανενεργή (μαρκαρισμένη ως
σχόλιο).Αν χρησιμοποιήσετε το grp:toggle
η εναλλαγή RUS/LAT θα γίνεται με το Δεξιό Alt,
ενώ αν θέσετε grp:ctrl_shift_toggle,
η εναλλαγή θα γίνεται με το
CtrlShift.
Για grp:caps_toggle, η εναλλαγή RUS/LAT θα
γίνεται με το CapsLock.
Η κανονική λειτουργία του CapsLock εξακολουθεί
να είναι διαθέσιμη μέσω του συνδυασμού πλήκτρων
ShiftCapsLock
(μόνο σε κατάσταση LAT). Το grp:caps_toggle
για κάποιο άγνωστο λόγο, δεν λειτουργεί στο
&xorg;.Αν το πληκτρολόγιο σας διαθέτει πλήκτρα
&windows;, και έχετε παρατηρήσει ότι κάποια από
τα μη-αλφαριθμητικά πλήκτρα έχουν λάθος αντιστοίχηση όταν είστε
σε κατάσταση RUS, προσθέστε την παρακάτω γραμμή στο αρχείο
xorg.conf:Option "XkbVariant" ",winkeys"Το Ρώσικο XKB πληκτρολόγιο ίσως δεν λειτουργεί με
εφαρμογές που δεν έχουν φτιαχτεί για τις αντίστοιχες τοπικές
ρυθμίσεις.Οι εφαρμογές που τηρούν τις ελάχιστες προδιαγραφές τοπικών
ρυθμίσεων, θα πρέπει να καλούν από νωρίς τη συνάρτηση
XtSetLanguageProc (NULL, NULL, NULL); μέσα
στον κώδικα τους.Δείτε το KOI8-R για
το σύστημα X Window για περισσότερες οδηγίες σχετικά με
την δημιουργία εφαρμογών X11 που να χρησιμοποιούν τοπικές
ρυθμίσεις.Τοπικές Ρυθμίσεις για Παραδοσιακά Κινέζικα ΤαϊβάνlocalizationTraditional ChineseΤο &os;-Taiwan Project έχει δημιουργήσει ένα HOWTO για τα
Κινέζικα στο &os;, το οποίο μπορείτε να βρείτε στη διεύθυνση
,
χρησιμοποιώντας πολλά Κινέζικα ports.
Ο τρέχων συντάκτης του Κινέζικου &os; Howto είναι ο
Shen Chuan-Hsing statue@freebsd.sinica.edu.tw.
Ο Chuan-Hsing Shen statue@freebsd.sinica.edu.tw
έχει δημιουργήσει την Κινέζικη Συλλογή
&os; (CFC) χρησιμοποιώντας την κωδικοποίηση
zh-L10N-tut του &os;-Ταΐβάν. Τα πακέτα και τα
scripts διατίθενται στη διεύθυνση .Τοπικές Ρυθμίσεις για την Γερμανική Γλώσσα (για Όλες τις Γλώσσες
που Βασίζονται στο ISO 8859-1)localizationGermanΟ Slaven Rezic eserte@cs.tu-berlin.de έχει γράψει
ένα οδηγό για την χρήση των umlauts σε ένα μηχάνημα &os;. Ο οδηγός
είναι γραμμένος στα Γερμανικά και διατίθεται στην τοποθεσία
.Τοπικές Ρυθμίσεις για την Ελληνική ΓλώσσαlocalizationGreekΟ &a.el.kokkalis; έχει γράψει ένα πλήρες άρθρο για την υποστήριξη
της Ελληνικής γλώσσας στο &os;. Το άρθρο αυτό διατίθεται ως μέρος της
επίσημης Ελληνικής τεκμηρίωσης του &os;, στην τοποθεσία http://www.freebsd.org/doc/el_GR.ISO8859-7/artilces/greek-language-support/index.html.Τοπικές Ρυθμίσεις Για Γιαπωνέζικα και ΚορεάτικαlocalizationJapaneselocalizationKoreanΓια Γιαπωνέζικα, δείτε στην τοποθεσία
,
ενώ για Κορεάτικα, δείτε στην τοποθεσία
.Τεκμηρίωση του &os; σε Γλώσσες Εκτός της ΑγγλικήςΚάποιοι εθελοντές του &os; έχουν μεταφράσει τμήματα της
τεκμηρίωσης του σε άλλες γλώσσες. Οι μεταφράσεις αυτές διατίθενται
μέσω συνδέσμων στην κύρια δικτυακή
τοποθεσία του &os; ή στον κατάλογο
/usr/share/doc.
diff --git a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
index 49762e6787..4aedbcc0c6 100644
--- a/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/mirrors/chapter.sgml
@@ -1,3367 +1,3367 @@
Που θα Βρείτε το &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:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Χρησιμοποιήστε την εντολή cvs login και
δώστε τον κωδικό anoncvs όταν σας
ζητηθεί.)Ταΐβάν:
:pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
(για τον pserver χρησιμοποιήστε την εντολή
cvs login και δώστε οτιδήποτε για κωδικό
όταν σας ζητηθεί, το ssh δεν έχει κωδικό.)SSH2 HostKey: 1024 02:ed:1b:17:d6:97:2b:58:5e:5c:e2:da:3b:89:88:26 /etc/ssh/ssh_host_rsa_key.pub
SSH2 HostKey: 1024 e8:3b:29:7b:ca:9f:ac:e9:45:cb:c8:17:ae:9b:eb:55 /etc/ssh/ssh_host_dsa_key.pubΗνωμένες Πολιτείες Αμερικής:
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 - χωρίς
κωδικό)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
+ url="http://users.csc.calpoly.edu/~gfisher/classes/308/handouts/cvs-basics.html">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/printing/chapter.sgml b/el_GR.ISO8859-7/books/handbook/printing/chapter.sgml
index 40689c4d8e..5bbcd053a1 100644
--- a/el_GR.ISO8859-7/books/handbook/printing/chapter.sgml
+++ b/el_GR.ISO8859-7/books/handbook/printing/chapter.sgml
@@ -1,5249 +1,5249 @@
SeanKellyΣυνεισφορά από τον JimMockΑναδομήθηκε και ανανεώθηκε από τον ΕκτυπώσειςΣύνοψηLPD σύστημα spoolingεκτυπώσειςΜπορείτε να χρησιμοποιήσετε το &os; για να κάνετε εκτυπώσεις
σε διάφορους τύπους εκτυπωτών, από τον παλαιότερο κρουστικό ως τον πιο
σύγχρονο laser εκτυπωτή, καθώς και οποιασδήποτε άλλης τεχνολογίας
ανάμεσα τους, και να δημιουργήσετε εκτυπώσεις υψηλής ποιότητας με τις
εφαρμογές που εκτελείτε.Το &os; μπορεί επίσης να ρυθμιστεί ώστε να λειτουργεί ως
εξυπηρετητής εκτυπώσεων δικτύου. Με αυτή τη δυνατότητα το &os; μπορεί
να λαμβάνει εργασίες εκτύπωσης από διάφορους άλλους υπολογιστές,
συμπεριλαμβανομένων υπολογιστών &os;, &windows; και &macos;. Το &os;
μπορεί να εξασφαλίζει ότι μόνο μια εργασία θα τυπώνεται κάθε χρονική
στιγμή και μπορεί να τηρεί στατιστικά για τους χρήστες και τα
μηχανήματα που θα κάνουν τις περισσότερες εκτυπώσεις, να παράγει
σελίδες banner που να δείχνουν σε ποιόν ανήκει η κάθε
εκτύπωση, και πολλά άλλα.Αφού διαβάσετε αυτό το κεφάλαιο θα ξέρετε:Πως να ρυθμίσετε την ουρά εκτυπώσεων (print spooler) του
&os;.Πως να εγκαθιστάτε φίλτρα εκτύπωσης, να χειρίζεστε
ειδικές εργασίες εκτύπωσης (π.χ. τη μετατροπή
εισερχόμενων κειμένων σε μορφές εκτύπωσης που είναι κατανοητές από
τους εκτυπωτές σας).Πως να ενεργοποιήσετε σελίδες τύπου κεφαλίδας ή banner στις
εκτυπώσεις σας.Πως να εκτυπώνετε σε εκτυπωτές που είναι συνδεδεμένοι σε άλλους
υπολογιστές.Πως να εκτυπώνετε σε εκτυπωτές που είναι συνδεδεμένοι απευθείας
στο δίκτυο.Πως να ελέγχετε τους περιορισμούς εκτύπωσης, συμπεριλαμβανομένων
των περιορισμών μεγέθους των εργασιών εκτύπωσης, και πως να
παρεμποδίζετε την δυνατότητα εκτύπωσης σε συγκεκριμένους
χρήστες.Πως να κρατήσετε στατιστικά για τον εκτυπωτή, και καταγραφή
για τη χρήση του εκτυπωτή από κάθε χρήστη.Πως να αντιμετωπίσετε προβλήματα στις εκτυπώσεις.Πριν διαβάσετε αυτό το κεφάλαιο, θα πρέπει:Να γνωρίζετε πως να ρυθμίσετε και να εγκαταστήσετε ένα νέο
πυρήνα ().ΕισαγωγήΓια να χρησιμοποιήσετε εκτυπωτές στο &os;, θα χρειαστεί να
ρυθμίσετε τη λειτουργία τους με το σύστημα παροχέτευσης (spooling)
εκτυπωτών γραμμής του Berkeley, γνωστό επίσης και ως σύστημα
παροχέτευσης LPD, ή απλά
LPD. Αυτό είναι το προκαθορισμένο σύστημα
ελέγχου εκτυπωτών στο &os;. Το κεφάλαιο αυτό είναι μια εισαγωγή στο
LPD και θα σας καθοδηγήσει στις ρυθμίσεις
του.Εάν σας είναι οικείο το LPD ή κάποιο άλλο
σύστημα παροχέτευσης εκτυπωτών, τότε μπορείτε να μεταπηδήσετε στην
ενότητα Βασική Εγκατάσταση.Το LPD μπορεί να ελέγχει εξ' ολοκλήρου
όλες τις λειτουργίες των εκτυπωτών ενός υπολογιστή. Είναι κυρίως
υπεύθυνο για ένα πλήθος λειτουργιών:Ελέγχει την πρόσβαση σε απευθείας συνδεμένους εκτυπωτές και
εκτυπωτές προσαρτημένους σε άλλους κόμβους στο δίκτυο.εργασίες εκτύπωσηςΕπιτρέπει σε χρήστες να στέλνουν αρχεία προς εκτύπωση. Οι
αποστολές αυτές είναι γνωστές ως
εργασίες (jobs).Διατηρεί ουρά αναμονής (queue) για κάθε
εκτυπωτή, ώστε να προλαμβάνει την ταυτόχρονη πρόσβαση από πολλούς
χρήστες.Μπορεί να εκτυπώνει σελίδες κεφαλίδας
(γνωστές επίσης ως banner ή
σελίδες burst) ώστε οι χρήστες να μπορούν
εύκολα να ξεχωρίσουν τις εργασίες τους μέσα στην στοίβα
εκτυπώσεων.Φροντίζει για την ορθότητα των παραμέτρων επικοινωνίας των
εκτυπωτών που είναι συνδεδεμένοι σε σειριακές θύρες.Μπορεί μέσω του δικτύου να στείλει εργασίες σε σύστημα
παροχέτευσης LPD διαφορετικού
υπολογιστή.Μπορεί να εκτελέσει διάφορα φίλτρα για να προσαρμόσει εργασίες
ώστε να είναι δυνατή η εκτύπωση τους σε εκτυπωτές που χρησιμοποιούν
διαφορετικές γλώσσες ή έχουν διαφορετικές δυνατότητες.Μπορεί να κάνει καταμέτρηση χρήσης του εκτυπωτή.Μέσω του αρχείου ρύθμισης (/etc/printcap),
και με τη βοήθεια ειδικών προγραμμάτων φίλτρων, μπορείτε να
ενεργοποιήσετε το σύστημα LPD να κάνει όλες
ή κάποιες από τις παραπάνω εργασίες σε μια μεγάλη γκάμα συσκευών
εκτύπωσης.Γιατί θα πρέπει να χρησιμοποιείτε τον SpoolerΑν είστε ο μοναδικός χρήστης του συστήματος, θα αναρωτιέστε
γιατί θα έπρεπε να ενδιαφερθείτε για τον spooler αφού δεν χρειάζεστε
έλεγχο πρόσβασης, σελίδες κεφαλίδας, ή αναφορές εκτύπωσης. Αν και
μπορείτε να ενεργοποιήσετε την άμεση πρόσβαση στον εκτυπωτή, είναι
καλύτερα να χρησιμοποιείτε τον spooler για τους παρακάτω
λόγους:το LPD εκτυπώνει τις εργασίες στο
παρασκήνιο, δεν χρειάζεται να περιμένετε να αντιγραφούν τα
δεδομένα στον εκτυπωτή.&tex;Το LPD μπορεί άνετα να εκτελεί
μια εργασία εκτύπωσης διαμέσου φίλτρων και να προσθέτει κεφαλίδες
ημερομηνίας/ώρας ή να μετατρέπει κάποιο ειδικό τύπο αρχείου
(όπως ένα αρχείο &tex; DVI) σε ένα τύπο κατανοητό από τον
εκτυπωτή σας. Αυτές οι διαδικασίες δεν χρειάζεται να γίνονται
χειροκίνητα.Πολλά από τα ελεύθερα και εμπορικά διαθέσιμα προγράμματα
που παρέχουν διευκολύνσεις στην εκτύπωση, συνήθως επιζητούν
να επικοινωνήσουν με τον spooler του συστήματος σας. Ρυθμίζοντας
το σύστημα παροχέτευσης, θα μπορείτε ευκολότερα να υποστηρίζετε
λογισμικό τρίτων, που μπορεί ήδη να έχετε ή που πρόκειται να
εγκαταστήσετε στο μέλλον.Βασική ΕγκατάστασηΓια να χρησιμοποιήσετε εκτυπωτές με το σύστημα παροχέτευσης
LPD, θα πρέπει να εγκαταστήσετε τόσο το
hardware του εκτυπωτή σας όσο και το λογισμικό
LPD. Αυτό το έγγραφο περιγράφει την
εγκατάσταση σε δύο στάδια:Δείτε την ενότητα Βασικές
Ρυθμίσεις Εκτυπωτών για να μάθετε πως γίνεται η σύνδεση
εκτυπωτών, με ποιο τρόπο επικοινωνεί το
LPD με τους εκτυπωτές, και πως να
εκτυπώνετε απλά αρχεία κειμένου.Δείτε την ενότητα Ρυθμίσεις
Εκτυπωτών για Προχωρημένους για να μάθετε πως να εκτυπώνετε
αρχεία ειδικής μορφής διαφόρων τύπων, πως να εκτυπώνετε σελίδες
κεφαλίδας, πως να εκτυπώνετε σε ένα δίκτυο, πως να ελέγχετε την
πρόσβαση στους εκτυπωτές, και πως να χρησιμοποιείτε την καταγραφή
εκτυπώσεων.Βασικές Ρυθμίσεις ΕκτυπωτώνΑυτή η ενότητα περιγράφει πως να ρυθμίσετε το hardware του
εκτυπωτή και το λογισμικό LPD. Παρέχει
βασικές γνώσεις για τα εξής θέματα:Η Ενότητα Ρυθμίσεις
Hardware υποδεικνύει πως να συνδέσετε τον εκτυπωτή σε
μια θύρα του υπολογιστή σας.Η Ενότητα Ρυθμίσεις
Λογισμικού υποδεικνύει πως να εγκαταστήσετε το αρχείο
ρύθμισης του συστήματος παροχέτευσης
LPD: το αρχείο
/etc/printcap.Αν προσπαθείτε να εγκαταστήσετε έναν εκτυπωτή που δέχεται δεδομένα
μέσω πρωτοκόλλου δικτύου και όχι μέσω διασύνδεσης τοπικής θύρας, τότε
δείτε την ενότητα
Εκτυπωτές Με
Συνδέσεις Δικτύου.Αν και αυτή η ενότητα ονομάζεται Βασικές Ρυθμίσεις
Εκτυπωτών, στην πραγματικότητα είναι αρκετά περίπλοκη. Το
δυσκολότερο στάδιο στην εγκατάσταση είναι η επιτυχής λειτουργία στην
επικοινωνία του εκτυπωτή με τον υπολογιστή σας και το σύστημα
παροχέτευσης LPD. Οι επιλογές για
προχωρημένους, όπως οι σελίδες κεφαλίδας και αναφοράς είναι σχετικά
εύκολες να επιτευχθούν, μετά την επιτυχή ρύθμιση της βασικής
λειτουργίας εκτύπωσης.Ρυθμίσεις HardwareΑυτή η ενότητα εξηγεί τους διάφορους τρόπους σύνδεσης του
εκτυπωτή με τον υπολογιστή σας. Περιγράφει τους διάφορους τύπους
θυρών και καλωδίων, και τις ρυθμίσεις που πρέπει να κάνετε
στον πυρήνα για να ενεργοποιήσετε την επικοινωνία μεταξύ &os; και
εκτυπωτή.Αν ήδη έχετε καταφέρει να συνδέσετε τον εκτυπωτή σας και έχετε
εκτυπώσει επιτυχώς σε άλλο λειτουργικό σύστημα, τότε μπορείτε να
μεταβείτε κατευθείαν στην ενότητα Ρυθμίσεις Λογισμικού.Θύρες και ΚαλώδιαΟι εκτυπωτές που διατίθενται σήμερα για χρήση με Η/Υ
παρέχονται με μία ή περισσότερες εκ των ακολούθων τριών
διασυνδέσεων:εκτυπωτέςσειριακοίΟι Σειριακές διασυνδέσεις, γνωστές
και ως RS-232 ή θύρες COM, χρησιμοποιούν την σειριακή θύρα
του υπολογιστή σας για να στείλουν δεδομένα στον εκτυπωτή.
Οι σειριακές διασυνδέσεις είναι συνήθεις στην βιομηχανία
κατασκευής Η/Υ και τα καλώδια είναι εκτενώς διαδεδομένα και
επίσης εύκολα να κατασκευαστούν. Οι σειριακές διασυνδέσεις
μερικές φορές χρειάζονται ειδικά καλώδια και μπορεί να σας
ζητηθούν πολύπλοκες επικοινωνιακές ρυθμίσεις. Οι περισσότερες
σειριακές θύρες των Η/Υ έχουν μέγιστη ταχύτητα μετάδοσης
115200 bps, κάνοντας δύσκολη την εργασία εκτύπωσης
γραφικών μεγάλων διαστάσεων.εκτυπωτέςπαράλληλοιΟι Παράλληλες διασυνδέσεις
χρησιμοποιούν την παράλληλη θύρα του υπολογιστή σας για να
στέλνουν δεδομένα στον εκτυπωτή. Οι παράλληλες διασυνδέσεις
είναι διαδεδομένες στο εμπόριο και είναι γρηγορότερες από τις
σειριακές RS-232. Τα καλώδια διατίθενται έτοιμα, αλλά είναι
δυσκολότερο να κατασκευαστούν χειρωνακτικά. Με τις παράλληλες
διασυνδέσεις δεν προβλέπονται επιλογές ρύθμισης επικοινωνίας,
κάνοντας την ρύθμιση τους εξαιρετικά απλή.centronicsπαράλληλοι εκτυπωτέςΟι παράλληλες διασυνδέσεις είναι γνωστές και ως
διασυνδέσεις Centronics, ονομασία προερχόμενη
από τον τύπο του ακροδέκτη του εκτυπωτή.εκτυπωτέςUSBΟι διασυνδέσεις USB, συντομογραφία από το Universal
Serial Bus, δουλεύουν σε ακόμη μεγαλύτερες ταχύτητες από την
παράλληλη και την RS-232 σειριακή διασύνδεση. Τα καλώδια τους
είναι απλά και φτηνά. Η USB είναι ανώτερη από την Σειριακή
RS-232 και από την Παράλληλη στην εκτύπωση, αλλά δυστυχώς δεν
υποστηρίζεται καλά από τα συστήματα &unix;. Ένας τρόπος για
να αποφύγετε αυτό το πρόβλημα είναι να αγοράσετε εκτυπωτή
που φέρει διασύνδεση USB και Παράλληλη, όπως συμβαίνει με
πολλούς εκτυπωτές.Γενικά, οι Παράλληλες διασυνδέσεις προσφέρουν συνήθως
μίας κατεύθυνσης επικοινωνία (από τον υπολογιστή στον εκτυπωτή)
ενώ η σειριακή και η USB δίνουν αμφίδρομη. Στο &os; οι πιο
πρόσφατες παράλληλες θύρες (EPP και ECP) καταφέρνουν
αμφίδρομη επικοινωνία με τους εκτυπωτές, όταν χρησιμοποιούνται
καλώδια που συμμορφώνονται με το πρότυπο IEEE-1284.PostScriptΗ αμφίδρομη επικοινωνία με εκτυπωτές διαμέσου παράλληλης
θύρας μπορεί να επιτευχθεί γενικά με δύο τρόπους. Ο πρώτος τρόπος
χρησιμοποιεί ένα προσαρμοσμένο πρόγραμμα οδήγησης εκτυπωτή, ώστε
να μπορεί το &os; να συνομιλεί στην γλώσσα του εκτυπωτή. Αυτό
είναι σύνηθες με εκτυπωτές inkjet και μπορεί επίσης να
χρησιμοποιηθεί για αναφορές διαθέσιμης ποσότητας μελανιού και για
άλλες πληροφορίες λειτουργίας. Η δεύτερη μέθοδος χρησιμοποιείται
όταν ο εκτυπωτής έχει δυνατότητα υποστήριξης &postscript;.Οι εργασίες &postscript; είναι στην πραγματικότητα προγράμματα
που αποστέλλονται στον εκτυπωτή, δεν είναι απαραίτητο να παράγουν
εκτυπώσεις, ενώ μπορούν να επιστρέψουν το αποτέλεσμα τους
απευθείας στον υπολογιστή. Το &postscript; χρησιμοποιεί
αμφίδρομη επικοινωνία για να ενημερώσει τον υπολογιστή για τυχόν
προβλήματα, όπως σφάλματα στο πρόγραμμα &postscript; ή
μπλοκάρισμα τροφοδοσίας χαρτιού. Οι χρήστες σας, θα σας είναι
ευγνώμονες για αυτές τις πληροφορίες. Επιπλέον, ο καλύτερος
τρόπος για να κάνετε σωστή καταμέτρηση με ένα αμφίδρομο εκτυπωτή
&postscript; είναι: να ρωτήσετε τον εκτυπωτή για την συνολική
καταμέτρηση των σελίδων του (πόσες σελίδες εκτύπωσε σε όλη τη
διάρκεια ζωής του), μετά να αποστείλετε την εργασία του χρήστη,
και έπειτα να ξαναρωτήσετε για την καταμέτρηση των σελίδων του.
Αφαιρέστε τις δύο τιμές και θα γνωρίζετε πόσες σελίδες να
χρεώσετε στον χρήστη.Παράλληλες ΘύρεςΓια να συνδέσετε έναν εκτυπωτή σε παράλληλη θύρα, συνδέστε
το καλώδιο Centronics μεταξύ εκτυπωτή και υπολογιστή.
Οι οδηγίες που συνοδεύουν τον εκτυπωτή και τον υπολογιστή θα σας
καθοδηγήσουν να ολοκληρώσετε την σύνδεση.Θυμηθείτε ποια παράλληλη θύρα χρησιμοποιείτε στον υπολογιστή.
Η πρώτη παράλληλη θύρα στο &os; είναι η
ppc0,
η δεύτερη είναι η ppc1,
και ούτω καθεξής. Το όνομα συσκευής του εκτυπωτή χρησιμοποιεί
την ίδια αρίθμηση:
/dev/lpt0 για τον
εκτυπωτή στην πρώτη παράλληλη θύρα κ.τ.λ.Σειριακές ΘύρεςΓια να συνδέσετε έναν εκτυπωτή χρησιμοποιώντας σειριακή
διασύνδεση, συνδέστε το κατάλληλο σειριακό καλώδιο μεταξύ εκτυπωτή
και υπολογιστή. Οι οδηγίες που συνοδεύουν τον εκτυπωτή και τον
υπολογιστή σας, θα σας καθοδηγήσουν να ολοκληρώσετε την
σύνδεση.Αν δεν είστε σίγουροι ποιο είναι το κατάλληλο σειριακό
καλώδιο, μπορείτε να δοκιμάσετε μία από τις ακόλουθες
εναλλακτικές:Ένα καλώδιο modem ενώνει κάθε pin
του ακροδέκτη από τη μια πλευρά του καλωδίου κατευθείαν με
το αντίστοιχο pin του ακροδέκτη στο άλλο άκρο. Αυτός ο τύπος
καλωδίου είναι γνωστός και ως καλώδιο
DTE-to-DCE.null-modem cableΈνα καλώδιο null-modem ενώνει
κατευθείαν μερικά pins, ανταλλάσσει μερικά άλλα (για
παράδειγμα, τα pins αποστολής και λήψης), ενώ
βραχυκυκλώνει μερικά άλλα, εσωτερικά, στο προστατευτικό
κάλυμμα κάθε ακροδέκτη. Αυτός ο τύπος καλωδίου είναι γνωστός
και ως καλώδιο DTE-to-DTE.Ένα καλώδιο σειριακού εκτυπωτή, που
απαιτείται από κάποιους λιγότερο συνηθισμένους εκτυπωτές,
είναι σαν το καλώδιο null-modem, αλλά στέλνει ισοδύναμα
σήματα και στα δύο άκρα αντί να τα βραχυκυκλώνει
εσωτερικά.ρυθμός baudισοδυναμίαπρωτόκολλο ελέγχου ροήςΘα πρέπει επίσης να ρυθμίσετε τις παραμέτρους επικοινωνίας
του εκτυπωτή, συνήθως από τον μπροστινό πίνακα ελέγχου ή από τους
DIP διακόπτες του. Επιλέξτε την μέγιστη τιμή
bps (bits per second = bits ανά δευτερόλεπτο,
αναφέρεται και ως ρυθμός baud) που
υποστηρίζουν ο υπολογιστής και ο εκτυπωτής σας. Επιλέξτε 7 ή 8
data bits, none, even, ή odd parity, και 1 ή 2 stop bits. Επίσης
επιλέξτε ένα πρωτόκολλο ελέγχου ροής: είτε none, ή XON/XOFF
(αναφέρεται και ως έλεγχος ροής in-band ή
software). Να θυμάστε αυτές τις
ρυθμίσεις, για το στάδιο ρύθμισης λογισμικού που ακολουθεί.Ρυθμίσεις ΛογισμικούΑυτή η ενότητα περιγράφει τις αναγκαίες ρυθμίσεις που πρέπει
να γίνουν στο λογισμικό για να μπορείτε να εκτυπώνετε με το σύστημα
παροχέτευσης εκτυπωτών LPD στο
&os;.Μια γενική άποψη των ενεργειών που πρέπει να ακολουθήσετε
είναι:Ρυθμίστε τον πυρήνα σας, αν είναι αναγκαίο, για την θύρα
που χρησιμοποιείτε για τον εκτυπωτή σας. Οι απαραίτητες
ρυθμίσεις περιγράφονται στην ενότητα Ρυθμίσεις Πυρήνα.Ρυθμίστε την κατάσταση επικοινωνίας για την παράλληλη θύρα,
αν πρόκειται να την χρησιμοποιήσετε.
Η ενότητα Ρυθμίσεις
Κατάστασης Επικοινωνίας για την Παράλληλη Θύρα περιέχει
λεπτομέρειες.Ελέγξτε αν το λειτουργικό σύστημα μπορεί να στείλει δεδομένα
στον εκτυπωτή.
Η ενότητα Έλεγχος Επικοινωνίας
του Εκτυπωτή παρέχει μερικές συμβουλές για το πως θα
μπορούσε να γίνει ο έλεγχος.Ρυθμίστε το LPD για τον εκτυπωτή
σας, τροποποιώντας το αρχείο /etc/printcap.
Θα βρείτε οδηγίες για αυτές τις ρυθμίσεις σε επόμενο τμήμα αυτού
του κεφαλαίου.Ρυθμίσεις ΠυρήναΟ πυρήνας του λειτουργικού συστήματος έχει μεταγλωττιστεί έτσι
ώστε να δουλεύει με ένα συγκεκριμένο σύνολο συσκευών. Η σειριακή
και η παράλληλη διασύνδεση του εκτυπωτή είναι μέρος αυτού του
συνόλου. Επομένως, ίσως να είναι αναγκαίο να προσθέσετε
υποστήριξη για κάποια πρόσθετη σειριακή ή παράλληλη θύρα, αν δεν
είναι ήδη ρυθμισμένη στον πυρήνα σας.Για να ελέγξετε αν ο πυρήνας σας μπορεί να υποστηρίξει μια
σειριακή διασύνδεση, πληκτρολογήστε:&prompt.root; grep sioN/var/run/dmesg.bootΌπου N είναι ο αριθμός της
σειριακής θύρας, ξεκινώντας από το μηδέν. Αν δείτε στην έξοδο του
τερματικού σας κάτι παρόμοιο με:sio2 at port 0x3e8-0x3ef irq 5 on isa
sio2: type 16550Aτότε ο πυρήνας υποστηρίζει αυτή τη θύρα.Για να ελέγξετε αν ο πυρήνας σας υποστηρίζει παράλληλες
διασυνδέσεις, πληκτρολογήστε:&prompt.root; grep ppcN/var/run/dmesg.bootΌπου N είναι ο αριθμός της
παράλληλης θύρας, ξεκινώντας από το μηδέν. Αν δείτε στην έξοδο
του τερματικού σας κάτι παρόμοιο με:ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes thresholdτότε ο πυρήνας υποστηρίζει αυτή τη θύρα.Για να μπορεί το λειτουργικό σύστημα να αναγνωρίζει και να
χρησιμοποιεί την θύρα (παράλληλη ή σειριακή) για τον εκτυπωτή σας,
ίσως χρειαστεί να επαναπροσαρμόσετε τον πυρήνα σας.Για την υποστήριξη σειριακής θύρας, δείτε την ενότητα στις
ρυθμίσεις του πυρήνα. Για την υποστήριξη παράλληλης θύρας, δείτε
την ίδια ενότητα και την ενότητα που
ακολουθεί.Ρυθμίσεις Κατάστασης Επικοινωνίας για την Παράλληλη
ΘύραΌταν χρησιμοποιείτε την παράλληλη διασύνδεση, μπορείτε να
επιλέξετε αν η επικοινωνία του &os; με τον εκτυπωτή θα είναι
τύπου interrupt-driven ή polled. Ο γενικός οδηγός συσκευής του
εκτυπωτή (&man.lpt.4;) στο &os; χρησιμοποιεί το σύστημα
&man.ppbus.4;, το οποίο ελέγχει την θύρα του chipset
με τον οδηγό &man.ppc.4;.Η μέθοδος interrupt-driven είναι
προεπιλεγμένη στον πυρήνα GENERIC. Με αυτή τη μέθοδο,
το λειτουργικό σύστημα χρησιμοποιεί ένα σήμα IRQ για να
προσδιορίσει αν ο εκτυπωτής είναι έτοιμος για δεδομένα.Η μέθοδος polled οδηγεί το
λειτουργικό σύστημα να ζητά κατά επανάληψη από τον εκτυπωτή
αν είναι έτοιμος για πρόσθετα δεδομένα. Όταν απαντήσει θετικά,
ο πυρήνας στέλνει πρόσθετα δεδομένα.Η μέθοδος interrupt-driven είναι συνήθως κάπως γρηγορότερη
αλλά χρησιμοποιεί μια πολύτιμη γραμμή IRQ. Έχει παρατηρηθεί πως
κάποιοι σύγχρονοι εκτυπωτές HP δε δουλεύουν σωστά σε κατάσταση
interrupt, πιθανώς λόγω κάποιων (όχι απόλυτα εξακριβωμένων)
προβλημάτων συγχρονισμού. Αυτοί οι εκτυπωτές χρειάζονται την μέθοδο
polled. Θα πρέπει να χρησιμοποιείτε την αποτελεσματικότερη
κατάσταση λειτουργίας. Κάποιοι εκτυπωτές δουλεύουν και στις δυο
καταστάσεις, αλλά είναι οδυνηρά αργοί στην κατάσταση λειτουργίας
interrupt.Μπορείτε να ρυθμίσετε την κατάσταση επικοινωνίας με δύο
τρόπους: ρυθμίζοντας τον πυρήνα ή χρησιμοποιώντας το πρόγραμμα
&man.lptcontrol.8;.Για να θέσετε την κατάσταση επικοινωνίας ρυθμίζοντας
τον πυρήνα:Επεξεργαστείτε το αρχείο ρύθμισης του πυρήνα. Δείτε την
καταχώριση ppc0. Αν εγκαθιστάτε την
δεύτερη παράλληλη θύρα, τότε χρησιμοποιείστε
ppc1. Για την τρίτη θύρα
ppc2 και ούτω καθεξής.Αν επιθυμείτε κατάσταση λειτουργίας interrupt-driven,
επεξεργαστείτε την ακόλουθη γραμμή:hint.ppc.0.irq="N"στο αρχείο /boot/device.hints και
αντικαταστήστε το N με τον
σωστό αριθμό IRQ. Το αρχείο ρύθμισης του πυρήνα πρέπει
επίσης να περιέχει τον οδηγό &man.ppc.4;:device ppcΑν επιθυμείτε κατάσταση λειτουργίας polled, διαγράψτε
από το αρχείο /boot/device.hints, την
ακόλουθη γραμμή:hint.ppc.0.irq="N"Σε μερικές περιπτώσεις, το παραπάνω δεν είναι αρκετό
για να θέσετε την θύρα σε κατάσταση polled. Τις
περισσότερες φορές το πρόβλημα προέρχεται από τον οδηγό
&man.acpi.4;, ο οποίος έχει την ευχέρεια να εξετάζει και
να προσαρτά συσκευές, και επομένως, να ελέγχει τον τρόπο
πρόσβασης στην θύρα του εκτυπωτή. Θα πρέπει να ελέγξετε
τις ρυθμίσεις του &man.acpi.4; για να διορθώσετε αυτό το
πρόβλημα.Αποθηκεύστε το αρχείο. Ρυθμίστε, μεταγλωττίστε, και
εγκαταστήστε τον πυρήνα, και έπειτα κάντε επανεκκίνηση.
Για περισσότερες λεπτομέρειες, δείτε τις ρυθμίσεις του πυρήνα.Για να θέσετε την κατάσταση επικοινωνίας με
το &man.lptcontrol.8;:Πληκτρολογήστε:&prompt.root; lptcontrol /dev/lptNγια να θέσετε την κατάσταση λειτουργίας interrupt-driven
για το lptN.Πληκτρολογήστε:&prompt.root; lptcontrol /dev/lptNγια να θέσετε την κατάσταση λειτουργίας polled για το
lptN.Θα μπορούσατε να καταχωρίσετε αυτές τις εντολές στο
δικό σας αρχείο /etc/rc.local. Έτσι θα
εκτελούνται αυτόματα κατά την εκκίνηση
του συστήματος σας. Για περισσότερες πληροφορίες δείτε το
&man.lptcontrol.8;.Έλεγχος Επικοινωνίας του ΕκτυπωτήΠριν συνεχίσουμε να ρυθμίζουμε το σύστημα παροχέτευσης, θα
πρέπει να βεβαιωθείτε ότι το λειτουργικό σύστημα μπορεί να στείλει
επιτυχώς δεδομένα στον εκτυπωτή σας. Είναι ευκολότερο να κάνουμε
ξεχωριστά την αποσφαλμάτωση επικοινωνίας του εκτυπωτή και την
αποσφαλμάτωση του συστήματος παροχέτευσης.Θα ελέγξουμε τον εκτυπωτή στέλνοντας μερικά δεδομένα κειμένου.
Για εκείνους τους εκτυπωτές που μπορούν να εκτυπώνουν άμεσα
τους χαρακτήρες που έχουν αποσταλεί, το πρόγραμμα &man.lptest.1;
είναι τέλειο: Παράγει όλους τους εκτυπώσιμους χαρακτήρες (96)
ASCII σε 96 γραμμές.PostScriptΓια εκτυπωτές &postscript; (ή που βασίζονται σε άλλη γλώσσα),
θα χρειαστεί να κάνουμε ένα πιο πολύπλοκο τεστ. Ένα μικρό
πρόγραμμα &postscript;, όπως αυτό που ακολουθεί, επαρκεί:%!PS
100 100 moveto 300 300 lineto stroke
310 310 moveto /Helvetica findfont 12 scalefont setfont
(Is this thing working?) show
showpageΟ παραπάνω κώδικας &postscript; μπορεί να τοποθετηθεί σε ένα
αρχείο και να χρησιμοποιηθεί όπως υποδεικνύουν τα παραδείγματα
στις ακόλουθες ενότητες.PCLΌταν αυτό το έγγραφο αναφέρεται σε μια γλώσσα εκτυπωτή,
εννοείται μια γλώσσα όπως η &postscript;, αλλά όχι η PCL της
Hewlett Packard — η PCL είναι μια γλώσσα ευρείας
λειτουργικότητας η οποία επιτρέπει την ανάμιξη απλού κειμένου με
ακολουθίες διαφυγής. Η &postscript; δεν μπορεί να εκτυπώσει
άμεσα απλό κείμενο, και αυτός είναι ακριβώς ο τύπος της
γλώσσας εκτυπωτή που θα πρέπει να διευθετήσουμε
κατάλληλα.Έλεγχος Παράλληλου ΕκτυπωτήεκτυπωτέςπαράλληληΑυτή η ενότητα υποδεικνύει πως να ελέγξετε αν το &os; μπορεί
να επικοινωνήσει με έναν εκτυπωτή συνδεδεμένο σε παράλληλη
θύρα.Για να ελέγξετε έναν εκτυπωτή σε παράλληλη
θύρα:Γίνετε root με &man.su.1;.Στείλτε δεδομένα στον εκτυπωτή.Αν ο εκτυπωτής μπορεί να εκτυπώσει απλό κείμενο,
τότε χρησιμοποιήστε το &man.lptest.1;.
Πληκτρολογήστε:&prompt.root; lptest > /dev/lptNΌπου N είναι ο αριθμός
της παράλληλης θύρας, ξεκινώντας από το μηδέν.Εάν ο εκτυπωτής καταλαβαίνει &postscript; ή κάποια
άλλη γλώσσα εκτυπωτών, τότε στείλτε ένα μικρό πρόγραμμα
στον εκτυπωτή. Πληκτρολογήστε:&prompt.root; cat > /dev/lptNΈπειτα πληκτρολογήστε το πρόγραμμα μία προς μία
γραμμή, προσεκτικά, γιατί δεν
μπορείτε να επεξεργαστείτε μια γραμμή αφότου έχετε
πιέσει το πλήκτρο RETURN ή
ENTER. Αφού τελειώσετε με την
καταχώριση του προγράμματος, πιέστε
CONTROL+D, ή άλλο πλήκτρο
τερματισμού αρχείου.Εναλλακτικά, μπορείτε να τοποθετήσετε το πρόγραμμα
σε ένα αρχείο και να πληκτρολογήσετε:&prompt.root; cat file > /dev/lptNΌπου file είναι το
όνομα του αρχείου που περιέχει το πρόγραμμα που θέλετε
να στείλετε στον εκτυπωτή.Θα δείτε κάτι να εκτυπώνεται. Μην ανησυχείτε αν το κείμενο
δεν φαίνεται σωστό. Θα το διορθώσουμε αργότερα.Έλεγχος Σειριακού ΕκτυπωτήprintersserialΑυτή η ενότητα υποδεικνύει πως να ελέγξετε αν το &os; μπορεί
να επικοινωνήσει με έναν εκτυπωτή συνδεδεμένο σε σειριακή
θύρα.Για να ελέγξετε έναν εκτυπωτή σε σειριακή
θύρα:Γίνετε root με &man.su.1;.Επεξεργαστείτε το αρχείο
/etc/remote. Προσθέστε την ακόλουθη
καταχώριση:printer:dv=/dev/port:br#bps-rate:pa=paritybits-per-secondserial portparityΌπου port είναι η
καταχώριση συσκευής για την σειριακή πόρτα
(ttyd0, ttyd1, κτλ.),
bps-rate είναι η ταχύτητα
bits-per-second επικοινωνίας με τον εκτυπωτή, και
parity η ισοτιμία που
απαιτείται από τον εκτυπωτή (even,
odd, none, ή
zero).Παρακάτω φαίνεται ένα υπόδειγμα καταχώρισης, για έναν
εκτυπωτή συνδεδεμένο μέσω σειριακής γραμμής στην τρίτη
σειριακή θύρα με ταχύτητα 19200 bps και χωρίς
parity:printer:dv=/dev/ttyd2:br#19200:pa=noneΣυνδεθείτε στον εκτυπωτή με &man.tip.1;.
Πληκτρολογήστε:&prompt.root; tip printerΑν αυτό το στάδιο δεν δουλεύει, επεξεργαστείτε πάλι το
αρχείο /etc/remote και προσπαθήστε το
χρησιμοποιώντας
/dev/cuaaN
αντί για
/dev/ttydN.Στείλτε δεδομένα στον εκτυπωτή.Αν ο εκτυπωτής μπορεί να εκτυπώσει απλό κείμενο,
χρησιμοποιήστε &man.lptest.1;. Γράψτε:&prompt.user; $lptestΕάν ο εκτυπωτής καταλαβαίνει &postscript; ή κάποια
άλλη γλώσσα εκτυπωτών, τότε στείλτε ένα μικρό πρόγραμμα
στον εκτυπωτή. Πληκτρολογήστε το πρόγραμμα, μία προς μία
γραμμή, πολύ προσεκτικά, καθώς
ο εκτυπωτής μπορεί να ερμηνεύει διαφορετικά την χρήση
χαρακτήρων όπως το backspace ή άλλων που παράγονται από
διάφορα πλήκτρα επεξεργασίας. Μπορεί επίσης να
χρειαστεί να πληκτρολογήσετε κάποιο ειδικό πλήκτρο
τερματισμού αρχείου για τον εκτυπωτή ώστε να γνωρίζει
πότε ολοκληρώνεται το πρόγραμμα. Για εκτυπωτές
&postscript;, πιέστε
CONTROL+D.Εναλλακτικά, μπορείτε να τοποθετήσετε το πρόγραμμα
σε ένα αρχείο και να πληκτρολογήσετε:&prompt.user; >fileΌπου file είναι το
όνομα του αρχείου που περιέχει το πρόγραμμα. Αφού το
&man.tip.1; στείλει το αρχείο, πιέστε το κατάλληλο
πλήκτρο τερματισμού αρχείου, αν απαιτείται.Θα δείτε κάτι να εκτυπώνεται. Μην ανησυχείτε αν το
κείμενο δεν φαίνεται σωστό. Θα το διορθώσουμε αργότερα.Ενεργοποίηση του Spooler: το Αρχείο
/etc/printcapΣε αυτό το σημείο, ο εκτυπωτής σας θα πρέπει να είναι
συνδεμένος, ο πυρήνας σας ρυθμισμένος να επικοινωνεί μαζί του
(αν χρειάζεται), και έχετε πετύχει να στείλετε κάποια δοκιμαστικά
δεδομένα στον εκτυπωτή. Είστε τώρα έτοιμοι να ρυθμίσετε το
LPD για να ελέγχετε την πρόσβαση
στον εκτυπωτή σας.Μπορείτε να ρυθμίσετε το LPD
με επεξεργασία του αρχείου /etc/printcap.
Το σύστημα παροχέτευσης LPD
διαβάζει αυτό το αρχείο κάθε φορά που χρησιμοποιείται ο spooler,
επομένως πιθανές αναβαθμίσεις του μπαίνουν άμεσα σε εφαρμογή.εκτυπωτέςικανότητεςΕίναι εύκολο να κατανοήσετε την μορφή του αρχείου
&man.printcap.5;. Χρησιμοποιήστε τον κειμενογράφο που προτιμάτε
για να κάνετε αλλαγές στο /etc/printcap. Η
μορφή του είναι παρόμοια με άλλα αρχεία περιγραφής δυνατοτήτων,
όπως τα /usr/share/misc/termcap και
/etc/remote. Δείτε την &man.cgetent.3;
για λεπτομερείς πληροφορίες σχετικά με την μορφή του αρχείου.Η πιο απλή ρύθμιση του spooler αποτελείται από τα ακόλουθα
βήματα:Επιλέξτε ένα όνομα (και λίγα βολικά παρωνύμια) για τον
εκτυπωτή, και τοποθετήστε τα στο αρχείο
/etc/printcap.
Δείτε την ενότητα Ονοματοδότηση Εκτυπωτή για
περισσότερες πληροφορίες σχετικά με την ονομασία των
εκτυπωτών.σελίδες κεφαλίδαςΑπενεργοποιήστε τις σελίδες κεφαλίδας (είναι ενεργές από
προεπιλογή) εισάγοντας την ικανότητα sh.
Για περισσότερες πληροφορίες δείτε την ενότητα Παρεμπόδιση Σελίδων
Κεφαλίδας.Δημιουργήστε ένα κατάλογο παροχέτευσης, και καθορίστε την
τοποθεσία του με την ικανότητα sd. Για
περισσότερες πληροφορίες δείτε την ενότητα Δημιουργία Καταλόγου
Παροχέτευσης.Καθορίστε την κατάλληλη καταχώριση
/dev
για τον εκτυπωτή, και σημειώστε τη στο
/etc/printcap με την ικανότητα
lp. Για περισσότερες πληροφορίες, δείτε την
ενότητα Αναγνώριση της Συσκευής
Εκτύπωσης. Επίσης, αν ο εκτυπωτής είναι σε σειριακή
θύρα, εγκαταστήστε τις παραμέτρους επικοινωνίας με την ικανότητα
ms# η οποία αναλύεται στην ενότητα Ρυθμίσεις Παραμέτρων Επικοινωνίας
του Spooler.Εγκαταστήστε φίλτρα εισόδου απλού κειμένου. Δείτε την
ενότητα Εγκατάσταση Φίλτρου
Κειμένου για περισσότερες πληροφορίες.Ελέγξτε την εγκατάσταση εκτυπώνοντας οτιδήποτε με την
εντολή &man.lpr.1;. Περισσότερες πληροφορίες είναι διαθέσιμες
στις ενότητες Δοκιμή του
Spooler και Εντοπισμός Βλαβών.Εκτυπωτές που βασίζονται σε γλώσσες εκτύπωσης, όπως οι
εκτυπωτές &postscript;, δεν μπορούν να εκτυπώσουν άμεσα απλό
κείμενο. Ο απλός τρόπος ρύθμισης που δείξαμε παραπάνω και
που θα περιγράψουμε εκτενέστερα στις επόμενες ενότητες,
προϋποθέτει πως αν ρυθμίζετε έναν τέτοιο εκτυπωτή θα μπορείτε να
εκτυπώσετε μόνον αρχεία γραμμένα στη γλώσσα του.Οι χρήστες συνήθως νομίζουν πως μπορούν να εκτυπώσουν απλό
κείμενο σε όλους τους εκτυπωτές που είναι εγκατεστημένοι στο
σύστημα τους. Τα προγράμματα που χρησιμοποιούν το
LPD για να εκτυπώσουν, κάνουν ακριβώς
την ίδια υπόθεση. Αν προσπαθείτε να εγκαταστήσετε έναν τέτοιο
εκτυπωτή και θέλετε να μπορείτε να τυπώνετε εργασίες στην γλώσσα
του εκτυπωτή αλλά και σε απλό κείμενο, σας
συνιστούμε να προσθέσετε ένα επιπλέον βήμα στην διαδικασία
εγκατάστασης που περιγράψαμε παραπάνω: Εγκαταστήστε ένα πρόγραμμα
αυτόματης μετατροπής από απλό κείμενο σε PostScript (ή σε άλλη
γλώσσα εκτυπωτή). Η ενότητα Συμβατότητα Εργασιών
Απλού Κειμένου σε εκτυπωτές &postscript; εξηγεί πως να
ενεργήσετε.Ονοματοδότηση ΕκτυπωτήΤο πρώτο (εύκολο) βήμα είναι να επιλέξετε όνομα για τον
εκτυπωτή σας. Δεν έχει σημασία αν θα προτιμήσετε ένα λειτουργικό
ή κάποιο εξωτικό όνομα αφού μπορείτε επίσης να προσθέσετε και
μερικά παρωνύμια (aliases) για τον ίδιο εκτυπωτή.Τουλάχιστον ένας από τους εκτυπωτές που αναφέρονται στο
/etc/printcap θα πρέπει να έχει το
παρωνύμιο lp. Αυτή είναι η ονομασία του
προεπιλεγμένου εκτυπωτή. Εάν οι χρήστες δεν έχουν την μεταβλητή
περιβάλλοντος PRINTER και δεν αναφέρουν κάποιο
όνομα εκτυπωτή στην γραμμή εντολών με οποιαδήποτε εντολή
LPD, τότε ο lp θα
είναι ο προεπιλεγμένος εκτυπωτής για τις εκτυπώσεις τους.Επίσης, είναι κοινή πρακτική το τελευταίο alias του εκτυπωτή
να είναι μια πλήρης περιγραφή του εκτυπωτή, που να περιλαμβάνει
τον κατασκευαστή και το μοντέλο.Αφού επιλέξετε μια ονομασία και μερικά συνήθη παρωνύμια,
καταχωρίστε τα στο αρχείο /etc/printcap.
Το όνομα του εκτυπωτή θα πρέπει να αναφέρεται πρώτο στο αριστερό
άκρο. Διαχωρίστε κάθε παρωνύμιο με μια κάθετη μπάρα και
τοποθετήστε μια άνω-κάτω τελεία μετά το τελευταίο
παρωνύμιο.Στο ακόλουθο παράδειγμα, ξεκινάμε με ένα εντελώς βασικό
/etc/printcap που ορίζει δύο εκτυπωτές (έναν
εκτυπωτή γραμμής Diablo 630 και έναν εκτυπωτή &postscript; laser
Panasonic KX-P4455):#
# /etc/printcap for host rose
#
rattan|line|diablo|lp|Diablo 630 Line Printer:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:Σε αυτό το παράδειγμα, ο πρώτος εκτυπωτής ονομάζεται
rattan και έχει ως παρωνύμια τα
line, diablo,
lp, και Diablo 630 Line
Printer. Από τη στιγμή που έχει το παρωνύμιο
lp, είναι και ο προεπιλεγμένος εκτυπωτής. Ο
δεύτερος ονομάζεται bamboo, και έχει ως
παρωνύμια τα ps, PS,
S, panasonic, και
Panasonic KX-P4455 PostScript v51.4.Παρεμπόδιση Σελίδων Κεφαλίδαςprintingheader pagesΤο σύστημα παροχέτευσης LPD, από
προεπιλογή, εκτυπώνει μια σελίδα κεφαλίδας
για κάθε εργασία. Η σελίδα κεφαλίδας περιλαμβάνει το όνομα
χρήστη που αιτήθηκε την εργασία, τον υπολογιστή από τον οποίον
προήλθε η εργασία, και το όνομα της εργασίας, με μεγάλους όμορφους
χαρακτήρες. Δυστυχώς αυτό το πρόσθετο κείμενο ακολουθεί την
διαδικασία αποσφαλμάτωσης της εγκατάστασης ενός απλού εκτυπωτή,
επομένως θα παρεμποδίσουμε τις σελίδες κεφαλίδας.Για την παρεμπόδιση των σελίδων κεφαλίδας, προσθέστε την
ικανότητα sh στην καταχώριση για τον εκτυπωτή
στο αρχείο /etc/printcap. Εδώ βλέπετε ένα
παράδειγμα του /etc/printcap με προσθήκη της
sh:#
# /etc/printcap for host rose - no header pages anywhere
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:Παρατηρήστε πως χειριστήκαμε σωστά τη μορφή: η πρώτη
γραμμή ξεκινά στην αριστερή στήλη, και οι ακόλουθες γραμμές
είναι στοιχισμένες (indented). Κάθε γραμμή καταχώρισης (εκτός
από την τελευταία) τελειώνει με μια αριστερόστροφη κάθετο.Δημιουργία Καταλόγου Παροχέτευσηςεκτυπωτής spoolεκτύπωση εργασίεςΤο επόμενο βήμα στον απλό τρόπο εγκατάστασης είναι η
δημιουργία ενός
καταλόγου παροχέτευσης (spool),
όπου θα φιλοξενούνται οι εργασίες εκτύπωσης έως ότου
να εκτυπωθούν και όπου επίσης φυλάσσονται και κάποια άλλα
βοηθητικά αρχεία του συστήματος εκτύπωσης.Λόγω της μεταβαλλόμενης φύσης των καταλόγων παροχέτευσης,
συνηθίζεται να τοποθετούνται κάτω από τον κατάλογο
/var/spool. Δεν είναι
αναγκαίο να παίρνετε αντίγραφα ασφαλείας των καταλόγων
παροχέτευσης. Η επαναδημιουργία τους είναι τόσο απλή όσο να
τρέξουμε την εντολή &man.mkdir.1;.Είναι επίσης συνηθισμένο να ονομάζεται ο κατάλογος με το ίδιο
όνομα με τον εκτυπωτή, όπως φαίνεται παρακάτω:&prompt.root; mkdir /var/spool/printer-nameΩστόσο, αν έχετε αρκετούς εκτυπωτές στο δίκτυο, ίσως
επιθυμείτε να τοποθετήσετε τους καταλόγους παροχέτευσης κάτω από
ένα μοναδικό κατάλογο που θα χρησιμοποιείται αποκλειστικά για
εκτυπώσεις με το LPD. Θα κάνουμε
ακριβώς αυτό για τα παραδείγματα μας με τους εκτυπωτές
rattan και bamboo:&prompt.root; mkdir /var/spool/lpd
&prompt.root; mkdir /var/spool/lpd/rattan
&prompt.root; mkdir /var/spool/lpd/bambooΕάν οι εργασίες των χρηστών περιέχουν προσωπικά δεδομένα,
μπορεί να θέλετε να προστατέψετε τον κατάλογο παροχέτευσης με
κάποιο τρόπο, ώστε να μην είναι δημόσια προσβάσιμος. Οι
κατάλογοι παροχέτευσης θα πρέπει να ανήκουν και να είναι
αναγνώσιμοι, εγγράψιμοι και με δυνατότητα αναζήτησης από τον
χρήστη daemon και από την ομάδα daemon, από κανέναν άλλο. Για
τους εκτυπωτές του παραδείγματος:&prompt.root; chown daemon:daemon /var/spool/lpd/rattan
&prompt.root; chown daemon:daemon /var/spool/lpd/bamboo
&prompt.root; chmod 770 /var/spool/lpd/rattan
&prompt.root; chmod 770 /var/spool/lpd/bambooΤέλος, πρέπει να ενημερώσετε το LPD
για αυτούς τους καταλόγους χρησιμοποιώντας το αρχείο
/etc/printcap. Προσδιορίστε την διαδρομή
του καταλόγου παροχέτευσης με την ικανότητα
sd:#
# /etc/printcap for host rose - added spooling directories
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:Σημειώστε πως το όνομα του εκτυπωτή ξεκινά στην πρώτη στήλη,
ενώ όλες οι άλλες καταχωρίσεις που περιγράφουν τον εκτυπωτή θα
πρέπει να είναι στοιχισμένες και κάθε τέλος γραμμής να φέρει
χαρακτήρα διαφυγής με αριστερόστροφη κάθετο.Εάν δεν προσδιορίσετε τον κατάλογο παροχέτευσης μέσω του
sd, τότε το σύστημα παροχέτευσης θα
χρησιμοποιήσει τον προεπιλεγμένο
/var/spool/lpd.Αναγνώριση της Συσκευής ΕκτύπωσηςΣτην ενότητα Ρυθμίσεις
Hardware αναγνωρίσαμε τη θύρα, και κατά συνέπεια την
καταχώριση του καταλόγου
/dev που θα
χρησιμοποιήσει το &os; για να επικοινωνήσει με τον εκτυπωτή.
Τώρα, θα δώσουμε στο LPD αυτή
την πληροφορία. Όταν το σύστημα παροχέτευσης έχει μια εργασία να
εκτυπώσει, θα ανοίξει αυτή την ειδική συσκευή για λογαριασμό του
προγράμματος φίλτρου (που είναι υπεύθυνο για το πέρασμα των
δεδομένων στον εκτυπωτή).Προσδιορίστε την διαδρομή της καταχώρισης
/dev στο αρχείο
/etc/printcap χρησιμοποιώντας την ικανότητα
lp.Στο τρέχον παράδειγμα μας, ας υποθέσουμε ότι ο
rattan είναι στην πρώτη παράλληλη θύρα, και ο
bamboo είναι στην έκτη σειριακή πόρτα. Οι νέες
καταχωρίσεις στο /etc/printcap θα
είναι:#
# /etc/printcap for host rose - identified what devices to use
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:\
:lp=/dev/ttyd5:Αν δεν καθορίσετε σε κάποιον εκτυπωτή την ικανότητα
lp στο αρχείο
/etc/printcap, το
LPD χρησιμοποιεί από προεπιλογή
το /dev/lp.
Το /dev/lp
δεν υπάρχει την δεδομένη στιγμή στο &os;.Εάν ο εκτυπωτής που εγκαθιστάτε είναι συνδεδεμένος σε
παράλληλη θύρα, διαβάστε απευθείας την ενότητα με τίτλο
Εγκατάσταση Φίλτρου
Κειμένου. Διαφορετικά, ακολουθήστε προσεκτικά τις
οδηγίες που ακολουθούν στην επόμενη ενότητα.Ρυθμίσεις Παραμέτρων Επικοινωνίας του SpoolerεκτυπωτέςσειριακοίΓια εκτυπωτές σε σειριακή πόρτα, το
LPD μπορεί να ρυθμίσει την
ταχύτητα σε bps, το parity, και άλλες παραμέτρους σειριακής
επικοινωνίας για λογαριασμό του προγράμματος φίλτρου που στέλνει
δεδομένα στον εκτυπωτή. Αυτό είναι πλεονέκτημα γιατί:Σας επιτρέπει να δοκιμάσετε διάφορες παραμέτρους
επικοινωνίας προσθέτοντας τις απλά με επεξεργασία του αρχείου
/etc/printcap. Δεν χρειάζεται να
επαναμεταγλωττίσετε το πρόγραμμα φίλτρου.Επιτρέπει στο σύστημα παροχέτευσης να χρησιμοποιεί το
ίδιο πρόγραμμα για πολλαπλούς εκτυπωτές, οι οποίοι μπορεί να
έχουν διαφορετικές σειριακές ρυθμίσεις επικοινωνίας.Οι ακόλουθες ικανότητες του
/etc/printcap ελέγχουν τις παραμέτρους
σειριακής επικοινωνίας των συσκευών που αναφέρονται στην
ικανότητα lp:br#bps-rateΟρίζει την ταχύτητα επικοινωνίας της συσκευής σε
bps-rate, όπου το
bps-rate μπορεί να είναι 50,
75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800,
9600, 19200, 38400, 57600, ή 115200 bits-per-second.ms#stty-modeΟρίζει τις επιλογές της συσκευής τερματικού μετά το
άνοιγμα της συσκευής. Η &man.stty.1; εξηγεί τις διαθέσιμες
επιλογές.Όταν το LPD ανοίγει την συσκευή
που ορίζεται από την ικανότητα lp, υιοθετεί τα
χαρακτηριστικά της συσκευής με ικανότητα ms#.
Έχουν ιδιαίτερο ενδιαφέρον οι καταστάσεις λειτουργίας
parenb, parodd,
cs5, cs6,
cs7, cs8,
cstopb, crtscts, και
ixon, που εξηγούνται στην σελίδα βοηθείας
&man.stty.1;.Ας προσθέσουμε στο παράδειγμα μας έναν εκτυπωτή στην έκτη
σειριακή θύρα. Θα θέσουμε την ταχύτητα bps σε 38400. Για την
κατάσταση λειτουργίας θα θέσουμε , no parity με
-parenb, χαρακτήρες 8-bit με
cs8, no modem control με
clocal και έλεγχο ροής μέσω hardware με
crtscts:bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:Εγκατάσταση Φίλτρου ΚειμένουεκτύπωσηφίλτραΤώρα είμαστε έτοιμοι να πούμε στο
LPD ποιο φίλτρο κειμένου να
χρησιμοποιήσει για να στείλει εργασίες στον εκτυπωτή. Το φίλτρο
κειμένου, γνωστό και ως φίλτρο εισόδου,
είναι ένα πρόγραμμα που εκτελεί το LPD
όταν υπάρχει εργασία προς εκτύπωση. Όταν το
LPD εκτελεί το φίλτρο κειμένου για
κάποιον εκτυπωτή, θέτει την standard input του φίλτρου στην
εργασία εκτύπωσης, και την standard output στην συσκευή του
εκτυπωτή που ορίζεται με την ικανότητα lp.
Το φίλτρο αναμένεται να αναγνώσει την εργασία από την standard
input, να εκτελέσει όλες τις απαραίτητες μεταγλωττίσεις για τον
εκτυπωτή, και να γράψει το αποτέλεσμα στην standard output, το
οποίο και θα εκτυπωθεί. Για περισσότερες πληροφορίες για τα
φίλτρα κειμένου, δείτε την ενότητα
Φίλτρα.Για την απλή εγκατάσταση των εκτυπωτών μας, το φίλτρο κειμένου
μπορεί να είναι ένα μικρό shell script που απλά θα εκτελεί την
εντολή /bin/cat για να στέλνει εργασίες στον
εκτυπωτή. Το &os; έρχεται με άλλο ένα φίλτρο, το
lpf που χειρίζεται δυνατότητες backspacing
και υπογράμμισης για εκτυπωτές που ίσως να μην χειρίζονται σωστά
αυτές τις λειτουργίες. Και φυσικά, μπορείτε να χρησιμοποιήσετε
οποιοδήποτε άλλο πρόγραμμα φίλτρου επιθυμείτε. Το φίλτρο
lpf περιγράφεται λεπτομερώς στην ενότητα
lpf: ένα Φίλτρο Κειμένου.Θα ξεκινήσουμε δημιουργώντας το shell script
/usr/local/libexec/if-simple σαν ένα απλό
φίλτρο κειμένου. Τοποθετήστε το ακόλουθο κείμενο στο αρχείο
χρησιμοποιώντας τον κειμενογράφο που προτιμάτε:#!/bin/sh
#
# if-simple - Simple text input filter for lpd
# Installed in /usr/local/libexec/if-simple
#
# Simply copies stdin to stdout. Ignores all filter arguments.
/bin/cat && exit 0
exit 2Κάντε το αρχείο εκτελέσιμο:&prompt.root; chmod 555 /usr/local/libexec/if-simpleΚαι ενημερώστε το LPD να το χρησιμοποιήσει, ορίζοντας το με
την ικανότητα if στο αρχείο
/etc/printcap. Θα το προσθέσουμε στους δύο
εκτυπωτές από το προηγούμενο παράδειγμα στο
/etc/printcap:#
# /etc/printcap for host rose - added text filter
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:\
:if=/usr/local/libexec/if-simple:Μπορείτε να βρείτε ένα αντίγραφο του script
if-simple στον κατάλογο
/usr/share/examples/printing.Ενεργοποίηση του LPDΤο &man.lpd.8; εκτελείται από το
/etc/rc, και ελέγχεται από την μεταβλητή
lpd_enable. Η μεταβλητή αυτή έχει
προεπιλεγμένη τιμή NO. Αν δεν το έχετε κάνει
ακόμα, προσθέστε την ακόλουθη γραμμή:lpd_enable="YES"στο αρχείο /etc/rc.conf, και
επανεκκινήστε το σύστημα σας, ή απλά εκτελέστε το
&man.lpd.8;.&prompt.root; lpdΔοκιμή του SpoolerΦτάσατε στο τέλος της απλής εγκατάστασης του
LPD. Θα αφήσουμε για αργότερα τα
συγχαρητήρια, αφού ακόμη θα πρέπει να ελέγξουμε την εγκατάσταση
και να διορθώσουμε οποιοδήποτε πρόβλημα έχει προκύψει. Για να
ελέγξετε την εγκατάσταση προσπαθήστε να εκτυπώσετε κάτι. Για να
εκτυπώσετε με το σύστημα LPD,
χρησιμοποιήστε την εντολή &man.lpr.1;, η οποία αποστέλλει μία
εργασία προς εκτύπωση.Μπορείτε να συνδυάσετε την &man.lpr.1; με το πρόγραμμα
&man.lptest.1;, για το οποίο κάναμε μια εισαγωγή στην ενότητα
Έλεγχος Επικοινωνίας του
Εκτυπωτή, για τον έλεγχο κειμένου.Για τον έλεγχο μιας απλής εγκατάστασης
LPD:Πληκτρολογήστε:&prompt.root; lptest 20 5 | lpr printer-nameΌπου printer-name είναι το όνομα
ενός εκτυπωτή (ή το alias) που αναφέρεται στο
/etc/printcap. Για να ελέγξετε τον
προεπιλεγμένο εκτυπωτή, πληκτρολογήστε &man.lpr.1; χωρίς το
πρόθεμα . Αν ο εκτυπωτής σας χρησιμοποιεί
&postscript;, πρέπει να στείλετε ένα πρόγραμμα &postscript;,
αντί να χρησιμοποιήσετε το &man.lptest.1;. Για να τα καταφέρετε,
τοποθετήστε το πρόγραμμα σε ένα αρχείο και πληκτρολογήστε
lpr file.Σε έναν εκτυπωτή &postscript;, η εκτύπωση θα είναι το
αποτέλεσμα του προγράμματος που στείλατε. Αν χρησιμοποιείτε το
&man.lptest.1;, τότε το αποτέλεσμα θα μοιάζει με το
ακόλουθο:!"#$%&'()*+,-./01234
"#$%&'()*+,-./012345
#$%&'()*+,-./0123456
$%&'()*+,-./01234567
%&'()*+,-./012345678Για περαιτέρω έλεγχο του εκτυπωτή, δοκιμάστε να κατεβάσετε
μεγαλύτερα προγράμματα (για εκτυπωτές που χρησιμοποιούν γλώσσα
προγραμματισμού) ή τρέξτε το &man.lptest.1; με διαφορετικά
προθέματα. Για παράδειγμα, η εντολή
lptest 80 60 θα παράγει 60 γραμμές των 80
χαρακτήρων η καθεμία.Αν ο εκτυπωτής δεν δουλεύει, δείτε την ενότητα Εντοπισμός Βλαβών.Ρυθμίσεις Εκτυπωτών για ΠροχωρημένουςΑυτή η ενότητα περιγράφει φίλτρα για την εκτύπωση ειδικής μορφής
αρχείων, σελίδων κεφαλίδας, για εκτυπώσεις μέσω δικτύου, καθώς και για
τον έλεγχο πρόσβασης και την καταμέτρηση χρήσης των εκτυπωτών.ΦίλτραεκτύπωσηφίλτραΑν και το LPD μπορεί να χειριστεί
πρωτόκολλα δικτύων, λίστες αναμονής, έλεγχο πρόσβασης, και άλλες
παραμέτρους των εκτυπώσεων, το κύριο μέρος της
πραγματικής εργασίας γίνεται με τα
φίλτρα. Τα φίλτρα είναι προγράμματα που
επικοινωνούν με τον εκτυπωτή και χειρίζονται τις εξαρτήσεις της
συσκευής και άλλες ειδικές απαιτήσεις της. Στην απλή εγκατάσταση
εκτυπωτή, εγκαταστήσαμε ένα φίλτρο απλού κειμένου ιδιαίτερα
απλής μορφής, που θα πρέπει να δουλεύει με τους περισσότερους
εκτυπωτές (ενότητα Εγκατάσταση Φίλτρου Κειμένου).Ωστόσο, για να μπορέσετε να εκμεταλλευτείτε τις δυνατότητες
μετατροπών μορφής, ελέγχου πρόσβασης και καταμέτρησης, και τυχόν
ειδικές δυνατότητες του εκτυπωτή σας, θα πρέπει να καταλάβετε πως
δουλεύουν τα φίλτρα. Σε τελική ανάλυση, θα είναι ευθύνη των φίλτρων
να χειρίζονται όλες αυτές τις παραμέτρους. Τα κακά νέα είναι πως τις
περισσότερες φορές θα πρέπει να παρέχετε
εσείς οι ίδιοι τα φίλτρα σας. Τα καλά νέα είναι
πως γενικώς υπάρχουν αρκετά διαθέσιμα, και αν δεν υπάρχουν, είναι
σχετικά εύκολο να τα γράψετε.Επίσης, το &os; διατίθεται με ένα φίλτρο, το
/usr/libexec/lpr/lpf, που δουλεύει με πολλούς
εκτυπωτές που μπορούν να εκτυπώσουν απλό κείμενο. (Χειρίζεται
backspacing και tabs στο αρχείο, και κάνει καταμέτρηση, αλλά
τίποτα περισσότερο.) Υπάρχουν, επίσης, διάφορα άλλα φίλτρα και
συστατικά τους στην Συλλογή των Ports του &os;.Σε αυτή την ενότητα θα βρείτε: :Η ενότητα Πως
δουλεύουν τα Φίλτρα, προσπαθεί να δώσει μια γενική άποψη
για τις αρμοδιότητες των φίλτρων στις διεργασίες εκτύπωσης. Θα
πρέπει να διαβάσετε αυτή την ενότητα για να μπορείτε να καταλάβετε
τι πραγματικά συμβαίνει όταν το
LPD χρησιμοποιεί φίλτρα. Αυτές οι
γνώσεις θα σας βοηθήσουν να προλαμβάνετε και να αποσφαλματώνετε
προβλήματα που μπορούν να συμβούν καθώς εγκαθιστάτε όλο και
περισσότερα φίλτρα σε κάθε εκτυπωτή σας.Το LPD αναμένει πως κάθε
εκτυπωτής είναι ικανός, από προεπιλογή, να εκτυπώσει απλό
κείμενο. Αυτό όμως είναι πρόβλημα για εκτυπωτές &postscript;
(ή άλλους που βασίζονται σε γλώσσες προγραμματισμού) οι οποίοι
δεν μπορούν να εκτυπώσουν άμεσα απλό κείμενο. Η ενότητα Συμβατότητα Εργασιών
Απλού Κειμένου σε εκτυπωτές &postscript; σας εξηγεί τι θα
πρέπει να κάνετε για να ξεπεράσετε αυτό το πρόβλημα. Θα πρέπει
να διαβάσετε αυτή την ενότητα αν έχετε εκτυπωτή
&postscript;.Το &postscript; είναι δημοφιλής μορφή εξόδου για πολλά
προγράμματα. Μερικοί άνθρωποι προτιμούν και να γράφουν κατευθείαν
σε κώδικα &postscript;. Δυστυχώς, οι εκτυπωτές &postscript;
έχουν μεγάλο κόστος. Η ενότητα Προσομοίωση &postscript; για
εκτυπωτές που δεν το υποστηρίζουν εξηγεί λεπτομερώς πως
να μετατρέψετε ένα φίλτρο κειμένου για εκτυπωτές ώστε να λαμβάνει
και να τυπώνει δεδομένα &postscript; σε εκτυπωτές που
δεν είναι &postscript;. Θα πρέπει να
διαβάσετε αυτήν την ενότητα αν είστε κάτοχος εκτυπωτή που δεν
υποστηρίζει &postscript;.Η ενότητα Φίλτρα Μετατροπής
περιγράφει μια αυτοματοποιημένη διαδικασία για την μετατροπή
αρχείων ειδικής μορφής, όπως δεδομένα γραφικών ή στοιχειοθεσίας,
σε μια μορφή κατανοητή από τον εκτυπωτή σας. Μετά την ανάγνωση
αυτής της ενότητας, θα πρέπει να είστε σε θέση να ρυθμίσετε τους
εκτυπωτές σας με τέτοιο τρόπο ώστε πληκτρολογώντας
lpr οι χρήστες σας να
μπορούν να εκτυπώσουν δεδομένα troff, ή με
lpr δεδομένα &tex;
DVI, ή με lpr να
εκτυπώνουν εικόνες δεδομένων ράστερ, και ούτω καθεξής. Σας
συμβουλεύουμε να διαβάσετε αυτή την ενότητα.Η ενότητα Φίλτρα
Εξόδου περιγράφει ένα χαρακτηριστικό του
LPD που δεν χρησιμοποιείται συχνά: τα
φίλτρα εξόδου. Μπορείτε να προσπεράσετε αυτή την ενότητα, εκτός
αν τυπώνετε σελίδες κεφαλίδας (δείτε τις Σελίδες Κεφαλίδας).Η ενότητα lpf: ένα
Φίλτρο Κειμένου περιγράφει το lpf, ένα
πραγματικά πλήρες, αν και απλό, φίλτρο κειμένου για εκτυπωτές
γραμμής (και εκτυπωτές laser που μπορούν να λειτουργήσουν και ως
εκτυπωτές γραμμής) που περιέχεται στο &os;. Αν χρειάζεστε ένα
γρήγορο τρόπο για να κάνετε την καταμέτρηση σελίδων να δουλεύει
σε απλό κείμενο, ή αν έχετε κάποιον εκτυπωτή που βγάζει καπνούς
όταν βλέπει χαρακτήρες backspace, θα πρέπει οπωσδήποτε να
εξετάσετε την περίπτωση του lpf.Μπορείτε να βρείτε αντίγραφο των διάφορων scripts που
αναφέρονται παρακάτω, στον κατάλογο /usr/share/examples/printing.Πως Δουλεύουν τα ΦίλτραΌπως αναφέραμε προηγουμένως, φίλτρο είναι ένα εκτελέσιμο
πρόγραμμα που ενεργοποιείται από το LPD
για να χειρίζεται το τμήμα της επικοινωνίας με τον εκτυπωτή που
εξαρτάται από τον τύπο της ίδιας της συσκευής.Όταν το LPD θέλει να εκτυπώσει ένα
αρχείο μιας εργασίας, ξεκινά το πρόγραμμα του φίλτρου. Θέτει ως
standard input του φίλτρου το αρχείο που πρέπει να εκτυπωθεί, ως
standard output τον ίδιο τον εκτυπωτή και ως standard error το
αρχείο αναφοράς σφαλμάτων (αναφέρεται στην ικανότητα
lf του /etc/printcap, ή από
προεπιλογή το /dev/console).troffΤο φίλτρο που θα ξεκινήσει το LPD
καθώς και οι παράμετροι του φίλτρου, εξαρτώνται από το τι έχετε
δηλώσει στο αρχείο /etc/printcap και από το τι
παραμέτρους έχει καθορίσει ο ίδιος ο χρήστης για την εργασία με
την γραμμή εντολής &man.lpr.1;. Για παράδειγμα, αν ο χρήστης
πληκτρολογήσει lpr , το
LPD θα ξεκινήσει το φίλτρο troff, που
υποδηλώνεται με την ικανότητα tf για τον
εκτυπωτή προορισμού. Αν ο χρήστης επιθυμεί να εκτυπώσει απλό
κείμενο, θα ξεκινήσει το φίλτρο if
(αυτό πράγματι ισχύει τις περισσότερες φορές: δείτε τα Φίλτρα Εξόδου για
λεπτομέρειες).Υπάρχουν τρεις τύποι φίλτρων που μπορείτε να προσδιορίσετε στο
/etc/printcap:Το φίλτρο κειμένου, επονομαζόμενο και
ως φίλτρο εισόδου στην τεκμηρίωση του
LPD, χειρίζεται εκτυπώσεις κανονικού
κειμένου. Θεωρήστε το ως το προεπιλεγμένο φίλτρο. Το
LPD αναμένει πως όλοι οι εκτυπωτές,
από προεπιλογή, είναι σε θέση να εκτυπώσουν απλό κείμενο, και
είναι δουλειά του φίλτρου κειμένου να βεβαιωθεί ότι τα
backspaces, τα tabs, και όλοι οι άλλοι ειδικοί χαρακτήρες
δεν πρόκειται να προβληματίσουν τον εκτυπωτή. Εάν βρίσκεστε σε
ένα περιβάλλον όπου θα πρέπει να καταμετρήσετε την χρήση των
εκτυπωτών, το φίλτρο κειμένου θα πρέπει επίσης να καταμετρήσει
τις εκτυπωμένες σελίδες, συνήθως μετρώντας τον αριθμό των
εκτυπωμένων γραμμών και συγκρίνοντας τον με τον αριθμό των
γραμμών που υποστηρίζει ο εκτυπωτής ανά σελίδα. Το φίλτρο
κειμένου ξεκινά με την ακόλουθη λίστα παραμέτρων:
filter-name-c-wwidth-llength-iindent-n login-h hostacct-file
όπου
εμφανίζεται αν η εργασία έχει αποσταλεί με
lpr widthείναι η τιμή από την ικανότητα pw
(πλάτος σελίδας - page width) όπως προσδιορίζεται στο
/etc/printcap, με προεπιλεγμένη
τιμή το 132lengthείναι η τιμή από την ικανότητα pl
(μήκος σελίδας - page length), με προεπιλεγμένη τιμή
το 66indentείναι το μέγεθος της εσοχής (indentation) από το
lpr , με
προεπιλεγμένη τιμή 0loginείναι το καταγεγραμμένο όνομα χρήστη που εκτυπώνει
το αρχείοhostείναι το όνομα του υπολογιστή από τον οποίο
στάλθηκε η εργασίαacct-fileείναι το όνομα του αρχείου καταμέτρησης από την
ικανότητα af.εκτυπώσειςφίλτραΈνα φίλτρο μετατροπής μετατρέπει ένα
αρχείο ειδικής μορφής σε ένα τύπο αρχείου κατάλληλο για εκτύπωση
από τον συγκεκριμένο εκτυπωτή. Για παράδειγμα, τα δεδομένα
στοιχειοθεσίας ditroff δεν μπορούν να εκτυπωθούν κατευθείαν,
αλλά μπορείτε να εγκαταστήσετε ένα φίλτρο μετατροπής αρχείων
ditroff, ώστε να μετατρέψετε τα δεδομένα ditroff σε μια
μορφή που ο εκτυπωτής να μπορεί να αφομοιώσει και να τυπώσει.
Θα μάθετε περισσότερα στην ενότητα Φϊλτρα Μετατροπής.
Τα φίλτρα μετατροπής επίσης χρειάζονται για να κάνετε
αρίθμηση/καταμέτρηση, αν χρειάζεστε καταμέτρηση των εκτυπώσεων
σας. Τα φίλτρα μετατροπής ξεκινούν με τις ακόλουθες
παραμέτρους:
filter-name-xpixel-width-ypixel-height-n login-h hostacct-file
όπου pixel-width είναι η τιμή από την
ικανότητα px (προεπιλεγμένη τιμή 0) και
pixel-height είναι η τιμή από την
ικανότητα py (προεπιλεγμένη τιμή 0).Το φίλτρο εξόδου χρησιμοποιείται μόνον
αν δεν υπάρχει φίλτρο κειμένου, ή αν είναι ενεργοποιημένες οι
σελίδες κεφαλίδας. Διαβάστε τη σχετική ενότητα Φίλτρα Εξόδου, αν και
από την εμπειρία μας μπορούμε να σας πούμε ότι χρησιμοποιούνται
σπάνια. Υπάρχουν μόνο δύο παράμετροι για τα φίλτρα εξόδου:
filter-name-wwidth-llength
οι οποίες είναι πανομοιότυπες με τις παραμέτρους
και των φίλτρων
κειμένου.Τα φίλτρα θα πρέπει επίσης να τερματίζουν
με κάποια από τις ακόλουθες καταστάσεις εξόδου:exit 0Αν το φίλτρο τύπωσε επιτυχώς το αρχείο.exit 1Αν το φίλτρο απέτυχε να τυπώσει το αρχείο, αλλά θέλει το
LPD να προσπαθήσει να εκτυπώσει
το αρχείο ξανά. Το LPD θα
ξεκινήσει ξανά το φίλτρο αν γίνει έξοδος με αυτή την
κατάσταση.exit 2Αν το φίλτρο απέτυχε να εκτυπώσει το αρχείο και δεν θέλει
το LPD να προσπαθήσει ξανά. Το
LPD θα απορρίψει το αρχείο.Το φίλτρο κειμένου που έρχεται με την κανονική έκδοση του
&os;, /usr/libexec/lpr/lpf, εκμεταλλεύεται τις
παραμέτρους πλάτους και μήκους σελίδας για να προσδιορίσει πότε να
αποστείλει το form feed και πως να κάνει καταμέτρηση. Χρησιμοποιεί
τις παραμέτρους για login, host, και αρχείου καταμέτρησης για να
δημιουργήσει τις σχετικές εγγραφές καταμέτρησης.Αν είστε στη διαδικασία επιλογής φίλτρων, ελέγξτε αν είναι
συμβατά με το LPD. Αν είναι συμβατά,
τότε πρέπει να υποστηρίζουν την λίστα παραμέτρων που περιγράψαμε
προηγουμένως. Αν σχεδιάζετε να γράψατε τα δικά σας φίλτρα γενικής
χρήσης, τότε πρέπει να τα κάνετε να υποστηρίζουν την ίδια λίστα
παραμέτρων και κωδικών εξόδου.Συμβατότητα Εργασιών Απλού Κειμένου σε Εκτυπωτές
&postscript;εκτύπωση εργασιώνΑν είστε ο μοναδικός χρήστης του Η/Υ σας και του εκτυπωτή
&postscript; (ή άλλης γλώσσας εκτυπωτών), και είστε σίγουροι πως δεν
πρόκειται να στείλετε ποτέ εκτυπώσεις απλού κειμένου στον εκτυπωτή
σας και πως δεν θα χρησιμοποιήσετε τις υπηρεσίες των διαφόρων
προγραμμάτων σας που θα θελήσουν να στείλουν απλό κείμενο στον
εκτυπωτή σας, τότε δεν χρειάζεται να ασχοληθείτε καθόλου με αυτή την
ενότητα.Αλλά, αν επιθυμείτε να στείλετε τόσο εργασίες &postscript; όσο
και απλού κειμένου στον εκτυπωτή σας, τότε σας προτρέπουμε να
προσθέσετε κάποιες ρυθμίσεις στην εγκατάσταση σας. Για να γίνει
αυτό, θα πρέπει το φίλτρο κειμένου να ανιχνεύει αν η τρέχουσα
εργασία είναι απλό κείμενο ή &postscript;. Όλες οι εργασίες
&postscript; πρέπει να ξεκινούν με %!
(αν ο εκτυπωτής σας χρησιμοποιεί άλλη γλώσσα, συμβουλευθείτε
την τεκμηρίωση του). Αν είναι αυτοί οι πρώτοι δύο χαρακτήρες, τότε
έχουμε &postscript;, και η υπόλοιπη εργασία μπορεί να σταλεί
απευθείας στον εκτυπωτή. Αν δεν είναι αυτοί οι πρώτοι δύο
χαρακτήρες, τότε το φίλτρο θα μετατρέψει το κείμενο σε &postscript;
και θα τυπώσει το αποτέλεσμα.Πως γίνεται αυτό;εκτυπωτέςσειριακοίΑν είστε κάτοχος σειριακού εκτυπωτή, ένας καλός τρόπος για
να γίνει αυτό εφικτό είναι να εγκαταστήσετε το
lprps. Το lprps είναι ένα
φίλτρο εκτύπωσης &postscript; που επικοινωνεί αμφίδρομα με τον
εκτυπωτή. Ενημερώνει το αρχείο κατάστασης του εκτυπωτή με
αναλυτικές πληροφορίες, ώστε οι χρήστες και οι διαχειριστές να
μπορούν να δουν επακριβώς ποια είναι η κατάσταση του εκτυπωτή
(όπως χαμηλή στάθμη toner ή
πρόβλημα χαρτιού). Ακόμη πιο σημαντικό
είναι πως περιέχει το πρόγραμμα psif που
ανιχνεύει αν η εισερχόμενη εργασία είναι απλού κειμένου και καλεί το
textps (ένα άλλο πρόγραμμα που περιέχεται στο
lprps) να το μετατρέψει σε &postscript;. Τέλος
χρησιμοποιείται το lprps για να αποστείλει την
εργασία στον εκτυπωτή.Το lprps είναι μέρος της Συλλογής των Ports
του &os; (δείτε Η Συλλογή των Ports).
Φυσικά, μπορείτε να το κατεβάσετε, να το μεταγλωττίσετε και να το
εγκαταστήσετε μόνοι σας. Μετά την εγκατάσταση του
lprps, απλά προσδιορίστε τη διαδρομή προς το
πρόγραμμα psif που είναι μέρος του
lprps. Αν εγκαταστήσατε το
lprps από την Συλλογή των Ports, τότε για τον
σειριακό σας εκτυπωτή &postscript; χρησιμοποιήστε την ακόλουθη
καταχώριση στο αρχείο /etc/printcap::if=/usr/local/libexec/psif:Θα πρέπει επίσης να καθορίσετε την ικανότητα
rw η οποία ορίζει ότι το
LPD θα χειρίζεται τον εκτυπωτή σε
κατάσταση ανάγνωσης και εγγραφής.Αν έχετε παράλληλο εκτυπωτή &postscript; (και για το λόγο αυτό
δεν μπορείτε να χρησιμοποιήσετε αμφίδρομη επικοινωνία με τον
εκτυπωτή, όπως απαιτείται από το lprps), μπορείτε
να χρησιμοποιήσετε το ακόλουθο shell script ως φίλτρο
κειμένου:#!/bin/sh
#
# psif - Print PostScript or plain text on a PostScript printer
# Script version; NOT the version that comes with lprps
# Installed in /usr/local/libexec/psif
#
IFS="" read -r first_line
first_two_chars=`expr "$first_line" : '\(..\)'`
if [ "$first_two_chars" = "%!" ]; then
#
# PostScript job, print it.
#
echo "$first_line" && cat && printf "\004" && exit 0
exit 2
else
#
# Plain text, convert it, then print it.
#
( echo "$first_line"; cat ) | /usr/local/bin/textps && printf "\004" && exit 0
exit 2
fiΣτο παραπάνω script, το textps είναι ένα
πρόγραμμα που εγκαταστήσαμε ξεχωριστά για να μετατρέπουμε απλό
κείμενο σε &postscript;. Μπορείτε να χρησιμοποιείτε οποιοδήποτε
πρόγραμμα μετατροπής από κείμενο- σε-&postscript;. Η Συλλογή των
Ports (δείτε Η Συλλογή των Ports)
περιέχει επίσης ένα πλήρες πρόγραμμα μετατροπής
από κείμενο σε &postscript;, το a2ps που ίσως
επιθυμείτε να διερευνήσετε.Προσομοίωση &postscript; για Εκτυπωτές που δεν το
ΥποστηρίζουνPostScriptπροσομοίωσηGhostscriptΤο &postscript; είναι το de facto πρότυπο
για στοιχειοθεσία και εκτύπωση υψηλής ποιότητας. Ωστόσο, το
&postscript; είναι κάπως δαπανηρό πρότυπο.
Ευτυχώς, η Aladdin Enterprises παρέχει ένα παρεμφερές ελεύθερο
&postscript; που ονομάζεται Ghostscript
και δουλεύει άψογα στο &os;. Το Ghostscript διαβάζει τα περισσότερα
αρχεία &postscript; και μπορεί να αποδώσει τις σελίδες τους σε
μεγάλη γκάμα συσκευών, συμπεριλαμβάνοντας πολλούς τύπους εκτυπωτών
που δεν υποστηρίζουν &postscript;. Εγκαθιστώντας το
Ghostscript και χρησιμοποιώντας ένα
ειδικό φίλτρο κειμένου για τον εκτυπωτή σας, μπορείτε να κάνετε τον
κοινό εκτυπωτή σας να λειτουργεί σαν ένας πραγματικός εκτυπωτής
&postscript;.Το Ghostscript βρίσκεται στην
Συλλογή των Ports του &os;, και μάλιστα σε πολλές εκδόσεις. Η πιο
διαδεδομένη είναι το print/ghostscript-gpl.Για να κάνετε προσομοίωση &postscript;, πρέπει το φίλτρο
κειμένου να ανιχνεύσει αν εκτυπώνετε αρχείο &postscript;. Εάν όχι,
τότε το φίλτρο θα περάσει το αρχείο κατευθείαν στον εκτυπωτή.
Διαφορετικά, θα χρησιμοποιήσει το
Ghostscript για να μετατρέψει
αρχικά το αρχείο σε ένα τύπο που θα καταλαβαίνει ο εκτυπωτής.Ιδού ένα παράδειγμα: το ακόλουθο script είναι ένα φίλτρο
κειμένου για εκτυπωτές Hewlett Packard DeskJet 500. Για άλλους
εκτυπωτές, αντικαταστήστε το όρισμα στην
εντολή gs
(Ghostscript). (Πληκτρολογήστε
gs για να δείτε την λίστα
συσκευών που υποστηρίζει η τρέχουσα εγκατάσταση του
Ghostscript.)#!/bin/sh
#
# ifhp - Print Ghostscript-simulated PostScript on a DeskJet 500
# Installed in /usr/local/libexec/ifhp
#
# Treat LF as CR+LF (to avoid the "staircase effect" on HP/PCL
# printers):
#
printf "\033&k2G" || exit 2
#
# Read first two characters of the file
#
IFS="" read -r first_line
first_two_chars=`expr "$first_line" : '\(..\)'`
if [ "$first_two_chars" = "%!" ]; then
#
# It is PostScript; use Ghostscript to scan-convert and print it.
#
/usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=djet500 \
-sOutputFile=- - && exit 0
else
#
# Plain text or HP/PCL, so just print it directly; print a form feed
# at the end to eject the last page.
#
echo "$first_line" && cat && printf "\033&l0H" &&
exit 0
fi
exit 2Τέλος, χρειάζεται να ενημερώσετε το
LPD για το φίλτρο με την ικανότητα
if::if=/usr/local/libexec/ifhp:Αυτό είναι όλο. Μπορείτε να πληκτρολογήσετε
lpr plain.text και
lpr whatever.ps και τα δύο θα εκτυπωθούν επιτυχώς.Φίλτρα ΜετατροπήςΤο επόμενο βήμα μετά την ολοκλήρωση της απλής εγκατάστασης που
περιγράψαμε στις Βασικές Ρυθμίσεις
Εκτυπωτών, είναι συνήθως η εγκατάσταση φίλτρων μετατροπής
για τους τύπους αρχείων που προτιμάτε (εκτός από απλό κείμενο
ASCII).Γιατί να εγκαταστήσετε Φίλτρα Μετατροπής;&tex;εκτύπωση αρχείων DVIΤα φίλτρα μετατροπής κάνουν την εκτύπωση διαφόρων τύπων
αρχείων εύκολη υπόθεση. Για παράδειγμα, ας υποθέσουμε ότι έχουμε
να κάνουμε αρκετή εργασία με το σύστημα στοιχειοθεσίας &tex;, και
ότι έχουμε εκτυπωτή &postscript;. Κάθε φορά που δημιουργούμε ένα
αρχείο DVI με το &tex;, δεν μπορούμε να εκτυπώσουμε κατευθείαν έως
ότου να μετατρέψουμε το αρχείο DVI σε &postscript;. Η ακολουθία
εντολών που πρέπει να ακολουθήσουμε είναι:&prompt.user; dvips seaweed-analysis.dvi
&prompt.user; lpr seaweed-analysis.psΜε την χρήση ενός φίλτρου μετατροπής για αρχεία DVI, μπορούμε
να αποφύγουμε την μετατροπή που πρέπει να κάνουμε κάθε φορά
χειροκίνητα, καλώντας το LPD να κάνει
τη δουλειά για μας. Τώρα, κάθε φορά που έχουμε ένα αρχείο DVI,
για να το τυπώσουμε χρειάζεται μόνο ένα βήμα:&prompt.user; lpr seaweed-analysis.dviΈχουμε αναθέσει στο LPD να κάνει τη
μετατροπή του αρχείου DVI προσθέτοντας του την επιλογή
. Η ενότητα Επιλογές Μορφοποίησης και
Μετατροπής περιέχει τους πίνακες επιλογής
μετατροπών.Για κάθε επιλογή μετατροπής που θέλετε να υποστηρίζετε από
ένα εκτυπωτή, πρέπει να εγκαταστήσετε ένα
φίλτρο μετατροπής και να ορίσετε την
διαδρομή του στο αρχείο /etc/printcap. Ένα
φίλτρο μετατροπής είναι σαν το φίλτρο κειμένου στην απλή
εγκατάσταση εκτυπωτή (δείτε την ενότητα Εγκατάσταση Φίλτρου
Κειμένου) με μόνη διαφορά πως αντί το φίλτρο να
εκτυπώνει απλό κείμενο, μετατρέπει το αρχείο σε μια διαφορετική
μορφή ώστε να είναι κατανοητό από τον εκτυπωτή.Ποιο Φίλτρο Μετατροπής θα Πρέπει να Εγκαταστήσω;Θα πρέπει να εγκαθιστάτε τα φίλτρα μετατροπής που νομίζετε
πως θα χρησιμοποιήσετε. Αν εκτυπώνετε αρκετά δεδομένα DVI, τότε
είναι λογικό να συμπεριλάβετε ένα φίλτρο μετατροπής DVI. Αν
εκτυπώνετε συχνά δεδομένα troff, θα θέλετε να εγκαταστήσετε ένα
φίλτρο troff.Ο ακόλουθος πίνακας συνοψίζει τα φίλτρα με τα οποία
συνεργάζεται το LPD, τις καταχωρίσεις
της αντίστοιχης ικανότητας στο αρχείο
/etc/printcap, και πως να τις καλέσετε μέσω
της εντολής lpr:Τύπος αρχείουΙκανότητα /etc/printcapΠαράμετρος εντολής lprcifplotcfDVIdfplotgfditroffnfFORTRAN textrftrofftfrastervfplain textifnone, , or
Στο παράδειγμα μας, αν χρησιμοποιήσουμε
lpr σημαίνει ότι ο
εκτυπωτής χρειάζεται την ικανότητα df στην
καταχώριση του στο /etc/printcap.FORTRANΑν και κάποιοι μπορεί να ισχυριστούν το αντίθετο, μερικοί
τύποι αρχείων όπως είναι τα κείμενα και γραφικά FORTRAN είναι
ξεπερασμένα. Μπορείτε να δώσετε νέα πνοή σε αρχεία αυτού του
τύπου (ή και οποιασδήποτε άλλης μορφής εξόδου), εγκαθιστώντας
προσαρμοσμένα φίλτρα. Για παράδειγμα, ας υποθέσουμε ότι θα θέλατε
να εκτυπώσετε κατευθείαν αρχεία Printerleaf (αρχεία προερχόμενα
από το πρόγραμμα επιτραπέζιας τυπογραφίας Interleaf), αλλά δεν
θα εκτυπώσετε ποτέ διαγράμματα (plots). Θα μπορούσατε να
εγκαταστήσετε ένα φίλτρο μετατροπής αρχείων Printerleaf υπό την
ικανότητα gf και να εκπαιδεύσετε τους χρήστες
σας ότι η εντολή lpr
σημαίνει τύπωσε αρχεία Printerleaf.Εγκατάσταση Φίλτρων ΜετατροπώνΑπό τη στιγμή που τα φίλτρα μετατροπής είναι προγράμματα που
δεν ανήκουν στο βασικό σύστημα εγκατάστασης του &os;, είναι πιο
σωστό να εγκατασταθούν στον κατάλογο
/usr/local. Ένας συνήθης
προορισμός των προγραμμάτων αυτών είναι ο κατάλογος
/usr/local/libexec, μια
που πρόκειται για εξειδικευμένα προγράμματα που εκτελούνται μόνο
από το LPD. Οι απλοί χρήστες δεν θα
χρειαστεί ποτέ να τα εκτελέσουν.Για να ενεργοποιήσετε ένα φίλτρο μετατροπής, προσδιορίστε τη
διαδρομή του στο αρχείο /etc/printcap,
αλλάζοντας την κατάλληλη ικανότητα στον εκτυπωτή που επιθυμείτε
να το χρησιμοποιήσετε.Στο παράδειγμα μας, θα προσθέσουμε το φίλτρο μετατροπής DVI
στην καταχώριση μας για τον εκτυπωτή με το όνομα
bamboo. Ακολουθεί, λοιπόν, το παράδειγμα
για το αρχείο /etc/printcap, με την νέα
ικανότητα df για τον εκτυπωτή
bamboo:#
# /etc/printcap for host rose - added df filter for bamboo
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
:if=/usr/local/libexec/psif:\
:df=/usr/local/libexec/psdf:Το φίλτρο DVI είναι ένα shell script που ονομάζεται
/usr/local/libexec/psdf, το οποίο και
παραθέτουμε παρακάτω:#!/bin/sh
#
# psdf - DVI to PostScript printer filter
# Installed in /usr/local/libexec/psdf
#
# Invoked by lpd when user runs lpr -d
#
exec /usr/local/bin/dvips -f | /usr/local/libexec/lprps "$@"Αυτό το script τρέχει το dvips σε κατάσταση
φίλτρου (με την παράμετρο ) στην standard
input, από όπου και λαμβάνει την εργασία προς εκτύπωση. Αυτό
ξεκινά το φίλτρο εκτύπωσης &postscript; lprps
(δείτε την ενότητα Συμβατότητα Εργασιών
Απλού Κειμένου σε εκτυπωτές &postscript;) δίνοντας του
και τις παραμέτρους που πέρασε το LPD
στο παραπάνω script. Το lprps θα
χρησιμοποιήσει αυτές τις παραμέτρους για την καταμέτρηση των
εκτυπωμένων σελίδων.Ακόμα μερικά Παραδείγματα Φίλτρων ΜετατροπήςΑπό τη στιγμή που δεν υπάρχει αυτοματοποιημένη μέθοδος για την
εγκατάσταση των φίλτρων μετατροπής, ας μας επιτραπεί να παρέχουμε
μερικά ακόμη παραδείγματα. Μπορείτε να τα χρησιμοποιήσετε σαν
οδηγό για την δημιουργία των δικών σας φίλτρων. Αν νομίζετε πως
είναι κατάλληλα για την περίπτωση σας μπορείτε να τα
χρησιμοποιήσετε και κατευθείαν.Αυτό το παράδειγμα script είναι ένα φίλτρο μετατροπής ράστερ
(αρχείου GIF για την ακρίβεια) για έναν εκτυπωτή Hewlett Packard
LaserJet III-Si:#!/bin/sh
#
# hpvf - Convert GIF files into HP/PCL, then print
# Installed in /usr/local/libexec/hpvf
PATH=/usr/X11R6/bin:$PATH; export PATH
giftopnm | ppmtopgm | pgmtopbm | pbmtolj -resolution 300 \
&& exit 0 \
|| exit 2Δουλεύει ως εξής: μετατρέπει το αρχείο GIF σε ένα γενικό
φορητό τύπο anymap, εν συνεχεία το μετατρέπει σε ένα φορητό τύπο
graymap, έπειτα σε ένα φορητό τύπο bitmap, και τέλος το
μετατρέπει σε δεδομένα συμβατά με PCL για τον LaserJet.Εδώ είναι το αρχείο /etc/printcap με μια
καταχώριση για έναν εκτυπωτή που χρησιμοποιεί το παραπάνω
φίλτρο:#
# /etc/printcap for host orchid
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sh:sd=/var/spool/lpd/teak:mx#0:\
:if=/usr/local/libexec/hpif:\
:vf=/usr/local/libexec/hpvf:Το ακόλουθο script είναι ένα φίλτρο μετατροπής δεδομένων troff
από το σύστημα στοιχειοθεσίας groff για τον εκτυπωτή &postscript;
με όνομα bamboo:#!/bin/sh
#
# pstf - Convert groff's troff data into PS, then print.
# Installed in /usr/local/libexec/pstf
#
exec grops | /usr/local/libexec/lprps "$@"Το παραπάνω script χρησιμοποιεί πάλι το
lprps για να χειριστεί την επικοινωνία με τον
εκτυπωτή. Αν ο εκτυπωτής ήταν σε παράλληλη πόρτα τότε θα είχαμε,
αντιθέτως, χρησιμοποιήσει το ακόλουθο script:#!/bin/sh
#
# pstf - Convert groff's troff data into PS, then print.
# Installed in /usr/local/libexec/pstf
#
exec gropsΕδώ είναι η καταχώριση που χρειάζεται να προσθέσουμε στο
/etc/printcap για να ενεργοποιήσουμε το
φίλτρο::tf=/usr/local/libexec/pstf:Εδώ είναι ένα παράδειγμα που μας επιτρέπει να εκτυπώσουμε
παλαιό κώδικα της FORTRAN. Είναι ένα φίλτρο κειμένου για FORTRAN
για οποιονδήποτε εκτυπωτή μπορεί να εκτυπώσει κατευθείαν απλό
κείμενο. Θα το εγκαταστήσουμε για έναν εκτυπωτή που ονομάζεται
teak:#!/bin/sh
#
# hprf - FORTRAN text filter for LaserJet 3si:
# Installed in /usr/local/libexec/hprf
#
printf "\033&k2G" && fpr && printf "\033&l0H" &&
exit 0
exit 2Και θα προσθέσουμε αυτή τη γραμμή στο
/etc/printcap για να ενεργοποιήσουμε το
φίλτρο για τον εκτυπωτή teak::rf=/usr/local/libexec/hprf:Και ένα τελευταίο κάπως περίπλοκο παράδειγμα: Θα
προσθέσουμε ένα φίλτρο DVI στον εκτυπωτή LaserJet
teak που αναφέραμε προηγούμενα. Καταρχήν το
εύκολο μέρος: αναβαθμίζουμε το /etc/printcap
με την τοποθεσία όπου βρίσκεται το φίλτρο DVI::df=/usr/local/libexec/hpdf:Τώρα, το δύσκολο μέρος: η κατασκευή του φίλτρου. Θα
χρειαστούμε ένα πρόγραμμα μετατροπής από DVI-σε-LaserJet/PCL.
Στην Συλλογή των Ports του &os; (δείτε Συλλογή των Ports) υπάρχει ένα τέτοιο
πρόγραμμα: Το όνομα του πακέτου είναι dvi2xx.
Η εγκατάσταση του πακέτου, μας παρέχει ακριβώς το πρόγραμμα
που χρειαζόμαστε, το dvilj2p, το οποίο
μετατρέπει τον κώδικα DVI σε κώδικα συμβατό με LaserJet IIp,
LaserJet III, και LaserJet 2000.Το dvilj2p κάνει το φίλτρο
hpdf αρκετά περίπλοκο από τη στιγμή που το
dvilj2p δε μπορεί να διαβάσει από το standard
input. Χρειάζεται να δουλέψει με κάποιο όνομα αρχείου. Ακόμη
χειρότερα, το όνομα του αρχείου πρέπει να τελειώνει σε
.dvi κι επομένως η χρήση του
/dev/fd/0 ως standard
input είναι προβληματική. Θα μπορούσαμε να αντιμετωπίσουμε το
πρόβλημα δημιουργώντας (συμβολικούς) δεσμούς με κάποιο προσωρινό
όνομα αρχείου (που να τελειώνει σε .dvi)
για το /dev/fd/0, και με
αυτό τον τρόπο να εξαναγκάσουμε το dvilj2p να
διαβάζει από το standard input.Ακόμη ένα πρόβλημα που προκύπτει είναι το γεγονός πως δεν
μπορούμε να χρησιμοποιήσουμε το
/tmp για τον
προσωρινό δεσμό. Οι συμβολικοί δεσμοί ανήκουν στον χρήστη και
στην ομάδα bin, ενώ το φίλτρο τρέχει σαν
χρήστης daemon. Επίσης στον κατάλογο
/tmp είναι ενεργό το
sticky bit. Το φίλτρο μπορεί να δημιουργήσει το δεσμό, αλλά δεν
θα είναι ικανό να τον εξαλείψει και να τον αφαιρέσει από τη
στιγμή που αυτός θα ανήκει σε διαφορετικό χρήστη.Αντίθετα, το φίλτρο θα φτιάξει το συμβολικό link στον τρέχοντα
κατάλογο, που είναι ο κατάλογος παροχέτευσης (spooling) (και που
προσδιορίζεται από την ικανότητα sd στο
/etc/printcap). Αυτό είναι το τέλειο μέρος
για να δουλεύουν τα φίλτρα, ειδικά λόγω του ότι (μερικές φορές)
υπάρχει περισσότερες ελεύθερος χώρος στο δίσκο στον κατάλογο
παροχέτευσης (spool) από ότι στο
/tmp.Και τελικά, ιδού το φίλτρο:#!/bin/sh
#
# hpdf - Print DVI data on HP/PCL printer
# Installed in /usr/local/libexec/hpdf
PATH=/usr/local/bin:$PATH; export PATH
#
# Define a function to clean up our temporary files. These exist
# in the current directory, which will be the spooling directory
# for the printer.
#
cleanup() {
rm -f hpdf$$.dvi
}
#
# Define a function to handle fatal errors: print the given message
# and exit 2. Exiting with 2 tells LPD to do not try to reprint the
# job.
#
fatal() {
echo "$@" 1>&2
cleanup
exit 2
}
#
# If user removes the job, LPD will send SIGINT, so trap SIGINT
# (and a few other signals) to clean up after ourselves.
#
trap cleanup 1 2 15
#
# Make sure we are not colliding with any existing files.
#
cleanup
#
# Link the DVI input file to standard input (the file to print).
#
ln -s /dev/fd/0 hpdf$$.dvi || fatal "Cannot symlink /dev/fd/0"
#
# Make LF = CR+LF
#
printf "\033&k2G" || fatal "Cannot initialize printer"
#
# Convert and print. Return value from dvilj2p does not seem to be
# reliable, so we ignore it.
#
dvilj2p -M1 -q -e- dfhp$$.dvi
#
# Clean up and exit
#
cleanup
exit 0Αυτοματοποιημένες Μετατροπές: Μία Εναλλακτική στα Φίλτρα
ΜετατροπήςΌλα τα φίλτρα μετατροπής μπορεί να πληρούν το περιβάλλον
εκτυπώσεων σας, αλλά υποχρεώνουν τον χρήστη να προσδιορίζει
(στην γραμμή εντολών του &man.lpr.1;) ποιό από αυτά θα
χρησιμοποιηθεί. Αν οι χρήστες σας δεν είναι ιδιαίτερα
εξοικειωμένοι με τους Η/Υ, το να πρέπει να αναφέρουν κάθε φορά
ένα φίλτρο πιθανώς να είναι ενοχλητικό. Είναι ακόμα χειρότερο
ωστόσο να γίνει λανθασμένη επιλογή φίλτρου, το οποίο θα
εκτελεστεί σε ακατάλληλο για αυτό τύπο αρχείου, και θα προκαλέσει
την σπατάλη εκατοντάδων σελίδων χαρτιού.Αντί να εγκαταστήσετε οποιοδήποτε φίλτρο μετατροπής, μπορεί να
θέλετε να δοκιμάσετε να έχετε ένα φίλτρο κειμένου (αφού είναι
το προεπιλεγμένο φίλτρο) που να ανιχνεύει τον τύπο του αρχείου
που έχει ζητηθεί να εκτυπωθεί και να εκτελεί αυτόματα το
κατάλληλο φίλτρο μετατροπής. Εργαλεία σαν το
file μπορούν να σας βοηθήσουν. Μπορεί να
είναι δύσκολο να προσδιοριστούν οι διαφορές μεταξύ
κάποιων τύπων αρχείων—αλλά, φυσικά,
μπορείτε πάντα να παρέχετε φίλτρα μετατροπής ειδικά για αυτές τις
περιπτώσεις.apsfilterprintingfiltersapsfilterΗ Συλλογή των Ports του &os; έχει ένα φίλτρο κειμένου που
εκτελεί αυτόματες μετατροπές και ονομάζεται
apsfilter. Μπορεί να ανιχνεύει απλό κείμενο,
&postscript;, DVI και σχεδόν οποιοδήποτε τύπο αρχείου, να εκτελεί
την κατάλληλη μετατροπή, και να εκτυπώνει.Φίλτρα ΕξόδουΤο σύστημα παροχέτευσης LPD
υποστηρίζει έναν ακόμη τύπο φίλτρου που ίσως να μην έχετε
εξερευνήσει ακόμα: το φίλτρο εξόδου. Το φίλτρο εξόδου προορίζεται
μόνο για εκτύπωση απλού κειμένου, όπως το φίλτρο κειμένου, αλλά με
πολλές απλοποιήσεις. Εάν χρησιμοποιείτε φίλτρο εξόδου αλλά όχι
φίλτρο κειμένου, τότε:Το LPD ξεκινά ένα φίλτρο εξόδου
μόνο μια φορά για όλη την εργασία, αντί ένα χωριστό για κάθε
αρχείο της εργασίας.Το LPD δεν φροντίζει να
αναγνωρίσει την αρχή ή το τέλος των αρχείων μέσα στην ίδια την
εργασία όταν χρησιμοποιείται το φίλτρο εξόδου.Το LPD δεν περνάει στο φίλτρο τα
δεδομένα εισόδου του χρήστη ή το όνομα του μηχανήματος, επομένως
δεν προορίζεται για καταμέτρηση εκτυπωμένων σελίδων. Το φίλτρο
εξόδου δέχεται μόνος τις παραμέτρους:filter-name-wwidth-llengthΌπου το width είναι από την
ικανότητα pw και το
length είναι από την ικανότητα
pl για τον συγκεκριμένο εκτυπωτή.Μην παρασύρεστε από την απλότητα του φίλτρου εξόδου. Αν
επιθυμείτε κάθε αρχείο μιας εργασίας να ξεκινά σε μια νέα σελίδα,
το φίλτρο εξόδου δεν κάνει για σας.
Χρησιμοποιήστε ένα φίλτρο κειμένου (γνωστό και ως φίλτρο εισόδου).
Δείτε την ενότητα Εγκατάσταση
Φίλτρου Κειμένου. Επιπλέον, ένα φίλτρο εξόδου είναι στην
πραγματικότητα πιο περίπλοκο αφού πρέπει να
εξετάζει την ροή των byte που αποστέλλεται προς αυτό για ειδικούς
χαρακτήρες flag και πρέπει να στέλνει σήματα στον εαυτό
του για λογαριασμό του LPD.Ωστόσο, ένα φίλτρο εξόδου είναι αναγκαίο
αν θέλετε σελίδες κεφαλίδας και χρειάζεται να στέλνετε ακολουθίες
διαφυγής ή άλλες ακολουθίες αρχικοποίησης προκειμένου να τις
εκτυπώσετε. (Αλλά είναι επίσης μάταιο αν
θέλετε να χρεώνετε σελίδες κεφαλίδας στον λογαριασμό του αντίστοιχου
χρήστη, από τη στιγμή που το LPD δεν
στέλνει καμιά πληροφορία για τον χρήστη ή τον υπολογιστή στο φίλτρο
εξόδου.)Το LPD επιτρέπει την συνύπαρξη
ενός φίλτρου εξόδου και άλλων φίλτρων (κειμένου ή διαφορετικού
τύπου) στον ίδιο εκτυπωτή. Σε αυτές τις περιπτώσεις, το
LPD θα ξεκινά το φίλτρο εξόδου μόνο για
την εκτύπωση της σελίδας κεφαλίδας (δείτε την ενότητα Σελίδες
Κεφαλίδας). Το LPD θα αναμένει
το φίλτρο εξόδου να σταματήσει από μόνο του
όταν του στείλει δύο bytes: ένα ASCII 031 ακολουθούμενο από ένα
ASCII 001. Όταν ένα φίλτρο εξόδου βλέπει αυτά τα δύο bytes (031,
001), θα πρέπει να σταματά στέλνοντας σήμα
SIGSTOP στον εαυτό του. Όταν το
LPD ολοκληρώσει την εκτέλεση και των
υπολοίπων φίλτρων, θα επανεκκινήσει το φίλτρο εξόδου στέλνοντας
του το σήμα SIGCONT.Αν υπάρχει φίλτρο εξόδου, αλλά δεν υπάρχει
φίλτρο κειμένου και το LPD δουλεύει σε
εργασία απλού κειμένου, το LPD
χρησιμοποιεί το φίλτρο εξόδου για την εκτέλεση της εργασίας. Όπως
αναφέραμε και παραπάνω, το φίλτρο εξόδου θα εκτυπώσει κάθε αρχείο
εργασίας στη σειρά, δίχως δυνατότητα παρεμβολής κενής σελίδας ή
άλλων ρυθμίσεων στην τροφοδοσία χαρτιού, και πιθανώς αυτό να
μην είναι επιθυμητό. Σχεδόν σε όλες τις
περιπτώσεις, θα χρειαστείτε ένα φίλτρο κειμένου.Το πρόγραμμα lpf, που αναφέραμε νωρίτερα σαν
φίλτρο κειμένου, μπορεί να τρέξει και σαν φίλτρο εξόδου. Αν
χρειάζεστε ένα γρήγορο φίλτρο εξόδου αλλά δεν θέλετε να γράψετε τον
κώδικα ανίχνευσης των byte και τον κώδικα αποστολής σημάτων,
δοκιμάστε το lpf. Μπορείτε επίσης να
χρησιμοποιήσετε το lpf μέσα από ένα shell script
το οποίο θα χειρίζεται τους κωδικούς αρχικοποίησης που ίσως να
χρειάζεται ο εκτυπωτής.lpf: ένα Φίλτρο ΚειμένουΤο πρόγραμμα /usr/libexec/lpr/lpf που
παρέχεται με τη διανομή εκτελέσιμων του &os; είναι ένα φίλτρο
κειμένου (φίλτρο εισόδου) που μπορεί να παραγραφοποιεί την έξοδο
(εργασίες που έχουν σταλεί με
lpr ), να
επιτρέπει την διέλευση literal χαρακτήρων (εργασίες που έχουν
σταλεί με lpr ), να ρυθμίζει
την θέση εκτύπωσης με τη χρήση χαρακτήρων backspace και tab στην
εργασία, και να κάνει καταμέτρηση των εκτυπωμένων σελίδων. Επίσης
μπορεί να ενεργεί και σαν φίλτρο εξόδου.Το lpf είναι κατάλληλο για διάφορα
περιβάλλοντα εκτύπωσης. Αν και δεν έχει δυνατότητα αποστολής
ακολουθιών αρχικοποίησης στον εκτυπωτή, είναι εύκολο να γράψετε
ένα shell script για να κάνετε την απαραίτητη αρχικοποίηση και
να εκτελέσετε έπειτα το lpf.καταμέτρηση σελίδωνκαταμέτρησηεκτυπωτήςΓια να κάνει σωστά καταμέτρηση σελίδων, το
lpf χρειάζεται κατάλληλες τιμές για τις
ικανότητες pw και pl στο
αρχείο /etc/printcap. Χρησιμοποιεί αυτές τις
τιμές για να προσδιορίσει πόσο κείμενο μπορεί να χωρέσει σε μία
σελίδα και από πόσες σελίδες αποτελείται η εργασία του χρήστη. Για
περισσότερες πληροφορίες σχετικά με την καταμέτρηση σελίδων,
συμβουλευτείτε την Καταμέτρηση Χρήσης Εκτυπωτών.Σελίδες ΚεφαλίδαςΑν έχετε αρκετούς χρήστες, και όλοι τους
χρησιμοποιούν διάφορους εκτυπωτές, τότε πιθανώς να θεωρείτε τις
σελίδες κεφαλίδας ως αναγκαίο κακό.σελίδες bannerσελίδες κεφαλίδαςσελίδες κεφαλίδαςΟι σελίδες κεφαλίδας, γνωστές επίσης και ως
banner ή σελίδες burst
αναγνωρίζουν σε ποιον ανήκουν οι εργασίες μετά την εκτύπωση τους.
Συνήθως τυπώνονται με μεγάλα, έντονα γράμματα, και ίσως με
διακοσμητικά περιγράμματα, ώστε σε μια στοίβα εκτυπώσεων να
ξεχωρίζουν από τα πραγματικά έγγραφα εργασιών των χρηστών.
Επιτρέπουν έτσι στους χρήστες να βρίσκουν γρήγορα τις εργασίες τους.
Το προφανές μειονέκτημα σε μια σελίδα κεφαλίδας είναι πως πρόκειται
να εκτυπωθεί μια ακόμα σελίδα για κάθε μία εργασία. Η εφήμερη
χρησιμότητα τους διαρκεί λίγα λεπτά, και ο προορισμός τους είναι ο
κάδος αχρήστων/ανακύκλωσης. (Παρατηρήστε πως οι σελίδες κεφαλίδας
είναι ανά εργασία, και όχι ανά αρχείο σε μια εργασία, επομένως το
αχρηστευμένο χαρτί ίσως να μην είναι τόσο πολύ).Το σύστημα LPD μπορεί να παρέχει
αυτόματα σελίδες κεφαλίδας για τις εκτυπώσεις σας,
αν ο εκτυπωτής σας μπορεί να εκτυπώσει άμεσα
απλό κείμενο. Αν έχετε εκτυπωτή &postscript;, θα χρειαστείτε ένα
εξωτερικό πρόγραμμα για να δημιουργήσετε την σελίδα κεφαλίδας. Δείτε
το Σελίδες
Κεφαλίδας σε Εκτυπωτές &postscript;.Ενεργοποίηση Σελίδων ΚεφαλίδαςΣτην ενότητα Βασικές Ρυθμίσεις
Εκτυπωτών, απενεργοποιήσαμε τις σελίδες κεφαλίδας
με την καταχώριση sh (σημαίνει suppress
header) στο αρχείο /etc/printcap.
Για να ενεργοποιήσετε τις σελίδες κεφαλίδας για κάποιον εκτυπωτή,
απλά αφαιρέστε την ικανότητα sh.Ακούγεται εύκολο, δεν νομίζετε;Έτσι είναι. Ίσως χρειαστεί να παρέχετε ένα
φίλτρο εξόδου για να στείλετε εντολές αρχικοποίησης στον εκτυπωτή.
Εδώ είναι ένα παράδειγμα φίλτρου εξόδου για εκτυπωτές συμβατούς με
τον τύπο PCL της Hewlett Packard:#!/bin/sh
#
# hpof - Output filter for Hewlett Packard PCL-compatible printers
# Installed in /usr/local/libexec/hpof
printf "\033&k2G" || exit 2
exec /usr/libexec/lpr/lpfΠροσδιορίστε την διαδρομή προς το φίλτρο εξόδου στην ικανότητα
of. Δείτε την ενότητα Φίλτρα Εξόδου για
περισσότερες πληροφορίες.Εδώ είναι ένα παράδειγμα αρχείου
/etc/printcap για τον εκτυπωτή
teak από το προηγούμενο παράδειγμα.
Ενεργοποιήσαμε τις σελίδες κεφαλίδας και προσθέσαμε το παραπάνω
φίλτρο εξόδου:#
# /etc/printcap for host orchid
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:\
:if=/usr/local/libexec/hpif:\
:vf=/usr/local/libexec/hpvf:\
:of=/usr/local/libexec/hpof:Τώρα, όταν οι χρήστες εκτυπώνουν εργασίες στον
teak, θα παίρνουν και μία σελίδα κεφαλίδας ανά
εργασία. Αν οι χρήστες θέλουν να ξοδεύουν χρόνο ψάχνοντας για
τις εκτυπώσεις τους, μπορούν να παρεμποδίσουν τις σελίδες κεφαλίδας
αποστέλλοντας τις εργασίες τους με
lpr . Δείτε την ενότητα
Επιλογές Σελίδων
Κεφαλίδας για περισσότερες επιλογές του &man.lpr.1;.Το LPD στέλνει το χαρακτήρα
αλλαγής σελίδας (form feed) αμέσως μετά τη σελίδα κεφαλίδας. Αν
ο εκτυπωτής σας χρησιμοποιεί διαφορετικό χαρακτήρα ή ακολουθία
χαρακτήρων για την αλλαγή σελίδας, προσδιορίστε τα με την
ικανότητα ff στο αρχείο
/etc/printcap.Έλεγχος Σελίδων Κεφαλίδας Μετά την ενεργοποίηση των σελίδων κεφαλίδας, το
LPD θα παράγει μία επιμήκη
κεφαλίδα, μία ολόκληρη σελίδα με μεγάλα γράμματα που
προσδιορίζει τον χρήστη, τον υπολογιστή (host), και την εργασία.
Εδώ είναι ένα παράδειγμα (η kelly εκτύπωσε την
εργασία με όνομα outline από τον υπολογιστή
rose): k ll ll
k l l
k l l
k k eeee l l y y
k k e e l l y y
k k eeeeee l l y y
kk k e l l y y
k k e e l l y yy
k k eeee lll lll yyy y
y
y y
yyyy
ll
t l i
t l
oooo u u ttttt l ii n nnn eeee
o o u u t l i nn n e e
o o u u t l i n n eeeeee
o o u u t l i n n e
o o u uu t t l i n n e e
oooo uuu u tt lll iii n n eeee
r rrr oooo ssss eeee
rr r o o s s e e
r o o ss eeeeee
r o o ss e
r o o s s e e
r oooo ssss eeee
Job: outline
Date: Sun Sep 17 11:04:58 1995Το LPD προσθέτει μια εντολή αλλαγής
σελίδας (form feed) μετά από αυτό το κείμενο έτσι ώστε η
εργασία να ξεκινήσει σε νέα σελίδα (εκτός αν έχετε προσδιορίσει την
ικανότητα sf (suppress form feeds) για τον
εκτυπωτή στο αρχείο /etc/printcap).Αν προτιμάτε, το LPD μπορεί να
φτιάξει μια μικρότερου μήκους κεφαλίδα.
Προσδιορίστε sb (short banner) στο αρχείο
/etc/printcap. Η σελίδα κεφαλίδας θα μοιάζει
σαν αυτή:rose:kelly Job: outline Date: Sun Sep 17 11:07:51 1995Το LPD τυπώνει (από προεπιλογή)
πρώτα την σελίδα κεφαλίδας, και μετά την εργασία. Για να
αντιστρέψετε την σειρά, χρησιμοποιήστε την ικανότητα
hl (header last) στο αρχείο
/etc/printcap.Καταμέτρηση με Σελίδες ΚεφαλίδαςΗ χρήση των προεγκατεστημένων σελίδων κεφαλίδας του
LPD ουσιαστικά υποχρεώνουν την τήρηση
του παρακάτω κανόνα όταν κάνουμε καταμέτρηση χρήσης του εκτυπωτή:
Οι σελίδες κεφαλίδας πρέπει να διατίθενται ελεύθερα (δίχως
χρέωση).Γιατί;Διότι το φίλτρο εξόδου είναι το μοναδικό εξωτερικό πρόγραμμα
που έχει τον έλεγχο στην εκτύπωση της κεφαλίδας και θα μπορούσε να
κάνει καταμέτρηση, αλλά ωστόσο δεν παρέχει καμία πληροφορία για
τον χρήστη ή τον υπολογιστή ή κάποιο άλλο
αρχείο καταμέτρησης, επομένως δεν γνωρίζει σε ποιόν να αποδώσει
την χρήση του εκτυπωτή. Δεν αρκεί απλά να προσθέσετε μία
ακόμη σελίδα στην καταμέτρηση τροποποιώντας το φίλτρο
κειμένου ή οποιοδήποτε άλλο φίλτρο μετατροπής (το οποίο διαθέτει τις
πληροφορίες χρήστη και υπολογιστή), από τη στιγμή που οι χρήστες
έχουν την δυνατότητα να παρεμποδίσουν τις σελίδες κεφαλίδας με
lpr . Θα μπορούσαν πάλι να
χρεωθούν για σελίδες κεφαλίδας που δεν εκτύπωσαν. Βασικά, η
lpr θα είναι η προτιμώμενη
επιλογή σε ένα περιβάλλον που οι χρήστες έχουν οικολογική
συνείδηση, αλλά δεν μπορείτε πραγματικά να παροτρύνετε οποιονδήποτε
να τη χρησιμοποιήσει.Δεν είναι αρκετό απλά κάθε φίλτρο σας να
δημιουργεί τη δικιά του σελίδα κεφαλίδας (έτσι ώστε να μπορεί να
χρεώνει με αυτό τον τρόπο). Αν οι χρήστες επιθυμούν την επιλογή
παρεμπόδισης των σελίδων κεφαλίδας με
lpr , θα συνεχίσουν να τις
παραλαμβάνουν - και να χρεώνονται για αυτές - αφού το
LPD δεν έχει δυνατότητα να
περάσει σε οποιοδήποτε φίλτρο την επιλογή
.Επομένως, ποιες επιλογές έχετε;Μπορείτε:Να αποδεχθείτε την υπόδειξη του
LPD και να παρέχετε τις σελίδες
κεφαλίδας ελεύθερα.Να εγκαταστήσετε εναλλακτικές λύσεις αντί του
LPD, όπως το
LPRng. Η ενότητα Εναλλακτικές Λύσεις για
τον Στάνταρ Spooler δίνει περισσότερες πληροφορίες
για άλλες εφαρμογές παροχέτευσης που μπορείτε να
χρησιμοποιήσετε αντί για το
LPD.Να γράψετε ένα έξυπνο φίλτρο εξόδου.
Υπό κανονικές συνθήκες, ένα "φίλτρο εξόδου" δεν κάνει τίποτε
παραπάνω από την αρχικοποίηση ενός εκτυπωτή ή μερικές απλές
μετατροπές χαρακτήρων. Είναι κατάλληλο για σελίδες κεφαλίδας
και για εργασίες απλού κειμένου (όταν δεν υπάρχει φίλτρο
(εισόδου) κειμένου). Αλλά αν υπάρχει φίλτρο κειμένου για
εργασίες απλού κειμένου, τότε το
LPD θα ενεργοποιεί το φίλτρο εξόδου
μόνο για τις σελίδες κεφαλίδας. Και το φίλτρο εξόδου μπορεί να
αναλύει το κείμενο της σελίδας κεφαλίδας που δημιουργεί το
LPD για να προσδιορίζει τον χρήστη
και τον υπολογιστή, ώστε να χρεώνει τις σελίδες κεφαλίδας.
Το μόνο επιπλέον πρόβλημα με αυτή τη μέθοδο είναι πως το φίλτρο
εξόδου εξακολουθεί να μη γνωρίζει ποιό αρχείο καταμέτρησης να
χρησιμοποιήσει (δεν του έχει δοθεί το όνομα του αρχείου από την
ικανότητα af), αλλά αν το όνομα του αρχείου
σας είναι γνωστό, μπορείτε να το ενσωματώσετε απευθείας στον
κώδικα του φίλτρου εξόδου. Για να διευκολύνετε την διαδικασία
ανάλυσης, χρησιμοποιήστε την ικανότητα sh
(short header) στο /etc/printcap. Ίσως
πάλι όλα αυτά να είναι υπερβολικά κοπιαστικά, ενώ είναι σίγουρο
πως οι χρήστες θα εκτιμήσουν τον γενναιόδωρο διαχειριστή
συστήματος που επιτρέπει ελεύθερα τις σελίδες κεφαλίδας.Σελίδες Κεφαλίδας σε Εκτυπωτές &postscript;Όπως περιγράψαμε παραπάνω, το LPD
μπορεί να δημιουργήσει μία σελίδα κεφαλίδας απλού κειμένου,
κατάλληλη για πολλούς εκτυπωτές. Οι εκτυπωτές &postscript;,
φυσικά, δεν μπορούν να τυπώσουν κατευθείαν απλό κείμενο, επομένως
αυτή η δυνατότητα του LPD για τις
σελίδες κεφαλίδας είναι άχρηστη σε αυτή την περίπτωση.Ένας προφανής τρόπος να παρέχονται σελίδες κεφαλίδας είναι να
δημιουργούνται από κάθε φίλτρο μετατροπής και το φίλτρο κειμένου.
Τα φίλτρα θα πρέπει να δέχονται ως παραμέτρους το όνομα του χρήστη
και του υπολογιστή ώστε να δημιουργούν την κατάλληλη σελίδα
κεφαλίδας. Το μειονέκτημα αυτής της μεθόδου είναι πως οι
χρήστες θα εκτυπώνουν πάντα σελίδα κεφαλίδας, ακόμη κι αν
αποστέλλουν την εργασία τους με
lpr .Επιτρέψτε μας να εξερευνήσουμε αυτή τη μέθοδο. Το ακόλουθο
script δέχεται τρεις παραμέτρους (το όνομα χρήστη - login name, το
όνομα του υπολογιστή - host name, και το όνομα εργασίας) και
δημιουργεί μία απλή σελίδα κεφαλίδας &postscript;:#!/bin/sh
#
# make-ps-header - make a PostScript header page on stdout
# Installed in /usr/local/libexec/make-ps-header
#
#
# These are PostScript units (72 to the inch). Modify for A4 or
# whatever size paper you are using:
#
page_width=612
page_height=792
border=72
#
# Check arguments
#
if [ $# -ne 3 ]; then
echo "Usage: `basename $0` <user> <host> <job>" 1>&2
exit 1
fi
#
# Save these, mostly for readability in the PostScript, below.
#
user=$1
host=$2
job=$3
date=`date`
#
# Send the PostScript code to stdout.
#
exec cat <<EOF
%!PS
%
% Make sure we do not interfere with user's job that will follow
%
save
%
% Make a thick, unpleasant border around the edge of the paper.
%
$border $border moveto
$page_width $border 2 mul sub 0 rlineto
0 $page_height $border 2 mul sub rlineto
currentscreen 3 -1 roll pop 100 3 1 roll setscreen
$border 2 mul $page_width sub 0 rlineto closepath
0.8 setgray 10 setlinewidth stroke 0 setgray
%
% Display user's login name, nice and large and prominent
%
/Helvetica-Bold findfont 64 scalefont setfont
$page_width ($user) stringwidth pop sub 2 div $page_height 200 sub moveto
($user) show
%
% Now show the boring particulars
%
/Helvetica findfont 14 scalefont setfont
/y 200 def
[ (Job:) (Host:) (Date:) ] {
200 y moveto show /y y 18 sub def }
forall
/Helvetica-Bold findfont 14 scalefont setfont
/y 200 def
[ ($job) ($host) ($date) ] {
270 y moveto show /y y 18 sub def
} forall
%
% That is it
%
restore
showpage
EOFΤώρα, καθένα από τα φίλτρα μετατροπής και το φίλτρο κειμένου
μπορούν να καλέσουν το script, πρώτα για να δημιουργήσουν τη σελίδα
κεφαλίδας, και έπειτα για να εκτυπώσουν την εργασία του χρήστη.
Ακολουθεί το φίλτρο μετατροπής DVI που δείξαμε νωρίτερα, ειδικά
διαμορφωμένο για να φτιάξουμε μια σελίδα κεφαλίδας:#!/bin/sh
#
# psdf - DVI to PostScript printer filter
# Installed in /usr/local/libexec/psdf
#
# Invoked by lpd when user runs lpr -d
#
orig_args="$@"
fail() {
echo "$@" 1>&2
exit 2
}
while getopts "x:y:n:h:" option; do
case $option in
x|y) ;; # Ignore
n) login=$OPTARG ;;
h) host=$OPTARG ;;
*) echo "LPD started `basename $0` wrong." 1>&2
exit 2
;;
esac
done
[ "$login" ] || fail "No login name"
[ "$host" ] || fail "No host name"
( /usr/local/libexec/make-ps-header $login $host "DVI File"
/usr/local/bin/dvips -f ) | eval /usr/local/libexec/lprps $orig_argsΠαρατηρήστε πως το φίλτρο πρέπει να αναλύσει την λίστα
παραμέτρων για να προσδιορίσει το όνομα χρήστη και υπολογιστή. Η
μέθοδος ανάλυσης είναι παρόμοια και για τα υπόλοιπα φίλτρα
μετατροπής. Το φίλτρο κειμένου παίρνει ένα ελαφρώς διαφορετικό
σετ παραμέτρων, (δείτε την ενότητα Πως δουλεύουν τα
Φίλτρα).Όπως αναφέραμε προηγούμενα, ο παραπάνω σχεδιασμός, αν και
πραγματικά απλός, απενεργοποιεί την επιλογή
παρεμπόδισης σελίδων κεφαλίδας (την επιλογή
) του lpr. Αν οι χρήστες
επιθυμούν να σώσουν ένα δέντρο (ή λίγα χρήματα, αν χρεώνετε τις
σελίδες κεφαλίδας), δεν θα υπάρχει τρόπος για να γίνει αυτό, από
τη στιγμή που κάθε εκτύπωση μέσω των φίλτρων θα συνοδεύεται και από
μια σελίδα κεφαλίδας για κάθε εργασία.Για να επιτρέψετε στους χρήστες να απενεργοποιούν τις σελίδες
κεφαλίδας ανά εργασία, θα πρέπει να χρησιμοποιήσετε το τέχνασμα
που παρουσιάσαμε στην ενότητα Καταμέτρηση με
Σελίδες Κεφαλίδας: δηλαδή να γράψετε ένα φίλτρο εξόδου που
να αναλύει την σελίδα κεφαλίδας που δημιουργείται από το
LPD και να κατασκευάζει μια
&postscript; έκδοση. Αν ο χρήστης στείλει μια εργασία με
lpr , τότε ούτε το
LPD, ούτε το φίλτρο εξόδου θα φτιάξουν
σελίδα κεφαλίδας. Σε όλες τις άλλες περιπτώσεις, το φίλτρο εξόδου
θα διαβάζει το κείμενο από το LPD και θα
στέλνει τον κατάλληλο κώδικα &postscript; στον εκτυπωτή ώστε να
εκτυπώνεται η σελίδα κεφαλίδας.Αν έχετε εκτυπωτή &postscript; με σειριακή σύνδεση, μπορείτε να
κάνετε χρήση της lprps, η οποία συνοδεύεται από
ένα φίλτρο εξόδου, το psof, το οποία κάνει τα
παραπάνω. Σημειώστε πως το psof δεν χρεώνει για
τις σελίδες κεφαλίδας.Εκτυπώσεις μέσω Δικτύουεκτυπωτέςδίκτυοεκτυπώσεις μέσω δικτύουΤο &os; υποστηρίζει τις εκτυπώσεις μέσω δικτύου: μπορεί να στείλει
εργασίες σε απομακρυσμένους εκτυπωτές. Η έννοια της δικτυακής
εκτύπωσης αναφέρεται γενικά σε δύο διαφορετικά πράγματα:Πρόσβαση σε εκτυπωτή συνδεδεμένο σε απομακρυσμένο υπολογιστή
(host). Εγκαθιστάτε έναν εκτυπωτή με συμβατική σειριακή ή
παράλληλη σύνδεση σε ένα υπολογιστή. Έπειτα, ρυθμίζετε το
LPD για να ενεργοποιηθεί η πρόσβαση
στον εκτυπωτή από άλλους υπολογιστές του δικτύου. Η ενότητα
Εκτυπωτές
Εγκατεστημένοι σε Απομακρυσμένους Υπολογιστές εξηγεί τις
απαραίτητες ενέργειες.Πρόσβαση σε εκτυπωτή συνδεδεμένο κατευθείαν στο δίκτυο.
Εκτός (ή αντί) της συμβατικής σειριακής ή παράλληλης θύρας, ο
εκτυπωτής πρέπει να έχει επιπρόσθετα μια δικτυακή διασύνδεση.
Ένας τέτοιος εκτυπωτής δουλεύει ως εξής:Μπορεί να καταλαβαίνει το πρωτόκολλο
LPD και να δημιουργεί ουρά
αναμονής για τις εργασίες που προέρχονται από απομακρυσμένους
υπολογιστές. Σε αυτή την περίπτωση, ενεργεί σαν ένας
κανονικός υπολογιστής που εκτελεί το
LPD. Ακολουθήστε την ίδια
διαδικασία με την ενότητα Εκτυπωτές
Εγκατεστημένοι σε Απομακρυσμένους Υπολογιστές για να
εγκαταστήσετε αυτόν τον εκτυπωτή.Μπορεί να υποστηρίζει σύνδεση δικτυακής ροής δεδομένων
(data stream). Σε αυτή την περίπτωση, συνδέετε
τον εκτυπωτή σε έναν υπολογιστή συνδεδεμένο στο δίκτυο, ο
οποίος θα είναι υπεύθυνος για την παροχέτευση των εργασιών
και την αποστολή τους στον εκτυπωτή. Η ενότητα Εκτυπωτές Με
Συνδέσεις Δικτύου δίνει μερικές συμβουλές για την
εγκατάσταση εκτυπωτών αυτού του τύπου.Εκτυπωτές Εγκατεστημένοι σε Απομακρυσμένους ΥπολογιστέςΤο σύστημα παροχέτευσης LPD έχει
ενσωματωμένη υποστήριξη για την αποστολή εργασιών σε άλλους
υπολογιστές που εκτελούν το LPD (ή που
είναι συμβατοί με το LPD). Αυτό το
χαρακτηριστικό σας επιτρέπει να εγκαταστήσετε έναν εκτυπωτή σε ένα
υπολογιστή και να έχετε πρόσβαση σε αυτόν από άλλους. Επίσης
δουλεύει και με εκτυπωτές που έχουν δικτυακές διασυνδέσεις που
καταλαβαίνουν το πρωτόκολλο LPD.Για να ενεργοποιήσετε αυτόν τον τύπο απομακρυσμένης εκτύπωσης,
εγκαταστήστε πρώτα έναν εκτυπωτή σε ένα υπολογιστή, τον
υπολογιστή εκτύπωσης (printer host),
χρησιμοποιώντας την απλή εγκατάσταση εκτυπωτή που περιγράφεται στην
ενότητα Βασικές Ρυθμίσεις Εκτυπωτών.
Κάντε όσες προχωρημένες ρυθμίσεις χρειάζεστε όπως αναφέρεται στις
Ρυθμίσεις Εκτυπωτών για
Προχωρημένους. Ελέγξτε τον εκτυπωτή και δείτε αν δουλεύει
με τα χαρακτηριστικά του LPD που έχετε
ενεργοποιήσει. Επίσης βεβαιωθείτε πως ο
τοπικός υπολογιστής (local host) είναι
εξουσιοδοτημένος να χρησιμοποιεί τις υπηρεσίες του
LPD στον
απομακρυσμένο υπολογιστή (remote host)
(δείτε Παρεμπόδιση
Εργασιών από Απομακρυσμένους Υπολογιστές).εκτυπωτέςδίκτυοδικτυακές εκτυπώσειςΕάν χρησιμοποιείτε εκτυπωτή με δικτυακή διασύνδεση που είναι
συμβατός με το LPD, τότε ο
ο υπολογιστής εκτύπωσης (printer host) είναι ο
εν λόγω εκτυπωτής, και το όνομα του εκτυπωτή
είναι το όνομα που έχετε ορίσει για τον εκτυπωτή. Δείτε την
τεκμηρίωση που συνοδεύει τον εκτυπωτή σας και/ή την κάρτα δικτύου
του.Αν χρησιμοποιείτε Hewlett Packard Laserjet με όνομα εκτυπωτή
text θα γίνονται αυτόματα οι μετατροπές από
LF σε CRLF, επομένως δεν χρειάζεται να τρέξετε το script
hpif.Επομένως, στους υπόλοιπους υπολογιστές όπου επιθυμείτε να έχετε
πρόσβαση στον εκτυπωτή, απλά κάντε μια καταχώριση στο αρχείο
/etc/printcap με τα ακόλουθα στοιχεία:Ονομάστε την καταχώριση όπως επιθυμείτε: Για δική σας
ευκολία πιθανώς να θέλετε να χρησιμοποιήσετε το ίδιο όνομα και
τα ίδια παρωνύμια με αυτά του υπολογιστή εκτύπωσης.Αφήστε την ικανότητα lp κενή, για την
ακρίβεια (:lp=:).Δημιουργήστε ένα κατάλογο spooling και προσδιορίστε την
τοποθεσία του με την ικανότητα sd. Το
LPD θα αποθηκεύει εδώ τις εργασίες
πριν την αποστολή τους στον υπολογιστή εκτύπωσης.Τοποθετήστε το όνομα του υπολογιστή εκτύπωσης στην ικανότητα
rm.Τοποθετήστε το όνομα του εκτυπωτή στην ικανότητα
rp, στον
υπολογιστή εκτύπωσης.Αυτό είναι όλο. Δεν χρειάζεται να δημιουργήσετε λίστα φίλτρων
μετατροπής, διαστάσεις σελίδας, ή οτιδήποτε άλλο στο
αρχείο/etc/printcap.Εδώ είναι ένα παράδειγμα. Ο υπολογιστής rose
έχει δύο εκτυπωτές, τον bamboo και τον
rattan. Θέλουμε να ενεργοποιήσουμε τις
εκτυπώσεις σε αυτούς τους εκτυπωτές για τους χρήστες του
απομακρυσμένου υπολογιστή orchid. Εδώ είναι το
αρχείο /etc/printcap του υπολογιστή
orchid (δείτε πιο πίσω στην ενότητα Ενεργοποίηση
Σελίδων Κεφαλίδας). Ήδη έχει μια καταχώριση για τον
εκτυπωτή teak. Εδώ προσθέσαμε τις απαραίτητες
καταχωρίσεις για τους δύο εκτυπωτές του υπολογιστή
rose:#
# /etc/printcap for host orchid - added (remote) printers on rose
#
#
# teak is local; it is connected directly to orchid:
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:\
:if=/usr/local/libexec/ifhp:\
:vf=/usr/local/libexec/vfhp:\
:of=/usr/local/libexec/ofhp:
#
# rattan is connected to rose; send jobs for rattan to rose:
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:lp=:rm=rose:rp=rattan:sd=/var/spool/lpd/rattan:
#
# bamboo is connected to rose as well:
#
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:lp=:rm=rose:rp=bamboo:sd=/var/spool/lpd/bamboo:Το μόνο που απομένει είναι να δημιουργήσουμε τους καταλόγους
spooling στον κόμβο orchid:&prompt.root; mkdir /var/spool/lpd/rattan/var/spool/lpd/bamboo
&prompt.root; chmod 770 /var/spool/lpd/rattan/var/spool/lpd/bamboo
&prompt.root; chown daemon:daemon /var/spool/lpd/rattan/var/spool/lpd/bambooΤώρα, οι χρήστες του orchid μπορούν να
εκτυπώνουν στον rattan και στον
bamboo. Αν, για παράδειγμα, ένας χρήστης του
orchid πληκτρολογήσει:
&prompt.user; lpr bamboo sushi-review.dvi
το σύστημα LPD στον
orchid θα αντιγράψει την εργασία στον κατάλογο
spooling
/var/spool/lpd/bamboo και θα
σημειώσει πως πρόκειται για εργασία DVI. Μόλις ο υπολογιστής
rose έχει διαθέσιμο χώρο στον κατάλογο spooling του
bamboo, τα δύο LPDs
θα μεταφέρουν το αρχείο στον rose. Το αρχείο θα
μπει σε ουρά αναμονής στον υπολογιστή rose έως
ότου εκτυπωθεί. Θα μετατραπεί από DVI σε &postscript; (αφού ο
bamboo είναι εκτυπωτής &postscript;) στον
υπολογιστή rose.Εκτυπωτές με Συνδέσεις ΔικτύουΣυχνά, όταν αγοράζετε κάρτα δικτύου για εκτυπωτή, έχετε τη
δυνατότητα επιλογής δύο εκδόσεων: η μία είναι προσομοίωση του
spooler (η πιο ακριβή έκδοση) ενώ η άλλη απλά σας επιτρέπει να
στέλνετε δεδομένα μέσω αυτής σαν να χρησιμοποιούσατε μια σειριακή
ή παράλληλη θύρα (η φτηνή έκδοση). Αυτή η ενότητα περιγράφει πως να
χρησιμοποιείτε την φτηνή έκδοση. Για την πιο ακριβή έκδοση μπορείτε
να βρείτε περισσότερες πληροφορίες στην προηγούμενη ενότητα Εκτυπωτές Εγκατεστημένοι
σε Απομακρυσμένους Υπολογιστές.Η μορφή του αρχείου /etc/printcap σας
επιτρέπει να ορίσετε τη διασύνδεση - σειριακή ή παράλληλη - που θα
χρησιμοποιήσετε, και (αν χρησιμοποιείτε σειριακή διασύνδεση) τον
ρυθμό baud, πιθανούς ελέγχους ροής, καθυστερήσεις για tabs,
μετατροπές για χαρακτήρες νέας γραμμής, και άλλα. Αλλά δεν υπάρχει
τρόπος να ορίσετε μια σύνδεση σε εκτυπωτή που ακούει σε θύρα TCP/IP
ή άλλο τύπο δικτύου.Για να στείλετε δεδομένα σε ένα δικτυακό εκτυπωτή, χρειάζεται
να αναπτύξετε προγράμματα επικοινωνίας που να καλούνται από φίλτρα
κειμένου και φίλτρα μετατροπής. Εδώ έχουμε ένα τέτοιο παράδειγμα:
το script netprint παίρνει όλα τα δεδομένα από
το standard input και τα στέλνει σε έναν εκτυπωτή συνδεδεμένο στο
δίκτυο. Ορίζουμε στο netprint το όνομα
του εκτυπωτή ως πρώτη παράμετρο, και τον αριθμό θύρας στην οποία
συνδέεται ως δεύτερη. Σημειώστε πως αυτός ο τρόπος υποστηρίζει
μόνο επικοινωνία μιας κατεύθυνσης (από το &os; στον εκτυπωτή).
Πολλοί δικτυακοί εκτυπωτές υποστηρίζουν αμφίδρομη επικοινωνία, και
είναι πολύ πιθανό να επιθυμείτε να εκμεταλλευτείτε τα προτερήματα
τους (για να ελέγχετε την κατάσταση του εκτυπωτή, για καταμέτρηση
εκτυπώσεων, κλπ.).#!/usr/bin/perl
#
# netprint - Text filter for printer attached to network
# Installed in /usr/local/libexec/netprint
#
$#ARGV eq 1 || die "Usage: $0 <printer-hostname> <port-number>";
$printer_host = $ARGV[0];
$printer_port = $ARGV[1];
require 'sys/socket.ph';
($ignore, $ignore, $protocol) = getprotobyname('tcp');
($ignore, $ignore, $ignore, $ignore, $address)
= gethostbyname($printer_host);
$sockaddr = pack('S n a4 x8', &AF_INET, $printer_port, $address);
socket(PRINTER, &PF_INET, &SOCK_STREAM, $protocol)
|| die "Can't create TCP/IP stream socket: $!";
connect(PRINTER, $sockaddr) || die "Can't contact $printer_host: $!";
while (<STDIN>) { print PRINTER; }
exit 0;Μπορείτε να χρησιμοποιήσετε αυτό το script σε διάφορα φίλτρα.
Ας υποθέσουμε πως έχουμε έναν εκτυπωτή γραμμής Diablo 750-N
συνδεδεμένο στο δίκτυο. Ο εκτυπωτής δέχεται δεδομένα προς εκτύπωση
στην θύρα 5100. Το όνομα του εκτυπωτή στο δίκτυο είναι
scrivener. Εδώ είναι το φίλτρο κειμένου για τον
εκτυπωτή:#!/bin/sh
#
# diablo-if-net - Text filter for Diablo printer `scrivener' listening
# on port 5100. Installed in /usr/local/libexec/diablo-if-net
#
exec /usr/libexec/lpr/lpf "$@" | /usr/local/libexec/netprint scrivener 5100Έλεγχος Πρόσβασης και Περιορισμοί στη Χρήση των Εκτυπωτώνεκτυπωτέςέλεγχος πρόσβασηςΑυτή η ενότητα δίνει πληροφορίες για τον έλεγχο πρόσβασης και τον
περιορισμό χρήσης των εκτυπωτών. Το σύστημα
LPD σας επιτρέπει να ελέγχετε ποιός μπορεί
να έχει πρόσβαση σε κάθε εκτυπωτή, τόσο τοπικά όσο και απομακρυσμένα,
και επίσης αν μπορούν οι χρήστες να εκτυπώνουν πολλαπλά αντίγραφα,
πόσο μεγάλες μπορούν να είναι οι εργασίες τους, και πόσο μεγάλες
μπορούν να γίνουν οι ουρές αναμονής (print queues).Περιορισμός Εκτύπωσης Πολλαπλών ΑντιγράφωνΤο σύστημα LPD διευκολύνει τους
χρήστες να εκτυπώσουν πολλαπλά αντίγραφα ενός αρχείου. Οι χρήστες
μπορούν να εκτυπώνουν εργασίες με
lpr (για
παράδειγμα) και να παίρνουν πέντε αντίγραφα κάθε αρχείου της
εργασίας εκτύπωσης. Το αν αυτό είναι καλό, εξαρτάται από
εσάς.Αν πιστεύετε πως τα πολλαπλά αντίγραφα δημιουργούν άσκοπη
καταπόνηση των εκτυπωτών σας, μπορείτε να απενεργοποιήσετε
την επιλογή στο &man.lpr.1; προσθέτοντας την
ικανότητα sc στο αρχείο
/etc/printcap. Όταν οι χρήστες αποστέλλουν
εργασίες με την επιλογή , θα βλέπουν:lpr: multiple copies are not allowedΣημειώστε πως αν έχετε ρυθμίσει πρόσβαση σε έναν εκτυπωτή
απομακρυσμένα (δείτε την ενότητα Εκτυπωτές Εγκατεστημένοι σε
Απομακρυσμένους Υπολογιστές), θα χρειαστεί να προσθέσετε
την ικανότητα sc σε όλα τα απομακρυσμένα αρχεία
/etc/printcap, διαφορετικά οι χρήστες θα
έχουν ακόμη την δυνατότητα να αποστέλλουν εργασίες πολλαπλών
αντιγράφων χρησιμοποιώντας διαφορετικό κόμβο.Εδώ είναι ένα παράδειγμα. Αυτό είναι το αρχείο
/etc/printcap για τον κόμβο
rose. Ο εκτυπωτής rattan
είναι δυνατό μηχάνημα και επιτρέπει την εκτύπωση πολλαπλών
αντιγράφων, αλλά ο εκτυπωτής laser bamboo είναι
πιο ευαίσθητο, επομένως θα απενεργοποιήσουμε τη δυνατότητα
πολλαπλών αντιγράφων προσθέτοντας την ικανότητα
sc:#
# /etc/printcap for host rose - restrict multiple copies on bamboo
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:sc:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
:if=/usr/local/libexec/psif:\
:df=/usr/local/libexec/psdf:Τώρα, θα χρειαστεί να προσθέσουμε επίσης την ικανότητα
sc στο αρχείο /etc/printcap
του κόμβου orchid (και ενώ βρισκόμαστε σε αυτό,
επιτρέψτε μας να απενεργοποιήσουμε τα πολλαπλά αντίγραφα για τον
εκτυπωτή teak):#
# /etc/printcap for host orchid - no multiple copies for local
# printer teak or remote printer bamboo
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:sc:\
:if=/usr/local/libexec/ifhp:\
:vf=/usr/local/libexec/vfhp:\
:of=/usr/local/libexec/ofhp:
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:lp=:rm=rose:rp=rattan:sd=/var/spool/lpd/rattan:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:lp=:rm=rose:rp=bamboo:sd=/var/spool/lpd/bamboo:sc:Χρησιμοποιώντας την ικανότητα sc,
προλαμβάνουμε την χρήση των εντολών
lpr ,
αλλά δεν έχουμε ακόμη την δυνατότητα να παρεμποδίσουμε τους χρήστες
να τρέξουν την εντολή &man.lpr.1; πολλές φορές, ή να αποστείλουν
το ίδιο αρχείο πολλές φορές σε μία μοναδική εργασία, όπως
εδώ:&prompt.user; lpr forsale.sign forsale.sign forsale.sign forsale.sign forsale.signΥπάρχουν πολλοί τρόποι πρόληψης αυτών των ενεργειών
(συμπεριλαμβάνοντας και την περίπτωση να το αγνοήσετε) που είστε
ελεύθεροι να εξερευνήσετε.Περιορίζοντας την Πρόσβαση σε ΕκτυπωτέςΜπορείτε να ελέγχετε ποιός μπορεί να εκτυπώνει σε ποιόν
εκτυπωτή χρησιμοποιώντας τους μηχανισμούς ομάδων (groups) του &unix;
και την ικανότητα rg στο
/etc/printcap. Απλά τοποθετήστε τους χρήστες
που θέλετε να έχουν πρόσβαση σε κάποιον εκτυπωτή σε μια
συγκεκριμένη ομάδα (χρηστών), και δηλώστε αυτή την ομάδα στην
ικανότητα rg.Όλοι οι χρήστες που δεν ανήκουν στην ομάδα (συμπεριλαμβανομένου
και του root) θα δέχονται το ακόλουθο μήνυμα:
lpr: Not a member of the restricted group
όταν προσπαθούν να εκτυπώσουν στον ελεγχόμενο εκτυπωτή.Όπως και με την ικανότητα sc
(περιορισμού πολλαπλών αντιγράφων), θα χρειαστεί να προσδιορίσετε
την rg στους απομακρυσμένους κόμβους που θα
έχουν πρόσβαση στους εκτυπωτές σας, αν νομίζετε πως αυτό είναι
σωστό (δείτε την ενότητα Εκτυπωτές Εγκατεστημένοι
σε Απομακρυσμένους Υπολογιστές).Για παράδειγμα, θα αφήσουμε για όλους ελεύθερη την πρόσβαση
στον εκτυπωτή rattan, αλλά μόνο οι χρήστες της
ομάδας artists θα μπορούν να χρησιμοποιήσουν τον
bamboo. Εδώ είναι το γνωστό μας
/etc/printcap για τον κόμβο
rose:#
# /etc/printcap for host rose - restricted group for bamboo
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
:if=/usr/local/libexec/psif:\
:df=/usr/local/libexec/psdf:Επιτρέψτε μας να μην αλλάξουμε το αρχείο
/etc/printcap από το άλλο παράδειγμα
(για τον υπολογιστή orchid). Φυσικά, οποιοσδήποτε
χρήστης του orchid μπορεί να εκτυπώσει στον
bamboo. Ίσως όμως να επιτρέπουμε μόνον σε
συγκεκριμένους χρήστες την πρόσβαση στον υπολογιστή
orchid, και θέλουμε αυτοί οι χρήστες να έχουν
πρόσβαση στον εκτυπωτή. Ή ίσως πάλι, και όχι.Επιτρέπεται μόνο μια περιορισμένη ομάδα ανά εκτυπωτή.Έλεγχος Μεγέθους των Απεσταλμένων Εργασιώνεργασίες εκτύπωσηςΑν πολλοί χρήστες έχουν πρόσβαση στους εκτυπωτές σας, πιθανώς
να χρειάζεται να θέσετε ένα ανώτατο όριο στο επιτρεπόμενο μέγεθος
αρχείων που μπορούν να αποστείλουν οι χρήστες για εκτύπωση. Ακόμα
και αν υπάρχει αρκετός χώρος στο σύστημα αρχείων που φιλοξενεί τους
καταλόγους spool, θα πρέπει ωστόσο να βεβαιωθείτε ότι επαρκεί για
τις εργασίες όλων των χρηστών.εργασίες εκτύπωσηςέλεγχοςΤο LPD σας επιτρέπει να
οριοθετήσετε το μέγιστο αριθμό bytes που περιέχει μια εργασία, με
την ικανότητα mx. Η μονάδα μέτρησης είναι σε
BUFSIZ blocks, τα οποία είναι 1024 bytes. Αν
θέσετε μηδέν σε αυτή την ικανότητα, δεν θα υπάρχουν όρια στο
μέγεθος των αρχείων. Ωστόσο, αν δεν έχει οριστεί η ικανότητα
mx, τότε θα χρησιμοποιείται η προεπιλεγμένη τιμή
των 1000 blocks.Το όριο εφαρμόζεται στα αρχεία μιας
εργασίας, και όχι στο συνολικό μέγεθος της
εργασίας.Το LPD δεν θα απορρίψει ένα αρχείο
που ξεπερνά το όριο μεγέθους που έχετε θέσει. Αντιθέτως, θα το
τοποθετήσει στην ουρά αναμονής με μέγεθος ίσο με το μέγιστο
επιτρεπτό, το οποίο και θα εκτυπώσει τελικά. Το υπόλοιπο αρχείο
απορρίπτεται. Αν αυτός είναι σωστός ή λανθασμένος τρόπος
αντιμετώπισης για την υπέρβαση του ορίου, είναι θέμα προς
συζήτηση.Ας οριοθετήσουμε στο παράδειγμα μας τους εκτυπωτές
rattan και bamboo. Επειδή
τα αρχεία &postscript; των artists τείνουν
προς μεγάλα μεγέθη, θα θέσουμε ένα όριο πέντε megabytes. Δεν θα
θέσουμε όρια για τον εκτυπωτή γραμμής απλού κειμένου:#
# /etc/printcap for host rose
#
#
# No limit on job size:
#
rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:mx#0:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:
#
# Limit of five megabytes:
#
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:mx#5000:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\
:if=/usr/local/libexec/psif:\
:df=/usr/local/libexec/psdf:Και πάλι, τα όρια εφαρμόζονται μόνο για τους τοπικούς χρήστες.
Αν έχετε ενεργοποιήσει απομακρυσμένη πρόσβαση για τους εκτυπωτές
σας, τα όρια αυτά δεν ισχύουν για τους απομακρυσμένους χρήστες. Θα
χρειαστεί να προσδιορίσετε με την ικανότητα mx
και τα απομακρυσμένα αρχεία /etc/printcap.
Δείτε την ενότητα Εκτυπωτές Εγκατεστημένοι σε
Απομακρυσμένους Υπολογιστές για περισσότερες πληροφορίες
σχετικά με τις εκτυπώσεις από απομακρυσμένους υπολογιστές.Υπάρχει και άλλος εξειδικευμένος τρόπος περιορισμού του μεγέθους
εργασιών για απομακρυσμένους εκτυπωτές. Δείτε την ενότητα Περιορισμός
Εργασιών από Απομακρυσμένους Υπολογιστές.Περιορισμός Εργασιών από Απομακρυσμένους ΥπολογιστέςΤο σύστημα παροχέτευσης LPD παρέχει
διάφορους τρόπους περιορισμού των εργασιών από απομακρυσμένους
υπολογιστές:Παρεμπόδιση υπολογιστώνΜπορείτε να ελέγχετε από ποιους απομακρυσμένους
υπολογιστές θα δέχεται αιτήσεις εκτύπωσης το τοπικό
LPD, χρησιμοποιώντας τα αρχεία
/etc/hosts.equiv και
/etc/hosts.lpd. Το
LPD ελέγχει να δει αν η εισερχόμενη
αίτηση προέρχεται από έναν υπολογιστή που αναφέρεται σε κάποιο
από τα δύο αρχεία. Αν όχι, το LPD
απορρίπτει την αίτηση.Η μορφή αυτών των αρχείων είναι απλή: ένα όνομα υπολογιστή
ανά γραμμή. Παρατηρήστε πως το αρχείο
/etc/hosts.equiv χρησιμοποιείται και από
το πρωτόκολλο &man.ruserok.3;, και επηρεάζει προγράμματα όπως
το &man.rsh.1; και το &man.rcp.1;, επομένως να είστε
προσεκτικοί.Για παράδειγμα, εδώ είναι το αρχείο
/etc/hosts.lpd στον υπολογιστή
rose:orchid
violet
madrigal.fishbaum.deΑυτό σημαίνει πως ο rose δέχεται
αιτήσεις από τους υπολογιστές orchid,
violet, και
madrigal.fishbaum.de. Αν
κάποιος άλλος υπολογιστής προσπαθήσει να αποκτήσει πρόσβαση
στο LPD του rose,
η εργασία θα απορριφθεί.Περιορισμοί στο ΜέγεθοςΜπορείτε να ελέγχετε πόσος ελεύθερος χώρος πρέπει να
απομένει στο σύστημα αρχείων όπου βρίσκεται ο κατάλογος
spool. Δημιουργήστε ένα αρχείο με όνομα
minfree στον κατάλογο spool για τον
τοπικό εκτυπωτή. Εισάγετε σε αυτό το αρχείο έναν αριθμό που
αντιπροσωπεύει πόσα blocks δίσκου (512 bytes) ελεύθερου χώρου
πρέπει να υπάρχουν για να είναι δεκτή μια απομακρυσμένη
εργασία.Αυτό σας επιτρέπει να είστε βέβαιοι πως οι απομακρυσμένοι
χρήστες δεν θα γεμίσουν το σύστημα αρχείων σας. Μπορείτε
επίσης να το χρησιμοποιήσετε για να δώσετε μερική
προτεραιότητα στους τοπικούς χρήστες: οι τοπικοί χρήστες θα
μπορούν να στέλνουν εργασίες στην ουρά αναμονής ακόμη και
όταν ο ελεύθερος χώρος του δίσκου έχει πέσει κάτω από τον
αριθμό που αναφέρεται στο αρχείο
minfree.Για παράδειγμα, ας προσθέσουμε ένα αρχείο
minfree για τον εκτυπωτή
bamboo. Εξετάζουμε το
/etc/printcap για να βρούμε τον κατάλογο
spool για αυτόν τον εκτυπωτή. Εδώ είναι η καταχώριση για τον
bamboo:bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\
:sh:sd=/var/spool/lpd/bamboo:sc:rg=artists:mx#5000:\
:lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:mx#5000:\
:if=/usr/local/libexec/psif:\
:df=/usr/local/libexec/psdf:Ο κατάλογος spool καθορίζεται στην ικανότητα
sd. Θα θέσουμε τρία megabytes (ισοδυναμεί
με 6144 disk blocks) ως το μέγεθος του ελεύθερου χώρου που
πρέπει να υπάρχει στο σύστημα αρχείων, ώστε το
LPD να δέχεται απομακρυσμένες
εργασίες:&prompt.root; echo 6144 > /var/spool/lpd/bamboo/minfreeΠεριορισμοί χρηστώνΜπορείτε να ελέγχετε ποιός απομακρυσμένος χρήστης μπορεί
να εκτυπώνει στους τοπικούς εκτυπωτές ορίζοντας την ικανότητα
rs στο /etc/printcap.
Όταν εμφανίζεται η rs σε μια καταχώριση
κάποιου τοπικά συνδεδεμένου εκτυπωτή, το
LPD θα δεχθεί εργασίες από
απομακρυσμένους υπολογιστές αν ο χρήστης
που αποστέλλει την εργασία έχει λογαριασμό στον τοπικό
υπολογιστή και με το ίδιο όνομα χρήστη. Διαφορετικά, το
LPD θα απορρίψει την
εργασία.Αυτή η ικανότητα είναι ιδιαίτερα χρήσιμη σε περιβάλλοντα
όπου υπάρχουν (για παράδειγμα) διαφορετικά επιχειρησιακά
τμήματα που μοιράζονται το δίκτυο, και κάποιοι χρήστες
πρέπει να υπερβαίνουν τα σύνορα του τμήματος. Δημιουργώντας
λογαριασμούς στα συστήματα σας, θα μπορούν να χρησιμοποιούν
τους εκτυπωτές σας από το δικό τους τμήμα της επιχείρησης.
Αν επιθυμείτε να τους επιτρέπετε να χρησιμοποιούν
μόνο τους εκτυπωτές και όχι τα
μηχανήματα σας, τότε μπορείτε να δημιουργήσετε
λογαριασμούς token, δίχως προσωπικούς
καταλόγους και με κέλυφος που δεν μπορεί να χρησιμοποιηθεί,
όπως το /usr/bin/false.Καταμέτρηση Χρήσης ΕκτυπωτώνκαταμέτρησηεκτυπωτήςΑποφασίσατε ότι χρειάζεται να χρεώνετε για τις εκτυπώσεις σας.
Και γιατί όχι; Το χαρτί και το μελάνι κοστίζουν χρήματα. Και
επιπλέον υπάρχει κόστος συντήρησης — οι εκτυπωτές αποτελούνται
από κινητά μέρη και έχουν την τάση να χαλάνε. Έχετε εξετάσει τους
εκτυπωτές σας, τον τρόπο που χρησιμοποιούνται, και το κόστος
συντήρησης και έχετε υπολογίσει μια χρέωση ανά σελίδα (ή ανά μέτρο,
ανά πόδι, ή άλλη μονάδα μέτρησης). Το θέμα είναι τώρα πως μπορείτε
πραγματικά να ξεκινήσετε να καταμετράτε τις εκτυπώσεις σας.Τα άσχημα νέα είναι πως το σύστημα παροχέτευσης του
LPD δεν παρέχει πολύ βοήθεια σε αυτόν τον
τομέα. Η καταμέτρηση εξαρτάται σε μεγάλο βαθμό από τον τύπο του
εκτυπωτή που χρησιμοποιείτε, τους τύπους αρχείων που εκτυπώνετε, και
τις δικές σας απαιτήσεις για την χρέωση των
εκτυπώσεων.Για την καταμέτρηση, θα πρέπει να μετατρέψετε το φίλτρο κειμένου
(για τη χρέωση εργασιών απλού κειμένου) του εκτυπωτή και τα φίλτρα
μετατροπής (για τη χρέωση όλων των άλλων τύπων αρχείων) ώστε να
μετρούν σελίδες ή να ζητούν να μάθουν από τον εκτυπωτή τον αριθμό των
εκτυπωμένων σελίδων. Δεν θα σας βοηθήσει ιδιαίτερα η χρήση φίλτρου
εξόδου, από τη στιγμή που δεν μπορεί να κάνει καταμέτρηση. Δείτε την
ενότητα Φίλτρα.Γενικά, υπάρχουν δύο τρόποι για να κάνετε καταμέτρηση:Η Περιοδική καταμέτρηση είναι ο πιο
συνηθισμένος τρόπος, πιθανώς γιατί είναι ο ευκολότερος. Κάθε φορά
που κάποιος εκτυπώνει μια εργασία, το φίλτρο δημιουργεί ένα
αρχείο καταγραφής όπου αναφέρει τον χρήστη, τον υπολογιστή, και
τον αριθμό των σελίδων. Κάθε μήνα, εξάμηνο, χρόνο, ή άλλη χρονική
περίοδο της αρεσκείας σας, συλλέγετε τα αρχεία καταγραφής για τους
διάφορους εκτυπωτές, λογαριάζετε τις σελίδες που αναλογούν στους
χρήστες, και χρεώνετε αναλόγως. Έπειτα σβήνετε τα στοιχεία από τα
αρχεία καταγραφής, ξεκινώντας από καθαρή κατάσταση για την επόμενη
περίοδο.Η Καταμέτρηση κατά τη χρήση είναι
λιγότερο γνωστή, ίσως επειδή είναι πιο δύσκολος τρόπος. Σε αυτή
τη μέθοδο τα φίλτρα χρεώνουν τους χρήστες για τις εκτυπώσεις τους
αμέσως μόλις αυτές πραγματοποιηθούν. Όπως και με την καταγραφή
χρήσης δίσκου (disk quotas), η καταμέτρηση είναι άμεση. Μπορείτε
να προλαμβάνετε την χρήση εκτυπωτών από χρήστες που έχουν χτυπήσει
κόκκινο, και μπορείτε να παρέχετε στους χρήστες ένα τρόπο για να
ελέγχουν και να ρυθμίζουν τον όγκο εκτυπώσεων (print
quotas). Αλλά αυτή η μέθοδος προϋποθέτει λίγο κώδικα
βάσεων δεδομένων για την καταγραφή χρηστών και των εν λόγω
μεγεθών.Το σύστημα παροχέτευσης LPD
υποστηρίζει εύκολα και τις δύο μεθόδους: από τη στιγμή που πρέπει
εσείς να παρέχετε τα φίλτρα (τις περισσότερες φορές), θα πρέπει
επίσης να παρέχετε και τον κώδικα καταμέτρησης. Αλλά υπάρχει και ένα
καλό σε αυτή την υπόθεση: έχετε απεριόριστη ευελιξία στις μεθόδους
καταμέτρησης. Για παράδειγμα, μπορείτε να επιλέξετε περιοδική ή κατά
τη χρήση καταμέτρηση. Μπορείτε να επιλέξετε τις πληροφορίες που θα
καταγράφονται: ονόματα χρηστών, ονόματα υπολογιστών, τύπους εργασιών,
τυπωμένες σελίδες, τετραγωνικά μέτρα χαρτιού που χρησιμοποιήθηκε,
πόσος χρόνος χρειάστηκε για να γίνει η εκτύπωση, και πολλά ακόμα. Και
όλα αυτά γίνονται μετατρέποντας τα φίλτρα για να αποθηκεύουν αυτές τις
πληροφορίες.Γρήγορη και Πρόχειρη Καταμέτρηση ΕκτυπώσεωνΤο &os; διατίθεται με δύο προγράμματα που μπορούν να παρέχουν
άμεσα απλή περιοδική καταμέτρηση. Είναι το φίλτρο κειμένου
lpf, που περιγράφεται στην ενότητα lpf: ένα Φίλτρο Κειμένου,
και το &man.pac.8;, ένα πρόγραμμα που συλλέγει και αθροίζει
καταχωρίσεις από αρχεία καταμετρήσεων.Όπως αναφέραμε στην ενότητα των φίλτρων (Φίλτρα), το
LPD ξεκινά τα φίλτρα κειμένου και
μετατροπής περνώντας στην γραμμή εντολών του φίλτρου και το όνομα
του αρχείου καταγραφής. Τα φίλτρα μπορούν να χρησιμοποιήσουν αυτή
την παράμετρο για να ξέρουν που να γράφουν τις καταχωρίσεις
καταμέτρησης. Το όνομα του αρχείου καταμέτρησης φαίνεται στην
ικανότητα af στο
/etc/printcap, και αν δεν ορίζεται η πλήρης
διαδρομή του, χρησιμοποιείται η σχετική διαδρομή ως προς τον
κατάλογο spool.Το LPD ξεκινά το
lpf με παραμέτρους πλάτους και μήκους σελίδας
(από τις ικανότητες pw και
pl). Το lpf χρησιμοποιεί
αυτές τις παραμέτρους για να προσδιορίσει την ποσότητα χαρτιού που
χρησιμοποιήθηκε. Μετά την αποστολή του αρχείου στον εκτυπωτή,
γράφει μια καταχώριση καταμέτρησης στο αρχείο καταγραφής. Οι
καταχωρίσεις μοιάζουν με τις παρακάτω:2.00 rose:andy
3.00 rose:kelly
3.00 orchid:mary
5.00 orchid:mary
2.00 orchid:zhangΘα πρέπει να χρησιμοποιείτε ξεχωριστό αρχείο καταγραφής για
κάθε εκτυπωτή, αφού το lpf δεν έχει ενσωματωμένη
δυνατότητα κλειδώματος αρχείου (file locking), και δύο
lpf μπορούν να καταστρέψουν το ένα την
καταχώριση του άλλου αν πρόκειται να γράψουν ταυτόχρονα στο ίδιο
αρχείο. Ένας εύκολος τρόπος για να βεβαιώσετε την μοναδικότητα
αρχείου καταγραφής ανά εκτυπωτή είναι να χρησιμοποιήσετε την
ικανότητα af=acct στο
/etc/printcap. Έτσι, κάθε αρχείο καταγραφής
θα βρίσκεται στον κατάλογο spool του αντίστοιχου εκτυπωτή, σε ένα
αρχείο με όνομα acct.Όταν είστε έτοιμοι να χρεώσετε τους χρήστες για τις εκτυπώσεις,
εκτελέστε το πρόγραμμα &man.pac.8;. Απλά μεταβείτε στον κατάλογο
spool για τον εκτυπωτή που κάνετε καταμέτρηση και πληκτρολογήστε
pac. Θα εμφανιστεί ένας απολογισμός με χρεώσεις
σε δολάρια, όπως βλέπετε στη συνέχεια: Login pages/feet runs price
orchid:kelly 5.00 1 $ 0.10
orchid:mary 31.00 3 $ 0.62
orchid:zhang 9.00 1 $ 0.18
rose:andy 2.00 1 $ 0.04
rose:kelly 177.00 104 $ 3.54
rose:mary 87.00 32 $ 1.74
rose:root 26.00 12 $ 0.52
total 337.00 154 $ 6.74Παρακάτω είναι οι παράμετροι που δέχεται το &man.pac.8;:Για ποιό printer να
κάνει απολογισμό. Αυτή η επιλογή δουλεύει μόνο αν υπάρχει η
πλήρης διαδρομή στην ικανότητα af στο
/etc/printcap.Ταξινομεί το αποτέλεσμα ανά κόστος αντί της αλφαβητικής
ταξινόμησης των χρηστών.Αγνοεί το όνομα του υπολογιστή στα αρχεία καταγραφής. Με
αυτή την επιλογή, ο χρήστης smith στον
υπολογιστή alpha είναι ο ίδιος χρήστης με τον
smith στον υπολογιστή
gamma. Χωρίς την επιλογή αυτή, είναι
διαφορετικοί χρήστες.Υπολογίζει τις χρεώσεις με
price (τιμή) σε δολάρια ανά σελίδα
ή ανά πόδι αντί για την τιμή από την ικανότητα
pc στο /etc/printcap,
ή αλλιώς δύο σεντς (από προεπιλογή). Μπορείτε να ορίσετε
ως price μια τιμή με δεκαδικά
ψηφία (floating point).Αντιστρέφει την σειρά ταξινόμησης.Δημιουργεί ένα αρχείο απολογισμού των καταμετρήσεων και
καθαρίζει τα περιεχόμενα των αρχείων καταγραφής.name…Τυπώνει πληροφορίες αναφοράς μόνο για τα συγκεκριμένα
name (ονόματα) χρηστών.Στον προεπιλεγμένο απολογισμό που παράγει το &man.pac.8;,
βλέπετε των αριθμό των τυπωμένων σελίδων ανά χρήστη από τους
διάφορους υπολογιστές. Αν, στο χώρο σας, ο υπολογιστής δεν έχει
σημασία (γιατί οι χρήστες μπορούν να χρησιμοποιήσουν οποιονδήποτε
θέλουν), εκτελέστε την εντολή
pac , για να
δημιουργήσετε τον ακόλουθο απολογισμό: Login pages/feet runs price
andy 2.00 1 $ 0.04
kelly 182.00 105 $ 3.64
mary 118.00 35 $ 2.36
root 26.00 12 $ 0.52
zhang 9.00 1 $ 0.18
total 337.00 154 $ 6.74Για τον ορισμό ποσοστού χρέωσης σε δολάρια, το &man.pac.8;
χρησιμοποιεί την ικανότητα pc στο αρχείο
/etc/printcap (προεπιλεγμένη τιμή 200, ή 2
σεντς ανά σελίδα). Προσδιορίστε σε αυτήν την ικανότητα, σε
εκατοστά του σεντ, την τιμή ανά σελίδα ή ανά πόδι που θέλετε να
χρεώνετε για τις εκτυπώσεις. Μπορείτε να προσπεράσετε αυτή την
τιμή όταν τρέχετε το &man.pac.8; με την επιλογή
. H μονάδα μέτρησης για την επιλογή
είναι σε δολάρια, όχι σε εκατοστά του σεντ.
Για παράδειγμα,
&prompt.root; pac
ορίζει κόστος κάθε σελίδας ένα δολάριο και πενήντα σεντς.
Μπορείτε πραγματικά να έχετε πολλά έσοδα χρησιμοποιώντας αυτές τις
χρεώσεις.Τέλος, εκτελώντας pac θα
αποθηκεύσετε τις πληροφορίες του απολογισμού σε ένα αρχείο
καταγραφής απολογισμού, που θα έχει το ίδιο όνομα με το αρχείο
καταγραφής του εκτυπωτή, αλλά με κατάληξη _sum.
Έπειτα καθαρίζεται το αρχείο καταγραφής. Όταν εκτελέσετε πάλι το
&man.pac.8;, θα ξαναδιαβάσει το αρχείο απολογισμού, για να πάρει τα
αρχικά σύνολα, και θα προσθέσει τις πληροφορίες από το κανονικό
αρχείο καταγραφής.Πως Μπορείτε να Μετρήσετε τις Τυπωμένες Σελίδες;Για να μετρήσετε τις τυπωμένες σελίδες με έστω στοιχειώδη
λεπτομέρεια, θα πρέπει να προσδιορίσετε πόσο χαρτί χρειάζεται μια
εργασία. Αυτό είναι το ουσιαστικότερο πρόβλημα στην καταμέτρηση
εκτυπώσεων.Για εργασίες απλού κειμένου, το πρόβλημα δεν είναι δύσκολο να
λυθεί: Μετράτε πόσες γραμμές υπάρχουν σε μια εργασία και τις
συγκρίνετε με πόσες γραμμές μπορεί να τυπώσει ο εκτυπωτής σας σε
μια σελίδα. Μην ξεχάσετε να συμπεριλάβετε τα backspaces που
προκαλούν υπερτύπωση, ή επιμήκης λογικές γραμμές που αναδιπλώνονται
σε περισσότερες από μία φυσικές γραμμές.Το φίλτρο κειμένου lpf (που παρουσιάσαμε στο
lpf: ένα Φίλτρο
Κειμένου) λαμβάνει υπόψιν του αυτά τα στοιχεία όταν κάνει
καταμέτρηση. Αν γράφετε κάποιο φίλτρο κειμένου που χρειάζεται να
κάνει καταμέτρηση, ίσως να θέλετε να ελέγξετε τον πηγαίο κώδικα
του lpf.Πως χειρίζεστε όμως τους υπόλοιπους τύπους αρχείων;Για τις μετατροπές από DVI-σε-LaserJet ή από
DVI-σε-&postscript;, μπορείτε να κάνετε το φίλτρο σας να αναλύει
την έξοδο του dvilj ή του
dvips και να ελέγχει πόσες σελίδες
δημιουργήθηκαν από τη μετατροπή. Ίσως μπορέσετε να κάνετε κάτι
παρόμοιο και με διαφορετικούς τύπους αρχείων και προγράμματα
μετατροπήςΩστόσο, όλες αυτές οι μέθοδοι έχουν το μειονέκτημα πως ο
εκτυπωτής πιθανώς στην πραγματικότητα να μην εκτυπώσει όλες τις
σελίδες. Για παράδειγμα, θα μπορούσε να μπλοκαριστεί το χαρτί, ή να
τελειώσει το τόνερ, ή ακόμη να συμβεί και έκρηξη —ενώ ο
χρήστης θα συνεχίσει να χρεώνεται.Τι θα μπορούσατε να κάνετε;Υπάρχει μόνο ένας σίγουρος τρόπος για να
κάνετε καταμέτρηση ακριβείας. Να πάρετε έναν
εκτυπωτή που να μπορεί να σας πει πόσο χαρτί χρησιμοποιεί, και να
τον συνδέσετε μέσω σειριακής θύρας ή μέσω δικτύου. Σχεδόν
όλοι οι εκτυπωτές &postscript; υποστηρίζουν αυτή την δυνατότητα. Θα
βρείτε και άλλους τύπους και κατασκευαστές που κάνουν επίσης το ίδιο
(για παράδειγμα, οι laser εκτυπωτές δικτύου της Imagen).
Μετατρέψτε τα φίλτρα για αυτούς τους εκτυπωτές ώστε να καταγράφουν
τις τυπωμένες σελίδες μετά την ολοκλήρωση της εκάστοτε εργασίας
εκτύπωσης, και ρυθμίστε τους να κρατούν αρχεία καταγραφής με
μόνο αυτή την πληροφορία. Δεν χρειάζεται
καταμέτρηση γραμμών ούτε αναφορά σφαλμάτων.Φυσικά, πάντα έχετε τη δυνατότητα να φανείτε γενναιόδωρος και να
παρέχετε τις εκτυπώσεις σας δωρεάν.Χρήση ΕκτυπωτώνprintersusageΑυτή η ενότητα περιγράφει πως να χρησιμοποιείτε τους εκτυπωτές που
έχετε εγκαταστήσει στο &os;. Οι βασικές εντολές για τον τελικό χρήστη
είναι οι ακόλουθες:&man.lpr.1;Εκτύπωση εργασιών&man.lpq.1;Έλεγχος ουράς αναμονής (print queue) του εκτυπωτή&man.lprm.1;Διαγραφή εργασιών από την ουρά αναμονήςΥπάρχει επίσης μια εντολή για τους διαχειριστές, η &man.lpc.8;,
που περιγράφεται στην ενότητα Διαχείριση Εκτυπωτών, και
χρησιμοποιείται για να ελέγχει τους εκτυπωτές και τις ουρές
αναμονής.Και οι τρεις εντολές &man.lpr.1;, &man.lprm.1;, και &man.lpq.1;
δέχονται την επιλογή
με την
οποία καθορίζεται σε ποιον εκτυπωτή ή ουρά αναμονής θα ενεργήσουν, όπως
αναφέρεται στο αρχείο /etc/printcap. Αυτό σας
επιτρέπει να αποστείλετε, να διαγράψετε, και να ελέγξετε εργασίες σε
διάφορους εκτυπωτές. Αν δεν χρησιμοποιείτε την επιλογή
, τότε οι εντολές χρησιμοποιούν τον εκτυπωτή που
αναφέρεται στη μεταβλητή περιβάλλοντος PRINTER. Τέλος,
αν δεν έχετε θέσει μια μεταβλητή περιβάλλοντος PRINTER,
οι εντολές εκτελούνται με τον προεπιλεγμένο εκτυπωτή που ονομάζεται
lp.Από δω και στο εξής, με την ορολογία προεπιλεγμένος
εκτυπωτής θα εννοούμε τον εκτυπωτή που αναφέρεται στην
μεταβλητή περιβάλλοντος PRINTER, ή αν δεν υπάρχει, τον
εκτυπωτή με το όνομα lp.Εκτύπωση ΕργασιώνΓια να εκτυπώσετε αρχεία, πληκτρολογήστε:&prompt.user; lpr filename...printingΘα εκτυπωθούν όλα τα αναφερόμενα αρχεία στον προεπιλεγμένο
εκτυπωτή. Αν δεν αναφέρετε αρχεία, το &man.lpr.1; διαβάζει
δεδομένα από το standard input. Για παράδειγμα, αυτή η εντολή
θα εκτυπώσει μερικά σημαντικά αρχεία του συστήματος:&prompt.user; lpr /etc/host.conf/etc/hosts.equivΓια να επιλέξετε ένα συγκεκριμένο εκτυπωτή, πληκτρολογήστε:&prompt.user; lpr printer-namefilename...Στο παράδειγμα μας θα εκτυπωθεί μια μεγάλη λίστα αρχείων του
τρέχοντος καταλόγου στον εκτυπωτή που ονομάζεται
rattan:&prompt.user; ls | lpr rattanΑφού δεν αναφέρονται ονόματα αρχείων στην εντολή &man.lpr.1;,
το lpr διαβάζει τα δεδομένα που θα εκτυπώσει από
το standard input, τα οποία είναι η έξοδος της εντολής
ls .Η εντολή &man.lpr.1; μπορεί να δεχθεί ένα μεγάλο αριθμό επιλογών
για να ελέγχει την μορφοποίηση, να μετατρέπει αρχεία, να δημιουργεί
πολλαπλά αντίγραφα, κ.λ.π. Για περισσότερες πληροφορίες, δείτε την
ενότητα Επιλογές Εκτύπωσης.Έλεγχος Εργασιώνεκτύπωση εργασιώνΌταν εκτυπώνετε με το &man.lpr.1;, τα δεδομένα που θέλετε να
εκτυπώσετε τοποθετούνται σε ένα πακέτο (package) που ονομάζεται
εργασία εκτύπωσης (print job), η οποία αποστέλλεται
στο σύστημα παροχέτευσης LPD. Κάθε
εκτυπωτής έχει μια ουρά αναμονής εργασιών, και η εργασία σας
αναμένει μαζί με άλλες δικές σας και άλλων χρηστών. Ο εκτυπωτής τις
εκτυπώνει με την σειρά άφιξης στην ουρά αναμονής.Για να εμφανίσετε την ουρά αναμονής για τον προεπιλεγμένο
εκτυπωτή, πληκτρολογήστε &man.lpq.1;. Για κάποιον συγκεκριμένο
εκτυπωτή, χρησιμοποιήστε την επιλογή . Για
παράδειγμα, η εντολή:
&prompt.user; lpq bamboo
εμφανίζει την ουρά αναμονής για τον εκτυπωτή με το όνομα
bamboo. Ακολουθεί ένα παράδειγμα εξόδου της
εντολής lpq:bamboo is ready and printing
Rank Owner Job Files Total Size
active kelly 9 /etc/host.conf, /etc/hosts.equiv 88 bytes
2nd kelly 10 (standard input) 1635 bytes
3rd mary 11 ... 78519 bytesΕμφανίζονται τρεις εργασίες στη λίστα αναμονής για τον
bamboo. Στην πρώτη εργασία, που έχει σταλεί από
τον χρήστη kelly, έχει αποδοθεί ο
αριθμός εργασίας (job number) 9. Κάθε εργασία ενός
εκτυπωτή χαρακτηρίζεται από ένα μοναδικό τέτοιο αριθμό. Τις
περισσότερες φορές μπορείτε να τον αγνοήσετε, αλλά θα τον χρειαστείτε
αν θέλετε να διαγράψετε κάποια εργασία. Δείτε την ενότητα Διαγραφή Εργασιών για
περισσότερες πληροφορίες.Η εργασία με το νούμερο εννέα αποτελείται από δύο αρχεία. Τα
πολλαπλά αρχεία που δόθηκαν στη γραμμή εντολών του &man.lpr.1;
θεωρούνται μέρος μίας μόνο εργασίας. Αυτή είναι και η τρέχουσα ενεργή
εργασία (παρατηρήστε τη λέξη active της στήλης
Rank), που σημαίνει πως η εργασία εκτυπώνεται αυτή τη
στιγμή. Η δεύτερη εργασία αποτελείται από δεδομένα που έχουν περάσει
στην standard input της εντολής &man.lpr.1;. Η τρίτη εργασία
προέρχεται από τον χρήστη mary, και πρόκειται
για μια πολύ ογκώδη εργασία. Το όνομα διαδρομής του αρχείου που
πρόκειται να εκτυπωθεί είναι πολύ μεγάλο για να χωρέσει στη στήλη,
και για αυτό η εντολή &man.lpq.1; απλά το συμβολίζει με τρεις
τελείες.Η πρώτη γραμμή της εξόδου από την &man.lpq.1; είναι επίσης πολύ
χρήσιμη: μας ενημερώνει για το τι κάνει την παρούσα στιγμή ο
εκτυπωτής (ή τουλάχιστον για το τι πιστεύει το
LPD πως κάνει ο εκτυπωτής αυτή τη
στιγμή).Η εντολή &man.lpq.1; επίσης υποστηρίζει την επιλογή
για να δημιουργήσει μια μεγάλη, λεπτομερή λίστα.
Ακολουθεί ένα παράδειγμα του
lpq :waiting for bamboo to become ready (offline ?)
kelly: 1st [job 009rose]
/etc/host.conf 73 bytes
/etc/hosts.equiv 15 bytes
kelly: 2nd [job 010rose]
(standard input) 1635 bytes
mary: 3rd [job 011rose]
/home/orchid/mary/research/venus/alpha-regio/mapping 78519 bytesΑφαίρεση ΕργασιώνΑν αλλάξετε γνώμη για μια εργασία που είχατε αποστείλει προς
εκτύπωση, μπορείτε να την αφαιρέσετε από την λίστα αναμονής με την
εντολή &man.lprm.1;. Μπορείτε ακόμη να χρησιμοποιήσετε την
&man.lprm.1; για να αφαιρέσετε μια ενεργή εργασία, αλλά πιθανόν
κάποιο μέρος της να εκτυπωθεί έτσι και αλλιώς.Για να αφαιρέσετε μια εργασία από τον προεπιλεγμένο εκτυπωτή,
χρησιμοποιήστε πρώτα την &man.lpq.1; για να βρείτε τον αριθμό της.
Έπειτα πληκτρολογήστε:&prompt.user; lprm job-numberΓια να αφαιρέσετε μια εργασία από κάποιον συγκεκριμένο εκτυπωτή,
προσθέστε την επιλογή . Η ακόλουθη εντολή αφαιρεί
την εργασία με αριθμό 10 από την ουρά αναμονής για τον εκτυπωτή
bamboo:&prompt.user; lprm bamboo 10Η εντολή &man.lprm.1; έχει μερικές συντομεύσεις:lprm -Αφαιρεί όλες τις εργασίες (για τον προεπιλεγμένο εκτυπωτή)
που ανήκουν σε εσάς.lprm userΑφαιρεί όλες τις εργασίες (για τον προεπιλεγμένο εκτυπωτή)
που ανήκουν στον χρήστη (user).
Ο υπερχρήστης (superuser) μπορεί να αφαιρέσει εργασίες άλλων
χρηστών, εσείς μπορείτε να αφαιρέσετε μόνο τις δικές σας.lprmΗ εντολή &man.lprm.1; χωρίς αριθμό εργασίας, όνομα χρήστη,
ή που εμφανίζεται στην γραμμή εντολών,
αφαιρεί την τρέχουσα ενεργή εργασία στον προεπιλεγμένο
εκτυπωτή, αν ανήκει σε σάς. Ο υπερχρήστης (superuser) μπορεί
να αφαιρέσει οποιαδήποτε ενεργή εργασία.Για να δουλέψετε σε κάποιον συγκεκριμένο εκτυπωτή αντί του
προεπιλεγμένου, απλά χρησιμοποιήστε την επιλογή
με τις παραπάνω συντομεύσεις. Για παράδειγμα, η ακόλουθη εντολή
αφαιρεί όλες τις εργασίες του τρέχοντος χρήστη από την ουρά αναμονής
του εκτυπωτή rattan:&prompt.user; lprm rattan -Αν εργάζεστε σε περιβάλλον δικτύου, η &man.lprm.1; θα σας
επιτρέψει να αφαιρέσετε εργασίες μόνο από τον υπολογιστή που
τις έχετε στείλει, ανεξάρτητα αν ο εκτυπωτής είναι προσβάσιμος και
από άλλους υπολογιστές. Η ακόλουθη εντολή επιδεικνύει ακριβώς αυτό
το χαρακτηριστικό:&prompt.user; lpr rattan myfile
&prompt.user; rlogin orchid
&prompt.user; lpq rattan
Rank Owner Job Files Total Size
active seeyan 12 ... 49123 bytes
2nd kelly 13 myfile 12 bytes
&prompt.user; lprm rattan 13
rose: Permission denied
&prompt.user; logout
&prompt.user; lprm rattan 13
dfA013rose dequeued
cfA013rose dequeued
Πέρα από το Απλό Κείμενο: Περισσότερες Επιλογές ΕκτύπωσηςΗ εντολή &man.lpr.1; υποστηρίζει μια γκάμα επιλογών για τον έλεγχο
μορφοποίησης κειμένου, μετατροπής γραφικών και άλλων μορφών αρχείων,
παραγωγής πολλαπλών αντιγράφων, χειρισμού εργασιών, και άλλα. Οι
επιλογές αυτές περιγράφονται στην παρούσα ενότητα.Επιλογές Μορφοποίησης και ΜετατροπήςΟι ακόλουθες επιλογές της &man.lpr.1; ελέγχουν την μορφοποίηση
των αρχείων της εργασίας εκτύπωσης. Χρησιμοποιήστε τις αν η εργασία
σας δεν περιέχει απλό κείμενο ή αν επιθυμείτε να μορφοποιήσετε απλό
κείμενο διαμέσου του εργαλείου &man.pr.1;.&tex;Για παράδειγμα, η ακόλουθη εντολή τυπώνει ένα αρχείο DVI (από το
σύστημα στοιχειοθεσίας &tex;) με όνομα
fish-report.dvi
στον εκτυπωτή με όνομα bamboo:&prompt.user; lpr bamboo fish-report.dviΑυτές οι επιλογές εφαρμόζονται σε κάθε αρχείο της εργασίας, και
έτσι δεν μπορείτε να αναμίξετε (ας πούμε) αρχεία DVI και ditroff
μαζί στην ίδια εργασία. Απλώς στείλτε τα αρχεία σαν διαφορετικές
εργασίες, χρησιμοποιώντας διαφορετικές επιλογές μετατροπής για κάθε
εργασία.Όλες αυτές οι επιλογές εκτός της και της
απαιτούν εγκατεστημένα φίλτρα μετατροπής για
τον εκτυπωτή προορισμού. Για παράδειγμα, η επιλογή
απαιτεί το φίλτρο μετατροπής DVI. Η ενότητα
Φίλτρα
Μετατροπής δίνει περισσότερες λεπτομέρειες.Εκτυπώνει αρχεία cifplot.Εκτυπώνει αρχεία DVI.Εκτυπώνει αρχεία κειμένου FORTRAN.Εκτυπώνει δεδομένα σχεδίασης (plot).Εκτυπώνει την έξοδο με εσοχή
number στηλών. Αν παραλείψετε
το number, η εσοχή θα είναι
8 στήλες. Αυτή η επιλογή δουλεύει μόνο με ορισμένα φίλτρα
μετατροπής.Μην τοποθετείτε κενό διάστημα μεταξύ του
και του αριθμού.Εκτυπώνει δεδομένα κειμένου κατά γράμμα (literal),
συμπεριλαμβάνοντας και τους χαρακτήρες ελέγχου.Εκτυπώνει δεδομένα ditroff (δεδομένα troff ανεξάρτητα από
τη συσκευή).-pΜορφοποιεί το απλό κείμενο με την &man.pr.1; πριν να το
εκτυπώσει. Δείτε την &man.pr.1; για περισσότερες
πληροφορίες.Χρησιμοποιεί το title στην
κεφαλίδα του &man.pr.1; αντί για το όνομα αρχείου. Αυτή η
επιλογή επιδρά μόνο όταν χρησιμοποιείται με την επιλογή
Εκτυπώνει δεδομένα troff.Εκτυπώνει δεδομένα ράστερ.Εδώ είναι ένα παράδειγμα: αυτή η εντολή εκτυπώνει μια κομψά
μορφοποιημένη έκδοση της σελίδας βοηθείας &man.ls.1; στον
προεπιλεγμένο εκτυπωτή:&prompt.user; zcat /usr/share/man/man1/ls.1.gz | troff -man | lpr Η εντολή &man.zcat.1; αποσυμπιέζει τον πηγαίο κώδικα της
σελίδας βοηθείας &man.ls.1; και τον περνάει στην εντολή
&man.troff.1;, η οποία τον μορφοποιεί και δημιουργεί στην έξοδο της
δεδομένα GNU troff, τα αποστέλλει στην &man.lpr.1;, η οποία με
τη σειρά της αποστέλλει την εργασία στο
LPD. Επειδή χρησιμοποιήσαμε την επιλογή
στο &man.lpr.1;, ο spooler, κατά τη διάρκεια της
εκτύπωσης, θα μετατρέψει την έξοδο GNU troff σε ένα τύπο δεδομένων
κατανοητό από τον προεπιλεγμένο εκτυπωτή.Επιλογές Χειρισμού ΕργασιώνΟι ακόλουθες επιλογές του &man.lpr.1; οδηγούν το
LPD να χειριστεί τις εργασίες με ειδικό
τρόπο:-# copiesΔημιουργεί έναν αριθμό copies
(αντιγράφων) για κάθε αρχείο της εργασίας αντί για ένα μόνο
αντίγραφο. Ο διαχειριστής μπορεί να απενεργοποιήσει αυτή την
επιλογή για να μειώσει την καταπόνηση των εκτυπωτών και να
ενθαρρύνει την χρήση φωτοτυπικών μηχανημάτων. Δείτε την
ενότητα Περιορισμός
Εκτύπωσης Πολλαπλών Αντιγράφων.Σε αυτό το παράδειγμα, εκτυπώνουμε στον προεπιλεγμένο
εκτυπωτή τρία αντίγραφα του
parser.c
και τρία αντίγραφα του
parser.h:&prompt.user; lpr parser.c parser.h-mΑποστολή mail μετά την ολοκλήρωση εκτύπωσης της εργασίας.
Με αυτή την επιλογή, το σύστημα
LPD στέλνει mail στο λογαριασμό
σας μόλις ολοκληρωθεί ο χειρισμός εκτύπωσης της εργασίας
σας. Στο μήνυμα του, θα σας ενημερώσει αν η εργασία
ολοκληρώθηκε επιτυχώς ή αν παρουσιάστηκε σφάλμα και (συχνά)
ποιό ήταν το σφάλμα.-sΔεν αντιγράφει τα αρχεία στον κατάλογο spool, αλλά
αντί για αυτό, δημιουργεί συμβολικές συντομεύσεις (symbolic
links) προς αυτά.Αν εκτυπώνετε μια μεγάλη εργασία, ίσως θέλετε να
χρησιμοποιήσετε αυτή την επιλογή. Θα σας γλυτώσει χώρο στον
κατάλογο spool (ίσως η εργασία σας να υπερβαίνει τον ελεύθερο
χώρο του συστήματος αρχείων που περιέχει τον κατάλογο
spool). Επίσης θα κερδίσετε χρόνο αφού το
LPD δεν θα χρειαστεί να αντιγράψει
όλη την εργασία σας στον κατάλογο spool.Αυτό, ωστόσο, έχει και ένα μειονέκτημα: από τη στιγμή που
το LPD θα κάνει αναφορά κατευθείαν
στο πρωτότυπο αρχείο, δεν θα έχετε δυνατότητα να μετατρέψετε
ή να διαγράψετε το αρχείο έως ότου εκτυπωθεί.Αν εκτυπώνετε σε ένα απομακρυσμένο εκτυπωτή, το
LPD πιθανώς θα χρειαστεί τελικά
να αντιγράψει τα αρχεία από τον τοπικό υπολογιστή στον
απομακρυσμένο, επομένως η επιλογή σε
αυτή την περίπτωση εξοικονομεί χώρο στον τοπικό κατάλογο
spool, αλλά όχι στον απομακρυσμένο. Εξακολουθεί ωστόσο να
είναι ιδιαίτερα χρήσιμη.-rΑπομακρύνει τα αρχεία της εργασίας μετά την αντιγραφή
τους στον κατάλογο spool, ή μετά την εκτύπωση τους με την
επιλογή . Να είστε προσεκτικοί με αυτή
την επιλογή!Επιλογές Σελίδων ΚεφαλίδαςΑυτές οι επιλογές του &man.lpr.1; ρυθμίζουν το κείμενο που
κανονικά εμφανίζεται στην σελίδα κεφαλίδας της εργασίας. Αν οι
σελίδες κεφαλίδας παρεμποδίζονται για τον συγκεκριμένο εκτυπωτή,
αυτές οι επιλογές δεν έχουν καμία επίδραση. Δείτε την ενότητα
Σελίδες
Κεφαλίδας για πληροφορίες σχετικά με τις ρυθμίσεις των
σελίδων κεφαλίδας.-C textΑντικαθιστά το όνομα υπολογιστή στη σελίδα κεφαλίδας με
text. Το όνομα υπολογιστή που
εμφανίζεται είναι, από προεπιλογή, το όνομα του υπολογιστή
από τον οποίο έγινε η αποστολή της εργασίας.-J textΑντικαθιστά το όνομα εργασίας στη σελίδα κεφαλίδας με
text. Το όνομα εργασίας που
εμφανίζεται από προεπιλογή, είναι το όνομα του πρώτου αρχείου
της εργασίας, ή stdin αν η εκτύπωση
γίνεται από το standard input.-hΔεν εκτυπώνει σελίδα κεφαλίδας.Ανάλογα με τις ρυθμίσεις, αυτή η επιλογή ίσως να μην
έχει επίδραση λόγω του τρόπου με τον οποίο δημιουργούνται οι
σελίδες κεφαλίδας. Για περισσότερες λεπτομέρειες, δείτε την
ενότητα Σελίδες
Κεφαλίδας.Διαχείριση ΕκτυπωτώνΩς διαχειριστής, χρειάστηκε να εγκαταστήσετε, να ρυθμίσετε και να
δοκιμάσετε τους εκτυπωτές σας. Χρησιμοποιώντας την εντολή
&man.lpc.8;, μπορείτε να επικοινωνήσετε με τους εκτυπωτές σας με ακόμη
περισσότερους τρόπους. Με την &man.lpc.8;, μπορείτε:Να εκκινείτε και να σταματάτε τους εκτυπωτέςΝα ενεργοποιείτε και να απενεργοποιείτε τις ουρές
αναμονήςΝα ανακατατάσσετε την σειρά εργασιών σε κάθε ουρά
αναμονής.Καταρχήν, μία σημείωση σχετικά με την ορολογία: αν ένας
εκτυπωτής είναι σταματημένος (stopped), δεν θα
εκτυπώσει τίποτε από την ουρά αναμονής εργασιών. Οι χρήστες μπορούν
ακόμη να στέλνουν εργασίες, οι οποίες μπαίνουν στην ουρά αναμονής έως
ότου ο εκτυπωτής ξεκινήσει ή καθαριστεί η ουρά
αναμονής.Αν έχει απενεργοποιηθεί η ουρά αναμονής,
κανείς χρήστης (εκτός του root) δεν μπορεί να
αποστείλει εργασίες στον εκτυπωτή. Μια ενεργή
ουρά αναμονής επιτρέπει να αποσταλούν εργασίες στον εκτυπωτή. Ένας
εκτυπωτής μπορεί να ξεκινήσει με ουρά
αναμονής απενεργοποιημένη, και σε αυτή την περίπτωση θα συνεχίσει να
εκτυπώνει τις εργασίες της ουράς έως ότου αυτή αδειάσει.Γενικά, πρέπει να έχετε προνόμια root για να
χρησιμοποιήσετε την εντολή &man.lpc.8;. Οι κανονικοί χρήστες
μπορούν να χρησιμοποιούν την εντολή &man.lpc.8; μόνο για να βλέπουν
την κατάσταση του εκτυπωτή και να επανεκκινούν τον εκτυπωτή σε
περίπτωση μπλοκαρίσματος.Παρακάτω θα βρείτε μια λίστα εντολών του &man.lpc.8;. Οι
περισσότερες από τις εντολές παίρνουν ως παράμετρο το
printer-name για τη ρύθμιση του
συγκεκριμένου εκτυπωτή. Μπορείτε να χρησιμοποιείτε
all στη θέση του
printer-name για να αναφερθείτε σε όλους
τους εκτυπωτές που είναι καταχωρισμένοι στο
/etc/printcap.abort printer-nameΔιαγράφει την τρέχουσα εργασία και σταματάει τον εκτυπωτή.
Οι χρήστες μπορούν ακόμη να αποστείλουν εργασίες αν η ουρά
αναμονής είναι ακόμη ενεργή.clean printer-nameΔιαγράφει τα παλιά αρχεία από τον κατάλογο spool του
εκτυπωτή. Σε κάποιες περιπτώσεις, τα αρχεία από τα οποία
αποτελείται κάποια εργασία δεν αφαιρούνται κανονικά από το
LPD, ειδικά αν υπήρξαν σφάλματα κατά
την εκτύπωση ή κάποιες ενέργειες από τον διαχειριστή. Αυτή η
εντολή βρίσκει αρχεία που δεν ανήκουν στον κατάλογο spool και
τα αφαιρεί.disable printer-nameΑπενεργοποιεί την ουρά αναμονής για νέες εργασίες. Αν ο
εκτυπωτής δουλεύει, θα συνεχίσει να εκτυπώνει τις
εναπομείναντες εργασίες στην ουρά αναμονής. Ο superuser
(root) μπορεί πάντα να στέλνει εργασίες,
ακόμη και σε απενεργοποιημένη σειρά αναμονής.Αυτή η εντολή είναι χρήσιμη, όταν ελέγχετε ένα νέο εκτυπωτή
ή όταν εγκαθιστάτε ένα φίλτρο: απενεργοποιήστε την ουρά
αναμονής και στείλτε εργασίες σαν root.
Οι υπόλοιποι χρήστες δεν θα έχουν δυνατότητα να αποστείλουν
εργασίες έως ότου ολοκληρώσετε τους ελέγχους σας και
επανενεργοποιήσετε την ουρά αναμονής με την εντολή
enable.down printer-namemessageΟδηγεί τον εκτυπωτή σε "κατέβασμα" (down). Είναι ισοδύναμο
με το disable ακολουθούμενο από ένα
stop. Το message
(μήνυμα) εμφανίζεται όταν κάποιος χρήστης ελέγχει την σειρά
αναμονής με &man.lpq.1; ή την κατάσταση του εκτυπωτή με
lpc status.enable
printer-nameΕνεργοποίηση της ουράς αναμονής του εκτυπωτή. Οι χρήστες
μπορούν να αποστείλουν εργασίες αλλά ο εκτυπωτής δεν θα τυπώσει
έως ότου ξεκινήσει.help
command-nameΤυπώνει σελίδες βοηθείας για την εντολή
command-name. Δίχως το
command-name, εκτυπώνει μια περίληψη
όλων των διαθέσιμων εντολών.restart printer-nameΞεκινά τον εκτυπωτή. Οι κανονικοί χρήστες μπορούν να
χρησιμοποιήσουν αυτή την εντολή μόνο σε κάποια ειδική
περίπτωση που το LPD δεν αποκρίνεται,
αλλά δεν μπορούν να ξεκινήσουν ένα εκτυπωτή που έχει σταματήσει
εξαιτίας των εντολών stop ή
down. Η εντολή restart
είναι ισοδύναμη με την abort ακολουθούμενη
από τη start.start printer-nameΞεκινά τον εκτυπωτή. Ο εκτυπωτής θα τυπώσει εργασίες από
την ουρά αναμονής του.stop
printer-nameΣταματάει τον εκτυπωτή. Ο εκτυπωτής θα ολοκληρώσει την
τρέχουσα εργασία του και δεν θα τυπώσει καμία άλλη εργασία από
την ουρά αναμονής του. Ακόμη και αν ο εκτυπωτής είναι
σταματημένος, οι χρήστες μπορούν ακόμη να στέλνουν εργασίες αν
είναι ενεργοποιημένη η ουρά αναμονής.topq printer-namejob-or-usernameΑνακατάταξη της ουράς αναμονής για τον
printer-name. Τοποθετούνται πρώτες
οι εργασίες με αριθμό αναφοράς job ή
αυτές που ανήκουν στο χρήστη
username. Για αυτή την εντολή, δεν
μπορείτε να χρησιμοποιήσετε all στην θέση του
printer-name.up printer-nameΟδηγεί τον εκτυπωτή σε "ανέβασμα" (up). Το αντίθετο της
εντολής down. Ισοδυναμεί με την
start ακολουθούμενη από την εντολή
enable.Το &man.lpc.8; δέχεται τις παραπάνω εντολές στην γραμμή εντολών.
Αν δεν εισάγετε καμία εντολή, το &man.lpc.8; μπαίνει σε κατάσταση
αλληλεπίδρασης (interactive), όπου μπορείτε να πληκτρολογείτε εντολές
μέχρι να δώσετε exit,
quit, ή end-of-file.Εναλλακτικές Λύσεις για τον Στάνταρ SpoolerΑν έχετε μελετήσει πιστά όλο το κεφάλαιο μέχρι εδώ, θα έχετε μάθει
σχεδόν τα πάντα σχετικά με το σύστημα παροχέτευσης
LPD που διατίθεται με το &os;. Θα έχετε
κατανοήσει και πολλές από τις ελλείψεις του, που φυσικά γεννούν το
ερώτημα: Ποια άλλα συστήματα παροχέτευσης (που να λειτουργούν
στο &os;) υπάρχουν διαθέσιμα;LPRngLPRngΤο LPRng, το οποίο σκόπιμα
σημαίνει LPR: the Next Generation (η Επόμενη
Γενιά) είναι μια από την αρχή υλοποίηση του PLP.
Ο Patrick Powell και ο Justin Mason (κύριος συντηρητής του PLP)
συνεργάστηκαν για να φτιάξουν το
LPRng. Η κύρια τοποθεσία του
LPRng είναι η .CUPSCUPSΤο CUPS, ή αλλιώς Common UNIX
Printing System, παρέχει μια φορητή πλατφόρμα εκτυπώσεων για
λειτουργικά συστήματα βασισμένα στο &unix;. Αναπτύχθηκε από την
Easy Software Products για να προωθήσει μια στάνταρ λύση
εκτυπώσεων για όλους τους χρήστες και κατασκευαστές
&unix;.Το CUPS χρησιμοποιεί το πρωτόκολλο
Internet Printing Protocol (IPP) ως βάση του
για τη διαχείριση εργασιών εκτύπωσης και ουρών αναμονής.
Υποστηρίζονται επίσης, αλλά με μειωμένη λειτουργικότητα, τα
πρωτόκολλα Line Printer Daemon (LPD), Server
Message Block (SMB), και AppSocket (γνωστό ως
JetDirect). Το CUPS προσθέτει δυνατότητες ανίχνευσης δικτυακών
εκτυπωτών, ενώ μέσω των επιλογών PostScript Printer Description
(PPD) γίνεται εφικτή η υποστήριξη
σύγχρονων εκτυπωτών στον κόσμο του &unix;.Η κύρια τοποθεσία του CUPS είναι η
.HPLIPHPLIPΤο HPLIP, ή Σύστημα Απεικόνισης
και Εκτύπωσης της HP για &linux;, είναι μια σουίτα εφαρμογών
για συσκευές της HP, που υποστηρίζει λειτουργίες όπως η εκτύπωση,
η σάρωση και η αποστολή / λήψη φαξ. Η σουίτα αυτή χρησιμοποιεί
το CUPS ως backend για κάποιες από τις
λειτουργίες εκτύπωσης που παρέχει.Η κύρια δικτυακή τοποθεσία της εφαρμογής
HPLIP είναι .Εντοπισμός ΒλαβώνΜετά την εκτέλεση του απλού τεστ με το &man.lptest.1;, αντί της
κανονικής εκτύπωσης, μπορεί να έχετε λάβει ως αποτέλεσμα μία από τις
ακόλουθες καταστάσεις:Ο εκτυπωτής καθυστέρησε να ξεκινήσει ή δεν εκτύπωσε ολόκληρη τη
σελίδα.Ο εκτυπωτής τύπωσε το τεστ, αλλά δεν ξεκίνησε αμέσως. Ίσως
χρειάστηκε να πιέσετε το πλήκτρο PRINT REMAINING ή το FORM FEED
του εκτυπωτή σας για να εμφανιστεί το επιθυμητό αποτέλεσμα.Εάν είναι όντως αυτή η περίπτωση σας, ο εκτυπωτής πιθανώς
να ήταν σε αναμονή για να εξακριβώσει αν υπήρχαν πρόσθετα δεδομένα
στην εργασία εκτύπωσης πριν ξεκινήσει να εκτυπώνει οτιδήποτε. Για
να διορθώσετε το πρόβλημα, μπορείτε να θέσετε το φίλτρο κειμένου
να στέλνει ένα χαρακτήρα FORM FEED (ή άλλο κατάλληλο) στον
εκτυπωτή. Αυτό συνήθως είναι αρκετό για να μπορείτε να εκτυπώνετε
κατευθείαν οποιοδήποτε κείμενο απομένει σε αναμονή στην εσωτερική
μνήμη (buffer) του εκτυπωτή. Είναι επίσης χρήσιμο να ρυθμίζετε
τις εκτυπώσεις σας ώστε να τελειώνουν με γεμάτη την τελευταία
σελίδα, ώστε η επόμενη εργασία να μην αρχίζει από τα μισά του
προηγούμενου φύλλου.Η ακόλουθη τροποποίηση στο shell script
/usr/local/libexec/if-simple εκτυπώνει ένα
form feed μετά την αποστολή της εργασίας στον εκτυπωτή:#!/bin/sh
#
# if-simple - Simple text input filter for lpd
# Installed in /usr/local/libexec/if-simple
#
# Simply copies stdin to stdout. Ignores all filter arguments.
# Writes a form feed character (\f) after printing job.
/bin/cat && printf "\f" && exit 0
exit 2Η εκτύπωση παρουσιάζει φαινόμενο σκάλας (staircase
effect).Στην εκτύπωση σας φαίνεται το ακόλουθο:!"#$%&'()*+,-./01234
"#$%&'()*+,-./012345
#$%&'()*+,-./0123456MS-DOSOS/2ASCIIΓίνατε ένα ακόμα θύμα του
φαινομένου σκάλας, που προκλήθηκε από
αντιφατικές ερμηνείες των χαρακτήρων με τους οποίους δηλώνεται η
τροφοδοσία νέας γραμμής. Τα λειτουργικά συστήματα τύπου &unix;
χρησιμοποιούν έναν μόνο χαρακτήρα ASCII με κωδικό 10, τον line
feed (τροφοδοσία γραμμής, LF). Το &ms-dos;, το &os2;, και διάφορα
άλλα, χρησιμοποιούν ένα ζεύγος χαρακτήρων ASCII κωδικού 10
και ASCII κωδικού 13 (τον carriage return ή
αλλιώς CR). Πολλοί εκτυπωτές χρησιμοποιούν την σύμβαση του
&ms-dos; για την αλλαγή γραμμής.Όταν εκτυπώνετε με το &os;, το κείμενο σας απλά χρησιμοποιεί
τον χαρακτήρα τροφοδοσίας γραμμής (line feed). Ο εκτυπωτής, μόλις
αντιληφθεί τον χαρακτήρα line feed, προωθεί το χαρτί κατά μία
γραμμή, αλλά κρατάει την ίδια θέση οριζόντια καθώς καλείται να
εκτυπώσει τον επόμενο χαρακτήρα. Σε αυτό το σημείο
χρησιμοποιείται το CR (carriage return): μετακινεί δηλαδή την
θέση εργασίας για τον επόμενο χαρακτήρα που πρόκειται να
εκτυπωθεί στο αριστερό άκρο του χαρτιού.Το &os; επιθυμεί ο εκτυπωτής να μπορεί να ενεργεί ως
εξής:Όταν ο εκτυπωτής λαμβάνει CRΝα εκτυπώνει CRΌταν ο εκτυπωτής λαμβάνει LFΝα εκτυπώνει CR + LFΥπάρχουν διάφοροι τρόποι για να επιτευχθεί αυτό:Χρησιμοποιήστε τα πλήκτρα ρύθμισης του εκτυπωτή ή
τον πίνακα ελέγχου για να αλλάξετε τον τρόπο με τον οποίο
ερμηνεύει αυτούς τους χαρακτήρες ο εκτυπωτής σας.
Συμβουλευτείτε το εγχειρίδιο χρήσης του για να δείτε πως
μπορεί να γίνει αυτό.Αν έχετε και άλλα λειτουργικά στο σύστημα σας εκτός από
το &os;, πιθανόν να χρειαστεί, όταν τα χρησιμοποιείτε, να
επαναρυθμίσετε τον εκτυπωτή σας ώστε
να ερμηνεύει διαφορετικά τους χαρακτήρες CR και LF.
Στην περίπτωση αυτή, ίσως είναι καλύτερο να προτιμήσετε
κάποια από τις λύσεις που ακολουθούν.Ο οδηγός (driver) της σειριακής γραμμής του &os; μπορεί να
μετατρέπει αυτόματα από LF σε CR+LF. Φυσικά, αυτό δουλεύει
μόνο σε σειριακές θύρες.
Για να ενεργοποιήσετε αυτή την λειτουργία, χρησιμοποιήστε την
ικανότητα ms# και ορίστε την κατάσταση
λειτουργίας onlcr στο αρχείο
/etc/printcap για τον εκτυπωτή.Στείλτε ένα
κωδικό διαφυγής (escape code) στον
εκτυπωτή ώστε να χειρίζεται προσωρινά τους χαρακτήρες LF με
διαφορετικό τρόπο. Συμβουλευτείτε το εγχειρίδιο χρήσης του
εκτυπωτή σας για τους κώδικες διαφυγής που υποστηρίζονται.
Όταν ανακαλύψετε τον κατάλληλο, μετατρέψτε το φίλτρο κειμένου
ώστε να στέλνει πρώτα τον κωδικό, και έπειτα την εργασία στον
εκτυπωτή.PCLΕδώ είναι ένα παράδειγμα φίλτρου κειμένου για εκτυπωτές
που καταλαβαίνουν τους κωδικούς διαφυγής PCL της
Hewlett-Packard. Αυτό το φίλτρο κάνει τον εκτυπωτή να
χειρίζεται τους χαρακτήρες LF ως LF και CR. Έπειτα αποστέλλει
την εργασία, στέλνοντας στο τέλος της ένα χαρακτήρα αλλαγής
σελίδας (form feed) ώστε να γίνει σωστή εξαγωγή της τελευταίας
σελίδας. Το φίλτρο αυτό θα πρέπει να δουλεύει με σχεδόν
όλους τους εκτυπωτές της Hewlett Packard.#!/bin/sh
#
# hpif - Simple text input filter for lpd for HP-PCL based printers
# Installed in /usr/local/libexec/hpif
#
# Simply copies stdin to stdout. Ignores all filter arguments.
# Tells printer to treat LF as CR+LF. Ejects the page when done.
printf "\033&k2G" && cat && printf "\033&l0H" && exit 0
exit 2Εδώ είναι ένα παράδειγμα για το
/etc/printcap ενός υπολογιστή με όνομα
orchid. Έχει ένα μόνο εκτυπωτή στην πρώτη
παράλληλη θύρα του, ένα Hewlett Packard LaserJet 3Si με όνομα
teak. Χρησιμοποιεί το παραπάνω script ως
φίλτρο κειμένου:#
# /etc/printcap for host orchid
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sh:sd=/var/spool/lpd/teak:mx#0:\
:if=/usr/local/libexec/hpif:Εκτυπώνεται η μία γραμμή πάνω στην άλλη.Ο εκτυπωτής δεν προωθεί καθόλου το χαρτί και όλες οι γραμμές
κειμένου τυπώνονται η μία πάνω από την άλλη, σε μία γραμμή.Αυτό το πρόβλημα είναι το αντίστροφο του
φαινόμενου σκάλας, που περιγράψαμε προηγουμένως, και είναι πολύ
σπάνιο. Σε κάποιο σημείο, οι χαρακτήρες LF που χρησιμοποιεί το
&os; για να τερματίσει την γραμμή, ερμηνεύονται ως χαρακτήρες CR
οι οποίοι επιστρέφουν την κεφαλή στο αριστερό άκρο του χαρτιού,
αλλά δίχως να προωθήσουν το χαρτί μία γραμμή προς τα κάτω.Χρησιμοποιήστε τους διακόπτες ρυθμίσεων του εκτυπωτή ή τον
πίνακα ελέγχου για να θέσετε τις ακόλουθες επιλογές για τα LF και
CR characters:Ο εκτυπωτής λαμβάνειΟ εκτυπωτής τυπώνειCRCRLFCR + LFΟ εκτυπωτής δεν εκτυπώνει (χάνει) κάποιους χαρακτήρες.Ο εκτυπωτής, ενώ είναι σε λειτουργία εκτύπωσης, δεν εκτυπώνει
κάποιους χαρακτήρες σε όλες τις γραμμές. Το πρόβλημα πιθανώς να
γίνεται εντονότερο καθώς η εκτύπωση εξελίσσεται, χάνοντας ακόμη
περισσότερους χαρακτήρες.Το πρόβλημα είναι πως ο εκτυπωτής, καθώς εκτυπώνει, δεν
προλαβαίνει να ακολουθήσει την ταχύτητα με την οποία ο
υπολογιστής στέλνει δεδομένα μέσω της σειριακής διασύνδεσης (αυτό
το πρόβλημα δεν πρέπει κανονικά να συμβαίνει σε εκτυπωτές
συνδεμένους σε παράλληλες θύρες). Υπάρχουν δύο τρόποι για να
ξεπεραστεί αυτό το πρόβλημα:Εάν ο εκτυπωτής υποστηρίζει έλεγχο ροής XON/XOFF, ρυθμίστε
το &os; να τον χρησιμοποιήσει ορίζοντας την κατάσταση
λειτουργίας ixon με την ικανότητα
ms#.Εάν ο εκτυπωτής υποστηρίζει έλεγχο ροής τύπου Request to
Send / Clear to Send (hardware handshake, γνωστό και με την
ονομασία RTS/CTS), πρέπει να οριστεί η
κατάσταση λειτουργίας crtscts στην
ικανότητα ms#. Βεβαιωθείτε πως το καλώδιο
που συνδέει τον εκτυπωτή με τον υπολογιστή είναι σωστά
φτιαγμένο για χρήση αυτού του ελέγχου ροής.Ο εκτυπωτής τυπώνει σκουπίδια.Ο εκτυπωτής τύπωσε κάτι που αποκαλούμε τυχαία σκουπίδια,
εννοώντας οτιδήποτε εκτός του επιθυμητού κειμένου.Αυτό είναι συνήθως ένα ακόμα σύμπτωμα λανθασμένων παραμέτρων
σειριακής επικοινωνίας με τον εκτυπωτή. Ελέγξτε ξανά την τιμή bps
rate στην ικανότητα br, και την ρύθμιση parity
στην ικανότητα ms#. Βεβαιωθείτε πως ο
εκτυπωτής χρησιμοποιεί τις ίδιες ρυθμίσεις που έχουν καθοριστεί
στο αρχείο /etc/printcap.Δεν συνέβη τίποτε, ο εκτυπωτής δεν ξεκίνησε καν.Αν δεν συνέβη τίποτε, το πρόβλημα πιθανόν να οφείλεται
στο &os; και όχι στο hardware. Προσθέστε την ικανότητα αρχείου
καταγραφής (log file, lf) στο αρχείο
/etc/printcap, στην καταχώριση του εκτυπωτή
που έχει το πρόβλημα. Για παράδειγμα, εδώ είναι η καταχώριση για
τον rattan, με την ικανότητα
lf:rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:\
:lf=/var/log/rattan.logΈπειτα, προσπαθήστε να ξαναεκτυπώσετε. Ελέγξτε το αρχείο
καταγραφής (log) (στο παράδειγμα μας,
/var/log/rattan.log) για να βρείτε πιθανές
αναφορές σφαλμάτων. Με βάση τα μηνύματα που βλέπετε, προσπαθήστε
να διορθώσετε το πρόβλημα.Αν δεν καθορίσετε την ικανότητα lf, το
LPD χρησιμοποιεί από προεπιλογή το
/dev/console.
diff --git a/el_GR.ISO8859-7/share/sgml/mailing-lists.ent b/el_GR.ISO8859-7/share/sgml/mailing-lists.ent
index ce54dd8577..ae7eb3803a 100644
--- a/el_GR.ISO8859-7/share/sgml/mailing-lists.ent
+++ b/el_GR.ISO8859-7/share/sgml/mailing-lists.ent
@@ -1,531 +1,535 @@
εξυπηρετητής για ηλεκτρονικές λίστες του FreeBSD">
&a.mailman.listinfo;">
ηλεκτρονική λίστα για ACPI του FreeBSD">
freebsd-acpi">
ηλεκτρονική λίστα διαφήμισης και προώθησης του FreeBSD">
freebsd-advocacy">
ηλεκτρονική λίστα υλοποίησης του AFS στο FreeBSD">
freebsd-afs">
ηλεκτρονική λίστα του FreeBSD για ελεγκτές Adaptec AIC7xxx">
freebsd-aic7xxx">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα Alpha">
freebsd-alpha">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα AMD64">
freebsd-amd64">
ηλεκτρονική λίστα ανακοινώσεων του FreeBSD">
freebsd-announce">
ηλεκτρονική λίστα του FreeBSD για το Apache">
freebsd-apache">
ηλεκτρονική λίστα αρχιτεκτονικής και σχεδιασμού του FreeBSD">
freebsd-arch">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα ARM">
freebsd-arm">
ηλεκτρονική λίστα του FreeBSD για δίκτυα ATM">
freebsd-atm">
ηλεκτρονική λίστα ελέγχου πηγαίου κώδικα του FreeBSD">
freebsd-audit">
ηλεκτρονική λίστα αναβάθμισης του FreeBSD με εκτελέσιμα αρχεία">
freebsd-binup">
ηλεκτρονική λίστα του FreeBSD για Bluetooth">
freebsd-bluetooth">
ηλεκτρονική λίστα της ομάδας bugbusters του FreeBSD">
freebsd-bugbusters">
ηλεκτρονική λίστα αναφορών προβλημάτων του FreeBSD">
freebsd-bugs">
ηλεκτρονική λίστα γενικών συζητήσεων του FreeBSD">
freebsd-chat">
ηλεκτρονική λίστα παράλληλων συστημάτων του FreeBSD">
freebsd-cluster">
ηλεκτρονική λίστα της έκδοσης &os.current;">
freebsd-current">
ανακοινώσεις CTM">
ctm-announce">
διανομή μέσω CTM των αρχείων του CVS">
ctm-cvs-cur">
ηλεκτρονική λίστα διανομής του 4-STABLE μέσω CTM">
ctm-src-4">
ηλεκτρονική λίστα διανομής του -CURRENT μέσω CTM">
ctm-src-cur">
ηλεκτρονική λίστα γενικών συζητήσεων των χρηστών του CTM">
ctm-users">
ηλεκτρονική λίστα μηνυμάτων CVS commit του FreeBSD CVS">
cvs-all">
ηλεκτρονική λίστα μηνυμάτων CVS commit τεκμηρίωσης του FreeBSD">
cvs-doc">
ηλεκτρονική λίστα μηνυμάτων CVS commit των FreeBSD ports">
cvs-ports">
ηλεκτρονική λίστα μηνυμάτων CVS commit των projects του FreeBSD">
cvs-projects">
ηλεκτρονική λίστα μηνυμάτων CVS commit πηγαίου κώδικα του FreeBSD">
cvs-src">
ηλεκτρονική λίστα συντήρησης του CVSweb του FreeBSD">
freebsd-cvsweb">
ηλεκτρονική λίστα βάσεων δεδομένων βασισμένων στο FreeBSD">
freebsd-database">
ηλεκτρονική λίστα ομάδας τεκμηρίωσης του FreeBSD">
freebsd-doc">
ηλεκτρονική λίστα για την ανάπτυξη οδηγών συσκευών του FreeBSD">
freebsd-drivers">
ηλεκτρονική λίστα του FreeBSD για τους χρήστες του Eclipse IDE">
freebsd-eclipse">
ηλεκτρονική λίστα του FreeBSD για τις embedded πλατφόρμες">
freebsd-embedded">
ηλεκτρονική λίστα του FreeBSD για εξομοίωση-εξομοιωτές">
freebsd-emulation">
ηλεκτρονική λίστα FreeBSD-eol">
freebsd-eol">
ηλεκτρονική λίστα συζητήσεων για FireWire (IEEE 1394) του FreeBSD">
freebsd-firewire">
ηλεκτρονική λίστα του FreeBSD για συστήματα αρχείων">
freebsd-fs">
ηλεκτρονική λίστα του FreeBSD για εφαρμογές gecko">
freebsd-gecko">
ηλεκτρονική λίστα του FreeBSD για το GEOM">
freebsd-geom">
ηλεκτρονική λίστα του FreeBSD για το GNOME και τις εφαρμογές του">
freebsd-gnome">
ηλεκτρονική λίστα τεχνικών συζητήσεων του FreeBSD">
freebsd-hackers">
ηλεκτρονική λίστα του FreeBSD για υλικό κι εξαρτήματα υπολογιστών">
freebsd-hardware">
ηλεκτρονική λίστα των mirror sites του FreeBSD">
freebsd-hubs">
ηλεκτρονική λίστα διεθνοποίησης του FreeBSD">
freebsd-i18n">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα i386">
freebsd-i386">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα IA32">
freebsd-ia32">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα IA64">
freebsd-ia64">
ηλεκτρονική λίστα του FreeBSD για το IPFW">
freebsd-ipfw">
ηλεκτρονική λίστα του FreeBSD για το υποσύστημα ISDN">
freebsd-isdn">
ηλεκτρονική λίστα του FreeBSD για τους παροχείς υπηρεσιών Internet">
freebsd-isp">
ηλεκτρονική λίστα του FreeBSD για τα jails">
freebsd-jail">
ηλεκτρονική λίστα του FreeBSD για τη γλώσσα Java">
freebsd-java">
ηλεκτρονική λίστα του FreeBSD σχετικά με εργασίες-επαγγέλματα">
freebsd-jobs">
ηλεκτρονική λίστα του FreeBSD για το KDE/Qt και τις εφαρμογές του">
freebsd-kde">
ηλεκτρονική λίστα του FreeBSD για το υποσύστημα LFS">
freebsd-lfs">
ηλεκτρονική λίστα του FreeBSD για το σύστημα εγκατάστασης και διαχείρισης πακέτων libh">
freebsd-libh">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα MIPS">
freebsd-mips">
διαχειριστές των mirror sites του FreeBSD">
mirror-announce">
ηλεκτρονική λίστα του FreeBSD για φορητούς υπολογιστές">
freebsd-mobile">
Εφαρμογές Mono και C# στο FreeBSD">
freebsd-mono">
ηλεκτρονική λίστα του FreeBSD για τον φυλλομετρητή Mozilla">
freebsd-mozilla">
ηλεκτρονική λίστα του FreeBSD για τα πολυμέσα">
freebsd-multimedia">
ηλεκτρονική λίστα του FreeBSD για την υποστήριξη δικτύου">
freebsd-net">
ηλεκτρονική λίστα του FreeBSD για τους νέους χρήστες">
freebsd-newbies">
ηλεκτρονική λίστα του FreeBSD για το υποσύστημα new-bus">
freebsd-new-bus">
ηλεκτρονική λίστα του FreeBSD για το OpenOffice">
freebsd-openoffice">
ηλεκτρονική λίστα του FreeBSD για υψηλές αποδόσεις">
freebsd-performance">
ηλεκτρονική λίστα του FreeBSD για τη γλώσσα Perl">
freebsd-perl">
ηλεκτρονική λίστα του FreeBSD για το packet filter firewall">
freebsd-pf">
ηλεκτρονική λίστα του FreeBSD για τις μη-Intel πλατφόρμες">
freebsd-platforms">
ηλεκτρονική λίστα αποφάσεων πολιτικής της FreeBSD core ομάδας">
freebsd-policy">
ηλεκτρονική λίστα των FreeBSD ports">
freebsd-ports">
ηλεκτρονική λίστα αναφορών προβλημάτων των FreeBSD ports">
freebsd-ports-bugs">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα PowerPC">
freebsd-ppc">
ηλεκτρονική λίστα του FreeBSD για τις πλατφόρμες εξυπηρετητών HP ProLiant">
freebsd-proliant">
ηλεκτρονική λίστα του FreeBSD για τη γλώσσα Python">
freebsd-python">
ηλεκτρονική λίστα Ελέγχου και Εξασφάλισης Ποιότητας του FreeBSD">
freebsd-qa">
ηλεκτρονική λίστα γενικών ερωτήσεων του FreeBSD">
freebsd-questions">
ηλεκτρονική λίστα του FreeBSD για το σύστημα των boot script">
freebsd-rc">
ηλεκτρονική λίστα επεκτάσεων πραγματικού χρόνου του FreeBSD">
freebsd-realtime">
ηλεκτρονική λίστα του FreeBSD για τη γλώσσα Ruby">
freebsd-ruby">
ηλεκτρονική λίστα του FreeBSD για το υποσύστημα SCSI">
freebsd-scsi">
ηλεκτρονική λίστα του FreeBSD για θέματα ασφάλειας">
freebsd-security">
ηλεκτρονική λίστα Ανακοινώσεων για Θέματα Ασφάλειας του FreeBSD">
freebsd-security-notifications">
ηλεκτρονική λίστα του FreeBSD για μικρά συστήματα">
freebsd-small">
ηλεκτρονική λίστα του FreeBSD για την συμμετρική πολυεπεξεργασία">
freebsd-smp">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα SPARC">
freebsd-sparc64">
ηλεκτρονική λίστα του &os.stable;">
freebsd-stable">
ηλεκτρονική λίστα του FreeBSD για τη συμβατότητα με τα πρότυπα C99 και POSIX">
freebsd-standards">
ηλεκτρονική λίστα του FreeBSD για την πλατφόρμα sun4v">
freebsd-sun4v">
ηλεκτρονική λίστα μηνυμάτων SVN commit πηγαίου κώδικα του FreeBSD (εξαιρούνται τα δέντρα user και projects)">
svn-src-all">
ηλεκτρονική λίστα μηνυμάτων SVN commit πηγαίου κώδικα για τον κλάδο head/-current">
svn-src-head">
ηλεκτρονική λίστα μηνυμάτων SVN commit για τον πηγαίο κώδικα του δέντρου projects">
svn-src-projects">
ηλεκτρονική λίστα μηνυμάτων SVN commit για εκδόσεις (releases) πηγαίου κώδικα">
svn-src-release">
ηλεκτρονική λίστα μηνυμάτων SVN commit για διορθώσεις ασφάλειας της ομάδας release engineering στο δέντρο πηγαίου κώδικα">
svn-src-releng">
ηλεκτρονική λίστα μηνυμάτων SVN commit για όλους τους κλάδους -stable του δέντρου πηγαίου κώδικα">
svn-src-stable">
ηλεκτρονική λίστα μηνυμάτων SVN commit μόνο για το δέντρο πηγαίου κώδικα 6-stable">
svn-src-stable-6">
ηλεκτρονική λίστα μηνυμάτων SVN commit μόνο για το δέντρο πηγαίου κώδικα 7-stable">
svn-src-stable-7">
ηλεκτρονική λίστα μηνυμάτων SVN commit μόνο για το δέντρο πηγαίου κώδικα 8-stable">
svn-src-stable-8">
ηλεκτρονική λίστα μηνυμάτων SVN commit για τα παλιά stable δέντρα πηγαίου κώδικα">
svn-src-stable-other">
ηλεκτρονική λίστα μηνυμάτων SVN commit για το δέντρο admin / configuration">
svn-src-svnadmin">
ηλεκτρονική λίστα μηνυμάτων SVN commit για το πειραματικό δέντρο πηγαίου κώδικα user">
svn-src-user">
ηλεκτρονική λίστα μηνυμάτων SVN commit για το δέντρο εργασίας vendor">
svn-src-vendor">
+
+ηλεκτρονική λίστα για την ανάπτυξη του sysinstall">
+freebsd-sysinstall">
+
ηλεκτρονική λίστα του FreeBSD για δοκιμαστικά μηνύματα">
freebsd-test">
ηλεκτρονική λίστα δοκιμών απόδοσης και σταθερότητας του FreeBSD">
freebsd-testing">
ηλεκτρονική λίστα του FreeBSD για την πολυνηματική επεξεργασία">
freebsd-threads">
ηλεκτρονική λίστα του FreeBSD για το υποσύστημα tokenring">
freebsd-tokenring">
ηλεκτρονική λίστα του FreeBSD για τη διασύνδεση με συσκευές USB">
freebsd-usb">
ηλεκτρονική λίστα οργάνωσης των ομάδων χρηστών του FreeBSD">
freebsd-user-groups">
ηλεκτρονική λίστα προσυνεννόησης των προμηθευτών του FreeBSD">
freebsd-vendors">
ηλεκτρονική λίστα του FreeBSD για τεχνικές virtualization">
freebsd-virtualization">
ηλεκτρονική λίστα για την πλατφόρμα VuXML">
freebsd-vuxml">
ηλεκτρονική λίστα για τις Αναφορές Προόδου του FreeBSD">
freebsd-wip-status">
ηλεκτρονική λίστα του Webmaster του FreeBSD">
freebsd-www">
ηλεκτρονική λίστα του FreeBSD για το γραφικό περιβάλλον X11">
freebsd-x11">
ηλεκτρονική λίστα συζητήσεων για τη μεταφορά του FreeBSD στο Xen">
freebsd-xen">
bug-followup@FreeBSD.org">
majordomo@FreeBSD.org">
diff --git a/el_GR.ISO8859-7/share/sgml/trademarks.ent b/el_GR.ISO8859-7/share/sgml/trademarks.ent
index 3d3db92f0c..5f77fc334e 100644
--- a/el_GR.ISO8859-7/share/sgml/trademarks.ent
+++ b/el_GR.ISO8859-7/share/sgml/trademarks.ent
@@ -1,436 +1,447 @@
Οι λέξεις 3Com και HomeConnect είναι
κατοχυρωμένα εμπορικά σύμβολα της 3Com Corporation.">
3Com">
Οι λέξεις 3ware και Escalade είναι
κατοχυρωμένα εμπορικά σύμβολα της 3ware Inc.">
3ware">
Escalade">
Η λέξη Adaptec είναι κατοχυρωμένο εμπορικό
σύμβολο της Adaptec, Inc.">
Adaptec">
Οι λέξεις ή φράσεις Adobe, Acrobat, Acrobat
Reader, και PostScript είναι είτε κατοχυρωμένα εμπορικά σύμβολα ή εμπορικά
σύμβολα της Adobe Systems Incorporated στις Ηνωμένες Πολιτείες ή/και σε
άλλες χώρες.">
Acrobat">
Acrobat Reader">
Adobe">
PostScript">
Οι λέξεις ή φράσεις AMD, Am486, Am5X86, AMD
Athlon, AMD Duron, AMD Opteron, AMD-K6, Élan, και PCnet είναι
εμπορικά σύμβολα της Advanced Micro Devices, Inc.">
Am486">
Am5x86">
AMD Athlon">
AMD Duron">
AMD-K6">
AMD Opteron">
AMD Sempron">
AMD Turion">
Athlon">
Élan">
Opteron">
Οι λέξεις ή φράσεις Apple, AirPort, FireWire, Mac,
Macintosh, Mac OS, Quicktime, και TrueType είναι εμπορικά σύμβολα της Apple
Computer, Inc., κατοχυρωμένα στις Ηνωμένες Πολιτείες και σε άλλες
χώρες.">
AirPort">
Apple">
FireWire">
iMac">
Mac">
Macintosh">
Mac OS">
Quicktime">
TrueType">
Η λέξη ARM είναι κατοχυρωμένο εμπορικό σύμβολο
της ARM Limited.">
ARM">
Η λέξη Bluetooth ανήκει στην
Bluetooth SIG, Inc.">
Bluetooth">
Η λέξη Broadcom είναι ένα κατοχυρωμένο
εμπορικό σύμβολο της Broadcom Corporation και των θυγατρικών της.">
Broadcom">
Οι λέξεις ή φράσεις Check Point,
Firewall-1, και VPN-1 είναι εμπορικά σύμβολα της Check Point Software
Technologies Ltd.">
Οι λέξεις ή φράσεις Cisco, Catalyst, και IOS
είναι κατοχυρωμένα εμπορικά σύμβολα της Cisco Systems, Inc. ή/και των
συνεργατών της στις Ηνωμένες Πολιτείες και σε ορισμένες άλλες χώρες.">
Cisco">
Catalyst">
EtherChannel">
IOS">
Οι λέξεις Corel και WordPerfect είναι εμπορικά
σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της Corel Corporation ή/και των
θυγατρικών της στον Καναδά, τις Ηνωμένες Πολιτείες ή/και σε άλλες
χώρες.">
Η λέξη Coverity είναι ένα
κατοχυρωμένο εμπορικό σύμβολο. Οι λέξεις ή φράσεις Coverity Extend,
Coverity Prevent και Coverity Prevent SQS είναι εμπορικά σύμβολα της
Coverity, Inc.">
Coverity">
Coverity Prevent">
Η φράση Sound Blaster είναι εμπορικό
σύμβολο της Creative Technology Ltd. στις Ηνωμένες Πολιτείες ή/και σε άλλες
χώρες.">
SoundBlaster">
Η λέξη CVSup είναι κατοχυρωμένο εμπορικό
σύμβολο του John D. Polstra.">
Οι λέξεις ή φράσεις Dell, Dell Precision,
Latitude, Optiplex, και PowerEdge είναι εμπορικά σύμβολα ή κατοχυρωμένα
εμπορικά σύμβολα της Dell Computer Corporation">
Dell">
PowerEdge">
Οι λέξεις ή φράσεις EPSON και EPSON Perfection
είναι κατοχυρωμένα εμπορικά σύμβολα της Seiko Epson Corporation.">
EPSON">
EPSON
Perfection">
Το FreeBSD είναι ένα κατοχυρωμένο εμπορικό
σύμβολο του FreeBSD Foundation.">
+
+Το λογότυπο Fujitsu και οι λέξεις Fujitsu,
+ LifeBook, Stylistic, PRIMEPOWER, PRIMEQUEST, PRIMECLUSTER, ETERNUS, TRIOLE,
+ ESPRIMO, BioMedCAChe, CAChe, CELLINJECTOR, isS, Materials Explorer,
+ SystemWalker και Interstage είναι εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά
+ σύμβολα της Fujitsu Limited στις Ηνωμένες Πολιτείες και άλλες
+ χώρες.">
+Fujitsu">
+PRIMEPOWER">
+
Οι λέξεις ή φράσεις Heidelberg,
Helvetica, Palatino, και Times Roman είναι είτε κατοχυρωμένα εμπορικά
σύμβολα ή εμπορικά σύμβολα της Heidelberger Druckmaschinen AG στις ΗΠΑ και
σε άλλες χώρες.">
Οι λέξεις ή φράσεις IBM, AIX, EtherJet,
Netfinity, OS/2, PowerPC, PS/2, S/390, και ThinkPad είναι εμπορικά σύμβολα
της International Business Machines Corporation στις Ηνωμένες Πολιτείες,
άλλες χώρες, ή και στα δύο ταυτόχρονα.">
AIX">
EtherJet">
Netfinity">
OS/2">
PowerPC">
PS/2">
S/390">
ThinkPad">
Οι λέξεις IEEE, POSIX, και 802 είναι
κατοχυρωμένα εμπορικά σύμβολα του Institute of Electrical and Electronics
Engineers, Inc. στις Ηνωμένες Πολιτείες.">
IEEE">
POSIX">
Οι λέξεις Intel, Celeron, EtherExpress,
i386, i486, Itanium, Pentium, και Xeon είναι εμπορικά σύμβολα ή
κατοχυρωμένα εμπορικά σύμβολα της Intel Corporation και των θυγατρικών
της στις Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Celeron">
EtherExpress">
i386">
i486">
Intel">
Itanium">
Pentium">
Core">
Xeon">
Οι λέξεις Intuit και Quicken είναι
κατοχυρωμένα εμπορικά σύμβολα ή κατοχυρωμένα σύμβολα υπηρεσιών της
Intuit Inc., ή κάποιων από τις θυγατρικές της, στις Ηνωμένες Πολιτείες
και σε άλλες χώρες.">
Οι λέξεις Iomega, Zip, και Jaz είναι
είτε κατοχυρωμένα εμπορικά σύμβολα ή εμπορικά σύμβολα της Iomega
Corporation στις Ηνωμένες Πολιτείες ή/και σε άλλες χώρες.">
Zip">
Jaz">
Οι λέξεις Lantronix και EasyIO είναι
εμπορικά σύμβολα της Lantronix Corporation.">
EasyIO">
Το Linux είναι ένα κατοχυρωμένα εμπορικό
σύμβολο του Linus Torvalds στις Ηνωμένες Πολιτείες.">
Linux">
Οι λέξεις LSI Logic, AcceleRAID,
eXtremeRAID, MegaRAID και Mylex είναι εμπορικά σύμβολα ή κατοχυρωμένα
εμπορικά σύμβολα της LSI Logic Corp.">
AcceleRAID">
MegaRAID">
Mylex">
Οι λέξεις Macromedia, Flash, και
Shockwave είναι εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της
Macromedia, Inc. στις Ηνωμένες Πολιτείες και/ή σε άλλες χώρες.">
Flash">
Macromedia">
Shockwave">
Οι λέξεις Microsoft, IntelliMouse, MS-DOS,
Outlook, Windows, Windows Media, και Windows NT είναι είτε κατοχυρωμένα
εμπορικά σύμβολα ή εμπορικά σύμβολα της Microsoft Corporation στις Ηνωμένες
Πολιτείες και/ή σε άλλες χώρες.">
IntelliMouse">
Microsoft">
MS-DOS">
Outlook">
Windows">
Windows Media">
Windows NT">
Οι λέξεις MIPS και R4000 είναι κατοχυρωμένα
εμπορικά σύμβολα της MIPS Technologies, Inc. στις Ηνωμένες Πολιτείες και σε
άλλες χώρες.">
MIPS">
Η λέξη MySQL είναι κατοχυρωμένο εμπορικό
σύμβολο της MySQL AB στις Ηνωμένες Πολιτείες, στην Ευρωπαϊκή Ένωση και σε
άλλες χώρες.">
MySQL">
Οι λέξεις M-Systems και DiskOnChip είναι
εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της M-Systems Flash Disk
Pioneers, Ltd.">
DiskOnChip">
Η λέξη NetBSD είναι ένα κατοχυρωμένο εμπορικό
σύμβολο του NetBSD Foundation.">
Οι λέξεις Netscape και Netscape Navigator
είναι κατοχυρωμένα εμπορικά σύμβολα της Netscape Communications Corporation
στις Η.Π.Α και άλλες χώρες.">
Netscape">
Netscape Navigator">
Οι λέξεις GateD και NextHop είναι
κατοχυρωμένα εμπορικά σύμβολα και εμπορικά σύμβολα της NextHop στις
Η.Π.Α. και άλλες χώρες.">
GateD">
Οι λέξεις NetWare, NetWare Loadable Module,
και NLM είναι εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά της Novell, Inc. στις
Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Οι λέξεις Motif, OSF/1, και UNIX
είναι κατοχυρωμένα εμπορικά σύμβολα και οι λέξεις ή φράσεις IT
DialTone και The Open Group είναι εμπορικά σύμβολα του The Open Group
στις Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Η λέξη UNIX είναι κατοχυρωμένο εμπορικό
σύμβολο του Open Group στις Ηνωμένες Πολιτείες και σε άλλες
χώρες.">
Motif">
UNIX">
Η λέξη Oracle είναι κατοχυρωμένο
εμπορικό σύμβολο της Oracle Corporation.">
Oracle">
Η λέξη Parallels είναι ένα κατοχυρωμένο
εμπορικό σύμβολο της Parallels Software International Inc.">
Οι λέξεις PowerQuest και PartitionMagic
είναι κατοχυρωμένα εμπορικά σύμβολα της PowerQuest Corporation στις Ηνωμένες
Πολιτείες και/ή σε άλλες χώρες.">
PartitionMagic">
Οι λέξεις QUALCOMM και Eudora είναι
κατοχυρωμένα εμπορικά σύμβολα της QUALCOMM Incorporated.">
Eudora">
Οι λέξεις RealNetworks, RealPlayer και
RealAudio είναι κατοχυρωμένα εμπορικά σύμβολα της RealNetworks,
Inc.">
RealPlayer">
Οι λέξεις ή φράσεις Red Hat, και RPM είναι
εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της Red Hat, Inc. στις
Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Οι λέξεις SAP, R/3, και mySAP είναι εμπορικά
σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της SAP AG στη Γερμανία και σε
πολλές άλλες χώρες του κόσμου.">
R/3">
SAP">
Οι λέξεις οι φράσεις Silicon Graphics, SGI, και
OpenGL είναι κατοχυρωμένα εμπορικά σύμβολα της Silicon Graphics, Inc. στις
Ηνωμένες Πολιτείες και/ή σε άλλες χώρες στον κόσμο.">
OpenGL">
Η λέξη Slackware είναι ένα κατοχυρωμένο
εμπορικό σύμβολο του Patrick Volkerding και της Slackware Linux, Inc.">
-Οι λέξεις ή φράσεις Sparc, Sparc64,
- SPARCEngine, και UltraSPARC είναι εμπορικά σύμβολα της SPARC International,
- Inc. στις Ηνωμένες Πολιτείες και σε άλλες χώρες. Τα προϊόντα που φέρουν τα
- εμπορικά σύμβολα SPARC είναι βασισμένα στην αρχιτεκτονική που ανέπτυξε η Sun
- Microsystems, Inc.">
-Sparc">
-Sparc64">
-SPARCEngine">
+Οι λέξεις ή φράσεις SPARC, SPARC64,
+ SPARCengine, και UltraSPARC είναι εμπορικά σύμβολα της SPARC International,
+ Inc. στις Ηνωμένες Πολιτείες και σε άλλες χώρες. Η SPARC International
+ Inc. κατέχει όλα τα εμπορικά δικαιώματα των συμβόλων SPARC και επιτρέπει
+ την ορθή χρήση τους από όλα τα μέλη της, κατόπιν σχετικής άδειας.">
+SPARC">
+SPARC64">
+SPARCengine">
UltraSPARC">
Οι λέξεις ή φράσεις Sun, Sun Microsystems, Java,
- Java Virtual Machine, JavaServer Pages, JDK, JRE, JSP, JVM, Netra, Solaris,
- StarOffice, Sun Blade, Sun Enterprise, Sun Fire, SunOS, Ultra και
+ Java Virtual Machine, JavaServer Pages, JDK, JRE, JSP, JVM, Netra, OpenJDK,
+ Solaris, StarOffice, Sun Blade, Sun Enterprise, Sun Fire, SunOS, Ultra και
VirtualBox είναι εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της Sun
Microsystems, Inc. στις Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Java">
Java Virtual Machine">
JavaServer Pages">
JDK">
JRE">
JSP">
JVM">
Netra">
+OpenJDK">
Solaris">
StarOffice">
Sun">
Sun Blade">
Sun Enterprise">
Sun Fire">
Ultra">
SunOS">
VirtualBox">
Οι λέξεις Symantec και Ghost είναι
κατοχυρωμένα εμπορικά σύμβολα της Symantec Corporation στις Ηνωμένες
Πολιτείες και σε άλλες χώρες.">
Η λέξη MATLAB είναι ένα κατοχυρωμένο
εμπορικό σύμβολο της The MathWorks, Inc.">
MATLAB">
Η λέξη SpeedTouch είναι ένα εμπορικό σύμβολο
της Thomson">
SpeedTouch">
Οι λέξεις Transmeta και Crusoe είναι
εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της Transmeta Corporation
στις Ηνωμένες Πολιτείες και σε άλλες χώρες.">
Crusoe">
Transmeta">
Οι λέξεις ή φράσεις U.S. Robotics και
Sportster είναι κατοχυρωμένα εμπορικά σύμβολα της U.S. Robotics
Corporation.">
Sportster">
U.S. Robotics">
Οι λέξεις ή φράσεις Waterloo Maple και
Maple είναι εμπορικά ή κατοχυρωμένα εμπορικά σύμβολα της Waterloo Maple Inc.">
Maple">
Η λέξη Mathematica είναι
κατοχυρωμένο εμπορικό σύμβολο της Wolfram Research, Inc.">
Mathematica">
Η λέξη VMware είναι εμπορικό σύμβολο της
VMware, Inc.">
Η λέξη Xen είναι ένα κατοχυρωμένο εμπορικό
σύμβολο της XenSource, Inc. sτις ΗΠΑ και άλλες χώρες.">
Xen">
Η λέξη XFree86 είναι ένα εμπορικό σύμβολο
του The XFree86 Project, Inc.">
XFree86">
Οι λέξεις ή φράσεις Ogg Vorbis και Xiph.Org
είναι εμπορικά σύμβολα τουXiph.Org.">
Πολλές από τις λέξεις ή φράσεις οι οποίες
χρησιμοποιούνται από τους κατασκευαστές ή τους πωλητές τους για να
διακρίνουν τα προϊόντα τους θεωρούνται εμπορικά σύμβολα. Όπου αυτές
εμφανίζονται σε αυτό το κείμενο και για όσες από αυτές γνωρίζει η Ομάδα
Ανάπτυξης του FreeBSD ότι είναι πιθανόν να είναι εμπορικά σύμβολα, θα δείτε
ένα από τα σύμβολα: ™ ή ®.">