How to restore the /etc/passwd file?

3

I was doing some experiment about resource-accessing. By mistake, I executed this command, $ sudo mv /etc/passwd /etc/passwd.bak Then I could not execute any command with privilege(eg. sudo mv /etc/passwd.bak /etc/passwd). When I shut the system down, I could not boot it any more. Afterwards, I restored the passwd file with a LiveCD. Any other approaches could make it?

dutor

Posted 2010-09-18T01:36:26.827

Reputation:

Answers

4

Maybe this: When the bootloader shows up, add

init=/bin/bash

to the kernel parameters. Instead of booting normally (with the init process spawning all the other services including login), you should end up in single-user mode with a root shell (no password is asked) and be able to restore the passwd file. On some distributions you may need to manually remount the root partition in read/write mode before moving the file:

mount -o remount,rw /dev/sda123

(I don't want to test your issue and see if this solution works :)

Federico Ramponi

Posted 2010-09-18T01:36:26.827

Reputation:

1That seems to be available. I will test it myself. Thanks a lot. – None – 2010-09-18T02:04:52.387

0

You can use "sudo su" to keep a root terminal open. That way, there is no need to login with sudo each and every time, as the terminal will always be root (until you close it, of course). If you accidental move the file, you can move it back from the root terminal because you'll still be logged in.

Stealth-

Posted 2010-09-18T01:36:26.827

Reputation:

I did that by mistake, so I didn't realize what would happen next. – None – 2010-09-18T02:01:20.177