

Οδηγός Γρήγορης Εκκίνησης του FreeBSD για Χρήστες Linux®


John Ferrell

$FreeBSD: release/8.4.0/el_GR.ISO8859-7/articles/linux-users/article.xml 39632
2012-10-01 11:56:00Z gabor $
Πνευματικά Δικαιώματα © 2008 Η Ομάδα Τεκμηρίωσης του FreeBSD
$FreeBSD: release/8.4.0/el_GR.ISO8859-7/articles/linux-users/article.xml 39632
2012-10-01 11:56:00Z gabor $
Το FreeBSD είναι ένα κατοχυρωμένο εμπορικό σύμβολο του FreeBSD Foundation.
Το Linux είναι ένα κατοχυρωμένα εμπορικό σύμβολο του Linus Torvalds στις
Ηνωμένες Πολιτείες.
Οι λέξεις Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium, και Xeon
είναι εμπορικά σύμβολα ή κατοχυρωμένα εμπορικά σύμβολα της Intel Corporation
και των θυγατρικών της στις Ηνωμένες Πολιτείες και σε άλλες χώρες.
Οι λέξεις ή φράσεις Red Hat, και RPM είναι εμπορικά σύμβολα ή κατοχυρωμένα
εμπορικά σύμβολα της Red Hat, Inc. στις Ηνωμένες Πολιτείες και σε άλλες χώρες.
Η λέξη UNIX είναι κατοχυρωμένο εμπορικό σύμβολο του Open Group στις Ηνωμένες
Πολιτείες και σε άλλες χώρες.
Πολλές από τις λέξεις ή φράσεις οι οποίες χρησιμοποιούνται από τους
κατασκευαστές ή τους πωλητές τους για να διακρίνουν τα προϊόντα τους θεωρούνται
εμπορικά σύμβολα. Όπου αυτές εμφανίζονται σε αυτό το κείμενο και για όσες από
αυτές γνωρίζει η Ομάδα Ανάπτυξης του FreeBSD ότι είναι πιθανόν να είναι
εμπορικά σύμβολα, θα δείτε ένα από τα σύμβολα: «"» ή «®».
Το κείμενο αυτό έχει σκοπό να βοηθήσει στη γρήγορη εξοικείωση χρηστών Linux®
μέσου / προχωρημένου επιπέδου με τις βασικές έννοιες του FreeBSD
-------------------------------------------------------------------------------

1 Εισαγωγή

Το κείμενο αυτό τονίζει τις διαφορές μεταξύ του FreeBSD και του Linux ώστε
μέσοι ή προχωρημένοι χρήστες του Linux να μπορούν γρήγορα να προσαρμοστούν στις
βασικές έννοιες του FreeBSD. Πρόκειται για μια τεχνική εισαγωγή στο FreeBSD,
και δεν θα αναφερθούμε σε τυχόν «φιλοσοφικές» διαφορές μεταξύ των δύο
συστημάτων.
Το κείμενο αυτό υποθέτει ότι έχετε ήδη εγκαταστήσει το FreeBSD. Αν δεν έχετε
εγκαταστήσει το FreeBSD ή χρειάζεστε βοήθεια με την διαδικασία εγκατάστασης
του, παρακαλούμε να διαβάσετε το κεφάλαιο Εγκαθιστώντας_το_FreeBSD στο
Εγχειρίδιο του FreeBSD.
-------------------------------------------------------------------------------

2 Κελύφη: Δεν υπάρχει Bash;

