aboutsummaryrefslogtreecommitdiff
path: root/el_GR.ISO8859-7/books/handbook/ports/chapter.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'el_GR.ISO8859-7/books/handbook/ports/chapter.sgml')
-rw-r--r--el_GR.ISO8859-7/books/handbook/ports/chapter.sgml1631
1 files changed, 0 insertions, 1631 deletions
diff --git a/el_GR.ISO8859-7/books/handbook/ports/chapter.sgml b/el_GR.ISO8859-7/books/handbook/ports/chapter.sgml
deleted file mode 100644
index 95cf74ce48..0000000000
--- a/el_GR.ISO8859-7/books/handbook/ports/chapter.sgml
+++ /dev/null
@@ -1,1631 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-7" standalone="no"?>
-<!--
-
- Το Εγχειρίδιο του FreeBSD: Εγκατάσταση Εφαρμογών: Packages και Ports
-
- The FreeBSD Greek Documentation Project
-
- $FreeBSD$
-
- %SOURCE% en_US.ISO8859-1/books/handbook/ports/chapter.sgml
- %SRCID% 39234
-
--->
-
-<chapter id="ports">
- <title>Εγκατάσταση Εφαρμογών: Πακέτα και Ports</title>
-
- <sect1 id="ports-synopsis">
- <title>Σύνοψη</title>
-
- <indexterm><primary>ports</primary></indexterm>
- <indexterm><primary>Packages</primary></indexterm>
- <para>Το &os; συνοδεύεται από μία πλούσια συλλογή από προγράμματα σαν
- μέρος του βασικού συστήματος. Όμως, λίγα μπορεί να κάνει κάποιος πριν
- βρεθεί στην ανάγκη να εγκαταστήσει μια πρόσθετη εφαρμογή για να
- υλοποιήσει μια πραγματική εργασία. Το &os; παρέχει δυο συμπληρωματικές
- τεχνολογίες για να εγκαταστήσετε πρόσθετες εφαρμογές στο σύστημα σας:
- τη Συλλογή των Ports (Ports Collection, για εγκατάσταση από τον
- πηγαίο κώδικα), και τα πακέτα (packages, για εγκατάσταση από
- προ-μεταγλωττισμένα εκτελέσιμα πακέτα). Κάθε μία από τις δυο μεθόδους
- μπορεί να χρησιμοποιηθεί για να εγκαταστήσετε τις νεότερες εκδόσεις από
- τις αγαπημένες σας εφαρμογές, από τοπικά αποθηκευτικά μέσα ή απευθείας
- από το δίκτυο.</para>
-
- <para>Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε:</para>
-
- <itemizedlist>
- <listitem>
- <para>Πως να εγκαθιστάτε προ-μεταγλωττισμένα πακέτα λογισμικού.</para>
- </listitem>
-
- <listitem>
- <para>Πως να μεταγλωττίζετε πρόσθετο λογισμικό από τον πηγαίο κώδικα
- χρησιμοποιώντας την Συλλογή των Ports.</para>
- </listitem>
-
- <listitem>
- <para>Πως να κάνετε απεγκατάσταση εγκαταστημένων πακέτων ή
- ports.</para>
- </listitem>
-
- <listitem>
- <para>Πως να αλλάζετε τις προκαθορισμένες ρυθμίσεις που χρησιμοποιεί
- η Συλλογή των Ports.</para>
- </listitem>
-
- <listitem>
- <para>Πως να βρίσκετε τα κατάλληλα πακέτα λογισμικού.</para>
- </listitem>
-
- <listitem>
- <para>Πως να αναβαθμίζετε τις εφαρμογές σας.</para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <sect1 id="ports-overview">
- <title>Επισκόπησή της εγκατάστασης λογισμικού</title>
-
- <para>Αν έχετε χρησιμοποιήσει ένα &unix; σύστημα στο παρελθόν, θα
- γνωρίζετε ότι η συνηθισμένη διαδικασία για την εγκατάσταση πρόσθετου
- λογισμικού είναι περίπου η παρακάτω:</para>
-
- <procedure>
- <step>
- <para><quote>Κατέβασμα</quote> του λογισμικού, που μπορεί να
- διανέμεται σε μορφή πηγαίου κώδικα, ή σαν εκτελέσιμο.</para>
- </step>
-
- <step>
- <para>Αποσυμπίεση του λογισμικού από την μορφή της διανομής του
- (συνήθως ένα tarball συμπιεσμένο με το &man.compress.1;,
- &man.gzip.1;, ή &man.bzip2.1;).</para>
- </step>
-
- <step>
- <para>Εντοπισμός της τεκμηρίωσης (πιθανώς ένα αρχείο
- <filename>INSTALL</filename> ή <filename>README</filename>
- ή μερικά αρχεία μέσα σε ένα υποκατάλογο <filename>doc/</filename>)
- και ανάγνωσή τους για το πως θα εγκατασταθεί το λογισμικό.</para>
- </step>
-
- <step>
- <para>Αν το λογισμικό διανέμεται με τη μορφή πηγαίου κώδικα,
- μεταγλώττιση του. Αυτό μπορεί να περιλαμβάνει την επεξεργασία ενός
- <filename>Makefile</filename>, ή την εκτέλεση ενός
- <command>configure</command> script, και άλλες εργασίες.</para>
- </step>
-
- <step>
- <para>Δοκιμή και εγκατάσταση του λογισμικού.</para>
- </step>
- </procedure>
-
- <para>Και αυτά μόνο αν όλα πάνε καλά. Αν εγκαθιστάτε ένα λογισμικό που
- δεν έχει μεταφερθεί στο &os; ίσως να πρέπει να τροποποιήσετε τον πηγαίο
- κώδικα για να δουλέψει σωστά.</para>
-
- <para>Αν το θέλετε, μπορείτε να συνεχίσετε να εγκαθιστάτε λογισμικό με
- τον <quote>παραδοσιακό</quote> τρόπο στο &os;. Όμως, το &os;
- παρέχει δυο τεχνολογίες που μπορούν να σας γλιτώσουν από πολύ κόπο:
- τα πακέτα και τα ports. Την στιγμή που γράφτηκε αυτό το κείμενο,
- διατίθονταν με αυτόν τον τρόπο πάνω από &os.numports; πρόσθετες
- εφαρμογές.</para>
-
- <para>Για οποιαδήποτε εφαρμογή, το αντίστοιχο &os; πακέτο της
- είναι ένα μοναδικό αρχείο που πρέπει εσείς να <quote>κατεβάσετε</quote>.
- Το πακέτο περιέχει προ-μεταγλωττισμένα αντίγραφα από όλες τις εντολές
- της εφαρμογής, όπως επίσης και αρχεία παραμετροποίησης ή τεκμηρίωσης.
- Ένα τέτοιο πακέτο σε μορφή αρχείου, μπορείτε να το χειριστείτε με τις
- εντολές διαχείρισής πακέτων του &os;, όπως οι &man.pkg.add.1;,
- &man.pkg.delete.1;, &man.pkg.info.1;, και πάει λέγοντας.
- Η εγκατάσταση μιας νέας εφαρμογής μπορεί να γίνει με μία μόνο
- εντολή.</para>
-
- <para>Ένα &os; port για μία εφαρμογή είναι μια συλλογή από αρχεία
- σχεδιασμένα για να αυτοματοποιήσουν την διαδικασία μεταγλώττισης της
- εφαρμογής από τον πηγαίο κώδικα.</para>
-
- <para>Θυμηθείτε ότι υπάρχουν μερικά βήματα που θα πρέπει λογικά να κάνετε
- αν μεταγλωττίσετε ένα πρόγραμμα μόνος σας (<quote>κατέβασμα</quote>,
- αποσυμπίεση, προσαρμογή (patching), μεταγλώττιση, εγκατάσταση).
- Τα αρχεία που αποτελούν ένα port περιέχουν όλες τις απαραίτητες
- πληροφορίες για να επιτρέψουν στο σύστημα να κάνει όλα αυτά για εσάς.
- Εσείς εκτελείτε μερικές απλές εντολές, και ο πηγαίος κώδικας για την
- εφαρμογή αυτόματα <quote>κατεβαίνει</quote>, αποσυμπιέζεται,
- προσαρμόζεται, μεταγλωττίζεται, και εγκαθίσταται για εσάς.</para>
-
- <para>Στην πραγματικότητα, το σύστημα ports μπορεί επίσης να
- χρησιμοποιηθεί για να δημιουργηθούν πακέτα που μπορείτε αργότερα να
- διαχειριστείτε με την <command>pkg_add</command> και τις άλλες εντολές
- διαχείρισής πακέτων που θα αναφερθούν σε λίγο.</para>
-
- <para>Τόσο τα πακέτα, όσο και τα ports κατανοούν τις
- <emphasis>εξαρτήσεις (dependencies)</emphasis>. Ας υποθέσουμε ότι
- θέλετε να εγκαταστήσετε μία εφαρμογή που εξαρτάται από μία συγκεκριμένη
- βιβλιοθήκη για να λειτουργήσει. Τόσο η εφαρμογή, όσο και η βιβλιοθήκη
- διατίθενται ως πακέτα και ports του &os;. Αν χρησιμοποιήσετε την εντολή
- <command>pkg_add</command> ή το σύστημα των ports για να εγκαταστήσετε
- την εφαρμογή, αμφότερα θα παρατηρήσουν ότι η βιβλιοθήκη δεν είναι
- εγκατεστημένη, και αυτόματα θα την εγκαταστήσουν πριν από το
- πρόγραμμα.</para>
-
- <para>Έχοντας αναφέρει ότι οι δύο τεχνολογίες είναι αρκετά όμοιες, ίσως να
- αναρωτιέστε γιατί το &os; προσφέρει και τις δύο. Τα πακέτα και τα
- ports αμφότερα έχουν τα δικά τους πλεονεκτήματα, και το τι θα
- χρησιμοποιήσετε εξαρτάται από την δική σας προτίμηση.</para>
-
- <itemizedlist>
- <title>Πλεονεκτήματα των Πακέτων</title>
-
- <listitem>
- <para>Ένα συμπιεσμένο tarball πακέτου είναι συνήθως μικρότερο από
- το συμπιεσμένο tarball που περιέχει τον πηγαίο κώδικα για την
- εφαρμογή.</para>
- </listitem>
-
- <listitem>
- <para>Τα πακέτα δεν χρειάζονται μεταγλώττιση. Για
- μεγάλες εφαρμογές, όπως είναι ο
- <application>Mozilla</application>, το
- <application>KDE</application>, ή το
- <application>GNOME</application> αυτό μπορεί να είναι σημαντικό,
- ιδιαίτερα αν βρίσκεστε σε ένα αργό μηχάνημα.</para>
- </listitem>
-
- <listitem>
- <para>Τα πακέτα δεν απαιτούν να κατανοήσετε την διαδικασία
- που σχετίζεται με την μεταγλώττιση λογισμικού στο &os;.</para>
- </listitem>
- </itemizedlist>
-
- <itemizedlist>
- <title>Πλεονεκτήματα των Ports</title>
-
- <listitem>
- <para>Τα πακέτα συνήθως είναι μεταγλωττισμένα με συντηρητικές
- επιλογές, επειδή πρέπει να λειτουργούν στον μέγιστο αριθμό
- συστημάτων. Με εγκατάσταση από το port, μπορείτε να ρυθμίσετε τις
- επιλογές μεταγλώττισης (για παράδειγμα) να δημιουργήσουν εκτελέσιμο
- κώδικα που να εκμεταλλεύεται τις ικανότητες ενός Pentium 4 ή Athlon
- επεξεργαστή.</para>
- </listitem>
-
- <listitem>
- <para>Μερικές εφαρμογές έχουν επιλογές μεταγλώττισης που σχετίζονται
- με το τι μπορούν να κάνουν και τι όχι. Για παράδειγμα, ο
- <application>Apache</application> μπορεί να μεταγλωττιστεί με ένα
- ευρύ φάσμα από επιλογές. Μεταγλωττίζοντας τον από το port, δεν
- είναι ανάγκη να δεχτείτε τις προεπιλεγμένες επιλογές, μπορείτε να
- κάνετε τις δικές σας.</para>
-
- <para>Σε μερικές περιπτώσεις, μπορεί να υπάρχουν πολλαπλά πακέτα
- για την ίδια εφαρμογή, με διαφορετικές ρυθμίσεις. Για παράδειγμα,
- το <application>Ghostscript</application> διατίθεται ως ένα πακέτο
- <filename>ghostscript</filename> και ένα πακέτο
- <filename>ghostscript-nox11</filename>, αναλόγως αν
- θα εγκαταστήσετε ή όχι έναν X11 server. Αυτού του τύπου
- οι ρυθμίσεις είναι δυνατές με τα πακέτα, αλλά γρήγορα
- γίνονται αδύνατες αν μία εφαρμογή έχει περισσότερες από μία ή δύο
- διαφορετικές ρυθμίσεις μεταγλώττισης.</para>
- </listitem>
-
- <listitem>
- <para>Οι συνθήκες των αδειών διανομής από μερικές διανομές
- λογισμικού, απαγορεύουν την διανομή εκτελέσιμου κώδικα. Πρέπει να
- διανεμηθούν με την μορφή πηγαίου κώδικα.</para>
- </listitem>
-
- <listitem>
- <para>Μερικά άτομα δεν εμπιστεύονται τα έτοιμα εκτελέσιμα.
- Τουλάχιστον με τον πηγαίο κώδικα, μπορείτε (θεωρητικά) να τον
- διαβάσετε και να ψάξετε για πιθανά προβλήματα μόνος σας.</para>
- </listitem>
-
- <listitem>
- <para>Αν έχετε τοπικά, δικά σας patches, θα χρειαστείτε τον πηγαίο
- κώδικα για να τα εφαρμόσετε.</para>
- </listitem>
-
- <listitem>
- <para>Μερικά άτομα γουστάρουν να έχουν τον πηγαίο κώδικα, ώστε να τον
- διαβάσουν αν βαρεθούνε, να τον αλλάξουν (hack), να δανειστούν από
- αυτόν (αν βέβαια το επιτρέπει η άδεια), κ.λ.π.</para>
- </listitem>
- </itemizedlist>
-
- <para>Για να είστε ενήμερος για τα ανανεωμένα ports, εγγραφείτε στην
- &a.ports; και στην &a.ports-bugs;.</para>
-
- <warning>
- <para>Πριν εγκαταστήσετε οποιοδήποτε εφαρμογή, πρέπει να ελέγχετε το
- <ulink url="http://vuxml.freebsd.org/"></ulink> για θέματα ασφαλείας
- που σχετίζονται με την εφαρμογή σας.</para>
-
- <para>Μπορείτε επίσης να εγκαταστήσετε το <filename
- role="package">ports-mgmt/portaudit</filename> το οποίο αυτόματα
- θα ελέγχει όλες τις εγκαταστημένες εφαρμογές για γνωστά τρωτά
- σημεία. Έλεγχος επίσης θα πραγματοποιείται πριν τη μεταγλώττιση
- οποιουδήποτε port. Στο ενδιάμεσο, μπορείτε να χρησιμοποιείτε την
- εντολή <command>portaudit -F -a</command> αφότου έχετε πρώτα
- εγκαταστήσει μερικά πακέτα.</para>
- </warning>
-
- <para>Το υπόλοιπο αυτού του κεφαλαίου εξηγεί πως να χρησιμοποιήσετε τα
- πακέτα και τα ports για να εγκαταστήσετε και να διαχειριστείτε πρόσθετο
- λογισμικό στο &os;.</para>
- </sect1>
-
- <sect1 id="ports-finding-applications">
- <title>Βρίσκοντας την Εφαρμογή σας</title>
-
- <para>Πριν εγκαταστήσετε οποιαδήποτε εφαρμογή πρέπει να γνωρίζετε τι
- θέλετε να κάνει, και πως ονομάζεται η εφαρμογή.</para>
-
- <para>Η λίστα των διαθέσιμων εφαρμογών στο &os; μεγαλώνει συνεχώς.
- Ευτυχώς, υπάρχουν πολλοί τρόποι να βρείτε αυτό που θέλετε:</para>
-
- <itemizedlist>
- <listitem>
- <para>Στη δικτυακή τοποθεσία του &os; θα βρείτε μια
- λίστα από όλες τις διαθέσιμες εφαρμογές, στο <ulink
- url="&url.base;/ports/index.html">http://www.FreeBSD.org/ports/</ulink>.
- Η λίστα αυτή ανανεώνεται συχνά, ενώ υπάρχει και δυνατότητα
- αναζήτησης. Τα ports είναι χωρισμένα σε κατηγορίες, και μπορείτε
- να αναζητήσετε μία εφαρμογή είτε με το όνομα (αν το ξέρετε), ή να
- δείτε όλες τις εφαρμογές που είναι διαθέσιμες σε μια
- κατηγορία.</para>
- </listitem>
-
- <listitem>
- <indexterm><primary>FreshPorts</primary></indexterm>
-
- <para>Ο Dan Langille διατηρεί το FreshPorts, στο <ulink
- url="http://www.FreshPorts.org/"></ulink>. Το FreshPorts
- καταγράφει τις αλλαγές των εφαρμογών στο δέντρο των ports καθώς
- συμβαίνουν, επιτρέποντάς σας να <quote>παρακολουθείτε</quote> ένα
- ή περισσότερα ports, και μπορεί να σας στείλει email όταν αυτά
- ανανεώνονται.</para>
- </listitem>
-
- <listitem>
- <indexterm><primary>Freecode</primary></indexterm>
-
- <para>Αν δεν γνωρίζετε το όνομα της εφαρμογής που θέλετε,
- δοκιμάστε να χρησιμοποιήσετε ένα site σαν το Freecode(<ulink
- url="http://www.freecode.com/"></ulink>) για να βρείτε μία
- εφαρμογή, και μετά μπορείτε να ελέγξετε ξανά το site του &os; για
- να δείτε αν η εφαρμογή έχει γίνει port.</para>
- </listitem>
-
- <listitem>
- <para>Αν ξέρετε το ακριβές όνομα του port, και θέλετε μόνο να
- βρείτε σε ποια κατηγορία είναι, μπορείτε να χρησιμοποιήσετε την
- εντολή &man.whereis.1;. Απλά γράψτε
- <command>whereis <replaceable>αρχείο</replaceable></command>, όπου
- <replaceable>αρχείο</replaceable> είναι το πρόγραμμα που θέλετε να
- εγκαταστήσετε. Αν αυτό βρίσκεται στο σύστημα σας, η εντολή θα σας
- πει που είναι, όπως παρακάτω:</para>
-
- <screen>&prompt.root; <userinput>whereis lsof</userinput>
-lsof: /usr/ports/sysutils/lsof</screen>
-
- <para>Αυτό μας λέει ότι το <command>lsof</command> (ένα εργαλείο
- συστήματος) μπορεί να βρεθεί στον κατάλογο
- <filename>/usr/ports/sysutils/lsof</filename>.</para>
- </listitem>
-
- <listitem>
- <para>Επιπρόσθετα, μπορείτε να χρησιμοποιήσετε μια απλή εντολή
- &man.echo.1; για να εντοπίσετε την τοποθεσία κάποιου προγράμματος
- μέσα στα ports. Για παράδειγμα:</para>
-
- <screen>&prompt.root; <userinput>echo /usr/ports/*/*lsof*</userinput>
-/usr/ports/sysutils/lsof</screen>
-
- <para>Σημειώστε ότι το παραπάνω θα δείξει επίσης και οποιαδήποτε
- αρχεία έχουν κατέβει στον κατάλογο
- <filename class="directory">/usr/ports/distfiles</filename> εφόσον
- ταιριάζουν στην αναζήτηση.</para>
- </listitem>
-
- <listitem>
- <para>Ακόμη ένας τρόπος να βρείτε ένα συγκεκριμένο port, είναι
- χρησιμοποιώντας τον εσωτερικό μηχανισμό αναζήτησης της Συλλογής των
- Ports. Γα να χρησιμοποιήσετε αυτό τον τρόπο αναζήτησης, Θα
- χρειαστεί να βρίσκεστε στον κατάλογο
- <filename>/usr/ports</filename>. Όταν βρεθείτε σε αυτόν τον
- κατάλογο, εκτελέστε το <command>make <maketarget>search</maketarget>
- name=<replaceable>όνομα--προγράμματος</replaceable></command> όπου
- <replaceable>όνομα--προγράμματος</replaceable> είναι το όνομα
- του προγράμματος που θέλετε να βρείτε. Για παράδειγμα, αν αναζητάτε
- το <command>lsof</command>:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports</userinput>
-&prompt.root; <userinput>make search name=lsof</userinput>
-Port: lsof-4.56.4
-Path: /usr/ports/sysutils/lsof
-Info: Lists information about open files (similar to fstat(1))
-Maint: obrien@FreeBSD.org
-Index: sysutils
-B-deps:
-R-deps: </screen>
-
- <para>Το τμήμα της εξόδου που πρέπει να προσέξετε ιδιαίτερα
- είναι η γραμμή <quote>Path:</quote>, αφού αυτή σας
- λέει που να βρείτε το port. Οι υπόλοιπες πληροφορίες που
- παρέχονται δεν χρειάζονται για να εγκατασταθεί το port, για αυτό
- δεν θα αναλυθούν εδώ.</para>
-
- <para>Για πιο λεπτομερή αναζήτηση μπορείτε να χρησιμοποιήσετε επίσης
- <command>make <maketarget>search</maketarget> key=<replaceable>φράση</replaceable></command> όπου
- <replaceable>φράση</replaceable> είναι κάποιο κείμενο προς
- αναζήτηση. Αυτό αναζητά ονόματα port, σχόλια, περιγραφές και
- εξαρτήσεις, και μπορεί να χρησιμοποιηθεί για να βρεθούν ports που
- σχετίζονται με ένα συγκεκριμένο θέμα, εάν δεν γνωρίζετε το όνομα
- του προγράμματος που αναζητάτε.</para>
-
- <para>Σε όλες τις παραπάνω περιπτώσεις, η φράση προς αναζήτηση είναι
- case-insensitive (δεν λαμβάνει υπόψη τις διαφορές κεφαλαίων-μικρών).
- Η αναζήτηση για το <quote>LSOF</quote>, θα δώσει τα ίδια
- αποτελέσματα με την αναζήτηση για το <quote>lsof</quote>.</para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <sect1 id="packages-using">
- <sect1info>
- <authorgroup>
- <author>
- <firstname>Chern</firstname>
- <surname>Lee</surname>
- <contrib>Συνεισφορά του </contrib>
- </author>
- </authorgroup>
- <!-- 30 Mar 2001 -->
- </sect1info>
-
- <title>Χρησιμοποιώντας το Σύστημα των Πακέτων</title>
-
- <para>Υπάρχουν διάφορα εργαλεία με τα οποία μπορείτε να διαχειριστείτε τα
- πακέτα στο &os;:</para>
-
- <itemizedlist>
- <listitem>
- <para>Σε ένα σύστημα που βρίσκεται ήδη σε λειτουργία, μπορείτε να
- εκτελέσετε το <application>sysinstall</application> για να
- εγκαταστήσετε, να διαγράψετε, και να δείτε τις εγκατεστημένες και
- τις διαθέσιμες εφαρμογές. Για περισσότερες πληροφορίες, δείτε το
- <xref linkend="packages"/>.</para>
- </listitem>
-
- <listitem>
- <para>Τα διάφορα εργαλεία διαχείρισης μέσω της γραμμής εντολών, που
- αποτελούν και το αντικείμενο συζήτησης αυτής της ενότητας.</para>
- </listitem>
- </itemizedlist>
-
- <sect2>
- <title>Εγκαθιστώντας ένα Πακέτο</title>
- <indexterm>
- <primary>packages</primary>
- <secondary>installing</secondary>
- </indexterm>
-
- <indexterm>
- <primary><command>pkg_add</command></primary>
- </indexterm>
- <para>Μπορείτε να χρησιμοποιήσετε το εργαλείο &man.pkg.add.1; για να
- εγκαταστήσετε ένα πακέτο λογισμικού του &os; από ένα τοπικά
- αποθηκευμένο αρχείο ή από έναν διακομιστή στο δίκτυο.</para>
-
- <example>
- <title><quote>Κατέβασμα</quote> ενός πακέτου χειροκίνητα και
- εγκατάσταση του τοπικά</title>
-
- <screen>&prompt.root; <userinput>ftp -a <replaceable>ftp2.FreeBSD.org</replaceable></userinput>
-Connected to ftp2.FreeBSD.org.
-220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
-331 Guest login ok, send your email address as password.
-230-
-230- This machine is in Vienna, VA, USA, hosted by Verio.
-230- Questions? E-mail freebsd@vienna.verio.net.
-230-
-230-
-230 Guest login ok, access restrictions apply.
-Remote system type is UNIX.
-Using binary mode to transfer files.
-<prompt>ftp></prompt> <userinput>cd /pub/FreeBSD/ports/packages/sysutils/</userinput>
-250 CWD command successful.
-<prompt>ftp></prompt> <userinput>get lsof-4.56.4.tgz</userinput>
-local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
-200 PORT command successful.
-150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
-100% |**************************************************| 92375 00:00 ETA
-226 Transfer complete.
-92375 bytes received in 5.60 seconds (16.11 KB/s)
-<prompt>ftp></prompt> <userinput>exit</userinput>
-&prompt.root; <userinput>pkg_add <replaceable>lsof-4.56.4.tgz</replaceable></userinput></screen>
- </example>
-
- <para>Εάν δεν έχετε μία τοπική πηγή πακέτων (όπως είναι ένα
- &os; CD-ROM set) τότε ίσως είναι ευκολότερο να χρησιμοποιήσετε
- την επιλογή <option>-r</option> για το &man.pkg.add.1;. Αυτή θα
- κάνει το εργαλείο να καθορίσει αυτόματα τη σωστή μορφή και έκδοση
- και έπειτα να ανακτήσει και να εγκαταστήσει το πακέτο από ένα FTP
- site.</para>
-
- <indexterm><primary><command>pkg_add</command></primary></indexterm>
- <screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen>
-
- <para>Το παραπάνω παράδειγμα θα <quote>κατεβάσει</quote> και θα
- εγκαταστήσει το σωστό πακέτο χωρίς περαιτέρω επέμβαση του χρήστη.
- Αν δεν θέλετε να χρησιμοποιήσετε το κύριο site διανομής πακέτων,
- μπορείτε να χρησιμοποιήσετε κάποιο mirror. Για το σκοπό αυτό, θα
- πρέπει να ρυθμίσετε σωστά την τιμή της <envar>PACKAGESITE</envar>,
- ώστε να παρακάμψετε τις προεπιλεγμένες ρυθμίσεις. Το &man.pkg.add.1;
- χρησιμοποιεί το &man.fetch.3; για να <quote>κατεβάσει</quote> τα
- αρχεία, και αυτό με τη σειρά του χρησιμοποιεί διάφορες μεταβλητές
- περιβάλλοντος, περιλαμβανομένων των
- <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar>, και
- <envar>FTP_PASSWORD</envar>. Ίσως χρειαστεί να ρυθμίσετε μία ή
- περισσότερες από αυτές αν βρίσκεστε πίσω από ένα firewall, ή ίσως να
- χρειαστεί να χρησιμοποιήσετε έναν FTP/HTTP proxy. Δείτε το
- &man.fetch.3; για την πλήρη λίστα των μεταβλητών. Προσέξτε ότι στο
- παραπάνω παράδειγμα χρησιμοποιείται το <literal>lsof</literal> αντί
- του <literal>lsof-4.56.4</literal>. Όταν γίνεται απομακρυσμένη λήψη,
- πρέπει να αφαιρεθεί ο αριθμός έκδοσης του πακέτου.
- Το &man.pkg.add.1; θα <quote>κατεβάσει</quote> αυτόματα την τελευταία
- έκδοση της εφαρμογής.</para>
-
- <note>
- <para>Το &man.pkg.add.1; θα <quote>κατεβάσει</quote> την τελευταία
- έκδοση της εφαρμογής αν χρησιμοποιείτε &os.current; ή
- &os.stable;. Αν τρέχετε μια -RELEASE έκδοση, θα
- <quote>κατεβάσει</quote> την έκδοση του πακέτου που έχει
- μεταγλωττιστεί με την έκδοση σας. Είναι δυνατό να το αλλάξετε
- αυτό, αλλάζοντας την <envar>PACKAGESITE</envar>.
- Για παράδειγμα, αν τρέχετε ένα σύστημα &os;&nbsp;8.1-RELEASE,
- το &man.pkg.add.1;, από προεπιλογή, θα προσπαθήσει να
- <quote>κατεβάσει</quote> πακέτα από το
- <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/</literal>.
- Αν θέλετε να αναγκάσετε το &man.pkg.add.1;
- να <quote>κατεβάσει</quote> πακέτα του &os;&nbsp;8-STABLE, θέστε
- την <envar>PACKAGESITE</envar> ως
- <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/</literal>.</para>
- </note>
-
- <para>Τα αρχεία των πακέτων διανέμονται σε μορφές
- <filename>.tgz</filename> και <filename>.tbz</filename>. Μπορείτε
- να τα βρείτε στο <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink>,
- ή στα CD-ROM της διανομής του &os;. Κάθε CD στο &os; 4-CD set (και
- στο PowerPak, κλπ.) περιέχει πακέτα στον κατάλογο
- <filename>/packages</filename>. Η κατηγοριοποίηση των πακέτων
- ακολουθεί την δομή του δέντρου <filename>/usr/ports</filename>.
- Κάθε κατηγορία έχει το δικό της κατάλογο, και κάθε πακέτο μπορεί να
- βρεθεί στον κατάλογο <filename>All</filename>.</para>
-
- <para>Η δομή των καταλόγων του συστήματος πακέτων ταιριάζει με την
- αντίστοιχη των ports. Τα δύο συστήματα συνεργάζονται μεταξύ τους για
- να δημιουργήσουν το συνολικό σύστημα πακέτων/ports.</para>
- </sect2>
-
- <sect2>
- <title>Διαχείριση των Πακέτων</title>
-
- <indexterm>
- <primary>packages</primary>
- <secondary>managing</secondary>
- </indexterm>
- <para>Το &man.pkg.info.1; είναι ένα εργαλείο που παραθέτει και
- περιγράφει τα διάφορα πακέτα που είναι εγκαταστημένα.</para>
-
- <indexterm>
- <primary><command>pkg_info</command></primary>
- </indexterm>
- <screen>&prompt.root; <userinput>pkg_info</userinput>
-cvsup-16.1 A general network file distribution system optimized for CV
-docbook-1.2 Meta-port for the different versions of the DocBook DTD
-...</screen>
- <para>Το &man.pkg.version.1; είναι ένα εργαλείο που συνοψίζει τις
- εκδόσεις όλων των εγκαταστημένων πακέτων. Συγκρίνει την έκδοση κάθε
- πακέτου, με την τρέχουσα έκδοση που βρίσκεται στο δέντρο των
- ports.</para>
-
- <indexterm>
- <primary><command>pkg_version</command></primary>
- </indexterm>
- <screen>&prompt.root; <userinput>pkg_version</userinput>
-cvsup =
-docbook =
-...</screen>
-
- <para>Τα σύμβολα στην δεύτερη στήλη δηλώνουν την σχετική ηλικία
- μεταξύ των εγκατεστημένων εκδόσεων και των εκδόσεων που είναι
- διαθέσιμες στο τοπικό δέντρο των ports.</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Σύμβολο</entry>
- <entry>Σημασία</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>=</entry>
- <entry>Η έκδοση του εγκατεστημένου πακέτου ταιριάζει με αυτή
- που είναι διαθέσιμη στο τοπικό δέντρο των ports.</entry>
- </row>
-
- <row>
- <entry>&lt;</entry>
- <entry>Η εγκατεστημένη έκδοση είναι παλαιότερη από αυτή που
- είναι διαθέσιμη στο δέντρο των ports.</entry>
- </row>
-
- <row>
- <entry>&gt;</entry>
- <entry>Η εγκατεστημένη έκδοση είναι νεότερη από αυτή που είναι
- διαθέσιμη στο τοπικό δέντρο των ports. (Το τοπικό δέντρο των
- ports είναι πιθανότατα απαρχαιωμένο.)</entry>
- </row>
-
- <row>
- <entry>?</entry>
- <entry>Το εγκατεστημένο πακέτο δεν βρίσκεται στα περιεχόμενα
- των ports. (Αυτό μπορεί να συμβεί, για παράδειγμα, αν ένα
- εγκατεστημένο port έχει αφαιρεθεί από την Συλλογή των Ports,
- ή έχει μετονομαστεί.)</entry>
- </row>
-
- <row>
- <entry>*</entry>
- <entry>Υπάρχουν πολλαπλές εκδόσεις του πακέτου.</entry>
- </row>
-
- <row>
- <entry>!</entry>
- <entry>Το εγκατεστημένο πακέτο υπάρχει στο index, αλλά για
- κάποιο λόγο το <command>pkg_version</command> δεν κατάφερε να
- συγκρίνει την έκδοση του εγκατεστημένου πακέτου με την
- αντίστοιχη καταχώρηση στο index.</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </sect2>
-
- <sect2>
- <title>Αφαιρώντας ένα Πακέτο</title>
- <indexterm>
- <primary><command>pkg_delete</command></primary>
- </indexterm>
- <indexterm>
- <primary>packages</primary>
- <secondary>deleting</secondary>
- </indexterm>
- <para>Για να αφαιρέσετε ένα εγκατεστημένο πακέτο λογισμικού,
- χρησιμοποιήστε το εργαλείο &man.pkg.delete.1;.</para>
-
- <screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
-
- <para>Σημειώστε ότι το &man.pkg.delete.1; απαιτεί το πλήρες όνομα και
- αριθμό έκδοσης του πακέτου. Η παραπάνω εντολή δεν θα λειτουργήσει
- αν δώσετε απλώς <replaceable>xchat</replaceable> αντί για
- <replaceable>xchat-1.7.1</replaceable>. Είναι ωστόσο εύκολο να
- χρησιμοποιήσετε την &man.pkg.version.1; για να βρείτε την έκδοση του
- εγκατεστημένου πακέτου. Αντί για αυτό, μπορείτε επίσης να
- χρησιμοποιήσετε ένα μπαλαντέρ:</para>
-
- <screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat\*</replaceable></userinput></screen>
-
- <para>Στην περίπτωση αυτή, θα διαγραφούν όλα τα πακέτα που τα ονόματα
- τους αρχίζουν με <literal>xchat</literal>.</para>
- </sect2>
-
- <sect2>
- <title>Διάφορα</title>
-
- <para>Όλες οι πληροφορίες για τα πακέτα είναι αποθηκευμένες στον
- κατάλογο <filename>/var/db/pkg</filename>. Στα αρχεία αυτού του
- καταλόγου, θα βρείτε τη περιγραφή κάθε πακέτου, καθώς και τη λίστα
- των αρχείων που εγκαθιστά.</para>
- </sect2>
- </sect1>
-
- <sect1 id="ports-using">
- <title>Χρησιμοποιώντας την Συλλογή των Ports</title>
-
- <para>Τα παρακάτω τμήματα δίνουν βασικές οδηγίες χρήσης της
- Συλλογής των Ports για εγκατάσταση ή διαγραφή προγραμμάτων στο
- σύστημα σας. Μπορείτε να βρείτε λεπτομερή περιγραφή των διαθέσιμων
- επιλογών του <command>make</command> και των μεταβλητών περιβάλλοντος
- στο &man.ports.7;.</para>
-
- <sect2 id="ports-tree">
- <title>Ανακτώντας την Συλλογή των Ports</title>
-
- <para>Πριν μπορέσετε να εγκαταστήσετε προγράμματα μέσω των ports,
- πρέπει πρώτα να ανακτήσετε την Συλλογή των Ports. Πρόκειται
- ουσιαστικά για μια συλλογή από <filename>Makefiles</filename>,
- patches, και αρχεία περιγραφής που τοποθετούνται στο
- <filename>/usr/ports</filename>.</para>
-
- <para>Όταν εγκαταστήσατε το &os; σύστημα σας,
- το <application>sysinstall</application> σας ρώτησε αν θέλατε
- να εγκαταστήσετε την Συλλογή των Ports. Αν επιλέξατε όχι, μπορείτε να
- ακολουθήσετε αυτές τις οδηγίες για να ανακτήσετε την Συλλογή των
- Ports:</para>
-
- <procedure>
- <title>Μέθοδος CVSup</title>
-
- <para>Αυτή είναι μια γρήγορη μέθοδος για να ανακτήσετε και να
- διατηρήσετε ένα ανανεωμένο αντίγραφο της Συλλογής των Ports,
- χρησιμοποιώντας το πρωτόκολλο <application>CVSup</application>.
- Αν θέλετε να μάθετε περισσότερα για το
- <application>CVSup</application>, δείτε το
- <link linkend="cvsup">Χρησιμοποιώντας το CVSup</link>.</para>
-
- <note>
- <para>Η υλοποίηση του <application>CVSup</application> που
- περιλαμβάνεται σε ένα σύστημα &os;, ονομάζεται
- <application>csup</application>.</para>
- </note>
-
- <para>Σιγουρευθείτε ότι το
- <filename role="directory">/usr/ports</filename>
- είναι άδειο πριν εκτελέσετε το <application>csup</application> για
- πρώτη φορά! Εάν έχετε ήδη ανακτήσει τη Συλλογή των Ports μέσω
- κάποιας άλλης πηγής, το <application>csup</application>
- δεν θα διαγράψει patches που έχουν αφαιρεθεί στο μεταξύ.</para>
-
- <step>
- <para>Εκτελέστε το <command>csup</command>:</para>
-
- <screen>&prompt.root; <userinput>csup -L 2 -h <replaceable>cvsup.FreeBSD.org</replaceable> /usr/share/examples/cvsup/ports-supfile</userinput></screen>
-
- <para>Αλλάξτε το
- <replaceable>cvsup.FreeBSD.org</replaceable> με έναν
- κοντινό σας διακομιστή <application>CVSup</application>. Δείτε
- το <link linkend="cvsup-mirrors">CVSup Mirrors</link> (<xref
- linkend="cvsup-mirrors"/>) για την πλήρη λίστα των mirror
- sites.</para>
-
- <note>
- <para>Αν θέλετε, μπορείτε να χρησιμοποιήσετε το δικό σας
- <filename>ports-supfile</filename>, ώστε να αποφύγετε
- (για παράδειγμα) να δηλώσετε τον διακομιστή
- <application>CVSup</application> στην γραμμή εντολών.</para>
-
- <procedure>
- <step>
- <para>Σε αυτή την περίπτωση, ως <username>root</username>,
- αντιγράψτε το
- <filename>/usr/share/examples/cvsup/ports-supfile</filename>
- σε μία νέα τοποθεσία, όπως το <filename>/root</filename> ή
- τον δικό σας home κατάλογο.</para>
- </step>
-
- <step>
- <para>Τροποποιήστε το <filename>ports-supfile</filename>.</para>
- </step>
-
- <step>
- <para>Αλλάξτε το
- <replaceable>CHANGE_THIS.FreeBSD.org</replaceable>
- με έναν κοντινό σας διακομιστή
- <application>CVSup</application>.Δείτε το <link
- linkend="cvsup-mirrors">CVSup Mirrors</link>
- (<xref linkend="cvsup-mirrors"/>) για την
- πλήρη λίστα των mirror sites.</para>
- </step>
-
- <step>
- <para>Εκτελέστε τώρα το <command>csup</command>, με τον
- ακόλουθο τρόπο:</para>
-
- <screen>&prompt.root; <userinput>csup -L 2 <replaceable>/root/ports-supfile</replaceable></userinput></screen>
- </step>
- </procedure>
- </note>
- </step>
-
- <step>
- <para>Εκτελώντας την εντολή &man.csup.1; αργότερα, θα
- <quote>κατεβάσει</quote> και θα εφαρμόσει όλες
- τις πρόσφατες αλλαγές στην Συλλογή των Ports, εκτός από το να
- επανα-μεταγλωττίσει τα ports για το σύστημα σας.</para>
- </step>
- </procedure>
-
- <procedure>
- <title>Μέθοδος Portsnap</title>
-
- <para>Το <application>Portsnap</application> είναι ένα εναλλακτικό
- σύστημα για την διανομή της Συλλογής των Ports. Παρακαλώ ελέγξτε το
- <link linkend="updating-upgrading-portsnap">Χρησιμοποιώντας το
- Portsnap</link> για μία λεπτομερή περιγραφή όλων των
- χαρακτηριστικών της εφαρμογής.</para>
-
- <step>
- <para><quote>Κατεβάστε</quote> ένα συμπιεσμένο snapshot της
- Συλλογής των Ports
- <filename class="directory">/var/db/portsnap</filename>.
- Αν θέλετε, μπορείτε να αποσυνδεθείτε από το Διαδίκτυο μετά από
- αυτό το βήμα.</para>
-
- <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen>
- </step>
-
- <step>
- <para>Αν εκτελείτε το <application>Portsnap</application> για
- πρώτη φορά, κάντε εξαγωγή του snapshot μέσα στο <filename
- class="directory">/usr/ports</filename>:</para>
-
- <screen>&prompt.root; <userinput>portsnap extract</userinput></screen>
-
- <para>Εάν ήδη έχετε ένα γεμάτο <filename
- class="directory">/usr/ports</filename> και απλώς το ανανεώνετε,
- εκτελέστε την ακόλουθη εντολή:</para>
-
- <screen>&prompt.root; <userinput>portsnap update</userinput></screen>
- </step>
- </procedure>
-
- <procedure>
- <title>Μέθοδος Sysinstall</title>
-
- <para>Αυτή η μέθοδος χρησιμοποιεί το
- <application>sysinstall</application> για την εγκατάσταση της
- Συλλογής των Ports από το μέσο εγκατάστασης. Σημειώστε ότι με αυτό
- τον τρόπο θα εγκαταστήσετε το παλαιό αντίγραφο της
- Συλλογής των Ports, που αντιστοιχεί στην ημερομηνία της έκδοσης του
- &os; που χρησιμοποιείτε. Εάν έχετε πρόσβαση στο Διαδίκτυο, πρέπει
- πάντα να χρησιμοποιείτε μία από τις μεθόδους που αναφέρθηκαν πιο
- πάνω.</para>
-
- <step>
- <para>Ως <username>root</username>, εκτελέστε το
- <command>sysinstall</command> όπως φαίνεται παρακάτω:</para>
-
- <screen>&prompt.root; <userinput>sysinstall</userinput></screen>
- </step>
-
- <step>
- <para>Επιλέξτε το <guimenuitem>Configure</guimenuitem>,
- και πιέστε <keycap>Enter</keycap>.</para>
- </step>
-
- <step>
- <para>Επιλέξτε το <guimenuitem>Distributions</guimenuitem>, και
- πιέστε <keycap>Enter</keycap>.</para>
- </step>
-
- <step>
- <para>Μετακινηθείτε στο <guimenuitem>ports</guimenuitem>, και πιέστε
- <keycap>Space</keycap>.</para>
- </step>
-
- <step>
- <para>Μετακινηθείτε στο <guimenuitem>Exit</guimenuitem>, και πιέστε
- <keycap>Enter</keycap>.</para>
- </step>
-
- <step>
- <para>Επιλέξτε το μέσο εγκατάστασης της επιθυμίας σας, όπως CDROM,
- FTP, και πάει λέγοντας.</para>
- </step>
-
- <step>
- <para>Μετακινηθείτε στο <guimenuitem>Exit</guimenuitem> και πιέστε
- <keycap>Enter</keycap>.</para>
- </step>
-
- <step>
- <para>Πιέστε <keycap>X</keycap> για να βγείτε από το
- <application>sysinstall</application>.</para>
- </step>
- </procedure>
- </sect2>
-
- <sect2 id="ports-skeleton">
- <title>Εγκαθιστώντας Ports</title>
-
- <indexterm>
- <primary>ports</primary>
- <secondary>installing</secondary>
- </indexterm>
- <para>Το πρώτο πράγμα που πρέπει να διευκρινιστεί σχετικά
- με την Συλλογή των Ports είναι η έννοια του όρου
- <quote>skeleton (σκελετός)</quote>. Με λίγα λόγια, ένα port skeleton
- είναι η ελάχιστη συλλογή αρχείων που καθοδηγούν ένα σύστημα &os; ώστε
- να μεταγλωττίσει και να εγκαταστήσει σωστά ένα πρόγραμμα. Κάθε port
- skeleton περιέχει:</para>
-
- <itemizedlist>
- <listitem>
- <para>Ένα <filename>Makefile</filename>. Το
- <filename>Makefile</filename> περιέχει διάφορες δηλώσεις
- που ορίζουν πως πρέπει να μεταγλωττιστεί η εφαρμογή και που
- πρέπει να εγκατασταθεί στο σύστημά σας.</para>
- </listitem>
-
- <listitem>
- <para>Ένα αρχείο <filename>distinfo</filename>. Αυτό το αρχείο
- περιέχει πληροφορίες για τα αρχεία που πρέπει να
- <quote>κατέβουν</quote> για την μεταγλώττιση του port, και τα
- checksums τους (χρησιμοποιώντας το &man.sha256.1;), για να
- επιβεβαιωθεί ότι τα αρχεία δεν έχουν αλλοιωθεί κατά την διάρκεια
- της μεταφοράς τους.</para>
- </listitem>
-
- <listitem>
- <para>Έναν κατάλογο <filename>files</filename>. Αυτός ο
- κατάλογος περιέχει τα patches που επιτρέπουν στο πρόγραμμα να
- μεταγλωττιστεί και εγκατασταθεί στο &os; σύστημα σας. Τα patches
- είναι μικρά αρχεία που ορίζουν αλλαγές σε συγκεκριμένα αρχεία.
- Είναι σε μορφή κοινού κειμένου, και βασικά λένε
- <quote>Αφαίρεσε την γραμμή 10</quote> ή
- <quote>Μετέτρεψε τη γραμμή 26 σε αυτό ...</quote>. Τα patches
- είναι επίσης γνωστά ως <quote>diffs</quote> επειδή δημιουργούνται
- με το πρόγραμμα &man.diff.1;.</para>
-
- <para>Αυτός ο κατάλογος μπορεί να περιέχει και άλλα αρχεία που
- χρησιμοποιούνται για να μεταγλωττιστεί το port.</para>
- </listitem>
-
- <listitem>
- <para>Ένα αρχείο <filename>pkg-descr</filename>. Αυτό είναι μία πιο
- λεπτομερής, συχνά πολλών γραμμών, περιγραφή του
- προγράμματος.</para>
- </listitem>
-
- <listitem>
- <para>Ένα αρχείο <filename>pkg-plist</filename>. Αυτό περιέχει μια
- λίστα όλων των αρχείων που θα εγκατασταθούν από το port.
- Επίσης καθοδηγεί το σύστημα των ports τι αρχεία να αφαιρέσει
- κατά την απεγκατάσταση.</para>
- </listitem>
- </itemizedlist>
-
- <para>Μερικά ports έχουν και άλλα αρχεία, όπως το
- <filename>pkg-message</filename>. Το σύστημα των ports χρησιμοποιεί
- αυτά τα αρχεία για να χειριστεί ειδικές περιστάσεις. Αν θέλετε
- περισσότερες λεπτομέρειες για αυτά τα αρχεία, και τα ports
- γενικότερα, δείτε το <ulink
- url="&url.books.porters-handbook;/index.html">&os; Porter's
- Handbook</ulink>.</para>
-
- <para>Το port περιέχει οδηγίες για το πως να μεταγλωττιστεί ο πηγαίος
- κώδικας, αλλά δεν περιέχει τον πηγαίο κώδικα. Μπορείτε να
- προμηθευτείτε τον πηγαίο κώδικα από ένα CD-ROM ή από το Διαδίκτυο.
- Ο πηγαίος κώδικας διανέμεται με οποιοδήποτε τρόπο επιθυμεί ο
- δημιουργός του. Συχνά είναι ένα tarred και gzipped αρχείο,
- αλλά μπορεί να είναι συμπιεσμένος με κάποιο άλλο εργαλείο ή να είναι
- ακόμα και ασυμπίεστος. Ο πηγαίος κώδικας του προγράμματος, σε
- οποιαδήποτε μορφή κι αν διατίθεται, λέγεται <quote>distfile</quote>.
- Οι δύο μέθοδοι για να εγκαταστήσετε ένα &os; port περιγράφονται
- παρακάτω.</para>
-
- <note>
- <para>Πρέπει να συνδεθείτε ως <username>root</username> για να
- εγκαταστήσετε ports.</para>
- </note>
-
- <warning>
- <para>Πριν εγκαταστήσετε οποιαδήποτε port, πρέπει να σιγουρευτείτε
- ότι έχετε μία ανανεωμένη Συλλογή των Ports, και πρέπει να ελέγξετε
- το <ulink url="http://vuxml.freebsd.org/"></ulink> για θέματα
- ασφαλείας σχετικά με το port που ενδιαφέρεστε.</para>
-
- <para>Αν θέλετε να ελέγχετε αυτόματα για τυχόν προβλήματα ασφαλείας
- πριν από κάθε εγκατάσταση νέας εφαρμογής, μπορείτε να
- χρησιμοποιήσετε το <application>portaudit</application>.
- Θα βρείτε αυτό το εργαλείο στην Συλλογή των Ports
- (<filename role="package">ports-mgmt/portaudit</filename>). Είναι
- καλή ιδέα να εκτελέσετε το <command>portaudit -F</command> πριν
- εγκαταστήσετε ένα νέο port, για να ανακτήσετε την τρέχουσα βάση
- δεδομένων προβλημάτων ασφαλείας. Αντίστοιχος έλεγχος και ανανέωση
- της βάσης δεδομένων εκτελείται επίσης αυτόματα κατά τον καθημερινό
- έλεγχο ασφαλείας του συστήματος. Για περισσότερες
- πληροφορίες διαβάστε τις σελίδες manual &man.portaudit.1; και
- &man.periodic.8;.</para>
- </warning>
-
- <para>Η Συλλογή των Ports προϋποθέτει ότι έχετε λειτουργική σύνδεση με
- το Διαδίκτυο. Εάν δεν έχετε, θα χρειαστεί να βάλετε μόνος σας ένα
- αντίγραφο του distfile μέσα στο
- <filename>/usr/ports/distfiles</filename>.</para>
-
- <para>Αρχικά, μετακινηθείτε στον κατάλογο του port που θέλετε να
- εγκαταστήσετε:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput></screen>
-
- <para>Μόλις βρεθείτε στον κατάλογο <filename>lsof</filename>, θα
- δείτε τον port skeleton. Το επόμενο βήμα είναι να μεταγλωττίσετε,
- ή να <quote>κτίσετε (build)</quote>, το port. Αυτό γίνεται απλά
- πληκτρολογώντας <command>make</command> στην γραμμή εντολών. Όταν το
- κάνετε, θα δείτε κάτι όπως αυτό:</para>
-
- <screen>&prompt.root; <userinput>make</userinput>
-&gt;&gt; lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
-&gt;&gt; Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
-===&gt; Extracting for lsof-4.57
-...
-[extraction output snipped]
-...
-&gt;&gt; Checksum OK for lsof_4.57D.freebsd.tar.gz.
-===&gt; Patching for lsof-4.57
-===&gt; Applying FreeBSD patches for lsof-4.57
-===&gt; Configuring for lsof-4.57
-...
-[configure output snipped]
-...
-===&gt; Building for lsof-4.57
-...
-[compilation output snipped]
-...
-&prompt.root;</screen>
-
- <para>Προσέξτε ότι μόλις η μεταγλώττιση ολοκληρωθεί θα επιστρέψετε
- στην γραμμή εντολών. Το επόμενο βήμα είναι να εγκαταστήσετε το
- port. Για να το εγκαταστήσετε, χρειάζεται απλώς να προσθέσετε μια
- λέξη στην εντολή <command>make</command>, και αυτή η λέξη είναι
- <maketarget>install</maketarget>:</para>
-
- <screen>&prompt.root; <userinput>make install</userinput>
-===&gt; Installing for lsof-4.57
-...
-[installation output snipped]
-...
-===&gt; Generating temporary packing list
-===&gt; Compressing manual pages for lsof-4.57
-===&gt; Registering installation for lsof-4.57
-===&gt; SECURITY NOTE:
- This port has installed the following binaries which execute with
- increased privileges.
-&prompt.root;</screen>
-
- <para>Μόλις επιστρέψετε στην γραμμή εντολών, θα πρέπει να μπορείτε
- να εκτελέσετε την εφαρμογή που μόλις εγκαταστήσατε. Θα δείτε μια
- προειδοποίηση ασφαλείας, επειδή το <command>lsof</command> είναι ένα
- πρόγραμμα που τρέχει με αυξημένα προνόμια. Κατά την μεταγλώττιση
- και εγκατάσταση των ports, θα πρέπει να προσέχετε οποιαδήποτε
- προειδοποίηση εμφανιστεί.</para>
-
- <para>Μια καλή ιδέα, είναι να διαγράψετε τον υποκατάλογο
- που περιέχει όλα τα προσωρινά αρχεία που χρησιμοποιήθηκαν κατά την
- μεταγλώττιση. Όχι μόνο καταναλώνουν πολύτιμο χώρο, άλλα μπορεί να
- προκαλέσουν προβλήματα αργότερα όταν θα θελήσετε να εγκαταστήσετε μια
- νεότερη έκδοση του port.</para>
-
- <screen>&prompt.root; <userinput>make clean</userinput>
-===&gt; Cleaning for lsof-4.57
-&prompt.root;</screen>
-
- <note>
- <para>Μπορείτε να γλιτώσετε δύο πρόσθετα βήματα απλώς εκτελώντας
- <command>make <maketarget>install clean</maketarget></command> αντί
- για <command>make</command>,
- <command>make <maketarget>install</maketarget></command> και
- <command>make <maketarget>clean</maketarget></command>
- ως τρία ξεχωριστά βήματα.</para>
- </note>
-
- <note>
- <para>Μερικά κελύφη κρατάνε μια λίστα από τις εντολές που βρίσκονται
- διαθέσιμες στους καταλόγους που αναφέρονται στην μεταβλητή
- περιβάλλοντος <envar>PATH</envar>, για να επιταχύνουν τις
- αναζητήσεις για τα εκτελέσιμα αρχεία αυτών των εντολών.
- Αν χρησιμοποιείτε ένα από αυτά τα κελύφη, θα πρέπει
- να χρησιμοποιήσετε την εντολή <command>rehash</command> μετά
- την εγκατάσταση ενός port, πριν μπορέσετε να χρησιμοποιήσετε τις
- νέες εντολές. Αυτή η εντολή λειτουργεί σε κελύφη όπως το
- <command>tcsh</command>. Χρησιμοποιήστε την εντολή
- <command>hash -r</command> για κελύφη όπως το
- <command>sh</command>. Δείτε την τεκμηρίωση του κελύφους σας για
- περισσότερες πληροφορίες.</para>
- </note>
-
- <para>Μερικά προϊόντα τρίτων κατασκευαστών σε DVD-ROM, όπως το &os;
- Toolkit από το <ulink
- url="http://www.freebsdmall.com/">&os; Mall</ulink>, περιέχουν
- distfiles. Αυτά μπορούν να χρησιμοποιηθούν με την Συλλογή των Ports.
- Προσαρτήστε το DVD-ROM στο <filename>/cdrom</filename>. Αν
- χρησιμοποιείτε κάποιο διαφορετικό σημείο προσάρτησης, ρυθμίστε την
- μεταβλητή <makevar>CD_MOUNTPTS</makevar> του make. Τα αναγκαία
- distfiles θα χρησιμοποιηθούν αυτόματα αν υπάρχουν στο δισκάκι.</para>
-
- <note>
- <para>Πρέπει να γνωρίζετε ότι οι άδειες μερικών ports δεν επιτρέπουν
- την διανομή τους σε CD-ROM. Αυτό μπορεί να οφείλεται π.χ. στο ότι
- πρέπει να συμπληρώσετε μια φόρμα εγγραφής πριν
- <quote>κατεβάσετε</quote> την εφαρμογή, ή στο ότι δεν επιτρέπεται η
- επαναδιανομή, ή σε κάποιο άλλο λόγο. Εάν θέλετε να εγκαταστήσετε
- ένα port που δεν περιλαμβάνεται στο CD-ROM, θα χρειαστεί να είστε
- συνδεδεμένος στο Διαδίκτυο για να το επιτύχετε.</para>
- </note>
-
- <para>Το σύστημα των ports χρησιμοποιεί το &man.fetch.3; για να
- <quote>κατεβάσει</quote> τα αρχεία. Το &man.fetch.3;
- χρησιμοποιεί διάφορες μεταβλητές περιβάλλοντος, περιλαμβανομένων των
- <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar>, και
- <envar>FTP_PASSWORD</envar>. Ίσως χρειαστεί να ρυθμίσετε μία ή
- περισσότερες αν βρίσκεστε πίσω από ένα firewall, ή ίσως να χρειαστεί
- να χρησιμοποιήσετε έναν FTP/HTTP proxy. Δείτε το &man.fetch.3; για
- μια πλήρη λίστα των μεταβλητών αυτών.</para>
-
- <para>Για χρήστες που δεν μπορούν να είναι συνδεδεμένοι όλη την ώρα,
- διατίθεται η επιλογή
- <command>make <maketarget>fetch</maketarget></command>.
- Απλώς εκτελέστε την εντολή στον κατάλογο
- (<filename>/usr/ports</filename>) και τα απαραίτητα αρχεία
- θα <quote>κατέβουν</quote> για εσάς. Η εντολή αυτή θα λειτουργήσει
- και σε υποκαταλόγους, όπως για παράδειγμα:
- <filename>/usr/ports/net</filename>. Προσέξτε ότι αν ένα port
- εξαρτάται από βιβλιοθήκες ή άλλα ports, η εντολή αυτή
- <emphasis>δεν</emphasis> θα ανακτήσει τα distfiles τους.
- Αντικαταστήστε το <maketarget>fetch</maketarget> με το
- <maketarget>fetch-recursive</maketarget>
- αν θέλετε μαζί με το port να ανακτήσετε και όλες τις
- εξαρτήσεις του.</para>
-
- <note>
- <para>Μπορείτε να μεταγλωττίσετε όλα τα ports σε μία κατηγορία ή
- ακόμα και σε όλες, εκτελώντας το <command>make</command> στον αρχικό
- κατάλογο, όπως με την προαναφερθείσα
- <command>make <maketarget>fetch</maketarget></command> μέθοδο.
- Αυτό όμως είναι επικίνδυνο, γιατί μερικά ports δεν μπορούν να
- συνυπάρχουν. Σε άλλες περιπτώσεις, μερικά ports μπορεί να
- εγκαταστήσουν δυο διαφορετικά αρχεία με το με το ίδιο
- όνομα.</para>
- </note>
-
- <para>Σε μερικές σπάνιες περιπτώσεις, οι χρήστες μπορεί να χρειάζεται
- να ανακτήσουν τα tarballs από ένα site διαφορετικό από τα
- <makevar>MASTER_SITES</makevar> (η τοποθεσία από όπου
- <quote>κατεβαίνουν</quote> τα αρχεία). Μπορείτε να αλλάξετε την
- επιλογή <makevar>MASTER_SITES</makevar> με την ακόλουθη
- εντολή:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput>
-&prompt.root; <userinput>make MASTER_SITE_OVERRIDE= \
-ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
-
- <para>Σε αυτό το παράδειγμα αλλάξαμε την επιλογή
- <makevar>MASTER_SITES</makevar> σε <hostid
- role="fqdn">ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/</hostid>.</para>
-
- <note>
- <para>Μερικά ports επιτρέπουν (ή απαιτούν) να δώσετε επιλογές
- μεταγλώττισης που μπορούν να ενεργοποιήσουν/απενεργοποιήσουν
- τμήματα της εφαρμογής που είναι αχρείαστα, συγκεκριμένες επιλογές
- ασφαλείας, και άλλες τροποποιήσεις. Κοινά παραδείγματα τέτοιων
- ports είναι τα <filename role="package">www/firefox</filename>,
- <filename role="package">security/gpgme</filename>, και το
- <filename role="package">mail/sylpheed-claws</filename>. Όταν
- υπάρχουν διαθέσιμες τέτοιες επιλογές, θα εμφανιστεί στην οθόνη
- σας σχετικό μήνυμα.</para>
- </note>
-
- <sect3>
- <title>Παρακάμπτοντας τους Προεπιλεγμένους Καταλόγους των
- Ports</title>
-
- <para>Μερικές φορές είναι χρήσιμο (ή επιτακτικό) να χρησιμοποιήσετε
- ένα διαφορετικό κατάλογο εργασίας και εγκατάστασης. Οι μεταβλητές
- <makevar>WRKDIRPREFIX</makevar> και <makevar>PREFIX</makevar>
- μπορούν να παρακάμψουν τους προεπιλεγμένους καταλόγους. Για
- παράδειγμα, η εντολή:</para>
-
- <screen>&prompt.root; <userinput>make WRKDIRPREFIX=/usr/home/example/ports install</userinput></screen>
-
- <para>θα μεταγλωττίσει το port στο
- <filename>/usr/home/example/ports</filename> και θα εγκαταστήσει
- τα πάντα στο <filename>/usr/local</filename>, ενώ η εντολή:</para>
-
- <screen>&prompt.root; <userinput>make PREFIX=/usr/home/example/local install</userinput></screen>
-
- <para>θα μεταγλωττίσει το port στο <filename>/usr/ports</filename> και
- θα το εγκαταστήσει στο
- <filename>/usr/home/example/local</filename>.</para>
-
- <para>Και φυσικά η εντολή:</para>
-
- <screen>&prompt.root; <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput></screen>
-
- <para>θα συνδυάσει και τα δυο (είναι πολύ μεγάλη για να την δείξουμε
- εδώ, άλλα πρέπει να πήρατε την γενική ιδέα).</para>
-
- <para>Εναλλακτικά, αυτές οι μεταβλητές μπορούν να ρυθμιστούν ως μέρος
- του περιβάλλοντος σας. Διαβάστε την σελίδα manual για το κέλυφος
- σας, για να βρείτε τις σχετικές οδηγίες.</para>
- </sect3>
-
- <sect3>
- <title>Αντιμετωπίζοντας το <command>imake</command></title>
-
- <para>Μερικά ports που χρησιμοποιούν το <command>imake</command>
- (μέρος του X Window System) δεν συνεργάζονται σωστά με το
- <makevar>PREFIX</makevar>, και επιμένουν να εγκατασταθούν
- στο <filename>/usr/X11R6</filename>. Όμοια, μερικά Perl
- ports αγνοούν το <makevar>PREFIX</makevar> και εγκαθίστανται στο
- δέντρο Perl. Το να κάνετε αυτά τα ports να σέβονται το
- <makevar>PREFIX</makevar> είναι μία δύσκολη ή αδύνατη
- δουλειά.</para>
- </sect3>
-
- <sect3>
- <title>Επαναρύθμιση Επιλογών Ports</title>
-
- <para>Όταν μεταγλωττίζετε κάποια ports, μπορεί να εμφανιστεί στην
- οθόνη σας ένα μενού επιλογών (βασισμένο σε ncurses) το οποίο να σας
- επιτρέπει να αλλάξετε διάφορες επιλογές μεταγλώττισης. Δεν είναι
- σπάνιο κάποιοι χρήστες να θέλουν να επισκεφτούν ξανά αυτό το μενού,
- για να προσθέσουν, να αφαιρέσουν ή να αλλάξουν κάποιες επιλογές,
- μετά την μεταγλώττιση του port. Μια επιλογή είναι να μετακινηθείτε
- στον κατάλογο του port και να γράψετε
- <command>make <maketarget>config</maketarget></command>, με το
- οποίο θα εμφανιστεί ξανά το μενού με τις προηγούμενες ρυθμίσεις σας
- ήδη επιλεγμένες. Μια άλλη δυνατότητα, είναι να χρησιμοποιήσετε την
- εντολή <command>make <maketarget>showconfig</maketarget></command>,
- με την οποία θα δείτε όλες τις επιλεγμένες ρυθμίσεις του port.
- Τέλος, μια ακόμα επιλογή είναι να εκτελέσετε την εντολή
- <command>make <maketarget>rmconfig</maketarget></command> η οποία
- θα αφαιρέσει όλες τις αποθηκευμένες επιλογές και θα σας επιτρέψει να
- ξεκινήσετε ξανά από την αρχή. Όλες αυτές οι επιλογές, και ακόμα
- περισσότερες, εξηγούνται στη σελίδα manual του &man.ports.7;.</para>
- </sect3>
- </sect2>
-
- <sect2 id="ports-removing">
- <title>Αφαιρώντας Εγκατεστημένα Ports</title>
-
- <indexterm>
- <primary>ports</primary>
- <secondary>removing</secondary>
- </indexterm>
- <para>Τώρα που γνωρίσατε πως να εγκαθιστάτε ports, πιθανώς θα
- αναρωτιέστε πως αφαιρούνται, στην περίπτωση που εγκαταστήσατε ένα
- και αργότερα αποφασίσατε ότι εγκαταστήσατε το λάθος port.
- Θα αφαιρέσουμε το προηγούμενο παράδειγμα (που ήταν το
- <command>lsof</command> για όσους δεν το πρόσεξαν). Τα ports
- αφαιρούνται όπως και τα πακέτα (το αναλύσαμε στην ενότητα <link
- linkend="packages-using">Χρησιμοποιώντας το Σύστημα των
- Πακέτων</link>), χρησιμοποιώντας την
- εντολή &man.pkg.delete.1;:</para>
-
- <screen>&prompt.root; <userinput>pkg_delete lsof-4.57</userinput></screen>
- </sect2>
-
- <sect2 id="ports-upgrading">
- <title>Αναβαθμίζοντας τα Ports</title>
-
- <indexterm>
- <primary>ports</primary>
- <secondary>upgrading</secondary>
- </indexterm>
- <para>Αρχικά, δείτε τα παρωχημένα ports για τα οποία υπάρχουν
- διαθέσιμες νεότερες εκδόσεις στην Συλλογή των Ports, με την εντολή
- &man.pkg.version.1;:</para>
-
- <screen>&prompt.root; <userinput>pkg_version -v</userinput></screen>
-
- <sect3 id="ports-file-updating">
- <title><filename>/usr/ports/UPDATING</filename></title>
-
- <para>Μόλις ανανεώσετε την Συλλογή των Ports, πρέπει να ελέγξετε το
- αρχείο <filename>/usr/ports/UPDATING</filename>, πριν επιχειρήσετε
- την αναβάθμιση ενός port. Αυτό το αρχείο περιγράφει διάφορα πιθανά
- προβλήματα, καθώς και ενδεχόμενα πρόσθετα βήματα που πρέπει να
- εκτελέσετε όταν ανανεώνετε ένα port. Παραδείγματα των παραπάνω,
- είναι η αλλαγή μορφής κάποιων αρχείων, αλλαγή στην τοποθεσία
- των αρχείων ρυθμίσεων, ή άλλες ασυμβατότητες
- με παλαιότερες εκδόσεις.</para>
-
- <para>Αν το <filename>UPDATING</filename> αναιρεί κάτι που διαβάσατε
- εδώ, θεωρήστε ότι ισχύει το <filename>UPDATING</filename>.</para>
- </sect3>
-
- <sect3 id="portupgrade">
- <title>Αναβαθμίζοντας Ports με το Portupgrade</title>
-
- <indexterm>
- <primary>portupgrade</primary>
- </indexterm>
-
- <para>Το εργαλείο <application>portupgrade</application> είναι
- σχεδιασμένο για να αναβαθμίζει εύκολα εγκατεστημένα ports.
- Διατίθεται από το
- <filename role="package">ports-mgmt/portupgrade</filename> port.
- Εγκαταστήστε το όπως κάθε port, χρησιμοποιώντας την εντολή
- <command>make <maketarget>install clean</maketarget></command>:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput>
-&prompt.root; <userinput>make install clean</userinput></screen>
-
- <para>Η εντολή <command>pkgdb -F</command> θα διαβάσει και θα
- διορθώσει όλες τις ασυνέπειες που ίσως υπάρχουν στη λίστα των
- εγκατεστημένων ports. Είναι καλή ιδέα είναι να την εκτελείτε
- συχνά, ενδεχομένως πριν από κάθε αναβάθμιση.</para>
-
- <para>Όταν εκτελείτε το <command>portupgrade -a</command>, το
- <application>portupgrade</application> θα αρχίσει να αναβαθμίζει
- όλα τα παρωχημένα ports που είναι εγκατεστημένα στο σύστημα σας.
- Χρησιμοποιήστε την επιλογή <option>-i</option> αν θέλετε να σας
- ρωτά για επιβεβαίωση για κάθε ξεχωριστή αναβάθμιση.</para>
-
- <screen>&prompt.root; <userinput>portupgrade -ai</userinput></screen>
-
- <para>Αν θέλετε να αναβαθμίσετε μόνο μία συγκεκριμένη εφαρμογή, και
- όχι όλα τα διαθέσιμα ports, χρησιμοποιήστε το
- <command>portupgrade <replaceable>pkgname</replaceable></command>.
- Συμπεριλάβετε την επιλογή <option>-R</option> αν το
- <application>portupgrade</application> πρέπει πρώτα να αναβαθμίσει
- όλα τα ports που απαιτούνται για την συγκεκριμένη εφαρμογή.</para>
-
- <screen>&prompt.root; <userinput>portupgrade -R firefox</userinput></screen>
-
- <para>Για να χρησιμοποιήσετε πακέτα αντί για ports στην εγκατάσταση,
- δώστε την επιλογή <option>-P</option>. Με αυτή την επιλογή το
- <application>portupgrade</application> αναζητά
- τους τοπικούς καταλόγους που ορίζονται στο <envar>PKG_PATH</envar>,
- ή ανακτά τα πακέτα από απομακρυσμένα sites εάν δεν βρεθούν τοπικά.
- Αν τα πακέτα δεν μπορούν να ανακτηθούν με τους παραπάνω τρόπους, το
- <application>portupgrade</application> θα χρησιμοποιήσει τα ports.
- Για να αποφύγετε εντελώς την χρήση των ports, καθορίστε την επιλογή
- <option>-PP</option>.</para>
-
- <screen>&prompt.root; <userinput>portupgrade -PR gnome2</userinput></screen>
-
- <para>Για να ανακτήσετε απλώς τα distfiles (ή τα πακέτα, αν έχετε
- ορίσει την επιλογή <option>-P</option>) χωρίς να μεταγλωττίσετε ή να
- εγκαταστήσετε τίποτα, χρησιμοποιήστε το <option>-F</option>.
- Για περισσότερες πληροφορίες, δείτε το &man.portupgrade.1;.</para>
- </sect3>
-
- <sect3 id="portmanager">
- <title>Αναβαθμίζοντας Ports με το Portmanager</title>
-
- <indexterm>
- <primary>portmanager</primary>
- </indexterm>
- <para>Το <application>Portmanager</application> είναι ένα ακόμα
- εργαλείο για εύκολη αναβάθμιση εγκατεστημένων ports. Διατίθεται
- από το <filename role="package">ports-mgmt/portmanager</filename>
- port:</para>
-
- <screen>&prompt.root; <userinput>cd <filename class="directory">/usr/ports/ports-mgmt/portmanager</filename></userinput>
-&prompt.root; <userinput>make install clean</userinput></screen>
-
- <para>Όλα τα εγκατεστημένα ports μπορούν να αναβαθμιστούν
- χρησιμοποιώντας αυτή την απλή εντολή:</para>
-
- <screen>&prompt.root; <userinput>portmanager -u</userinput></screen>
-
- <para>Μπορείτε να προσθέσετε την επιλογή <option>-ui</option>
- στην παραπάνω εντολή (<userinput>portmanager -u -ui</userinput>)
- για να ερωτηθείτε να επιβεβαιώσετε κάθε βήμα που θα εκτελέσει το
- <application>Portmanager</application>.
- Το <application>Portmanager</application> μπορεί επίσης
- να χρησιμοποιηθεί για να εγκαταστήσετε νέα ports στο σύστημα.
- Σε αντίθεση με την εντολή
- <command>make <maketarget>install clean</maketarget></command>, το
- <application>Portmanager</application> θα αναβαθμίσει όλες
- τις εξαρτήσεις πριν την μεταγλώττιση και εγκατάσταση του
- επιλεγμένου port.</para>
-
- <screen>&prompt.root; <userinput>portmanager <replaceable>x11/gnome2</replaceable></userinput></screen>
-
- <para>Αν υπάρχουν προβλήματα που σχετίζονται με τις εξαρτήσεις ενός
- επιλεγμένου port, μπορείτε να χρησιμοποιήσετε το
- <application>Portmanager</application> για να τις
- επανα-μεταγλωττίσει όλες με την σωστή σειρά. Μόλις τελειώσει με
- τις εξαρτήσεις, θα επανα-μεταγλωττίσει και το προβληματικό
- port.</para>
-
- <screen>&prompt.root; <userinput>portmanager <replaceable>graphics/gimp</replaceable> -f</userinput></screen>
-
- <para>Για περισσότερες πληροφορίες δείτε τη σελίδα manual
- &man.portmanager.1;.</para>
- </sect3>
-
- <sect3 id="portmaster">
- <title>Αναβαθμίζοντας τα Ports μέσω του Portmaster</title>
-
- <indexterm>
- <primary>portmaster</primary>
- </indexterm>
- <para>Το <application>Portmaster</application> είναι ένα ακόμα
- εργαλείο για την αναβάθμιση των εγκατεστημένων ports. Το
- <application>Portmaster</application> σχεδιάστηκε ώστε να
- χρησιμοποιεί τα εργαλεία που παρέχει το <quote>βασικό</quote>
- σύστημα (δεν εξαρτάται από άλλα ports) και χρησιμοποιεί τις
- πληροφορίες του <filename class="directory">/var/db/pkg</filename>
- για να καθορίσει ποια ports θα αναβαθμίσει. Είναι διαθέσιμο μέσω
- του port
- <filename role="package">ports-mgmt/portmaster</filename>:</para>
-
- <screen>&prompt.root; <userinput>cd <filename class="directory">/usr/ports/ports-mgmt/portmaster</filename></userinput>
-&prompt.root; <userinput>make install clean</userinput></screen>
-
- <para>Το <application>Portmaster</application> ομαδοποιεί τα ports
- σε τέσσερις κατηγορίες:</para>
-
- <itemizedlist>
- <listitem>
- <para>Root ports (δεν εξαρτώνται από άλλα, και ούτε άλλα
- εξαρτώνται από αυτά)</para>
- </listitem>
-
- <listitem>
- <para>Trunk ports (δεν εξαρτώνται από άλλα, ωστόσο κάποια πακέτα
- εξαρτώνται από αυτά)</para>
- </listitem>
-
- <listitem>
- <para>Branch ports (έχουν εξαρτήσεις και προς τις δύο
- κατευθύνσεις)</para>
- </listitem>
-
- <listitem>
- <para>Leaf ports (εξαρτώνται από άλλα, αλλά όχι το
- αντίθετο)</para>
- </listitem>
- </itemizedlist>
-
- <para>Μπορείτε να δείτε μια λίστα όλων των εγκατεστημένων ports και
- να ψάξετε για ενημερωμένες εκδόσεις, χρησιμοποιώντας την επιλογή
- <option>-L</option>:</para>
-
- <screen>&prompt.root; <userinput>portmaster -L</userinput>
-===>>> Root ports (No dependencies, not depended on)
-===>>> ispell-3.2.06_18
-===>>> screen-4.0.3
- ===>>> New version available: screen-4.0.3_1
-===>>> tcpflow-0.21_1
-===>>> 7 root ports
-...
-===>>> Branch ports (Have dependencies, are depended on)
-===>>> apache-2.2.3
- ===>>> New version available: apache-2.2.8
-...
-===>>> Leaf ports (Have dependencies, not depended on)
-===>>> automake-1.9.6_2
-===>>> bash-3.1.17
- ===>>> New version available: bash-3.2.33
-...
-===>>> 32 leaf ports
-
-===>>> 137 total installed ports
- ===>>> 83 have new versions available</screen>
-
- <para>Μπορείτε να αναβαθμίσετε όλα τα εγκατεστημένα ports με την
- παρακάτω απλή εντολή:</para>
-
- <screen>&prompt.root; <userinput>portmaster -a</userinput></screen>
-
- <note><para>Από προεπιλογή, το <application>Portmaster</application>
- θα δημιουργήσει αντίγραφο ασφαλείας του εγκατεστημένου πακέτου
- πριν το διαγράψει. Αν η εγκατάσταση της νέας έκδοσης είναι
- επιτυχής, το <application>Portmaster</application> θα σβήσει το
- αντίγραφο αυτό. Αν χρησιμοποιήσετε την επιλογή
- <option>-b</option>, το <application>Portmaster</application> δεν
- θα σβήσει αυτόματα το αντίγραφο. Αν χρησιμοποιήσετε την επιλογή
- <option>-i</option>, θα θέσετε το
- <application>Portmaster</application> σε διαδραστική λειτουργία,
- όπου θα σας ζητάει επιβεβαίωση πριν την αναβάθμιση κάθε
- port.</para></note>
-
- <para>Αν αντιμετωπίσετε λάθη κατά τη διαδικασία της αναβάθμισης,
- μπορείτε να χρησιμοποιήσετε την επιλογή <option>-f</option> για
- να αναβαθμίσετε και να μεταγλωττίσετε ξανά όλα τα ports:</para>
-
- <screen>&prompt.root; <userinput>portmaster -af</userinput></screen>
-
- <para>Μπορείτε επίσης να χρησιμοποιήσετε το
- <application>Portmaster</application> για να εγκαταστήσετε νέα
- ports στο σύστημα σας, αναβαθμίζοντας και όλες τις εξαρτήσεις τους
- πριν τη μεταγλώττιση και εγκατάσταση τους:</para>
-
- <screen>&prompt.root; <userinput>portmaster <replaceable>shells/bash</replaceable></userinput></screen>
-
- <para>Παρακαλούμε δείτε τη σελίδα manual του &man.portmaster.8; για
- περισσότερες πληροφορίες.</para>
- </sect3>
- </sect2>
-
- <sect2 id="ports-disk-space">
- <title>Ports και Αποθηκευτικός Χώρος</title>
-
- <indexterm>
- <primary>ports</primary>
- <secondary>disk-space</secondary>
- </indexterm>
- <para>Η Συλλογή των Ports καταναλώνει διαθέσιμο χώρο στο δίσκο με την
- πάροδο του χρόνου. Μετά την μεταγλώττιση και εγκατάσταση λογισμικού
- από τα ports, πρέπει πάντα να θυμάστε να καθαρίζετε τους προσωρινούς
- καταλόγους <filename class="directory">work</filename>
- χρησιμοποιώντας την εντολή
- <command>make <maketarget>clean</maketarget></command>. Mπορείτε να
- καθαρίσετε όλη την Συλλογή των Ports με την ακόλουθη εντολή:</para>
-
- <screen>&prompt.root; <userinput>portsclean -C</userinput></screen>
-
- <para>Με την πάροδο του χρόνου, θα συσσωρευτούν πολλά αρχεία διανομής
- πηγαίου κώδικα στον κατάλογο
- <filename class="directory">distfiles</filename>.
- Μπορείτε να τα αφαιρέσετε χειροκίνητα, ή μπορείτε να χρησιμοποιήσετε
- την ακόλουθη εντολή για να διαγράψετε όλα τα distfiles που δεν
- σχετίζονται πλέον με κανένα port:</para>
-
- <screen>&prompt.root; <userinput>portsclean -D</userinput></screen>
-
- <para>Ή για να αφαιρέσετε όλα τα distfiles που δεν σχετίζονται με
- κανένα port που βρίσκεται εγκατεστημένο στο σύστημα σας:</para>
-
- <screen>&prompt.root; <userinput>portsclean -DD</userinput></screen>
-
- <note>
- <para>Το εργαλείο <command>portsclean</command> εγκαθίσταται ως μέρος
- του <application>portupgrade</application>.</para>
- </note>
-
- <para>Μην ξεχνάτε να αφαιρείτε τα εγκατεστημένα ports όταν δεν τα
- χρειάζεστε πλέον. Ένα καλό εργαλείο για να αυτοματοποιηθεί αυτή η
- εργασία, είναι το port
- <filename role="package">ports-mgmt/pkg_cutleaves</filename>.</para>
- </sect2>
- </sect1>
-
- <sect1 id="ports-nextsteps">
- <title>Ενέργειες μετά την Εγκατάσταση</title>
-
- <para>Μετά την εγκατάσταση μιας νέας εφαρμογής, λογικά θα θέλετε
- να διαβάσετε ότι τεκμηρίωση υπάρχει, να τροποποιήσετε τα
- αρχεία ρυθμίσεων που χρειάζεται, να βεβαιωθείτε ότι η
- εφαρμογή ξεκινάει κατά την εκκίνηση (αν είναι daemon), κ.λ.π.</para>
-
- <para>Τα ακριβή βήματα που θα χρειαστούν για να ρυθμίσετε κάθε
- εφαρμογή, θα είναι προφανώς διαφορετικά. Όμως, αν μόλις
- εγκαταστήσατε μια νέα εφαρμογή και αναρωτιέστε <quote>Τώρα τι;</quote>
- οι παρακάτω συμβουλές μπορεί να σας βοηθήσουν:</para>
-
- <itemizedlist>
- <listitem>
- <para>Χρησιμοποιήστε το &man.pkg.info.1; για να δείτε τι αρχεία
- εγκαταστάθηκαν, και που. Για παράδειγμα, αν μόλις εγκαταστήσατε το
- FooPackage version 1.0.0, τότε η εντολή:</para>
-
- <screen>&prompt.root; <userinput>pkg_info -L foopackage-1.0.0 | less</userinput></screen>
-
- <para>θα σας δείξει όλα τα αρχεία που εγκαταστάθηκαν από αυτό το
- πακέτο. Προσέξτε τα αρχεία στον κατάλογο
- <filename>man/</filename>, που θα είναι σελίδες manual, τους
- κατάλογους <filename>etc/</filename>, όπου θα είναι τα αρχεία
- ρυθμίσεων, και το <filename>doc/</filename>, όπου θα βρίσκεται πιο
- περιεκτική τεκμηρίωση.</para>
-
- <para>Αν δεν είστε σίγουρος ποια έκδοση της εφαρμογής εγκαταστήσατε,
- μια εντολή όπως αυτή:</para>
-
- <screen>&prompt.root; <userinput>pkg_info | grep -i <replaceable>foopackage</replaceable></userinput></screen>
-
- <para>θα βρει όλα τα εγκατεστημένα πακέτα που έχουν το
- <replaceable>foopackage</replaceable> στο όνομα του πακέτου.
- Αντικαταστήστε το <replaceable>foopackage</replaceable> στην
- γραμμή εντολών με το πακέτο που αναζητάτε.</para>
- </listitem>
-
- <listitem>
- <para>Μόλις δείτε που βρίσκονται τα manual pages της εφαρμογής, δείτε
- τα με την &man.man.1;. Όμοια, δείτε τα παραδείγματα των αρχείων
- ρύθμισης, και όποια άλλη πρόσθετη τεκμηρίωση διατίθεται.</para>
- </listitem>
-
- <listitem>
- <para>Αν υπάρχει web site για την εφαρμογή, ελέγξτε το για πρόσθετη
- τεκμηρίωση, συχνές ερωτήσεις (FAQ), και άλλα. Αν δεν είστε
- σίγουρος για την διεύθυνσή του web site, ίσως το βρείτε στην έξοδο
- της εντολής:</para>
-
- <screen>&prompt.root; <userinput>pkg_info <replaceable>foopackage-1.0.0</replaceable></userinput></screen>
-
- <para>Αν υπάρχει γραμμή <literal>WWW:</literal>, θα πρέπει να
- έχει το URL για το web site της εφαρμογής.</para>
- </listitem>
-
- <listitem>
- <para>Ports που πρέπει να ξεκινούν κατά την εκκίνηση
- (όπως διακομιστές Internet) συνήθως εγκαθιστούν ένα script στο
- <filename>/usr/local/etc/rc.d</filename>. Πρέπει να ελέγξετε το
- script για την ορθότητα του και να το τροποποιήσετε ή να το
- μετονομάσετε αν χρειάζεται. Δείτε το <link
- linkend="configtuning-starting-services">Εκκινώντας
- Υπηρεσίες</link> για περισσότερες πληροφορίες.</para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <sect1 id="ports-broken">
- <title>Αντιμετωπίζοντας Χαλασμένα Ports</title>
-
- <para>Αν έρθετε αντιμέτωπος με ένα port το οποίο δεν λειτουργεί,
- υπάρχουν κάποια πράγματα που μπορείτε να κάνετε:</para>
-
- <orderedlist>
- <listitem>
- <para>Δείτε αν εκκρεμεί κάποια διόρθωση για το port στο
- <ulink url="&url.base;/support.html#gnats">Problem Report
- database</ulink>. Εάν ναι, μπορείτε να χρησιμοποιήσετε τη
- προτεινόμενη διόρθωση.</para>
- </listitem>
-
- <listitem>
- <para>Ζητήστε βοήθεια από τον συντηρητή του port. Πληκτρολογήστε
- <command>make <maketarget>maintainer</maketarget></command> ή
- διαβάστε το <filename>Makefile</filename> για να βρείτε την
- διεύθυνση email του συντηρητή. Στο μήνυμα σας, θυμηθείτε να
- συμπεριλάβετε το όνομα και την έκδοση του port (στείλτε τη γραμμή
- <literal>&dollar;&os;:</literal> από το
- <filename>Makefile</filename>) καθώς και την έξοδο του
- σφάλματος.</para>
-
- <note>
- <para>Μερικά ports δεν συντηρούνται από κάποιο συγκεκριμένο άτομο,
- αλλά από κάποια <ulink
- url="&url.articles.mailing-list-faq;/article.html">mailing
- list</ulink>. Πολλές, αν όχι όλες, από αυτές τις διευθύνσεις
- έχουν την μορφή
- <email role="nolink">freebsd-listname@FreeBSD.org</email>.
- Παρακαλούμε να το έχετε υπόψη σας κατά τη διατύπωση των
- ερωτήσεων σας.</para>
-
- <para>Συγκεκριμένα, τα ports που φαίνονται ότι συντηρούνται από το
- <email role="nolink">ports@FreeBSD.org</email>, δεν
- συντηρούνται από κανέναν στην πραγματικότητα. Διορθώσεις και
- υποστήριξη, αν υπάρχουν, έρχονται γενικά από την κοινότητα που
- συμμετέχει στην συγκεκριμένη mailing list. Χρειαζόμαστε πάντοτε
- περισσότερους εθελοντές!</para>
- </note>
-
- <para>Αν δεν λάβετε απάντηση,
- μπορείτε να χρησιμοποιήσετε το &man.send-pr.1; για να στείλετε
- μια αναφορά σφάλματος (δείτε το <ulink
- url="&url.articles.problem-reports;/article.html">Γράφοντας
- Αναφορές Σφάλματος για το &os;</ulink>).</para>
- </listitem>
-
- <listitem>
- <para>Διορθώστε το! Το <ulink
- url="&url.books.porters-handbook;/index.html">Porter's
- Handbook</ulink> περιέχει λεπτομερείς πληροφορίες για την υποδομή
- των <quote>Ports</quote> ώστε να μπορείτε να διορθώσετε το
- περιστασιακό προβληματικό port ή ακόμα και να δημιουργήσετε ένα
- δικό σας port!</para>
- </listitem>
-
- <listitem>
- <para>Ανακτήστε το πακέτο από ένα κοντινό σας FTP site. Η
- <quote>κύρια</quote> συλλογή πακέτων βρίσκεται στο <hostid
- role="fqdn">ftp.FreeBSD.org</hostid>, στον <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/">κατάλογο
- πακέτων</ulink>. Πριν τη χρησιμοποιήσετε, ελέγξτε
- <emphasis>πρώτα</emphasis> το <link
- linkend="mirrors-ftp">τοπικό σας mirror</link>.
- Τα πακέτα είναι πιο σίγουρο ότι θα λειτουργήσουν,
- από το να προσπαθείτε να μεταγλωττίσετε τον πηγαίο κώδικα, και
- η διαδικασία τελειώνει πιο γρήγορα. Χρησιμοποιήστε το πρόγραμμα
- &man.pkg.add.1; για να εγκαταστήσετε το πακέτο στο
- σύστημα σας.</para>
- </listitem>
- </orderedlist>
- </sect1>
-</chapter>