Υποστήριξη UEFI clients σε LTSP5

Ξεκίνησε από alkisg, 14 Δεκ 2019, 07:13:11 ΜΜ

« προηγούμενο - επόμενο »

alkisg

Το νέο LTSP υποστηρίζει την εκκίνηση UEFI clients, αλλά για φέτος οι πιο πολλοί χρησιμοποιούν ακόμα το παλιό LTSP5. Μάλιστα, τα νέα εργαστήρια που έρχονται τώρα στα σχολεία, είναι i3-8100 με Windows 10 και Ubuntu MATE 18.04 εγκατεστημένα σε UEFI mode.

Έτσι, για να αποφύγουμε εγκαταστάσεις Ubuntu 20.04 και νέου LTSP στη μέση της χρονιάς, ξεκίνησα ένα project για ανεπίσιμη υποστήριξη UEFI clients σε LTSP5:
https://github.com/alkisg/ltsp5-uefi

Στον server απλά τρέχετε τις δύο εντολές που γράφω εκεί.
Στους clients, μπαίνετε στις ρυθμίσεις του UEFI και ενεργοποιείτε Boot from network (ipv4).

Αν κάποιος έχει τοπικό Ubuntu και θέλει να βάλει επιλογή ipxe στον grub, τότε πρέπει να μπουτάρει το τοπικό Ubuntu, και να δώσει τις παρακάτω εντολές:

Κώδικας: Bash
sudo -i
mkdir -p /etc/default/grub.d
wget https://gitlab.com/sch-scripts/sch-scripts/raw/main/share/sch-scripts/grub.cfg -O /etc/default/grub.d/sch-scripts.cfg
add-apt-repository --yes ppa:ts.sch.gr
apt update
apt install --yes grub-ipxe

jim_katsar

 Άλκη εγώ έχω εφαρμόσει από πέρυσι τη μέθοδο που είχες προτείνει: https://alkisg.mysch.gr/steki/index.php?topic=6466.0 για clients με UEFI.
Δουλεύει χωρίς προβλήματα... Απλά σε κάθε ενημέρωση kernel και Δημοσίευση Εικονικού Δίσκου πρέπει στο αρχείο  lts.conf να προσθέτω μία εντολή όπως η παρακάτω:
INIT_COMMAND_RM_PREV_KERNEL="rm -rf /lib/modules/4.15.0-48-generic"

προκειμένου να απομακρύνω τον παλιό kernel και οι clients να εκκινούν με τον καινούριο kernel   :D
Ήρθε η ώρα να φύγουμε από αυτό; Μου είχες αναφέρει πέρυσι κάποια στιγμή μέσω IRC για μία καινούρια μέθοδο.. απλά ποτέ δεν την υλοποιήσαμε.
Μήπως να το ξαναδούμε ή το αφήνουμε για το νέο LTSP με Ubuntu 20.04;
Ο Server διαθέτει Ubuntu Mate 18.04 και οι clients DualBoot με win10+UbuntuMate 16.04 και επεξεργαστή AMD A10-9620P (Περσινό εξοπλιστικό πρόγραμμα ΕΣΠΑ Ανατολική Μακεδονία-Θράκη)

alkisg

Δημήτρη νομίζω ότι αξίζει να μεταβείς στη νέα μέθοδο, αφού είναι και παραπλήσια με αυτή του νέου LTSP που θα χρησιμοποιούμε από Σεπτέμβρη. Άρα οι αλλαγές που θα γίνουν στους clients θα είναι μόνιμες.

gidarakos

Σε μικτό εργαστήριο bios/uefi clients μετά την εφαρμογή των βημάτων κάποια bios clients "κολλούσαν" στο μήνυμα iPXE initialising devices...
Το πρόβλημα λύθηκε από τον Άλκη χρησιμοποιώντας διαφορετικό iPXE binary:
Κώδικας: bash
sudo -i
cd /var/lib/tftpboot/ltsp
wget boot.ipxe.org/ipxe.pxe
ln -sf ipxe.pxe undionly.kpxe
exit

Δηλαδή πλέον θα γίνεται χρήση του ipxe.pxe αντί του undionly.kpxe

alkisg

Στις νεότερες εκδόσεις του Ubuntu υπάρχει ένα bug και δεν υποστηρίζει την εκκίνηση 32bit λειτουργικών κάτω από UEFI. Το ανάφερα και έκανα και ένα workaround, αλλά όποιος θέλει ας πατήσει "affects me too" ή/και ας σχολιάσει στο παρακάτω bug report:

https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1876737

Γενικά αν βλέπουν να συμμετέχουν μόνο 1-2 άτομα στα bug reports, δεν ασχολούνται, ενώ όταν συμμετέχουν πολλοί, αυξάνονται οι πιθανότητες επίλυσης.

gverv

Παράθεση από: alkisg στις 30 Ιουν 2020, 10:07:45 ΠΜ
αλλά όποιος θέλει ας πατήσει "affects me too"
Δεν βλέπω τέτοιο κουμπί, πρέπει να μπεις με λογαριασμό;


falexakos

Επί του θέματος αυτού. Τι γίνεται αν μετά απ' όλα τα παραπάνω, στο τέλος παίρνω (σε 2-3 clients που δοκίμασα) το error στο συνημμένο screenshot ;

Ευχαριστώ,

Φώτης

alkisg

Φώτη αν κατάλαβα καλά προσπαθείς να μπουτάρεις από το ipxe.efi, όχι απευθείας από τα UEFI boot settings => network,
και επιπρόσθετα έχεις ενεργοποιημένο το secure boot.

Αν τα λέω καλά, η λύση είναι να μπεις στα UEFI settings και να απενεργοποιήσεις το secure boot, γιατί το ipxe ΔΕΝ είναι υπογεγραμμένο από τη Microsoft και δεν μπορεί να φορτωθεί όταν το secure boot είναι ενεργοποιημένο (χωρίς προχωρημένα κόλπα).

falexakos

Απενεργοποίησα το secure boot. Τώρα οι clients εκκινούν, αλλά δεν βλέπω το μενού του GRUB. Αντιθέτως με πηγαίνουν κατευθείαν (λες και το έχω επιλέξει από το boot μενού) και τρέχουν memtest. Αυτό με το που τελειώνει (μετά από ώρα και χωρίς να βρει πρόβλημα), απλά ζητάει reboot. Κάνοντας reboot (τον client εννοούμε πάντα), απλά η όλη ιστορία επαναλαμβάνεται (memtest κλπ.).
Το είχα δει αυτό και σε άλλα εργαστήρια παλιότερα, αλλά αναθεμά κι αν θυμάμαι πως το είχα αντιμετωπίσει.

alkisg

Φώτη αυτό ακούγεται περίεργο, οπότε τώρα χρειάζεται είτε βίντεο από την διαδικασία εκκίνησης του client (π.χ. σε κανένα google drive και λινκ εδώ), είτε να έρθεις από το IRC να το δούμε live.