Όσοι έρχονται από το Linux συχνά εκπλήσσονται όταν ανακαλύπτουν ότι το Bash δεν
είναι το προεπιλεγμένο κέλυφος στο FreeBSD. Στην πραγματικότητα, το Bash δεν
υπάρχει καν στην βασική διανομή του FreeBSD. Αντίθετα, το FreeBSD χρησιμοποιεί
το tcsh(1) ως το προεπιλεγμένο κέλυφος. Το Bash καθώς και άλλα κελύφη που ίσως
θέλετε να εγκαταστήσετε, είναι διαθέσιμα στη Συλλογή_Πακέτων_και_Ports του
FreeBSD.
Αν εγκαταστήσετε διαφορετικά κελύφη, μπορείτε να χρησιμοποιήσετε την εντολή
chsh(1) για να αλλάξετε το προεπιλεγμένο κέλυφος κάποιου χρήστη. Σας συνιστούμε
ωστόσο να αφήσετε το κέλυφος του root στο προεπιλεγμένο. Ο λόγος για αυτό είναι
ότι τα κελύφη που δεν περιλαμβάνονται στην βασική διανομή του FreeBSD,
εγκαθίστανται στην τοποθεσία /usr/local/bin ή /usr/bin. Σε περίπτωση
προβλήματος, είναι πιθανόν τα συστήματα αρχείων όπου βρίσκονται τα /usr/local/
bin και /usr/bin να μην μπορούν να προσαρτηθούν. Στην περίπτωση αυτή, ο root
δεν θα είχε πρόσβαση στο προεπιλεγμένο του κέλυφος, εμποδίζοντας έτσι και την
είσοδο του στο σύστημα. Για το λόγο αυτό, υπάρχει ένας δεύτερος λογαριασμός
όμοιος με τον root, ο toor, ο οποίος δημιουργήθηκε ειδικά για να
χρησιμοποιείται με κάποιο άλλο κέλυφος. Δείτε τις Συχνές Ερωτήσεις Ασφαλείας
σχετικά με τον λογαριασμό_toor.
-------------------------------------------------------------------------------

3 Πακέτα και Ports: Προσθέτοντας λογισμικό στο FreeBSD

Εκτός από την παραδοσιακή μέθοδο εγκατάστασης λογισμικού του UNIX® (κατέβασμα
του πηγαίου κώδικα, αποσυμπίεση του αρχείου, επεξεργασία και μεταγλώττιση), το
FreeBSD προσφέρει δύο ακόμα μεθόδους για την εγκατάσταση εφαρμογών: τα πακέτα
και τα ports. Για μια πλήρη λίστα όλων των διαθέσιμων πακέτων και ports, δείτε
εδώ.
-------------------------------------------------------------------------------

3.1 Πακέτα

Τα πακέτα είναι προ-μεταγλωττισμένες εφαρμογές, θα λέγαμε το αντίστοιχο για το
FreeBSD των αρχείων .deb σε συστήματα Debian/Ubuntu και των αρχείων .rpm σε
συστήματα Red Hat/Fedora. Τα πακέτα εγκαθίστανται χρησιμοποιώντας την εντολή
pkg_add(1). Για παράδειγμα, η ακόλουθη εντολή εγκαθιστά τον Apache 2.2:

  # pkg_add /tmp/apache-2.2.6_2.tbz

Η χρήση της παραμέτρου -r οδηγεί την pkg_add(1) να κατεβάσει αυτόματα τόσο το
πακέτο, όσο και τις εξαρτήσεις του, και να το εγκαταστήσει:

  # pkg_add -r apache22
  Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/
  Latest/apache22.tbz... Done.
  Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/
  All/expat-2.0.0_1.tbz... Done.
  Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/
  All/perl-5.8.8_1.tbz... Done.
  [snip]

  To run apache www server from startup, add apache22_enable="YES"
  in your /etc/rc.conf. Extra options can be found in startup script.


     Σημείωση:Αν χρησιμοποιείτε μια «επίσημη» έκδοση του FreeBSD (6.2,
     6.3, 7.0, κλπ. που γενικά μπορείτε να εγκαταστήσετε από CD-ROM) η
     εντολή pkg_add -r θα κατεβάσει τα πακέτα που φτιάχτηκαν για αυτή τη
     συγκεκριμένη έκδοση. Τα πακέτα αυτά ίσως δεν περιέχουν τις πλέον
     τελευταίες εκδόσεις των εφαρμογών. Μπορείτε να χρησιμοποιήσετε την
     μεταβλητή περιβάλλοντος PACKAGESITE για να παρακάμψετε αυτή την
     προεπιλεγμένη συμπεριφορά. Για παράδειγμα, θέτοντας την PACKAGESITE
     στην τιμή ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-
     stable/Latest/ θα κατεβάσετε τα πιο πρόσφατα πακέτα που υπάρχουν για
     τη σειρά 6.X.

Για περισσότερες πληροφορίες σχετικά με τα πακέτα, παρακαλούμε διαβάστε την
ενότητα 4.4 στο Εγχειρίδιο του FreeBSD: Χρησιμοποιώντας_το_Σύστημα_Packages.
-------------------------------------------------------------------------------

3.2 Ports

Η δεύτερη μέθοδος για την εγκατάσταση εφαρμογών στο FreeBSD είναι η Συλλογή των
Ports. Η Συλλογή των Ports είναι ένα πλαίσιο λειτουργιών που αποτελείται από
Makefiles και αρχεία διαφορών (patches) τα οποία έχουν δημιουργηθεί ειδικά,
ώστε να είναι δυνατή η εγκατάσταση διάφορων εφαρμογών στο FreeBSD από τον
πηγαίο κώδικα τους. Όταν εγκαθιστάτε ένα port, το σύστημα θα κατεβάσει τον
πηγαίο κώδικα, θα εφαρμόσει όλες τις απαιτούμενες αλλαγές χρησιμοποιώντας τα
patches, θα μεταγλωττίσει τον κώδικα, και τέλος θα εγκαταστήσει την εφαρμογή.
Θα ακολουθήσει την ίδια διαδικασία και για οποιαδήποτε τυχόν εξαρτώμενα
προγράμματα.
Μπορείτε να βρείτε την Συλλογή των Ports (η οποία μερικές φορές αναφέρεται και
ως «δέντρο των ports»), στον κατάλογο /usr/ports. Αυτό βέβαια προϋποθέτει ότι
εγκαταστήσατε την Συλλογή των Ports κατά τη διάρκεια της εγκατάστασης του
FreeBSD. Αν δεν το έχετε κάνει, μπορείτε να την προσθέσετε από το CD
εγκατάστασης με την βοήθεια του sysinstall(8) ή να την κατεβάσετε από τους
εξυπηρετητές του FreeBSD χρησιμοποιώντας την εντολή csup(1) ή την εντολή
portsnap(8). Μπορείτε να βρείτε λεπτομερείς οδηγίες για την εγκατάσταση της
Συλλογής των Ports στην ενότητα_4.5.1 του εγχειριδίου.
Η εγκατάσταση ενός port είναι γενικά τόσο απλή όσο το να εισέλθετε στον
κατάλογο του και να ξεκινήσετε την διαδικασία μεταγλώττισης. Στο ακόλουθο
παράδειγμα γίνεται εγκατάσταση του Apache 2.2 από την Συλλογή των Ports:

  # cd /usr/ports/www/apache22
  # make install clean

Ένα σημαντικό πλεονέκτημα της χρήσης ports στην εγκατάσταση λογισμικού είναι η
ικανότητα προσαρμογής των επιλογών εγκατάστασης. Για παράδειγμα, όταν
εγκαθιστάτε τον Apache 2.2 από τα ports μπορείτε να ενεργοποιήσετε την επιλογή
mod_ldap θέτοντας απλώς τιμή στη μεταβλητή WITH_LDAP του make(1):

  # cd /usr/ports/www/apache22
  # make WITH_LDAP="YES" install clean

Διαβάστε την ενότητα 4.5 του Εγχειριδίου του FreeBSD, Χρησιμοποιώντας_την_Ports
Collection, για περισσότερες πληροφορίες σχετικά με τη Συλλογή των Ports.
-------------------------------------------------------------------------------

3.3 Ports ή πακέτα, τι πρέπει να χρησιμοποιήσω;

