Vai al contenutoNaviga tra le pagine: pagina precedente [tasto di scelta p]/pagina successiva [tasto di scelta n]
documentation.suse.com / Documentazione di SUSE Linux Enterprise Server / Guida alla distribuzione / Configurazione di un server di installazione / Preparazione dell'avvio del sistema di destinazione
Si applica a SUSE Linux Enterprise Server 12 SP5

9 Preparazione dell'avvio del sistema di destinazione

SUSE® Linux Enterprise Server può essere installato in diversi modi. Oltre alla consueta procedura di installazione tramite supporti, descritta nel Capitolo 6, Installazione con YaST, per l'installazione di SUSE Linux Enterprise Server è possibile scegliere tra vari approcci basati sulla rete oppure adottare un approccio completamente automatico.

Negli esempi riportati di seguito viene utilizzato NFS per i dati di installazione. Se si desidera utilizzare FTP, SMB o HTTP, vedere Capitolo 8, Configurazione del server contenente le origini dell'installazione.

Nota
Nota: terminologia

Nelle sezioni successive, il sistema in cui viene installato il nuovo SUSE Linux Enterprise Server viene indicato come sistema di destinazione o destinazione dell'installazione. Il termine archivio (chiamato in precedenza «origine dell'installazione») viene utilizzato per tutte le origini dei dati di installazione. Tra queste vi sono i supporti fisici, quali CD e DVD, e i server di rete che distribuiscono i dati di installazione all'interno della rete in uso.

In questa sezione vengono illustrate le attività di configurazione necessarie per scenari di avvio complessi. Vengono presentati esempi di configurazione pronti all'uso per DHCP, avvio PXE, TFTP e Wake on LAN.

Negli esempi si presuppone che i server DHCP, TFTP e NFS risiedano nello stesso computer con IP 192.168.1.1. Tutti i servizi possono risiedere tranquillamente in computer diversi. Assicurarsi di modificare gli indirizzi IP secondo necessità.

9.1 Configurazione di un server DHCP

Oltre a fornire ai client di rete l'allocazione automatica dell'indirizzo, il server DHCP comunica l'indirizzo IP del server TFTP e il file che deve essere ricavato dalle routine di installazione sul computer di destinazione. Il file di cui si deve effettuare l'upload dipende dall'architettura del computer di destinazione e dall'uso dell'avvio nel BIOS o nell'UEFI esistente.

  1. Eseguire il login come root nel computer che ospita il server DHCP.

  2. Abilitare il server DHCP eseguendo il comando systemctl enable dhcpd.

  3. Aggiungere le righe seguenti ad una configurazione di sottorete del file di configurazione del server DHCP ubicato in /etc/dhcpd.conf:

    # The following lines are optional
    option domain-name "my.lab";
    option domain-name-servers 192.168.1.1;
    option routers 192.168.1.1;
    option ntp-servers 192.168.1.1;
    ddns-update-style none;
    default-lease-time 3600;
    
    # The following lines are required
    option arch code 93 = unsigned integer 16; # RFC4578
    subnet 192.168.1.0 netmask 255.255.255.0 {
     next-server 192.168.1.1;
     range 192.168.1.100 192.168.1.199;
     default-lease-time 3600;
     max-lease-time 3600;
     if option arch = 00:07 or option arch = 00:09 {
       filename "/EFI/x86/grub.efi";
     }
     else if option arch = 00:0b {
       filename "/EFI/aarch64/bootaa64.efi";
     }
     else  {
       filename "/BIOS/x86/pxelinux.0";
     }
    }

    In questo esempio di configurazione viene utilizzata la sottorete 192.168.1.0/24 con DHCP, DNS e il gateway sul server con l'IP 192.168.1.1. Assicurarsi che tutti gli indirizzi IP utilizzati siano stati modificati secondo il layout della rete. Per ulteriori informazioni sulle opzioni disponibili in dhcpd.conf, vedere la documentazione relativa a dhcpd.conf.

  4. Riavviare il server DHCP eseguendo il comando systemctl restart dhcpd.

Se si prevede di utilizzare SSH per il controllo remoto di un'installazione PXE e Wake on LAN, specificare l'indirizzo IP che dovrebbe essere fornito alla destinazione dell'installazione da DHCP. A tale scopo, modificare la configurazione DHCP precedentemente indicata in base all'esempio seguente:

group {
 host test {
   hardware ethernet MAC_ADDRESS;
   fixed-address IP_ADDRESS;
   }
}

