
Ich habe als normaler Benutzer Probleme, Ubuntu für WSL2 in meinem Windows-Terminal auszuführen.
Anstatt einer Bash-Eingabeaufforderung erhalte ich Folgendes und ich denke, das liegt daran, dass ich mehr als eine Ubuntu-Distribution mit demselben Namen habe, siehe unten:
Windows-Version: Microsoft Windows [Version 10.0.19044.1586]
WSL-Version:0.0.0.0
Verwenden Sie WSL1 oder WSL2:WSL2
Kernelversion:Linux-Version 5.10.102.1-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Mi., 2. März 2022, 00:30:59 UTC
Schritte zum Reproduzieren:
Öffnen Sie das Windows-Terminal als Nicht-Administratorkonto.
Klicken Sie oben auf die Registerkarte mit dem Abwärtspfeil und wählen Sie Ubuntu aus.
Eine neue Registerkarte wird mit der folgenden Fehlermeldung angezeigt:
Eine Datei kann nicht erstellt werden, wenn diese Datei bereits vorhanden ist.
[Prozess wurde mit dem Code 4294967295 (0xffffffff) beendet] Sie können dieses Terminal jetzt mit Strg+D schließen oder die Eingabetaste drücken, um es neu zu starten.
Ich denke, das Problem hängt damit zusammen, dass es zwei Ubuntu-Distributionen mit dem Namen Ubuntu gibt, die jedoch eine unterschiedliche GUID/UUID in der Registrierung haben:
wsl -l -v
NAME STATE VERSION
* Ubuntu Running 2
Ubuntu Stopped 2
PS C:\Users\me-user> reg query hkcu\software\microsoft\windows\currentversion\lxss
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss
DefaultVersion REG_DWORD 0x2
DefaultDistribution REG_SZ {c329c2ee-fd20-4986-873a-351737eaf399}
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\AppxInstallerCache
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\{97307d71-8998-42a4-9600-ff372b6ec1ee}
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\{c329c2ee-fd20-4986-873a-351737eaf399}
Sie werden bemerken, dass der Erste Werte hat, der Zweite jedoch nicht:
Erster:
PS C:\Users\me-user> reg query "hkcu\software\microsoft\windows\currentversion\lxss\{97307d71-8998-42a4-9600-ff372b6ec1ee}" /v DistributionName
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\{97307d71-8998-42a4-9600-ff372b6ec1ee}
DistributionName REG_SZ Ubuntu
PS C:\Users\me-user> reg query "hkcu\software\microsoft\windows\currentversion\lxss\{97307d71-8998-42a4-9600-ff372b6ec1ee}"
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\{97307d71-8998-42a4-9600-ff372b6ec1ee}
State REG_DWORD 0x1
DistributionName REG_SZ Ubuntu
Version REG_DWORD 0x2
BasePath REG_SZ C:\Users\me-user\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState
Flags REG_DWORD 0xf
DefaultUid REG_DWORD 0x0
PackageFamilyName REG_SZ CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
2. Eins
PS C:\Users\me-user> reg query "hkcu\software\microsoft\windows\currentversion\lxss\{c329c2ee-fd20-4986-873a-351737eaf399}" /v DistributionName
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\lxss\{c329c2ee-fd20-4986-873a-351737eaf399}
DistributionName REG_SZ Ubuntu
(Keine anderen Schlüssel/Werte)
Mir ist aufgefallen, dass das Standard-WSL auf den zweiten Wert eingestellt ist c329c2ee-fd20-4986-873a-351737eaf399
:
DefaultDistribution REG_SZ {c329c2ee-fd20-4986-873a-351737eaf399}
Ist es sicher, die Standardverteilung auf „die 1.“ zu ändern, {97307d71-8998-42a4-9600-ff372b6ec1ee}
damit ich die Fehlermeldung nicht mehr sehe, wenn ich versuche, sie im Windows-Terminal zu öffnen?
Siehe auch: https://github.com/microsoft/WSL/issues/7998
Cannot create a file when that file already exists.
[process exited with code 4294967295 (0xffffffff)]
You can now close this terminal with Ctrl+D, or press Enter to restart.