Linux: Εισαγωγή στο Τερματικό
Είτε είστε νέος είτε χρησιμοποιείτε το Linux εδώ και καιρό καλό είναι κάποια στιγμή να αποκτήσετε μια πρώτη διεπαφή με το τερματικό/κονσόλα. Δεν είναι τίποτα άλλο απο ένα interface που μπορείτε να εκτελέσετε εντολές! Μπορεί να μην είναι τόσο φιλικό προς τον χρήστη αλλά η ευκολία και οι δυνατότητες που προσφέρει υπερτερούν απο τα μειονεκτήματα.
Για τον σκοπό του οδηγού θα χρειαστείτε μια απλή Ubuntu εγκατάσταση αν και για να το διαβάζετε αυτό μάλλον θα έχετε στήσει ήδη κάποιο Linux περιβάλλον. Οπότε ότι ειπωθούν παρακάτω σίγουρα δουλεύουν στα Debian based συστήματα όπως το Ubuntu 10.04 LTS. Είναι σημαντικό να καταλάβετε ότι μπορείτε να κάνετε με το τερματικό μπορείτε και με γραφικό περιβάλλον και ανάποδα. Βέβαια, άλλες φορές είναι πολύ πιο εύκολο με τον πρώτο τρόπο και άλλες φορές με τον δεύτερο.
- Πως ανοίγω το τερματικό
- Δομή του Linux συστήματος αρχείων
- Περιήγηση στο φακέλους του δίσκου μας
- Παράδειγμα βασισμένο σε απλό σενάριο
- Χρήσιμες εντολές
Πως ανοίγω το τερματικό
Με φθίνουσα σειρά προς το πιο γρήγορο τρόπο ανοίξτε ένα τερματικό και ετοιμαστείτε για τις πρώτες εντολές
- Applications >> Accessories >> Terminal
- Alt+F2 και πληκτρολογούμε “terminal”
- Alt+Ctrl+T
Δομή του Linux συστήματος αρχείων
Πριν γίνει η μίνι παρουσίαση για την περιήγηση θα κάνουμε ένα break να δούμε πως είναι δομημένο το σύστημά μας και κατεπέκτασή το λειτουργικό Linux.
Σε αντίθεση με τα windows υπάρχει μια ιεραρχία απο φακέλους που συνδέονται μεταξύ τους και σχηματίζουν ένα δέντρο αν θέλετε (με ανάπτυξη προς τα κάτω). Ο αρχικός φάκελος λέγεται “ρίζα”, συμβολίζεται με το ‘/’ και πάνω της στηρίζεται όλο το λειτουργικό και τα αρχεία μας. Σημαντική είναι η έννοια της “διαδρομής”, όπου δεν είναι τίποτα άλλο απο φακέλους σε μια συγκεκριμένη σειρά. Για παράδειγμα αν μας λένε John τότε η διαδρομή απο την ρίζα μέχρι τον φάκελό μας θα είναι
/usr/home/john
η κάτι παρόμοιο ανάλογα με την διανομή όπου ο φάκελος δεξιά του ‘/’ είναι παιδί του φακέλου πριν το ‘/’.
Προσοχή: Σε μια διαδρομή μπορεί να υπάρχουν παραπάνω απο ένα ‘/’ αλλά μόνο το πρώτο(αριστερό) δηλώνει την ρίζα. Τα υπόλοιπα δηλώνουν ποιος φάκελος είναι παιδί ποιου.
Κρατήστε την παρακάτω εικόνα στο background του μυαλού σας καθώς είναι απαραίτητο στοιχείο για την συνέχεια.
Είναι αυτονόητο ότι το πραγματικό “δέντρο” του συστήματος σας δεν είναι τόσο απλό αλλά σε γενικές γραμμές αυτή είναι η φιλοσοφία.
Περιήγηση στους φακέλους του δίσκου μας
Αφού ανοίξετε το τερματικό θα σας εμφανίσει μια κονσόλα όπου θα μπορείτε πλέον να δίνετε εντολές και να κάνετε διάφορα. Ο αντίστοιχος τρόπος απο το γραφικό περιβάλλον είναι χρησιμοποιώντας το ναυτίλο(nautilus) δηλαδή ανοίγοντας
Places >> Home Folder
Να θυμάστε ότι υπάρχουν δυο περιπτώσεις με πρώτη την περίπτωση που θέλουμε να κάνουμε κάτι στους φακέλους κοντά στην ρίζα δηλαδή σε διαδρομές του τύπου /usr, /etc /var/log (συνήθως 2-3 επίπεδα μακριά απο την ρίζα) όπου χρειαζόμαστε άδεια διαχειριστή για να αλλάξουμε κάτι. Με άλλα λόγια αν είμαστε απλοί users και προσπαθήσουμε να τροποποιήσουμε κάτι δεν θα μας αφήσει και εμφανίζει σχετικό μήνυμα. Το τι είναι και τι μπορεί να κάνει ένας διαχειριστής θα το δούμε αργότερα. Στην δεύτερη περίπτωση θέλουμε να διαχειριστούμε αρχεία και φακέλους μακριά απο την ρίζα (συνήθως 4+ επίπεδα μακριά) όπου τότε δεν υπάρχει κανένα πρόβλημα και μπορούμε να κάνουμε ότι θέλουμε. Όπως καταλαβαίνετε ο λόγος που ισχύει αυτό είναι καθαρά λόγος ασφάλειας ώστε να μην μπορεί ο καθένας να κάνει οτι θέλει.
Ως προεπιλογή όταν ανοίγει ένα τερματικό δεν βρισκόμαστε στην ρίζα αλλά στον φάκελο του λογαριασμού μας για προφανή λόγο με όνομα το όνομα του λογαριασμού μας. Το σημείο αυτό θα το ορίσουμε ως homefolder για λόγους ευκολίας.
Παράδειγμα βάση σεναρίου
Σενάριο: Θέλουμε να δημιουργήσουμε 2 αρχεία στο desktop να τα βάλουμε σε έναν φάκελο και έπειτα να συμπιέσουμε τον φάκελο αυτό
Υλοποίηση: Αρχικά πρέπει να μεταβούμε απο τον `homefolder` που είμαστε τώρα στο `Desktop` που έχει οριστεί ως επιφάνεια εργασίας. Αυτό μπορείτε να γίνει με την εντολή
cd Desktop
Τώρα ως τρέχων φάκελος είναι αυτός που θέλουμε και πρέπει να δημιουργήσουμε 2 αρχεία. Αυτό μπορεί να γίνει με πολλούς τρόπους αλλά θα χρησιμοποιήσουμε το gedit editor για λόγους ευκολίας. Οπότε εκτελούμε
gedit &
και θα μας ανοίξει έναν editor όπου γράφουμε κάτι και το αποθηκεύουμε ένα ένα όνομα πχ. file1.txt. Κάνουμε την ίδια διαδικασία για το δεύτερο αρχείο με όνομα file2.txt και είμαστε έτοιμοι. Για να δημιουργηθεί ένας φάκελος το μόνο που χρειαζόμαστε είναι να εκτελέσουμε
mkdir testfolder
Δείτε στην επιφάνεια εργασίας που έχει δημιουργηθεί ένας φάκελος
το επόμενο βήμα είναι να τοποθετήσουμε τα αρχεία μέσα στον φάκελο. Υπάρχουν 2 επιλογές, με αντιγραφή (cp) και με αποκοπή (mv). Ας χρησιμοποιήσουμε την αντιγραφή οπότε θα εκτελέσετε
cp file1.txt file2.txt testfolder
και θα δείτε οτι ο φάκελος κάτι περιέχει. Ας το επιβεβαιώσουμε! Κάνουμε cd στον φάκελο εκτελώντας
cd testfolder
και έπειτα εκτελούμε
ls
όπως θα είδατε μας εμφανίζει το περιεχόμενο του τρέχων φακέλου μόνο. Κάθε στιγμή έχετε μια συγκεκριμένη διαδρομή απο την ρίζα και για την δείτε εκτελείτε
pwd
Αφού έγινε αυτό πρέπει να πάμε πίσω και να συμπιέσουμε τα αρχεία. Οπότε για να πάμε μόνο ένα επίπεδο πίσω (στον πατέρα του testfolder δηλαδή στον Desktop) εκτελούμε
cd ..
τέλος για να συμπιέσουμε τον φάκελο που θα πρέπει να βλέπετε αν εκτελέσετε πάλι ls εκτελούμε
tar jcvf new_compressed_file testfolder
και θα πρέπει να έχει δημιουργηθεί στην επιφάνεια εργασίας ένα νέο συμπιεσμένο αρχείο.
Χρησιμοποιώντας το γραφικό περιβάλλον θα δημιουργούσαμε 2 αρχεία και έναν φάκελο με τις επιλογές στο μενού του δεξί κλικ και έπειτα, θα τοποθετούσαμε τα αρχεία στον φάκελο και με δεξί κλίκ πάνω στον φάκελο θα επιλέγαμε `Συμπίεση. Προφανώς για αυτή τη περίπτωση συμφέρει το γραφικό περιβάλλον!
Χρήσιμες εντολές
cd διαδρομή | αλλαγή τρέχων φακέλου |
mkdir ονομα φακέλου | δημιουργία φακέλου |
pwd | εμφάνιση διαδρομής απο την ρίζα |
ls | περιεχομένα του τρέχων φακέλου |
cp αρχείο1 αρχείο2 … διαδρομή/φάκελος προορισμού | αντιγραφή αρχείων |
tar jcvf όνομα συμπιεσμένου αρχείου αρχείο1 αρχείο2 … | συμπίεση αρχείων |
όνομα προγράμματος & | ανοιγμα προγραμμάτων στο παρασκήνιο |
Σε αυτό το σημείο να αναφέρω ότι αν ακόμη αισθάνεστε λίγο “απόμακρος” απο το τερματικό είναι απολύτως φυσιολογικό. Ελπίζω να φάνηκε χρήσιμο και να νιώθετε πιο άνετα με αυτό το εργαλείο. Σε κάθε περίπτωση μην διστάσετε να κάνετε την ερώτησή σας η να σχολιάσετε.
Κειμενογράφοι στο τερματικό
Το τερματικό έχει ενσωματομένους κάποιους βασικούς κειμενογράφους! Υπάρχουν διανομές Linux που όταν τις κάνετε εγκατάσταση δεν έχουν γραφικό περιβάλλον και τα παντα τα κέντε με το τερματικό. Μπορείτε να κάνετε τα πάντα όπως να δημιουργήσετε αρχεία φακέλους και πολλά άλλα. Βέβαια, δεν είναι ο καλύτερος τρόπος για καθημερική εργασία αλλά το σημαντικό είναι οτι υπάρχει η δυνατότητα. Όπως είχαμε αναφέρει στο πρώτο μέρος ένας κειμενογράφος είναι ο gedit. Είναι προεγκατεστημένος στο Ubuntu και αρκετά απλός και ελαφρύς. Όταν έχετε ανοιχτό το τερματικό μπορέιτε να μεταβείτε σε κειμενογράφο και αν κάνετε ότι κάνετε και με το gedit. Προφανώς δεν έχετε κάποιες ευκολίες που σας προσφέρει το gedit και τα παρόμοια προγράμματα αλλά είναι μοναδική λύση για editor μερικές φορές. Υπάρχουν πολλοί κειμενογράφοι όπως ο vi, vim, nano, emacs και άλλα. Παρακάτω θα ασχοληθούμε με το vi/vim που είναι το ίδιο απλά το vim είναι ο vi improved(vim).
Για να μεταβείτε στην κονσόλα του vim γράφετε στο τερματικό
vim
και θα σας βγάλει σε έναν νέο κέλυφος όπου μπορείτε να κάνετε ότι και με το gedit. Ας δημιουργήσουμε ένα νέο έγγραφο! Η γενική ιδεά πίσω απο το vim είναι οτι υπάρχουν δυο φάσεις. Η πρώτη είναι το escape και η δεύτερη το insert. Την πρώτη τη χρησιμοποιούμε για να μετακινηθουμε και αν σβήσουμε κάτι στο έγγραφο και την δευτερη για να εισάγουμε κάτι. Πως αλλάζουμε την κατάσταση μας? Με esc για να πάμε σε escape more και i για να πάμε σε insert mode. Μπορείτε να γράψετε μόνο στο insert mode οπότε όταν είστε έτοιμοι μεταβείτε σε escape mode και μετά Shift+:. Θα δείτε πως θα σας πάει στο κάτω μέρος της οθόνης. Εκεί μπορείτε να το αποθηκεύσετε, διαγράψετε, και να βγείτε χωρίς αποθήκευση. Για να αποθηκεύσεται το κείμενό σας πατάτε wq! και Enter! Θα σας βγάλει αυτόματα απο το κέλυφος του vi και θα επιστρέψετε στο τερματικό σας.
Προβολή αρχείων απο τερματικό
Είπαμε οτι μπορείτε να δείτε τα αρχεία του τρέχων φακέλου με την εντολή ls. Πως μπορείτε να δείτε το περιεχόμενα έχει ένα αρχείο χωρίς να το ανοίξετε? Η απάντηση είναι σε κάποιες εντολές ανάλογα με το τι ακριβώς θέλουμε να κάνουμε. Για παράδειγμα αν θέλουμε να δούμε γενικά το αρχείο εκτελούμε
cat <ονομα αρχείου>
αν θέλουμε μόνο κάποιες γραμμές στην αρχή θα εκτελέσουμε
head
ενώ για να δούμε το τέλος εκτελούμε αντοίστιχα
tail
Προφανώς οι παραπάνω εντολές δείχνουν μόνο τι υπάρχει (σαν δυνατότητα). Μπορείτε να δείτε τις 5 ή 10 πρώτες εντολές δίνοντας όρισμα στην head το 10. Δηλαδή εκτελείτε
head 10
Σε περίπτωση που εκτελέσετε cat για αν δείτε το αρχείο και το συγκεκριμένο είναι μεγάλο θα χαθείτε! Οπότε και εδώ υπάρχει λύση με μια επιπλέον εντολή. Η σωλήνωση συμβολίζεται με το `|` και είναι κάτι πολύ χρήσιμο όταν θέλουμε να συνδιάσουμε δύο τρείς και παραπάνω εντολές. Η λογική είναι να πάρουμε το αποτέλεσμα με το cat(όλο το αρχείο) και να το δώσουμε σαν είσοδο σε μια άλλη εντολή όπου θα το φιλτράρει και θα μας επιστρέψει τις πρώτες γραμμές, τις τελευταίες, μια συγκεκριμένη μόνο η ότι άλλο θέλουμε. Για να κάνουμε την σύνδεση αυτή χρησιμοποιούμε το `|` όπως είπαμε εκτελώντας
cat |
το παραπάνω δεν θα κάνει κάτι και θα χτυπήσει σφάλμα γιατί περιμένει κάτι μετά το `|`. Που θα το δώσει δηλαδή. Αυτό που θα γράψουμε μετά το pipe είναι το more. Με το more του λέμε να μας εμφανίσει το αποτέλεσμα αλλά λίγο λίγο όσο χωράει η οθόνη του τερματικού μας κάθε φορά. Συνεχίσυμε στο επόμενο κομμάτι με το space και βγαίνουμε με το q. Οπότε εδώ θα εκτελούσαμε
cat | more
Η ιστορία με το pipe δεν σταματάει εδώ καθώς μπορείς σε μια εντολή να το χρησιμοποιήσετε παραπάνω απο μια φορές. Μπορείτε λοιπόν να κάνετε εκπληκτικά πράγματα με το μηχανισμό αυτό.
Εγκατάσταση προγραμμάτων
Σε μια διανομή όπως είναι το ubuntu υπάρχουν πολλοί τρόποι για να κάνετε εγκατάσταση τα προγράμματα σας. Ένας απο αυτούς είναι το τερματικό. Δεν είναι καθόλου δύσκολο και θα το δείτε παρακάτω! Οπότε τι χρειαζόμαστε? Να γνωρίζουμε πως λέγετε το πακέτο-πρόγραμμά που θέλουμε να το εγκαταστήσουμε και μια εντολή. Εγκατάσταση κάποιου πακέτου γίνεται με την
sudo apt-get install
Μπορείτε να βάλετε παραπάνω απο ένα πακέτα χωρισμένα με ‘ ‘. Θα σας ζητήσει κωδικό τον οποίο και δίνετε και έπειτα ίσως ζητήσει επιβεβαίωση με (y/n). Οπότε πατάτε y και enter. Ας δούμε τώρα το άλλο κομμάτι που είναι το πακέτο. Πως μπορεί κάποιος χρήστης να γνωρίζει όλα τα πακέτα που υπάρχουν? Προφανώς δεν γίνεται και αν κάνετε και έναν χαρακτήρα λάθος θα σας πεί οτι δεν υπάρχει. Θα χρησιμοποιήσουμε ένα άλλο πρόγραμμα που λέγετε aptitude. Τι κάνει? Παίρνει ως είσοδο ένα string(συμβολοσειρά) και επιστρέφει τα πακέτα που υπάρχουν και περιέχουν την συμβολοσειρά αυτή. Για να το εγκαταστήσετε εκτελέστε
sudo apt-get install aptitude
Για παράδειγμα αν θέλετε τον chrome της google. Εκτελείτε
aptitude search chrome
και θα σας εμφανίζει κάποια αποτελέσματα. Σε αυτά πρέπει να είναι και ο google chrome! Αν δεν κάνω λάθος το πακέτο λέγεται “google-chrome” οπότε για να τον εγκαταστήσετε εκτελείτε:
sudo apt-get install google-chrome
Χρήσιμες εντολές
Απο το τερματικό μπορουμε να κάνουμε πολλά πράγματα. Για κάθε ένα δεν χρειάζετε να ξέρουμε και μια εντολή όμως! Υπάρχουν τα ορίσματα της εντολές (arguments) που τα δίνουμε μετά την εντολή για παράδειγμα ls -a και κάνει κάτι τελείως η λίγο διαφορετικό απο αυτό που θα έκανε η εντολή χωρίς τα ορίσματα. Για παράδειγμα το Ls -a εμφανίζει τα κρυφά αρχεία.
Πιστεύω η πιο σημαντική εντολή στο Linux είναι η man. Εκτελέστε man και θα σας βγάλει το manual της εντολής. Πως χρησιμοποιείται, τι ορίσματα παίρνει κτλ. Για παράδειγμα
man apt-get
Πηγή: linuxfan.gr
Copy - Dropbox style cloud με 20GB με το καλημέρα Linux: Εισαγωγή στο Τερματικό Ο Firefox 25 Beta 8 διαθέσιμος για download