Linux, LFS, GNU Και Μερικά Ενδιαφέροντα Για Τον Υπολογιστή Σας

0Shares

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

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

Linux, LFS, GNU

Αυτό το άρθρο επικεντρώνεται σε ένα μόνο σημείο κάνοντας τη δική σας διανομή Linux. Μέχρι μερικά χρόνια πίσω στους περισσότερους από εμάς οι απλοί θνητοί, η δημιουργία διανομής Linux ήταν απλώς ένα όνειρο, αλλά στη συνέχεια χάρη στον Gerard Beekmans, τον αρχηγό του έργου και τον εκκινητή του έργου Linux From Scratch (LFS), αυτό το όνειρο έγινε εύκολο.

Η πρώτη ερώτηση που θα θέλατε είναι:

Γιατί Θα Ήθελα Ένα σύστημα LFS;

Όπως έχει ληφθεί από τον ιστότοπο LFS στο Gerard Beekmans τα ίδια λόγια.

Υπάρχουν πολλοί λόγοι για τους οποίους κάποιος θα ήθελε να εγκαταστήσει ένα σύστημα LFS. Το ερώτημα που θέτουν οι περισσότεροι είναι “γιατί να περάσετε από την ταλαιπωρία της μη αυτόματης εγκατάστασης ενός συστήματος Linux από το μηδέν όταν μπορείτε να κατεβάσετε μια υπάρχουσα διανομή;”. Αυτή είναι μια έγκυρη ερώτηση την οποία ελπίζω να απαντήσω για εσάς.

Ο πιο σημαντικός λόγος για την ύπαρξη του LFS είναι να διδάσκουμε στους ανθρώπους πώς λειτουργεί ένα σύστημα Linux εσωτερικά. Η δημιουργία ενός συστήματος LFS σάς διδάσκει όλα όσα κάνουν το Linux να τσεκάρει, πώς λειτουργούν τα πράγματα μαζί και εξαρτώνται το ένα από το άλλο. Και το πιο σημαντικό, πώς να το προσαρμόσετε στα γούστα και τις ανάγκες σας.

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

Ένα άλλο πλεονέκτημα του LFS είναι ότι μπορείτε να δημιουργήσετε ένα πολύ συμπαγές σύστημα Linux. Όταν εγκαθιστάτε μια κανονική διανομή, καταλήγετε να εγκαταστήσετε πολλά προγράμματα που πιθανώς δεν θα χρησιμοποιήσετε ποτέ.

Απλώς κάθονται εκεί καταλαμβάνουν (πολύτιμο) χώρο στο δίσκο. Δεν είναι δύσκολο να εγκαταστήσετε ένα σύστημα LFS κάτω από 100 MB.

Ακούγεται Ακόμα Πολύ;

Μερικοί από εμάς εργαζόμαστε για τη δημιουργία ενός πολύ μικρού ενσωματωμένου συστήματος LFS. Εγκαταστήσαμε ένα σύστημα που ήταν αρκετό για την εκτέλεση του διακομιστή ιστού Apache. Η συνολική χρήση χώρου στο δίσκο ήταν περίπου 8 MB. Με περαιτέρω απογύμνωση, αυτό μπορεί να μειωθεί στα 5 MB ή λιγότερο. Δοκιμάστε το με μια κανονική διανομή.

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

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

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

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

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

Ένας από τους λόγους για τους οποίους οι υπολογιστές Mac αποδίδουν καλύτερα από τους Intels είναι ότι το λογισμικό έχει κατασκευαστεί ειδικά για το υλικό και ως εκ τούτου κάποιος έχει όλα τα πλεονεκτήματα του υλικού.

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

Γενικά το LFS καταρτίζεται στο σύστημα προορισμού. Αυτό σημαίνει ότι το λογισμικό μπορεί να μεταγλωττιστεί για το συγκεκριμένο υλικό με αποτέλεσμα τη μέγιστη απόδοση. Μέχρι να εκτεθώ στο LFS, χρησιμοποιούσα τους ταχύτερους επεξεργαστές με τη μέγιστη ποσότητα RAM που μπορούσα να αντέξω. Αλλά τώρα είμαι ευχαριστημένος με ένα PIII 800.

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

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

Για αυτό το θέμα μπορούμε να έχουμε οποιοδήποτε σύστημα που μπορεί να μεταγλωττίσει τον κώδικα Linux, δηλαδή ένα σύστημα GNU με έναν μεταγλωττιστή GNU C ++ θα πρέπει να κάνει το κόλπο.

Αυτό Ονομάζεται Σύστημα Κεντρικού Υπολογιστή

Το σύστημα κεντρικού υπολογιστή μπορεί να είναι οποιαδήποτε γεύση του Linux, όπως:

  • Redhat
  • Fedora
  • Debian
  • Slackware κ.λπ.

ή οποιοδήποτε Unix όπως:

  • το FreeBSD
  • το NetBSD κ.λπ.

Το κεντρικό σύστημα θα πρέπει επίσης να είναι σε θέση να διαβάζει και να γράφει σε ένα σύστημα αρχείων που αναγνωρίζεται από τον πυρήνα Linux όπως:

  • ext3
  • ReiserFS
  • XFS κ.λπ.

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

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

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

Το πρόγραμμα chroot (αλλαγή ρίζας) χρησιμοποιείται στη συνέχεια για να εισέλθει σε ένα εικονικό περιβάλλον και να ξεκινήσει ένα νέο κέλυφος του οποίου ο ριζικός κατάλογος θα οριστεί στο διαμέρισμα LFS.

Στη συνέχεια, τα πακέτα LFS συντάσσονται σε αυτό το chroot περιβάλλον, μετά το οποίο εγκαθίστανται τα σενάρια εκκίνησης. Τέλος εγκαθίστανται ο πυρήνας και ο bootloader και το μηχάνημα επανεκκινείται στην ολοκαίνουργια προσαρμοσμένη διανομή Linux.

Η διαδικασία μπορεί να φαίνεται λίγο περίπλοκη, αλλά είναι διασκεδαστική εντελώς και τα αποτελέσματα είναι πραγματικά υπέροχα.

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