---
title: Για Χρήστες Νέους τόσο στο FreeBSD όσο και στο UNIX®
authors:
  - author: Annelise Anderson
    email: andrsn@andrsn.stanford.edu
releaseinfo: "$FreeBSD$" 
trademarks: ["freebsd", "ibm", "microsoft", "opengroup", "general"]
---

= Για Χρήστες Νέους τόσο στο FreeBSD όσο και στο UNIX(R)
:doctype: article
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:source-highlighter: rouge
:experimental:
:toc-title: Πίνακας Περιεχομένων
:table-caption: Πίνακας
:figure-caption: Σχήμα
:example-caption: Παράδειγμα

include::shared/el/urls.adoc[]

[.abstract-title]
Περίληψη

Συγχαρητήρια που εγκαταστήσατε το FreeBSD! Αυτή η εισαγωγή είναι για χρήστες νέους τόσο στο FreeBSD όσο _και_ στο Un*x-γι αυτό ξεκινά με τα βασικά. Υποθέτω ότι χρησιμοποιείτε την έκδοση 2.0.5 του FreeBSD ή κάποια νεότερη, όπως αυτές διανέμονται από την BSDi ή το FreeBSD.org, ότι το σύστημά σας (προς το παρόν) έχει ένα και μόνο χρήστη κι ότι πιθανόν να είστε αρκετά καλός στην χρήση των DOS/Windows(R) ή του OS/2(R).