L'istruzione host introduce il nome host della destinazione dell'installazione. Per associare il nome host e l'indirizzo IP a un host specifico, è necessario conoscere e specificare l'indirizzo hardware (MAC) del sistema. Sostituire tutte le variabili utilizzate in questo esempio con i valori effettivi che corrispondono all'ambiente in uso.

Dopo aver riavviato il server DHCP, viene fornito un indirizzo IP statico per l'host specificato che consente la connessione al sistema tramite SSH.

9.2 Configurazione di un server TFTP

Se si utilizza un'installazione basata su SUSE, è possibile utilizzare YaST per configurare un server TFTP. In alternativa, configurarlo manualmente. Il server TFTP fornisce l'immagine di avvio al sistema di destinazione dopo che questo viene avviato e invia una richiesta per l'immagine.

9.2.1 Configurazione di un server TFTP mediante YaST

  1. Eseguire il login come utente root.

  2. Avviare YaST › Servizi di rete › Server TFTP e installare il pacchetto necessario.

  3. Fare clic su Abilita per verificare se il server è stato avviato e incluso nelle routine di avvio. Non sono necessarie ulteriori azioni da parte dell'utente per garantire che xinetd esegua tftpd al momento dell'avvio.

  4. Fare clic su Apri porta nel Firewall per aprire la porta corrispondente nel firewall in esecuzione nel computer in uso. Se nel server in uso non vi sono firewall in esecuzione, questa opzione non è disponibile.

  5. Fare clic su Sfoglia per esplorare la directory dell'immagine di avvio. La directory di default /srv/tftpboot viene creata e selezionata automaticamente.

  6. Fare clic su Fine per applicare le impostazioni desiderate e avviare il server.

9.2.2 Configurazione manuale di un server TFTP

  1. Eseguire il login come root e installare i pacchetti tftp e xinetd.

  2. Modificare la configurazione di xinetd in /etc/xinetd.d per verificare che il server TFTP venga eseguito all'avvio:

    1. Se non esiste, creare un file denominato tftp in questa directory mediante il comando touch tftp. Quindi eseguire chmod 755 tftp.

    2. Aprire il file tftp e aggiungere le righe seguenti:

      service tftp
      {
              socket_type            = dgram
              protocol               = udp
              wait                   = yes
              user                   = root
              server                 = /usr/sbin/in.tftpd
              server_args            = -s /srv/tftpboot
              disable                = no
      }
    3. Salvare il file e riavviare xinetd tramite il comando systemctl restart xinetd.

9.3 Installazione di file nel server TFTP

Nelle procedure seguenti è descritto come preparare il server per i computer di destinazione con UEFI e BIOS nelle architetture x86 a 32 e 64 bit. Nella struttura preparata sono inoltre già presenti i sistemi AArch64.

9.3.1 Preparazione della struttura

In questa procedura si sostituiscono OS_VERSION e SP_VERSION con le versioni del sistema operativo e del service pack utilizzate. Utilizzare ad esempio sles12 e sp5.

  1. Creare una struttura in /srv/tftpboot per supportare le varie opzioni.

    root # mkdir -p /srv/tftpboot/BIOS/x86
    root # mkdir -p /srv/tftpboot/EFI/x86/boot
    root # mkdir -p /srv/tftpboot/EFI/aarch64/boot
    root # mkdir -p /srv/install/x86/OS_VERSION/SP_VERSION/cd1
    root # mkdir -p /srv/install/aarch64/OS_VERSION/SP_VERSION/cd1
  2. Effettuare il download delle immagini ISO dei DVD di SUSE Linux Enterprise Server 12 SP5 dal sito Web SUSE per tutte le architetture necessarie.

  3. Montare i file ISO come descritto nella Sezione 8.6, «Utilizzo delle immagini ISO dei supporti di installazione sul server». Affinché i file siano disponibili dopo un riavvio, creare una voce in /etc/fstab. Per un'installazione standard è necessario solo DVD 1.

    root # mount -o loop PATH_TO_ISO /srv/install/ARCH/OS_VERSION/SP_VERSION/cd1/

    Ripetere il passaggio per tutte le architetture necessarie e sostituire ARCH con x86 o aarch64 e PATH_TO_ISO con il percorso del file ISO corrispondente.

  4. Copiare i file kernel, initrd e message necessari per l'avvio BIOS e UEFI x86 nell'ubicazione appropriata.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd message /srv/tftpboot/BIOS/x86/
  5. Assicurarsi che il percorso /srv/install sia disponibile tramite NFS. Per informazioni, vedere Sezione 8.2, «Configurazione manuale di un archivio NFS».

