Μενού πολλαπλών επιλογών για εκκίνηση από το δίκτυο

Ξεκίνησε από alkisg, 23 Απρ 2010, 06:25:50 ΜΜ

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

alkisg

Για πιο προχωρημένους χρήστες.
Αν κάποιος θέλει να στέλνει στους clients το μενού που φαίνεται στην συνημμένη εικόνα, ώστε να μπορούν να επιλέξουν αν θα μπουτάρουν ως thin/fat clients, από το live cd μέσω δικτύου, από τον τοπικό δίσκο, κάποιο recovery cd (π.χ. hiren's) κτλ, μπορεί να κάνει τα παρακάτω.

Καταρχάς, να ετοιμάσει στο φάκελο /var/lib/tftpboot τη δομή που φαίνεται παρακάτω:
alkisg@alkis:/var/lib/tftpboot$ tree
.
|-- backgrounds
|   `-- ubuntu.png
|-- casper
|   |-- initrd.lz
|   `-- vmlinuz
|-- images
|   |-- 98elNtfs144.img
|   |-- hitachi.img
|   |-- memtest86
|   `-- W98SeEl.img
|-- ltsp
|   `-- i386
|       |-- abi-2.6.32-20-generic
|       |-- config-2.6.32-20-generic
|       |-- grub
|       |-- initrd.img -> initrd.img-2.6.32-20-generic
|       |-- initrd.img-2.6.32-20-generic
|       |-- lts.conf
|       |-- memtest86+.bin
|       |-- nbi.img -> nbi.img-2.6.32-20-generic
|       |-- nbi.img-2.6.32-20-generic
|       |-- pxelinux.0
|       |-- pxelinux.cfg
|       |   `-- default
|       |-- System.map-2.6.32-20-generic
|       |-- vmcoreinfo-2.6.32-20-generic
|       |-- vmlinuz -> vmlinuz-2.6.32-20-generic
|       `-- vmlinuz-2.6.32-20-generic
|-- pxelinux.0
|-- pxelinux.cfg
|   `-- default
`-- syslinux
    |-- chain.c32
    |-- copybs.com
    |-- cpuidtest.c32
    |-- dmitest.c32
    |-- elf.c32
    |-- ethersel.c32
    |-- img1200k.gz
    |-- img1440k.gz
    |-- img1743k.gz
    |-- img720k.gz
    |-- isolinux.bin
    |-- isolinux-debug.bin
    |-- ldlinux.bss
    |-- ldlinux.sys
    |-- linux.c32
    |-- mboot.c32
    |-- mbr.bin
    |-- memdisk
    |-- meminfo.c32
    |-- menu.c32
    |-- pcitest.c32
    |-- pmload.c32
    |-- pxelinux.0
    |-- reboot.c32
    |-- sdi.c32
    |-- syslinux.com
    `-- vesamenu.c32



  • Το background/ubuntu.png πρέπει να είναι 640x480 με 8 bit βάθος χρώματος.
  • Το casper/ είναι για να μπουτάρει το live cd μέσω δικτύου και το αντίγραψα από το live cd.
  • Το images/ είναι διάφορες δισκέτες που έχω βρει ή έχω φτιάξει, π.χ. windows 98 boot disk, memtest, recovery disk για δίσκους hitachi κτλ.
  • Το ltsp/ είναι ο στάνταρ κατάλογος του ltsp.
  • Το pxelinux.0 είναι αντίγραφο του ltsp/i386/pxelinux.0.
  • Το pxelinux.cfg/default επισυνάπτεται στο παρόν μήνυμα.
  • Το syslinux είναι αντίγραφο (όχι symlink) του /usr/lib/syslinux/.

Μετά από την παραπάνω οργάνωση, χρειάζεται και μια αλλαγή στο /etc/dnsmasq.d/ltsp.conf ώστε να "δείχνει" στο αρχείο /pxelinux.0 αντί του /ltsp/i386/pxelinux.0.

poursali

"Μετά από την παραπάνω οργάνωση, χρειάζεται και μια αλλαγή στο /etc/dnsmasq.d/ltsp.conf ώστε να "δείχνει" στο αρχείο /pxelinux.0 αντί του /ltsp/i386/pxelinux.0."

αυτό πώς μπορεί να γίνει;


ΥΓ: άκυρο το βρήκα, δεν είχα προσέξει κάτι  ;)

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

poursali

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

alkisg

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

Ή εννοείς ότι δεν είδες καθόλου το μενού;

poursali

ναι αυτό, δεν είδα τις επιλογές να εμφανίζονται... βέβαια δεν έβαλα κανένα image στον φάκελο images... αλλά δεν νομίζω να παίζει ρόλο - την εικόνα ubuntu.png θα έπρεπε να την δω έτσι δεν είναι;
θα βάλω και ένα image να δω αν φταίει αυτό
μετρον αριστον
είμαι τζαμπατζής, χρησιμοποιώ λίνουξ

alkisg

Ανέβασα στο αρχικό μήνυμα την εικόνα backgrounds/ubuntu.png που χρησιμοποιώ, αν θυμάμαι καλά τη βρήκα από παλιότερο live CD του Ubuntu.

poursali

#6
το πρόβλημα λύθηκε με τη βοήθεια του Άλκη.
το path
ΠαράθεσηΜετά από την παραπάνω οργάνωση, χρειάζεται και μια αλλαγή στο /etc/dnsmasq.d/ltsp.conf ώστε να "δείχνει" στο αρχείο /pxelinux.0 αντί του /ltsp/i386/pxelinux.0.

πρέπει να μπει ακριβώς έτσι /pxelinux.0 και όχι ολόκληρο path
μετρον αριστον
είμαι τζαμπατζής, χρησιμοποιώ λίνουξ

gverv

Που πρέπει να βάλουμε την εντολή
nbd-server 2001 /opt/ltsp/images/i386thin.img
(ή καλύτερη αν χρειάζεται)
ώστε με την προϋπόθεση πως έχουμε φτιάξει και thin image
σε κάθε εκκίνηση του server να "προσφέρει" και thin image.

Ευχαριστώ.

alkisg

Ένας εικονικός δίσκος (image) που έχει δημιουργηθεί για fat clients υποστηρίζει ταυτόχρονα και thin και fat.
Αυτόματα όσοι έχουν λιγότερο από FAT_RAM_THRESHOLD μνήμη (προεπιλογή=300 Mb), θα μπουτάρουν ως thin, και όσοι έχουν παραπάνω ως fat.
Αν ο διαχωρισμός με βάση τη RAM τους δεν επαρκεί, μπορείς να χρησιμοποιήσεις και τη μεταβλητή LTSP_FATCLIENT=True/False στο lts.conf.
Επομένως δεν υπάρχει λόγος να έχεις 2 ξεχωριστούς εικονικούς δίσκους.

Αν ντε και καλά θες να δοκιμάσεις με 2 ξεχωριστούς εικονικούς δίσκους, η εντολή "sudo ltsp-update-image --force" ενημερώνει αυτόματα τα παρακάτω αρχεία, ώστε να μη χρειάζεται να τα πειράξεις χειρωνακτικά:

  • /opt/ltsp/arch/etc/ltsp/update-kernels.conf
  • /var/lib/tftpboot/ltsp/arch/pxelinux.cfg/default
  • /etc/inetd.conf

alexxtasi

γεια και από μένα... μερικούς μήνες μετά!!
στο εργαστήριο που είμαι, οι κάρτες δικτύου δεν υποστηρίζουν το iPXE (όπως έχω καταλάβει μέχρι τώρα).
Μετά από αναβάθμιση του BIOS κατάφερα να bootάρουν οι κάρτες δικτύου, αλλά δε βλέπω την κλασσική επιλογή Press F8 από όπου θα μπορούσε κάποιος να επιλέξει τον τοπικό δίσκο (και έτσι να υπάρξει κάτι από τη λειτουργικότητα του win32-loader!!).
Θα μπορούσα να χρησιμοποιήσω κάτι σαν αυτό που προτείνει ο Άλκης στην αρχή του post?


alkisg

Όταν χρησιμοποιείται boot ROM, συνήθως μπορούμε να ακυρώσουμε την εκκίνηση από το δίκτυο πατώντας Esc.

nikoskon

Εγώ έχω το εξής πρόβλημα, ένα από τα PC μου, το πιο παλιό, δεν έχει Onboard κάρτα δικτύου και έχει εγκατεστημένο Ubuntu 10.04, οπότε επέλεξα να χρησιμοποιήσω gPXE. Το boot μενού έχει πλέον την επιλογή boot from Network και όταν ξεκινάει ο σταθμός, φαίνεται να παίρνει κανονικά ΙΡ, αλλά σταματάει λίγο πιο κάτω. Για την ακρίβεια στη γραμμή
trying to load:pxelinux.cfg/default
aborted
boot:
και μένει εκεί.
Επίσης παρατηρώ στο SYSUUID είναι όλα 0000.

Θα πρέπει κι εγώ να εφαρμόσω κάτι από τα παραπάνω;

alkisg

Όχι δεν έχουν καμία σχέση τα παραπάνω με το πρόβλημα που σου εμφανίζεται.

Εκεί που λέει "boot:", αν πατήσεις Enter, φορτώνει κανονικά;
Αν ναι, μπορείς να δοκιμάσεις αυτό:
https://alkisg.mysch.gr/steki/index.php?topic=3253.msg51521#msg51521

nikoskon

Οκ λύθηκε κι αυτό, ευχαριστώ.
ουφ για μας τους νέους αυτή η υποστήριξη είναι σωτήρια!
:)

aspd

Βάζοντας ένα νέο μηχάνημα σα thin  client εμφανίζει μήνυμα:
trying to load pxelinux.cfg/default       οκ   
και κολλάει εκεί.
Τι πρέπει να κοιτάξω;

alkisg

Διαχείριση ΣΕΠΕΗΥ → Εξυπηρετητής → Αρχεία ρυθμίσεων → Επεξεργασία ρυθμίσεων PXELinux.
Από τη γραμμή 14 αφαιρείς τα "quiet splash plymouth:force-splash vt.handoff=7" και αποθηκεύεις.
Κάνεις επανεκκίνηση τον client και γράφεις εδώ τα τελευταία μηνύματα που θα εμφανίσει, ή ανεβάζεις φωτογραφία της οθόνης από το κινητό.

aspd

Στο prelinux.cfg η γραμμή έγινε
append    ro initrd=initrd.img-3.2.0-32-generic init=/sbin/init-ltsp root=/dev/nfs ip=dhcp boot=nfs
ipappend 3.
Αποθήκευσα.

Πάλι σταμάτησε στο trying to load prelinux.cfg/default     ok
Επισυνάπτω φωτογραφία

aspd

Λοιπόν, εχθές είχα προσθέσει σε αυτό το μηχάνημα  128 ΜΒ. Είχε 2 με 64.
Τη μνήμη την είδε το bios. Είχε γίνει 256.

Είπα  για δοκιμή να βγάλω τη μνήμη που πρόσθεσα. Έμεινε με τα 2 64άρια και φόρτωσε κανονικά.
Άρα του φταίει η μνήμη των 128.

Έβγαλα μετά το 1 των 64 και έμεινε με το 1 των 128 και 1 των 64 και επίσης φόρτωσε κανονικά.

alkisg

ΟΚ, μια χαρά λοιπόν.
Για την ιστορία, στο αρχείο pxelinux.cfg/default χρειαζόταν αλλαγή η γραμμή 14 που γράφει για nbd, και όχι η 23 που γράφει για nfs, γι' αυτό και δεν παρατήρησες καμία διαφορά κατά την εκκίνηση του client.

aspd

#19
Τελικά στο  prelinux.cfg να υπάρχει το  quiet splash ... στη 14 ή όχι;



alkisg

Το βγάζουμε όταν θέλουμε να δούμε ένα κατεβατό μηνύματα όταν ξεκινάνε οι clients για να λύσουμε κάποιο πρόβλημα (troubleshooting).
Το ξαναβάζουμε όταν μας ενοχλούν τα κατεβατά και προτιμάμε την οθόνη του Ubuntu με τις τελίτσες.
Οπότε αφού το πρόβλημα λύθηκε, ξαναβάλ' το...

tsarmis

Στο default που επισυναπτεις έχει επιλογή για thin και fat. Μπορείς δλδ να ξεκινήσεις έτσι ενα PC με 1G RAM ως thin?

alkisg

Εκείνη την εποχή (10.04), οι εικονικοί δίσκοι για fat ήταν διαφορετικοί από τους εικονικούς δίσκους για thin, και με αυτό το αρχείο default μπορούσες να επιλέξεις να μπουτάρεις έναν fat από δίσκο thin, που δεν έχει περιβάλλοντα εργασίας (gnome-flashback κλπ), οπότε ναι αναγκαστικά ένας client με 1 GB RAM θα γινόταν thin.

Τώρα είναι πολύ πιο εύκολο, αρκεί μόνο να βάλεις LTSP_FATCLIENT=False στο lts.conf κάτω από το [mac address section] του.
Ή το αντίθετο, να βάλεις LTSP_FATCLIENT=True σε έναν client με 256 MB RAM, ώστε να γίνει fat client και να δεις πόσο σέρνεται. :D