Ich ändere die letzte Zeile in / etc / passwd und kann sudo nicht verwenden

15

Folgendes habe ich getan:

  1. Ändern Sie einen Benutzernamen in der letzten Zeile: tinyzuabc

    • tiny@tty7:~$ sudo vim /etc/passwd
    • Ändern Sie dies:
      tiny:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
      in das:
      abc:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
  2. tiny@tty7:~$ sudo vim /etc/shadow

    • es zeigt: [sudo] passwork for abc:

    • Ich habe mein Passwort nicht geändert, kann mich aber nicht als root anmelden!

    • Ich tippe Ctrl+ Alt+ F1zu, tty1aber weder tiny noch abc können sich mit meinem Passwort anmelden

und ich versuche es anzuschauen ls ~ -la, hier sieht es so aus:

drwxr-xr-x 28 abc tiny 4096 Apr 6 03:04 .

Wie kann ich mich als root anmelden? und warum ist der Benutzername in der Eingabeaufforderung tiny@tty7immer noch winzig, während in sudo das abc-Passwort angezeigt wird ?

Winzling
quelle

Antworten:

18

Der Grund, warum Sie nach der Bearbeitung stecken geblieben sind, ist, dass die /etc/shadowDatei einen Eintrag für das Kennwort, tinyaber keinen Eintrag für enthielt abc, wohingegen die /etc/passwdDatei einen Eintrag für abcund nicht für enthielt tiny. Bei der sudoSuche wurden Sie (gemäß der Kennwortdatei) abcanhand der UID des von Ihnen ausgeführten Prozesses korrekt identifiziert. Beim Vergleich Ihrer Eingabe als Kennwort mit dem in gespeicherten verschlüsselten (gehashten) Kennwort /etc/shadowkonnte dies jedoch nicht durchgeführt werden Es wurde kein Eintrag für gefunden abc, daher musste der Fehler gemeldet werden.

Wie Shaddy in seiner Antwort sagte , bearbeiten Sie das Passwort oder die Shadow-Dateien nicht von Hand. Wenn Sie die Regel brechen müssen, bearbeiten Sie beide in einem einzigen Aufruf von vimund vimbeenden Sie erst, wenn Sie bewiesen haben, dass die Änderungen in einem anderen Terminalfenster ordnungsgemäß funktionieren, und speichern Sie zuvor Sicherungskopien der Dateien Sie fangen an, sie zu hacken, und überlegen, warum Sie die Regeln an erster Stelle brechen, weil es wahrscheinlich keine gute Idee ist.

Jonathan Leffler
quelle
22

Sie dürfen Ihre passwd-Datei NIEMALS manuell bearbeiten, da dies zu Problemen führen kann.

Der richtige Weg, um Ihren Benutzernamen zu ändern, ist:

usermod -l newUsername oldUsername

Dann ändere den Home-Ordner:

usermod -d /home/newHomeDir -m newUsername

Um das Passwort zu ändern, sollten Sie Folgendes verwenden:

sudo passwd yourusername

Ich schlage vor, dass Sie Ihre passwd-Datei zurücksetzen oder wenn Sie sie nicht bearbeiten können, weil Sie sich nicht mit root anmelden können, mit Live-CD booten und die Datei zurücksetzen. Dann nutzen Sie den richtigen Weg.

schüchtern
quelle
1
Vielen Dank ~ Ich dachte, das Schwierigste ist sich mit root anzumelden, dann starte ich neu, wähle den Revovery-Modus, root und erhalte dann meine passwd-Datei zurück ~ es funktioniert ~
tinyork
0

Verwenden Sie: vipw

Ich habe dies immer auf FreeBSD verwendet und nur bestätigt, dass Sie es auch für Ubuntu verwenden können. Bitte lesen Sie diese Seite: Ubuntu Man Page for vipw

Lady Geek
quelle
-3

Vorgehensweise zum manuellen Ändern Ihres Benutzernamens (aber nicht Ihrer UID):

  1. Lassen Sie Ihren Kopf untersuchen. Wenn dies fehlschlägt, fahren Sie mit Schritt zwei fort.
  2. Bearbeiten Sie die Schattendatei, indem Sie die Benutzerzeile mit dem neuen Benutzernamen duplizieren.
  3. Gruppen bearbeiten, Sudoer, neuen Benutzernamen erlauben, alte behalten
  4. Verknüpfen Sie das Basisverzeichnis symbolisch mit dem neuen Namen
  5. Bearbeiten Sie die Passwd-Datei, indem Sie den Benutzernamen und das Ausgangsverzeichnis ändern
  6. Bearbeiten Sie Schatten, Sudoer und Gruppen, um alte Einträge zu entfernen, die wir in Schritt drei beibehalten haben
  7. Bearbeiten Sie Aliase und andere Verweise auf den alten Benutzernamen.
  8. Abmelden, zu einer Textkonsole wechseln (der nächste Schritt funktioniert nicht, wenn Programme im Home-Verzeichnis des Benutzers ausgeführt werden, einschließlich Fenstermanagern)
  9. CD in ein Verzeichnis oberhalb Ihres Home-Verzeichnisses.
  10. Entfernen Sie die symbolische Verknüpfung und benennen Sie das Basisverzeichnis um.
  11. Logout und Login wie gewohnt.

Es ist viel einfacher, den Benutzernamen anderer Benutzer zu ändern, obwohl dies immer noch nicht einfach ist.

hildred
quelle