La procedura seguente è un metodo per eseguire un upgrade di massa automatico da SUSE Linux Enterprise 11 SP2 a SUSE Linux Enterprise 11 SP3. Per creare un profilo AutoYaST appropriato, è necessario effettuare diversi passaggi preparatori, al termine dei quali verrà eseguito il processo di upgrade.
Il formato di file utilizzato dal profilo AutoYaST per l'upgrade automatico è lo stesso utilizzato per l'installazione di AutoYaST. Per ulteriori informazioni su AutoYaST, vedere Capitolo 21, Installazione automatizzata e AutoYaST.
Tuttavia, non ha senso configurare alcune parti del sistema (ad esempio le partizioni) durante l'upgrade. Risulta invece utile impostare opzioni specifiche dell'upgrade mediante il profilo AutoYaST.
Le opzioni dell'upgrade, indicate di seguito, consentono di definire il comportamento del risolutore di dipendenze durante l'upgrade.
<upgrade>
<only_installed_packages
config:type="boolean">false</only_installed_packages>
<stop_on_solver_conflict
config:type="boolean">true</stop_on_solver_conflict>
</upgrade>only_installed_packages
Impostare questa opzione su true per gli upgrade basati su pacchetto. Questa impostazione è consigliata per l'upgrade al service pack successivo dello stesso prodotto. Impostare invece l'opzione su false per gli upgrade basati su modello. Questa impostazione è consigliata per l'upgrade tra le versioni di un prodotto, ad esempio da SLES10 a SLES11.
stop_on_solver_conflict
Consente di definire se deve essere visualizzata la proposta in caso di errore per consentire la risoluzione interattiva delle dipendenze tra pacchetti. È consigliabile impostare questa opzione su true, anche se questo valore potrebbe determinare un processo interattivo durante il quale l'utente è costretto a risolvere i conflitti manualmente.
Le opzioni di selezione del software consentono di definire, oltre ai risultati del Resolver, i componenti da selezionare o deselezionare.
<software>
<packages config:type="list">
<package>autoyast2-installation</package>
<package>apparmor-profile-editor</package>
</packages>
<patterns config:type="list">
<pattern>base</pattern>
</patterns>
<remove-packages config:type="list"/>
<remove-patterns config:type="list"/>
</software>
È molto importante specificare i pacchetti o i modelli da selezionare o deselezionare per risolvere i conflitti relativi ai pacchetti ed evitare l'intervento dell'utente. Dopo il completamento dell'upgrade, il file autoupg_updated.xml appena creato include i pacchetti e i modelli specificati, oltre a quelli che sono stati selezionati o deselezionati per altri motivi.
Le opzioni di backup prima dell'upgrade corrispondono alle funzionalità della proposta di upgrade indicate di seguito.
<backup> <sysconfig config:type="boolean">true</sysconfig> <modified config:type="boolean">true</modified> <remove_old config:type="boolean">false</remove_old> </backup>
sysconfig
consente di definire se deve essere eseguito il backup di sysconfig prima dell'upgrade.
modified
consente di definire se deve essere eseguito il backup dei file di configurazione modificati prima dell'upgrade.
remove_old
consente di definire se devono essere rimossi i backup obsoleti dagli upgrade precedenti.
Per avviare l'upgrade automatico, avviare il supporto di installazione e passare il profilo AutoYaST a tale supporto. È possibile passare il profilo al sistema seguendo una delle due procedure indicate di seguito.
Passare il profilo alla riga di comando del kernel con la stessa procedura seguita per l'installazione di AutoYaST, ovvero utilizzando il parametro autoupgrade=1 autoyast=http://host/path/profile.xml. Per System z, questa è l'unica possibilità.
Passare il parametro autoupgrade=1 alla riga di comando del kernel. Prima di avviare l'upgrade, copiare il profilo in /root/autoupg.xml. In questo modo, non sarà necessario aggiungere alcun parametro del kernel.
La seconda procedura consente di utilizzare un'unica riga di comando del kernel dell'installazione anche in computer diversi. È sufficiente copiare il profilo appropriato nel rispettivo file system.
Se nel computer è installato un solo sistema SUSE Linux Enterprise, non si verificano conflitti di pacchetti e il profilo non è stato impostato in modo che venga arrestato alla proposta di upgrade, l'intero processo è non interattivo. Se si immette la proposta di upgrade, è possibile modificare le rispettive impostazioni.
Al termine dell'upgrade, viene scritto il file /root/autoupg-updated.xml, che include il profilo con le modifiche della selezione applicate dal software effettuate nella proposta. Questa funzionalità risulta particolarmente utile in caso di upgrade di massa di computer in cui sono selezionati gli stessi pacchetti. In questo modo, le risoluzioni dei conflitti di un computer potranno essere facilmente applicate anche ad altri computer, rendendo automatica la risoluzione dei conflitti e non interattivo l'upgrade.
Se invece nel computer sono installati più sistemi SUSE Linux Enterprise, verrà sempre richiesto quale sottoporre ad upgrade. Non è necessario selezionare i sistemi in anticipo.
Una procedura alternativa per avviare il sistema consiste nel creare una sezione aggiuntiva nel menu di GRUB 2 (analogamente a quanto accade per altri boot loader e altre architetture), che avvia l'installazione. Nell'esempio che segue si presuppone che esista una partizione /boot separata cui si fa riferimento in GRUB 2 con (hd 0,0):
title Upgrade
root (hd0,0)
kernel /upgrade/linux
install=inst_source_url autoupgrade=1
autoyast=autoyast_profile_url vga=0x314
initrd /upgrade/initrd
Presupposto dell'esempio sopra riportato è che il kernel per l'installazione e l'initrd di installazione si trovino nella directory /boot/upgrade.
In System z, è necessario aggiungere i parametri al file PARM seguendo la stessa procedura utilizzata per l'esecuzione di un'installazione guidata da AutoYaST.
Per default, durante la seconda fase dell'upgrade automatico non vengono eseguite modifiche della configurazione. L'unica eccezione è costituita dalla configurazione di rete che, per poter essere salvata nel profilo AutoYaST per l'upgrade, deve essere impostata.
Se dopo l'upgrade si ha necessità di modificare la configurazione di alcune aree del sistema (ad esempio è necessario configurare un nuovo servizio), aggiungere le sezioni rilevanti al profilo AutoYaST per l'upgrade. In questo modo, durante l'upgrade verrà salvata la configurazione delle aree di sistema selezionate.
Si tenga presente che la configurazione esistente dell'area di sistema specifica verrà sostituita e, pertanto, eliminata dalla configurazione di AutoYaST.
In genere l'unica modifica della configurazione che deve essere presente nel profilo AutoYaST è la registrazione del sistema con Subscription Management Tool (SMT) oppure SUSE Customer Center (SCC). Se tale modifica non è presente, l'archivio degli aggiornamenti non sarà disponibile e non sarà possibile eseguire gli aggiornamenti, a meno che non venga eseguita nuovamente la configurazione in un momento successivo.
Se si utilizza NetworkManager per la gestione dei dispositivi e delle connessioni di rete, la connessione di rete non è disponibile durante la seconda fase dell'upgrade. Questa condizione impedisce la registrazione del sistema.
Le modifiche apportate al sistema allo scopo di attivare il processo di upgrade (ad esempio l'aggiunta di una nuova sezione al menu di boot loader) possono essere rimosse al termine dell'upgrade.
Questa operazione può essere eseguita automaticamente mediante uno script di post-installazione. Alcuni esempi sono disponibili in Section “Custom User Scripts”, Chapter 4, Configuration and Installation Options, AutoYaST. Uno script di esempio che consente la pulizia del file menu.lst di GRUB 2 è incluso nel file autoupg.xml di esempio. Verificare che lo script corrisponda alla configurazione specifica e che vengano rimosse solo le modifiche desiderate.
Documentazione relativa a Linuxrc: http://en.opensuse.org/SDB:Linuxrc (in lingua inglese)