Red Hat Training

A Red Hat training course is available for Red Hat Satellite

Capitolo 9. Dispositivi d'avvio

Una installazione automatizzata (o kickstart) è parte essenziale per il provisioning efficiente di un sistema. Questo capitolo descrive il metodo attraverso il quale preparare i dispositivi d'avvio per un loro uso con i kickstarting client.
Per maggiori informazioni su come utilizzare kickstart per il provisioning consultare RHN Satellite Server Getting Started Guide.
L'immagine d'avvio del CD di Red Hat Enterprise Linux boot.iso è un requisito necessario per la creazione dei dispositivi d'avvio. Assicurtevi che sia presente sul sistema ed annotate la sua posizione.

Procedura 9.1. Dispositivo CD d'avvio

Nota

Il backslash "\" viene usato per rappresentare la continuazione di una riga sul prompt di una shell.
  1. Creare una directory per l'immagine d'avvio:
    mkdir -p temp cd/isolinux
    
  2. Montare l'immagine d'avvio sulla directory temp:
    mount -o loop boot.iso temp
    
  3. Copiare i file necessari per il dispositivo usato per l'avvio dal CD sulla directory precedentemente creata:
    cp -aP temp/isolinux/* cd/isolinux/
    
  4. Smontare la directory temp e modificare i permessi sulla directory cd in modo da risultare leggibile e modificabile da parte dell'utente:
    umount temp
    chmod -R u+rw cd
    
  5. Andare sulla directory ./cd:
    cd ./cd
    
  6. Copiare il file /usr/lib/syslinux/menu.c32 sul CD:
    cp -p /usr/lib/syslinux/menu.c32 isolinux
    
  7. Aprire il file isolinux/isolinux.cfg con l'editor di testo desiderato ed aggiungere la seguente riga:
    mkisofs -o ./custom-boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot \
      -boot-load-size 4 -boot-info-table -J -l -r -T -v -V "Custom RHEL Boot" .
    
  8. Personalizzate qualsiasi parametro per l'avvio ed i target in isolinux.cfg necessario per l'avvio con il CD.
  9. Copiare le informazioni sul CD per completare la procedura.

Procedura 9.2. Avvio PXE

  1. Creare una directory per l'immagine d'avvio:
    mkdir -p temp pxe/pxelinux.cfg
    
  2. Montare l'immagine d'avvio sulla directory temp:
    mount -o loop boot.iso temp
    
  3. Copiare i file necessari per un dispositivo d'avvio PXE sulla directory precedentemente creata:
    cp -aP temp/isolinux/* pxe/
    
  4. Smontare la directory temp e modificare i permessi sulla directory cd in modo da risultare leggibile e modificabile da parte dell'utente:
    umount temp
    chmod -R u+rw pxe
    
  5. Andare sulla directory /pxe:
    cd ./pxe
    
  6. Copiare il file /usr/lib/syslinux/menu.c32 sulla directory /pxe:
    cp -p /usr/lib/syslinux/menu.c32 .
    
  7. Spostare il file isolinux.cfg su pxelinux.cfg/default:
    mv isolinux.cfg pxelinux.cfg/default
    
  8. Rimuovere i file provvisori:
    rm -f isolinux.bin TRANS.TBL
    
  9. Copiare il file /usr/lib/syslinux/pxelinux.0 sulla directory /pxe:
    cp -p /usr/lib/syslinux/pxelinux.0 .
    
  10. Aprire il file pxelinux.cfg/default con l'editor di testo desiderato e personalizzare qualsiasi parametro d'avvio e target per un avvio PXE.

Procedura 9.3. Dispositivo d'avvio USB

Avvertimento

Fate molta attenzione durante l'esecuzione dei suddetti comandi come utente root (necessario per lo svolgimento della maggior parte delle fasi critiche) poichè essi accedono ai file del dispositivo e potrebbero danneggiare il sistema in modo permanente! L'esempio di seguito riportato utilizza /dev/loop0 per il montaggio, assicuratevi di usare il dispositivo corretto per il sistema. Per sapere qual è il dispositivo corretto usare il comando losetup -f.
  1. Creare una directory per l'immagine d'avvio:
    mkdir -p temp usb/extlinux
    
  2. Montare l'immagine d'avvio sulla directory temp:
    mount -o loop boot.iso temp
    
  3. Copiare i file necessari per un dispositivo d'avvio USB sulla directory precedentemente creata:
    cp -aP temp/isolinux/* usb/extlinux/
    
  4. Smontare la directory temp e modificare i permessi sulla directory cd in modo da risultare leggibile e modificabile da parte dell'utente:
    umount temp
    chmod -R u+rw usb
    
  5. Andare sulla directory /usb:
    cd ./usb
    
  6. Copiare il file /usr/lib/syslinux/menu.c32 sulla directory extlinux/:
    cp -p /usr/lib/syslinux/menu.c32 extlinux/
    
  7. Spostare extlinux/isolinux.cfg su extlinux/extlinux.conf:
    mv extlinux/isolinux.cfg extlinux/extlinux.conf
    
  8. Rimuovere i file provvisori:
    rm -f extlinux/isolinux.bin extlinux/TRANS.TBL
    
  9. Convertire il file custom-boot.img e copiarlo:
    dd if=/dev/zero of=./custom-boot.img bs=1024 count=30000
    
  10. Individuare la posizione corretta per il mount per il dispositivo di loopback:
    losetup -f
    /dev/loop0
    
    Impostare il dispositivo loopback con l'immagine d'avvio:
    losetup /dev/loop0 ./custom-boot.img
    
  11. Aprire l'utilità fdisk:
    fdisk /dev/loop0
    
    Creare una partizione primaria avviabile sul dispositivo. Per fare questo usare la seguente combinazione di tasti: n p 1 Enter Enter a 1 p w
  12. Copiare il master boot record (MBR) sul dispositivo loopback:
    dd if=/usr/lib/syslinux/mbr.bin of=/dev/loop0
    
  13. Aggiungere le mappe della partizione al dispositivo loopback:
    kpartx -av /dev/loop0
    
  14. Creare il file system:
    mkfs.ext2 -m 0 -L "Custom RHEL Boot" /dev/mapper/loop0p1
    
  15. Montare il dispositivo:
    mount /dev/mapper/loop0p1 temp
    
  16. Cancellare i file provvisori:
    rm -rf temp/lost+found
    
  17. Copiare la directory extlinux/ in una posizione provvisoria:
    cp -a extlinux/* temp/
    
  18. Installare il bootloader nella posizione provvisoria:
    extlinux temp
    
  19. Smontare la posizione provvisoria:
    umount temp
    
  20. Cancellare le mappe della partizione sul dispositivo loopback:
    kpartx -dv /dev/loop0
    
  21. Cancellare il dispositivo loopback:
    losetup -d /dev/loop0
    
    Sincronizzare le modifiche del file system:
    sync
    
  22. Aprire il file extlinux.conf con l'editor di testo desiderato e personalizzare qualsiasi parametro d'avvio e target per l'avvio PXE.
  23. Trasferire l'immagine su di un dispositivo USB per completare la procedura. Inserire il dispositivo ed eseguire il comando dmesg per controllare la posizione di montaggio. In questo esempio /dev/sdb.
    Smontare il dispositivo USB:
    umount /dev/sdb
    
    Copiare l'immagine sul dispositivo USB:
    dd if=./custom-boot.img of=/dev/sdb