ΜΑΘΕ ΤΑ ΠΑΝΤΑ ΓΙΑ ΤΟ
LINUX

Τι είναι το Linux
?
Το Linux είναι ένα ελεύθερο τύπου-Unix λειτουργικό σύστημα που
αρχικά δημιουργήθηκε από τον Linus Torvalds και στη συνέχεια
αναπτύχθηκε με τη βοήθεια προγραμματιστών από όλον τον κόσμο. To
Linux είναι μιά ανεξάρτητη POSIX υλοποίηση και στα χαρακτηριστικά
του συμπεριλαμβάνει πραγματικό multitasking, πραγματικό πολυχρηστικό
περιβάλλον, virtual memory, shared libraries, demand loading, TCP/IP
networking και πολλά άλλα χαρακτηριστικά που δικαιολογούν τον τίτλο
"τύπου-Unix". Είναι κατασκευασμένο υπό την GPL άδεια, δηλαδή ο
πηγαίος κώδικάς του είναι διαθέσιμος στον καθένα (opensource).
O Μr Linux
Ο Linus, ως φοιτητής στο Πανεπιστήμιο του Ελσίνκι στη Φιλανδία,
αρχικά δημιούργησε το Linux ως hobby. Είχε επικεντρωμένο το
ενδιαφέρον του στο Minix, ένα μικρό UNIX σύστημα, και έτσι αποφάσισε
να δημιουργήσει ένα σύστημα που θα είχε περισσότερες δυνατότητες από
το Minix. Ξεκίνησε την δημιουργία του Linux το 1991, ανακοινώνοντας
την έκδοση 0.02 και δουλεύοντας σταθερά έφτασε το 1994 στην έκδοση
1.0 του Linux Kernel. Το Linux μπορεί να χρησιμοποιηθεί για πολλούς
σκοπούς, όπως το networking, η ανάπτυξη προγραμμάτων, ακόμα και για
πλατφόρμα για απλούς χρήστες. Λόγω της φύσης και της ευελιξίας του,
το Linux έχει γίνει πολύ διάσημο παγκοσμίως και ένας μεγάλος αριθμός
προγραμματιστών έχει επικεντρώσει το ενδιαφέρον του πάνω σε αυτό. Η
μασκότ του Linux είναι ένας συμπαθέστατος χαμογελαστός πινγκουίνος,
ο οποίος επιλέχτηκε από τον ίδιον τον δημιουργό του.
Εισαγωγή
Το Linux στις μέρες μας αποτελεί μια από τις
σημαντικότερες και πιο ολοκληρωμένες λύσεις στον χώρο των
λειτουργικών συστημάτων, τόσο για τους απλούς χρήστες όσο και για
επαγγελματικούς και άλλους ερευνητικούς σκοπούς.Σε ελάχιστο χρονικό διάστημα έχει καταφέρει να κερδίσει
μεγάλο ποσοστό στην αγορά των servers και όχι μόνο. Όλο και
περισσότερες εταιρείες, ανάμεσα σ' αυτές και μεγάλοι οικονομικοί
κολοσσοί έχουν επενδύσει αρκετά πάνω σ' αυτό το φιλόδοξο λειτουργικό
σύστημα. Ο τομέας που μειονεκτούσε πάντα το Linux ήταν η φιλικότητα
του userinterface. Με την συνησφορά όμως εταιριών όπως η RedHat, η
Caldera και άλλες, αλλά και ανοιχτών projects όπως του GNOME το
Linux έχει γίνει πλέον πολύ εύχρηστο και φιλικό απέναντι στους
απλούς χρήστες.
Περισσότερα, για το, τι
είναι Linux
Το Linux είναι ένα δωρεάν, ανοικτού κώδικα λειτουργικό σύστημα
παρόμοιο με άλλα UNIX συστήματα, το οποίο είναι διαθέσιμο για τις
περισσότερες hardware πλατφόρμες. Προσφέρει εκτεταμένη, ενσωματωμένη
στον πυρήνα του, δικτυακή υποστήριξη, έχει πολυάριθμα χαρακτηριστικά
για συνεργασία με άλλα συστήματα σε περιβάλλον δικτύου, και ένα
μεγάλο αριθμό από ευγενείς εφαρμογές.
Περισσότερα, για την
προέλευση του Linux
Το Linux (βασικά ο πυρήνας του)
δημιουργήθηκε το 1991 από, τον τότε Φιλανδό φοιτητή, LinusTorvalds,
ως μια εναλακτική πρόταση στο Minix. (ένα UNIXOειδές λειτουργικό).
Είναι μια ελεύθερη υλοποίηση του UNIX (όπως περίπου και το BSD) και
προσπαθεί να ακολουθήσει το POSIXstandard. Τότε ακόμα στην έκδοση
0.02 το Linux έτρεχε μόνο σε υπολογιστές με επεξεργαστή
αρχιτεκτονικής 386, δεν είχε υποστήριξη για οδηγό δισκέτας ενώ
μαστίζονταν από αρκετά μεγάλα bugs. Βασικό ρόλο όμως στην ανάπτυξή του έπαιξε ο
οργανισμός OpenSourceInitiative (http://www.opensource.org/) και η
άδεια χρήσης GNU General Public License, με την οποία διανέμεται.
Σύμφωνα λοιπόν μ' αυτήν ο κώδικάς του είναι διαθέσιμος σε όλους,
δίχως να αποκλείεται και η εμπορική εκμετάλλευση του εκάστοτε
προγράμματος. Έτσι ο καθένας μπορεί να εκτελέσει, να αντιγράψει, να
διανείμει, να μελετήσει, να αλλάξει ή και να βελτιώσει το λογισμικό,
χωρίς βέβαια να καταπατά τα πνευματικά δικαιώματα του κατασκευαστή
του.
Για περισσότερες πληροφορίες
σχετικά με την άδεια GNUGPL θα βρείτε στο Site της GNU (http://www.gnu.org/)
Νομική Κατάσταση του
Linux
Παρόλο που όπως είπαμε το Linux δίνεται πλήρες σε
μορφή πηγαίου κώδικα, είναι copyrighted λογισμικό, κι όχι
publicdomain. Είναι, όμως, ελεύθερα διαθέσιμο υπό τους όρους της
GNUGeneralPublicLicense, που μερικές φορές αποκαλείται και
"copyleft". Τα προγράμματα που τρέχουν κάτω από το Linux έχουν την
δική του άδεια χρήσης, παρόλο που πολλά από αυτά διανέμονται κι αυτά
με την GPL, όπως και το ίδιο το Linux. Τα X χρησιμοποιούν την άδεια
του MIT για τα X, και μερικά από τα προγράμματα διανέμονται με τους
όρους του BSDcopyright. Ομοίως και ο πυρήνας του παραθυρικού
περιβάλλοντος KDE προστατεύεται από πνευματικά δικαιώματα. Σε
οποιαδήποτε περίπτωση, πάντως, όλο το λογισμικό στο FTPsite είναι
ελεύθερα διαθέσιμο (αλλιώς δεν θα έπρεπε αν είναι εκεί).
Ο πιγκουίνος του
Linux
Το σήμα του Linux (μερικοί υποστηρίζουν ότι είναι
μασκότ και όχι σήμα) είναι ως γνωστόν ένας πιγκουΐνος. Ο οποίος
σχεδιάστηκε από τον LarryEwing έπειτα από παράκληση του Linus
Torvalds.Εξηγεί ο ίδιος ο Lιnus "Πάντα είχα μια συμπάθεια στους
πιγκουΐνους.. Όταν ήμουν στην Καμπέρα, μερικά χρόνια πριν, είχα πάει
στο ζωολογικό κήπο με τον Andrew Tridgell (του Samba Project). Εκεί
με δάγκωσε ένας κάπως εξαγριωμένος πιγκουΐνος και μου μετέδωσε την
ασθένεια penguinitis. Η συγκεκριμένη ασθένεια προκαλεί πρόσκαιρη
αϋπνία.. Για ένα βράδυ ήμουν ξύπνιος και σκεφτόμουν συνέχεια τους
πιγκουΐνος και την αγάπη που τρέφω γι΄ αυτούς . Έτσι όταν έφτασε η
ώρα να επιλέξω μία μασκότ για το Linux, το πρώτο που ήρθε στο μυαλό
μου ήταν η εικόνα ενός πιγκουΐνου. Κατά μία άλλη άποψη, όλα τα άλλα
λογότυπα ήταν βαρετά. Δεν έψαχνα για ένα καθωσπρέπει εταιρικό
σύμβολο, Ήθελα κάτι άλλο, ποιο συμπαθητικό. Ένας ευτραφής
πιγκουΐνος, καθισμένος νωχελικά ύστερα από ένα πλούσιο γεύμα , ήταν
ακριβώς αυτό που έψαχνα.” Αναλυτικότερη εκδοχή θα βρείτε εδώ
(http://www.sjbaker.org/tux). Συλλογή από φωτογραφίες Linux θα
βρείτε εδώ (http://www.babytux.org/gallery_all.php). Και στην
τεράστια σε όγκο Gallery του LWN (http://lwn.net/Gallery/).
http://petros.freepage.gr/linux_files/bath.jpg
Τεχνικά
χαρακτηριστικά
Συμβατότητα με την
οικογένεια Unix
Το να είναι ένα λειτουργικό συμβατό ή να
ανήκει στην οικογένεια UNIX, θεωρείται πλεονέκτημα αλλά και
μειονέκτημα. Το UNIX έχει τις ρίζες του στη δεκαετία του '70,
σχεδιάστηκε για να καλύψει το κενό που υπήρχε τότε στα multitasking
& multiuser συστήματα. Οι ιδέες που εφαρμόστηκαν προέκυψαν
ύστερα από αρκετή ανάλυση και δοκιμές με τα μέχρι τότε δεδομένα. Στη
συνέχεια βέβαια άρχισε ο εμπλουτισμός και η περαιτέρω ανάπτυξη του
λειτουργικού. Έτσι το Linux κουβαλά μαζί του μια βαριά κληρονομιά 40
ετών ανάπτυξης! -Από τα βασικά
λοιπόν θετικά χαρακτηριστικά αυτής της “κληρονομιάς” είναι το
multitasking, η συμμετρική παράλληλη επεξεργασία, η σταθερότητα, η
ασφάλεια, η δικτυακή υποστήριξη, η πλήρης παραμετροποίησή του στις
εκάστοτε ανάγκες και άλλα πολλά που βρίσκονται ενσωματωμένα στον
πυρήνα του
συστήματος.
-Στα αρνητικά χαρακτηριστικά μπορούμε να
συγκαταλέξουμε την μειωμένη φιλικότητα και η πολυπλοκότητα της
εγκατάστασης και ρύθμισης του συστήματος για προς τους απλούς και
άπειρους χρήστες, αν και τελευταίως οι εταιρίες που διανέμουν το
λειτουργικό φροντίζουν να κάνουν την εγκατάσταση και ρύθμιση του
συστήματος όσο πιο απλή γίνεται. Η πολυπλοκότητα αυτή βέβαια είναι
αναμενόμενη αφού όπως είπαμε το σύστημα είναι πλήρως
παραμετροποιήσιμο.
Πολλαπλές HardWare
πλατφόρμες
Η ελεύθερη διανομή του κώδικα του Linux συντέλεσε
στην εξάπλωση του λειτουργικού και πέρα από την πλατφόρμα x86 της
Intel (http://www.intel.com/) και συμβατούς όπως AMD
(http://www.amd.com) κ.α.. Έτσι το Linux μπορεί να τρέξει σε
σταθμούς εργασίας της SUN με αρχιτεκτονική SPARC
(http://www.sun.com/), σε PowerPC, Alpha της DEC, IBMS/390
Mainframe, MIPS, ARM ακόμα και σε Amiga, Atari αλλά και σε embedded
συστήματα όπως παιχνιδομηχανές, palmtops & κινητά
τηλέφωνα.
-Να αναφέρουμε επίσης ότι το Linux υποστηρίζει
συστήματα με πολλαπλούς επεξεργαστές αξιοποιώντας, την ενσωματωμένη
στον πυρήνα του, δυνατότητα συμμετρικής πολυεπεξεργασίας.
Υποστίριξη
δικτύου
Ως γνήσιος απόγονος του UNIX, το Linux υποστηρίζει
τα δίκτυα μέσα από τον πυρήνα του. Γι' αυτό άλλωστε αποτελεί μια
πολύ καλή λύση για δίκτυα υψηλών απαιτήσεων. Στο UNIX εν γένει, το
TCP/IP, το οποίο είναι φυσικά το πρωτόκολλο που χρησιμοποιείται στο
Internet, είναι εγκατεστημένο από τα μέσα του '70, σε εποχές ARPANET
και BSD. Ένα μεγάλο κομμάτι του networklayer στο Linux οφείλεται σε
ένα και μοναδικό άτομο: τον Donald Becker, ερευνητή της NASA, ο
οποίος έγραψε έναν γενικό driver για τις κάρτες δικτύου, καθώς
επίσης και κομμάτια του TCP/IP protocol stack και έκανε την
ενσωμάτωσή του με τον πυρήνα του συστήματος. Τα πρωτόκολλα που
υποστηρίζει πλέον το Linux είναι τα εξής: TCP, IPv4, IPv6, AX.25,
X.25, IPX, DDP (Appletalk), NetBEUI, Netrom, και άλλα.
Το σύστημα αρχείων του
Linux
Το σύστημα αρχείων αναφέρεται στον τρόπο με τον
οποίο ο υπολογιστής αποθηκεύει αρχεία στο δίσκο. Το πιο απλό,
δημοφιλές και 'συμβατό' σύστημα αρχείων είναι το FAT
(FileAllocationTable) που έχει τις ρίζες του στην εποχή του DOS. Το
Linux, αν και υποστηρίζει το FAT, χρησιμοποιεί ένα δικό του
(εγγενές) σύστημα αρχείων που ονομάζεται
ext2.
-Το ext2 αντέχει στον κατακερματισμό, είναι
αρκετά ευέλικτο και χειρίζεται αρκετά καλά τους μεγάλους δίσκους.
Όταν το σύστημα δεν κλείσει σωστά τότε το λειτουργικό ελέγχει το
σύστημα αρχείων για τυχών βλάβες τις οποίες επισκευάζει κατά την
εκκίνηση. Στα ονόματα των αρχείων και φακέλων ο μόνος περιορισμός
που υπάρχει στο ποιους χαρακτήρες μπορεί να περιέχει ένα όνομα είναι
ότι δεν μπορεί να περιέχει τον χαρακτήρα ASCII NUL (0) (αντίθετα με
το VFAT, π.χ. που απαγορεύει τους χαρακτήρες ``*?<>|":/\\+=,;
[]'').
-Το αρνητικό με αυτό το σύστημα βρίσκεται στην
'συμβατότητά' του με τα άλλα λειτουργικά συστήματα. Έτσι για να δει
κάποιος τα περιεχόμενα του δίσκου ενός συστήματος Linux, που
βρίσκεται στο δίκτυο, θα πρέπει να εγκαταστήσει έναν ειδικό
εξυπηρετητή, όπως τον SambaServer, που μπορείτε να προμηθευτείτε
δωρεάν από το Site (http://www.samba.org/).
-Ικανότητα χειρισμού μεγάλης ποσότητας
πληροφοριών
Το Linux από την έκδοση 2.4 (του πυρήνα του)
υποστηρίζει τον χειρισμό μέχρι και 64GB φυσικής μνήμης, καθιστώντας
το ως ένα ιδανικό λειτουργικό για μεγάλους σταθμούς εργασίας. Επίσης
σε αντίθεση με άλλα λειτουργικά, στο Linux δεν υπάρχει περιορισμός
στο μέγεθος των αρχείων, ούτε και στο μέγεθος της εικονικής
μνήμης.
-Άλλα χαρακτηριστικά
· Multiprocessor: Υπάρχει ήδη υποστήριξη SMP στις
Intel και SPARC πλατφόρμες (με την δουλειά να έχει ξεκινήσει και σε
άλλες πλατφόρμες), και το Linux χρησιμοποιείται σε πολλές MP
εφαρμογές, συμπεριλαμβανομένων και των συστημάτων Beowulf (δείτε το
http://cesdis.gsfc.nasa.gov/linux-web/beowulf/beowulf.html ) και
στον Fujitsu AP1000+ υπερυπολογιστή που βασίζεται στην SPARC
αρχιτεκτονική.
· Τρέχει σε προστατευμένη κατάσταση (protected mode)
στον 386 και τους νεώτερους Intel επεξεργαστές.
· Έχει προστασία μνήμης μεταξύ των διεργασιών, έτσι
ώστε ένα πρόγραμμα να μην μπορεί να "κρεμάσει" όλο το
σύστημα.
· Φορτώνει όταν υπάρχει ανάγκη τα εκτελέσιμα: το
Linux διαβάζει από το δίσκο μόνο εκείνα τα μέρη ενός προγράμματος
που πραγματικά χρησιμοποιούνται.
· Κοινές copy-on-write σελίδες μεταξύ των
εκτελέσιμων. Αυτό σημαίνει ότι πολλές διεργασίες μπορούν να
χρησιμοποιούν τις ίδιες περιοχές μνήμης για να τρέχουν. Όταν κάποια
προσπαθήσει να γράψει στην μνήμη, εκείνη η σελίδα (ένα κομμάτι 4KB
της μνήμης) αντιγράφεται κάπου αλλού. Το copy-on-write έχει δύο
πλεονεκτήματα: αυξάνει την ταχύτητα και μειώνει την μνήμη που
απαιτείται.
· Ιδεατή μνήμη χρησιμοποιώντας σελιδοποίηση (δεν
κάνει swapping ολόκληρες διεργασίες) και μέρος του δίσκου: σε ένα
ξεχωριστό partition ή ένα αρχείο στο σύστημα αρχείων, ή και τα δύο,
με την δυνατότητα για προσθήκη περισσότερων swapping περιοχών σε
runtime χρόνο (ναι, ακόμα λέγονται swapping περιοχές). Μια
ενοποιημένη πηγή μνήμης για προγράμματα χρήστη και cache δίσκων,
έτσι ώστε όλη η ελεύθερη μνήμη να μπορεί να χρησιμοποιηθεί για
caching, και η cache να μπορεί να μειωθεί όταν τρέχουν μεγάλα
προγράμματα.
· Δυναμικά φορτώσιμες διαμοιρασμένες βιβλιοθήκες
(dynamically linked shared libraries) (αλλιώς γνωστές και ως DLL's).
Βέβαια, υποστηρίζει και στατικές βιβλιοθήκες.
· Δημιουργεί core dumps για εκ των υστέρων ανάλυση,
δίνοντας την δυνατότητα για χρήση ενός debugger σε ένα πρόγραμμα όχι
μόνο όταν τρέχει, αλλά κι αφού έχει κολλήσει.
· Συμβατό σε ένα μεγάλο ποσοστό με το POSIX, το
System V, και το BSD σε επίπεδο πηγαίου κώδικα.
· Μέσω ενός iBCS2-συμβατού τμήματος εξομοίωσης,
συμβατό με SCO, SVR3, και SVR4 σε δυαδικό (εκτελέσιμο)
επίπεδο.
· Έλεγχος εργασιών συμβατός με POSIX.
· Εξομοίωση της 387 FPU μέσα στο ίδιο το kernel έτσι
ώστε τα προγράμματα δεν χρειάζεται να κάνουν την δική τους
εξομοίωση. Κάθε υπολογιστής που τρέχει το Linux μοιάζει να έχει ένα
μαθηματικό συνεπεξεργαστή. Βέβαια, αν ο υπολογιστής σας έχει ήδη μια
FPU, θα χρησιμοποιηθεί αυτή αντί για την εξομοίωση, και μπορείτε να
χτίσετε τον πυρήνα σας χωρίς αυτή την εξομοίωση, για να κερδίσετε
λίγη μνήμη.
· Υποστήριξη για πολλά εθνικά και προσαρμόσιμα
πληκτρολόγια είναι αρκετά εύκολο να προστεθούν καινούρια δυναμικά
όταν υπάρξει ανάγκη.
Θέματα
Υλικού (Hardware)
Το υλικό που απαιτείται για να τρέξει το Linux είναι
ελάχιστο αν ελάχιστες είναι κι οι δικές σας απαιτήσεις από ένα Linux
σύστημα. Παρόλ' αυτά το υλικό του συστήματός σας μπορεί να
προσαρμόζεται στις τρέχουσες ανάγκες σας. Και το Linux μπορεί να
προσαρμόζεται στις αλλαγές αυτές!
-Ελάχιστες Απαιτήσεις
Το ακόλουθο είναι πιθανόν το μινιμαλιστικό setup στο
οποίο μπορεί κάποιος να χρησιμοποιήσει το Linux: 386SX/16, 1 MB RAM,
1.44 MB ή 1.2 MB floppy, οποιαδήποτε υποστηριζόμενη κάρτα οθόνης (+
πληκτρολόγια, οθόνες, κοκ. βέβαια). Αυτό θα σας δώσει την δυνατότητα
να ξεκινήσετε και να δοκιμάσετε αν δουλεύει το σύστημα, αλλά δεν θα
μπορείτε να κάνετε οτιδήποτε χρήσιμο. Δείτε το
http://rsphy1.anu.edu.au/~gpg109/mem.html για άλλα "μικρά" Linux
configurations.
-Για να κάνετε οτιδήποτε, θα χρειαστείτε και
κάποιο χώρο στο σκληρό δίσκο, 5 ως 10 MB θα έπρεπε να είναι αρκετά
για ένα πολύ συρρικνωμένο setup (μόνο με τα απολύτως απαραίτητα
προγράμματα κι ίσως μια ή δυο μικρές εφαρμογές εγκατεστημένες, όπως,
για παράδειγμα ένα πρόγραμμα τερματικού [minicom,term,κτλ.]). Αυτό
είναι ακόμη πραγματικά πολύ περιορισμένο και καθόλου άνετο σαν
εγκατάσταση, και δεν έχει αρκετό χώρο για να κάνετε σχεδόν τίποτα,
εκτός κι αν η χρήση που θα κάνετε έχει πολύ περιορισμένες ανάγκες.
Δεν συνιστάται γενικά για οτιδήποτε άλλο, εκτός από δοκιμές για το
αν τα πράγματα δουλεύουν, και βέβαια για να μπορούμε να
υπερηφανευόμαστε πως το Linux έχει φοβερά μικρές
απαιτήσεις.
-Χρησιμοποιήσιμα Συστήματα
Αν πρόκειται να τρέξετε υπολογιστικά βαριά
προγράμματα, όπως τον gcc, τα Χ, ή το TeX, μάλλον θα χρειαστείτε ένα
πιο γρήγορο επεξεργαστή από έναν 386SX/16, αλλά ακόμη κι αυτός θα
ήταν αρκετός αν έχετε την απαιτούμενη
υπομονή.
-Στην πραγματικότητα, θα χρειαστείτε τουλάχιστον
4 MB κύριας μνήμης (RAM) αν δεν χρησιμοποιείτε τα X Windows, και 8
MB αν τα χρησιμοποιείτε. Βέβαια αν στα X θέλετε να τρέχετε τον
εντυπωσιακό Englihment θα χρειαστείτε σίγουρα έναν καλό επιταχυντή
3Δ γραφικών. Το Linux θα δουλέψει ακόμη και με μικρότερα μεγέθη
μνήμης (θα έπρεπε να δουλεύει ακόμη και με 2 MB), αλλά θα
χρησιμοποιεί ιδεατή μνήμη (χρησιμοποιώντας τον σκληρό δίσκο σαν αργή
μνήμη) κι αυτό θα είναι πολύ αργό, σχεδόν αδύνατο να χρησιμοποιηθεί.
Αν χρησιμοποιείτε πολλά προγράμματα ταυτόχρονα, 16 MB θα μειώσουν το
swapping κατά πολύ. Αν θέλετε να αποφύγετε το swapping ακόμη και
κάτω από αρκετά υπολογίσιμο load, 64 MB είναι μάλλον αυτό που
χρειάζεστε. Βέβαια, αν τρέχετε εφαρμογές που πραγματικά �πεινάνε�
για μνήμη, θα χρειαστείτε ακόμη πιο πολλή
μνήμη.
-Γενικά, μια μεγάλη διαφορά του Linux από το DOS
είναι ότι στο Linux η προσθήκη μνήμης δείχνει πολύ μεγαλύτερη
διαφορά, παρόλο που στο DOS η έξτρα μνήμη δεν μοιάζει να αλλάζει και
πολλά πράγματα. Αυτό έχει, εν μέρει, σχέση και με το αστείο όριο των
640 KB του DOS, το οποίο στο Linux απλά δεν
υπάρχει.
-Το ποσό του σκληρού δίσκου που θα χρειαστείτε
εξαρτάται από το λογισμικό που θέλετε να εγκαταστήσετε. Το κανονικό
βασικό σετ από Unix εργαλεία, shells και προγράμματα διαχείρισης του
συστήματος χωράει σχετικά άνετα σε λιγότερο από 10MB με λίγο χώρο
στην άκρη για αρχεία των χρηστών. Για ένα πιο ολοκληρωμένο σύστημα,
πάρτε την Red Hat, την Debian, την Slackware, ή οποιαδήποτε άλλη
διανομή, και υπολογίστε ότι θα χρειαστείτε από 500 ως 3000 MB,
ανάλογα με το τι θα διαλέξετε να εγκαταστήσετε και ποια διανομή θα
πάρετε. Προσθέστε σε αυτό το χώρο που θέλετε να δεσμεύσετε για
αρχεία των χρηστών. http://petros.freepage.gr/linux_files/cpu.gif
Ο πυρήνας του
Linux
Ο πυρήνας (kernel) είναι το τμήμα του λειτουργικού
συστήματος που χειρίζεται τις πιο βασικές λειτουργίες και ελέγχει
την αλληλεπίδραση με τον υπολογιστή. Ο πυρήνας, ουσιαστικά, είναι
απλώς ένα πρόγραμμα κατασκευασμένο έτσι ώστε να ελέγχετε τον
υπολογιστή σας χωρίς να χρειάζεται να γνωρίζετε κάθε μικρή
λεπτομέρεια για την εσωτερική του
λειτουργία.
-Ο πυρήνας του Linux είναι “αρθρωτός”. Αυτό
σημαίνει ότι, όταν το πρόγραμμα του πυρήνα δημιουργείται μπορεί να
παραμετροποιηθεί έτσι ώστε να περιλαμβάνει μερικά χαρακτηριστικά και
να μην περιλαμβάνει άλλα. Έτσι ο πυρήνας μπορεί να είναι κομμένος
και ραμμένος, κάθε φορά, στα μέτρα του εκάστοτε συστήματος. Αυτό
είναι πάρα πολύ θετικό διότι, αφαιρώντας τα άχρηστα χαρακτηριστικά
από τον πυρήνα, δημιουργείται ένας μικρός, γρήγορος και σταθερός
πυρήνας και εξοικονομούνται αρκετοί
πόροι.
-Για παράδειγμα: Για έναν υπολογιστή που δεν
διαθέτει SCSI περιφερειακά είναι άχρηστο να τα υποστηρίζει ο πυρήνας
του λειτουργικού του. Ενώ σε ένα απομονωμένο σύστημα δεν του
χρειάζεται να έχει υποστήριξη δικτυακών
περιφερειακών.
-Στην ονομασία των πυρήνων ακολουθείτε μια
συγκεκριμένη ονοματολογία της μορφής x.y.z. Το x δηλώνει την major
έκδοση, το y τη minor έκδοση και το z την revision έκδοση. Από αυτές
τις τρεις η minor έχει μεγάλη σημασία για τον εξής λόγο: Οι πυρήνες
του Linux χωρίζονται σε δύο κατηγορίες: τους σταθερούς και τους
ασταθείς. Οι οποίοι ξεχωρίζουν από τον αριθμό της major έκδοσης του
πυρήνα. Οι σταθεροί έχουν ζυγό αριθμό major. Π.χ.: x.2.z, x.0.z
,x.8.z ενώ οι ασταθείς μονό αριθμό. Π.χ.: x.1.z, x.9.z ( Βασικά η
ασταθείς έκδοση είναι μια έκδοση με πειραματικές προσθήκες). Τα
patches αντιστοιχούν στο z του σχήματος
x.y.z. -Τον "πηγαίο
κώδικα" του πυρήνα ή και κομμάτια του (patches) μπορείτε να
προμηθευτείτε από το site http://www.kernel.org/
-Εάν έχετε μια σχετικά πρόσφατη έκδοση του
Linux, με τον πυρήνα 2.2.χ ή 2.4.χ μπορείτε να εκμεταλλευθείτε τις
δυνατότητες για το software στήσιμο συστοιχίας RAID, που υποστηρίζει
ο kernel.
Τι είναι το
RAID;
RAID (Redundant Array of Independent Disk) σημαίνει
Πλεονάζουσα Παράταξη Ανεξάρτητων Δίσκων και αναφέρεται στον τρόπο
οργάνωσης και σύνδεσης μιας ομάδας δίσκων με σκοπό την αύξηση της
ταχύτητας προσπέλασης και εγγραφής αλλά και την προστασία των
δεδομένων ενός συστήματος.
-Τρόποι κατασκευής
Υπάρχουν δύο τρόποι κατασκευής συστοιχιών
RAID.
Με την χρήση υλικού ή λογισμικού.
Οι δύο τρόποι έχουν πλεονεκτήματα και μειονεκτήματα
ο ένας απέναντι στον άλλο.
Η χρήση υλικού είναι πολύ πιο ακριβή, αλλά έχει το
πλεονέκτημα της σταθερότητας και της προσθαφαίρεσης των δίσκων την
ώρα λειτουργία του συστήματος. Όπως γίνεται φανερό η hardware λύση
δεν απευθύνεται στον απλό χρήστη. Αντίθετα η χρήση λογισμικού αν και
δεν υποστηρίζει την παραπάνω “προχωρημένη” λειτουργία δίνει στον
χρήστη το δικαίωμα να κατασκευάσει μια συστοιχία με IDE & SCSI
δίσκους, κάτι που δεν γίνεται μέσω hardware.
Τρόποι χρήσης και σύνδεσης
Υπάρχουν διάφοροι τρόποι χρήσης και σύνδεσης των
συστοιχιών RAID, οι οποίοι καλούνται επίπεδα.
Τα επίπεδα που υποστηρίζει ο πυρήνας 2.2 + του Linux
είναι τα εξής:
RAID 0
Σε αυτό η διαμεταγωγή των δεδομένων στους δίσκους
της συστοιχίας γίνεται παράλληλα.
Και έτσι υπάρχει αύξησης της ταχύτητας εγγραφής και
προσπέλασης των δεδομένων.
Για να γίνει καλύτερα αντιληπτό: αν πρέπει να
εγγραφεί ένα αρχείο μεγέθους 100 MB και υπάρχουν 4 δίσκοι θα
εγγραφούν 25 MB στο καθένα.
Το πρόβλημα με αυτού του είδους τι συστοιχίες είναι
ότι αν πάθει κάτι ένας από τους δίσκους καταστρέφεται όλη η
συστοιχία με αποτέλεσμα την απώλεια των δεδομένων μας.
RAID 1
Εδώ υλοποιείται αυτό που ονομάζεται (disk
mirroring). Δηλαδή δημιουργείται κατά την λειτουργία του συστήματος
ακριβές αντίγραφο ενός δίσκου σε κάποιον (ή κάποιους) άλλους. Όπως
γίνεται φανερό αυτό το επίπεδο παρέχει υψηλή ασφάλεια των δεδομένων
μας με αντίτιμο την ελάττωση της ταχύτητας και του χώρου του
συστήματος.
RAID 4
Για την υλοποίηση αυτού του τύπου χρειάζονται 3 και
πλέον δίσκοι.
Ο ένα από τους δίσκους χρησιμοποιείται για να
κρατούνται σ' αυτόν, όχι ακριβή αντίγραφα των άλλων, αλλά
πληροφορίες για την δομής τους. Στους υπόλοιπου δίσκους τα δεδομένα
διαμοιράζονται όπως ακριβώς στο RAID 0.
Το πρόβλημα εδώ είναι ότι η προστασία των δεδομένων
λειτουργεί όταν “χτυπήσει” ένας από τους δίσκους, αν όμως υποστούν
βλάβη παραπάνω η συστοιχία καταρρέει. Επίσης εδώ υπάρχει μειωμένη
απόδοση σε σχέση με το RAID 0 διότι όποτε γίνεται εγγραφή στους
δίσκους πρέπει να κρατούνται καινούριες πληροφορίες της δομής τους
από αυτόν που έχει αναλάβει αυτόν τον ρόλο.
RAID 5
Μοιάζει πολύ με το RAID 4 με τη διαφορά ότι τώρα οι
πληροφορίες της δομής των δίσκων διαμοιράζονται σε όλους τους
δίσκους έτσι υπάρχει αυξημένη ασφάλεια ,όχι όμως όπως του επιπέδου
RAID 1.
RAID 1,0
Αυτό το επίπεδο αποτελεί ουσιαστικά το συνδυασμό των
RAID 0 & RAID 1 με αποτέλεσμα να έχουμε την αυξημένη ασφάλεια
του RAID 1 σε συνδυασμό με τις μεγάλες ταχύτητες διαμεταγωγή του
RAID 0. Το μόνο μειονέκτημα του είναι το υψηλά κόστος του αφού για
το στήσιμό του απαιτείται ο διπλάσιος αριθμός δίσκων από το επίπεδο
RAID 0. Γίνεται έτσι φανερό ότι η λύση αυτή αν και ουσιαστική τόσο
από πλευράς ταχύτητας όσο και από πλευράς ασφάλειας λόγο του κόστους
της ενδείκνυται για επιχειρηματικούς σκοπούς.
Ποιο επίπεδο είναι το καλύτερο;
Όπως καταλαβαίνει κανείς από τα παραπάνω, δεν
μπορούμε να πούμε ότι το ένα επίπεδο είναι καλύτερο από το άλλο αλλά
το κάθε ένα εξυπηρετεί διαφορετικούς σκοπούς.
Χρήστες και ομάδες
Στο Linux κάθε χρήστης ενός υπολογιστή έχει έναν
διαφορετικό λογαριασμό με τον οποίο έχει πρόσβαση στον υπολογιστή.
Επίσης υπάρχουν και μερικοί λογαριασμοί ειδικού τύπου όπως ο
λογαριασμός root ο οποίος αντιστοιχεί στον λογαριασμό του
διαχειριστή του συστήματος και θα πρέπει να χρησιμοποιείται μονάχα
σε ειδικές περιπτώσεις.
¤ Root: Όπως είπαμε για τον διαχειριστή του
συστήματος υπάρχει και ο λογαριασμός root ή SuperUser αν προτιμάται.
Μέσω αυτού έχει τον απόλυτο έλεγχο πάνω στο σύστημα, μπορεί να
προσθέτει και να αφαιρεί χρήστες, να εγκαθιστά προγράμματα, να
αλλάζει τις ρυθμίσεις του συστήματος και γενικά να εκτελεί διάφορες
ειδικές εργασίες. Ωστόσο δεν θα πρέπει να γίνεται κατάχρηση αυτού
του λογαριασμού καθώς το σύστημα δεν μπορεί να αποτρέψει τον
διαχειριστή να κάνει κάποιο σφάλμα που μπορεί να έχει καταστροφικές
συνέπειες για όλο το σύστημα.
¤ Useraccounts: Ο κάθε χρήστης, ακόμα και ο
διαχειριστής, έχει έναν προσωπικό λογαριασμό μέσο του οποίου έχει
πρόσβαση στο σύστημα και να εκτελεί τα διάφορα προγράμματα. Κάθε
χρήστης έχει επίσης έναν προσωπικό φάκελο που βρίσκεται στον
κατάλογο /home και όπου μπορεί να αποθηκεύει τα προσωπικά του
αρχεία.
¤ Groups: Οι ομάδες χρηστών χρησιμοποιούνται για να
μπορούν να καθοριστούν δικαιώματα πρόσβασης στα διάφορα αρχεία. Για
παράδειγμα αν ένας χρήστης είναι μέλος της ομάδας Α, τότε μονάχα τα
μέλη αυτής της ομάδας μπορούν να δουν τα αρχεία που έχει στον home
κατάλογό του. Αν βέβαια εκείνος δεν τα έχει ασφαλίσει
περισσότερο.

Οι φάκελοι του
Linux
Στο Linux κάθε κατάλογος που υπάρχει εξ' ορισμού
έχει διαφορετική σημασία. Παρακάτω υπάρχει μια λίστα με την
περιγραφή αυτών των φακέλων. Ο βασικός κατάλογος (ρίζα) του
συστήματος είναι ο / (που ονομάζεται root), και όλοι οι υπόλοιποι
στεγάζονται και ονοματίζονται κάτω απ' αυτόν.
/home
Ο κατάλογος αυτός περιέχει υποκαταλόγους που
φυλάσσονται τα δεδομένα κάθε χρήστη. Τα περιεχόμενα του κάθε
υποκαταλόγου είναι προσβάσιμα από τον εκάστοτε User & τον
SuperUser.
/root
Ο home φάκελος του SuperUser.
/usr
Εδώ φυλλάσονται τα προγράμματα που είναι
εγκατεστημένα στο σύστημα. Η τροποποίηση των περιεχομένων του
επιτρέπεται μονάχα στον SuperUser.
/usr/src
Όλος ο πηγαίος κώδικας του Linux βρίσκεται σ' αυτόν
τον κατάλογο.
/usr/local
Η εγκτάσταση των προγραμμάτων γίνεται από τον
SuperUser στον φάκελο /usr. Αν κάποιος χρήστης θέλει να εγκαταστήσει
κάποιο πρόγραμμα τότε μπορεί να το κάνει σ' αυτόν εδώ τον
κοινόχρηστο υποκατάλογο του /usr.
/var
Ο φάκελος αυτός (όπως δηλώνει και το όνομά του
variable) χρησιμεύει στη φύλλαξη των μεταβλητών δεδομένων όπως:
αρχεία log, η disk cache, το mailbox κ.α.
/proc
Αν κάποιος θέλει να βρει πληροφορίες για το σύστημα,
τότε εδώ θα βρεί τα πάντα.
/sbin
Εδώ πέρα υπάρχουν μερικές εντολές συστήματος που
μπορούν να εκτελεστούν μονάχα από τον SuperUser.
/bin
Εδώ πέρα υπάρχουν εντολές-προγράμματα του συστήματος
που μπορούν να εκτελεστούν από τους χρήστες.
/lib
Στον κατάλογο librarry βρίσκονται όλες οι
βιβλιοθήκες των προγραμμάτων τπου συστήματος.
/boot
Όπως καταλαβαίνετε ο φάκελος αυτός περιλαμβάνει
αρχεία που χρησιμεύουν στην εκκίνηση του συστήματος.
/etc
Συμαντικές επίσης για την εκκίνηση είναι και οι
ρυθμίσεις του συστήματος, που περιέχονται στα αρχεία αυτού του
φακέλου.
/dev
Στο Linux κάθε συσκευή αντιπροσωπεύεται από ένα
αρχείο! Αυτά τα αρχεία λοιπόν βρίσκονται στον φάκελο /dev
(devices).
/mnt
Εδώ πέρα είναι ο εξορισμού τόπος προσάρτησης
(mounting) των αποθηκευτικών μέσων.

Οι "ιδιότητες" των
αρχείων
Δίνοτας την εντολή LS -col σε κάποιο φάκελο, έστω
ότι εμφανίζονται τα παρακάτω δεδομένα.
-r-------- shodan admin 123 29 Feb 2000
AI.bin
drwxrwxr-x leon group1 1748 1 Nov 2001
Docs
-rw-r----- leon group1 255 22 Dec 2001
Economy.dbf
-rw-rw-rw- pit group1 1024 17 Aug 2000
pic1.gif
Στο Linux κάθε αρχείο ή κατάλογος χαρακτηρίζεται από
10 συνολικά ιδιότητες "χαρακτήρες" που αντισοιχούν σε συγκεκριμένες
ιδιότητες.
Όπως βλέπουμε και στον παραπάνω πίνακα, ο πρώτος
χαρακτήρας μας λέει αν το αρχείο είναι κατάλογος ή όχι . Έτσι όπου
βλέπουμε στην αρχή το γράμμα "d" (directrory) μιλάμε για κατάλογο.
Ανίθετα αν στη θέση του υπάρχει ένα "-" σημαίνει ότι η ιδιότητα δεν
υπάρχει, δηλαδή το στοιχείο δεν είναι κατάλογος.
Οι υπόλοιποι χαρακτήρες “διότητες” χωρίζονται σε
τρείς τριάδες, που αναφέρονται στους περιορισμούς πρόσβασης του
συγκεκριμένου στοιχείου.
Η πρώτη τριάδα αναφέρεται στο είδος της πρόσβασης
που έχει ο ιδιοκτήτης του αρχείου (το όνομα του ιδιοκτήτη του
εμφανίζεται αμέσως μετά τις ιδιότητες του αρχείου), η δεύτερη για τα
δικαιώματα που έχουν τα μέλη της ομάδας που ανήκει ο ιδιοκτήτης του
(το όνομα της ομάδας εμφανίζεται αμέσως μετά το όνομα του ιδιοκτήτη)
και η τρίτη τριάδα στην πρόσβαση που επιτρέπεται σε όλους τους
άλλους χρήστες.
Οι τρεις χαρακτήρες -“ιδιότητες” κάθε τριάδας μπορεί
να είναι:
* r (Read - το αρχείο μπορεί να
δοαβαστεί)
* w (Write - το αρχείο μπορεί να
τροποποιηθεί)
* x (eXecute - το αρχείο μπορεί να
εκτελεστεί)
Για παράδειγμα το πρώτο στοιχείο του πίνακα έχει τις
εξείς ιδιότητες: -r--------
Εμείς λοιπόν συμπεραίνουμε ότι το στοιχείο είναι
αρχείο (δεν είναι κατάλογος αφού λείπει το d) και ο ιδιοκτήτης του,
ενονόματει shodan μπορεί μόνο τα το διαβάσει. Τα μέλη της ομάδας
(admin) που ανήκει ο shodan, καθώς και οι άλλοι χρήστες δεν έχουν
κανένα δικαίωμα πρόσβασης πάνω στο αρχείο!
To δεύτερο στοιχείο έχει ιδιότητες:
drwxrwxr-x
Καταλαβαίνουμε λοιπόν ότι πρόκειται για έναν
κατάλογο (έχει την ιδιότητα d), στον οποίο ο leon έχει το δικαίωμα
να διαβάσει τα περιεχόμενά του και να τα τροποποιήσει. Τα μέλοι της
ομάδας group1, που ανήκει ο χρήστης μπορούν να κι εκείνα να
διαβάσουν και να τροποποιήσουν τα περιεχόμενά του ενώ όλοι οι άλλοι
χρήστες μπορούν απλώς να διαβάσουν τα περιεχόμενά του.
Το τρίτο στοιχείο με ιδιότητες:
-rw-r-----
Βλέπουμε ότι είναι ένα αρχείο με όνομα Economy.dbf,
το οποίο ιδιοκτήτης του μπορεί να διαβάσει και να επεξεργαστεί. Τα
μέλοι της ομάδας του χρήστη μπορούν απλώς να το διαβάσουν, ενώ οι
άλλοι χρήστες δεν έχουν κανένα δικαίωμα προσπέλασης.
Το τέταρτο στοιχείο του πίνακα χαρακτηρίζεται ως:
-rw-rw-rw-
Είναι λοιπόν μια εικόνα με όνομα pic1.gif, την οποία
όλοι οι χρήστες μπρούν να δουν και να επεξεργαστούν.
[Κορυφή]
Για να αλλάξουμε τις ιδιότητες κάποιου αρχείου ή
καταλόγου χρησημοποιούμε την ετνολή chmod.
Η σύνταξή της είναι: chmod παράμετροι αρχείο
.
Οι παράμετροι μπορεί να είναι είτε χαρακτήρες είτε
αριθμητικές τιμές. Οι χαρατκήρες που μπορούμε να χρησιμοποιήσουμε
είναι ίδιοι με τους παραπάνω και απλώς από μπροστά τους θα πρέπει να
βάλουμε το χαρακτήρα + , - ή = ανάλογα με το αν θέλουμε να αλλάξουμε
ή να ορίσουμε τις άδειες.
π.χ.: με το chmod o-w my_file , αυτό ορίζει ότι το
αρχείο my_file δεν θα μπορεί να αλάξει από τους άλλους (ο) χρήστες
.
ενώ με το chmod u=rwx, o=r a_file ορίζουμε ότι στο
αρχείο a_file εμείες (u) έχουμε πλήρη πρόσβαση ενώ οι άλλοι χρήστες
(ο) μόνο ανάγνωση.
Από την άλλη πάλι οι αριθμητικές τιμές είναι πολύ
πιο ευέλικτες. Για να ορίσουμε την άδεια χρησιμοποιούμε 4 ψηφία με
αριθμούς από το 0 έως το7.
Το πρώτο ψηφίο ορίζει την άδεια για τιν κάτοχο, το
δεύτερο για το Group του κατόχου & το τρίτο για όλους τους
άλλους χρ/ηστες. Η σημασία του κάθε ψηφίου φένεται στον παρακάτω
πίνακα.
Τιμή Άδεια
0 Καθόλου πρόσβαση
1 x - μόνο εκτέλεση
2 w - μόνο επεξεργασία
3 wx - επεξεργασία & εκτέλεση
4 r - μόνο ανάγνωση
5 rx - ανάγνωση & εκτέλεση
6 rw - ανάγνωση & επεξεργασία
7 rwx - απεριόριστη πρόσβαση
Τέλος με το τέταρτο ψηφίο ορίζεται κάποια άλλη
πληροφορία, όπως το UserID, το GroupID & το Sticky bit που δεν
επιτρέπει την διαγραφή του αρχείου. Ο παρακάτω πίνακας ίσως
ξεκαθαρίσει λίγο το τοπίο.
Τιμή Πληροφορία
0 Καμία πληροφορία
1 Sticky bit
2 GroupID
3 Sticky bit & GroupID
4 UserID
5 Sticky bit & UserID
6 UserID & GroupID
7 Sticky bit, UserID & GroupID
π.χ.: το chmod 644 a_database ορίζει πως το αρχείο
a_database θα έχει απεριόριστη πρόσβαση από τον ιδιοκτήτη του, ενώ
τα μέλη του group του και οι άλλοι χρήστες θα μπορούν απλώς να το
διαβάσουν. Όπως βλέπετε το τέταρτο ψηφίο είναι
προερετικό.
Αν τώρα δώσουμε chmod 6661 reports.txt επιτρέπουμε
στους πάντες απεριόριστη πρόσβαση στο αρχείο αλλά δεν τους
επιτρέπουμε να το διαγράψουν (διότι το τέταρτο ψηφίο [1] ορίζει
sticky bit).

Αρχεία που ξεκινουv με
τελεία
Ένα παράξενο στοιχείο του Linux είναι τα αρχεία dot.
Πρόκειται για αρχεία των οποίων τα ονόματα αρχίζουν με μια τελεία.
Συνήθως τα αρχεία αυτά δεν εμφανίζονται. Για παράδειγμα, δείτε τι
αποτέλεσμα παίρνω αν προσπαθήσω να εμφανίσω τα αρχεία σε έναν
κατάλογο που ονομάζεται secret.:
user@host:~>ls secret
a_normal_file
user@host:~>
Η εντολή ls εμφανίζει ένα αρχείο στον κατάλογο. Αν
όμως δώσουμε την εντολή 'ls' με την παράμετρο -a θα έχουμε τα εξής
αποτελέσματα.
user@host~>ls -a secret
. .. .a_hidden_file a_normal_file
Όπως βλέπουμε τώρα εμφανίζονται τέσσερα αρχεία: Το .
που είναι μια συντόμευση του καταλόγου στον οποίο βρισκόμαστε, το ..
που αναφέρεται στον μητρικό κατάλογο, το αρχείο .a_hidden_file και
το αρχείο a_normal_file, που εμφανιζόταν και προηγουμένως. Το αρχείο
.a_secret_file υπήρχε και προηγουμένως αλλά απλώς ήταν κρυμμένο, με
την παράμετρο -a στην εντολή ls εμφανίζονται και τα κρυφά αρχεία.
Όπως είδαμε αυτός είναι ένας ωραίος τρόπος να κρύβουμε αρχεία
ρυθμίσεων έτσι ώστε να μην πιάνουν χώρο στην οθόνη κάθε φορά που
βλέπουμε τα αρχεία ενός καταλόγου, βοηθώντας μας έτσι στις
αναζητήσεις μας. Με το να προσθέσετε, βέβαια, μια τελεία στο όνομα
ενός αρχείου δεν το ασφαλίζετε απλώς το αποκρύπτετε. Υπάρχουν πολύ
καλύτεροι και αποτελεσματικότεροι τρόποι να ασφαλίσετε ένα αρχείο ή
κατάλογο στο Linux, τους τρόπους αυτούς θα τους δούμε στη
συνέχεια.
Περιβάλλον εργασίας
Το UNIX παραδοσιακά είναι ένα λειτουργικό σύστημα
μόνο για κονσόλα. Στις αρχές όμως της δεκαετίας του '90 μια ομάδα
από το Ινστιτούτο Τεχνολογίας της Μασαχουσέτης δημιούργησε ένα
παραθυρικό περιβάλλον εργασίας το οποίο ονόμασε XWindowSystem. To Χ
Window System είναι σχεδιασμένο από την αρχή ως ένα ανοιχτό και
παραμετροποιήσιμο σύστημα, βασισμένο στην αρχιτεκτονική
πελάτη-εξυπηρετητή (client-server).
Τα X-Windows λοιπόν αποτελούνται από δύο κομμάτια:
Τον X Server & τους X Clients. Ο X Server είναι το κομμάτι
εκείνο που παρουσιάζει τα γραφικά στην οθόνη και χειρίζεται την
είσοδο από το ποντίκι και το πληκτρολόγιο. Οι X Clients είναι οι
εφαρμογές που εκτελούνται και ανταλλάσσουν δεδομένα με τον X Server
(εισόδους- εξόδους). Ο X Server και οι X Clients δεν είναι ανάγκη να
εκτελούνται στο ίδιο μηχάνημα. Για παράδειγμα, επιτρέπει σε κάποιον
χρήστη σε ένα απομακρυσμένο μηχάνημα να εκτελέσει το παραθυρικό
περιβάλλον σε κάποιον άλλον host και να βλέπει τα αποτελέσματα στο
δικό του υπολογιστή.
Το XWindowSystem είναι σίγουρα πολύ ισχυρό, αλλά
μέχρι πρόσφατα τα γραφικά του δεν ήταν ό,τι καλύτερο. Σε αυτό
συνέβαλε το γεγονός ότι δεν υπάρχει κάποια πάγια αισθητική για το
“ντύσιμο” των παραθύρων. Κάθε χρήστης μπορεί να χρησιμοποιεί τον
WindowManager της αρεσκείας του, αλλά οι προσπάθειες που είχαν γίνει
δεν ήταν οι καλύτερες.
Με τη διάδοση όμως του Linux πολλοί ερασιτέχνες
προγραμματιστές σχεδίασαν πολύ πιο όμορφους WindowManagers. Από τις
πιο πρόσφατες εξελίξεις είναι η προσπάθεια συνένωσης όλων των
εφαρμογών για το παραθυρικό περιβάλλον πάνω σε ένα κοινό περιβάλλον
εργασίας, γνωστό και ως DesktopEnviroment. Υπάρχουν παράλληλα δύο
τέτοια περιβάλλοντα το KDE (http://www.kde.org/) και GNOME
(http://www.gnome.org/) για τα οποία θα μιλήσουμε στη
συνέχεια.
Στις περισσότερες διανομές του Linux υπάρχει ένα
αντίγραφο της υλοποίησης του μη κερδοσκοπικού οργανισμού XFree86
(http://www.xfree86.org/) που αποτελεί τον X Server του Linux. Για
τους X Clients υπάρχουν πολλές λύσεις: από απλούς Window Managers
όπως Windows Maker, Enlightment , μέχρι πλήρη περιβάλλοντα εργασίας
όπως KDE, GNOME για το οποία μιλήσαμε παραπάνω.
Παρ' όλο που έχουν γίνει όλες αυτές οι προσπάθειες
για την αποκοπή του χρήστη από την κονσόλα, αυτό είναι κάτι πρακτικά
αδύνατο. Απλώς για κάποιες εργασίες μπορεί κάποιος να την
αποφύγει.
Τα
κελύφη
Αν ο πυρήνας είναι το χαμηλού επιπέδου πρόγραμμα το
ποίο σας απαλλάσσει από τις μικρολεπτομέρειες του hardware, το
κέλυφος (shell) παρέχει μια επιφάνεια εργασίας κειμένου για το
χρήστη. Το κέλυφος είναι το πρόγραμμα το οποίο προσπαθεί να
καταλάβει τι εννοείτε όταν πληκτρολογείτε κάτι στην γραμμή
εντολών.
Στο Linux υπάρχουν πολλά κελύφη, αλλά τρία είναι τα
πιο κοινά που χρησιμοποιούνται:
* bash
* zsh
* tcsh
Το bash είναι το προκαθορισμένο κέλυφος του Linux
και το ευρέως χρησιμοποιούμενο, αν και δεν προσφέρει τις πιο
“εσωτερικές” λειτουργίες των άλλων κελυφών.
Το Zshell (zsh) είναι το κέλυφος με τα περισσότερα
χαρακτηριστικά και είναι το ιδανικό για τον χρήστη που θέλει να έχει
κάθε διαθέσιμη επιλογή.
Το tcsh βασίζεται στο παλαιότερο csh και η σύνταξή
του είναι παρόμοια με αυτή της γλώσσας C. Αυτός είναι και ο βασικός
λόγος που το tcsh είναι αρκετά δημοφιλές στους προγραμματιστές της
C.
Shell
scripts
Τα shellscripts είναι προγράμματα σεναρίων γραμμένα
με τη χρήση του shell. Είναι κάτι σαν τα αντίστοιχα αρχεία δέσμης
ενεργειών (batchfiles) του DOS, είναι όμως πολύ πιο ισχυρά. Τα
shellscripts είναι δυνατό να ελέγξουν και να αυτοματοποιήσουν τα
πάντα, από εργασίες ρουτίνας μέχρι εγκαταστάσεις προγραμμάτων και
από το απλό περιοδικό back-up μέχρι την ασφάλεια του
συστήματος.
Η εκτέλεση ενός shellscript δεν είναι δύσκολη, απλά
πληκτρολογείτε το όνομα του shell στο οποίο γράφτηκε το script και
μετά το όνομα του script.
Για να δείτε σε ποιο shell είναι γραμμένο ένα script
αρκεί να δείτε την πρώτη γραμμή του αρχείου η οποία πάντα ξεκινά με
τα σύμβολα #!/bin/ και το όνομα του shell. Αν τώρα το script είναι
γραμμένο στο shell που χρησιμοποιείτε απλά δώστε μόνο το όνομα του
script.
http://petros.freepage.gr/linux_files/kabouras.jpg
Οι εντολές της
κονσόλας
Στις παρακάτω γραμμές θα γίνει μια σύντομη αναφορά
στις βασικές εντολές της κονσόλας του Linux. Οι εντολές αυτές
δέχονται δεκάδες παραμέτρους και ρυθμίσεις καθιστώντας την κονσόλα
του Linux ένα ισχυρότατο εργαλείο για κάθε περίσταση.
Οι εντολές αναφέρονται με αλφαβητική
σειρά.
Αν θέλετε περισσότερες λοιπόν πληροφορίες, για την
κάθε εντολή θα πρέπει να ανατρέξετε στα "εξαντλητικά" εγχειρίδια
χρήσης που τις συνοδεύουν.
Για να προβάλετε λοιπόν πληροφορίες για μια εντολή
δώστε την εντολή man όνομα_εντολής ή info όνομα_εντολής.
Ακόμα και η εντολές man και info έχουν εγχειρίδια
χρήσης!
adduser • alias • aprops • at • atq • banner • batch
• bg • cat • cd • chgrp • chmod • chown • clear • cp • crontab •
date • diff • anv • fg • find • finger • ftp • grep • gzip • halt •
head • hostname • kill • less • login • logout • lpr • ls • mail •
make • man • mkdir • mkfs.ext2 • mkswap • more • mount • mv •
netstat • passwd • ping • ps • rlogin • rmdir • route • rsh • set •
shutdown • short • su • tail • talk • tar • telnet • unmount • unzip
• useradd • userdel • usermod • users • wc • who • zip
adduser
Η εντολή αυτή χρησιμοποιείται από τον root για τη
δημιουργία ενός νέου λογαριασμού χρήστη.
alias
Χρησιμοποιείται για να δημιουργήσει συντομογραφίες ή
εναλλακτικά ονόματα για άλλες εντολές.
aprops <paraments>
Ψάχνει στις man σελίδες των εντολών για τα ορίσματα
που της δόθηκαν.
at
Hat από την άλλη εκτελεί εργασίες μια καθορισμένη
στιγμή. η σύνταξή της είναι at -παράμετροι εργασία ώρα και δέχεται
πολλές παραμέτρους
atq
Η atq εμφανίζει μια λίστα με τις εργασίες που έχετε
ορίσει με την at. Η λίστα χωρίζεται σε 4 στήλες. Στην πρώτη δείχνει
τον αριθμό τη εργασίας. Η 2η & 3η την ημ/νία και την ώρα
εκτέλεσης αντίστοιχα και η τέταρτη την σειρά εκτέλεσής
τους.
banner <string>
Τυπώνει ένα μεγάλο banner υψηλής
ποιότητας.
batch
Μια άλλη χρήσιμη εντολή είναι η batch η οποία
εκτελεί προκαθορισμένες εργασίες όταν ο φόρτος εργασίας του
συστήματος είναι μικρός.
bg
Υποχρεώνει μια διεργασία που βρίσκεται σε παύση να
εκτελεστεί στο παρασκήνιο.
cat <file_name>
Εμφανίζει τα περιεχόμενα ενός αρχείου στην
οθόνη.
cd
Είναι η εντολή που χρησιμοποιείται για να
μεταφέρεται κάποιος ανάμεσα στους φακέλους. Και έχει τις εξής τρεις
βασικές μορφές: cd .. Μεταφέρεστε στον αμέσως προς τα επάνω
κατάλογο. cd ~ Μεταφέρεστε στην home κατάλογό σας. cd
<dir_name> Σας μεταφέρει στον κατάλογο το όνομα του οποίου
δώσατε.
chgrp <group_name> <file>
Αλλάζει την ομάδα στην οποία ανήκει ένα
αρχείο.
chmod <άδεια> <αρχείο>
Αλλάζει τις άδειες πρόσβασης ενός
αρχείου.
chown
Αλλάζει τον ιδιοκτήτη ενός αρχείου.
clear
Με την εντολή clear καθαρίζετε την οθόνη
σας.
cp <file1> <file2>
Αντιγράφει το αρχείο file1 στην διαδρομή
file2.
crontab
Το βασικό χαρακτηριστικό της crontab είναι ότι
εκτελεί επαναληπτικά τις εργασίες σε τακτά χρονικά διαστήματα που
έχουν οριστεί από το χρήστη.
date
Όπως καταλαβαίνετε η date εμφανίζει την τρέχουσα
ημερομηνία και ώρα του συστήματος και επιτρέπει την αλλαγή
της.
diff
Aν θέλετε να δείτε τις διαφορές που έχουν 2 αρχεία
τότε χρησιμοποιείστε την εντολή diff (differences).
env
Εμφανίζει τις μεταβλητές περιβάλλοντος.
fg
Μεταφέρει τις εντολές από το προσκήνιο στο
παρασκήνιο και το αντίθετο.
find
Αναζητά αρχεία στο δίσκο.
finger
Η finger κυριολεκτικά εμφανίζει τα πάντα για τους
χρήστες που είναι συνδεδεμένοι.
ftp
Χρησιμοποιείται για να κάνετε μεταφορές αρχείων από
ένα σύστημα σε ένα άλλο το FTP (FileTransfertProtocol).
grep
Δεν ψάχνει για αρχεία, αλλά για κάποιο συγκεκριμένο
κείμενο μέσα σ' αυτά.
gzip
Συμπιέζει και αποσυμπιέζει αρχεία.
halt
Η εντολή halt σταματάει την λειτουργία του
πυρήνα.
head
Η head εμφανίζει την αρχή (τις πρώτες γραμμές) ενός
αρχείου.
hostname
Εμφανίζει και ορίζει το όνομα του
υπολογιστή.
kill
Διακόπτει μια εκτελούμενη εργασία. Χρήσιμη εντολή σε
περίπτωση που κάποιο πρόγραμμα έχει κολλήσει.
less
Η less εμφανίζει τα περιεχόμενα ενός αρχείου στην
οθόνη με τη δυνατότητα να μπορείτε να "κυλήσετε" τις οθόνες και προς
τα πίσω. Για να μεταφερθείτε στην επόμενη οθόνη πατάτε το PageDown
ενώ για την προηγούμενη το PageUp & σταματάτε την εκτέλεσή της
με το Q.
login
Χρησιμοποιείται κατά την είσοδό σας στο σύστημα ή
για να συνδεθείτε ως άλλος χρήστης.
logout
Χρησιμοποιείται για να κλείσετε την σύνδεση σε ένα
σύστημα από τον τρέχοντα χρήστη.
lpr
Για να εκτυπώσετε ένα αρχείο στον εκτυπωτή δεν
χρειάζεται να το "ανοίξετε" με κάποια εφαρμογή, απλώς δώστε την
εντολή lpr και το όνομα του αρχείου. Η εντολή επίσης δέχεται &
διάφορες παραμέτρους που δίνουν στον εκτυπωτή να καταλάβει τι είναι
το αρχείο που τυπώνει (αν δεν είναι αρχείο κειμένου).
ls
Εμφανίζει τα περιεχόμενα του τρέχοντος καταλόγου και
μπορεί να δεχτεί ένα μεγάλο πλήθος παραμέτρων.
mail
Η πιο απλή εντολή για να στείλετε ένα μήνυμα
(e-mail) σε κάποιον άλλο χρήστη.
make
Τα περισσότερα προγράμματα στο Linux διανέμονται σε
μορφή πηγαίου κώδικα. Έτσι λοιπόν η make χρησιμοποιείται για τη
μεταγλώττιση και εγκατάσταση ενός προγράμματος.
man
Όπως είπαμε η man εμφανίζει τις σελίδες βοήθειας για
κάποια συγκεκριμένη εντολή ή πρόγραμμα.
mkdir
Με την mkdir μπορείτε να δημιουργείτε
καταλόγους.
mkfs.ext2
Εντολή αντίστοιχή της format που κάνει διαμόρφωση σε
νέους δίσκους ή διαμερίσματα δίσκων, είναι η mkfs.ext2 Τα πιο
σημαντικά ορίσματα είναι τα εξής: -c : Έλεγχος για Badblocks -b :
Καθορισμός του μεγέθους του block -I : Καθορισμός ανά ποσά bytes θα
υπάρχει ένα inode -m : χώρος που κρατείται για τον root -v :
Ενεργοποιεί το verbosemode -N : Δοκιμαστικό mode
mkswap
Δημιουργεί μια περιοχή εικονικής μνήμης στο δίσκο.
Είναι ουσιαστικά μια επέκταση της RAM. Έτσι όταν "γεμίσει" η RAM το
σύστημα θα χρησιμοποιεί τον δίσκο.
more
Όπως είπαμε η εντολή cat εμφανίζει τα περιεχόμενα
του αρχείου δίχως να σταματάει κάθε γεμίζει η οθόνη με χαρακτήρες.
Αντίθετα η more σταματάει κάθε μια οθόνη και περιμένει εσείς να
πατήσετε την SpaceBar για να συνεχίσει.
mount
Με την εντολή mount προσαρτούνται αποθηκευτικά μέσα
(όπως: cd-rom, δισκέτα, partitions, κ.α.).
mv
Η εντολή mv δεν αντιγράφει αρχεία, αλλά τα
μεταφέρει. Μπορεί να χρησιμοποιηθεί και για μετονομασία
αρχείων.
netstat
Εμφανίζει την κατάσταση των συνδέσεων
δικτύου.
passwd
Με αυτή την εντολή αλλάζει κάπoιος χρήστης το
password του.
ping
Η κλασική εντολή για να δει κανείς τις αναπηδήσεις
που κάνει μέχρι να βρει τον προορισμό του στο δίκτυο.
ps
Μια από τις πιο χρήσιμες εντολές είναι η ps. Με
αυτήν μπορούμε να δούμε αναλυτικότερα τα προγράμματα που εκτελούνται
εκείνη τη στιγμή.
rlogin
Με το RLOGIN μπορείτε να χειριστείτε πλήρως ένα
απομακρυσμένο σύστημα.
rmdir
Με την rmdir μπορείτε να διαγράψετε
καταλόγους.
route
Μια κλασική εντολή για να δει κάποιος την διαδρομή
που ακολουθεί μέσα στους υπολογιστές του δικτύου.
rsh
Σε αντίθεση με το rlogin το rsh επιτρέπει την
μεταβίβαση μιας εντολής σ' ένα άλλο σύστημα και όχι τον πλήρη έλεγχό
του.
set
Αλλάζει προσωρινά μια μεταβλητή
περιβάλλοντος.
shutdown
Σβήνει τον υπολογιστή.
sort
Η sort επιστρέφει τα περιεχόμενο ενός αρχείου
ταξινομημένα. Η παράμετρος -r αντιστρέφει τη σειρά, εκτός αν θέλουμε
να ταξινομηθούν ,ως προς αριθμητικά περιεχόμενα, οπότε επιλέγουμε το
-n.
su
Σας επιτρέπει να συνδεθείτε προσωρινά ως
superuser.
tail
Αντίθετη από την head είναι η tail που εμφανίζει το
τέλος του αρχείου.
talk
Χρησιμοποιείται για να κάνετε chat με κάποιον άλλο
χρήστη.
tar
Με την εντολή tar μπορείτε να πακετάρετε πολλά
αρχεία σε ένα, αλλά και να τα συμπιέσετε.
telnet
Αν κάποιος θέλετε να επεξεργαστείτε τα αρχεία ενός
απομακρυσμένου συστήματος δεν χρειάζεται να τα μεταφέρετε με το FTP
στο δίσκο σας και μετά να τα ξαναστείλετε. Μπορεί πολύ εύκολα να
χρησιμοποιήσετε το TelNet και να έχετε άμεση πρόσβαση σ' αυτά εκεί
που βρίσκονται. Το TelNet μπορεί επίσης να μεταφέρει και
αρχεία.
unmount
Αποπροσαρτά συστήματα αρχείων, δίσκους, διαμερίσματα
κ.λ.π.
unzip
Αποσυμπιέζει συμπιεσμένα αρχεία.
useradd
Η εντολή UserAdd χρησιμεύει στη δημιουργία νέων
λογαριασμών χρηστών.
userdel
Με το UserDel μπορείτε να διαγράφετε λογαριασμούς
χρηστών.
usermod
Για να αλλάξετε τις ρυθμίσεις ενός λογαριασμού
χρησιμοποιήστε το usermod.
users
Mε την εντολή users μπορείτε να δείτε τα ονόματα των
χρηστών που χρησιμοποιούν εκείνη τη στιγμή το σύστημα.
wc
Με την wc μπορούμε να δείτε πόσες γραμμές, λέξεις
και χαρακτήρες έχει ένα κείμενο.
who
Εμφανίζει τα ονόματα των χρηστών, την ημερομηνία που
συνδέθηκαν καθώς και το σύστημα από το οποίο συνδέθηκαν.
zip
Συμπιέζει αρχεία.

Σχέδιο τεκμηρίωσης του
Linux.
H κοινότητα του Linux κατάλαβε την ανάγκη
συγκέντρωσης, αρχειοθέτησης & μετάφρασης των ήδη πολλών τόμων
τεκμηρίωσης που υπάρχει για το δημοφιλές λειτουργικό.
Έτσι συστήθηκε το λεγόμενο Linux Documentation
Project του οποίου την σελίδα μπορείτε να επισκευθείτε κάνοντας κλικ
στην παρακάτω εικόνα:
[The Linux Documentation Progect site]
Βεβαίως όπως καταλαβαίνετε από την όλη προσπάθεια
δεν είναι δυνατό να λείπει και η ελληνική συμμετοχή. Βασικό ρόλο
έχει αναλάβει η Ένωση Χρηστών & Φίλων Λίνουξ Ελλάδος. σε ειδικό
τμήμα του Site της υπάρχουν πολλά & κατατοπιστικά αγγλόφωνα αλλά
και ελληνικά How-to.
Εγγραφή σε IDE-ATAPI με το cdrecord
Έχετε οδηγό CD-RW στο Linux μηχανημά σας,
εγκαταστήσατε το πρόγραμμα εγγραφής, αλλά δεν μπορείτε να γράψετε
δισκάκια;
Μην πανικοβάλεστε, το Linux φυσικά και υποστιρίζει
εγγραφές CD-R (αλλά και DVD). Το πρόγραμμα (σουίτα καλύτερα), που
χρησιμοποιείται κατά κόρον για τις εγγραφές CD ονομάζεται cdrecord
(για τα DVD υπάρχει το αωτίστοιχο με όνομα dvdrecrd).
Το cdrecord είναι πρόγραμμα που λειτουργεί σε
περιβάλλον κονσόλας, αλλά φυσικά υπάρχουν πολλοί, εύχρηστοι και
ωραίοι γραφικοί front-ends (οι οποίοι προσθέτουν ένα γραφικό
περιβάλλον) για το συγκεκριμένο πρόγραμμα, όπως τα BurnIT, KOnCD,
Gnome Toaster, George, X CD Roast και άλλες.
Το cdrecord αν και πολύ δυνατό έχει μια και μοναδική
παραξενιά: υποστιρίζει εγγραφές μονάχα για SCSI συσεκυές! Αν εσείς
έχετε συσκευή IDE-ATAPI (που μάλλον τέτοια θα έχετε) πολύ απλά το
πρόγραμμα δεν θα μπορέσει να λειτουργήσει μ' αυτή! Μην στεναχωριέστε
όμως καθώς η λύση υπάρχει και έρχεται από τον ίδιο τον πυρήνα του
Linux, ο οποίος υποστιρίζει εξομοίωση SCSI σε συσκευές IDE. Αυτό δεν
έχει καμία επίδραση στο υλικό σας, αλλά πολύ απλά τα προγράμματα
βλέπουν ότι οι συσκευές σας είναι SCSI ενώ ο πυρήνας γνωρίζει ότι οι
συσκευές σας είναι IDE και μεταφράζει τις εντολές για SCSI που
στέλνουν τα προγράμματα σε εντολές IDE-ATAPI !
Η διαδικασία είναι απλή και περιγράφεται
παρακάτω:
1. Καταρχήν μπείτε στο σύστημα ως root
χρήστης.
2. Στο αρχείο lilo.conf (το αρχείο ρυθμίσεων του
boot manager LILO) προσθέστε στο τέλος του την εντολή hd?=ide-scsi
όπoυ hd? θα είναι:
* hda αν έχετε βάλει τη συσκευή εγγραφής ως Primary
Master στον δίαυλο IDE
* hdb αν έχετε βάλει τη συσκευή εγγραφής ως Primary
Slave στον δίαυλο IDE
* hdc αν έχετε βάλει τη συσκευή εγγραφής ως
Secondary Master στον δίαυλο IDE
* hdd αν έχετε βάλει τη συσκευή εγγραφής ως
Secondary Slave στον δίαυλο IDE
3. Στη συνέχεια, στο αρχείο /etc/rc.local προστθέστε
την εντολή /etc/modprobe ide-scsi. Με αυτή την εντολή θα φορτώνεται,
κατά την εκκίνηση, στον πυρήνα το άρθρωμα που κάνει την εξομοίωση
SCSI.
4. Kάντε επανεκκίνιση στο μηχάνημα δίνοντας την
εντολή reboot.
5. Όταν ξαναφορτωθεί το λειτουργικό (μπείτε πάλι ως
root) δώστε στην κονσόλα την εντολή ln /dev/cdrom /dev/scd? (όπoυ
hd? θα είναι a, b, c ή d σύμφωνα με το παραπάνω σχήμα). Έτσι ώστε να
διορθωθεί ο δεσμός που υπάρχει για το /dev/cdrom και λανθασμένα
δείνχει σε κάποιο /dev/hd?
Οι
διανομές του Linux
Ωραία όλα τα παραπάνω αλλά όπως ίσως καταλάβατε για
να μαζέψει κάποιος όλα αυτά τα δωρεάν και ελεύθερα διανεμόμενα
προγράμματα και κομμάτια του συστήματος, χρειάζεται πολύ ψάξιμο και
χρόνο για να τα κατεβάσει μέσω του δικτύου.
Με αυτό το σκεπτικό οι διάφορες εταιρείες που
δραστηριοποιούνται γύρω από το Linux δημιούργησαν τις διανομές. Οι
διανομές δηλαδή είναι ένα σύνολο από πακέτα διάφορων προγραμμάτων,
πληροφοριών, βιβλιοθηκών και πυρήνων του Linux, που οι εταιρίες
αυτές τα έχουν συγκεντρώσει, έχουν φτιάξει ένα πρόγραμμα εύκολης
εγκατάστασής τους, τα έχουν βάλει σε CD και τα διανέμουν. Άλλες
είναι εμπορικές και άλλες όχι. Για να προμηθευτεί κανείς μια διανομή
μπορεί να επισκεφθεί τον αντίστοιχο δικτυακό τόπο της εκάστοτε
εταιρίας και να κατεβάσει τα αντίστοιχα αρχεία. Αυτό βέβαια σημαίνει
δεκάδες ώρες συνεχούς σύνδεσης στο δίκτυο για να κατέβουν τα αρχεία,
που αποτελούν την διανομή. Έτσι από οικονομικής απόψεως η αγορά του
πακέτου με το CD είναι αρκετά πιο συμφέρουσα. Επόσης λόγω την
νομικής καταστάσεως του Linux δεν απαγορεύεται η αναπαραγωγή του
λογισμικού που υπάρχει στο πακέτο.
Οι διαφορές τους ανάμεσα στις διαφορετικές διανομές
συνοψίζονται στα εξής σημεία: Καταρχήν όλες οι διανομές περιέχουν
πυρήνα αλλά όχι τον ίδιο, όλες τους έχουν Window Manager (γραφικό
περιβάλλον) αλλά όχι το ίδιο, όλες τους διαθέτουν εργαλεία,
προγράμματα, εφαρμογές αλλά όχι τα ίδια. Ακόμα διαφέρουν ως προς το
μέγεθός τους (ξεκινούν από 1,4 ΜΒ και καταλήγουν ακόμα και σε
περισσότερα από 4 GB). Το βασικό σημείο της διαφοράς τους είναι τα
προγράμματα που περιέχουν, ο τρόπος εγκατάστασης των ανωτέρω καθώς
και το εγχειρίδιο χρήσης που περιλαμβάνουν (και βοηθάει πάρα πολύ
τον αρχάριο χρήστη).
Sites των δημοφιλέστερων
διανομών
* Οι μεγαλύτερες διανομές για Intel x86 συστήματα:
Caldera [http://www.calderasystems.com/]
* SuSE [http://www.suse.com/]
* RedHat [http://www.redhat.com/]
* Mandrake
[http://www.linux-mandrake.com/]
* Debian [http://www.dabian.org/]
* Corel Linux [http://linux.corel.com/]
* Complete Linux
[http://macmillansoftware.com/]
* Slackware [http://www.slackware.com/]
* Turbo Linux
[http://www.turbolinux.com/]
* Lindows (για εφαρμογές Win32)
[http:/www.lindows.com/]
Διανομές που δουλεύουν μαζί με Windows
(UMSDOS).
* WinLinux 2000
[http://www.winlinux.net/]
* Armed Linux [http://www.armed.net/]
* Loop Linux [http://www.phatlinux.com/]
* Dragon Linux
[http://www.c-cubedinc.com/dragon/]
Οι "εύκολες" διανομές
* Easy Linux [http://www.easylinux.com]
* Floppix [http://floppix.cai.com/]
Διανομές για PowerPC
* MKLinux [http://www.mklinux.org]
* Black Lab Linux
[http://www.blacklablinux.com/]
* HA Linux [http://www.linux-ha.org/]
* PinuxPPC [http://www.linuxppc.com/]
Διανομές για IBM System/390
* Think Blue Linux [http://www.s390.org]
Διανομές ειδικά για για palmtop &
κινητά
* Midori Linux by Tansmeta
[http://midori.transmeta.com/]
Διανομές για άλλα embedded συστήματα
* Embedix [http://www.lineo.com/]
* ET Linux [http://www.prosa.it/etlinux]
* Linux Embedded
[http://www.linux-embedded.com]
Διανομές για υποστήριξη παλαιών συκευών &
μηχανημάτων
* Tiny Linux [http://www.tiny.seul.org/]
* Tomsrtbt [http://www.toms.net/rb/]
Διανομές εξειδικευμένες κυρίως για δυκτιακές &
"πολύ σοβαρές" αποστολές
* Whole Linux
[http://www.wholelinux.com/]
* Trinux [http://www.trinux.com/]
* Share the net
[http://www.sharethenet.com/]
* Linux for Routers
[http://www.linuxrouter.org/]
* Bastille Linux
[http://www.bastille-linux.org/]
* ImmUNIX [http://www.immunix.org/]
Δεν νομίζω να μην βρήκατε ακόμα αυτό που χρειάζεστε.
Αλλά αν πάλι θέλετε ντε και καλά κάτι άλλο, να μερικές ακόμμα
διανομές:
* Deep Linux [http://www.deeplinux.com]
* Stromix [http://www.stromix.com/]
* ELF Linux [http://www.elflinux.com/]
* Stampede [http://www.stampede.org/]
* Libranet Linux
[http://www.libranet.com/]
* ABIT Gantus [http://www.gentus.com/]
* Trustix (όχι τρουσί)
[http://www.trusix.com/]
* Rock Linux (αν είστε οπαδός της Rock)
[http://www.rocklinux.com/]
* Rempetic Linux
[http://nobody.paraponemenos.net/r_linux] ;-)
Ε... καλά δεν ήτανε; Νομίζω ότι πρέπει να βρήκατε
αυτό που σας ταιριάζει καλύτερα.
Τοποθεσίες για το
Linux
* Linux.gr: http://www.linux.gr
* Ένωση Χρηστών & Φίλων Linux Ελλάδας: http://www.hellug.gr
* Project Γραφίς: Μια προσπάθεια συγκέντρωσης όλων
των ελληνικών γραμματοσειρών για το Linux: http://hp.hellug.gr/graphis
* Βοήθεια για το Linux στα ελληνικά: http://howto.hellug.gr/
* The Linux Documentation Project: http://www.linuxdoc.org/
* Linux Kernel: http://www.kernel.org
* To site του δημοφιλούς προγράμματος επεξεργασίας
γραφικών Gimp: http://www.gimp.org
* To site του παραθυρικού περιβάλλοντος Χ: http://www.x.org
* To site του μη κερδοσκοπικού οργανισμού XFree86
που ανέπτυξε το Χ Window System: http://www.xfree86.org
* Η σελίδα με τον κατάλογο των Sites των
διανομών...
* Οι τοποθεσίες των πιο δημοφιλών γραφικών
περιβάλλοντων εργασίας & window managers:
| KDE | GNOME | Enlightement | AFTERSTEP |
WindowMaker | Black Box |
* Τοποθεσίες με νέα & ειδήσεις για το
Linux:
| http://slashdot.org/ | http://linuxtoday.com/ |
http://eltoday.com/ | http://www.linuxnews.com/ |
http://linux.box.sk/ | http://lwn.net/ | http://wwwlinuxjournal.com/
| http://linux-mag.com/ | http://www.geeknews.org/ |
http://magaz.hellug.gr |
* Πληροφορίες για το Linux:
| http://www.linux.com/ | http://www.linux.org/ |
http://www.li.org | http://linuxpower.com/ | http://www.linux.gr/
|
* Τοποθεσίες με λογισμικό ανοιχτού κώδικα (open
source software):
| SourceForge NET | OSDN | OpenSource initiative
|
* Λογισμικό και οδηγοί υλικού:
| Fresh Meat Network | Linux Software Map |
Linuxberg | FileWatcer | Apache SF | Mozilla.org | Tucows |
Tucows.GR |
* Εφαρμογές γραφείου:
| Sun Star Office | Word Perfect Office 2000 |
KOffice | SIAG Office | ABIWord | ApplixWare | Lotus Notes
|
* Ποιός σας είπε πως οι πιγκουίνοι δεν διασκεδάζουν;
Νά μερικά sites από όπου μπορείτε να προμηθευτείτε εκδόσεις
σύγχρονων παιχνιδιών για το Linux.
| LinuxGames.com | Happy Penguin | QUAKE | Loki
Games |
* Site που ασχολείται αποκλειστικά με διευθύνσεις
για το Linux: http://linuxlinks.org/
Επίλογος
Αν και η εποχή μας δεν προσφέρεται για νέα
ανταγωνιστικά λειτουργικά συστήματα και με το μονοπώλιο να
κυριαρχεί, το μέλλον γι' αυτό το φιλόδοξο λειτουργικό σύστημα
προδιαγράφεται θετικό.
Είναι αδιαμφισβήτητο γεγονός ότι το Linux
αποτελεί το μοναδικό λειτουργικό σύστημα που καταφέρνει να κερδίζει
σταθερά μερίδιο αγοράς με μηδαμινό διαφημιστικό κόστος. Αυτό είναι
αναμενόμενο εφόσον το Linux αποτελεί την καλύτερη λύση σ' έναν κόσμο
που συνεχώς προσανατολίζεται στα δίκτυα και αν λάβουμε υπ' όψιν μας
ότι δεν κοστίζει τίποτα, τότε είναι μάλλον δύσκολο να βρει κανείς
ανταγωνιστή του σε χώρους που υπάρχουν περισσότεροι από δυο
υπολογιστές.
Downloads
Απο εδώ : ftp.ntua.gr/pub/linux Μπορειτε
να κατεβάσετε τη καινούρια έκδοση του Linux Μandrake 9.2


|