Nie można zmienić hasła roota w Windows 10 WSL

12

Próbowałem obu poleceń

sudo passwd

i

sudo -u root /bin/bash

Ale gdy tylko dwa razy wprowadzę nowe hasło, napisane jest, że hasło zostało zaktualizowane. Po zamknięciu powłoki i otwarciu nowej instancji nadal działa ona na stare hasło roota.

Proszę pomóż.

Zrodzony ze smoka
źródło
root sudo -u root może być desperacką próbą działania. ale sudo passwd powinno zmienić hasło. i stary nie powinien być wymagany, gdy otwieram nową powłokę WSL i próbuję „sudo apt-get install”
Dragonborn,

Odpowiedzi:

23
  1. we wsl, sudo passwdzmieni hasło użytkownika root WSL.
  2. we wsl passwdzmieni hasło bieżącego użytkownika WSL
  3. we wsl passwd [user]zmieni hasło dowolnego użytkownika WSL
  4. we wsl, sudoogólnie pyta o hasło bieżącego użytkownika WSL.
  5. w Windows cmd.exe możesz zmienić użytkownika, do którego będziesz się logować podczas otwierania WSL - jeśli ten użytkownik jest root, będziesz mógł użyć opcji 3.
    • aktualizacja twórców i wcześniejsze: lxrun /setdefaultuser [user]
    • spadek twórców aktualizacji i później: ubuntu.exe config --default-user [user]

Prawdopodobnie chcesz zmienić hasło użytkownika sudo-capable, użytkownika innego niż root.

Prawdopodobnie nie chcesz zmieniać hasła użytkownika root (ponieważ w Ubuntu użytkownik root na ogół nie powinien mieć hasła, sudonależy go użyć). Prawdopodobnie nie chcesz też pozostawiać domyślnego użytkownika jako root. Nawet podczas pracy z oknami jest to nadal zła praktyka.

Oficjalną dokumentację Microsoft dotyczącą kont użytkowników i uprawnień można znaleźć tutaj: https://msdn.microsoft.com/en-us/commandline/wsl/user_support

anx
źródło
tak, używam użytkownika innego niż root jako domyślny użytkownik. to powinno działać! dzięki.
Dragonborn,
lxrun /setdefaultuserjuż nie działa :(
nowox
lxrun /setdefaultuser [user]nadal działa w systemie Windows 10, wersja 1709 (Fall Creators Update)
hrvoj3e
Uwaga: Może być konieczne ponowne uruchomienie komputera po zmianie domyślnego użytkownika za pomocą ubuntu config --default-user [user]. Byłem naprawdę zdezorientowany, dlaczego to nie działa. Po ponownym uruchomieniu komputera domyślny użytkownik został zmieniony.
Alexander
Musiałem zamknąć Ubuntu i uruchomić go ponownie, ubuntu config --default-user [user]aby działał.
Stefan Lasiewski
11

Zakłada się, że używasz Ubuntu w tym objaśnieniu.

  • Jeśli nie pamiętasz hasła do WSL, po prostu otwórz wiersz polecenia z systemu Windows, wpisując cmd podczas wyszukiwania.
  • Następnie wpisz, ubuntu config --default-user rootaby ustawić root jako domyślnego użytkownika dla powłoki Linux Bash.
  • Następnie otwórz powłokę Linux Bash, która zaloguje Cię jako root bez pytania o hasło.
  • Następnie użyj, passwd usernameaby zresetować hasło dowolnego użytkownika.
  • Służy ubuntu config --default-user usernamedo resetowania do normalnego konta użytkownika Linux.
Peter Ugege
źródło
/ bin / bash /: config: nie znaleziono polecenia
systemovich
1
@systemovich - musisz uruchomić ubuntu config ...polecenia z wiersza polecenia systemu Windows (cmd.exe). Aby stamtąd otworzyć powłokę bash, po prostu wpisz wsli naciśnij Enter. Aby powrócić do wiersza polecenia systemu Windows, w wierszu polecenia WSL wpisz exiti naciśnij klawisz Enter
StingyJack
1
Istnieje prostsza metoda. 1. Otwórz cmd.exe 2. Wpisz wsl -u root 3. Wpisz passwd usernamei zmień hasło 4. Wpisz exit 5. Wpisz wsl 6. Wpisz sudo echo h„, aby potwierdzić, że nowe hasło działa.
bicole
6

Istnieje prostsza metoda.

  1. Otwórz cmd.exe
  2. Rodzaj wsl -u root
  3. Wpisz passwd usernamei zmień hasło
  4. Rodzaj exit
  5. Rodzaj wsl
  6. Wpisz, sudo echo hiaby potwierdzić, że nowe hasło działa.
bicole
źródło
To jest doskonałe!
Flynn
Metoda jest prostsza, a odpowiedź bardziej jasna i bezpośrednia, działała doskonale
Mickael V.