You are on page 1of 16

1

ΙΕΚ ΛΑΓΚΑΔΑ
Εκπαιδευτής: Γεωργέλλης Παναγιώτης

Σημειώσεις στο μάθημα:


ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΣΧΟΛΙΚΟ ΕΤΟΣ 2009-2010


2

ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ UNIX

Γενικά

Το λειτουργικό σύστημα UNIX αναπτύχθηκε από την AT&T (Bell Laboratories) στα
τέλη της δεκαετίας του 60. Εξαπλώθηκε σε ολόκληρο τον κόσμο και εγκαταστάθηκε
σε μια ποικιλία συστημάτων από μεγάλα υπολογιστικά συστήματα έως μικρούς
προσωπικούς υπολογιστές. Η ευρεία διάδοση του οφείλεται στο ότι επειδή είναι
γραμμένο σε μια γλώσσα ανωτέρου επιπέδου (γλώσσα C) είναι εύκολα
προσαρμόσιμο σε διαφορετικά συστήματα, και στο ότι είναι ένα πολύ αξιόπιστο
λειτουργικό σύστημα.

Κυκλοφορούν διάφορες εκδόσεις του UNIX. Οι δύο βασικότερες είναι η έκδοση


System V που προέκυψε από την αρχική έκδοση της AT&T και η έκδοση BSD που
αναπτύχθηκε από το Πανεπιστήμιο του Berkeley στην Καλιφόρνια. Υπάρχουν μια
σειρά από παραλλαγές που βασίζονται στις δύο παραπάνω εκδόσεις, π.χ. οι εκδόσεις
SunOS και Solaris της Sun, το SCO UNIX και το LINUX που είναι εκδόσεις του
UNIX για PC και πολλές άλλες.

Τα δύο βασικά χαρακτηριστικά του UNIX είναι ότι είναι: α) πολύ-επεξεργαστικό


(multi-tasking), δηλ. επιτρέπει την ταυτόχρονη εκτέλεση πολλών διεργασιών χωρίς η
εκτέλεση μιας διεργασίας να εμποδίζει την εκτέλεση των άλλων και β) επιτρέπει την
ταυτόχρονη σύνδεση στο σύστημα σε περισσότερους από έναν χρήστες (multi-user),
οι οποίοι μπορούν να χρησιμοποιούν ακόμη και τα ίδια ακριβώς προγράμματα, χωρίς
οι ενέργειες του ενός χρήστη να επηρεάζουν τις ενέργειες των άλλων.

Για να ξεχωρίζει ο ένας χρήστης του συστήματος από τον άλλον, σε κάθε χρήστη
αντιστοιχίζεται ένας λογαριασμός (account) που αποτελείται από ένα όνομα χρήστη
(user name ή login name) που είναι διαφορετικό για κάθε χρήστη και γνωστό σε
όλους και ένα μυστικό συνθηματικό (password) γνωστό μόνον στον ίδιο το χρήστη
το οποίο εξασφαλίζει ότι ο λογαριασμός του συγκεκριμένου χρήστη δεν
χρησιμοποιείται από άλλα πρόσωπα. Για να αποκτήσει πρόσβαση στο σύστημα, ο
χρήστης πρέπει να δώσει το σωστό συνδυασμό ονόματος χρήστη και συνθηματικού.
Τέλος, κάθε χρήστης ανήκει σε ένα ή και περισσότερα group. Ένα group είναι μια
ομάδα χρηστών στην οποία εκχωρούνται κάποια συγκεκριμένα δικαιώματα σχετικά
με τη χρήση του συστήματος από το διαχειριστή συστήματος.
3

Το σύστημα αρχείων του UNIX

Τα μέσα αποθήκευσης μιας μηχανής UNIX (σκληρός δίσκος, cd-rom, κλπ.) είναι
οργανωμένα με τη λογική μορφή ενός ανεστραμμένου "δέντρου".

Κάθε κλαδί του δέντρου είναι ένας κατάλογος (directory) που περιέχει αρχεία (files)
και άλλους καταλόγους (subdirectories). Ο κατάλογος που βρίσκεται στην κορυφή
του δέντρου ονομάζεται κατάλογος ρίζα (root directory).

Η δομή αυτή μοιάζει αρκετά με την αντίστοιχη του MS-DOS. Μια διαφορά που
υπάρχει είναι ότι ο χαρακτήρας που διαχωρίζει τα ονόματα καταλόγων και αρχείων
σε μια διαδρομή (path) είναι ο "/" και όχι ο "\", π.χ.: /usr/bin ή
/users/gnikou/report.text, κοκ. Το / συμβολίζει τον κατάλογο ρίζα:

Εικόνα 2.1: Η δομή των αρχείων σε ένα σύστημα UNIX

Όταν ένας χρήστης αποκτά λογαριασμό σε ένα σύστημα UNIX, ο διαχειριστής


συστήματος δημιουργεί έναν κατάλογο για τον χρήστη ο οποίος λέγεται προσωπικός
κατάλογος (home directory) και πρόσβαση σε αυτόν έχει μόνον ο συγκεκριμένος
χρήστης και κανένας άλλος. Στην περιοχή αυτή του δίσκου, ο χρήστης μπορεί να
αποθηκεύει τα αρχεία του, να δημιουργεί υποκαταλόγους για να τα οργανώνει
καλύτερα, κλπ. Όταν ο χρήστης συνδέεται με το σύστημα δίνοντας όνομα χρήστη και
συνθηματικό, "μπαίνει" στον προσωπικό του κατάλογο.

