Μετάβαση στο περιεχόμενο

Arch Linux

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Arch Linux με γραφικό περιβάλλον KDE
Arch Linux
Γενικά
ΔημιουργοίLevente Polyak
Ημερ. ΔημιουργίαςΜάρτιος 2002
ΕίδοςGNU/Linux
Διανομή
Λειτουργικά
ΠυρήναςΜονολιθικός πυρήνας
Αρχιτεκτονικήx86-64,
i686 (έκδοση κοινότητας),
ARM (έκδοση κοινότητας)
ΕνημερώσειςPacman
Διαχείριση πακέτωνPacman
Διαθέσιμο σεΠολυγλωσσικό
Ανάπτυξη
ΤύποςΛειτουργικό σύστημα
Γραμμένο σεC
ΚατάστασηΕνεργό
Άδεια χρήσηςFree software (GNU GPL και άλλες)
Σύνδεσμοι
Επίσημος ιστότοπος
www.archlinux.org
Αποθετήριο κώδικα
https://git.archlinux.org/

Το Arch Linux (Αρτς Λίνουξ) είναι μια ανεξάρτητη διανομή Linux για επεξεργαστές x86-64, που αποτελείται κυρίως από ελεύθερο λογισμικό, ενθαρρύνει τη συμμετοχή στη κοινότητά του και απευθύνεται κυρίως σε προχωρημένους χρήστες.

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

Για την εγκατάσταση, απεγκατάσταση, και ενημέρωση των προγραμμάτων στο Arch Linux γράφτηκε ένας ειδικός διαχειριστής πακέτων, ο pacman. Το μοντέλο ενημερώσεων του Arch Linux είναι rolling-release, οπότε μετά την ενημέρωση του συστήματος όλες οι εφαρμογές βρίσκονται στην τελευταία διαθέσιμη έκδοση. Οι εικόνες για τα CD εγκατάστασης που εκδίδονται από την ομάδα του Arch Linux είναι απλά συλλογές πρόσφατων προγραμμάτων στην ημέρα κυκλοφορίας τους.

Το Arch Linux ξεκίνησε το Μάρτιο του 2002 από τον Judd Vinet, ο οποίος αποχώρησε από τα καθήκοντά του την 1η Οκτωβρίου του 2007. Έκτοτε καθήκοντα αρχηγού έχει αναλάβει ο Aaron Griffin[1].

Ξεκίνησε έχοντας υποστήριξη μόνο για 32-bit x86 αρχιτεκτονικές , ενώ από τον Απρίλιο του 2006 άρχισε να υποστηρίζει και x86_64 αρχιτεκτονικές επεξεργαστών[2]. Στις 25 Ιανουαρίου 2017, ανακοινώθηκε η διαδικασία τερματισμού υποστήριξης της αρχιτεκτονικής x86[3] ενώ στις 08 Νοεμβρίου του ίδιου έτους ανακοινώθηκε ο τερματισμός της υποστήριξής τους[4]. Από τότε είναι δυνατή η χρήση της εκδοχής Arch Linux 32 για υλισμικό i686.

Σχεδιασμός και αρχές

[Επεξεργασία | επεξεργασία κώδικα]

Ο διαχειριστής πακέτων του Arch Linux είναι σχεδιασμένος να δουλεύει με δυαδικά πακέτα και υποστηρίζει αρχιτεκτονικές i686 και x86-64. Επίσης υπάρχει ένα σύστημα σαν τα ports των BSD που ονομάζεται ABS (Arch Build System, Σύστημα Μεταγλώττισης Arch).

Επειδή το Arch Linux έχει σαν στόχο το μινιμαλισμό, η βοήθεια που παρέχει στο χρήστη δεν επεκτείνεται σε γραφικά εργαλεία (για παράδειγμα, ο διαχειριστής πακέτων δεν έχει κάποιο επίσημο γραφικό εργαλείο). Παρ' όλα αυτά χρησιμοποιεί πολύ καλά τεκμηριωμένα αρχεία ρυθμίσεων και αρκετά προγράμματα κελύφους. Εξαιτίας αυτού, θεωρείται μια διανομή Linux για έμπειρους χρήστες που είναι γνώστες της γραμμής εντολών[5].

