ΑΝΑΠΤΥΞΗ ΔΙΑΝΟΜΗΣ LINUX ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΣΤΙΣ ΑΝΑΓΚΕΣ ΤΟΥ ΤΜΗΜΑΤΟΣ Η.Υ.Σ.

Σχετικά έγγραφα
ΑΝΑΠΤΥΞΗ ΔΙΑΝΟΜΗΣ LINUX ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΣΤΙΣ ΑΝΑΓΚΕΣ ΤΟΥ ΤΜΗΜΑΤΟΣ Η.Υ.Σ.

Σύντομη εισαγωγή στο λειτουργικό σύστημα Linux

Κεφάλαιο 4: Ρύθμιση Συστήματος

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

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

Προγραμματισμός και Διαχείριση Συστημάτων ΙΙ

Linux με τη χρήση κονσόλας

GreekLUG Ελεύθερο Λογισμικό & Λογισμικό Ανοικτού Κώδικα

ΠΡΟΑΙΡΕΤΙΚΑ ΣΕΜΙΝΑΡΙΑ Πληροφορική και Επιστήμη Ηλεκτρονικών Υπολογιστών

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

Ανάπτυξη και διανομή ενός έργου Ελεύθερου Λογισμικού

Ελεύθερο Ανοικτό Λογισμικό

Εγκατάσταση και Απεγκατάσταση Ubuntu 7.10

Linux με τη χρήση κονσόλας

ΒασικέςέννοιεςτουUNIX: Πλοήγηση στο Σύστημα Αρχείων, ΟφλοιόςτουUNIX, Βοηθητικά Προγράμματα, ΗδομήτουΠυρήνα.

LINUX. Εισαγωγή. Τί είναι το Linux;

Σε αυτό το εργαστήριο θα εγκαταστήσουμε μια διανομή Linux Fedora Core 4 από DVD. Παρακάτω ακολουθούν τα βήματα της εγκατάστασης.

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Αγροτική Ανάπτυξη Περιβάλλον

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Λειτουργικό Σύστημα Linux ~ Μια σύντομη εισαγωγή

Journal of the Graduate School of the Chinese Academy of Sciences. Application Dependent Software. Standard Application Components.

qemu img create linux.img f raw 2G

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview

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

Εισαγωγή στο Gentoo Linux

28η Συνάντηση Εκπαιδευτικών Δυτικής Μακεδονίας στις ΤΠΕ Φλώρινα 7/4/2013. To wordpress εγκατάσταση στο ΠΣΔ

To FreeBSD Project To Λειτουργικό Σύστημα Η Κοινότητα Η Ελληνική Ομάδα. Μανώλης Κιαγιάς Καθηγητής Πληροφορικής FreeBSD Project Committer

Εισηγητής καθηγητής Μπαρµπουνάκης Ιωάννης. Εργάστηκαν Λυτοπούλου Αντιγόνη

Οόρος«thin» 13η Συνάντηση Εκπαιδευτικών Πληροφορικής. Thinclients 2/4. Υπολογιστικό μοντέλο Thinclients 1/4. Τεχνολογία Τhinclient Edubuntu LTSP

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

Ubuntu / LTSP / sch-scripts

Κεφάλαιο 10 Διαχείριση Αρχείων και Καταλόγων

Το gzip(1) είναι ένα GNU πρόγραμμα συμπίεσης. Παίρνει ένα απλό αρχείο και το συμπιέζει. Η βασική χρήση είναι ως ακολούθως: % gzip όνομααρχείου

Users / Groups / Permissions. Πώς ξεκίνησε η ανάγκη για πολλαπλούς χρήστες σε ένα σύστημα;

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

ΣΕΠΕΗΥ με Ubuntu/LTSP Διαχείριση ΣΕΠΕΗΥ με Ubuntu/LTSP

Εγκατάσταση και Διαχείριση Σχολικών Εργαστηρίων με Λογισμικό Ανοικτού Κώδικα

... Πίνακας περιεχοµένων. Εισαγωγή Μέρος I: Το πρώτο βάπτισµα...25

1. ΕΙΣΑΓΩΓΗ ΣΤΟ GRASS GIS 1.1. ΤΙ ΕΙΝΑΙ ΤΟ GRASS GIS ;

Ενσωματωμένα Συστήματα

GreekLUG Ελεύθερο Λογισμικό & Λογισμικό Ανοικτού Κώδικα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Επισκόπηση Λ.Σ. Εργαστηριακές Ασκήσεις