Τα πακέτα είναι στην πραγματικότητα απλώς προ-μεταγλωττισμένα ports, άρα είναι
περισσότερο θέμα επιλογής αν είναι επιθυμητή η εγκατάσταση από τον πηγαίο
κώδικα ή από έτοιμα εκτελέσιμα. Κάθε μέθοδος έχει τα πλεονεκτήματα της:
Πακέτα (έτοιμα εκτελέσιμα)

* Πιο γρήγορη εγκατάσταση (η μεταγλώττιση μεγάλων εφαρμογών μπορεί να διαρκέσει
  αρκετή ώρα).
* Δεν χρειάζεται να κατανοείτε πως γίνεται η μεταγλώττιση του λογισμικού.
* Δεν χρειάζεται να εγκαταστήσετε μεταγλωττιστές στο σύστημα σας.

Ports (πηγαίος κώδικας)

* Ικανότητα προσαρμογής των επιλογών εγκατάστασης. (Τα πακέτα συνήθως
  μεταγλωττίζονται με τις προεπιλεγμένες επιλογές). Με τα ports μπορείτε να
  προσαρμόσετε διάφορες επιλογές, όπως την μεταγλώττιση πρόσθετων αρθρωμάτων, ή
  αλλαγή της προεπιλεγμένης θέσης εγκατάστασης.
* Μπορείτε να βάλετε τις δικές σας αλλαγές (patches) αν το επιθυμείτε.

Αν δεν έχετε ειδικές απαιτήσεις, τα πακέτα πιθανόν θα σας καλύψουν μια χαρά. Αν
ωστόσο χρειάζεται να προσαρμόσετε κάποιες επιλογές, τότε η μέθοδος των ports
είναι η καλύτερη. (Και θυμηθείτε, αν χρειάζεστε προσαρμογή αλλά προτιμάτε τα
πακέτα, μπορείτε μέσω της συλλογής των ports να φτιάξετε τα δικά σας
προσαρμοσμένα πακέτα χρησιμοποιώντας την εντολή make package και αντιγράφοντας
τα πακέτα που δημιουργήσατε σε άλλα μηχανήματα.)
-------------------------------------------------------------------------------

4 Εκκίνηση του Συστήματος: Που είναι τα run-levels;

Το Linux χρησιμοποιεί το σύστημα εκκίνησης SysV, ενώ το FreeBSD χρησιμοποιεί το
παραδοσιακό σύστημα εκκίνησης BSD. Στο σύστημα init(8) τύπου BSD, δεν υπάρχουν
run-levels, ούτε το αρχείο /etc/inittab. Αντί για αυτά, η εκκίνηση ελέγχεται
από ένα script εκκίνησης, το rc(8). To script /etc/rc διαβάζει το αρχείο /etc/
defaults/rc.conf και το αρχείο /etc/rc.conf για να καθορίσει ποιες υπηρεσίες
πρόκειται να ξεκινήσουν. Οι υπηρεσίες αυτές ξεκινάνε με την εκτέλεση των
αντίστοιχων script εκκίνησης που βρίσκονται στους καταλόγους /etc/rc.d/ και /
usr/local/etc/rc.d/. Τα scripts αυτά είναι παρόμοια με τα scripts που
βρίσκονται στον κατάλογο /etc/init.d/ σε συστήματα Linux.
 _____________________________________________________________________________
|Γιατί υπάρχουν δύο τοποθεσίες για τα scripts εκκίνησης των υπηρεσιών; Τα     |
|scripts που βρίσκονται στον κατάλογο /etc/rc.d/ είναι για εφαρμογές που      |
|ανήκουν στο «βασικό» σύστημα. (Για παράδειγμα, τις cron(8), sshd(8), syslog  |
|(3), και άλλες.) Τα scripts που βρίσκονται στον κατάλογο /usr/local/etc/rc.d/|
|είναι για εφαρμογές που έχουν εγκατασταθεί από τους χρήστες, όπως για        |
|παράδειγμα ο Apache, το Squid, κ.λ.π.                                        |
|Ποια είναι η διαφορά μεταξύ του «βασικού» συστήματος και των εφαρμογών       |
|χρήστη; Το FreeBSD αναπτύσσεται ως ένα πλήρες λειτουργικό σύστημα. Με άλλα   |
|λόγια, ο πυρήνας, οι βιβλιοθήκες του συστήματος, οι βασικές εντολές          |
|(userland, τα προγράμματα όπως το ls(1), cat(1), cp(1) κλπ.), αναπτύσσονται  |
|και δημοσιεύονται μαζί, ως σύνολο. Αυτό αναφέρεται και ως «βασικό» σύστημα.  |
|Οι εφαρμογές που εγκαθίστανται από τους χρήστες, δεν ανήκουν στο «βασικό»    |
|σύστημα, και τέτοιες είναι για παράδειγμα ο Apache, το X11, ο                |
|Mozilla Firefox, κλπ. Αυτού του είδους οι εφαρμογές, γενικά εγκαθίστανται με |
|τη χρήση της Συλλογής_Πακέτων_και_Ports του FreeBSD. Για να ξεχωρίζουν από το|
|υπόλοιπο «βασικό» σύστημα, οι εφαρμογές χρήστη συνήθως εγκαθίστανται σε      |
|υποκαταλόγους του /usr/local/. Έτσι τα εκτελέσιμα προγράμματα των χρηστών    |
|βρίσκονται συνήθως στον κατάλογο /usr/local/bin/, τα αντίστοιχα αρχεία       |
|ρυθμίσεων_τους_στον_κατάλογο_/usr/local/etc/,_κ.ο.κ._________________________|

Οι υπηρεσίες ενεργοποιούνται με την προσθήκη μιας εγγραφής τύπου
ΌνομαΥπηρεσίας_enable="YES" στο αρχείο /etc/rc.conf (rc.conf(5)). Ρίξτε μια
ματιά στο αρχείο /etc/defaults/rc.conf για να δείτε τις προεπιλογές του
συστήματος. Οι ρυθμίσεις που κάνουμε στο αρχείο /etc/rc.conf υπερισχύουν έναντι
των προεπιλογών αυτών. Επίσης, κατά την εγκατάσταση πρόσθετων εφαρμογών,
βεβαιωθείτε ότι διαβάσατε την αντίστοιχη τεκμηρίωση για να βρείτε πως να
ενεργοποιήσετε τυχόν σχετικές υπηρεσίες.
Το ακόλουθο απόσπασμα από το αρχείο /etc/rc.conf ενεργοποιεί την υπηρεσία sshd
(8) και τον Apache 2.2. Επίσης καθορίζει ότι ο Apache θα ξεκινήσει με
ενεργοποιημένη τη δυνατότητα SSL.

  # enable SSHD
  sshd_enable="YES"
  # enable Apache with SSL
  apache22_enable="YES"
  apache22_flags="-DSSL"

Από τη στιγμή που μια υπηρεσία ενεργοποιηθεί στο αρχείο /etc/rc.conf, μπορείτε
να την ξεκινήσετε απευθείας από τη γραμμή εντολών (χωρίς να χρειάζεται να
επανεκκινήσετε το σύστημα σας):

  # /etc/rc.d/sshd start

Αν μια υπηρεσία δεν έχει ενεργοποιηθεί στο αρχείο αυτό, μπορείτε να
εξαναγκάσετε την εκκίνηση της από την γραμμή εντολών με την επιλογή forcestart:

  # /etc/rc.d/sshd forcestart

-------------------------------------------------------------------------------

5 Ρύθμιση Δικτύου


5.1 Διεπαφές Δικτύου

