Bash su Windows / Windows Subsytem per Linux (WSL) non installato correttamente / si blocca


11

Ho ricevuto l'aggiornamento dell'anniversario di Windows e ho provato a installare Bash. Ho eseguito bash dal prompt dei comandi (modalità non amministratore) e si è bloccato durante il tentativo di estrarre i file. Ho chiuso la finestra e ho provato a fare lo stesso con privilegi elevati (prompt dei comandi eseguito come admin ).

Ma ora quando entro bash, è bloccato lì e non si avvia né mi chiede di installare bash. Ho potuto vedere il processo bash che consumava il 25% della CPU in background.

Quando provo a disinstallare bash in esecuzione lxrun /uninstall /full, non riesce a disinstallare:

C: \ WINDOWS \ system32> lxrun / uninstall / full
Questo disinstalla Ubuntu su Windows.

Ciò rimuoverà l'ambiente Ubuntu nonché eventuali modifiche, nuove applicazioni e dati utente.

Digita "y" per continuare: y

Disinstallazione ...

Errore: 0x80080005

Come posso ripristinare il sottosistema Linux per Windows 10?

EDIT : provato anche le opzioni menzionate qui da Microsoft.

Inoltre, controlla questo problema. Bash non fa nulla per un po ', quindi esce


Quanto tempo hai effettivamente aspettato per (dis) installare?
gronostaj,

Ho aspettato circa 30 minuti.
Vivek Vijayan,

In alternativa, è possibile selezionare Abilita o disabilita le funzionalità di Windows, deselezionare il sottosistema Windows per Linux (Beta) e riavviare. Successivamente, riattiva la stessa casella di controllo e riavvia nuovamente. Sulla mia macchina, non sono riuscito a correre lxrun.
Kleinfreund,

Ho provato tutto questo! Penso che questo sia un problema
Vivek Vijayan,

@VivekVijayan - Diventa proprietario di %localappdata%\lxssquindi cancellalo. È quindi possibile utilizzare lxrun /installper installare Ubuntu on Windowsnuovamente. Ciò presuppone che la modalità sviluppatore sia abilitata e che sia già stata aggiunta la funzionalità Windows (sottosistema Windows Linux).
Ramhound,

Risposte:


5

Inizialmente ho avuto problemi con la disinstallazione di un'installazione non riuscita e la rimozione della cartella lxss. Dopo aver ripulito correttamente l'installazione, ho iniziato a reinstallare le prove, ma il problema precedente con l'installazione è emerso. Il processo si blocca durante l' estrazione del filesystem ... come riportato qui .

Dopo giorni di prove ed errori, mi sembra di aver trovato il motivo di questa agonia. Nel mio caso (e come riportato da molti altri qui ), l'antivirus è lo spoilsport. Disabilitare l'antivirus e riavviare sembrano farlo per me. Per quanto sembri sciocco, l'antivirus era la causa principale del dolore eError: 0x80080005

Ora per coloro che hanno ancora questo errore, questo dovrebbe aiutare se provi a fare le seguenti cose in ordine:

  1. Disabilita l'antivirus in modo permanente e riavvia (puoi attivarlo al termine dell'installazione)
  2. Apri il prompt dei comandi o Windows PowerShell come amministratore
  3. Disinstallare WSL eseguendo il comando seguente lxrun /uninstall /full
  4. Ora interrompi il servizio WSL - sc stop lxssmanager
  5. Rimuovi cartelle dati app - rmdir /S %LOCALAPPDATA%\lxss. Conferma che le cartelle sono state eliminate. Potrebbe essere necessario modificare la proprietà per eliminare la cartella in caso di errori di accesso negato .
  6. Dopo aver eliminato le cartelle, prova a installare nuovamente WSL eseguendo lxrun /install /y
  7. Attendi fino a quando non viene scaricato da Windows Store ed estrae i file. (Puoi verificare %LOCALAPPDATA%\lxss\rootfsse i file sono stati estratti).
  8. Spero che non dovresti farlo Error: 0x80080005stavolta.
  9. Goditi Bash su Windows !

EDIT : un altro motivo dell'errore è identificato come bug quando si hanno più file di scambio . Questo problema verrà risolto in futuro, ma per ora rimuovi altri file di scambio e mantieni solo un file di scambio. Questo dovrebbe risolverlo.

Maggiori dettagli per chi è interessato:

" A causa del tuo file di traccia ho identificato un bug nel codice di installazione che sta calcolando la dimensione del file di scambio. Questa funzione viene utilizzata sia dalla chiamata di sistema sysinfo che dalla generazione del contenuto di / proc / meminfo. Questo problema si verificherà quando hai più file di paging sulla macchina. Esistono tre diversi risultati che possono verificarsi a seguito di questo errore: Le dimensioni del file di scambio verranno riportate in modo errato Il nostro driver determinerà un indirizzo di memoria non valido e causerà uno schermo blu La macchina entrerà in un ciclo infinito durante il calcolo del scambia le dimensioni del file (questo è quello che stai vedendo) Come soluzione temporanea se rimuovi tutti i file di paging tranne uno, dovresti essere in grado di usare WSL. Sto programmando una correzione per questo adesso. "

Riferimento: Bash su Ubuntu su Windows


Grazie, questo mi ha aiutato. Avevo Windows Defender in esecuzione e ho dovuto fare solo 1-3 e 6-9, cioè non ho dovuto interrompere il servizio o eliminare nulla.
Tom Ellis,

Felice di aiutare. In alcuni casi, il servizio WSL impedisce la rimozione pulita dei file di installazione. Sono contento che non hai dovuto affrontare tutto ciò.
Vivek Vijayan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.