Οδηγός αναβάθμισης των Windows 8 βήμα προς βήμα ΕΜΠΙΣΤΕΥΤ ΚΟ 1/53

Ένωση Ελλήνων Χρηστών και Φίλων ΕΛ/ΛΑΚ

Εγκατάσταση του PiNet για διαχείριση εργαστηρίου με Raspberry Pi. Συγγραφέας: Τριχόπουλος Γιώργος Δεκέμβριος 2016

ΠΕΡΙΓΡΑΜΜΑ ΑΝΑΛΥΤΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Β ή Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ ΕΝΔΙΑΦΕΡΟΝΤΟΣ: ΠΛΗΡΟΦΟΡΙΚΗ Ι

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. 4o Εργαστήριο Σ.Α.Ε

Άδεια Δημόσιας Χρήσης GNU

Προγραμματισμός και Διαχείριση Συστημάτων ΙΙ

Users (Χρήστες) Κατανοµή προνοµίων (πρόσβαση σε αρχεία, έλεγχος διεργασιών κλπ) σύµφωνα µε συµβάσεις.

Αγροτική Ανάπτυξη Περιβάλλον

Περιεχόμενα. 1 Εισαγωγή στο λογισμικό ανοιχτού κώδικα/ελεύθερο λογισμικό Διαχείριση σκληρού δίσκου με το εργαλείο gparted (live CD)...

Ειδικό Τεύχος : Linux και Ηχος. Η Υποδοµή

Οδηγός αναβάθμισης των Windows 8 βήμα προς βήμα ΕΜΠΙΣΤΕΥΤΙΚΟ 1/53

Μια εισαγωγή στο Linux με την διανομή Fedora. Βάιος Κολοφωτιάς MSc Informational Systems

Λειτουργικά. Συστήματα Ι. Εγκατάσταση Ιδεατής Μηχανής. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Δημιουργία δικτυακού ghost χρησιμοποιώντας το ghost console

GreekLUG Ελεύθερο Λογισμικό & Λογισμικό Ανοικτού Κώδικα

Μερικές άλλες χρήσιμες εντολές

Ó³ Ÿ , º 1(206).. 125Ä132. Œ ˆŠ ˆ ˆ Š ƒ Š ˆŒ. Ñ Ò É ÉÊÉ Ö ÒÌ ² μ, Ê

ιεργασία Α Πυρήνας Linux Υλικό

sch-scripts Προσαρμογή του Ubuntu για τα ελληνικά σχολεία

Εργαστήριο ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ UNIX

Εισαγωγή στην Πληροφορική

Περιβάλλον KDE / KTurtle Τεχνική αναφορά TMA Logo/Kturtle: Έκδοση 1.0. Σεπτ 2009

Οδηγός Βήμα-Βήμα για να εγκαταστήσετε τα Windows 7 στον Η/Υ σας

Πώς να ανοίξω το τερματικό στους υπολογιστές της σχολής

Γιατί OpenOffice;;; (2)

Κατανεμημένα Συστήματα

Βοηθητικό πρόγραµµα Setup Οδηγός χρήσης

Εισαγωγή στο λειτουργικό σύστηµα Unix

Salix Live Οδηγός Εκκίνησης. Salix OS. Salix Live. Εγκατάσταση Salix OS. Προσαρμογή Salix Live. Κύριο ευρετήριο

Εισαγωγή στο Linux. Κοινότητα Ελεύθερου Λογισμικού & Λογισμικού Ανοιχτού Κώδικα ΟΠΑ. Εισαγωγή στο Linux 09/05/2009

Σύντομη εισαγωγή στο Unix

Open eclass Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System)

Writing kernels for fun and profit

Μανώλης Κιαγιάς, MSc. Aiolos Project. Αρχικές Ρυθμίσεις SSH και εγκατάσταση OpenMPI

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

GreekLUG Ελεύθερο Λογισμικό & Λογισμικό Ανοικτού Κώδικα

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5

Εγκατάσταση του εκτυπωτή από το CD λογισμικού και τεκμηρίωσης

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ

Παράρτηµα Α : Εισαγωγή στο Linux.

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

% ls -l /usr/bin/wc -rwxr-xr-x 1 root bin 7368 Jul /usr/bin/wc

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΜΟΝΑΔΑ ΑΡΙΣΤΕΙΑΣ ΕΛ/ΛΑΚ

