Εκκίνηση LTSP clients με UEFI

Ξεκίνησε από alkisg, 06 Δεκ 2015, 08:55:39 ΠΜ

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

alkisg

Αυτό δεν βγάζει και πολύ νόημα... εκτός αν το firmware σου είναι τόσο χαζεμένο που δίνει διαφορετική MAC address ανάλογα με το αν μπουτάρει σε UEFI ή σε legacy mode.
Δώσε και όνομα (HOSTNAME) στους υπολογιστές και έλεγξε με δεξί κλικ ιδιότητες και τη mac address τους και το όνομα του υπολογιστή, να δεις αν το παίρνουν.

jim_katsar

#16
Είναι τρελό αλλά για κάποιον λόγο όταν κάνει boot μέσω UEFI δεν εκτελούνται όσα είναι στο lts.conf (Έτσι τουλάχιστον νομίζω)
Ούτε όνομα (HOSTNAME) παίρνει...
Η MAC είναι ίδια δεν αλλάζει είτε μέσω UEFI είτε με legacy mode (όπως άλλωστε είναι το λογικό).
Σε legacy mode όλα μια χαρά...
Όλα τα παραπάνω σε LTSP UbuntuMate 18.04 64bit

Να σημειώσω ότι είχα δοκιμάσει boot μεσω UEFI με τον ίδιο τρόπο στα ίδια μηχανήματα σε LTSP Ubutu 12.04 32bit και autologin και όνομα έπαιρνε (συνεπώς το lts.conf εκτελούταν).


Ένα δεύτερο που παρατήρησα μετά από λίγους πειραματισμούς... όταν μπαίνω μέσω UEFI  βάζοντας αντίστοιχο όνομα και κωδικό χρήστη, οι κοινόχρηστοι φάκελοι δεν 'παίζουν'! Έχω δημιουργήσει ομάδα χρηστών με τα sch-scripts για να μεταφέρω και να παίρνω αρχεία από/στους clients.
Στην φωτογραφία φαίνονται οι υποτιθέμενοι κοινόχρηστοι φάκελοι.

alkisg

ΟΚ και τα δύο προβλήματα είναι επειδή αναζητάει το lts.conf σε λάθος μεριά. Για να δούμε πού. Μπούταρε έναν client με UEFI και στον server τρέξε:
Κώδικας: Bash
$ grep lts.conf /var/log/syslog
...
Oct 30 11:33:22 alkis dnsmasq-tftp[987]: sent /var/lib/tftpboot/ltsp/i386/lts.conf to 10.161.254.62


Εκεί εσένα θα σου λέει πού το έψαξε και δεν το βρήκε.

jim_katsar

Αυτό που έβγαλε η εντολή:

Nov  2 08:42:13 srv-3dim-prosots-64bit dnsmasq-tftp[855]: file /var/lib/tftpboot/boot/lts.conf not found

alkisg

Μάλιστα... οκ είναι bug του LTSP, για να το παρακάμψεις δώσε την παρακάτω εντολή:
Κώδικας: Bash
sudo ln -s ltsp/i386 /var/lib/tftpboot/boot


Δεν θυμάμαι αν έχεις 32bit ή 64bit εγκατάσταση, αν έχεις 64bit θέλει ltsp/amd64 στην παραπάνω εντολή αντί για ltsp/i386.

jim_katsar

Φαίνεται να δούλεψε...
Έκανε autologin, πήρε κανονικά το όνομα που είχα δώσει στο lts.conf και οι διαμοιραζόμενοι φάκελοι δουλεύουν κανονικά...

Αν θες πρόσθεσέ το στις οδηγίες.. ή αίτημα για διόρθωση;


jim_katsar