'''

toc::[]

[[in-and-out]]
== Σύνδεση (Login) και Αποσύνδεση (Logout)

Συνδεθείτε (όταν δείτε την προτροπή `login:`) σαν τον χρήστη που δημιουργήσατε κατά την εγκατάσταση ή σαν `root`. (Η εγκατάσταση του FreeBSD ήδη 8α έχει ένα λογαριασμό για τον `root`. Ο `root` μπορεί να πάει παντού και να κάνει τα πάντα, ακόμη και να σβήσει κάποια απαραίτητα αρχεία, γι αυτό να είστε προσεκτικοί!) Τα σύμβολα % και # παρακάτω συμβολίζουν το prompt (το δικό σας μπορεί να διαφέρει), με το % να είναι ενός απλού χρήστη και το # να είναι του `root`.

Για να βγείτε (και να δείτε ένα καινούριο `login:` prompt) γράψτε

[source,bash]
....
# exit
....

όσες φορές χρειαστεί. Ναι, πατήστε kbd:[enter] μετά τις εντολές, και να θυμάστε ότι στο UNIX(R) τα μικρά είναι διαφορετικά από τα κεφαλαία-`exit`, κι όχι `EXIT`.

Για να κλείσετε το μηχάνημά σας γράψτε

[source,bash]
....
# /sbin/shutdown -h now
....

Για να το επανεκκινήσετε

[source,bash]
....
# /sbin/shutdown -r now
....

ή

[source,bash]
....
# /sbin/reboot
....

Μπορείτε επίσης να επανεκκινήσετε το μηχάνημα πατώντας kbd:[Ctrl+Alt+Delete]. Δώστε του λίγο χρόνο για να κάνει τη δουλειά που πρέπει. Αυτό είναι ισοδύναμο με την εντολή `/sbin/reboot` σε πρόσφατες εκδόσεις του FreeBSD και είναι ένας πάρα πολύ πιο ασφαλής τρόπος, σε σχέση με το πάτημα του reset κουμπιού. Δεν θέλετε να αναγκαστείτε να τα ξαναστήσετε όλα, σωστά;

[[adding-a-user]]
== Προσθέτοντας ένα Λογαριασμό Χρήστη

Αν δεν φτιάξατε κανένα λογαριασμό χρήστη όταν εγκαταστήσατε το σύστημα, και τώρα έχετε κάνει login σαν `root`, μάλλον είναι η κατάλληλη ώρα να φτιάξετε ένα λογαριασμό χρήστη με την εντολή

[source,bash]
....
# adduser
....

Την πρώτη φορά που χρησιμοποιείτε την εντολή `adduser`, μπορεί να σας ρωτήσει για κάποιες προκαθορισμένες ρυθμίσεις που θα σώσει. Μπορεί για παράδειγμα να θέλετε να βάλετε τον προκαθορισμένο φλοιό (shell) να είναι man:csh[1] αντί για man:sh[1], αν σας προτείνει το `sh` σαν προκαθορισμένο φλοιό. Αλλιώς πατήστε απλά enter για να δεχτείτε κάθε προεπιλεγμένη τιμή. Αυτές οι προκαθορισμένες τιμές σώζονται στο αρχείο [.filename]#/etc/adduser.conf#, που μπορείτε να τις αλλάξετε αργότερα.

Έστω οτι δημιουργείτε ένα λογαριασμό χρήστη με όνομα `jack` και πλήρες όνομα __Jack Benimble__. Ορίστε για τον `jack` κι ένα κωδικό χρήστη (password) αν η ασφάλεια σας ενδιαφέρει (ακόμα και παιδιά που παίζουν με το πληκτρολόγιο μπορεί να είναι επικίνδυνα). Όταν σας ρωτήσει αν θέλετε να βάλετε τον `jack` και σε άλλες ομάδες (groups), γράψτε `wheel`

[source,bash]
....
Login group is "jack". Invite jack into other groups: wheel
....

Αυτό θα σας δώσει τη δυνατότητα όταν έχετε συνδεθεί στο σύστημα σαν `jack` και χρησιμοποιείτε την εντολή man:su[1] να μπορείτε να γίνετε `root`. Έτσι, δεν θα σας πειράξει ποτέ κάποιος επειδή κάνετε login σαν `root`.

Μπορείτε να σταματήσετε την `adduser` οποιαδήποτε στιγμή πατώντας kbd:[Ctrl+C], και στο τέλος θα έχετε μια ευκαιρία να εγκρίνετε την δημιουργία του νέου χρήστη ή να αρνηθείτε πατώντας kbd:[n]. Μια καλή ιδέα είναι επίσης να φτιάξετε ένα δεύτερο λογαριασμό χρήστη, έτσι ώστε όταν κάνετε αλλαγές σε κάποια αρχεία ρυθμίσεων του `jack`, να έχετε ένα λογαριασμό που μπορείτε να τον χρησιμοποιήσετε εύκολα σε περίπτωση που κάτι πάει στραβά.

Αφού το κάνετε αυτό, χρησιμοποιείστε την εντολή `exit` για να επιστρέψετε στο login prompt και συνδεθείτε σαν `jack`. Γενικά, είναι μια καλή ιδέα να κάνετε όσο το δυνατόν περισσότερες από τις δουλειές σας σαν ένας απλός χρήστης που δεν έχει την δύναμη-και το ρίσκο-του `root`.

Αν έχετε ήδη δημιουργήσει ένα λογαριασμό χρήστη και θέλετε αυτός ο χρήστης να μπορεί να κάνει `su` σε `root`, μπορείτε να μπείτε σαν `root` και να αλλάξετε το αρχείο [.filename]#/etc/group#, προσθέτοντας τον `jack` στην πρώτη γραμμή (το group με όνομα `wheel`). Αλλά πρώτα πρέπει να εξασκηθείτε στην χρήση του man:vi[1], του επεξεργαστή κειμένου-ή να χρησιμοποιήσετε τον πιο απλό επεξεργαστή κειμένου, τον man:ee[1], που εγκαθίσταται σε πρόσφατες εκδόσεις του FreeBSD.

Για να σβήσετε ένα χρήστη, χρησιμοποιήστε την εντολή `rmuser`.

[[looking-around]]
== Δοκιμάζοντας Διάφορες Εντολές

Κάποια στιγμή που θα είστε logged in σαν απλός χρήστης, ψάξτε τριγύρω και δοκιμάστε κάποιες από τις εντολές που θα σας βοηθήσουν να βρείτε βοήθεια και πληροφορίες μέσα από το ίδιο το FreeBSD.

Παρακάτω θα δείτε κάποιες εντολές και τι αυτές κάνουν:

`id`::
Σας δείχνει ποιος είστε!

`pwd`::
Σας δείχνει που είστε-τον τρέχοντα κατάλογο.

`ls`::
Δείχνει τα αρχεία που περιέχονται στον τρέχοντα κατάλογο.

`ls -F`::
Δείχνει τα αρχεία που περιέχει ο τρέχοντας κατάλογος τυπώνοντας μετά το όνομα `\*` για τα εκτελέσιμα `/` για τους καταλόγους, και `@` μετά τα symbolic links.

`ls -l`::
Τυπώνει τα αρχεία του τρέχοντος καταλόγου με λεπτομέρειες-μέγεθος, ημερομηνία, άδειες.

`ls -a`::
Δείχνει εκτός από τα κανονικά αρχεία και τα κρυφά "dot" αρχεία. Αν είστε `root`, τα "dot" αρχεία τα δείχνει έτσι κι αλλιώς, και χωρίς την επιλογή `-a`.

`cd`::
Αλλάζει τον τρέχοντα κατάλογο. Η εντολή `cd ..` ανεβαίνει στον προηγούμενο κατάλογο (σημειώστε το κενό μετά την `cd`). Η εντολή `cd /usr/local` αλλάζει τον τρέχοντα κατάλογο σε αυτόν. Η εντολή `cd ~` πηγαίνει στον αρχικό κατάλογο του χρήστη που έχει κάνει login-π.χ. στον [.filename]#/usr/home/jack#. Δοκιμάστε την εντολή `cd /cdrom`, και μετά την `ls`, για να δείτε αν το CDROM σας είναι ενεργό και δουλεύει.

`view filename`::
Ας δούμε τα περιεχόμενα ενός αρχείου (με όνομα _filename_) χωρίς να το αλλάξουμε. Δοκιμάστε την εντολή `view /etc/fstab`. Δώστε `:q` για να βγείτε.

`cat filename`::
Δείχνει τα περιεχόμενα του _filename_ στην οθόνη. Αν το αρχείο είναι πολύ μεγάλο, θα μπορείτε να δείτε μόνο το τέλος του. Πατήστε kbd:[ScrollLock] και χρησιμοποιείστε kbd:[up-arrow] για να μετακινηθείτε προς τα πίσω; το kbd:[ScrollLock] μπορεί να χρησιμοποιηθεί και με τις σελίδες man. Πατήστε kbd:[ScrollLock] πάλι για να σταματήσετε να μετακινείστε πάνω/κάτω. Ενδιαφέρον είναι να δοκιμάσετε την εντολή `cat` σε κάποια από τα dot αρχεία στον αρχικό σας κατάλογο- `cat .cshrc`, `cat .login`, `cat .profile`.

Θα παρατηρήσετε στο [.filename]#.cshrc# συντομεύσεις για κάποιες από τις επιλογές της εντολής `ls` (είναι πολύ βολικές). Μπορείτε να φτιάξετε κι άλλες συντομεύσεις αλλάζοντας το αρχείο [.filename]#.cshrc#. Μπορείτε να κάνετε αυτές τις συντομεύσεις διαθέσιμες σε όλους τους χρήστες του συστήματος αν τις βάλετε στο αρχείο με τις ρυθμίσεις συστήματος του `csh`, το [.filename]#/etc/csh.cshrc#.

[[getting-help]]
== Αναζητώντας Βοήθεια και Πληροφορίες

Ας δούμε όμως μερικές χρήσιμες πηγές βοήθειας. Στο παρακάτω η λέξη _κείμενο_ αντιστοιχεί σε κάτι που εσείς έχετε επιλέξει να γράψετε-συνήθως το όνομα μιας εντολής ή ενός αρχείου.

`apropos κείμενο`::
Τυπώνει στην οθόνη όλες τις γραμμές που περιέχουν το _κείμενο_ από την `βάση whatis`.

`man κείμενο`::
Τυπώνει στην οθόνη την σελίδα man για το _κείμενο_. Η κυριότερη πηγή τεκμηρίωσης για τα συστήματα UNIX(R). Η εντολή `man ls` θα σας δείξει όλους τους τρόπους να χρησιμοποιήσετε την εντολή `ls`. Πατήστε το kbd:[Enter] για να μετακινηθείτε στο κείμενο, kbd:[Ctrl+B] για να πάτε μια σελίδα πίσω, kbd:[Ctrl+F] για να πάτε μπροστά, kbd:[q] ή kbd:[Ctrl+C] για να τερματίσετε την `man`.

`which κείμενο`::
Σας λέει από ποιον κατάλογο του PATH η εντολή _κείμενο_ εκτελείται.

`locate κείμενο`::
Τυπώνει όλα τα αρχεία του δίσκου που το όνομά τους περιέχει το _κείμενο_.

`whatis κείμενο`::
Σας λέει τι κάνει η εντολή _κείμενο_ και ποια είναι η σελίδα man της. Γράφοντας `whatis *` θα σας δώσει αντίστοιχες πληροφορίες για όλα τα εκτελέσιμα του τρέχοντος καταλόγου.

`whereis κείμενο`::
Βρίσκει το αρχείο _κείμενο_, και τυπώνει το πλήρες όνομα καταλόγου του.

Μάλλον θα είναι ενδιαφέρον να δοκιμάσετε την εντολή `whatis` για κάποιες κοινές και χρήσιμες εντολές όπως οι `cat`, `more`, `grep`, `mv`, `find`, `tar`, `chmod`, `chown`, `date`, και `script`. Η εντολή `more` σας δίνει τη δυνατότητα να διαβάσετε μια σελίδα κάθε φορά όπως και στο DOS, π.χ. γράφοντας `ls -l | more` ή `more filename`. Ο χαρακτήρας `\*` δουλεύει σαν μεταχαρακτήρας-π.χ., η εντολή `ls w*` θα σας δείξει όλα τα αρχεία που το όνομά τους ξεκινάει με `w`.

Μήπως κάποια από αυτά που είπαμε δεν δουλεύουν καλά; Τόσο η εντολή man:locate[1] όσο και η man:whatis[1] εξαρτώνται από μια βάση που ξαναφτιάχνεται μια φορά τη βδομάδα. Αν το μηχάνημά σας δεν παραμείνει ανοιχτό το σαββατοκύριακο (τρέχοντας το FreeBSD), μπορεί να θέλετε να τρέξετε εσείς τις εντολές για καθημερινή, εβδομαδιαία και μηνιαία συντήρηση που και που. Τρέξτε τις σαν `root` και δώστε τους χρόνο να τελειώσει η καθεμια πριν ξεκινήσετε την επόμενη.

[source,bash]
....
# periodic daily
παραλείπεται η έξοδος της εντολής
# periodic weekly
παραλείπεται η έξοδος της εντολής
# periodic monthly
παραλείπεται η έξοδος της εντολής
....

Αν βαρεθείτε να περιμένετε, πατήστε kbd:[Alt+F2] για να βγείτε σε ένα δεύτερο _εικονικό τερματικό_, και να κάνετε πάλι login. Έτσι κι αλλιώς, είναι ένα πολυχρηστικό, πολυδιεργασιακό λειτουργικό σύστημα. Μπορεί πάντως αυτές οι εντολές να στείλουν κάποια μηνύματα στην οθόνη σας όσο τρέχουν. Μπορείτε να γράψετε `clear` στο prompt για να καθαρίσετε την οθόνη. Μόλις τελειώσουν, μπορεί να θέλετε να κοιτάξετε τα αρχεία [.filename]#/var/mail/root# και [.filename]#/var/log/messages#.

Το να τρέχει κανείς τέτοιες εντολές είναι μέρος της διαχείρισης ενός συστήματος-και σαν ο μοναδικός χρήστης ενός UNIX(R) συστήματος, είστε ο διαχειριστής συστήματος του εαυτού σας. Γενικά οτιδήποτε απαιτεί να είστε `root` για να το κάνετε είναι διαχείριση του συστήματος. Τέτοιες υποχρεώσεις δεν καλύπτονται αρκετά καλά σε εκείνα τα τεράστια βιβλία που υπόσχονται να σας μάθουν UNIX(R), καθώς αυτά αφιερώνουν συνήθως πολύ χώρο στο πως θα χρησιμοποιήσετε κάποιο συγκεκριμένο γραφικό περιβάλλον. Καλύτερα να πάρετε κάποιο από τα δύο πιο σημαντικά βιβλία για διαχείριση συστημάτων, είτε το UNIX(R) System Administration Handbook του Evi Nemeth (εκδόσεις Prentice-Hall, 1995, ISBN 0-13-15051-7)-την δεύτερη έκδοση, με το κόκκινο εξώφυλο, ή το Essential System Administration του Æleen Frisch's (εκδόσεις O'Reilly & Associates, 2002, ISBN 0-596-00343-9). Εγώ (ΣΤΜ: η Annelise Anderson) χρησιμοποίησα το βιβλίο του Nemeth.

[[editing-text]]
== Επεξεργασία Κειμένου

Για να ρυθμίσετε το σύστημά σας, πρέπει να κάνετε αλλαγές σε αρχεία κειμένου. Τα πιο πολλά από αυτά θα είναι στον κατάλογο [.filename]#/etc#. Επίσης θα χρειαστεί να κάνετε `su` σε `root` για να μπορέσετε να τα αλλάξετε. Μπορείτε να χρησιμοποιήσετε το εύκολο πρόγραμμα `ee`, αλλά τελικά θα πρέπει κάποια στιγμή να μάθετε και τον επεξεργαστή κειμένου `vi`. Υπάρχει ένας υπέροχος οδηγός για τη χρήση του vi στο αρχείο [.filename]#/usr/src/contrib/nvi/docs/tutorial# αν το έχετε εγκαταστήσει.

Πριν κάνετε αλλαγές σε αρχεία ρυθμίσεων, μάλλον είναι καλή ιδέα να πάρετε κάποιο αντίγραφο ασφαλείας. Έστω ότι θέλετε να κάνετε αλλαγές στο [.filename]#/etc/rc.conf#. Μπορείτε να χρησιμοποιήσετε την εντολή `cd /etc` για να πάτε στον κατάλογο [.filename]#/etc# και να γράψετε:

[source,bash]
....
# cp rc.conf rc.conf.orig
....

επειδή η εντολή `mv` διατηρεί την αρχική ημερομηνία και τον ιδιοκτήτη ενός αρχείου. Τώρα μπορείτε να κάνετε ότι αλλαγές θέλετε στο [.filename]#rc.conf#. Αν θέλετε το αρχικό πάλι, τότε θα εκτελέσετε `mv rc.conf rc.conf.myedit` (υποθέτοντας ότι θέλετε να κρατήσετε την αλλαγμένη έκδοση) και τότε

[source,bash]
....
# mv rc.conf.orig rc.conf
....

για να επαναφέρετε τα πράγματα στην προηγούμενη τους κατάσταση.

Για να επεξεργαστείτε ένα αρχείο, δώστε

[source,bash]
....
# vi filename
....

Μετακινηθείτε στο κείμενο με τα βελάκια. Το kbd:[Esc] (escape πλήκτρο) βάζει το `vi` σε κατάσταση εντολών. Ορίστε και μερικές βασικές εντολές:

`x`::
σβήνει τον χαρακτήρα που πάνω του είναι ο δείκτης (cursor)

`dd`::
σβήνει ολόκληρη την γραμμή (ακόμα κι αν αναδιπλώνει στο τέλος της οθόνης)

`i`::
εισάγει κείμενο στο σημείο που είναι ο δείκτης

`a`::
εισάγει κείμενο μετά τον δείκτη

Όταν χρησιμοποιήσετε την εντολή `i` ή την `a`, μπορείτε να εισάγετε κείμενο. Πατήστε `Esc` για να επιστρέψετε σε κατάσταση εντολών, όπου μπορείτε να δώσετε εντολές όπως

`:w`::
για να γράψετε τις αλλαγές σας στο δίσκο και να συνεχίσετε να επεξεργάζεστε το αρχείο

`:wq`::
για να γράψετε τις αλλαγές και να βγείτε από το vi

`:q!`::
για να βγείτε χωρίς να σώσετε τις αλλαγές

`/κείμενο`::
για να μετακινηθείτε στην πρώτη γραμμή που εμφανίζεται το _κείμενο_-μετά μπορείτε να πατήσετε `/Enter` (το πλήκτρο enter) για να βρείτε την επόμενη γραμμή που εμφανίζεται το _κείμενο_.

`G`::
για να πάτε στο τέλος του αρχείου

`nG`::
για να πάτε στην γραμμή _n_ του αρχείου, όπου _n_ είναι αριθμός

kbd:[Ctrl+L]::
για να ξαναζωγραφιστεί η οθόνη

kbd:[Ctrl+b] and kbd:[Ctrl+f]::
για να μετακινηθείτε μια οθόνη πίσω ή μια οθόνη μπροστά, όπως και στα προγράμματα `more` και `view`.

Εξασκηθείτε με το `vi` στον αρχικό σας κατάλογο, δημιουργώντας ένα καινούριο αρχείο με την εντολή `vi filename`, προσθέτοντας και αφαιρώντας κείμενο, σώζοντας το αρχείο, και φορτώνοντάς το πάλι. Το `vi` μερικές φορές επιφυλλάσει εκπλήξεις, επειδή είναι αρκετά περίπλοκο πρόγραμμα, οπότε κάποια στιγμή θα κάνετε κάτι που θα κάνει κάτι αναπάντεχο. (Σε κάποιους πραγματικά αρέσει το `vi`-είναι πιο ευέλικτο από το EDIT του DOS-δοκιμάστε να βρείτε βοήθεια π.χ. για την εντολή `:r`.) Χρησιμοποιήστε το kbd:[Esc] μια ή περισσότερες φορές για να είστε σίγουροι ότι είστε σε κατάσταση εντολών και συνεχίστε από εκεί αν κάτι δεν σας πάει καλά, να σώζετε συχνά με την `:w` εντολή, και χρησιμοποιήστε την εντολή `:q!` για να βγείτε και να αρχίσετε πάλι από την αρχή (από εκεί που σας άφησε η τελευταία `:w` εντολή) όταν αυτό χρειαστεί.

Τώρα μπορείτε να κάνετε `cd` στον κατάλογο [.filename]#/etc#, να γίνετε `root` με την `su`, να χρησιμοποιήσετε το `vi` για να αλλάξετε το αρχείο [.filename]#/etc/group#, και να προσθέσετε ένα χρήστη στην ομάδα `wheel` έτσι ώστε να έχει δικαιώματα `root`. Απλά προσθέστε ένα κόμμα και το όνομα του χρήστη μετά το τέλος της πρώτης γραμμής του αρχείου, πατήστε kbd:[Esc], και χρησιμοποιήστε `:wq` για να σώσετε το αρχείο στο δίσκο και να βγείτε. Ισχύει αμέσως. (Δεν βάλατε κάποιο κενό μετά το κόμμα, σωστά;)

[[printing-files-from-dos]]
== Εκτυπώνοντας αρχεία από το DOS

Σε αυτό το σημείο μάλλον δεν έχετε βάλει κάποιο εκτυπωτή να δουλεύει, οπότε ας δούμε ένα τρόπο να δημιουργήσετε ένα αρχείο από μια σελίδα man, να το αντιγράψετε σε μια δισκέττα, και τότε να το τυπώσετε από το DOS. Έστω ότι θέλετε να διαβάσετε προσεκτικά για το πως αλλάζουν οι άδειες ενός αρχείου (ένα αρκετά σημαντικό θέμα). Μπορείτε να χρησιμοποιήσετε την εντολή `man chmod` για να διαβάσετε γι αυτό το θέμα. Η εντολή

[source,bash]
....
% man chmod | col -b > chmod.txt
....

θα αφαιρέσει τους κωδικούς μορφοποίησης και θα στείλει την man σελίδα στο αρχείο [.filename]#chmod.txt# αντί να την δείξει στην οθόνη σας. Τώρα βάλτε μια δισκέττα διαμορφωμένη από DOS στον οδηγό δισκέττας [.filename]#a#, χρησιμοποιήστε την εντολή `su` για να γίνετε `root`, και δώστε

[source,bash]
....
# /sbin/mount -t msdosfs /dev/fd0 /mnt
....

για να συνδέσετε (mount) την δισκέττα με τον κατάλογο [.filename]#/mnt#.

Τώρα (δεν χρειάζεται πλέον να είστε `root`, και μπορείτε να δώσετε `exit` για να επιστρέψετε στα δικαιώματα του χρήστη `jack`) μπορείτε να πάτε στον κατάλογο που δημιουργήσατε το [.filename]#chmod.txt# και να το αντιγράψετε στη δισκέτα γράφοντας:

[source,bash]
....
% cp chmod.txt /mnt
....

Υστερα, χρησιμοποιώντας την εντολή `ls /mnt` για να δείτε τα περιεχόμενα του καταλόγου [.filename]#/mnt#, θα πρέπει να δείτε και το αρχείο [.filename]#chmod.txt#.

Σίγουρα θα πρέπει να φτιάξετε κι ένα αρχείο από το [.filename]#/sbin/dmesg# γράφοντας

[source,bash]
....
% /sbin/dmesg > dmesg.txt
....

και αντιγράφοντας το [.filename]#dmesg.txt# στη δισκέτα. Η εντολή `/sbin/dmesg` τυπώνει τα μηνύματα εκκίνησης, και είναι χρήσιμο να καταλάβετε τι τυπώνει, αφού δείχνει τι αναγνώρισε το FreeBSD όταν ξεκίνησε. Αν ρωτήσετε κάτι στην mailto:freebsd-questions@FreeBSD.org[freebsd-questions@FreeBSD.org] ή σε κάποια ομάδα συζήτησης του USENET-όπως για παράδειγμα "το FreeBSD δεν βρίσκει το tape drive μου, τι να κάνω;"-θα σας ζητήσουν σίγουρα την έξοδο της εντολής `dmesg`.

Μπορείτε τώρα να αποπροσαρτήσετε τον οδηγό δισκέττας (σαν `root`) για να βγάλετε τη δισκέττα με την εντολή

[source,bash]
....
# /sbin/umount /mnt
....

και να επανεκκινήσετε το σύστημά σας σε DOS. Αντιγράψτε αυτά τα αρχεία σε ένα DOS κατάλογο, ανοίξτε τα με το DOS EDIT, το Windows(R) Notepad ή το Wordpad, ή ένα επεξεργαστή κειμένου, κάντε μια μικρή αλλαγή έτσι ώστε να πρέπει το αρχείο να σωθεί, και τυπώστε όπως συνήθως από το DOS ή τα Windows(R). Ελπίζω να δουλέψει! Οι σελίδες man τυπώνονται πολύ όμορφα αν χρησιμοποιήσετε την εντολή `print` του DOS. (Η αντιγραφή αρχείων από το FreeBSD σε ένα mounted DOS τμήμα δίσκου είναι σε μερικές περιπτώσεις επικίνδυνο πράγμα.)

Το να κάνετε ένα εκτυπωτή στο FreeBSD να τυπώσει απαιτεί να φτιάξετε μια κατάλληλη εγγραφή στο αρχείο [.filename]#/etc/printcap# και να δημιουργήσετε ένα spool κατάλογο στο [.filename]#/var/spool/output#. Αν ο εκτυπωτής σας είναι στην θύρα `lpt0` (αυτή που το DOS αποκαλεί `LPT1`), μπορεί απλά να χρειάζεται να πάτε στον κατάλογο [.filename]#/var/spool/output# και (σαν `root`) να δημιουργήσετε ένα υποκατάλογο [.filename]#lpd# γράφοντας: `mkdir lpd`, αν δεν υπάρχει ήδη. Τότε ο εκτυπωτής θα πρέπει να απαντάει αν είναι ανοιχτός όταν το σύστημα ξεκινάει, και οι εντολές `lp` και `lpr` θα πρέπει να στέλνουν ένα αρχείο στον εκτυπωτή. Αν το αρχείο θα τυπωθεί ή όχι, εξαρτάται από το αν ο εκτυπωτής έχει ρυθμιστεί σωστά, κάτι που καλύπτει το link:{handbook}[handbook του FreeBSD.] 

[[other-useful-commands]]
== Άλλες Χρήσιμες Εντολές

`df`::
Δείχνει ποιες συσκευές έχουν γίνει mount και το χώρο τους.

`ps aux`::
Δείχνει τις διεργασίες που τρέχουν. Η εντολή `ps ax` τυπώνει πιο συμπαγή έξοδο.

`rm αρχείο`::
Σβήνει το _αρχείο_.

`rm -R dir`::
Σβήνει τον κατάλογο _dir_ και όλους τους υποκαταλόγους του-προσοχή!

`ls -R`::
Δείχνει τη λίστα των αρχείων του τρέχοντος καταλόγου, και όλων των υποκαταλόγων του. Εγώ παλιότερα χρησιμοποιούσα μια παραλλαγή, την `ls -AFR > where.txt`, για να παίρνω μια λίστα από όλα τα αρχεία στο [.filename]#/# και (ξεχωριστά) στο [.filename]#/usr# πριν ανακαλύψω καλύτερους τρόπους να βρίσκω αρχεία.

`passwd`::
Αλλάζει τον κωδικό χρήστη σας (ή τον κωδικό χρήστη του `root`)

`man hier`::
Η σελίδα man για την ιεραρχία αρχείων του UNIX(R).

Χρησιμοποιήστε την `find` για να βρείτε το [.filename]#filename# στο [.filename]#/usr# ή σε κάποιο υποκατάλογό του με την εντολή

[source,bash]
....
% find /usr -name "filename"
....

Μπορείτε να χρησιμοποιήσετε ένα χαρακτήρα `\*` σαν μεταχαρακτήρα στο `"_filename_"` (το οποίο θα πρέπει να είναι μέσα σε διπλά εισαγωγικά) Αν πείτε στην `find` να ψάξει στο [.filename]#/# αντί για το [.filename]#/usr# θα ψάξει για το αρχείο (ή τα αρχεία) σε όλα τα ενεργά συστήματα αρχείων, συμπεριλαμβανομένου και του CDROM ή του DOS partition.

Ένα πολύ καλό βιβλίο που εξηγεί τις εντολές και τα εργαλεία του UNIX(R) είναι το UNIX(R) for the Impatient των Abrahams & Larson (2nd ed., Addison-Wesley, 1996). Υπάρχουν επίσης πάρα πολλές πληροφορίες για το UNIX(R) στο Διαδίκτυο.

[[next-steps]]
== Επόμενα Βήματα

Τώρα πλέον θα πρέπει να έχετε τα εργαλεία για να μπορείτε να τα βγάζετε πέρα και να αλλάζετε αρχεία κειμένου, ώστε να μπορείτε να ρυθμίσετε τα πάντα και να δουλεύουν όπως θέλετε. Υπάρχουν πάρα πολλά χρήσιμα πράγματα στο handbook του FreeBSD (που υπάρχει πιθανόν και στον δίσκο σας) και στην link:https://www.FreeBSD.org/[κεντρική σελίδα του FreeBSD]. Μια μεγάλη πληθώρα πακέτων και ports υπάρχουν στο CDROM και στην web σελίδα. Το handbook εξηγεί καλύτερα πως μπορείτε να τα χρησιμοποιήσετε (να πάρετε το πακέτο αν υπάρχει, με την εντολή `pkg_add /cdrom/packages/All/packagename`, όπου _packagename_ είναι το όνομα αρχείου του πακέτου). Το CDROM έχει λίστες όλων των πακέτων και των ports με σύντομες περιγραφές στα αρχεία [.filename]#cdrom/packages/index#, [.filename]#cdrom/packages/index.txt#, και [.filename]#cdrom/ports/index#, με πιο λεπτομερείς περιγραφές στα αρχεία [.filename]#/cdrom/ports/\*/*/pkg/DESCR#, όπου οι χαρακτήρες `\*` αντιπροσωπεύουν υποκαταλόγους από κατηγορίες προγραμμάτων και ονόματα προγραμμάτων αντίστοιχα.

Αν βρίσκετε το handbook κάπως πολύπλοκο (με όλα εκείνα τα `lndir` και τα άλλα) για το πως μπορεί κάποιος να εγκαταστήσει ports από το CDROM, ας δούμε κάτι που δουλεύει:

[source,bash]
....
# cp -R /cdrom/ports/comm/kermit /usr/local
....

Μετά από αυτό θα πρέπει ένας κατάλογος [.filename]#/usr/local/kermit# να έχει τα ίδια αρχεία που έχει ο κατάλογος `kermit` στο CDROM.

Υστερα, δημιουργήστε ένα κατάλογο [.filename]#/usr/ports/distfiles# αν δεν υπάρχει ήδη, χρησιμοποιώντας την εντολή `mkdir`. Μετά ελέγξτε τον κατάλογο [.filename]#/cdrom/ports/distfiles# για ένα αρχείο με όνομα που να δείχνει ότι είναι το port που θέλετε. Αντιγράψτε αυτό το αρχείο στον κατάλογο [.filename]#/usr/ports/distfiles# (σε πρόσφατες εκδόσεις μπορείτε να παραλείψετε αυτό το βήμα, αφού το FreeBSD θα το κάνει για εσάς). Στην περίπτωση του `kermit`, δεν υπάρχει κάποιο distfile.

Κατόπιν αλλάξτε με `cd` στον κατάλογο [.filename]#/usr/local/kermit# που έχει το αρχείο [.filename]#Makefile#. Τρέξτε την εντολή

[source,bash]
....
# make all install
....

Κατά τη διάρκεια αυτής της διαδικασίας, το port θα χρησιμοποιήσει FTP για να πάρει οποιαδήποτε συμπιεσμένα αρχεία του χρειάζονται και δεν τα βρίσκει στο CDROM ή στον κατάλογο [.filename]#/usr/ports/distfiles#. Αν δεν έχετε ρυθμίσει κάποια σύνδεση με δίκτυο ακόμα και δεν υπάρχει κάποιο αρχείο που το port χρειάζεται στο [.filename]#/cdrom/ports/distfiles#, θα πρέπει να πάρετε το αρχείο που λείπει χρησιμοποιώντας κάποιο άλλο μηχάνημα και να το αντιγράψετε στον κατάλογο [.filename]#/usr/ports/distfiles# με κάποια δισκέττα ή χρησιμοποιώντας το DOS partition σας. Διαβάστε το [.filename]#Makefile# (με την εντολή `cat` ή την `more` ή την `view`) για να βρείτε που να πάτε (το κυρίως μέρος διανομής) για να πάρετε το αρχείο και ποιο όνομα έχει. Το όνομά του θα το αλλάξουν συνήθως τα προγράμματα του DOS, και μετά θα πρέπει όταν το αντιγράψετε στο [.filename]#/usr/ports/distfiles# να το μετονομάσετε (με την εντολή `mv`) στο αρχικό του όνομα ώστε να μπορεί να βρεθεί. (Χρησιμοποιήστε binary μεταφορές!) Τότε επιστρέψτε στον κατάλογο [.filename]#/usr/local/kermit#, βρείτε τον κατάλογο με το [.filename]#Makefile#, και δώστε `make all install` πάλι.

Κάτι άλλο που γίνεται με τα ports και τα πακέτα εγκαθίστανται είναι ότι κάποιο άλλο πρόγραμμα χρειάζεται. Αν η εγκατάσταση σταματήσει με ένα μήνυμα `can't find unzip` ή οτιδήποτε, θα πρέπει να εγκαταστήσετε το πακέτο ή το port του unzip πριν συνεχίσετε.

Αφού εγκατασταθεί, δώστε την εντολή `rehash` για να κάνετε το FreeBSD να ξαναψάξει για τα προγράμματα που είναι στο path και να ξέρει ότι υπάρχει κάπου εκεί. (Αν για πολλά προγράμματα που κάνετε `whereis` ή `which`, για να βρείτε σε ποιο κατάλογο του path είναι, βλέπετε μηνύματα λάθους `path not found`, είναι καλή ιδέα να προσθέσετε τους αντίστοιχους καταλόγους στο path που περιέχει το [.filename]#.cshrc# στον αρχικό σας κατάλογο. Το path στο UNIX(R) κάνει την ίδια δουλειά που κάνει και στο DOS, μόνο που ο τρέχον κατάλογος δεν είναι (συνήθως) στο path για λόγους ασφάλειας. Αν η εντολή που θέλετε να τρέξετε είναι στον τρέχοντα κατάλογο, πρέπει να γράψετε [.filename]#./# για να δουλέψει-χωρίς κενό μετά την παύλα.)

Χρήσιμο επίσης είναι και το . Μπορείτε να πάρετε την τελευταία του έκδοση από τον link:ftp://ftp.netscape.com[εξυπηρέτη FTP] του. (Το Netscape απαιτεί το X Window Σύστημα.) Υπάρχει πλέον και μια έκδοση για το FreeBSD, γι αυτό ψάξτε καλά, θα την βρείτε. Απλά χρησιμοποιήστε την εντολή `gunzip filename` και την `tar xvf filename` στο αρχείο, μετακινείστε το εκτελέσιμο στον κατάλογο [.filename]#/usr/local/bin# ή κάποιο άλλο μέρος που βάζετε τα εκτελέσιμά σας, τρέξτε `rehash`, και τότε βάλτε τις εξής εντολές στο [.filename]#.cshrc# αρχείο στον αρχικό κατάλογο κάθε χρήστη ή (πιο απλά) στο αρχείο [.filename]#/etc/csh.cshrc#, το αρχείο ρυθμίσεων συστήματος του csh:

[.programlisting]
....
setenv XKEYSYMDB /usr/X11R6/lib/X11/XKeysymDB
setenv XNLSPATH /usr/X11R6/lib/X11/nls
....

Αυτό υποθέτει ότι το αρχείο [.filename]#XKeysymDB# και ο κατάλογος [.filename]#nls# υπάρχουν στο [.filename]#/usr/X11R6/lib/X11#. Αν δεν υπάρχουν, βρείτε τους και βάλτε τους εκεί.

Αν αρχικά εγκαταστήσατε το σαν port χρησιμοποιώντας το CDROM (ή πήρατε το πακέτο μέσω FTP), μην αντικαταστήσετε το αρχείο [.filename]#/usr/local/bin/netscape# με το νέο εκτελέσιμο του Netscape. Το αρχείο αυτό είναι ένα αρχείο φλοιού (shell script) που ρυθμίζει τις μεταβλητές περιβάλλοντος πριν τρέξει το Netscape. Αντί να το αντικαταστήσετε, μετονομάστε το νέο εκτελέσιμο σε [.filename]#netscape.bin# και αντικαταστήστε το παλιό εκτελέσιμο, που βρίσκεται στο [.filename]#/usr/local/netscape/netscape#.

[[your-working-environment]]
== Το Περιβάλλον στο Οποίο Δουλεύετε

Ο φλοιός (shell) είναι το πιο σημαντικό μέρος του περιβάλλοντος εργασίας σας. Στο DOS ο συνηθισμένος φλοιός είναι το command.com. Ο φλοιός είναι αυτός που μεταφράζει τις εντολές που γράφετε στην γραμμή εντολών, και επικοινωνεί με το υπόλοιπο λειτουργικό σύστημα. Μπορείτε να γράψετε αρχεία δέσμης, σαν τα αρχεία δέσμης του DOS: μια σειρά από εντολές που θα τρέξουν χωρίς την δική σας παρεμβολή.

Στο FreeBSD υπάρχουν δύο προεγκατεστημένοι φλοιοί: το `csh` και το `sh`. Το `csh` είναι καλό για να κάνετε δουλειά στην γραμμή εντολών, αλλά για αρχεία δέσμης προτιμήστε το `sh` (ή το `bash`). Μπορείτε να βρείτε ποιο φλοιό τρέχετε γράφοντας `echo $SHELL`.

Ο φλοιός `csh` είναι αρκετά καλός, αλλά ο φλοιός `tcsh` μπορεί να κάνει ότι και το `csh` κι ακόμα περισσότερα. Υποστηρίζει, για παράδειγμα, την ανάκληση εντολών από το ιστορικό με τα βελάκια και επεξεργασία των εντολών πριν τρέξουν. Υποστηρίζει την αυτόματη συμπλήρωση των εντολών και των ονομάτων των αρχείων με χρήση του πλήκτρου kbd:[TAB] (το `csh` χρησιμοποιεί το kbd:[Esc] για τον ίδιο σκοπό), και υποστηρίζει την γρήγορη εναλλαγή μεταξύ δύο καταλόγων με την εντολή `cd -`. Είναι, επίσης, πολύ πιο εύκολο να ρυθμίσετε την προτροπή του φλοιού με το `tcsh`. Το `tcsh` έχει κι άλλα χρήσιμα χαρακτηριστικά, που θα κάνουν τη ζωή σας αρκετά πιο εύκολη.

Είναι εύκολο να εγκαταστήσετε ένα καινούριο φλοιό σε τρία βήματα:

[.procedure]
====
. Εγκαταστήστε το φλοιό σαν port ή πακέτο, όπως θα κάνατε και για κάθε άλλο πακέτο. Χρησιμοποιήστε την εντολή `rehash` και την `which tcsh` (υποθέτοντας ότι στήνετε το `tcsh`) για να σιγουρευτείτε ότι εγκαταστήθηκε.
. Σαν `root`, αλλάξτε το αρχείο [.filename]#/etc/shells#, προσθέτοντας μια γραμμή στο αρχείο με τον καινούριο φλοιό. Σε αυτή την περίπτωση απλά προσθέστε μια γραμμή που λέει [.filename]#/usr/local/bin/tcsh# και σώστε το αρχείο. (Κάποια ports μπορεί να το κάνουν αυτόματα αυτό για σας.)
. Χρησιμοποιήστε την `chsh` εντολή για να αλλάξετε το φλοιό σας στο `tcsh` μόνιμα, ή γράψτε `tcsh` στο prompt για να αλλάξετε προσωρινά το φλοιό σας χωρίς να κάνετε login ξανά.
====

[NOTE]
====
Μπορεί να είναι επικίνδυνο να αλλάξετε το φλοιό του `root` σε κάτι διαφορετικό από `sh` ή `csh` σε κάπως παλιότερες εκδόσεις του FreeBSD και σε πολλές άλλες εκδόσεις του UNIX(R). Μπορεί να μην έχετε ένα φλοιό που να δουλεύει όταν το σύστημα ξεκινήσει σε κατάσταση ενός χρήστη (single user mode). Η λύση είναι να χρησιμοποιείτε την εντολή `su -m` για να γίνετε `root`, που θα σας δώσει ένα `tcsh` φλοιό σαν `root`, αφού το ποιος είναι ο φλοιός είναι μέρος του περιβάλλοντος. Μπορείτε να κάνετε μόνιμη μια τέτοια αλλαγή προσθέτοντας στο [.filename]#.tcshrc# σας μια συντόμευση

[.programlisting]
....
alias su su -m
....
====

Όταν το `tcsh` ξεκινάει, διαβάζει το αρχείο [.filename]#/etc/csh.cshrc# και ύστερα το [.filename]#/etc/csh.login#, όπως κάνει και το `csh`. Επίσης διαβάζει από τον αρχικό σας κατάλογο το αρχείο [.filename]#.login# καθώς και το αρχείο [.filename]#.cshrc# επίσης, εκτός κι αν υπάρχει το αρχείο [.filename]#.tcshrc#. Αυτό μπορείτε να το φτιάξετε, αντιγράφοντας το αρχείο [.filename]#.cshrc# στο [.filename]#.tcshrc#.

Τώρα που εγκαταστήσατε το `tcsh`, μπορείτε να αλλάξετε και το prompt σας. Μπορείτε να βρείτε πιο πολλές λεπτομέρειες στην man σελίδα του `tcsh`, αλλά ας δούμε μια γραμμή που μπορείτε να βάλετε στο [.filename]#.tcshrc# αρχείο σας που θα σας λέει πόσες εντολές έχετε γράψει, τι ώρα είναι, και σε ποιον κατάλογο είστε. Επίσης περιέχει ένα χαρακτήρα `>` αν είστε απλός χρήστης, ή ένα χαρακτήρα # αν είστε `root`, κάτι που έτσι κι αλλιώς το κάνει το `tsch`.

set prompt = "%h %t %~ %# "

Αυτό μπορεί να πάει στο ίδιο μέρος που υπάρχει η παλιά set prompt γραμμή αν υπάρχει, ή κάτω από την "if($?prompt) then" αν δεν υπάρχει. Μετατρέψτε την παλιά σε σχόλιο, ώστε να μπορείτε να επιστρέψετε στο παλιό σας prompt αν το προτιμάτε. Μην ξεχάσετε στην καινούρια γραμμή τα κενά και τα εισαγωγικά. Μπορείτε να κάνετε το tcsh να ξαναδιαβάσει το [.filename]#.tcshrc# γράφοντας `source .tcshrc`.

Μπορείτε να δείτε μια λίστα με τις μεταβλητές περιβάλλοντος που υπάρχουν γράφοντας `env` στο prompt σας. Το αποτέλεσμα περιέχει τον προκαθορισμένο επεξεργαστή κειμένου σας, τον pager, και τον τύπο του τερματικού σας, ανάμεσα σε πολλά άλλα πράγματα. Μια χρήσιμη εντολή αν έχετε συνδεθεί από μακριά και δεν μπορείτε να τρέξετε κάποιο πρόγραμμα, επειδή ο τύπος τερματικού δεν το επιτρέπει, είναι η εντολή `setenv TERM vt100`.

[[other]]
== Διάφορα

Σαν `root`, μπορείτε να αποσυνδέσετε το CDROM με την εντολή `/sbin/umount /cdrom`, να βγάλετε το δίσκο από τον οδηγό, να βάλετε ένα καινούριο και να το συνδέσετε με την εντολή `/sbin/mount_cd9660 /dev/cd0a /cdrom` υποθέτοντας ότι `cd0a` είναι το όνομα της συσκευής του οδηγού CDROM. Οι πιο πρόσφατες εκδόσεις του FreeBSD σας αφήνουν να συνδέσετε το CDROM γράφοντας απλά `/sbin/mount /cdrom`.

Το live σύστημα-το δεύτερο CDROM από τους δίσκους εγκατάστασης του FreeBSD- μπορεί να φανεί χρήσιμο αν έχετε περιορισμένο χώρο. Το τι υπάρχει στο live σύστημα διαφέρει από έκδοση σε έκδοση. Μπορείτε να δοκιμάσετε να παίξετε ακόμα και παιχνίδια από το CDROM. Αυτό απαιτεί να χρησιμοποιήσετε την εντολή `lndir`, που εγκαθίσταται με το σύστημα X Window, για να πείτε στα προγράμματα που να βρουν τα απαραίτητα αρχεία, γιατί βρίσκονται στο σύστημα αρχείων του [.filename]#/cdrom# αντί για το [.filename]#/usr# και τους υποκαταλόγους του, που συνήθως βρίσκονται. Διαβάστε την man σελίδα της lndir με `man lndir`.

[[comments-welcome]]
== Τα Σχόλιά Σας

Αν χρησιμοποιήσετε αυτό τον οδηγό θα με ενδιέφερε να ξέρω που δεν ήταν αρκετά σαφής και τι παρέλειψα το οποίο πιστεύετε ότι θα έπρεπε να περιέχει, κι ακόμη πόσο σας βοήθησε. Να ευχαριστήσω τον Eugene W. Stark, καθηγητή της επιστήμης της πληροφορικής στο SUNY-Stony Brook, και τον John Fieber για τα σχόλιά τους που με βοήθησαν πολύ.

Annelise Anderson, mailto:andrsn@andrsn.stanford.edu[andrsn@andrsn.stanford.edu]