Mε την ονομασία Unix ή μάλλον Unix-like αναφερόμαστε

Λειτουργικό Σύστημα: διαχείριση πόρων. Τι είναι ένα αρχείο ; Διαχείριση αρχείων. Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

SCRIPTUM. Οδηγός Εγκατάστασης SCRIPTUM

Λιβανός Γιώργος Εξάμηνο 2017Β

Λειτουργικά Συστήµατα

Δίκτυα Υπολογιστών Ι. Εγκατάσταση του Network Simulator-2 σε περιβάλλον Cygwin. Δ. Καρβουνάς, Δρ. Κ. Τσαγκάρης, Καθηγ. Π.

Computer Setup Οδηγός χρήσης

Ένωση Ελλήνων Χρηστών και Φίλων ΕΛ/ΛΑΚ

Από το CUDOS και το Semion στον οργανισμό Creative Commons και στο Open Knowledge Foundation

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

Ελεύθερο Λογισμικό και GNU/Linux

Transcript:

ΑΝΑΠΤΥΞΗ ΔΙΑΝΟΜΗΣ LINUX ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΣΤΙΣ ΑΝΑΓΚΕΣ ΤΟΥ ΤΜΗΜΑΤΟΣ Η.Υ.Σ. από τον Τσεσμελή Θεόδωρο Υποβάλεται στο Ανώτατο Τεχνολογικό Εκπαιδευτικό Ίδρυμα Πειραιά ως μερική συμπλήρωση των απαιτήσεων για την απόκτηση Πτυχίου Μηχανικού Ηλεκτρονικών Υπολογιστικών Συστημάτων Τμήμα Ηλεκτρονικών Υπολογιστικών Συστημάτων Σεπτέμβριος-2009

Περίληψη Ο σκοπός της διπλωματικής εργασίας ήταν η ανάπτυξη μιας διανομής Linuxαπό το μηδέν για τις ανάγκες των σπουδαστών του τμήματος Ηλεκτρονικών Υπολογιστικών Συστημάτων. Η διανομή θα περιείχε όλα τα προγράμματα που διαχειρίζεται ένας σπουδαστής του τμήματος καθ' όλη τη διάρκεια σπουδών του στο τμήμα και έχουν σχέση με το εκπαιδευτικό υλικό, τόσο των θεωριών όσο και των αντίστοιχων εργαστηρίων, των μαθημάτων. Συγκεκριμένα, περιγράφονται η όλη διαδικασία δημιουργίας του απαραίτητου περιβάλλοντος εργασίας, τα βήματα δημιουργίας της βασικής δομής της διανομής, τα βήματα επέκτασης του βασικού κορμού σε μία μορφή πιο προσιτή στον χρήστη και τέλος παρουσιάζεται ο τρόπος μεταφοράς του τελικού σταδίου της διανομής σε κάποιο εξωτερικό μέσο εγγραφής (cddvd, usb stick,...) για την χρησιμοποίηση του. Επίσης γίνεται αναφορά στη δημιουργία και χρησιμοποίηση των αδειών (Licences) ανοικτού κώδικα. Η μεθοδολογία αυτή μπορεί να γίνει οδηγόςκαι να αποτελέσει τη βάση για τη δημιουργία και την πραγματοποίηση μιας διανομής η οποία δεν θα έχει να ζηλέψει σε τίποτα τις εμπορικές διανομές που αναπτύσσονται από διάφορες εταιρείες στον τομέα του open source development. Η γενικότητα της μεθοδολογίας έγκειται στο γεγονός ότι έχουν καταγραφεί όλα τα βήματα που εξασφαλίζουν την λειτουργικότητα και την αυτοδυναμία του συγκεκριμένου project. Επιστημονική Περιοχή: Ανάπτυξη Λειτουργικού Συστήματος Λέξεις Κλειδιά: Live-cd, Linux, Distribution, Compilation, Open Source xi

