Je change la dernière ligne dans / etc / passwd et je ne peux pas utiliser sudo

15

Voici ce que j'ai fait:

  1. Changez un nom d'utilisateur dans la dernière ligne: tinyenabc

    • tiny@tty7:~$ sudo vim /etc/passwd
    • Changez ceci:
      tiny:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
      en ceci:
      abc:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
  2. tiny@tty7:~$ sudo vim /etc/shadow

    • ça montre: [sudo] passwork for abc:

    • Je n'ai pas changé mon mot de passe mais il ne peut pas se connecter root!

    • Je tape Ctrl+ Alt+ F1to tty1mais ni tiny ni abc ne peuvent pas se connecter avec mon mot de passe

et j'essaye de regarder ls ~ -la, ici ça montre comme ça:

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

Comment puis-je me connecter root? et pourquoi le nom d'utilisateur dans l'invite est tiny@tty7toujours minuscule alors que dans sudo, il affiche le mot de passe de l'abc?

Tinyork
la source

Réponses:

18

La raison pour laquelle vous êtes resté bloqué après votre modification est que le /etc/shadowfichier contenait une entrée pour le mot de passe de tinymais aucune entrée pour abc, alors que le /etc/passwdfichier contenait une entrée pour abcet non pour tiny. Lorsqu'il a été sudoregardé, il vous a identifié correctement (selon le fichier de mot de passe) en abcfonction de l'UID du processus que vous exécutiez, mais lorsqu'il a cherché à comparer ce que vous avez entré comme mot de passe avec le mot de passe chiffré (haché) stocké /etc/shadow, il ne pouvait pas 'ne trouve pas d'entrée pour abc, il a donc dû signaler l'échec.

Comme l'a dit Shaddy dans sa réponse , ne modifiez pas le mot de passe ou les fichiers fantômes à la main. Si vous devez enfreindre la règle, modifiez les deux en une seule invocation de vimet ne quittez pas vimjusqu'à ce que vous ayez prouvé que les modifications sont suffisantes pour fonctionner en utilisant une autre fenêtre de terminal, et enregistrez des copies de sauvegarde des fichiers avant vous commencez à les pirater et reconsidérez pourquoi vous enfreignez les règles en premier lieu, car ce n'est probablement pas une bonne idée.

Jonathan Leffler
la source
22

Vous ne devez JAMAIS modifier votre fichier passwd manuellement car vous gâcheriez les choses.

La bonne façon de changer votre nom d'utilisateur est:

usermod -l newUsername oldUsername

Modifiez ensuite le dossier de départ:

usermod -d /home/newHomeDir -m newUsername

Pour changer le mot de passe, vous devez utiliser:

sudo passwd yourusername

Je vous suggère de restaurer votre fichier passwd, ou si vous ne pouvez pas le modifier parce que vous ne pouvez pas vous connecter avec root - puis démarrez avec live cd et rétablissez le fichier. Ensuite, utilisez la bonne façon.

ombragé
la source
1
merci ~ Je pensais que le plus difficile était de me connecter avec root puis je redémarre, choisis le mode revovery, root puis récupère mon fichier passwd ~ ça marche ~
tinyork
0

Utilisation: vipw

J'ai toujours utilisé cela sur FreeBSD et je viens de confirmer que vous pouvez également l'utiliser pour Ubuntu. Veuillez lire cette page: Ubuntu Man Page pour vipw

Lady Geek
la source
-3

procédure pour changer votre nom d'utilisateur (mais pas uid) à la main:

  1. faites examiner votre tête, lorsque cela échoue, passez à l'étape deux.
  2. éditez le fichier fantôme en dupliquant la ligne utilisateur avec un nouveau nom d'utilisateur.
  3. modifier les groupes, sudoers, autoriser les nouvelles autorisations de nom d'utilisateur, conserver l'ancien
  4. lier symboliquement le répertoire personnel au nouveau nom
  5. éditer le fichier passwd en changeant le nom d'utilisateur et le répertoire personnel
  6. modifier shadow, sudoers, groups pour supprimer les anciennes entrées que nous avons conservées à l'étape trois
  7. modifier les alias et autres références à l'ancien nom d'utilisateur.
  8. déconnexion, basculez vers une console de texte (l'étape suivante ne fonctionnera pas si des programmes sont en cours d'exécution dans le répertoire de base des utilisateurs, y compris les gestionnaires de fenêtres)
  9. cd dans un répertoire au-dessus de votre répertoire personnel.
  10. supprimez le lien symbolique et renommez le répertoire personnel.
  11. déconnectez-vous et connectez-vous normalement.

Les choses sont beaucoup plus simples pour changer le nom d'utilisateur d'autres, bien que ce ne soit toujours pas simple.

hildred
la source