9.3.2 File BIOS per x86

  1. Copiare pxelinux.0 nella cartella TFTP e preparare una sottocartella per il file di configurazione.

    root # cp /usr/share/syslinux/pxelinux.0 /srv/tftpboot/BIOS/x86/
    root # mkdir /srv/tftpboot/BIOS/x86/pxelinux.cfg
  2. Creare /srv/tftpboot/BIOS/x86/pxelinux.cfg/default e aggiungere le seguenti righe:

    default install
    
    # hard disk
    label harddisk
     localboot -2
    # install
    label install
     kernel linux
     append initrd=initrd install=nfs://192.168.1.1:/srv/install/x86/OS_version/SP_version/cd1
    
    display message
    implicit 0
    prompt 1
    timeout 5
  3. Modificare il file /srv/tftpboot/BIOS/x86/message in modo che rifletta il file default appena modificato.

    Welcome to the Installer Environment!
    
    To start the installation enter 'install' and press <return>.
    
    Available boot options:
     harddisk   - Boot from Hard Disk (this is default)
     install    - Installation

9.3.3 File UEFI per x86

In questa procedura si sostituiscono OS_version e SP_version con le versioni del sistema operativo e del service pack utilizzate. Utilizzare ad esempio sles12 e sp5.

  1. Copiare tutti i file grub2 necessari per l'avvio UEFI.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootx64.efi grub.efi MokManager.efi /srv/tftpboot/EFI/x86/
  2. Copiare il kernel e i file initrd nella struttura della directory.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd /srv/tftpboot/EFI/x86/boot
  3. Creare il file /srv/tftpboot/EFI/x86/grub.cfg includendo almeno il contenuto seguente:

    set timeout=5
    menuentry 'Install OS_version SP_version for x86_64' {
      linuxefi /EFI/x86/boot/linux \
       install=nfs://192.168.1.1/srv/install/x86/OS_version/SP_version/cd1
      initrdefi /EFI/x86/boot/initrd
    }

9.3.4 File UEFI per AArch64

In questa procedura si sostituiscono OS_version e SP_version con le versioni del sistema operativo e del service pack utilizzate. Utilizzare ad esempio sles12 e sp5.

  1. Questa procedura è molto simile a quella utilizzata nell'ambiente EFI x86_64. Iniziare con il copiare i file necessari per l'avvio UEFI di un ambiente grub2-efi.

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootaa64.efi /srv/tftpboot/EFI/aarch64/
  2. Copiare il kernel e il file initrd nella struttura della directory..

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/boot/aarch64
    root # cp -a linux initrd /srv/tftpboot/EFI/aarch64/boot
  3. A questo punto creare il file /srv/tftpboot/EFI/grub.cfg e aggiungere il contenuto seguente:

    menuentry 'Install OS_version SP_version' {
      linux /EFI/aarch64/boot/linux network=1 usessh=1 sshpassword="suse" \
       install=nfs://192.168.1.1:/srv/install/aarch64/OS_version/SP_version/cd1 \
       console=ttyAMA0,115200n8
      initrd /EFI/aarch64/boot/initrd
    }

    Questa aggiunta al file di configurazione offre alcune altre opzioni per abilitare la console seriale e consentire l'installazione tramite SSH, utile per i sistemi che non dispongono di un'interfaccia per la console KVM standard. Si tratta infatti di un'impostazione per una piattaforma ARM specifica.

9.4 Opzioni di configurazione di PXELINUX

Le opzioni elencate di seguito sono solo una parte di tutte le opzioni disponibili per il file di configurazione di PXELINUX.

APPEND OPTIONS

Consente di aggiungere una o più opzioni alla riga di comando del kernel. Queste vengono aggiunte sia per l'avvio automatico, sia per quello manuale. Le opzioni vengono aggiunte all'inizio della riga di comando del kernel e solitamente possono essere ignorate dalle opzioni del kernel immesse esplicitamente.

APPEND -

Indica che non vi sono aggiunte. APPEND, seguito da un singolo trattino come argomento in una sezione LABEL, può essere utilizzato per ignorare l'opzione APPEND generale.

DEFAULT KERNEL_OPTIONS...

