openSUSE:Passaggio a Tumbleweed

Nel contesto di questo articolo, 'passaggio alla nuova versione' ('upgrade') significa 'passare da una versione più vecchia di openSUSE' (ad esempio da 13.2 o da Leap) a Tumbleweed. Se si ha già Tumbleweed, allora vedere Aggiornare Tumbleweed.

Ci sono 2 meccanismi di passaggio che sono supportati:

  • Passaggio non in linea - viene utilizzato il DVD per l'avvio e per il passaggio alla nuova versione ('upgrade');
  • Passaggio in linea - vengono modificati i repository in un'installazione esistente di openSUSE e viene effettuato il passaggio mentre il sistema è in linea.

Il passaggio non in linea è leggermente più sicuro, perché non c'è modo di avviare delle applicazioni che possano interferire col processo.

Il passaggio in linea è leggermente più conveniente, perché può essere svolto con il sistema in esecuzione, inoltre non richiede lo scaricamento del DVD.

Il passaggio non in linea

Il passaggio non in linea richiede solo pochi passi:

  1. Scaricare il supporto DVD appropriato e masterizzarlo su un DVD, oppure scriverlo su una chiavetta USB;
  2. Avviare dal DVD o dalla chiavetta USB;
  3. Scegliere Aggiornamento;
  4. Seguire la procedura guidata, che scoprirà quale installazione di openSUSE c'è installata e offrirà la possibilità di effettuare il passaggio.

Il passaggio in linea

! Il passaggio in linea con Tumbleweed >= 20200826 è supportato solo da Leap 15.2 !

Sono necessarie tre attività per eseguire l'aggiornamento in linea da una qualsiasi versione a Tumbleweed:

  1. Installare gli aggiornamenti correnti della vecchia distribuzione, se presenti;
  2. Modificare i repository in modo che puntino a Tumbleweed;
  3. Eseguire zypper dup (che è una scorciatoia per zypper dist-upgrade) per passare tutti i pacchetti.

Repository

iniziare rimuovendo i repository esistenti:

mkdir /etc/zypp/repos.d/old
mv /etc/zypp/repos.d/*.repo /etc/zypp/repos.d/old

Aggiungere quindi quelli nuovi (a seconda dell'architettura):

  • x86, x86_64:
zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/oss repo-oss
zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/non-oss repo-non-oss
zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/debug repo-debug
zypper ar -f -c http://download.opensuse.org/update/tumbleweed/ repo-update
  • aarch64:
zypper ar -f -c http://download.opensuse.org/ports/aarch64/tumbleweed/repo/oss repo-oss
zypper ar -f -c http://download.opensuse.org/ports/aarch64/debug/tumbleweed/repo/oss/ repo-debug
zypper ar -f -c http://download.opensuse.org/ports/aarch64/update/tumbleweed/ repo-update

Facoltativamente si possono aggiungere anche i repository per le fonti, di solito si userebbe OBS per questo scopo.

  • x86, x86_64:
zypper ar -f -d -c http://download.opensuse.org/tumbleweed/repo/src-oss repo-src-oss
zypper ar -f -d -c http://download.opensuse.org/tumbleweed/repo/src-non-oss repo-src-non-oss
  • aarch64:
zypper ar -f -d -c http://download.opensuse.org/ports/aarch64/source/tumbleweed/repo/oss/ repo-src-oss


L'elenco dei repository risultante dovrebbe essere simile a questo:

# zypper lr -u
 # | Alias             | Name              | Enabled | Refresh | URI
 --+-------------------+-------------------+---------+---------+--------------------------------------------------------
 1 | repo-debug        | repo-debug        | Yes     | Yes     | http://download.opensuse.org/tumbleweed/repo/debug
 2 | repo-non-oss      | repo-non-oss      | Yes     | Yes     | http://download.opensuse.org/tumbleweed/repo/non-oss
 3 | repo-oss          | repo-oss          | Yes     | Yes     | http://download.opensuse.org/tumbleweed/repo/oss
 4 | repo-src-non-oss  | repo-src-non-oss  | No      | Yes     | http://download.opensuse.org/tumbleweed/repo/src-non-oss
 5 | repo-src-oss      | repo-src-oss      | No      | Yes     | http://download.opensuse.org/tumbleweed/repo/src-oss
 6 | update            | repo-update       | Yes     | Yes     | http://download.opensuse.org/update/tumbleweed/

Il repository di aggiornamento è solitamente vuoto: viene infatti utilizzato solo come ultima risorsa, quando l'istantanea successiva di tumbleweed è in ritardo e deve essere risolto rapidamente un grande buco di sicurezza.

Eseguire l'aggiornamento

Una volta completata la configurazione del repository, usare zypper dup per il passaggio.

Sarebbe una buona idea eseguire i seguenti comandi in una sessione a schermo, in modo da evitare che zypper venga ucciso nel caso che X termini inaspettatamente. Come alternativa è possibile usare tmux, oppure una sessione TTY.
zypper cc -a && zypper ref && zypper dup --allow-vendor-change

Ora fatevi un caffè e divertitevi usando la nostra versione a rilascio continuo.

Nel frattempo, non dimenticatevi di iscrivervi alla mailinglist per rimanere aggiornati sullo sviluppo di Factory.

Se il passaggio non riesce: aggiornare zypper

A volte zypper non riesce ad effettuare il passaggio dicendo che non riesce a trovare dei file, così:

Retrieving: monitoring-tools-1.14.0-4.2.x86_64.rpm ......................................................................................................[error]
File './x86_64/monitoring-tools-1.14.0-4.2.x86_64.rpm' not found on medium 'http://download.opensuse.org/repositories/server:/monitoring/openSUSE_Tumbleweed/'

Quando si guarda in http://download.opensuse.org/repositories/server:/monitoring/openSUSE_Tumbleweed/x86_64/ si vede una versione più recente di monitoring-tools-*.x86_64.rpm

L'errore qui sopra di solito significa che la configurazione locale di zypper non è sincronizzata con il repository. Uno zypper refresh risolve il problema, quindi con questa combinazione il passaggio avviene correttamente:

zypper refresh --force
zypper dist-upgrade