Η φιλοσοφία του Arch Linux στοχεύει στην απλότητα. Η βάση του συστήματος είναι απλά το ελάχιστο, όμως μένει παρ' όλα αυτά λειτουργικό περιβάλλον GNU/Linux: ο πυρήνας Linux, τα εργαλεία GNU, και μερικά προαιρετικά, χρήσιμα πρόσθετα της γραμμής εντολών. Αυτή είναι μια βάση για την επέκταση του συστήματος έτσι όπως ο χρήστης απαιτεί.

Το Arch Linux προσπαθεί επίσης να είναι πάντα στην αιχμή. Τα πακέτα βρίσκονται συνήθως στην τελευταία διαθέσιμη εκδοσή τους (rolling release) και διαθέτουν πολλά από τις νεώτερες λειτουργία, όπως υποστήριξη σύγχρονων συστημάτων αρχείων (Ext2/3/4, Reiser, XFS, JFS), LVM2/EVMS, λογισμικού RAID, και των τελευταίων πυρήνων Linux.

Το πρόγραμμα εκκίνησης

[Επεξεργασία | επεξεργασία κώδικα]

Παλαιότερα, το Arch Linux χρησιμοποιούσε ένα σύστημα εκκίνησης εμπνευσμένο από τα συστήματα BSD, που είναι λιγότερο ευέλικτο αλλά απλούστερο. Επέτρεπε την χρήση των runlevel (σε στυλ System V) και του αρχείου inittab, αλλά υπήρχε μικρή διαφορά μεταξύ των runlevel: οι μονάδες εκκίνησης απλά αναφερόντουσαν στο κεντρικό αρχείο ρυθμίσεων, το /etc/rc.conf, σε αντίθεση με τον σχεδιασμό του System V, που λειτουργεί μέσω συμβολικών συνδέσμων μέσα σε φακέλους, που ο καθένας αντιστοιχεί σε ένα runlevel. Επίσης επιτρέπει την εκκίνηση μονάδων παράλληλα, αντί για σειριακά.

Το Arch Linux αυτή τη στιγμή χρησιμοποιεί το systemd ως σύστημα εκκίνησης, το οποίο έγινε προεπιλογή σε νέες εγκαταστάσεις από τον Οκτώβριο του 2012.

Η ιστοσελίδα του Arch Linux παρέχει εικόνες ISO που μπορούν να τρέξουν από ένα CD ή ένα στικάκι USB. Μέχρι την έκδοση 2011.08.19, το Σύστημα Εγκατάστασης Arch (AIF: Arch Installation Framework) ήταν διαθέσιμο, και στην ουσία ήταν ένα πρόγραμμα κελύφους που χρησιμοποιούσε κατά κόρον την εντολή dialog.

Ένας εναλλακτικός τρόπος εγκατάστασης περιλαμβάνει τη χρήση της στατικής έκδοσης του διαχειριστή πακέτων (pacman) από ένα άλλο λειτουργικό GNU/Linux[6]. Ο χρήστης μπορεί να φορτώσει το τμήμα δίσκου στο οποίο θέλει να γίνει η εγκατάσταση του συστήματος και να χρησιμοποιήσει τον pacman με τις κατάλληλες παραμέτρους ώστε να χρησιμοποιήσει εκείνο το τμήμα ως root. Έτσι μπορεί ο χρήστης να περάσει τα βασικά στοιχεία του νέου του συστήματος χειροκίνητα. Ωστόσο κάποιες ρυθμίσεις δεν μπορεί να τις κάνει από μόνος του ο pacman, όπως για παράδειγμα η εγκατάσταση ενός bootloader ή ο ορισμός του κωδικού του διαχειριστή.

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


Διαχείριση πακέτων

[Επεξεργασία | επεξεργασία κώδικα]