Περιεχόμενα ΚΕΦΑΛΑΙΟ 1. ΠΡΌΛΟΓΟΣ... 1 ΚΕΦΑΛΑΙΟ 2. ΕΙΣΑΓΩΓΉ... 3 2.1. ΜΙΑ ΣΥΝΟΠΤΙΚΉ ΑΝΑΦΟΡΆ ΣΤΗΝ ΙΣΤΟΡΊΑ ΤΟΥ GNU/LINUX... 3 ΚΕΦΑΛΑΙΟ 3. ΔΙΑΔΙΚΑΣΊΑ ΕΚΚΊΝΗΣΗΣ... 9 ΚΕΦΑΛΑΙΟ 4. ΤΎΠΟΙ ΔΊΣΚΩΝ (DISK TYPES)... 13 ΚΕΦΑΛΑΙΟ 5. LIVE CD-DVD... 15 5.1. ΙΣΤΟΡΊΑ... 15 5.2. ΠΡΟΈΛΕΥΣΉ ΤΩΝ LINUX LIVE CDS... 16 5.3. ΧΡΉΣΕΙΣ... 17 5.4. ΕΝΌΤΗΤΕΣ LIVE CDS... 18 5.5. ΤΑ LIVE CD ΩΣ ΣΥΣΚΕΥΈΣ ΛΟΓΙΣΜΙΚΟΎ... 20 5.5.1. Κοινά Γνωρίσματα... 20 5.5.2. Η τεχνική... 21 5.5.3. El Torito... 22 5.5.3.1. Πως δουλεύει... 22 ΚΕΦΑΛΑΙΟ 6. LINUX BOOT LOADERS... 23 6.1. ΕΙΣΑΓΩΓΉ... 23 6.2. ΠΩΣ ΛΕΙΤΟΥΡΓΟΎΝ ΟΙ BOOT LOADERS... 23 6.2.1. Τι κάνει το BIOS για εμάς... 23 6.3. ΜΈΡΗ ΕΝΌΣ BOOT LOADER... 25 6.4. GRUB... 26 6.5. SYSLINUX/ISOLINUX... 26 6.6. ΠΟΥ ΜΠΟΡΟΎΝ ΟΙ BOOT LOADERS ΝΑ ΖΉΣΟΥΝ... 28 ΚΕΦΑΛΑΙΟ 7. THE KERNEL Ο ΠΥΡΉΝΑΣ... 29 7.1. ΦΟΡΤΏΝΟΝΤΑΣ ΤΟΝ ΠΥΡΉΝΑ-KERNEL... 29 ΚΕΦΑΛΑΙΟ 8. ΔΟΜΉ ΤΟΥ ROOT FILESYSTEM... 33 8.1. ΣΚΟΠΌΣ... 33 8.2. BIN : ΠΡΟΓΡΆΜΜΑΤΆ ΑΝΑΓΚΑΊΑ ΣΤΟΝ ΧΡΉΣΤΗ (ΓΙΑ ΧΡΉΣΗ ΑΠΌ ΌΛΟΥΣ ΤΟΥΣ ΧΡΉΣΤΕΣ ΤΟΥ ΣΥΣΤΉΜΑΤΟΣ)... 34 8.3. BOOT : ΣΤΑΤΙΚΆ ΑΡΧΕΊΑ ΤΟΥ BOOT LOADER... 34 8.4. DEV : ΑΡΧΕΊΑ ΣΥΣΚΕΥΏΝ... 35 8.5. ETC : ΑΡΧΕΊΑ ΚΑΙ ΚΑΤΆΛΟΓΟΙ ΡΎΘΜΙΣΗΣ ΤΟΥ ΣΥΣΤΉΜΑΤΟΣ... 35 8.6. HOME : ΕΓΧΏΡΙΟΙ ΚΑΤΆΛΟΓΟΙ ΧΡΗΣΤΏΝ... 35 8.7. LIB : ΚΟΙΝΈΣ ΑΝΑΓΚΑΊΕΣ ΒΙΒΛΙΟΘΉΚΕΣ ΚΑΙ KERNEL MODULES... 35 8.8. MEDIA : MOUNT POINT ΓΙΑ REMOVEABLE MEDIA... 36 8.9. MNT : MOUNT POINT ΓΙΑ ΠΡΟΣΩΡΙΝΆ MOUNTED FILESYSTEMS... 36 8.10. OPT : ΠΡΌΣΘΕΤΑ ΠΑΚΈΤΑ ΠΡΟΓΡΑΜΜΆΤΩΝ ΕΦΑΡΜΟΓΏΝ... 36 8.11. ROOT : Ο ΕΓΧΏΡΙΟΣ ΚΑΤΆΛΟΓΟΣ ΓΙΑ ΤΟΝ ΧΡΉΣΤΗ ROOT... 37 8.12. SBIN : SYSTEM BINARIES... 37 8.13. SRV : ΣΤΟΙΧΕΊΑ ΓΙΑ ΤΙΣ ΥΠΗΡΕΣΊΕΣ ΠΟΥ ΠΑΡΈΧΟΝΤΑΙ ΓΙΑΑΥΤΌ ΤΟ ΣΎΣΤΗΜΑ... 37 8.14. TMP : ΠΡΟΣΩΡΙΝΆ ΑΡΧΕΊΑ ΚΑΙ ΦΆΚΕΛΟΙ... 38 8.15. USR... 38 8.16. VAR... 38 8.17. PROC : ΠΛΗΡΟΦΟΡΊΕΣ ΓΙΑ ΤΟΝ ΠΥΡΉΝΑ ΚΑΙ ΤΙΣ ΔΙΕΡΓΑΣΊΕΣ... 39 xv

