Quale comando devo eseguire dopo aver apportato modifiche al file / etc / passwd


12

Ho apportato alcune modifiche al file / etc / passwd, ora volevo vedere se l'effetto delle modifiche avveniva o meno. Quale comando dovrei eseguire per quello.

Ad esempio dopo aver apportato la modifica al file / etc / ssh / ssh_config, eseguo il comando /etc/init.d/sshd.

Risposte:


19

Per verificare il file passwdcorrispondente e shadow, utilizzare pwck. Per verificare il file groupcorrispondente e corrispondente gshadow, utilizzare grpck'. Vedi le manpage per i dettagli delle azioni che svolgono.

La modifica manuale di /etc/passwdè meglio (se non del tutto) eseguita con vipwe vipw -sper il shadowfile. Per /etc/groupe /etc/gshadowutilizzare vigre vigr -s, rispettivamente. L'uso di questi strumenti fornisce non solo un blocco per impedire muultple, aggiornamenti simultanei degli utenti, ma offre anche un controllo di validità.

In generale, è preferibile apportare modifiche alla password e ai file di gruppo utilizzando lo standard user(add|mod|del)e gli group(add|mod|del)strumenti.


7

Non esiste tale comando per applicare le modifiche dal file / etc / passwd.

Se l'utente con i dettagli che hai modificato ha effettuato l'accesso, dovrebbe semplicemente accedere nuovamente per applicare le modifiche. In caso contrario, saranno immediatamente disponibili dopo il login.

Questo perché login legge i dettagli dal file passwd durante il login e li mantiene in memoria fino al logout.


2
"... nessun comando simile ..." su Linux . Molti altri * ix hanno tali comandi. Il passedfile viene compilato in un modulo binario che è più veloce da elaborare, oppure è conservato solo per compatibilità e i dati devono essere tradotti nel modulo DB password nativo del sistema operativo.
Warren Young,

2

Ho avuto successo con il update-passwdcomando dopo aver modificato manualmente il file / etc / passwd su sistemi basati su Debian (ad esempio Ubuntu). So che questo NON è l'uso previsto di questo comando, ma funziona anche per questo scopo. Vedi la sua pagina man per ulteriori dettagli: http://manpages.ubuntu.com/manpages/precise/man8/update-passwd.8.html

Sui sistemi basati su Red Hat / CentOS non ho trovato un comando equivalente, su quei sistemi ho dovuto fare un riavvio del sistema per rendere effettive le modifiche.

Come qualcuno ha già detto, è meglio non modificare manualmente il file / etc / passwd. Invece uso i comandi useradd / userdel / usermod ogni volta che è possibile. L'unico motivo valido per la modifica dei file / etc / passwd e / etc / group IMO è quando devo copiare molti account da un altro sistema. Dopo aver aggiunto, ad esempio, 100 account in questo modo, di solito eseguo un riavvio completo del sistema. Inoltre, quando modifichi manualmente i file / etc / passwd e / o / etc / groups non devi dimenticare di modificare anche i file shadow appropriati.


1

Non penso che ci sia un comando in quanto non è necessario in primo luogo Inoltre non è consigliabile modificare direttamente quel file, invece usa i comandi appropriati come useradd e passwd

Se non sei convinto, riavvia semplicemente dopo aver modificato quel file e tutte le modifiche saranno effettive


0

Non è necessario modificare /etc/passwdmanualmente; usa usermodinvece

Per esempio:

Se si desidera modificare la home directory dell'utente, utilizzare questo comando:

usermod --home /path/to/home/dir username

1
A volte è necessario modificare il file a mano, ma poi vipwdovrebbe essere usato.
Kusalananda

Capito @Kusalananda
Sun Kuo l'
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.