web-dev-qa-db-fra.com

Bash sous Ubuntu sous Windows ne démarre pas

Donc, j'utilise le nouveau (ish) Bash sur Ubuntu sur Windows (WSL) depuis un moment maintenant et tout a été excellent, jusqu'à hier. 

J'ai accidentellement acculé à Bash, alors il m'a demandé les détails de mon compte repo-destination comme d'habitude. J'ai décidé d'ignorer cela, de mettre fin à Bash et d'essayer simplement d'utiliser Powershell à la place (je ne me souviens jamais des mots de passe!). La fin de Bash a toutefois provoqué le blocage de Shell. J'ai forcé la fermeture et redémarré mon ordinateur (j'ai dû forcer la fermeture et redémarrer plusieurs fois auparavant pour diverses raisons et tout allait bien).

Après le démarrage, j'ai juste essayé de vérifier si Bash fonctionnait à nouveau, mais ce n'était pas le cas. Il n'a pas réussi à démarrer sans message d'erreur. Par exemple:

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

Quelqu'un at-il eu une situation similaire/sait comment aider?

EDIT: Résolu seulement par la réinstallation de bash, en utilisant

    lxrun /uninstall /full

puis 

    lxrun /install 
7
oblong

Je suis arrivé ici avec un problème similaire, mais une solution différente, donc je posterai au cas où cela pourrait aider quelqu'un d'autre.

La différence dans ma situation était en cours d'exécution bash par invite de commande se sont plaints de l'activation du mode hérité.

  1. Ouvrez une commande régulière Invite (win+r puis cmd)
  2. Cliquez avec le bouton droit sur la barre de titre et sélectionnez Properties
  3. Désélectionnez "Utiliser l'ancienne console (nécessite un redémarrage)".

Désormais, cela devrait fonctionner en lançant l'application autonome ou en saisissant bash dans une fenêtre cmd normale après le redémarrage de l'invite de commande.

Ceci et d'autres causes peuvent être trouvés dans ce numéro de Github .

3
Dave S

Les solutions énumérées ne fonctionnaient pas non plus pour moi. J'ai trouvé une solution ici .

Pour l'essentiel, accédez à Control Panel > System > Advanced System Settings > Advanced > Settings > Advanced > Virtual memory, Change ... et définissez une taille personnalisée pour la taille du fichier d'échange: 800 min et 1024 max. Redémarré et l'invite de commande est revenue. 

1
Robert Yi

Voir mon commentaire sur l’affiche originale. Votre solution n’a pas fonctionné pour moi. Voici la liste PowerShell [en tant qu'administrateur]: Windows PowerShell Copyright (C) Microsoft Corporation. Tous les droits sont réservés.

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>

Je suis allé à https://aka.ms/wslstore

  • choisi Ubuntu
  • il a téléchargé
  • cliqué sur 'épingler pour commencer'
  • cliqué sur 'Lancer'

Ubuntu [fenêtre]:

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.

joe@joethinks:~$

S'il vous plaît noter: BUMMER! Aucun de mes raccourcis ou installations n'a été déplacé de ma dernière version. Ici, je lance BASH de vscode:

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

joe@joethinks:/mnt/c/1d/TrinitySundayMusicPj$ cdtsm
cdtsm: command not found
joe@joethinks:/mnt/c/1d/TrinitySundayMusicPj$ cd trinitySundayMusic
joe@joethinks:/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
joe@joethinks:/mnt/c/1d/TrinitySundayMusicPj/trinitySundayMusic$

Au moins ça marche.

Juste après les mises à jour Windows KBB4471324 et un redémarrage, Bash ne se lancerait pas. Pas de messages.

Dans l'observateur d'événements, j'ai vu des messages sur 

Les paramètres d'autorisation spécifiques à l'application n'accordent pas l'autorisation d'activation locale pour l'application COM Server avec CLSID

Je n'ai pas cherché à savoir si le SID, le CLSID et le APPID étaient associés à bash.

J'ai lancé Bash en tant qu'administrateur, ce qui a fonctionné, puis bash en tant qu'utilisateur normal, qui a fonctionné. Cela semble aller, maintenant.

0
user46083