Όλα τα πακέτα ελέγχονται από τον διαχειριστή πακέτων του Arch Linux, τον pacman. Ο pacman χειρίζεται την εγκατάσταση, απεγκατάσταση, ανανέωση, και υποβάθμιση πακέτων, καθώς και την αυτόματη εγκατάσταση των προαπαιτούμενων πακέτων. Τα πακέτα του Arch Linux παρέχονται από τα αποθετήρια της διανομής και είναι βελτιστοποιημένα για αρχιτεκτονικές i686 και x86-64. Τα πακέτα που χρησιμοποιούσε ο pacman μέχρι το 2010 ήταν της μορφής .tar.gz, ενώ από το 2010 και μετά τα πακέτα που χρησιμοποιούνται κατά προτίμηση είναι της μορφής .tar.xz[7].

Επί του παρόντος, υπάρχουν τα ακόλουθα επίσημα αποθετήρια:

  • core (πυρήνας), που περιέχει όλα τα πακέτα που απαιτούνται για τη λειτουργία ενός βασικού συστήματος.
  • extra (επιπλέον), που περιέχει πακέτα που δεν απαιτούνται από το βασικό σύστημα, όπως προγράμματα και γραφικά περιβάλλοντα.
  • community (κοινότητα), που περιέχει πακέτα που ζητήθηκαν από την κοινότητα του Arch. Περιλαμβάνει πακέτα που έχουν αρκετές ψήφους και έχουν υιοθετηθεί από έναν "αξιόπιστο χρήστη".
  • multilib (πολλαπλών αρχιτεκτονικών), ένα αποθετήριο για χρήστες αρχιτεκτονικών x86-64, έτσι ώστε να υπάρχει καλύτερη υποστήριξη εφαρμογών 32-bit

Επιπροσθέτως υπάρχουν και τα αποθετήρια testing, που περιέχουν υποψήφια πακέτα για τα άλλα αποθετήρια:

  • testing (πειραματικά), με πακέτα για τα core και extra.
  • community-testing (πειραματικά κοινότητας), με πακέτα για το community.
  • multilib-testing (πειραματικά πολλαπλών αρχιτεκτονικών), με πακέτα για το multilib.

Δύο επιπρόσθετα αποθετήρια προσφέρουν πρόσφατες εκδόσεις συγκεκριμένων γραφικών περιβάλλοντων:

  • gnome-unstable, που περιέχει πακέτα μιας νέας έκδοσης λογισμικού του GNOME πριν εκδοθεί στο testing.
  • kde-unstable, που περιέχει πακέτα μιας νέας έκδοσης λογισμικού του KDE πριν εκδοθούν στο testing.

Το αποθετήριο unstable (ασταθές) καταργήθηκε τον Ιούλιο του 2008[8] και τα περισσότερα πακέτα του πήγαν σε άλλα αποθετήρια. Επίσης υπάρχουν πολλά ανεπίσημα αποθετήρια καθώς και το AUR (Βλ. παρακάτω).

Ασφάλεια Αποθετηρίων

[Επεξεργασία | επεξεργασία κώδικα]

Το Arch Linux έχει δεχθεί επιθέσεις για την έλλειψη υπογεγραμμένων πακέτων[9]. Τα πακέτα και τα μεταδεδομένα τους δεν ελέγχονται για την αυθεντικότητά τους κατά την εγκατάσταση, με αποτέλεσμα να είναι δυνατόν να υπάρχουν κακόβουλοι mirror που μπορούν να διακινδυνεύσουν την ασφάλεια ενός συστήματος[10].

Σύστημα Μεταγλώττισης Arch

[Επεξεργασία | επεξεργασία κώδικα]

Το Σύστημα Μεταγλώττισης Arch (ABS: Arch Build System) είναι ένα σύστημα δημιουργίας πακέτων, εμπνευσμένο από τα ports των BSD, που κάνει μεταγλώττιση πηγαία αρχεία κώδικα σε εκτελέσιμα αρχεία, τα οποία στη συνέχεια εγκαθίστανται από τον pacman[11]. Το ABS παρέχει έναν κατάλογο με προγράμματα κελύφους που λέγονται PKGBUILD, τα οποία επιτρέπουν οποιοδήποτε επίσημο πακέτο του Arch να παραμετροποιηθεί και να γίνει μεταγλώττιση. Επίσης, το ABS επιτρέπει την εκ νέου μεταγλώττιση ολόκληρου του συστήματος χρησιμοποιώντας αλλαγμένες παραμέτρους. Το εργαλείο makepkg μπορεί να χρησιμοποιηθεί για τη δημιουργία προσαρμοσμένων πακέτων .pkg.tar.xz από κώδικα τρίτων ατόμων. Τα τελικά πακέτα μπορούν να εγκατασταθούν και να ανανεωθούν από τον pacman, όπως τα επίσημα πακέτα.

Πέραν των αποθετηρίων υπάρχει το Αποθετήριο Χρηστών του Arch (AUR: Arch User Repository), που παρέχει PKGBUILD φτιαγμένα από χρήστες, και τα οποία δεν υπάρχουν στα επίσημα αποθετήρια. Τα PKGBUILD απλοποιούν τη μεταγλώττιση προγραμμάτων ορίζοντας και ελέγχοντας αν χρειάζονται προαπαιτούμενα πακέτα, καθώς και ορίζοντας κάποιες παραμέτρους απαραίτητες για το Arch Linux. Αυτά τα PKGBUILD μπορούν να τα κατεβάσουν οι χρήστες από την διεύθυνση http://aur.archlinux.org. Υπάρχουν ορισμένα προγράμματα που αυτοματοποιούν τη δημιουργία πακέτων με τα PKGBUILD που βρίσκονται στο AUR, αλλά αυτά δεν γίνεται να συμπεριληφθούν στα επίσημα αποθετήρια για λόγους ασφαλείας[12].

Το AUR παρέχει πακέτα στον χρήστη τα οποία δεν μπορεί να τα βρει στα επίσημα αποθετήρια. Οι λόγοι που γίνεται αυτό είναι οι ακόλουθοι:

  • Προβλήματα αδειών χρήσης. Λογισμικό που απαγορεύει την αναδιανομή, αλλά είναι δωρεάν, μπορεί να μπει στο AUR αφού το μόνο που αναδιανέμει το Arch Linux είναι τα PKGBUILD και όχι τα αρχεία/πακέτα. Παραδείγματα αυτών των προγραμμάτων είναι το Google Earth και το Real Player.
  • Αλλαγμένα επίσημα πακέτα. Το AUR περιλαμβάνει αλλαγμένες καθώς και δοκιμαστικές εκδόσεις των πακέτων που υπάρχουν στα επίσημα αποθετήρια. Για παράδειγμα, υπάρχουν ειδικές εκδόσεις του πυρήνα Linux για συγκεκριμένο υλικό υπολογιστών και beta εκδόσεις προγραμμάτων.
  • Δημοφιλία του λογισμικού. Προγράμματα που χρησιμοποιούνται σπάνια και δεν έχουν προστεθεί στα επίσημα αποθετήρια (ακόμα).
  • Ηλικία του λογισμικού. Κάποια προγράμματα είναι πολύ νέα και λιγότερο δοκιμασμένα από άλλα ώστε να μπουν σε επίσημα αποθετήρια, ή η χρήση τους είναι πολύ περιορισμένη. Ορισμένα παραδείγματα είναι το πακέτο "firefox-nightly", που δίνει καθημερινά builds του περιηγητή Firefox.

Τα PKGBUILD μπορούν να ανεβούν από απλούς χρήστες και οποιοδήποτε PKGBUILD δεν περιορίζεται από κάποιο λόγο, μπορεί να μπει στο αποθετήριο community, αν το ψηφίσουν αρκετοί χρήστες.

Όπως και το Gentoo, και σε αντίθεση με πολλές δημοφιλείς διανομές όπως το Ubuntu, το Arch Linux δεν ακολουθεί τακτικό πρόγραμμα κυκλοφοριών, αλλά χρησιμοποιεί ένα σύστημα που λέγεται rolling release κατά το οποίο καινούριες εκδόσεις σε πακέτων βγαίνουν καθημερινά. Ο διαχειριστής πακέτων βοηθάει τους χρήστες να μένουν πολύ εύκολα ενημερωμένοι[13]. Αντί να ενθαρρύνουν τους χρήστες να αλλάζουν εκδόσεις του λειτουργικού, οι κυκλοφορίες του Arch Linux είναι απλά ένα σύνολο από την τρέχουσα έκδοση των πακέτων των αποθετηρίων. Έτσι δεν έχει καμία διαφορά αν γίνεται εγκατάσταση του συστήματος από ένα CD/DVD που μόλις κυκλοφόρησε ή αν το σύστημα είναι παλαιότερο και έγινε ανανέωση των εγκατεστημένων πακέτων.

Από την έκδοση 2009.02 κυκλοφορούν καινούριες εκδόσεις του λειτουργικού συστήματος όταν βγαίνει καινούρια έκδοση του πυρήνα ώστε να υποστηρίζονται όσο το δυνατόν περισσότερες συσκευές.

Ιστορικό κυκλοφοριών[14]

[Επεξεργασία | επεξεργασία κώδικα]
Χρώμα Σημασία
Κίτρινο Παλιά κυκλοφορία
Πράσινο Τρέχουσα κυκλοφορία
Μπλε Μελλοντική κυκλοφορία
Έκδοση Ονομασία Ημερομηνία Σημειώσεις
0.1 Homer 2002-03-11 Πρώτη κυκλοφορία.
0.2 Vega 2002-04-17
0.3 Firefly 2002-08-07
0.4 Dragon 2002-12-18
0.5 Nova 2003-07-21 Υποστήριξη για PAM, LVM, GRUB.
0.6 Widget 2004-03-01 Προστέθηκε υποστήριξη για συστήματα αρχείων JFS και XFS.
0.7 Wombat 2005-01-24
0.8 Voodoo 2007-03-31
2007.05 Duke 2007-05-17 Pacman v3
2007.08 Don't Panic 2007-08-05
2008.06 Overlord 2008-06-24 Κυκλοφορία εικόνων για εγκατάσταση από USB.
2009.02 2009-02-16 Υποστήριξη για το AIF (Arch Linux Installation Framework).
2009.08 2009-08-10 Pacman 3.3, Χρήση του νέου συστήματος εγκατάστασης AIF, καλύτερη αναγνώριση για συσκευές εκκίνησης, καλύτερες ρυθμίσεις ημερομηνίας και ώρας .[15]
2010.05 2010-05-17 Πρώτη κυκλοφορία με υποστήριξη isohybrid, εικόνες διπλής αρχιτεκτονικής, χρήση μόνο isolinux και υποστήριξη pxe.
2011.08.19 2011-08-19 Πυρήνας 3.0.3, υποστήριξη syslinux 2, πειρατική υποστήριξη συστημάτων αρχείων btrfs and nilfs
2012.07.15 2012-07-22 Αφαιρέθηκε το AIF και αντικαταστάθηκε με απλούστερα προγράμματα κελύφους, τα μέσα είναι διαθέσιμα μόνο ως εικόνες netinstall, το αποθετήριο core αφαιρέθηκε από το μέσο εγκατάστασης
2012.08.04 2012-08-04 Το GRUB 2 είναι διαθέσιμο αντί του παλιού, 0.9.
2012.09.07 2012-09-07 Πυρήνας 3.5 (3.5.3), νεότερες εκδόσεις των initscripts, systemd και netcfg.
2012.10.06 2012-10-07 Το systemd χρησιμοποιείται στο μέσο εγκατάστασης, αλλά τα initscripts παραμένουν στο σύστημα, και η εκκίνηση / εγκατάσταση με EFI απλοποιήθηκε.
2012.11.01 2012-11-02 Πυρήνας 3.6 και παράμετρος εκκίνησης copytoram=n για να μην φορτώνεται ο δίσκος στη RAM κατά την εκκίνηση μέσω δικτύου.
2012.12.01 2012-12-01 Πυρήνας 3.6.8, systemd 196, και βελτιωμένη δημιουργία fstab με τα προγράμματα εγκατάστασης.
2013.01.04 2013-01-04 Πυρήνας 3.6.11 και άλλες μη-ανακοινωμένες αλλαγές.
2013.02.01 2013-02-01 Πυρήνας 3.7.5 και άλλες μη-ανακοινωμένες αλλαγές.
2023.12.01 2023-12-01 Πυρήνας 6.6.3

