Après avoir suivi ce tutroial j’obtiens l’erreur suivante lorsque vous essayez d’exécuter les commandes en tant qu’utilisateur ou même Sudo:
Sudo: aucun tty présent et aucun programme askpass spécifié
Les commentaires de Lurdan dans cet article indiquent que vous devez exécuter
Sudo -S <YOUR_COMMAND>
chmod 0666 /dev/tty
chmod
ne fonctionne pas mais Sudo -S
si, mais il existe sûrement un autre correctif?
Si bête, après avoir regardé plus bas, je vois une solution de Beorat :
Pour éviter le problème Sudo tty et d’autres, exécutez ces commandes juste avant d’exécuter do-release-upgrade:
Sudo -S apt-mark hold Sudo
sudo -S apt-mark hold procps
Sudo -S apt-mark hold strace
Si vous avez déjà effectué la mise à niveau, exécutez les commandes ci-dessus, puis rétrogradez manuellement les packages Trusty:
Sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/s/Sudo/sudo_1.8.9p5-1ubuntu1.1_AMD64.deb
Sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/p/procps/procps_3.3.9-1ubuntu2_AMD64.deb
Sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/s/strace/strace_4.8-1ubuntu5_AMD64.deb
Sudo -S dpkg -i Sudo_1.8.9p5-1ubuntu1.1_AMD64.deb
Sudo -S dpkg -i procps_3.3.9-1ubuntu2_AMD64.deb
Sudo -S dpkg -i strace_4.8-1ubuntu5_AMD64.deb
Plus d'informations ici: https://github.com/Microsoft/BashOnWindows/issues/482
WSL utilise l'exécutable lxrun pour la gestion à partir de Windows:
lxrun -h
Usage:
/install - Installs the subsystem
Optional arguments:
/y - Do not Prompt user to accept
/uninstall - Uninstalls the subsystem
Optional arguments:
/full - Perform a full uninstall
/y - Do not Prompt user to accept
/setdefaultuser - Configures the subsystem user that bash will be launched as. If the user does not exist it will be created.
Optional arguments:
username - Supply the username
/y - If username is supplied, do not Prompt to create a password
/update - Updates the subsystem's package index
Dans ce cas, vous pouvez utiliser lxrun /setdefaultuser root
. Je pensais juste que je signalerais cet aspect-là, car c'était nécessaire lorsque j'ai rencontré le même problème que vous après avoir tenté de passer à Xenial. Je peux confirmer que l'exécution de cette commande , puis les commandes wget/dpkg pour résoudre mes problèmes.
Les commandes que j'ai utilisées:
wget http://mirrors.kernel.org/ubuntu/pool/main/s/Sudo/sudo_1.8.9p5-1ubuntu1.4_AMD64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/p/procps/procps_3.3.9-1ubuntu2_AMD64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/s/strace/strace_4.8-1ubuntu5_AMD64.deb
dpkg -i Sudo_1.8.9p5-1ubuntu1.4_AMD64.deb
dpkg -i procps_3.3.9-1ubuntu2_AMD64.deb
dpkg -i strace_4.8-1ubuntu5_AMD64.deb
Enfin, vous devrez peut-être exécuter Sudo apt-get install -f
au cas où vous auriez The following packages have unmet dependencies [xxx] but it is not going to be installed
Je me suis débarrassé de l'erreur en déplaçant/etc/hosts vers /etc/hosts.bu. Après la fermeture du shell en ouvrant à nouveau,/etc/hosts est recréé et le nom de votre ordinateur est ajouté. L'erreur est partie (pour moi.)