Consente di impostare la riga di comando del kernel di default. Se PXELINUX viene avviato automaticamente, agisce come se le voci che seguono DEFAULT fossero state digitate al prompt di avvio, ad eccezione dell'opzione auto che viene aggiunta automaticamente, indicando un avvio automatico.

Se non sono disponibili file di configurazione o nel file di configurazione non è definita alcuna voce DEFAULT, per default il nome del kernel è «linux», senza opzioni.

IFAPPEND FLAG

Aggiunge un'opzione specifica alla riga di comando del kernel a seconda del valore di FLAG. L'opzione IFAPPEND è disponibile solo su PXELINUX. Per FLAG è previsto un valore descritto nella Tabella 9.1, «Opzioni della riga di comando del kernel generate e aggiunte da IFAPPEND»:

Tabella 9.1: Opzioni della riga di comando del kernel generate e aggiunte da IFAPPEND

Argomento

Riga di comando del kernel generata/Descrizione

1

ip=CLIENT_IP:BOOT_SERVER_IP:GW_IP:NETMASK

I segnaposto vengono sostituiti in base all'input ricevuto dal server di avvio DHCP/BOOTP o PXE.

Questa opzione non sostituisce l'esecuzione di un client DHCP nel sistema avviato. Senza rinnovi regolari, il lease acquisito dal BIOS PXE scadrà e l'indirizzo IP potrà essere riutilizzato dal server DHCP.

2

BOOTIF=MAC_ADDRESS_OF_BOOT_INTERFACE

Questa opzione è utile se si desidera evitare timeout quando il server di installazione esamina un'interfaccia LAN dopo l'altra fino a quando non ottiene una risposta da un server DHCP. Questa funzione consente a un programma initrd di determinare l'interfaccia di avvio del sistema. linuxrc legge l'opzione e utilizza l'interfaccia di rete specificate.

4

SYSUUID=SYSTEM_UUID

Aggiunge UUID sotto forma di esadecimali in minuscolo. Vedere /usr/share/doc/packages/syslinux/pxelinux.txt

LABEL LABEL KERNEL IMAGE APPEND OPTIONS...

Indica che se si immette LABEL come kernel da avviare, PXELINUX dovrà invece avviare IMAGE e sarà necessario utilizzare le opzioni APPEND specificate al posto di quelle indicate nella sezione generale del file (prima del primo comando LABEL). L'impostazione di default di IMAGE è la stessa di LABEL e, se non viene fornita alcuna opzione APPEND, per default viene utilizzata la voce generale, se presente. Sono ammesse fino a 128 voci LABEL.

PXELINUX utilizza la sintassi seguente:

label MYLABEL
  kernel MYKERNEL
  append MYOPTIONS

Le etichette vengono modificate come se fossero nomi di file e devono essere univoche dopo essere state modificate. Le due etichette «v2.6.30» e «v2.6.31», ad esempio, non sarebbero distinguibili in PXELINUX poiché entrambe vengono modificate e risultano nello stesso nome file DOS.

Il kernel non deve essere necessariamente un kernel di Linux. Può essere anche un settore di avvio o un file COMBOOT.

LOCALBOOT TYPE

In PXELINUX, se si specifica LOCALBOOT 0 invece dell'opzione KERNEL, viene chiamata questa etichetta e viene avviato il disco locale invece del kernel.

Argomento

Descrizione

0

Consente di eseguire un avvio normale.

4

Consente di eseguire un avvio locale mediante Universal Network Driver Interface (UNDI) ancora residente in memoria.

5

Consente di eseguire l'avvio locale mediante lo stack PXE completo, incluso il driver UNDI, ancora residente in memoria.

Tutti gli altri valori non sono definiti. Se non si conoscono gli stack UNDI o PXE, specificare 0.

TIMEOUT TIME-OUT

