3

My OS is Ubuntu 12.10, and my account is called acgtyrant, and its UID is 1000. For the need of researching, I changed my UID from 1000 to 1010 in /etc/passwd, and then I found my files' master changed to a number:1000, which prove my suppose. But when I try to change my UID back, I found I can't edit the passwd file any more! Because when I try to run sudo vim /etc/passwd, the Bash told me sudo: unknown uid 1000: who are you?.

So how to solve it? Acctually I am a chinese student, so forgive my poor English please.

BuZZ-dEE
  • 14,533
acgtyrant
  • 185

3 Answers3

4

Press shift during boot then select recovery and drop to a root shell.

Now mount the file system read-write

mount -o rw,remount /

So far you are following the instructions on how to reset your password from here

Finally don't change your password but simply edit the file

vipw

To edit /etc/passwd or vipw -s to edit /etc/shadow

Similarly use vigr to edit /etc/group and vigr -s to edit /etc/gshadow

Standard editors such as nano and vim do not check the file structure before saving so may make problems worse.

reboot and all should be OK

Warren Hill
  • 22,412
  • 28
  • 70
  • 88
2

Maybe try something like this:

usermod -u UID_number username
Ntc
  • 1,414
1

two things: have a "backup" user

already have a root password setup $ sudo passwd root

login with backup user account, then.

su

now as root, nano /etc/passwd change your uid and gid back to original, most likely 1000:1000