Τα ονόματα αρχείων και καταλόγων στο UNIX ακολουθούν τους εξής κανόνες:

Ένα όνομα έχει μήκος μέχρι 14 χαρακτήρες, οι οποίοι μπορεί να είναι: i) τα γράμματα
του λατινικού αλφάβητου a-z, A-Z, ii) οι αριθμοί 0-9, iii) οι ειδικοί χαρακτήρες: ".",
"_", ",", "-", "+". Ένα όνομα δεν μπορεί να ξεκινά με "-" ή "+"

To UNIX διαχωρίζει μικρά από κεφαλαία γράμματα στα ονόματα: αν τα ίδια


γράμματα αλλάξουν από πεζά σε κεφαλαία ή αντίστροφα, τότε έχουμε και
4

διαφορετικό όνομα. Π.χ. τα REPORT.TEXT, Report.text και report.text είναι τρία


διαφορετικά ονόματα αρχείων.

Το κέλυφος του UNIX

Μόλις συνδεθούμε με μια UNIX μηχανή, εμφανίζεται στην οθόνη μας η προτροπή
(prompt) του UNIX, σημάδι ότι το λειτουργικό σύστημα περιμένει τις εντολές μας.
Το prompt είναι συνήθως ένα σύμβολο όπως το "$" ή το "%".

Στο UNIX, ένα τμήμα του λειτουργικού συστήματος που ονομάζεται κέλυφος (shell)
δέχεται τις εντολές που πληκτρολογούμε, τις ερμηνεύει και εκτελεί κάποια ενέργεια
βασιζόμενος σε αυτές. Το πρόγραμμα αυτό είναι επομένως ο "διερμηνέας" των
εντολών μας. Επειδή το shell εκτελείται σαν οποιοδήποτε άλλο πρόγραμμα,
μπορούμε να χρησιμοποιούμε διαφορετικά shell - αρκεί βέβαια να είναι διαθέσιμα
στο σύστημα στο οποίο δουλεύουμε. Υπάρχει μια ποικιλία από shell: το βασικό shell
που περιλαμβάνεται σε όλα τα UNIX συστήματα είναι το Bourne shell (sh) που
χρησιμοποιεί σαν prompt το "$". Υπάρχουν επίσης το Korn shell (ksh) που επίσης
χρησιμοποιεί σαν prompt το "$", το C shell (csh) που χρησιμοποιεί σαν prompt το
"%", κ.α.
5

Βασικές εντολές

id

Εμφανίζει το όνομα χρήστη μας (login name) και το όνομα του group στο οποίο
ανήκουμε.

who

Για κάθε χρήστη που είναι αυτή τη στιγμή συνδεδεμένος στο σύστημα εμφανίζει τις
ακόλουθες πληροφορίες: το όνομα του χρήστη, το τερματικό στο οποίο είναι
συνδεδεμένος, την ημερομηνία και ώρα που συνδέθηκε στο σύστημα και σε
περίπτωση τηλεσύνδεσης, το όνομα του υπολογιστή από τον οποίον συνδέθηκε ο
χρήστης.

Εικόνα 2.2: Η εντολή who

Εμφανίζει για κάθε συνδεδεμένο χρήστη τις ίδιες πληροφορίες με τη who, και
επιπλέον, το χρόνο που ο χρήστης είναι ανενεργός δηλ. δεν έχει πατήσει κανένα
πλήκτρο και τη διεργασία που εκτελεί.

date

Εμφάνιση της ημερομηνίας και της ώρας.

write <όνομα_χρήστη>

Αποστολή μηνύματος στο συνδεδεμένο χρήστη <όνομα_χρήστη>. Αφού


εκτελέσουμε την εντολή, ο,τιδήποτε πληκτρολογούμε εμφανίζεται στην οθόνη του
άλλου χρήστη. Τερματίζουμε το μήνυμά μας πατώντας [CTRL]+D στην αρχή μιας
νέας γραμμής για να επιστρέψουμε στο prompt του UNIX. Με την εντολή mesg n
μπορούμε να απαγορεύσουμε την εμφάνιση τέτοιων μηνυμάτων στην οθόνη μας και
με την εντολή mesg y να την ενεργοποιήσουμε ξανά.

talk <όνομα_χρήστη> ή <E-mail διεύθυνση χρήστη>

Μέσω της εντολής αυτής, "συνομιλούμε" με κάποιον χρήστη που είναι συνδεδεμένος
είτε στο σύστημά μας (δίνοντας το όνομα χρήστη του) είτε σε κάποιο
απομακρυσμένο σύστημα με σύνδεση στο Internet (δίνοντας την E-mail διεύθυνσή
6

του). Όταν εκτελούμε την talk, η οθόνη μας και η οθόνη του άλλου χρήστη χωρίζεται
σε δύο περιοχές. Στη μία εμφανίζεται ό,τι πληκτρολογούμε εμείς και στην άλλη ό,τι
πληκτρολογεί ο "συνομιλητής" μας.

man <εντολή>

