What is the best way to edit /etc/passwd, shadow, and group files?
The best way to edit /etc/passwd, or shadow or group file is to use vipw command. Traditionally (under UNIX and Linux) if you use vi to edit /etc/passwd file and same time a user try to change a password while root editing file, then the user's change will not entered into file. To avoid this problem and to put a lock while editing file, use vipw and vigr command which will edit the files /etc/passwd and /etc/group respectively. If you pass -s option to these command, then they will edit the shadow versions of those files i.e. /etc/shadow and /etc/gshadow, respectively.
The main purpose of locks is to prevent file corruption. Do not use vi or other text editor to edit password file. Syntax:
* vipw -s : Edit /etc/passwd file
* vigr -s : Edit /etc/group file
Where,
* -s : Secure file editing
An example
Login as a root user:
# vipw -s