"Nessun utente di questo tipo" ma l'utente è nel file passwd


12

Guardando i file in / etc /:

/etc/group:lbutler:*:1005:
/etc/master.passwd:lbutler:$6$s..../:1005:1005::0:0:L Butler:/home/lbutler:/bin/bash
/etc/passwd:lbutler:*:1005:1005:L Butler:/home/lbutler:/bin/bash

Ma:

$ passwd lbutler
passwd: lbutler: no such user

Inoltre, i file in vengono /home/lbutler/visualizzati come uid 1005 e gidlbutler

Gli altri utenti /etc/passwdnon sembrano avere problemi

Risposte:


9

Sembra che alcuni dei corrotti si siano verificati con i tuoi /etc/master.passwd. Puoi ripristinarlo allo stato normale, prova:

  • vipwda modificare /etc/master.passwd.
  • Salvalo senza modifiche.

È inoltre possibile utilizzare pwd_mkdbper aggiornare il database delle password.


5
+1: L'OP potrebbe essere un utente Linux e sta pensando che il sistema operativo presta effettivamente attenzione a / etc / passwd come fonte primaria. Su FreeBSD, i file DB generati da / etc / passwd e tali sono la vera fonte primaria di verità.
Warren Young,

OP si prega di utilizzare vipwin futuro, quindi non è necessario gestire i dettagli.
Winny,

L'uso di vipw e il salvataggio invariato non ha fatto differenza. Ho esaminato i backup e la password dell'utente per l'utente elencato prima di questo nel file master.passwd cambiato nel momento in cui il maggiordomo ha smesso di accedere. Posso ripristinare master.passwd. Dovrei eseguire pwd_mkdb /etc/master.passwd? @winny: non ho mai modificato direttamente un file passwd
lbutlr il

Questo dovrebbe essere il giusto argomento di invocazione:pwd_mkdb -p /etc/master.shadow
Winny,

3

Prova pwd_mkdb -p /etc/master.passwd. Da man pwd_mkdb:

 -p    Create a Version 7 style password file and install it into
       /etc/passwd.

1

Ho notato che l'utente immediatamente prima di lbutler aveva un UID e un GID di 10014 (invece del previsto 1014). Quell'utente ha cambiato la sua password e, successivamente, l'UID 1015 non è riuscito ad accedere. Usando vipw ho invertito le due righe e salvato il file. Ora entrambi gli utenti possono accedere e le proprietà appaiono correttamente. Grazie per i suggerimenti.


0

FreeBSD usa i file del database per cercare password, utenti e così via. Quindi / etc / passwd e anche master.passwd sono lì solo per motivi di compatibilità e informazione. Non si dovrebbe mai fare affidamento su questo. Non so se c'è un modo per chiedere direttamente quei file di database. Forse dovrebbero fornire un qualche tipo di interfaccia SQL in modo che ppl possa verificare quali utenti sono sul sistema e così via. Quindi potrebbero abolire completamente / etc / passwd e master.passwd.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.