ΚΕΦΑΛΑΙΟ 9. ΔΙΑΔΙΚΑΣΊΑ ΔΗΜΙΟΥΡΓΊΑΣ ΤΟΥ ΠΕΡΙΕΧΟΜΈΝΟΥ ΕΝΌΣ LIVE CD DVD... 41 9.1. ΑΠΑΙΤΉΣΕΙΣ ΤΟΥ ΣΥΣΤΉΜΑΤΟΣ ΠΟΥ ΘΑ ΦΙΛΟΞΕΝΉΣΕΙ ΤΟ PROJECT... 41 9.2. ΔΗΜΙΟΥΡΓΊΑ ΚΑΙΝΟΎΡΓΙΟΥ PARTITION... 44 9.3. ΔΗΜΙΟΥΡΓΊΑ ΤΟΥ FILESYSTEM ΤΟΥ PARTITION... 45 9.4. MOUNTING ΤΟΥ ΚΑΙΝΟΎΡΓΙΟΥ PARTITION... 45 9.5. ΔΗΜΙΟΥΡΓΊΑ ΤΟΥ ΧΡΉΣΤΗ ECSX... 47 9.6. ΡΥΘΜΊΖΟΝΤΑΣ ΤΟ ΠΕΡΙΒΆΛΛΟΝ... 48 9.7. ΚΑΤΑΣΚΕΥΉ ΤΟΥ ΠΡΟΣΩΡΙΝΟΎ ΣΥΣΤΉΜΑΤΟΣ... 49 9.7.1. Τεχνικά Σημεία του Toolchain... 49 9.7.2. Binutils-2.19.1 - Pass 1... 51 9.7.3. GCC-4.4.0 - Pass 1... 51 9.7.4. Linux-2.6.29.3 API Headers... 52 9.7.5. Glibc-2.9... 53 9.7.6. Adjusting the Toolchain... 54 9.7.7. Binutils-2.19.1 - Pass 2... 54 9.7.8. GCC-4.4.0 - Pass 2... 55 9.7.9. Tcl-8.5.7... 57 9.7.10. Expect-5.43.0... 58 9.7.11. DejaGNU-1.4.4... 58 9.7.12. Ncurses-5.7... 59 9.7.13. Bash-4.0... 59 9.7.14. Bzip2-1.0.5... 60 9.7.15. Coreutils-7.4... 60 9.7.16. Diffutils-2.8.1... 61 9.7.17. E2fsprogs-1.41.5... 61 9.7.18. Findutils-4.4.1... 62 9.7.19. Gawk-3.1.6... 63 9.7.20. Gettext-0.17... 63 9.7.21. Grep-2.5.4... 64 9.7.22. Gzip-1.3.12... 64 9.7.23. M4-1.4.13... 65 9.7.24. Make-3.81... 65 9.7.25. Patch-2.5.9... 66 9.7.26. Perl-5.10.0... 67 9.7.27. Sed-4.2... 67 9.7.28. Tar-1.22... 68 9.7.29. Texinfo-4.13a... 68 9.7.30. Util-linux-ng-2.14.2... 69 9.7.31. Stripping... 69 9.7.32. Αλλαγή δικαιωμάτων... 70 9.8. ΕΓΚΑΤΆΣΤΑΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΎ ΤΗΣ ΒΑΣΙΚΉΣ ΔΟΜΉΣ ΤΗΣ ΔΙΑΝΟΜΉΣ... 70 9.8.1. Προετοιμασία των Virtual Kernel File Systems... 71 9.8.2. Εισαγωγή στο περιβάλλον chroot... 72 9.8.3. Δημιουργία καταλόγων... 72 9.8.4. Δημιουργία των αναγκαίων αρχείων και συνδέσμων... 74 9.8.5. Linux-2.6.29.3 API Headers... 76 9.8.6. Man-pages-3.21... 77 9.8.7. Glibc-2.9... 78 9.8.8. Επαναπροσδιορισμός του Toolchain... 81 9.8.9. Zlib-1.2.3... 82 9.8.10. Binutils-2.19.1... 83 9.8.11. GMP-4.3.0... 84 xvi

