28Jun

Πώς να εγκαταστήσετε δίσκους Utility Bootable χρησιμοποιώντας το PXE

Σας έχουμε δείξει πώς να εκκινήσετε το Ubuntu LiveCD στο δίκτυο.Σε αυτό το άρθρο θα δείξουμε πώς να κάνετε κάποια άλλα προγράμματα κοινής ωφέλειας εκκίνησης του δικτύου, τα οποία θα σας δώσουν τις γνώσεις για να επαναλάβετε τη διαδικασία για άλλα βοηθητικά προγράμματα που ίσως χρησιμοποιείτε.

Σημείωση: Το αυτό το άρθρο δεν απευθύνεται σε αρχάριους, αν και είστε ευπρόσδεκτοι να συνεχίσετε να διαβάζετε!

Εικόνα από Steve Jurvetson

Επισκόπηση

Αυτός ο οδηγός στοχεύει να σας δώσει τα εργαλεία με τα οποία μπορείτε να μετατρέψετε βοηθητικά προγράμματα για να είναι PXEable.Ενώ, δυστυχώς, δεν θα είναι δυνατή η μετατροπή οποιουδήποτε εργαλείου κάτω από τον ήλιο, δεν θα είμαστε geeks εάν δεν προσπαθήσαμε τουλάχιστον.

Όπως αναφέρθηκε στον οδηγό "Οδηγός για την εκκίνηση του δικτύου( PXE) Ο οδηγός Ubuntu LiveCD", αν δεν χρησιμοποιείτε ήδη το Ubuntu ως το νούμερο ένα "πηγαίνετε" για το εργαλείο αντιμετώπισης προβλημάτων, διάγνωσης και διάσωσης, τι περιμένετε;

Με αυτό, πρέπει να αναγνωρίσετε ότι υπάρχουν πράγματα που απλά δεν μπορούν να γίνουν μέσα στο Ubuntu LiveCD( όπως αναβαθμίσεις του BIOS) ή ότι χρησιμοποιείτε ήδη ένα διαφορετικό εργαλείο που σας αρέσει και προτιμούσα να συνεχίσουμε να χρησιμοποιούμε για οποιονδήποτε λόγο.

Συστάσεις, υποθέσεις και προϋποθέσεις

  • Υποθέτουμε ότι έχετε ήδη ρυθμίσει το διακομιστή FOG όπως εξηγείται στον οδηγό "Τι είναι η εκκίνηση μέσω δικτύου( PXE) και πώς μπορείτε να τον χρησιμοποιήσετε;".
  • Θα δείτε το πρόγραμμα "VIM" που χρησιμοποιείται ως συντάκτης, κυρίως επειδή είναι ευρέως διαθέσιμο σε πλατφόρμες Linux.Μπορείτε να χρησιμοποιήσετε οποιοδήποτε άλλο πρόγραμμα επεξεργασίας θέλετε.
  • Το Ultimate Boot CD( UBCD) χρησιμοποιείται ως παράδειγμα, καθώς σε αντίθεση με κάποιες άλλες συλλογές χρησιμότητας, είναι ελεύθερο να μεταφορτώσει και τα προγράμματα που δέχονται είναι ελεύθερα στη χρήση.

Γιατί όχι μόνο να χρησιμοποιήσετε το ISO πάνω από PXE;

Αυτό είναι συχνά το πρώτο ερώτημα που τίθεται όταν μιλάμε για το PXEing.Η σύντομη απάντηση είναι ότι ενώ είναι τεχνικά δυνατή η λήψη εικόνας ISO και PXE στις μηχανές πελάτη, σχεδόν πάντα το περιεχόμενο του εν λόγω ISO, αναμένεται να έχει τη φυσική εκδήλωση του ίδιου προσβάσιμου στη φυσική μονάδα CDROM.Επομένως, ό, τι μπορεί να είναι το περιεχόμενο του εν λόγω ISO, θα προσπαθήσει να αναζητήσει τα αρχεία "μετά την εκκίνηση" στη φυσική μονάδα CDROM του υπολογιστή-πελάτη, δεν θα τα βρει και το αποτύχει για εκκίνηση.