Αντί για το γενικό αναγνωριστικό τύπου ethX που χρησιμοποιεί το Linux για την
αναγνώριση μιας διεπαφής δικτύου, το FreeBSD χρησιμοποιεί ως αναγνωριστικό το
όνομα του προγράμματος οδήγησης ακολουθούμενο από ένα αριθμό. Η ακόλουθη έξοδος
από την εντολή ifconfig(8) δείχνει δύο κάρτες δικτύου Intel® Pro 1000 (με
αναγνωριστικά em0 and em1):

  % ifconfig
  em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          options=b<RXCSUM,TXCSUM,VLAN_MTU>
          inet 10.10.10.100 netmask 0xffffff00 broadcast 10.10.10.255
          ether 00:50:56:a7:70:b2
          media: Ethernet autoselect (1000baseTX <full-duplex>)
          status: active
  em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          options=b<RXCSUM,TXCSUM,VLAN_MTU>
          inet 192.168.10.222 netmask 0xffffff00 broadcast 192.168.10.255
          ether 00:50:56:a7:03:2b
          media: Ethernet autoselect (1000baseTX <full-duplex>)
          status: active

-------------------------------------------------------------------------------

5.2 Ρυθμίσεις Διευθύνσεων IP

Μπορείτε να αναθέσετε μια διεύθυνση IP σε μια διεπαφή δικτύου με τη χρήση της
εντολής ifconfig(8). Για να γίνει μόνιμη ωστόσο αυτή η αλλαγή, και να μην
χάνεται σε κάθε επανεκκίνηση, θα πρέπει να την περιλάβετε στο αρχείο /etc/
rc.conf. Στο ακόλουθο παράδειγμα φαίνεται η καταχώρηση που περιλαμβάνει το
όνομα του υπολογιστή (hostname), την διεύθυνση IP, καθώς και την προεπιλεγμένη
πύλη (defaultrouter):

  hostname="server1.example.com"
  ifconfig_em0="inet 10.10.10.100  netmask 255.255.255.0"
  defaultrouter="10.10.10.1"

Χρησιμοποιήστε την ακόλουθη καταχώρηση για να καθορίσετε ότι μια διεπαφή θα
λαμβάνει ρυθμίσεις μέσω DHCP:

  hostname="server1.example.com"
  ifconfig_em0="DHCP"

-------------------------------------------------------------------------------

6 Firewall

Στο Linux χρησιμοποιείται το IPTABLES το οποίο παρέχει υπηρεσίες firewall σε
επίπεδο πυρήνα. Το FreeBSD παρέχει επίσης firewall μέσω του πυρήνα. Για την
ακρίβεια, το FreeBSD παρέχει τρία firewalls:

* IPFIREWALL
* IPFILTER
* PF

Το IPFIREWALL ή IPFW (η εντολή χειρισμού των κανόνων του IPFW είναι η ipfw(8))
είναι το firewall που έχει αναπτυχθεί και συντηρείται από την ομάδα ανάπτυξης
του FreeBSD. Το IPFW μπορεί να συνδυαστεί με το dummynet(4) για να παρέχει
δυνατότητες διαμόρφωσης της κίνησης πακέτων (traffic shaping) και να εξομοιώνει
διαφορετικούς τύπους συνδέσεων δικτύου.
Παράδειγμα ενός κανόνα του IPFW που επιτρέπει εισερχόμενα δεδομένα προς την
υπηρεσία SSH:

  ipfw add allow tcp from any to me 22 in via $ext_if

Το IPFILTER είναι μια εφαρμογή firewall που αναπτύσσεται από τον Darren Reed.
Δεν έχει φτιαχτεί ειδικά για το FreeBSD, και έχει μεταφερθεί και σε άλλα
λειτουργικά, συμπεριλαμβανομένων των NetBSD, OpenBSD, SunOS, HP/UX, και
Solaris.
Παράδειγμα ενός κανόνα για το IPFILTER που επιτρέπει εισερχόμενα δεδομένα προς
την υπηρεσία SSH:

  pass in on $ext_if proto tcp from any to any port = 22

