SDB:Installazione da remoto

(Reindirizzamento da SDB:Remote installation)
Questo articolo copre le procedure e i metodi per installare openSUSE su una macchina remota.

Effettuare un'installazione da rete

A volte è necessario fare l'upgrade di una macchina accessibile soltanto dalla rete. Su openSUSE hai differenti possibilità per avviare da remoto il programma di installazione. Queste sono:

Questa guida delinea come effettuare l'installazione con OpenSSH. VNC è simile e per la console seriale la procedura è altrettanto semplice. Questi suggerimenti sono intesi come un consiglio per fare le cose, non costituiscono, quindi, un riferimento approfondito.

NOTA: su un server ospitato, potrebbe essere saggio non usare la partizione di boot di default per l'installazione, ma usare una partizione differente da quella attuale dove risiede il sistema e impiegare grubonce per avviare l'installazione. Se dovesse fallire, il prossimo boot riavvierà il sistema già installato.


Preparazione manuale

Ottenere i file di installazione necessari

Quello di cui hai bisogno per un'installazione da rete è avviare il kernel e l'initrd di installazione sul computer remoto. Allo stesso tempo, hai bisogno di conoscere l'indirizzo IP che il computer avrà. Supponiamo che hai un indirizzo IP fissato. Se usi il DHCP, ometti le definizioni della rete e usa l'indirizzo IP fornito dal tuo server DHCP.

Primo, copia l'immagine del kernel e initrd di installazione nella tua directory /boot:

cd /boot
wget --output-document=vmlinuz.install http://<path to openSUSE>/boot/loader/linux
wget --output-document=initrd.install http://<path to openSUSE>/boot/loader/initrd

Per le versioni stabili di openSUSE

  • Sostituisci <versione> con la tua versione di openSUSE (per esempio 12.1, ...).
  • Sostituisci <arch> con l'architettura del tuo computer (i386 o x86_64).
cd /boot
wget --output-document=vmlinuz.install http://download.opensuse.org/distribution/<versione>/repo/oss/boot/<arch>/loader/linux
wget --output-document=initrd.install http://download.opensuse.org/distribution/<versione>/repo/oss/boot/<arch>/loader/initrd

Per l'ultima Factory in sviluppo

  • Sostituisci <arch> con l'architettura del tuo computer (i386 or x86_64).
cd /boot
wget --output-document=vmlinuz.install http://download.opensuse.org/factory/repo/oss/boot/<arch>/loader/linux
wget --output-document=initrd.install http://download.opensuse.org/factory/repo/oss/boot/<arch>/loader/initrd

Configurare GRUB

A questo punto dobbiamo configurare grub per avviare queste immagini. Se l'indirizzo IP del tuo computer è 192.168.10.10, il gateway verso Internet è 192.168.10.1 e la partizione di root (/) è /dev/hda1, aggiungi una sezione come la seguente al file /boot/grub/menu.lst:

title Boot -- openSUSE 12.1
   root (hd0,0)
   kernel /boot/vmlinuz.install noapic usessh=1 sshpassword="12345678" install=ftp://<path to openSUSE> hostip=192.168.10.10 netmask=255.255.255.0 gateway=192.168.10.1 nameserver=192.168.10.1
   initrd /boot/initrd.install

Nota: La password deve essere lunga almeno 8 caratteri.

Note: Assicurati che l'indirizzo IP è davvero disponibile prima di riavviare. Per fino gli indirizzi locali possono causare problemi se la macchina bersaglio è in un segmento più grande di rete.

Nota che devi inserire l'indirizzo IP nel percorso verso openSUSE invece del nome se non è disponibile un server dei nomi. Quindi rendiamo questa prima scelta quella predefinita nel menu di avvio modificando la linea nel file menu.lst:

default 0

per riflettere il numero di voce.

Nota: Se vuoi avviare un'altra sezione temporaneamente, non cambiare il valore di default. Usa invece il comando grubonce 0, dove 0 è il numero della nuova sezione.

Dopo aver fatto ciò, riavvia.

Per la versione stabile di openSUSE

  • Sostituisci <versione> con la tua versione di openSUSE (per esempio 12.1, ...)
title Boot -- openSUSE <versione>
   root (hd0,0)
   kernel /boot/vmlinuz.install noapic usessh=1 sshpassword="12345645" install=http://download.opensuse.org/distribution/<versione>/repo/oss/ hostip=192.168.42.123/24 gateway=192.168.42.1 nameserver=192.168.42.1
   initrd /boot/initrd.install

Per l'ultima Factory in sviluppo

title Boot -- openSUSE Factory INSTALL
   root (hd0,0)
   kernel /boot/vmlinuz.install usessh=1 sshpassword="12345678" install=http://download.opensuse.org/factory/repo/oss/ hostip=192.139.88.209 netmask=255.255.255.0 gateway=192.139.88.254 nameserver=192.139.88.1
   initrd /boot/initrd.install

Eventualmente, potresti dover inserire l'indirizzo IP del mirror.


Preparazione automatica

La procedura di download del kernel e initrd, e poi di modifica della configurazione di grub può essere in gran parte automatizzata usando lo script Setupg GRUB for NFS install.


Avviare l'installazione

Il computer partirà di nuovo dopo il reboot, ma questa volta avvierà l'immagine di installazione invece del sistema già installato. Per raggiungere l'immagine di installazione, usiamo ssh verso questo sistema:

ssh -X root@192.168.10.10

e inserisci la password che è stata data in sshpassword (nell'esempio sopra è "12345645", dato che da 1 a 8 sarebbe stata troppo ovvia phishers ;) ). Tutto quello che devi fare ora è avviare YaST (o YaST2 per l'installazione grafica) e procedere come in una normale installazione.

Nota: Durante l'installazione se si viene disconnessi prima di avere la possibilità di inserire la password di root, bisogna riconnettersi dopo alcuni minuti e inserire la password di installazione data che è stata settata nel file di grub menu.lst. Dopo, devi avviare lo script /usr/lib/YaST2/startup/YaST2.ssh per continuare l'installazione.


Post installazione

Una volta terminate le operazioni di sopra probabilmente dovrai eseguire lo script /usr/lib/YaST2/startup/YaST2.ssh per proseguire con l'installazione.

Questa parte si potrebbe anche saltare, dato che è utile soltanto per installare X, ma in questo caso il processo appena avviato risulterebbe in qualche modo danneggiato.


Ulteriori informazioni

Le opzioni che possono essere usate nella riga di comando del kernel sono raccolte nel file /usr/share/doc/packages/autoyast2/html/appendix.linuxrc.html oppure in /usr/share/doc/packages/linuxrc/linuxrc.html. Invece di usare un carattere colon (:) per separare i nomi e i valori (come usato in un qualsiasi file /info), usa un simbolo di uguaglianza (=) quando aggiungi queste opzioni nel menu di GRUB alla linea di comando del kernel. Linuxrc cerca sempre di trovare più informazioni possibili riguardanti il computer, quindi se non ti offre informazioni sulla connessione di rete, proverà ad usare la configurazione DHCP relativa alla rete stessa.


Vedi anche


Collegamenti esterni