Thursday 10 January 2008

Linux Terminal - Μάθημα 1ο - Εισαγωγή

Σε αυτη την μινι σειρα μαθηματων-mini tutorials θα κανουμε μια παρουσιαση της κονσολας του Linux, απο την βασικη χρηση μεχρι το scripting. Στηριζεται ελαφρα σε εναν παλιο οδηγο που ειχαμε γραψει για κατι σεμιναρια με εναν φιλο, αλλα στα σημεια που χρειαζεται εχει εκμοντερνιστει για να καλυπτει τα σημερινα δεδομενα. Οτι εχει αλλαξει τουλαχιστο. Ας ξεκινησουμε λοιπον :)

Η γραμμή εντολών του Linux

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

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

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

Το Linux παρέχει αρκετά διαφορετικά shells

Υπάρχουν αρκέτα shells στο Linux από τα οποία μπορούμε να διαλέξουμε και να χρησιμοποίησουμε αυτό που μας ταιρίαζει. Γιατι ? Μα φυσίκα επείδη διαφορετίκοι ανθρώποι θέλουν να εκτελόυν τις εργασίες τους με διαφορετικο τρόπο, και το Linux είναι ενα λείτουργικο σύστημα που σου παρέχει ποικιλία και σου δίνει τη δυνατότητα να κάνεις το ίδιο πράγμα με πόλους διαφορέτικους τρόπους.

Ας δούμε μερίκα από αυτά για καθαρά εγκυκλοπεδικούς λόγους.

* sh : (Bourne Shell) Το πλέον βασίκο κέλυφος. Δεν πάρεχει προήγμενες δυνατότητες που συναντάμε στα άλλα, ομώς έχει το πλεονέκτημα οτι υπάρχει στα περισσότερα Unix σύστηματα κατί που καθιστά αναγκαία τη γνώση του.
* ksh : (Korn Shell) Επίσης δημοφιλής αλλά οχι ευρέως διαδεδομένο κελύφος. Παρόμοιο με το sh.
* csh : (C shell) Αρκέτα παρόμοιο με τα άλλα στη σύνταξη εντολών, ομώς διαφορετίκο στην σύνταξη των scripts. Το πρώτο κέλυφος που παρείχε τη δύνατοτητα ελέγχου των εργασιών αλλά και ιστόρια των εντόλων που προήγηθηκαν.
* tcsh : Πρόκειται για μια βελτίωση του csh, που παρέχει αυτόματη σύμπλήρωση των εντολών αλλά και των ονομάτων των αρχέιων.
* bash : (Bourne Again Shell) Αυτό είναι το προεπιλέγμενο κέλυφος στις διανομές του Linux. Παρέχει τις δυνατότητες του tcsh, αλλά είναι σύμβατο με την script γλώσσα του sh.

Κάνωντας login σε μια κονσόλα

H διαδικασία είναι απλή: δίνουμε το πρoσωπικό μας όνομα χρήστη, και τον κώδικο και μας επιτρέπεται η είσοδος στην γραμμή εντολών του συστήματος.

Ξεκινώντας για παράδειγμα στο παλιο μου σύστημα που ειχε Linux Mandrake 8.1 θα βλεπαμε μια οθόνη που μοίαζει με την παρακάτω :

Linux Version 2.4.8-26mdk
Compiled #1 Sun Sep 23 17:06:39 CEST 2001
One 1200Mhz AMD Athlon(tm) Processor, 255 RAM
2392,06 Bogomips Total
phoenix.gr

Mandrake Linux release 8.1 for i586
Kernel 2.4.8-26mdk on an i686/tty1

phoenix login: όνομα χρήστη
Password: κωδικός πρόσβασης

Last login: Fri Jan 7 21:40:43 on vc/1
["όνομα χρήστη"@phoenix "όνομα χρήστη"]$_

Αν κάνουμε Login πρώτη φορά με τον κώδικο πρόσβασης που όρισε ο διαχειριστής του συστήματος,
καλό είναι να τον αλλάξουμε. Αυτο το πετυχαίνουμε με την χρήση της εντολής passwd.

$ passwd
Password: νέος κωδικός πρόσβασης
Verify Password: νέος κωδικός πρόσβασης

5 πράγματα που ΔΕΝ ΠΡΕΠΕΙ να κάνετε όταν σκέφτεστε κωδικό πρόσβασης

* Δεν βάζουμε ημερομήνιες γέννησης ή επετείων, τηλέφωνα και γενίκα μόνο νούμερα.
* Δεν βάζουμε ονόματα συγγενών,φίλων και διασήμων.
* Δεν βάζουμε λέξεις που εμφανίζονται στο λεξίκο.
* Δεν βάζουμε για κωδικό το όνομα χρήστη που έχουμε.
* Δεν δίνουμε τον κωδικό πρόσβασης σε κανέναν, ούτε καν στον διαχειριστή του συστήματος !
Αν αυτό το άτομο είναι όντως ο διαχειριστής του συστήματος δεν το χρείαζεται.


Παραδείγματα κακών κωδικών πρόσβασης: 12345663 (νούμερο), britney, ΑLEX (ονόματα), light (λέξη στο λεξικό) κτλ

5 πράγματα που ΠΡΕΠΕΙ να κάνετε όταν σκέφτεστε κωδικό πρόσβασης

* Ανακατέψτε κεφαλαία και μικρά,νούμερα και σύμβολα
* Χρησιμοποιήστε τουλάχιστον 8 χαρακτήρες. Αν το επιτρέπει το σύστημα τουλάχιστο 12
* Βάλτε λέξεις που δεν εμφανίζονται στο λεξίκο.
* Αλλάζετε τακτίκα τον κωδίκο σας. (αν γίνεται κάθε μήνα)
* Προσπαθήστε να εξασκηθείτε ώστε να μπορείτε να τον γράφετε γρήγορα, ωστέ να μη τον βλέπουν
οι αδίακριτες ματίες.


Παραδείγματα καλών κωδίκων πρόσβασης: gr3G%s&iO! , id8S#29/Rs , Qw^7dR5* κτλ

Συνεχιζουμε με την γενικη συνταξη εντολων στο επομενο μαθημα :)

Keywords: Introduction, Login Procedure, Password Tactics,Linux,Terminal

No comments: