5.1. Ξεκινώντας τον εγκαταστάτη στην αρχιτεκτονική 64-bit ARM

[Σημείωση] Σημείωση

Για πληροφορίες σχετικά με την εκκίνηση του γραφικού εγκαταστάτη δείτε το Τμήμα 5.1.6, «Ο γραφικός Εγκαταστάτης».

5.1.1. Ρύθμιση της κονσόλας

Ο γραφικός εγκαταστάτης είναι (πειραματικά) ενεργοποιημένος για τις εικόνες της αρχιτεκτονικής arm64 debian-installer αλλά σε κάποιες συσκευές ίσως χρειάζεται ακόμα να χρησιμοποιήσετε την σειριακή κονσόλα. Αυτή η συσκευή κονσόλας θα πρέπει να ανιχνεύεται αυτόματα από το υλισμικό, αλλά αν αυτό δεν συμβεί, τότε θα δείτε, μετά την εκκίνηση στο linux από το μενού του GRUB, θα δείτε ένα μήνυμα «Booting Linux» και, στη συνέχεια, τίποτα άλλο.

Αν αντιμετωπίσετε αυτό το ζήτημα θα πρέπει να ορίσετε μια ρύθμιση για συγκεκριμένη κονσόλα στη γραμμή εντολών του πυρήνα. Πληκτρολογήστε e για γραμμή εντολών «Edit Kernel command-line» στο μενού του GRUB, και αλλάξτε το όρισμα

--- quiet

στο

console=<device>,<speed>

πχ.

console=ttyAMA0,115200n8

. Όταν τελειώσετε πληκτρολογήστε Control+x για να συνεχίσετε την εκκίνηση με τη νέα ρύθμιση.

5.1.2. Εγκατάσταση σε Juno

Το σύστημα Juno διαθέτει UEFI οπότε η εγκατάσταση είναι απλή. Η πιο πρακτική μέθοδος είναι η εγκατάσταση από ένα κλειδί USB. Χρειάζεστε ένα επικαιροποιημένο υλισμικό για να δουλέψει η εκκίνηση από το USB. Εκδόσεις του υλισμικού http://releases.linaro.org/members/arm/platforms/latest/ μετά τον Μάρτιο του 2015 έχουν δοκιμαστεί με επιτυχία. Συμβουλευτείτε την τεκμηρίωση της πλατφόρμας Juno σχετικά με την αναβάθμιση του υλισμικού.

Προετοιμάστε μια συνήθη εικόνα CD/DVD arm64 σε ένα κλειδί USB. Τοποθετήστε το σε μια από τις θύρες USB στην πίσω πλευρά. Συνδέστε ένα σειριακό καλώδιο στην πάνω σειριακή θύρα με τα 9-pin στην πίσω πλευρά. Αν χρειάζεστε δίκτυο (για μια εικόνα netboot) συνδέστε ένα καλώδιο ethernet στην υποδοχή στο μπροστινό μέρος του μηχανήματος.

Τρέξτε μια σειριακή κονσόλα στα 115200, 8bit no parity, και εκκινήστε το Juno. Θα πρέπει να ξεκινήσει από το κλειδί USB σε ένα μενού του GRUB. Η ρύθμιση της κονσόλας δεν ανιχνεύεται σωστά στο Juno οπότε πατώντας απλά το πλήκτρο Enter δεν θα εμφανίσει κάποιο αποτέλεσμα από τον πυρήνα. Περάστε αυτές τις ρυθμίσεις στην κονσόλα

console=ttyAMA0,115200n8

(όπως περιγράφεται στην ενότηταΤμήμα 5.1.1, «Ρύθμιση της κονσόλας»). Ο συνδυασμός Control+x για εκκίνηση θα πρέπει να σας εμφανίσει τις οθόνες του debian-installer, και να σας επιτρέψει να συνεχίσετε με μια κανονική εγκατάσταση.

5.1.3. Εγκατάσταση σε Applied Micro Mustang

Το UEFI είναι διαθέσιμο στο παρόν σύστημα αλλά συνήθως κυκλοφορεί με το U-Boot οπότε θα χρειαστεί είτε να εγκαταστήσετε πρώατα κάποιο υλισμικό για το UEFI και στη συνέχεια να χρησιμοποιήσετε τις συνηθισμένες μεθόδους εκκίνησης/εγκατάστασης. Θα πρέπει να χρησιμοποιήσετε μια σειριακή κονσόλα για τον έλεγχο της εγκατάστασης επειδή ο γραφικός εγκαταστάτης δεν είναι ενεργοποιημένος στην αρχιτεκτονική arm64.

Η συνιστώμενη μέθοδος εγκατάστασης είναι η αντιγραφή του debian-installer του πυρήνα και της initrd στον σκληρό δίσκο, χρησιμοποιώντας το openembedded σύστημα που παρέχεται με το μηχάνημα, και στη συνέχεια εκκινώντας από αυτό για την εκτέλεση του εγκαταστάτη. Εναλλακτικά χρησιμοποιείστε το TFTP για να αντιγράψετε και να εκκινήσετε τον πυρήνα, το "δέντρο" dtb και την initrd (Τμήμα 5.1.4.1, «Εκκίνηση με TFTP σε U-Boot»). Μετά την εγκατάσταση, θα χρειαστείτε κάποιες αλλαγές με το χέρι για να ξεκινήσετε από την εγκατεστημένη εικόνα.

Τρέξτε μια σειριακή κονσόλα στα 115200, 8bit no parity, και εκκινήστε το μηχάνημα. Επανεκκινήστε και όταν δείτε την οθόνη «Hit any key to stop autoboot:» πατήστε ένα πλήκτρο για να πάρετε ένα προτρεπτικό Mustang#. Στη συνέχεια χρησιμοποιείστε εντολές του U-Boot για να φορτώσετε και να εκκινήσετε τον πυρήνα, το αρχείο dtb και την αρχική εικόνα δίσκου μνήμης initrd.

5.1.4. Εκκίνηση με TFTP

H εκκίνηση από το δίκτυο προαπαιτεί ότι διαθέτετε μια δικτυακή σύνδεση και έναν δικτυακό TFTP server εκκίνησης (και πιθανόν επίσης έναν εξυπηρετητή DHCP, RARP, ή BOOTP για αυτόματη ρύθμιση του δικτύου).

Η ρύθμιση από την πλευρά του εξυπηρετητή για την υποστήριξη της δικτυακής εκκίνησης περιγράφεται στο Τμήμα 4.4, «Προετοιμασία Αρχείων για δικτυακή εκκίνηση με TFTP».

5.1.4.1. Εκκίνηση με TFTP σε U-Boot

Η εκκίνηση από το δίκτυο σε συστήματα που χρησιμοποιούν το υλισμικό U-Boot συνίσταται σε τρία βήματα: α) ρύθμιση του δικτύου, β) φόρτωση των εικόνων (kernel/initial ramdisk/dtb) στη μνήμη και γ) πραγματική εκτέλεση του κώδικα που έχει φορτωθεί προηγουμένως.

Πρώτα πρέπει να ρυθμίσετε το δίκτυο, είτε αυτόματα μέσω DHCP εκτελώντας την εντολή

setenv autoload no
dhcp

ή με το χέρι ορίζοντας αρκετές μεταβλητές περιβάλλοντος

setenv ipaddr <ip διεύθυνση του πελάτη>
setenv netmask <netmask>
setenv serverip <ip διεύθυνση του εξυπηρετητή tftp>
setenv dnsip <ip διεύθυνση του εξυπηρετητή ονοματοδοσίας>
setenv gatewayip <ip διεύθυνση της προεπιλεγμένης πύλης>

Αν το προτιμάτε, μπορείτε να κάνετε αυτές τις ρυθμίσεις μόνιμες εκτελώντας

saveenv

Στη συνέχεια θα πρέπει να φορτώσετε τις εικόνες (kernel/initial ramdisk/dtb) στη μνήμη. Αυτό γίνεται με την εντολή tftpboot, η οποία θα πρέπει να εκτελεστεί με τη διεύθυνση στην οποία θα αποθηκευτεί η εικόνα στη μνήμη. Δυστυχώς ο "χάρτης της μνήμης" (memory map) μπορεί να διαφέρει από σύστημα σε σύστημα, οπότε δεν υπάρχει γενικός κανόνας για το ποιες διευθύνσεις μπορούν να χρησιμοποιηθούν γι' αυτό.

Σε μερικά συστήματα, το U-Boot προκαθορίζει ένα σύνολο μεταβλητών περιβάλλοντος με κατάλληλες διευθύνσεις φόρτωσης: kernel_addr_r, ramdisk_addr_r και fdt_addr_r. Μπορείτε να ελέγξετε αν είναι ορισμένες εκτελώντας την εντολή

printenv kernel_addr_r ramdisk_addr_r fdt_addr_r

Αν δεν είναι ορισμένες, πρέπει να ελέγξετε την τεκμηρίωση του συστήματός σας για κατάλληλες τιμές και να τις θέσετε με το χέρι. Για συστήματα βασισμένα στις SoC Allwinner SunXi (πχ. τα Allwinner A10, όνομα αρχιτεκτονικής «sun4i» ή τα Allwinner A20, όνομα αρχιτεκτονικής «sun7i»), μπορείτε πχ. να χρησιμοποιήσετε τις ακόλουθες τιμές:

setenv kernel_addr_r 0x46000000
setenv fdt_addr_r 0x47000000
setenv ramdisk_addr_r 0x48000000

Όταν έχουν οριστεί οι διευθύνσεις φόρτωσης, μπορείτε να φορτώσετε τις εικόνες στη μνήμη από τον εκ των προτέρων καθορισμένο εξυπηρετητή tftp με

tftpboot ${kernel_addr_r} <filename of the kernel image>
tftpboot ${fdt_addr_r} <filename of the dtb>
tftpboot ${ramdisk_addr_r} <filename of the initial ramdisk image>

Το τρίτο μέρος είναι η ρύθμιση της γραμμές εντολών τιου πυρήνα και η εκτέλεση όντως του κώδικα που έχει φορτωθεί. Το U-Boot περνά το περιεχόμενα της μεταβλητής περιβάλλοντος «bootargs» ως γραμμή εντολής στον πυρήνα, οπότε οποιεσδήποτε παράμετροι για τον πυρήνα και τον εγκαταστάτη - όπως η συσκευή της κονσόλας (δείτε Τμήμα 5.3.1, «Boot serial console») ή επιλογές προρύθμισης (δείτε Τμήμα 5.3.2, «Παράμετροι του Εγκαταστάτη του Debian» και Παράρτημα B, Αυτοματοποίηση της εγκατάστασης με χρήση προρυθμίσεων (preseeding)) - μπορούν να τεθούν με μια εντολή όπως η

setenv bootargs console=ttyS0,115200 rootwait panic=10

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

bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

και με αυθεντικές εικόνες Linux είναι

bootz ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r}

Σημείωση: όταν εκκινείτε συνηθισμένες εικόνες linux, είναι σημαντικό να φορτώνετε την αρχική εικόνα ramdisk μετά τον πυρήνα και το αρχείο dtb καθώς το U-Boot θέτει ως τιμή της μεταβλητή του μεγέθους αρχείου το μέγεθος του τελευταίου αρχείου που φορτώθηκε και η εντολή bootz απαιτεί το μέγεθος της εικόνας της ramdisk να δουλεύει σωστά. Σε περίπτωση εκκίνησης ενός πυρήνα μιας συγκεκριμένης πλατφόρμας, δηλαδή ενός πυρήνα χωρίς δέντρο-συσκευών, απλά παραλείψτε την παράμετρο ${fdt_addr_r}.

5.1.5. Εκκίνηση από κλειδί μνήμης USB με UEFI

Αν ο υπολογιστής σας πρόκειται να εκκινηθεί από μια συσκευή USB, αυτός είναι πιθανόν ο ευκολότερος τρόπος για την εγκατάσταση. Υποθέτοντας ότι έχετε κάνει όλες τις προετοιμασίες με βάση τα Τμήμα 3.6.1, «Επιλογή συσκευής εκκίνησης» και Τμήμα 4.3, «Προετοιμασία Αρχείων για Εκκίνηση από ένα USB Stick μνήμης», συνδέστε απλά το κλειδί USB σε κάποια από τις ελεύθερες θύρες σύνδεσης και επανεκκινήστε τον υπολογιστή. Το σύστημα θα ξεκινήσει και εκτός και αν έχετε χρησιμοποιήσει τον "ευέλικτο" τρόπο για να φτιάξετε το κλειδί και δεν το έχετε ενεργοποιήσει, θα δείτε ένα μενού εκκίνησης σε γραφικό περιβάλλον(σε υλικό που υποστηρίζει το γραφικό περιβάλλον). Εδώ μπορείτε να διαλέξετε διάφορες επιλογές του εγκαταστάτη ή απλά να πατήσετε το Enter.

5.1.6. Ο γραφικός Εγκαταστάτης

Η εκδοχή με γραφικό περιβάλλον του εγκαταστάτη είναι διαθέσιμη για έναν περιορισμένο αριθμό αρχιτεκτονικών, συμπεριλαμβανομένης της 64-bit ARM. Η λειτουργικότητα του γραφικού εγκαταστάτη είναι ουσιαστικά η ίδια με αυτήν του εγκαταστάτη που βασίζεται σε κείμενο, αφού χρησιμοποιεί βασικά τα ίδια προγράμματα,αλλά με ένα διαφορετικό frontend.

Αν και η λειτουργικότητά του είναι ταυτόσημη, ο γραφικός εγκαταστάτης έχει μερικά ακόμα σημαντικά πλεονεκτήματα. Το κύριο πλεονέκτημα είναι ότι υποστηρίζει περισσότερες γλώσσες, συγκεκριμένα εκείνες ποθ χρησιμοποιούν ένα σύνολο χαρακτήρων που δεν μπορεί να εμφανιστεί με το βασισμένο σε κείμενο frontend «newt». Έχει επίσης μερικά πλεονεκτήματα όσον αφορά τη χρηστικόττηα όπως η επιλογή της χρήσης ενός ποντικιού ενώ μερικές φορές αρκετές ερωτήσεις μπορούν να εμφανιστούν σε μια και μόνο οθόνη.

Όπως ακριβώς και με τον κειμενικό εγκαταστάτη, είναι δυνατόν να προσθέσετε παραμέτρους εκκίνησης όταν ξεκινάτε τον γραφικό εγκαταστάτη.

[Σημείωση] Σημείωση

Ο γραφικός εγκαταστάτης απαιτεί σημαντικά περισσότερη μνήμη για να τρέξει από τον κειμενικό εγκαταστάτη: 640MB. Αν δεν είναι διαθέσιμη η απαραίτητη μνήμη, θα περάσει αυτόματα στο κειμενικό «newt» frontend.

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