it-swarm.com.de

Bash auf Ubuntu unter Windows startet nicht

Ich benutze den neuen (ish) Bash auf Ubuntu unter Windows (WSL) nun schon eine Weile und bis gestern war alles erstklassig. 

Ich wurde von Bash aus Versehen herausgeholt, also fragte ich mich nach meinen Repo-Destination-Kontodetails. Ich beschloss, dies zu ignorieren, Bash zu beenden und stattdessen einfach Powershell zu verwenden (ich kann mich nie an Passwörter erinnern!). Das Beenden von Bash führte jedoch zum Einfrieren der Shell. Ich zwang mich, meinen Comp zu schließen, und neugestartet (Ich musste vorher aus verschiedenen Gründen mehrmals Schließen und Neustart erzwingen und alles war in Ordnung).

Nach dem Booten versuchte ich nur zu überprüfen, ob Bash wieder funktioniert, aber das war nicht der Fall. Es konnte nur ohne Fehlermeldung gestartet werden. Zum Beispiel:

PS C:\WINDOWS\system32> bash
PS C:\WINDOWS\system32>

Hat jemand eine ähnliche Situation gehabt/kann er helfen?

BEARBEITEN: Nur durch Neuinstallation von bash gelöst

    lxrun /uninstall /full

dann 

    lxrun /install 
7
oblong

Kam hier mit einem ähnlichen Problem, aber einer anderen Lösung, also werde ich posten, falls es anderen hilft.

Der Unterschied in meiner Situation bestand darin, bash über die Eingabeaufforderung auszuführen, dass der Legacy-Modus aktiviert war.

  1. Öffnen Sie eine reguläre Eingabeaufforderung (win+r, dann cmd).
  2. Klicken Sie mit der rechten Maustaste auf die Titelleiste und wählen Sie Properties aus.
  3. Deaktivieren Sie "Alte Konsole verwenden (Neustart erforderlich)".

Jetzt sollte es funktionieren, indem Sie entweder die Standalone-App starten oder bash in ein reguläres cmd-Fenster eingeben, nachdem Sie die Eingabeaufforderung neu gestartet haben.

Diese und andere Ursachen finden Sie in dieser Github-Ausgabe .

3
Dave S

Die aufgeführten Lösungen funktionierten auch nicht für mich. Ich habe eine Lösung gefunden hier .

Navigieren Sie im Wesentlichen zu Control Panel > System > Advanced System Settings > Advanced > Settings > Advanced > Virtual memory, Change ... und legen Sie eine benutzerdefinierte Größe für die Größe der Auslagerungsdatei fest: 800 min und max. 1024. Neustart, und die Eingabeaufforderung kam zurück. 

1
Robert Yi

Ich hatte ähnliche Probleme. Die Lösung für mich war Schnellstart deaktivieren in den Energieeinstellungen.

1
BrokenShoebox

Linux Distribution sollte zusätzlich zum Windows-Subsystem für Linux installiert werden. Ausführliche Anweisungen und Erklärungen finden Sie unter WSL unter Windows 10 installieren oder WSL unter Windows Server installieren . Falls die genannten Handbücher verschoben wurden oder nicht verfügbar sind, werden im Folgenden die wichtigsten Schritte für Windows 10 aufgeführt, die mir geholfen haben:

  1. Öffnen Sie PowerShell als Administrator und führen Sie Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
  2. Starten Sie den Computer neu, wenn Sie dazu aufgefordert werden.
  3. Öffne PowerShell und starte Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile Ubuntu.appx -UseBasicParsing
  4. Führe das heruntergeladene Ubuntu.appx.
  5. Viel Spaß beim Ausführen von bash unter Windows.
0

Siehe meinen Kommentar zum Originalposter. Ihr Fix funktionierte nicht für mich. Hier ist die PowerShell-Liste [als Administrator]: Windows PowerShell Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

PS C:\WINDOWS\system32> lxrun /uninstall /full
Warning: lxrun.exe is only used to configure the legacy Windows Subsystem for Linux distribution.
Distributions can be installed by visiting the Microsoft Store:
https://aka.ms/wslstore

This will uninstall Ubuntu on Windows.
This will remove the Ubuntu environment as well as any modifications, new applications, and user data.
Type "y" to continue: y
Uninstalling...
Error: 0x80070002
PS C:\WINDOWS\system32>

Ich ging zu https://aka.ms/wslstore

  • wählte ubuntu
  • es heruntergeladen
  • "Pin zum Starten" angeklickt
  • auf "Starten" geklickt

Ubuntu [Fenster]:

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: joe
Enter new UNIX password: joepw202

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: joe
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "Sudo <command>".
See "man Sudo_root" for details.

[email protected]:~$

Bitte beachten Sie: BUMMER! Keine meiner Verknüpfungen oder Installationen wurden von meiner letzten Version verschoben. Hier führe ich BASH von vscode aus:

To run a command as administrator (user "root"), use "Sudo <command>".
See "man Sudo_root" for details.

[email protected]:/mnt/c/1d/TrinitySundayMusicPj$ cdtsm
cdtsm: command not found
[email protected]:/mnt/c/1d/TrinitySundayMusicPj$ cd trinitySundayMusic
[email protected]:/mnt/c/1d/TrinitySundayMusicPj/trinitySundayMusic$ node wizard.js
The program 'node' is currently not installed. You can install it by typing:
Sudo apt install nodejs-legacy
[email protected]:/mnt/c/1d/TrinitySundayMusicPj/trinitySundayMusic$

Zumindest funktioniert es.

Nach den Windows-Updates KBB4471324 und einem Neustart konnte Bash nicht gestartet werden. Keine Nachrichten.

Im Event Viewer habe ich Nachrichten darüber gesehen 

Die anwendungsspezifischen Berechtigungseinstellungen gewähren keine lokale Aktivierungsberechtigung für die COM Server-Anwendung mit CLSID

Ich habe mir nicht die Mühe gemacht, herauszufinden, ob SID, CLSID und APPID mit bash in Verbindung stehen.

Ich habe Bash als Administrator gestartet, was funktioniert hat, und dann bash als normaler Benutzer, was funktioniert hat. Es scheint jetzt gut zu sein.

0
user46083