Utilizzare PowerShell per ripristinare una cassetta postale di Exchange eliminata


Indipendentemente da come hai eliminato accidentalmente la cassetta postale di una persona in Exchange, puoi probabilmente ripristinarla utilizzando PowerShell (PoSh). La chiave lo sta facendo non appena ti rendi conto che la cassetta postale è stata cancellata.

È un momento che mi fa saltare la gola quando ci rendiamo conto di averlo fatto per caso. Se hai eliminato solo alcuni messaggi e-mail, possiamo mostrarti anche come recuperare le email cancellate in Office 365.

Prima di iniziare, tieni presente che ciò è pensato per ripristinare le cassette postali eliminate in Exchange Onlineper Office 365 ambiente e Exchange 2010. Supponiamo inoltre che tu disponga dei diritti amministrativi per utilizzare i metodi descritti e di aver effettuato alcuni script di base di PowerShell.

Cosa succede quando viene eliminata una cassetta postale?

La cassetta postale viene spostata nel Azure Active Directory(AD) riciclare bin in Exchange Online o nella directory Cassette postali disconnessein Exchange 2010.

Può rimanere lì per un massimo di 30 giorni a seconda dei criteri di conservazione in atto. Questo ci dà un periodo di grazia per riconoscere il nostro errore e recuperare da esso.

Recupera cassetta postale cancellata in Exchange Online

Connetti a Exchange Online tramite PowerShell

Nella sessione locale, apri la console Powershell e usa il comando seguente per impostare le credenziali di accesso nella variabile.

In_content_1 all: [300x250] / dfp: [640x360]->
$userCredential

In questo modo sarà più facile lavorare con altri script in seguito.

$userCredential = get-Credential

Si aprirà una finestra in cui è possibile inserire nome utente e password per la gestione di Exchange Online.

Successivamente, imposta il livello della politica di esecuzione in modo che possiamo effettivamente fare le cose nella nostra sessione. Questo ci consente di eseguire i nostri comandi non firmati. Ma potresti voler imparare anche best practice per la firma degli script di PowerShell.

set-ExecutionPolicy Unrestricted

Quando richiesto, premi Yper Sì.

Ora creeremo la variabile $ sessionda utilizzare per aprire una connessione tra il computer locale e Exchange Online.

$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection

Powershell-liveidè l'id del tuo sito Office. Di solito questa è una variante del nome della tua azienda.

Utilizzare il seguente comando per aprire una sessione PoSh su Exchange Online:

import-PSSession $Session -DisableNameChecking

Ora stiamo lavorando con PowerShell direttamente in Exchange Online, anche se sei seduto sul nostro computer.

Ripristina cassetta postale con PowerShell

La parte successiva è semplicissima. Effettuare la connessione ci avrà impiegato molto più tempo.

Tutto ciò che dobbiamo fare è eseguire il cmdlet mostrato di seguito:

undo-SoftDeletedMailbox [email protected] -WindowsLiveID [email protected] -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)

Cambia entrambe le istanze di [email protected]con il nome della cassetta postale appropriato e Windows LiveID della cassetta postale che vogliamo ripristinare. Si noti che potrebbero non essere gli stessi.

Dobbiamo anche impostare una nuova password per la casella di posta. Cambia newpasswordnello script con la password che preferisci. Dovrai inoltrarlo all'utente e chiedergli di cambiare la password al successivo accesso.

Infine, utilizza il cmdlet successivo per verificare che funzioni.

get-Mailbox [email protected]

Se è stato ripristinato, il cmdlet restituirà informazioni sulla cassetta postale ripristinata. Se restituisce un errore, eseguire nuovamente i comandi e assicurarsi che vengano utilizzati la cassetta postale corretta e Windows LiveID.

Se il problema persiste, sarà necessario ripristinare la cassetta postale da un backup del sistema. Esistono molti tipi di backup del sistema, quindi questo va oltre lo scopo di ciò che stiamo facendo oggi.

Al termine, dobbiamo chiudere la sessione PoSh. Il numero di sessioni PoSh che abbiamo in corso è limitato. Lasciandolo aperto utilizza una di quelle sessioni. A meno che non lo chiudiamo, dovremo attendere il timeout della sessione prima di poterne iniziare un'altra.

remove-PSSession $Session

Questo è tutto. Potresti anche voler scrivere questo script in un modulo PowerShell per facilità d'uso se si verifica di nuovo.

Ripristina cassetta postale eliminata in Exchange 2010

Non funziona " t funziona per Office 365 o ambienti ibridi. Funziona solo con Exchange 2010 locale.

Sul server di posta, apri la Exchange Management Console(EMC).

Vai a Configurazione destinatario>Cassetta postale disconnessa. Dovremmo vedere la cassetta postale dell'utente lì.

In caso contrario, il processo di pulizia del database delle cassette postali non è ancora avvenuto. Va bene, possiamo forzarlo.

  • Apri Exchange Management Shell(EMS) come amministratore. Qui è dove possiamo far funzionare PowerShell specifico per Exchange.
  • Ora inseriamo il cmdlet:
  • Get-MailboxDatabase | Clean-MailboxDatabase
    • Una volta fatto ciò, torniamo a EMC e fai clic con il pulsante destro del mouse su Cassetta postale disconnessa, quindi fai clic su su Aggiorna.
    • Ora dovremmo vedere la cassetta postale lì, ed è, insieme a un'altra che è stata eliminata di recente.
      • Torna a EMS ed inserisci il cmdlet:
      • Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
        • Nome utenteè il nome dell'account Windows della persona (come Test utente) ,e Database delle cassette postaliè il nome del database elencato accanto il loro nome nella finestra Disconnected Mailboxin EMC.
        • Aggiorna Cassetta postale disconnessae dovresti vedere che la loro cassetta postale non è più visualizzata lì. Passa a Configurazione destinatario>Cassetta postalee assicurati che la cassetta postale dell'utente sia presente.
        • Controlla per assicurarsi che tutte le impostazioni siano corrette, come l'indirizzo e-mail e l'alias . Se sembra buono, la prossima volta che l'utente apre Outlook, tutto sarà lì com'era.

          Cassetta postale ripristinata

          Ecco come usare PowerShell per ripristinare le cassette postali in Exchange Online e Exchange 2010. Se si dispone di un ambiente ibrido, è un po 'più complicato ma può essere fatto.

          Il solo fatto di sapere che esistono questi diversi cmdlet ti mette in una buona posizione per lavorare con Exchange, indipendentemente dalla versione o dalla configurazione.

          How to Migrate Exchange Mailboxes to Office 365

          Related posts:


          1.10.2019