Indica il tempo di attesa al prompt di avvio prima dell'avvio automatico, espresso in unità di 1/10 di secondo. Il timeout viene annullato quando l'utente digita un testo qualsiasi con la tastiera, presupponendo che l'utente completerà il comando iniziato. Un valore di timeout pari a zero disabilita completamente il timeout. Questa è anche l'impostazione di default. Il valore massimo di timeout possibile è 35996 (poco meno di un'ora).

PROMPT flag_val

Se flag_val è 0, il prompt di avvio viene visualizzato solo se viene premuto Shift o Alt oppure se è selezionato il blocco delle maiuscole o il blocco dello scorrimento. Questa è l'impostazione di default. Se flag_val è 1, il prompt di avvio viene sempre visualizzato.

F2  FILENAME
F1  FILENAME
..etc...
F9  FILENAME
F10 FILENAME

Consente di visualizzare il file indicato sullo schermo quando viene premuto un tasto funzione al prompt di avvio. Può essere utilizzato per implementare la Guida online relativa al preavvio, presumibilmente per le opzioni della riga di comando del kernel. Per la compatibilità con versioni precedenti, è possibile inoltre immettere F10 come F0. Si noti che non esiste attualmente alcun modo per associare i nomi file a F11 e F12.

9.5 Preparazione del sistema di destinazione per l'avvio PXE

Preparare il BIOS del sistema per l'avvio PXE includendo l'opzione PXE nell'ordine di avvio del BIOS.

Avvertimento
Avvertimento: ordine di avvio nel BIOS

Non posizionare l'opzione PXE all'inizio dell'opzione di avvio del disco rigido nel BIOS, altrimenti il sistema cercherà di reinstallarsi a ogni avvio.

9.6 Preparazione del sistema di destinazione per Wake on LAN

Con Wake on LAN (WOL) è necessario che l'opzione BIOS corrispondente sia abilitata prima dell'installazione. Trascrivere inoltre l'indirizzo MAC del sistema di destinazione. Questi dati sono indispensabili per avviare Wake on LAN.

9.7 Wake on LAN

Con Wake on LAN è possibile accendere un computer mediante uno speciale pacchetto di rete contenente l'indirizzo MAC del computer. Poiché ogni computer dispone di un identificatore MAC univoco, non si corre il rischio di accendere accidentalmente il computer sbagliato.

Importante
Importante: Wake on LAN su segmenti di rete diversi

Se il computer di controllo non si trova sullo stesso segmento di rete della destinazione dell'installazione che si desidera attivare, configurare le richieste WOL da inviare come multicast oppure controllare un computer in remoto in tale segmento di rete in modo che agisca come mittente delle richieste.

Gli utenti di SUSE Linux Enterprise Server possono utilizzare il modulo WOL di YaST per configurare facilmente Wake on LAN. Gli utenti di altre versioni di sistemi operativi basati su SUSE Linux possono utilizzare uno strumento a riga di comando.

9.8 Wake on LAN con YaST

  1. Eseguire il login come utente root.

  2. Avviare YaST › Servizi di rete › WOL.

  3. Fare clic su Aggiungi, quindi aggiungere il nome e l'indirizzo MAC del sistema di destinazione.

  4. Per accendere questo computer, scegliere la voce appropriata, quindi fare clic su Wake up (Attiva).

9.9 Avvio da CD o unità USB anziché da PXE

È inoltre possibile utilizzare un CD, DVD o un'unità USB con un'immagine di sistema piccola piuttosto che eseguire l'avvio da PXE. I file necessari verranno caricati tramite NFS dopo il caricamento del kernel e dell'initrd. Con mksusecd è possibile creare un'immagine avviabile. Ciò può essere utile nel caso in cui il computer di destinazione non supporti l'avvio da PXE.

Installarla con sudo zypper in mksusecd. Usare il seguente comando per creare un'immagine ISO avviabile:

tux > mksusecd --create image.iso \
--net=nfs://192.168.1.1:/srv/install/ARCH/OS_VERSION/SP_VERSION/cd1  \
/srv/tftpboot/EFI/ARCH/boot

Sostituire ARCH con la cartella corrispondente nell'architettura del sistema di destinazione. Sostituire anche OS_version e SP_version in base ai percorsi nella Sezione 9.3, «Installazione di file nel server TFTP».

Invece di utilizzare un server NFS per l'opzione --net, è anche possibile utilizzare un archivio HTTP, ad esempio l'archivio openSUSE:

tux > mksusecd --create image.iso \
--net=http://download.opensuse.org/tumbleweed/repo/oss/suse \
/srv/tftpboot/EFI/ARCH/boot

È possibile scrivere image.iso in un DVD o CD o in una chiavetta USB utilizzando dd:

root # dd if=image.iso of=/dev/USB_DEVICE

Sostituire USB_DEVICE con il nome dispositivo della chiavetta USB. Verificare con esattezza il nome del dispositivo per assicurarsi di non eliminare inavvertitamente i dati in un'altra unità.