Οι δύο τρόποι για να ξεπεραστεί αυτό το πρόβλημα είναι:

  • Κατεβάστε το ISO και τοποθετήστε το στη μονάδα CDROM του υπολογιστή-πελάτη - Ενώ είναι απλό, Όχι χρησιμοποιώντας CD, είναι ακριβώς αυτό που προσπαθούμε να αποφύγουμε. ..
  • Ανοίξτε το ISO και αλλάξτεο τρόπος με τον οποίο το πρόγραμμα λειτουργεί μέσα σε αυτόν, έτσι ώστε να χρησιμοποιεί έναν οδηγό CDROM ο οποίος ξέρει πώς να ψάξει το ISO στη μνήμη RAM - Πολύ σύνθετο και διαφορετικό για κάθε τύπο προγράμματος εκκίνησης.I.E.όχι η ίδια διαδικασία για Linux, WinPE ή UBCD για να αναφέρουμε μερικές.

Καθώς και οι δύο από τις παραπάνω ήττες έχουν ως στόχο την "χρήση ενός ISO", γι 'αυτό δεν συνιστούμε να ακολουθήσουμε αυτή την προσπάθεια.

Η μέθοδος πυρήνα

Ενώ είναι πολύ σπάνια, μερικές φορές το πρόγραμμα που επιχειρείτε να εκκινήσετε μπορεί να χρειαστεί μόνο να λειτουργήσει ένας πυρήνας.Ένα τυπικό παράδειγμα αυτού είναι το "memtest86 +".Το Memtest συνοδεύεται από τα περισσότερα CD εγκατάστασης Linux και από το FOG.Δεδομένου ότι το Memtest χρειάζεται να επικοινωνεί μόνο με τις βασικότερες δυνατότητες του δοκιμασμένου υλικού, η I.E.η μνήμη( RAM) και μπορεί να λειτουργήσει καλά χωρίς να υποστηρίξει καν πλήρως το υλικό που τρέχει( το IE θα δοκιμάσει τη μνήμη, ακόμα κι αν δεν γνωρίζει τον τύπο, την ταχύτητα κλπ.) δεν χρειάζεταιοτιδήποτε άλλο και μπορεί να λειτουργήσει πλήρως αυτόνομα.

Η καταχώρηση του μενού PXE για το memtest μπορεί να φαίνεται τόσο απλή, όπως:

LABEL Εκτέλεση Memtest86 +
ομίχλης πυρήνα /memtest/ memtest
append -

Σε αυτό το παράδειγμα, το "LABEL Run Memtest86 +" ορίζει το όνομα της καταχώρησης, "πυρήνα πυρήνα /memtest/ memtest"λέει στο PXElinux πού να πάρει τον πυρήνα που θα αποσταλεί στον πελάτη από και το "append -" λέει στο PXElinux να αγνοήσει τις πρόσθετες επιλογές εκκίνησης από την * κληρονομιά.

* Σημείωση: Ανάλογα με τη ρύθμισή σας, αυτό μπορεί να μην απαιτείται ακόμη και στην πραγματικότητα στο FOG δεν χρησιμοποιείται.

Η μέθοδος Kernel + Initrd

Αυτή η μέθοδος είναι μακράν η συνηθέστερα χρησιμοποιούμενη και ευρέως διαδεδομένη για μερικούς λόγους:

  • Πολλές χρησιμότητες προέρχονται σήμερα από τον κόσμο του Linux.
  • Επειδή το Linux έχει μεγάλη υποστήριξη υλικού και είναι ελεύθερο να χρησιμοποιήσει, όλο και περισσότερες εταιρείες συνειδητοποιούν ότι το Linux είναι μια εξαιρετική βάση για να χτίσετε τα ιδιόκτητα προγράμματα τους.

Δίνει τη δυνατότητα χρήσης του βοηθητικού προγράμματος CPUstress του UBCD ως παράδειγμα.

Στη δομή αρχείου UBCD, αυτό το βοηθητικό πρόγραμμα βρίσκεται στον κατάλογο "ubcd /boot/ cpustress".Τα αρχεία που αναζητούμε ονομάζονται "bzImage" που είναι ο "πυρήνας" και "initrd.gz" που είναι ο "αρχικός δίσκος ram".Αν χρησιμοποιείτε τη ρύθμιση FOG που δημιουργήσαμε, σας συνιστούμε να αντιγράψετε τον κατάλογο κάτω από το "/tftpboot/howtogeek/ utils".Μόλις γίνει αυτό, επεξεργαστείτε το αρχείο "/tftpboot/howtogeek/menus/ utils.cfg" και προσθέστε σε αυτό την καταχώρηση εκκίνησης που βρίσκεται στις καταχωρήσεις μενού του UBCD.αυτό μπορεί να βρεθεί στο "ubcd /menus/syslinux/ cpu.cfg".Με τις ρυθμίσεις για τη ρύθμιση FOG, η καταχώρηση του μενού θα πρέπει να μοιάζει με:

