> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell-universal/it/getting-started/downgrade.md).

# Downgrade

Ripristini PowerShell Universal a una versione precedente, con modifiche ai file di configurazione, downgrade dello schema del database e ripristino dei file dell'applicazione.

In alcuni scenari può essere necessario ripristinare una versione precedente di PowerShell Universal. Ciò può essere dovuto a una modifica di una funzionalità o a un bug che influisce sul sistema in modo troppo rilevante per continuare a usare quella versione. Consigliamo [sempre](/powershell-universal/it/getting-started/upgrading.md) di convalidare una versione in un ambiente di sviluppo o di controllo qualità prima di eseguire l'aggiornamento in produzione, così da evitare di dover eseguire un downgrade.

{% hint style="danger" %}
Il downgrade può essere complicato e soggetto a errori. Consigliamo di ripristinare da un backup o da uno snapshot anziché eseguire un downgrade.
{% endhint %}

## File di configurazione

Il downgrade dei file di configurazione richiederà la rimozione o la modifica dei file del repository `.universal` per eliminare o rinominare i nuovi parametri. I nuovi cmdlet verranno ignorati da PowerShell Universal. Se un cmdlet è stato rinominato, potrebbe essere necessario aggiornarlo anch'esso. Dovrà consultare le [note di rilascio](https://devolutions.net/powershell-universal/release-notes/) per vedere quali cmdlet sono cambiati in ciascuna versione.

Le versioni principali possono includere modifiche che comportano interruzioni. Le versioni secondarie possono contenere cmdlet o parametri aggiuntivi, ma non presentano modifiche che comportano interruzioni.

Può trovare informazioni su ciascun file di configurazione nella [pagina Repository](/powershell-universal/it/config/repository.md).

È molto più semplice ripristinare da un backup dei file di configurazione effettuato prima dell'aggiornamento anziché aggiornare manualmente i file.

## Database

Il ripristino del database a una versione precedente richiede il downgrade dello schema. Questa operazione può essere eseguita con [PSU CLI](/powershell-universal/it/config/psucli.md). Usando il comando `schema`, potrà selezionare la versione precedente.

{% hint style="danger" %}
Il downgrade dello schema del database può essere un'operazione distruttiva. Potrebbe rimuovere tabelle e colonne che contengono dati. Eseguire sempre il backup di un database prima di effettuare queste operazioni.
{% endhint %}

Di seguito è riportato un esempio di downgrade dello schema di un database SQLite alla versione 5.3.0. Prima di procedere dovrà arrestare i servizi di PowerShell Universal.

{% code overflow="wrap" %}

```powershell
.\psu.exe schema --target-version '5.3.0' --connection-string "Data Source=C:\ProgramData\UniversalAutomation\database.db" --database-type "SQLite"
```

{% endcode %}

## Password degli account locali

A partire da PowerShell Universal 2026.3.0, le password degli account locali vengono archiviate come hash unidirezionali anziché come valori crittografati. Le versioni precedenti non possono usare questi hash per autenticare gli account locali. Di conseguenza, il downgrade dalla versione 2026.3.0 o successiva a una versione precedente richiede la reimpostazione delle password degli account locali.

Dopo aver installato o estratto la versione di destinazione, mantenga arrestato il servizio PowerShell Universal e usi lo [strumento a riga di comando psu](/powershell-universal/it/config/psucli.md) incluso in quella versione per reimpostare una password di amministratore. Può anche usare un altro metodo di recupero della password supportato dalla versione di destinazione.

{% code overflow="wrap" %}

```powershell
.\psu.exe admin reset --connection-string 'Data Source=C:\ProgramData\UniversalAutomation\database.db'
```

{% endcode %}

Il comando predefinito reimposta la password dell'account `admin` su `admin`. Specifichi il tipo di database e le opzioni di crittografia della cassaforte quando necessario per la sua installazione. Dopo aver avviato il server sottoposto a downgrade, acceda con l'account amministratore reimpostato, cambi immediatamente la sua password e reimposti le password di tutti gli account locali rimanenti.

## File dell'applicazione

Il downgrade dei file dell'applicazione è in genere un processo semplice e dipende da come ha installato il prodotto. Dovrà eseguire il downgrade dei file di configurazione e del database prima di effettuare il downgrade dell'applicazione.

### MSI

Per eseguire il downgrade di un'installazione MSI, dovrà prima disinstallare la versione corrente. PowerShell Universal non consentirà di eseguire un downgrade. Al termine della disinstallazione, esegua un'installazione della versione di destinazione.

Se ha configurato un account di servizio, dovrà impostarlo di nuovo dopo l'installazione. Ciò richiederà le credenziali dell'account di servizio.

### ZIP

Per eseguire il downgrade di un'installazione ZIP, è sufficiente eliminare i file dell'applicazione PowerShell Universal. Una volta svuotata la directory, estragga il file ZIP della versione di destinazione nella directory di installazione. Si assicuri di eseguire `Get-ChildItem -Recurse | Unblock-File` dopo averlo fatto.

### IIS

Analogamente all'installazione ZIP, rimuova i file della versione precedente ed estragga e sblocchi i file della versione di destinazione. Si assicuri che il sito web e l'App Pool siano arrestati prima di procedere.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell-universal/it/getting-started/downgrade.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