Σήμερα ήρθε άνθρωπος από τον δήμο για να συνδέσει το σχολείο με το ΠΣΔ (μέχρι τώρα ήμασταν στην cosmote). Ήδη από πέρυσι είχαν συνδεθεί με οπτικές ίνες μέσω του ΠΣΔ αλλά για κάποιο λόγο δεν το χρησιμοποιούσαν. (Φοβερές ταχύτητες 180-200 Mbps download και upload)
Το ρουτερ που έβαλαν είναι: Mikrotik (https://mikrotik.com/product/RB750Gr3). Η διευθυνσιοδότηση που δίνει είναι της μορφής 10.19.64.χ. Νομίζω το 'χ' ξεκινά από 1 έως 255.
Έχοντας στο μυαλό μου το ρουτεράκι της cosmote (που βάζεις στατική ip) μίλησα με κάποιον κύριο Αθανασόπουλο, υπεύθυνο για τις οπτικές ίνες στο ΙΤΥΕ στην Πάτρα που υλοποιείται το έργο, του είπα ότι θέλω να βάλω στατική ip στο ρουτερ για να παίρνει συγκεκριμένη  ip ο server και μου είπε ότι δεν γίνεται. Το τοπικό εργαστήριο με ubuntu υλοποιείται διαφορετικά άρχισε να μου εξηγεί και έμεινα εκεί... Επίσης μου είπε ότι όλα τα ρουτερ έχουν παραμετροποιηθεί από το ΙΤΥΕ και 1600 σχολεία στην Ελλάδα έχουν συνδεθεί με οπτικές ίνες και κανένας δεν του ζήτησε κάτι τέτοιο. 

Διαβάζοντας πάλι τις οδηγίες του Άλκη για να μπορέσω να υλοποιήσω πάλι το boot των clients κάτω από uefi είδα ότι δεν χρειάζεται static ip σε ρουτερ: Cisco/Mikrotik
Στο ρουτερ δεν έχω πρόσβαση δεν ξέρω κωδικούς. Ούτε μου έδωσε ο κος Αθανασόπουλος (Μάλιστα αισθάνθηκα ότι δεν ήθελε να μπαίνουν άλλα άτομα μέσα, αυτός είχε μπει απομακρυσμένα και έβλεπε ποιος η/υ ήταν συνδεμένος στο δίκτυο). Λογικά όλα τα ρουτεράκια (MikroTik που πρότεινε το ITYE) θα έχουν τους ίδιους κωδικούς.

Εγώ τώρα τι static ip μπορώ να βάλω στον  LTSPServer (Ρύθμιση σύνδεσης δικτύου->Χειροκίνητα); 10.19.64.x; Όπου 'x' κάποιος αριθμός μεταξύ 2-255 ή το 'x' ως λατινικό γράμμα;
Στο MikroTik χρειάζεται κάποια ενέργεια;

Υ.Γ. Το εργαστήριο λειτουργούσε άψογα με το ρουτερακι της cosmote αλλά είναι κρίμα να έχεις οπτικές ίνες και τέτοιες ταχύτητες και να μην τις εκμεταλλεύεσαι

alkisg

Δεν είμαι σίγουρος ότι καταλάβαμε καλά. Ούτε εγώ, ούτε εσύ, ούτε ο Αθανασόπουλος! :)
Οι παρακάτω προτάσεις πρέπει να είναι "αληθής", έλεγξε αν κάποια δεν ισχύει και πες.
Ο router έχει στατική ip 10.19.64.1.
Ο server αν κάνεις ρύθμιση σύνδεσης δικτύου από τα sch-scripts θα πάρει στατική ip 10.19.64.10.
Δεν έχεις πρόσβαση (και δεν πρέπει να έχεις) στο router.
Ο router δίνει δυναμικές διευθύνσεις από 10.19.64.128 έως 10.19.64.254.
Στατικές επιτρέπεται να βάλεις όποια θες μέχρι το .127.
Η .10 και η .11 "φαίνονται" απ' έξω (έχουν αυτόματα διαφορετική εξωτερική IP) οπότε εκεί μπαίνουν οι servers.

Εν ολίγοις δεν χρειάζεται να κάνεις τίποτε άλλο παρά να πας στο μενού Εξυπηρετητής → Ρύθμιση δικτύου των sch-scripts και να πατήσεις ΟΚ. Θα γίνουν όλα σωστά αυτόματα.

jim_katsar

Ο router ναι έχει στατική ip 10.19.64.1
Στον server όταν έκανα ρύθμιση σύνδεση δικτύου και επέλεξα την επιλογή 'Μόνο αυτόματες διευθύνσεις DHCP' πήρε την: 10.19.64.243  Δεν είχα χρόνο για περισσότερους πειραματισμούς...
Θα δοκιμάσω αύριο την επιλογή χειροκίνητα!
Ναι δεν έχω πρόσβαση στο ρουτερ.

Μάλλον ισχύει το παρακάτω(δεν ξέρω πως να το ελέγξω):
ΠαράθεσηΟ router δίνει δυναμικές διευθύνσεις από 10.19.64.128 έως 10.19.64.254.
Κανένας client δεν πήρε ip μικρότερη από 128!

Οπότε αν καταλαβαίνω σωστά: δίνω Εξυπηρετητής → Ρύθμιση δικτύου→ Χειροκίνητα την: 10.19.64.10 στον server (Windows Server δεν υπάρχει!)
Και αντίστοιχα φτιάχνω τον grub στους clients

alkisg

Έτσι ακριβώς. Δεν χρειάζεται καν να την βάλεις εσύ, θα την βάλει αυτόματα (τα sch-scripts ξέρουν και για mikrotik και για cisco κλπ routers), εσύ απλά πατάς το ΟΚ.