9.8.12. MPFR-2.4.1... 85 9.8.13. GCC-4.4.0... 85 9.8.14. Berkeley DB-4.7.25... 86 9.8.15. Sed-4.2... 87 9.8.16. E2fsprogs-1.41.5... 88 9.8.17. Coreutils-7.4... 89 9.8.18. Iana-Etc-2.30... 90 9.8.19. M4-1.4.13... 90 9.8.20. Bison-2.4.1... 91 9.8.21. Ncurses-5.7... 92 9.8.22. Procps-3.2.7... 93 9.8.23. Grep-2.5.4... 94 9.8.24. Readline-6.0... 94 9.8.25. Bash-4.0... 95 9.8.26. Libtool-2.2.6a... 96 9.8.27. Inetutils-1.6... 96 9.8.28. Perl-5.10.0... 97 9.8.29. Autoconf-2.63... 98 9.8.30. Automake-1.10.2... 99 9.8.31. Bzip2-1.0.5... 99 9.8.32. Diffutils-2.8.1... 100 9.8.33. File-5.00... 101 9.8.34. Gawk-3.1.6... 102 9.8.35. Findutils-4.4.1... 102 9.8.36. Flex-2.5.35... 103 9.8.37. Gettext-0.17... 105 9.8.38. Groff-1.20.1... 105 9.8.39. Gzip-1.3.12... 106 9.8.40. IPRoute2-2.6.29-1... 107 9.8.41. Kbd-1.15... 107 9.8.42. Less-429... 108 9.8.43. Make-3.81... 109 9.8.44. Man-DB-2.5.5... 109 9.8.45. Module-Init-Tools-3.8... 111 9.8.46. Patch-2.5.9... 111 9.8.47. Psmisc-22.6... 112 9.8.48. Shadow-4.1.3.1... 113 9.8.49. Sysklogd-1.5... 114 9.8.50. Sysvinit-2.86... 115 9.8.51. Tar-1.22... 118 9.8.52. Texinfo-4.13a... 118 9.8.53. Udev-141... 119 9.8.54. Util-linux-ng-2.14.2... 120 9.8.55. Vim-7.2... 121 9.9. ΚΑΘΑΡΙΣΜΌΣ... 123 9.10. ΕΓΚΑΤΆΣΤΑΣΗ ΤΩΝ BOOTSCRIPTS ΤΟΥ ΣΥΣΤΉΜΑΤΟΣ... 124 9.10.1. Πως λειτουργούν αυτά τα Bootscripts... 125 9.10.2. Setclock Script... 126 9.10.3. Linux Console... 127 9.10.4. Το αρχείο /etc/inputrc... 128 9.10.5. Αρχεία εκκίνησης Bash Shell... 131 9.10.6. Εφαρμογή του Udev... 137 9.10.6.1. Sysfs... 137 9.10.6.2. Udev Bootscript... 137 xvii