To τρέχον λογότυπο του Arch Linux σχεδιάστηκε από τον Thayer Williams το 2007 ως μέρος ενός διαγωνισμού για την αντικατάσταση του προηγούμενου λογότυπου.

  1. «Arch Linux Forums / Arch Leadership». Bbs.archlinux.org. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  2. «Arch Linux - News: Official Arch64 install cd available». www.archlinux.org (στα Αγγλικά). Ανακτήθηκε στις 19 Δεκεμβρίου 2017. 
  3. «Arch Linux - News: Phasing out i686 support». www.archlinux.org (στα Αγγλικά). Ανακτήθηκε στις 19 Δεκεμβρίου 2017. 
  4. «Arch Linux - News: The end of i686 support». www.archlinux.org (στα Αγγλικά). Ανακτήθηκε στις 19 Δεκεμβρίου 2017. 
  5. «PolishLinux.org Wiki: Archlinux». Wiki.polishlinux.org. Αρχειοθετήθηκε από το πρωτότυπο στις 2 Απριλίου 2014. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  6. «ArchWiki :: Install From Existing Linux — ArchWiki». Wiki.archlinux.org. 21 Νοεμβρίου 2009. Ανακτήθηκε στις 5 Δεκεμβρίου 2009. 
  7. Pierre Schmitz (23 Μαρτίου 2010). «Switching to xz compression for new packages». Archlinux.org. Ανακτήθηκε στις 23 Μαρτίου 2010. 
  8. «Arch Linux Newsletter 08-04-2008». Archlinux.org. Αρχειοθετήθηκε από το πρωτότυπο στις 27 Αυγούστου 2008. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  9. «Arch-general - Package signing 28-04-2010». pubbs.net. Αρχειοθετήθηκε από το πρωτότυπο στις 10 Απριλίου 2011. Ανακτήθηκε στις 15 Σεπτεμβρίου 2010. 
  10. «Attacks on Package Managers». cs.arizona.edu. Αρχειοθετήθηκε από το πρωτότυπο στις 5 Σεπτεμβρίου 2010. Ανακτήθηκε στις 14 Σεπτεμβρίου 2010. 
  11. «ArchWiki :: Arch Build System — ArchWiki». Wiki.archlinux.org. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  12. «INTERVJU: Arch Linux: Popular KISS distro — Interview — Part II». Hardware.no. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  13. «Arch Linux Review». DVD-Guides.com. Αρχειοθετήθηκε από το πρωτότυπο στις 8 Φεβρουαρίου 2013. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 
  14. «Arch Linux - Releases». archlinux.org. Ανακτήθηκε στις 26 Δεκεμβρίου 2023. 
  15. «News - 2009.08 images». Arch Linux. 10 Αυγούστου 2009. Ανακτήθηκε στις 19 Οκτωβρίου 2009. 

Εξωτερικοί σύνδεσμοι

[Επεξεργασία | επεξεργασία κώδικα]
  • Archlinux - Επίσημη σελίδα (Αγγλικά)
  • archlinux.gr - Ο ιστότοπος της ελληνικής κοινότητας του Archlinux (Ελληνικά)
  • [1] - Thread στο φόρουμ του Arch Linux για την Ελληνική κοινότητα (Ελληνικά)
  • DistroWatch - Η σελίδα για το Archlinux στο DistroWatch (Αγγλικά)