jim_katsar

Μετά από αρκετό καιρό λειτουργίας της παραπάνω μεθόδου: 'Εκκίνηση LTSP clients με UEFI' όπως περιγράφεται, διαπίστωσα ότι τα τερματικά δεν έχουν ήχο.
Μπαίνοντας στις ρυθμίσεις ήχου μέσα από τα τερματικά, όπως φαίνονται και στα screenshot που επισυνάπτω, δεν αναγνωρίζεται ως υλικό η κάρτα ήχου!
Αντιθέτως στο ίδιο μηχάνημα αν εκκινήσει με legacy mode (πατώντας το F12) έχω κανονικά ήχο και η κάρτα ήχου φυσικά και αναγνωρίζεται.
Τι μπορεί να φταίει; Υπάρχει κάποια λύση;

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

alkisg

#27
Αυτό μπορεί να συμβεί αν οι clients μπουτάρουν με τοπικό αντίγραφο αρχαίου kernel τον οποίο στο μεταξύ έχεις διαγράψει από τον εικονικό δίσκο.
Από τον Επόπτη, κάνε δεξί κλικ → Εκτέλεση → Άνοιγμα κονσόλας → Διαχειριστή, τοπικά, δώσε τα παρακάτω, και ανέβασε το αποτέλεσμα:
Κώδικας: Bash
uname -r
ls /lib/modules
cat /proc/cmdline
lsblk --fs | grep fat
# Η παραπάνω εντολή θα σου δείξει το UEFI partition, π.χ. /dev/sdaX
mount /dev/sdaX /mnt
ls /mnt


Το τοπικό αντίγραφο του kernel θεωρητικά ενημερώνεται αυτόματα με βάση το partition που του είπες: ltsp.kernel_device=/dev/sda3
...αν είναι λάθος το partition εκεί, δεν θα ενημερώνεται...

Πάντως, είναι καιρός να φύγεις από αυτή τη μέθοδο και να έρθεις από το IRC να δοκιμάσουμε κανονικό UEFI netbooting! (είναι σε beta, αλλά ήδη δοκιμασμένο σε δύο σχολεία - ή, περίμενε το καλοκαιρινό update)

jim_katsar

Είναι κάτι παραπάνω από σίγουρο ότι ο kernel του server έχει αλλάξει και έχει γίνει και 'δημοσιοποίηση εικονικού δίσκου' από τότε που εφάρμοσα αυτή τη μέθοδο για netboot κάτω από UEFI.

Απ' ότι κατάλαβα τώρα με τα λεγόμενά σου (τυφλά αντέγραψα τις εντολές), με τις παραπάνω εντολές αντιγράφεις τοπικά τον kernel στους clients.

ΠαράθεσηΤο τοπικό αντίγραφο του kernel θεωρητικά ενημερώνεται αυτόματα με βάση το partition που του είπες: ltsp.kernel_device=/dev/sda3
Μάλλον το: 'θεωρητικά ενημερώνεται' δεν ισχύει στην περίπτωσή μου! Τώρα για ποιο λόγο δεν ξέρω!
Το 'πρόβλημα' εμφανίζεται τουλάχιστον στα 2 από τα 3 σχολεία που πηγαίνω. Στο 3ο απλά δεν έχω κάνει ακόμα τον έλεγχο.

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

ΠαράθεσηΠάντως, είναι καιρός να φύγεις από αυτή τη μέθοδο και να έρθεις από το IRC να δοκιμάσουμε κανονικό UEFI netbooting!
Συμφωνώ μαζί σου. Μόνο που θα πρέπει να έρθω 3 φορές από το IRC γιατί το έχω εφαρμόσει και στα 3 σχολεία που πηγαίνω. Εκτός αν είναι εύκολη διαδικασία και στα επόμενα 2 μπορέσω να το κάνω μόνος μου.

Παράθεσηείναι σε beta, αλλά ήδη δοκιμασμένο σε δύο σχολεία - ή, περίμενε το καλοκαιρινό update
Δεν θα ήθελα να περιμένω τον Σεπτέμβρη γιατί δεν ξέρω του χρόνου σε ποια σχολεία (ως αναπληρωτής) θα βρίσκομαι και θα ήθελα ο/η επόμενος/η (που δεν ξέρω τι εξοικείωση θα έχει με το περιβάλλον των Ubuntu) να μην έχει και εκκρεμότητες με την λειτουργία του εργαστηρίου.

Από Δευτέρα θα επισυνάψω το αποτέλεσμα των εντολών που μου δίνεις να τρέξω.

alkisg

Πρόσθεσα δυο εντολές ακόμα, για να δούμε εάν για κάποιο λόγο δεν μπορεί να προσαρτηθεί το partition.