9.10.6.3. Δημιουργία Device Node... 138 9.10.6.4. Φόρτωση των Modules... 138 9.10.6.5. Χειρισμός Hotpluggable/δυναμικών συσκευών... 139 9.10.7. Localnet Script... 139 9.10.8. Το αρχείο /etc/hosts... 139 9.10.9. Νetwork Scripts... 140 9.10.10. Ο κατάλογος /etc/profile.d... 142 9.10.10.1. etc/profile.d/dircolors.sh... 143 9.10.10.2. etc/profile.d/extrapaths.sh... 143 9.10.10.3. etc/profile.d/readline.sh... 144 9.10.10.4. etc/profile.d/umask.sh... 145 9.10.10.5. etc/profile.d/x.sh... 145 9.10.10.6. etc/profile.d/i18n.sh... 146 9.10.11. etc/bashrc... 146 9.10.12. etc/dircolors... 148 9.10.13. etc/shells... 148 9.10.14. Γεννήτρια Τυχαίων Αριθμών... 149 9.11. ΔΗΜΙΟΥΡΓΊΑ ΤΟΥ BOOTDISK... 150 9.11.1. Linux-2.6.29.3... 150 9.11.1.1. Squashfs... 150 9.11.1.2. Unionfs... 151 9.11.2. GRUB-0.97... 153 9.12. ΚΛΕΊΣΙΜΟ... 154 ΚΕΦΑΛΑΙΟ 10. ΜΕΤΑΦΟΡΆ ΤΟΥ ΣΥΣΤΉΜΑΤΟΣ ΣΕ ΚΆΠΟΙΟ ΟΠΤΙΚΌ ΜΈΣΟ(CD-DVD) Ή ΣΕ ΚΆΠΟΙΟ USB STICK... 155 10.1. ΔΗΜΙΟΥΡΓΊΑ ΤΟΥ LINUX FILESYSTEM... 155 10.2. ΤΟ ΧΤΊΣΙΜΟ... 155 10.3. ΧΤΊΣΙΜΟ ΤΟΥ INITRD... 161 10.4. ΔΗΜΙΟΥΡΓΊΑ ΤΟΥ ΑΡΧΕΊΟΥ ISO ΓΙΑ ΤΟ CD... 167 ΚΕΦΑΛΑΙΟ 11. ΚΑΤΑΝΟΏΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΌ ΑΝΟΙΚΤΟΎ ΚΏΔΙΚΑ ΆΔΕΙΕΣ ΛΟΓΙΣΜΙΚΟΎ (SOFTWARE LICENSES)... 169 11.1. ΤΙ ΕΊΝΑΙ ΛΟΓΙΣΜΙΚΌ ΑΝΟΙΚΤΟΎ ΚΏΔΙΚΑ;... 169 11.2. ΒΑΣΙΚΈΣ ΑΡΧΈΣ ΤΟΥ ΝΌΜΟΥ ΔΙΚΑΙΩΜΆΤΩΝ ΠΝΕΥΜΑΤΙΚΉΣ ΙΔΙΟΚΤΗΣΊΑΣ... 171 11.3. ΤΎΠΟΙ ΑΔΕΙΏΝ ΑΝΟΙΚΤΟΎ ΚΏΔΙΚΑ... 172 11.4. Η ΓΕΝΙΚΉ ΔΗΜΌΣΙΑ ΆΔΕΙΑ GNU (GENERAL PUBLIC LICENSE)... 175 11.5. ΤΙ ΕΊΝΑΙ ΜΙΑ ΠΑΡΆΓΩΓΟΣ ΕΡΓΑΣΊΑ;... 178 11.6. ΣΕ ΠΟΙΆ ΣΗΜΕΊΑ ΣΤΈΚΕΤΑΙ Ο ΝΌΜΟΣ ΓΙΑ ΤΙΣ ΠΑΡΆΓΩΓΕΣ ΕΡΓΑΣΊΕΣ ΣΤΟ ΛΟΓΙΣΜΙΚΌ;... 179 11.7. ΠΏΣ ΑΥΤΈΣ ΟΙ ΔΟΚΙΜΈΣ ΕΦΑΡΜΌΖΟΝΤΑΙ ΣΤΙΣ ΠΑΡΆΓΩΓΕΣ ΕΡΓΑΣΊΕΣ ΛΟΓΙΣΜΙΚΟΎ ΑΝΟΙΚΤΟΎ ΚΏΔΙΚΑ;... 181 11.8. ΜΎΘΟΙ ΓΙΑ ΤΟΝ ΑΝΟΙΚΤΌ ΚΏΔΙΚΑ... 182 ΠΑΡΑΡΤΉΜΑΤΑ... 187 ΠΑΡΆΡΤΗΜΑ A. ΈΞΤΡΑ ΠΡΟΓΡΆΜΜΑΤΆ ΕΓΚΑΤΆΣΤΑΣΗΣ... 187 ΠΑΡΆΡΤΗΜΑ B. ΠΑΚΈΤΑ ΚΑΙ PATCHES... 201 ΠΑΡΆΡΤΗΜΑ C. ΓΕΝΙΚΉ ΆΔΕΙΑ ΔΗΜΌΣΙΑΣ ΧΡΉΣΗΣ (GNU GPL)... 215 ΒΙΒΛΙΟΓΡΑΦΊΑ... 225 xviii