MENU LABEL StressCPU V2.0( απαιτεί CPU με SSE)
TEXT HELP
Βασανιστήρια-δοκιμή CPU σας για να βεβαιωθείτε ότι δεν έχετε υπερθέρμανση
προβλήματα.Απαιτεί επεξεργαστές x86 που είναι εξοπλισμένοι με SSE.Εκτελεί μια ειδική έκδοση των εσωτερικών πινάκων
Gromacs που αναμιγνύει SSE και κανονικές οδηγίες συναρμολόγησης για τη θέρμανση
της CPU σας όσο το δυνατόν περισσότερο.
ENDTEXT
KERNEL howtogeek /utils/cpustress/ bzImage
INITRD howtogeek /utils/cpustress/ initrd.gz
APPEND root = /dev/ ram0 ramdisk_size = 12000 noapic ubcdcmd = stresscpu2

Πού:

  • MENU LABEL - ορίζει το όνομα της καταχώρησης
  • TEXT HELP - Αυτή η προαιρετική οδηγία, δίνει βοήθειακείμενο που θα εμφανιστεί στο μενού για να παράσχετε πληροφορίες σχετικά με την επιλεγμένη καταχώρηση.
  • KERNEL - Καθορίζει την τοποθεσία του αρχείου "kernel" στον κατάλογο TFTPD.
  • INITRD - το ίδιο όπως παραπάνω μόνο για το αρχείο "initrd".
  • APPEND - Προσδιορίζει πρόσθετες παραμέτρους που πρέπει να μεταβιβαστούν στο εκκινήσιμο πρόγραμμα.

Δύο πράγματα που πρέπει να σημειώσετε είναι:

  • Hardcore geeks θα παρατηρήσετε ότι αντικαταστήσαμε την αρχική οδηγία του "LINUX" με "KERNEL".Αυτό συμβαίνει επειδή: A. αυτό κάνει το παράδειγμα ευκολότερο να διαβαστεί.Β. Σε αυτό το παράδειγμα δεν έχει σημασία.
    Με αυτό, συνήθως όταν χρησιμοποιείται η οδηγία "LINUX", είναι καλύτερο να την αφήνουμε έτσι γιατί λέει pxelinux / syslinux ότι δεν χρησιμοποιούμε μόνο πυρήνα, αλλά Linux.
  • Έχουμε κάνει σκόπιμα την οδηγία "quiet" από τις προσαρτημένες παραμέτρους.Αυτό οφείλεται σε μια αλλαγή στον τρόπο με τον οποίο το Syslinux χειρίζεται την παράμετρο "αθόρυβη" στις πρόσφατες εκδόσεις.
  • Είναι δυνατό να αλλάξετε τη λειτουργία του προγράμματος "StressCPU", απλά αλλάζοντας την προσαρτημένη παράμετρο "ubcdcmd".Έτσι, για να χρησιμοποιήσετε τις άλλες λειτουργίες, χρειάζεται μόνο να αντιγράψετε την καταχώρηση και να αντικαταστήσετε το "stresscpu2" ως: cpuinfo, cpuburn ή mprime24.

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

Η μέθοδος Kernel + Initrd + NFS

Αυτή η μέθοδος είναι αυτή που χρησιμοποιήσαμε στον οδηγό "Οδηγός για την εκκίνηση του δικτύου( PXE) The Ubuntu LiveCD".Αυτή η μέθοδος βασίζεται στο προηγούμενο και χρησιμοποιεί το γεγονός ότι ορισμένες διανομές Linux υποστηρίζουν το "σύστημα αρχείων ρίζας" τους που είναι τοποθετημένο από το NFS.Ο οδηγός του Ubuntu είναι ένα εξαιρετικό παράδειγμα, αλλά είναι βέβαιο ότι έχουμε ήδη προγραμματίσει ένα άλλο για το εγγύς μέλλον."Κρατήστε τα μάτια σας ανοιχτά για ένα Μαύρο Μανιτάρι".