Εμφάνιση πληροφοριών σχετικά με την εντολή <εντολή>. Δίνοντας π.χ. man talk,
παίρνουμε περισσότερες πληροφορίες για τη χρήση της εντολής talk.

pwd

Εμφανίζει τον τρέχοντα κατάλογο.

cd <dir>

Μετάβαση στον κατάλογο <dir> ο οποίος γίνεται ο τρέχων κατάλογος. Για να


ανέβουμε ένα επίπεδο πάνω στην ιεραρχία των καταλόγων, δίνουμε cd .. Δίνοντας
την εντολή cd χωρίς όρισμα ή cd ~, επιστρέφουμε στον προσωπικό μας κατάλογο.

mkdir <dir>

Δημιουργία καταλόγου με όνομα <dir>

rmdir <dir>

Διαγραφή του καταλόγου <dir>. Ο κατάλογος αυτός θα πρέπει να είναι κενός.

cp <file1> <file2>

cp <file1> <file2> ... <dir>

Χρησιμοποιώντας την πρώτη σύνταξη, το αρχείο <file1> αντιγράφεται στο αρχείο


<file2> Αν το δεύτερο αρχείο δεν υπάρχει, δημιουργείται. Στην αντίθετη περίπτωση,
το παλιό περιεχόμενό του χάνεται. Χρησιμοποιώντας τη δεύτερη σύνταξη, το αρχείο
ή τα αρχεία που προσδιορίζονται από τα <file1> <file2> ... αντιγράφονται στον
κατάλογο <dir>. Όπως και στο DOS, υπάρχει η δυνατότητα χρήσης χαρακτήρων
ομαδοποίησης: δίνοντας π.χ. την εντολή cp temp* old, αντιγράφουμε όλα τα αρχεία
του τρέχοντος καταλόγου που αρχίζουν από temp στον υποκατάλογο old του
τρέχοντος καταλόγου.
Τέλος, αν θέλουμε να αντιγράψουμε κάποιο/α αρχείο/α από άλλον κατάλογο στον
τρέχοντα, σαν <dir> δίνουμε μία τελεία που συμβολίζει τον τρέχοντα κατάλογο, π.χ.
cp docs/* .

mv <file1> <file2>

mv <file1> <file2> ... <dir>

Χρησιμοποιώντας την πρώτη σύνταξη, το αρχείο <file1> μετακινείται, δηλ.


μετονομάζεται σε <file2>. Αν προϋπήρχε αρχείο με το όνομα αυτό, τα περιεχόμενά
του χάνονται.
Χρησιμοποιώντας τη δεύτερη σύνταξη, το αρχείο ή τα αρχεία που προσδιορίζονται
7

από τα <file1> <file2> ... μετακινούνται στον κατάλογο <dir> και διαγράφονται από
την αρχική τους θέση.

rm <file1> <file2> ...

Διαγραφή του αρχείου ή των αρχείων που προσδιορίζονται από τα <file1> <file2> ...

ls <dir>

Εμφάνιση των περιεχομένων - αρχείων και καταλόγων - του καταλόγου <dir>. Αν το


όρισμα <dir> παραληφθεί, εμφανίζονται τα περιεχόμενα του τρέχοντος καταλόγου.
Δίνοντας την εντολή ls -l <dir>, εμφανίζεται μια πιο λεπτομερής λίστα των
περιεχομένων του καταλόγου:

Εικόνα 2.3: Η εντολή ls -l

Σε κάθε γραμμή της λίστας αυτής:

Η πρώτη στήλη αποτελείται από 10 χαρακτήρες. Ο πρώτος χαρακτήρας μας


πληροφορεί για το αν πρόκειται για αρχείο ή κατάλογο (ένα - σημαίνει αρχείο κι ένα
d σημαίνει κατάλογος). Οι επόμενοι 9 χαρακτήρες δείχνουν τα δικαιώματα
προσπέλασης (permissions) του αρχείου ή καταλόγου. Τα δικαιώματα αυτά μπορεί
να είναι: α) δικαίωμα ανάγνωσης (read - συμβολίζεται με το γράμμα "r"), β)
δικαίωμα εγγραφής (write - συμβολίζεται με το γράμμα "w"), γ) δικαίωμα εκτέλεσης
(execute - συμβολίζεται με "x").

Οι 3 πρώτοι από τους 9 χαρακτήρες δείχνουν τα δικαιώματα του χρήστη που είναι
ιδιοκτήτης του αρχείου ή καταλόγου και ο οποίος φαίνεται στην τρίτη στήλη. Αν
π.χ. έχει όλα τα δικαιώματα, οι χαρακτήρες αυτοί θα είναι "rwx", ενώ αν έχει μόνον
δικαίωμα ανάγνωσης και εγγραφής, θα είναι "rw-". Οι επόμενοι 3 χαρακτήρες
δείχνουν τα δικαιώματα των χρηστών που ανήκουν στο group που εμφανίζεται στην
τέταρτη στήλη. Οι τελευταίοι 3 χαρακτήρες δείχνουν τα δικαιώματα των υπόλοιπων
χρηστών (others).

Στις στήλες που ακολουθούν εμφανίζονται κατά σειρά:

ένας αριθμός που για ένα αρχείο είναι συνήθως 1, ενώ για έναν κατάλογο είναι ο
αριθμός των υποκαταλόγων που περιέχει

• o ιδιοκτήτης του αρχείου ή καταλόγου


• το group
8

• το μέγεθος του αρχείου σε bytes


• η ημερομηνία δημιουργίας ή τελευταίας τροποποίησης του
αρχείου ή καταλόγου
• το όνομα του αρχείου ή καταλόγου

Π.χ. το αρχείο update1 είναι αρχείο που ανήκει στο χρήστη mpapas. Ο χρήστης αυτός
έχει δικαίωμα ανάγνωσης και εγγραφής στο αρχείο. Δικαίωμα ανάγνωσης έχουν
επίσης οι χρήστες που ανήκουν στο group noc καθώς και οι υπόλοιποι χρήστες. Το
αρχείο έχει μέγεθος 368293 bytes και τροποποιήθηκε για τελευταία φορά στις 31
Δεκεμβρίου.

chmod [u/g/o] +/- r/w/x <file>

Μέσω της εντολής αυτής, μπορούμε να μεταβάλλουμε τα δικαιώματα πρόσβασης


ενός αρχείου. Απαραίτητη προϋπόθεση είναι να είμαστε ιδιοκτήτες του αρχείου.
Το u συμβολίζει τον ιδιοκτήτη του αρχείου (user), το g συμβολίζει την ομάδα (group)
και το o τους άλλους (others). Τα + και - σημαίνουν εκχώρηση ή να αφαίρεση ενός
δικαιώματος αντίστοιχα. Π.χ. για να εκχωρήσουμε στο group και τους άλλους το
δικαίωμα εγγραφής στο αρχείο update1, δίνουμε: chmod go+w update1. Αν στη
συνέχεια θέλουμε να αφαιρέσουμε το δικαίωμα εγγραφής από τους άλλους, δίνουμε
chmod o-w update1. Τέλος, παραλείποντας τα u/g/o, η αλλαγή που κάνουμε
επηρεάζει και τις 3 κατηγορίες χρηστών.

cat <file>

Εμφάνιση των περιεχομένων του αρχείου <file>. Αν το αρχείο ξεπερνά τη μία οθόνη,
μπορούμε να χρησιμοποιήσουμε την εντολή cat σε συνδυασμό με την εντολή more
ώστε τα περιεχόμενά του να εμφανίζονται ανά οθόνες: cat <file> | more

more <file>

Εμφανίζουμε το περιεχόμενο ενός ρχείου κειμένου στην οθόνη. Γενικά, όποτε τα


αποτελέσματά μιας εντολής ξεπερνούν σε μήκος τη μια οθόνη, μπορούμε στο τέλος
της εντολής να προσθέσουμε το "| more". Έτσι, εμφανίζεται αρχικά η πρώτη οθόνη
των αποτελεσμάτων και στη συνέχεια:

για να δούμε την επόμενη οθόνη, πατάμε [SPACE]


για να δούμε την επόμενη γραμμή, πατάμε [ENTER]
για να διακόψουμε την εμφάνιση των αποτελεσμάτων, πατάμε "q"

passwd

Αλλαγή του συνθηματικού μας. Περισσότερα για την εντολή αυτή στην επόμενη
παράγραφο.

finger <όνομα_χρήστη> ή <E-mail διεύθυνση χρήστη>

Εμφάνιση διαφόρων πληροφοριών που έχει καταχωρημένες το σύστημά μας για το


χρήστη με όνομα <όνομα_χρήστη> ή ένα απομακρυσμένο σύστημα συνδεδεμένο στο
Internet για το χρήστη με διεύθυνση <E-mail διεύθυνση χρήστη>. Περισσότερα για
την εντολή αυτή στην παράγραφο 2.6.
9

exit ή [CTRL]+D ή logout

Έξοδος από το σύστημα.

Τέλος, οποτεδήποτε θέλουμε να διακόψουμε την εκτέλεση μιας διεργασίας στο


UNIX, πατάμε [CTRL]+C. Επίσης, μπορούμε να αναστείλουμε προσωρινά
(suspend) την εκτέλεση μιας διεργασίας πατώντας [CTRL]+Z. Στην περίπτωση αυτή,
μπορούμε να ζητήσουμε τη συνέχιση της εκτέλεσης της διεργασίας στο παρασκήνιο
(background), δηλ. χωρίς εμείς να συμμετέχουμε, δίνοντας την εντολή bg. Για να την
επαναφορά της διεργασίας στο προσκήνιο (foreground), δίνουμε την εντολή fg.

2.5. Αλλάζοντας password

Για την ασφάλεια του συστήματος, πρέπει να είμαστε προσεκτικοί στην επιλογή
των κρυφών συνθηματικών μας (password):

Το συνθηματικό πρέπει να είναι κάτι ασυνήθιστο που ο άλλος δεν θα μπορεί να


μαντέψει εύκολα και να έχει μήκος τουλάχιστον 6 χαρακτήρες. Δεν θα πρέπει να
είναι π.χ. η ημερομηνία γέννησής μας, το όνομα της αγαπημένης μας ομάδας κλπ.

Επίσης, δεν θα πρέπει να είναι μια λέξη που να υπάρχει σε λεξικό γιατί είναι
επικίνδυνο να "σπάσει" από τους χάκερ με τη βοήθεια προγραμμάτων που
χρησιμοποιούν λεξικά.

Καλό είναι να επιλέγονται συνδυασμοί γραμμάτων και αριθμών. Μπορούμε για


παράδειγμα να σχηματίσουμε το συνθηματικό μας παίρνοντας τα αρχικά μιας φράσης
που έχει κάποια σημασία για μας και μπορούμε να τη θυμόμαστε και
παρεμβάλλοντας κάποια ψηφία ή και άλλους χαρακτήρες του πληκτρολογίου όπως
π.χ. "!", "@", "#", "%", "$", κλπ.

Τέλος, καλό είναι να αλλάξουμε το συνθηματικό που μας αποδόθηκε αρχικά από το
διαχειριστή συστήματος με το άνοιγμα του λογαριασμού μας και γενικότερα να
αλλάζουμε κατά διαστήματα το συνθηματικό που έχουμε.

Για να αλλάξουμε το συνθηματικό μας:

Συνδεόμαστε με telnet με τη UNIX μηχανή στην οποία έχουμε λογαριασμό (τη


μηχανή mail.uth.gr). Στην προτροπή login: δίνουμε όνομα χρήστη και στην προτροπή
password: δίνουμε το συνθηματικό μας. Στη γραμμή εντολής του UNIX δίνουμε την
εντολή passwd και πατάμε [ENTER]. Στην οθόνη εμφανίζεται το μήνυμα:

passwd: Changing password for <όνομα_χρήστη>

και στη συνέχεια:

Enter login password:

Το σύστημα μας ζητά το συνθηματικό που ήδη έχουμε. Το πληκτρολογούμε (δεν


εμφανίζεται στην οθόνη) και πατάμε [ENTER]. Αν κάνουμε κάποιο λάθος,
10

εμφανίζεται το μήνυμα "sorry" που σημαίνει ότι πρέπει να δοκιμάσουμε ξανά.


Διαφορετικά, εμφανίζεται:

New password:

Το σύστημα μας ζητά το νέο συνθηματικό που πρέπει να διαφέρει από το παλιό
τουλάχιστον σε 3 χαρακτήρες. Το πληκτρολογούμε και πατάμε [ENTER]. Κατόπιν
εμφανίζεται το μήνυμα:

Re-enter new password:

Το σύστημα μας ζητά ξανά το νέο συνθηματικό για επιβεβαίωση. Το


πληκτρολογούμε και πατάμε [ENTER]. Αν κάνουμε κάποιο λάθος κατά την εισαγωγή
του, το σύστημα εμφανίζει ένα σχετικό μήνυμα και μας ζητά να το ξαναδώσουμε.
Αλλιώς, η αλλαγή έγινε επιτυχώς. Η παραπάνω διαδικασία φαίνεται στην ακόλουθη
εικόνα:

Εικόνα 2.4: Η εντολή passwd

2.6. Η εντολή finger

Μέσω της εντολής finger, μπορούμε να πάρουμε πρόσθετες πληροφορίες για τους
χρήστες του τοπικού μας συστήματος ή άλλων απομακρυσμένων συστημάτων
συνδεδεμένων με το Internet.

Πληκτρολογώντας finger στο prompt του UNIX, παίρνουμε μια λίστα από
πληροφορίες για τους χρήστες που είναι αυτή τη στιγμή συνδεδε
11

Εικόνα 2.5: Εμφάνιση των συνδεδεμένων χρηστών

Σε κάθε γραμμή της λίστας αυτής, περιλαμβάνονται οι εξής πληροφορίες για κάθε
χρήστη: όνομα χρήστη (login name), πραγματικό ονοματεπώνυμο, τερματικό που
χρησιμοποιεί, χρόνος που παραμένει αδρανής (εμφανίζεται σε ώρες και λεπτά ή σε
ημέρες αν υπάρχει το γράμμα d), ημέρα και ώρα σύνδεσης με το σύστημα και τέλος,
σε περίπτωση τηλεσύνδεσης, το όνομα του υπολογιστή από τον οποίον συνδέθηκε ο
χρήστης.

Μπορούμε να χρησιμοποιήσουμε την εντολή finger προσδιορίζοντας κάποιο


απομακρυσμένο σύστημα του Internet. Δίνοντας π.χ.

finger @cs.toronto.edu

μπορούμε να δούμε ποιοι χρήστες είναι συνδεδεμένοι στο σύστημα του Τμήματος
Υπολογιστών του Πανεπιστημίου του Τορόντο τη στιγμή αυτή. Σημειώνουμε ότι για
λόγους ασφάλειας, πολλά συστήματα δεν επιτρέπουν τις εισερχόμενες εντολές finger.

Μέσω της finger, μπορούμε επίσης να αναζητήσουμε πληροφορίες για


συγκεκριμένους χρήστες του δικού μας ή κάποιου απομακρυσμένου συστήματος
είτε οι χρήστες είναι αυτή τη στιγμή συνδεδεμένοι στο σύστημα είτε όχι. Η εντολή
συντάσσεται ως εξής:

finger <όνομα_χρήστη> ή <E-mail διεύθυνση χρήστη>

Δίνοντας π.χ.

finger mpapas

παίρνουμε πληροφορίες για τον χρήστη mpapas του συστήματός μας:

Εικόνα 2.6: Εμφάνιση πληροφοριών για έναν συγκεκριμένο χρήστη

Οι πληροφορίες που παρέχονται μέσω της finger ποικίλλουν από το ένα σύστημα
στο άλλο και εξαρτώνται επίσης από την καλή θέληση και έγκριση του ίδιου του
χρήστη.

Αν ο χρήστης θέλει οι υπόλοιποι χρήστες του Internet να μπορούν να διαβάζουν


συμπληρωματικές πληροφορίες για το άτομό του, μπορεί στον προσωπικό του
κατάλογο να δημιουργήσει (χρησιμοποιώντας π.χ. έναν editor όπως τον vi που θα
δούμε παρακάτω) δύο αρχεία με ονόματα .project και .plan και να καταχωρήσει εκεί
12

ό,τι πληροφορίες θέλει. Η finger, θα εμφανίζει την πρώτη γραμμή του αρχείου
.project, και όλες τις γραμμές του αρχείου .plan. Επίσης, μπορεί να ζητήσει από το
διαχειριστή συστήματος να εμφανίζονται π.χ. η διεύθυνση του γραφείου του, ο
αριθμός τηλεφώνου εργασίας και οικίας και άλλες πληροφορίες.

Στο παράδειγμά μας, εμφανίζονται κατά σειρά οι ακόλουθες πληροφορίες για το


χρήστη: όνομα χρήστη (Login name), ονοματεπώνυμο, προσωπικός κατάλογος του
χρήστη (/export/home/mpapas/), το shell που χρησιμοποιεί ο χρήστης με την είσοδό
του στο σύστημα (Korn shell - ksh), η χρονική στιγμή που ο χρήστης συνδέθηκε στο
σύστημα - σε περίπτωση που δεν είναι συνδεδεμένος, εμφανίζεται η ημερομηνία και
ώρα της τελευταίας φοράς που συνδέθηκε, ο χρόνος που παραμένει αδρανής, η
χρονική στιγμή που διάβασε για τελευταία φορά το ηλεκτρονικό του ταχυδρομείο και
τέλος, τα περιεχόμενα των αρχείων /export/home/users/mpapas/.project και
/export/home/users/mpapas/.plan

Μπορούμε επίσης να αναζητήσουμε πληροφορίες για κάποιον απομακρυσμένο


χρήστη, προσδιορίζοντας την E-mail διεύθυνσή του, π.χ. finger tanya@cs.toronto.edu

Η finger μπορεί να μας φανεί χρήσιμη π.χ. στην περίπτωση που θέλουμε να δούμε αν
ένας συγκεκριμένος χρήστης είναι συνδεδεμένος σε ένα σύστημα ώστε να
"συνομιλήσουμε" μαζί του μέσω της εντολής talk.

Επίσης, στην περίπτωση που ψάχνουμε για την E-mail διεύθυνση ενός ατόμου. Αν
για παράδειγμα ψάχνουμε για την E-mail διεύθυνση ενός φίλου μας που λέγεται
Νίκος Παπαδόπουλος και σπουδάζει στο Τμήμα Υπολογιστών του Παν. του Τορόντο,
μπορούμε να δώσουμε τη finger προσδιορίζοντας το επώνυμο ή το μικρό όνομα του
φίλου μας, δηλαδή:

finger papadopoulos@cs.toronto.edu ή finger nikos@cs.toronto.edu

Η finger θα μας επιστρέψει το όνομα χρήστη (Login name) του φίλου μας, π.χ. npap,
οπότε συμπεραίνουμε ότι η E-mail διεύθυνσή του θα είναι: npap@cs.toronto.edu
13

Παρουσίαση Εντολών UNIX - DOS


Λίστα Εντολών

pwd | ls | mkdir | rmdir | cp | mv | rm | grep | zip | unzip | passwd | chmod

Εντολή: pwd
Χρήση: Η εντολή pwd σας ενημερώνει για το ποιος είναι ο τρέχων κατάλογος που
εργάζεστε στον Virtual Server.

Παράδειγμα: Γράψτε "pwd" στο prompt και θα σας επιστρέψει κάτι σαν και αυτό
"/usr/home/vserver/etc"

Εντολή: ls
Χρήση: Η εντολή ls σας επιστρέφει μια λίστα των αρχείων και των υποκαταλόγων
του τρέχοντος καταλόγου που βρίσκεστε. Μπορείτε να τροποποιήσετε την εντολή και
θα σας επιστρέφει πιο σημαντικές πληροφορίες.
Εάν γράψετε "ls -F" θα σας επισυνάψει μπροστα απο τα ονόματα των subdirectory
μια κάθετη "/" έτσι ώστε να μπορείτε εύκολα να τα διακρίνετε απο τα ονόματα των
αρχείων.
Εάν γράψετε "ls -a" θα σας εμφανίσει όλα τα κρυφά αρχεία σαν αρχεία .htaccess .
Εάν γράψετε "ls -l" θα σας εμφανίσει λεπτομερής πληροφορίες σχετικά με κάθε
αρχείο και κατάλογο. Επίσης περιέχει περιορισμούς, ιδιοκτήτες, μεγέθη, και πότε τα
αρχεία είχαν τροποποιηθεί για τελευταία φορά.
Παράδειγμα: Γράψτε "ls -al" στο prompt και θα σας επιστρέψει τα ονόματα τω
αρχείων που περιέχουν κρυφά αρχεία και μια "/" μπροστά απο κάθε υποκατάλογο.
Ισοδύναμο του DOS: dir

Εντολή: mkdir
Χρήση: Με την εντολή mkdir δημιουργείτε έναν νέο κατάλογο. Δηλαδή απλά
γράφετε "mkdir directory" στο prompt και αντικαθιστόντας το directory με το
όνομα του καταλόγου που θέλετε να δημιουργήσετε.
Παράδειγμα: Γράψτε "mkdir temp" στο prompt για να δημιουργήσετε έναν νέο
κατάλογο με όνομα temp.
Ισοδύναμο του DOS: md, mkdir

Εντολή: rmdir
Χρήση: Με την εντολή rmdir διαγράφετε έναν κατάλογο.Απλά γράφετε "rmdir
directory" στο prompt και αντικαθιστόντας το directory με το όνομα του καταλόγου
που θέλετε να διαγράψετε.
Παράδειγμα: Γράψτε "rmdir temp" στο prompt για να μετακινήσετε το directory με
όνομα temp.
Ισοδύναμο του DOS: rd, rmdir

Εντολή: cp
Χρήση: Η εντολή cp αντιγράφει ένα αρχείο σε μια νέα τοποθεσία ή σε ένα άλλο
14

όνομα αρχείου. Απλά γράφετε "cp filename copyname" στο prompt και
αντικαθιστόντας το filename με το όνομα του αρχείου που θέλετε να αντιγράψετε,
και το copyname με το όνομα του νέου αντίγραφου.
Επίσης μπορείτς να προσθέσετε ένα διάγραμμα καταλόγου εάν θέλετε να
αντιγράψετε το αρχείο σε μια εντελώς νέα τοποθεσία. Απλά γράψτε "cp filename
directory/copyname" και αντικαταστήστε το directory με το όνομα του καταλόγου
όπου θέλετε το νεό αντίγραφο να τοποθετηθεί.
Παράδειγμα: Γράψτε "cp home.htm index.html" στο prompt για να αποκτήσετε ένα
αντίγραφο του αρχείου home.htm , με νέο όνομα index.html
Ισοδύναμο του DOS:copy

Εντολή: mv
Χρήση: Η εντολή mv μετονομάζει ένα αρχείο ή το μετακινεί σε μια νέα κατεύθυνση.
Απλά γράψτε "mv oldfile newfile" στο prompt και αντικαταστήστε το oldfile με το
όνομα του αρχείου που επιθυμείτε να μετονομάσετε ή να μετακινήσετε, και το
newfile με το νέο όνομα του νέου αρχείου.
Μπορείτε επίσης να προσθέσετε την δομή ενός καταλόγου εάν επιθυμείτε να
μετακινήσετε το αρχείο σε μία νέα εντελώς κατεύθυνση. Απλά γράψτε "mv oldfile
directory/newfile" και αντικαταστήστε το directory με το όνομα του καταλόγου που
θέλετε το αρχείο να μετακινηθεί.
Παράδειγμα: Γράψτε "mv test.conf test.old.conf" στο prompt για να μετακινήσετε
το αρχείο με όνομα test.conf στο αρχείο με όνομα test.old.conf
Ισοδύναμο του DOS:move, rename

Εντολή: rm
Χρήση: Η εντολή rm διαγράφει ένα αρχείο. Απλά γράψτε "rm filename" στο prompt
και αντικαταστήστε το filename με το όνομα του αρχείου που θέλετε να διαγράψετε.
Παράδειγμα: Γράψτε "rm test.html" στο prompt για να διαγράψετε ένα αρχείο με
όνομα test.html.
Ισοδύναμο του DOS:del

Εντολή: grep
Χρήση: Η εντολή grep βρίσκει γραμμές στο αρχείο που ταιριάζουν με το κείμενο.
Απλά γράψτε "grep "text" filenames" στο prompt και αντικαταστήστε το "text" με
την λέξη ή την φράση που θέλετε να αναζητήσετε, και αντικαταστήστε το filenames
με τα αρχεία που θα αναζητηθούν. Για να αναζητήσετε όλα τα αρχεία στον τρέχων
κατάλογο, απλά αντικαταστήστε το filenames με αστεράκι (*) .
Παράδειγμα: Γράψτε "grep "for sale" *" στο prompt για να βρείτε τα αρχεία στον
τρέχων κατάλογο που περιέχουν ττην φράση "for sale".

Εντολή: zip
Χρήση: Η εντολή zip συμπιέζει ένα αρχείο ή μια λίστα αρχείων σε ένα αρχείο
συμπιεσμένης μορφής. Αυτή η εντολή είναι παρόμοια με την εντολή pkunzip σε ένα
PC. Απλά γράψτε "zip zipfile file1 file2 file3" στο prompt και αντικαταστήστε το
zipfile με το όνομα που θέλετε να χρησιμοποιήσετε για τα συμπιεσμένα αρχεία , και
αντικαταστήστε το fileX με το όνομα των αρχείων που θέλετε να έχει το συμπιεσμένο
αρχείο.
Παράδειγμα: Γράψτε "zip back.zip home.html index.html" στο prompt για να
συμπιέσετε τα αρχεία home.html και index.html στο νέο αρχείο με όνομα back.zip.
Ισοδύναμο του DOS:pkzip
15

Εντολή: unzip
Χρήση: Η εντολή unzip εξάγει ένα αρχείο συμπιεσμένης μορφής. Αυτή η εντολή
είναι παρόμοια με το pkzip αρχείο σε ένα PC. Απλά γράψτε "unzip zipfile" στο
prompt και αντικαταστήστε το zipfile με το όνομα του αρχείου που είναι σε
συμπιεσμένη μορφή.
Παράδειγμα: Γράψτε "unzip old.zip στο prompt για να αποσυμπιέσει το αρχείο
old.zip.
Ισοδύναμο του DOS:pkunzip

Εντολή: passwd
Χρήση: Η εντολή passwd αλλάζει τον κωδικό σας στο Unix. Αυτό επηρρεάζει τον
λογαριασμό e-mail του Unix, την προσβασή σας στο FTP και στο Telnet. Εάν έχετε
Web-mail, αυτό δεν επηρρεάζει τους κωδικούς του web-mail σας. Εάν έχετε έναν
λογαριασμό FrontPage, δεν επηρρεάζει την FrontPage authoring.
Για να αλλάξετε τον κωδικό σας, απλά πηγαίντε στο Telnet, και γράψτε: passwd
Παράδειγμα:

% passwd
Changing local password for web8582e.
Old password:
New password (8 significant characters):
Retype new password:
passwd: updating passwd database
passwd: done
%

Σημείωση, ο κωδικός δεν θα σας εμφανίζεται στην οθόνη σας, ούτε και με μορφή απο
αστεράκια '*'

Εντολή: chmod
Χρήση: Η εντολή chmod ορίζει τους περιορισμούς ενός αρχείου ή ενός
καταλόγου.Τα αρχεία Unix και οι κατάλογοι έχουν τρία ορίσματα περιορισμών:
owner, group, και other. Εσείς είσαστε ο owner (ιδιοκτήτης). Φυσικά θα θέλετε να
μπορείτε να αναγνώσετε τα αρχεία σας, να κάνετε αλλαγές, και να τρέχετε scripts. Με
τα read, write, execute μπορείτε να κάνετε τα παραπάνω. Οι περιορισμοί group και
other είναι οι επόμενοι. Φυσιολογικά, δεν θα θέλετε κάποιος άλλος να κάνει αλλάγες
στο website σας! Εξαρχής έχει οριστεί να είναι μόνο αναγνώσιμο (read-only). Οι
χρήστες μπορούν να μπούν στους καταλόγους σας, αλλά δεν μπορούν να αλλάξουν
οτιδήποτε, ή να φορτώσουν αρχεία.

Ο πιο συχνός λόγος για να χρησιμοποιείτε αυτή την εντολή είναι για να δημιουργείτε
εκτελέσιμα cgi scripts. Αυτό πραγματοποιείται γράφοντας chmod 755 filename
στην γραμμή εντολών. Το 7 σημαίνει read, write, και execute για τον owner (εσας),
ενώ το 5 σημαίνει read και execute, αλλά όχι εγγράψιμο (not write),για το group και
για τους υπόλοιπους
16

ΟΝΟΜΑΤΟΛΟΓΙΑ ΑΡΧΕΙΩΝ
Ανάλογα με το λειτουργικό σύστημα υπάρχει διαφορετική προσέγγιση στο
διαχωρισμό πεζών και κεφαλαίων:

• Ονομασία μόνο με κεφαλαία, ανάκτηση ανεξάρτητα από τον τύπο των


γραμμάτων (π.χ. MS-DOS)
• Ονομασία με πεζά και κεφαλαία ανάκτηση ανεξάρτητα από τον τύπο των
γραμμάτων (π.χ. Windows-NT)
• Ονομασία με πεζά και κεφαλαία ανάκτηση σύμφωνα με τον τύπο των
γραμμάτων (π.χ. Unix)

Σε ορισμένα λειτουργικά συστήματα η επέκταση του αρχείου (filename extension)


έχει ειδική σημασία. Αυτή μπορεί να υποστηρίζεται μέσω ενός γενικού
αντικειμενοστρεφούς σχεδιασμού του λειτουργικού συστήματος (π.χ. Windows NT)
ή λόγω παραδοχών που γίνονται από τις εφαρμογές του (π.χ. MS-DOS, Unix, VMS).

Για παράδειγμα στο Windows-NT ορισμένοι τύποι επέκτασης είναι οι παρακάτω:

.exe Εκτελέσιμο αρχείο


.txt Αρχείο κειμένου
.bat Εκτελέσιμο αρχείο εντολών του φλοιού
.bmp Αρχείο χαρτογραφικής εικόνας
.htm Αρχείο με κείμενο HTML (Internet)
.hlp Αρχείο με δεδομένα βοήθειας
.doc Αρχείο της εφαρμογής Microsoft Word
.xls Αρχείο της εφαρμογής Microsoft Excel
.c Αρχείο πηγαίου κώδικα C
.pas Αρχείο πηγαίου κώδικα Pascal
.for Αρχείο πηγαίου κώδικα Fortran
.bas Αρχείο πηγαίου κώδικα Basic
.obj Μεταγλωττισμένος κώδικας
.lib Βιβλιοθήκη μεταγλωττισμένου κώδικα
.dll Δυναμική βιβλιοθήκη

You might also like