Η τελευταία εφαρμογή firewall, το PF, αναπτύσσεται από το OpenBSD project. Το
PF δημιουργήθηκε ως αντικαταστάτης του IPFILTER, και έτσι η σύνταξη του PF
είναι αρκετά παρόμοια με αυτή του IPFILTER. Το PF μπορεί να συνδυαστεί με το
altq(4) για να παρέχει υπηρεσίες τύπου QoS.
Παράδειγμα κανόνα του PF που επιτρέπει εισερχόμενα δεδομένα προς την υπηρεσία
SSH:

  pass in on $ext_if inet proto tcp from any to ($ext_if) port 22

-------------------------------------------------------------------------------

7 Αναβαθμίζοντας το FreeBSD

Υπάρχουν τρεις μέθοδοι για την αναβάθμιση ενός συστήματος FreeBSD: Μέσω του
πηγαίου κώδικα, μέσω έτοιμων (binary) αναβαθμίσεων, και μέσω των CD
εγκατάστασης.
Η εγκατάσταση μέσω του πηγαίου κώδικα είναι η πιο πολύπλοκη, αλλά προσφέρει και
τη μεγαλύτερη δυνατή ευελιξία. Η διαδικασία αυτή περιλαμβάνει το συγχρονισμό
του τοπικού αντιγράφου του πηγαίου κώδικα του FreeBSD με τον κώδικα του FreeBSD
που βρίσκεται στους εξυπηρετητές CVS (Concurrent Versioning System). Από τη
στιγμή που το τοπικό αντίγραφο πηγαίου κώδικα είναι ανανεωμένο, μπορείτε να
μεταγλωττίσετε νέες εκδόσεις του πυρήνα και των βασικών προγραμμάτων. Για
περισσότερες πληροφορίες σχετικά με το σύστημα αναβάθμισης μέσω πηγαίου κώδικα,
δείτε το κεφάλαιο Ενημέρωση_και_Αναβάθμιση στο Εγχειρίδιο του FreeBSD.
Οι έτοιμες (binary) αναβαθμίσεις, είναι παρόμοιες με τη χρήση της εντολής yum ή
apt-get για την αναβάθμιση ενός συστήματος Linux. Η εντολή freebsd-update(8) θα
κατεβάσει τις αναβαθμίσεις και θα τις εγκαταστήσει. Μπορείτε να καθορίσετε την
αυτόματη, ανά τακτά διαστήματα εκτέλεση της, με τη χρήση του cron(8).

     Σημείωση:Αν πρόκειται να χρησιμοποιήσετε το cron(8) για
     προγραμματισμένες αναβαθμίσεις, βεβαιωθείτε ότι χρησιμοποιείτε την
     εντολή freebsd-update cron στο αρχείο crontab(1) για να
     ελαχιστοποιηθεί η πιθανότητα να γίνεται ανανέωση την ίδια στιγμή από
     ένα μεγάλο αριθμό μηχανημάτων.

       0 3 * * * root /usr/sbin/freebsd-update cron


Η τελευταία επιλογή αναβάθμισης, μέσω των CD εγκατάστασης, είναι αρκετά
ξεκάθαρη. Απλώς εκκινήστε από το CD εγκατάστασης και επιλέξτε την αντίστοιχη
επιλογή αναβάθμισης (upgrade).
-------------------------------------------------------------------------------

8 procfs: Περασμένο αλλά όχι Ξεχασμένο

Στο Linux, θα χρειαστεί να δείτε το /proc/sys/net/ipv4/ip_forward για να
καθορίσετε αν είναι ενεργοποιημένη η προώθηση IP (IP forwarding). Στο FreeBSD
θα πρέπει να χρησιμοποιήσετε το sysctl(8) για να δείτε αυτή και άλλες ρυθμίσεις
του συστήματος, καθώς το procfs(5) θεωρείται παρωχημένο σε πρόσφατες εκδόσεις
του λειτουργικού. (Αν και η εντολή sysctl είναι επίσης διαθέσιμη και στο
Linux).
Στο παράδειγμα της προώθησης IP, θα χρησιμοποιούσαμε την ακόλουθη εντολή για να
καθορίσουμε αν η δυνατότητα αυτή είναι ενεργοποιημένη σε ένα FreeBSD σύστημα:

  % sysctl net.inet.ip.forwarding
  net.inet.ip.forwarding: 0