Η μέθοδος MEMDISK

MEMDISK είναι ένα βοηθητικό πρόγραμμα που διανέμεται με το πακέτο Syslinux.Ο σκοπός αυτού του βοηθητικού προγράμματος είναι να σας επιτρέψει να μιμηθείτε ένα "δίσκο"( που αναφέρεται κυρίως σε δισκέτες) χρησιμοποιώντας την εικόνα του.Ο τρόπος με τον οποίο λειτουργεί αυτό το βοηθητικό πρόγραμμα είναι να συνδέσετε τη θέση στη μνήμη RAM που καθορίζει τον τρόπο επικοινωνίας με τη μονάδα δισκέτας( χειριστής διακοπής A.K.A) και τον οδηγεί σε μια νέα θέση που χειρίζεται το πρόγραμμα MEMDISK.Με αυτή τη μέθοδο, ο "πυρήνας" είναι το βοηθητικό πρόγραμμα MEMDISK και το "initrd" είναι το αρχείο εικόνας( floppy)( .img).

Το μόνο πράγμα που πρέπει να σημειωθεί είναι ότι ο FOG έρχεται με μια έκδοση "memdisk" που είναι συμβατή με την έκδοση pxelinux.0 που χρησιμοποιεί.Επομένως, συνιστάται να μην αντιγράψετε το αρχείο "memdisk" που συνοδεύει το αρχείο "img" από την πηγή τους.

Καθώς αυτή η μέθοδος χρησιμοποιείται ήδη άγρια, ακόμα και για τα συνηθισμένα βοηθητικά προγράμματα και τα BootCDs, είναι συνήθως ένα απλό θέμα εύρεσης του αρχείου "IMG" στο BootCD, αντιγραφή του στον κατάλογο TFTPD του διακομιστή PXE και αντιγραφή της καταχώρησης μενού ISOlinuxστο μενού PXElinux.
Λένε ότι "η συζήτηση είναι φτηνή", ώστε να δούμε πώς μπορούμε να προσαρμόσουμε ένα από τα βοηθητικά προγράμματα που χρησιμοποιούν τη μέθοδο MEMDISK από το UBCD, για να δουλέψουν από το PXE.

Το βοηθητικό πρόγραμμα TestMemIV μπορεί να βρεθεί στη δομή του αρχείου UBCD στο "ubcd /images/ testmem4.img.gz".Δεδομένου ότι έχουμε ήδη το βοηθητικό πρόγραμμα δίσκου memdisk, πρέπει να αντιγράψετε το αρχείο "img" στον κατάλογο "howtogeek /utils/".Με τις ρυθμίσεις για τη ρύθμιση FOG, η καταχώρηση του μενού πρέπει να μοιάζει με:

MENU LABEL TestMemIV
TEXT HELP
Δοκιμάζει τη μνήμη και τη μνήμη του συστήματος στις κάρτες γραφικών Nvidia.
ENDTEXT
LINUX memdisk
INITRD howtogeek /utils/ testmem4.img.gz

Αν και αυτό είναι ένα παράδειγμα ενός αρχείου εικονικής δισκέτας από UBCD, τα περισσότερα από τα άλλα προγράμματα UBCD, χρησιμοποιήστε την ίδια εικόνα βάσης για να ξεκινήσετε να εργάζεστε( fdubcd.img.gz) και χρησιμοποιήστε την παρατιθέμενη παράμετρο "ubcdcmd" για αυτόματη εκκίνηση ενός προγράμματος από την εκκίνηση CDROM μετά την εκκίνηση.Αυτό σημαίνει ότι δεν θα είστε σε θέση να μετατρέψετε τα περισσότερα από τα βοηθητικά προγράμματα τους για να μπορέσετε να ξεκινήσετε από το δίκτυο χωρίς κάποια σημαντική αντίστροφη μηχανική.Ενώ μια τέτοια αντίστροφη μηχανική είναι εφικτή( όπως μπορεί να δει εδώ) και είναι μια εξαιρετική άσκηση geek, είναι πέρα ​​από το πεδίο εφαρμογής αυτού του οδηγού.

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

Έτσι, κλειδωμένο πέρα ​​από την Πύλη του Αίματος και πέρα ​​από την Αίθουσα της Φωτιάς, ο Valor περιμένει τον Ήρωα του Φωτός να ξυπνήσει. ..