Η επιλογή -a χρησιμοποιείται για να πάρουμε μια λίστα με όλες τις ρυθμίσεις του
συστήματος:

  % sysctl -a
  kern.ostype: FreeBSD
  kern.osrelease: 6.2-RELEASE-p9
  kern.osrevision: 199506
  kern.version: FreeBSD 6.2-RELEASE-p9 #0: Thu Nov 29 04:07:33 UTC 2007
      root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC

  kern.maxvnodes: 17517
  kern.maxproc: 1988
  kern.maxfiles: 3976
  kern.argmax: 262144
  kern.securelevel: -1
  kern.hostname: server1
  kern.hostid: 0
  kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 }
  kern.posix1version: 200112
  ...


     Σημείωση:Κάποιες από τις τιμές που δείχνει η εντολή sysctl είναι μόνο
     για ανάγνωση.

Υπάρχουν περιπτώσεις όπου απαιτείται το procfs, όπως για παράδειγμα όταν
εκτελείτε παλιότερο λογισμικό, το οποίο κάνει χρήση της εντολής truss(1) για
την ανίχνευση των κλήσεων συστήματος, και για την Συμβατότητα_με_Εκτελέσιμα_του
Linux. (Αν και η Συμβατότητα με Εκτελέσιμα του Linux χρησιμοποιεί το δικό της
procfs, το linprocfs(5)). Αν χρειάζεται να προσαρτήσετε το procfs, μπορείτε να
προσθέσετε την ακόλουθη εγγραφή στο αρχείο /etc/fstab:

  proc                /proc           procfs  rw,noauto       0       0


     Σημείωση:Η επιλογή noauto θα εμποδίσει την αυτόματη προσάρτηση του /
     proc κατά την εκκίνηση του συστήματος.

Προσαρτήστε κατόπιν την procfs χρησιμοποιώντας την ακόλουθη εντολή:

  # mount /proc

-------------------------------------------------------------------------------

9 Συνηθισμένες Εντολές


9.1 Διαχείριση Πακέτων


Εντολή του Linux (Red Hat/ Αντίστοιχη εντολή FreeBSD Σκοπός
Debian)
yum install package / apt- pkg_add -r package        Εγκατάσταση πακέτου από
get install package                                  απομακρυσμένο εξυπηρετητή
rpm -ivh package / dpkg -  pkg_add -v package        Εγκατάσταση πακέτου
i package
rpm -qa / dpkg -l          pkg_info                  Λίστα εγκατεστημένων
                                                     πακέτων

-------------------------------------------------------------------------------

9.2 Διαχείριση Συστήματος


Εντολή Linux Αντίστοιχη εντολή FreeBSD Σκοπός
lspci        pciconf                   Λίστα συσκευών PCI
lsmod        kldstat                   Λίστα φορτωμένων αρθρωμάτων πυρήνα
modprobe     kldload / kldunload       Φόρτωση/Αποφόρτωση αρθρωμάτων πυρήνα
strace       truss                     Ανίχνευση κλήσεων συστήματος

-------------------------------------------------------------------------------

10 Συμπεράσματα

Ευελπιστούμε ότι αυτό το κείμενο σας παρείχε αρκετές πληροφορίες για να
ξεκινήσετε με το FreeBSD. Για περισσότερες και πιο λεπτομερείς πληροφορίες,
παρακαλούμε να διαβάσετε το Εγχειρίδιο_του_FreeBSD το οποίο επίσης περιέχει και
πολλά θέματα που δεν καλύφθηκαν καθόλου στο παρόν κείμενο.
-------------------------------------------------------------------------------
Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/
                               pub/FreeBSD/doc/.
     Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να
                επικοινωνήσετε με την <questions@FreeBSD.org>.
       Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην
                              <doc@FreeBSD.org>.
