How to change administrator username?
Solution 1
Login with your currentusername
, open a terminal and type:
sudo passwd root
Enter a password for the root account, then logout, press Ctrl+Alt+F1 to open a text console, login as root (username: root, password: "the one you typed above") and run:
usermod -l newusername -m -d /home/newusername currentusername
exit
Press Ctrl+Alt+F7 to return to graphic console and login as newusername
.
To change the user's display name (the one that appears at the login screen), go to System Settings -> User Accounts then click the display name on the right-hand side of the dialog.
Solution 2
You need to do this from recovery mode.
Reboot, choose recovery mode, and then drop to a root console and type the command there. Then reboot again as normal.
Solution 3
I would create a new account, and copy all of your files across. This is probably the most idiot-proof method.
Solution 4
The first simple solution that you can do is to create a new user with the right username that you want and add it to the administrator group: /etc/sudoers
other way, you can do that with your old username (I tested it on fedora):
# usermod -l new-username old-unername
Solution 5
Changing usernames will cause unavoidable problems. A lot of programs will try to read and write data from the old directory that's no longer there. Creating a new account and copying over all the old folders seems like a good idea. I believe there are other problems.
But this answers the question where the previous comments did not help me.
Simply logging back in as as root may not work because my old username had active processes. So I did like other's have said and rebooted into recovery mode. But then I got the error message the original poster mentions. As discovered here this is because the drive is read only in recovery mode so you have to make it read-write.
Summary fix:
sudo passwd root # assign a password
reboot # into recovery mode and log in as root
Hold shift during boot if your grub menu is not set to show. Log in as root and get to shell.
mount -o remount,rw / # make the disk writable
usermod -l <newname> -d /home/<newname> -m <oldname>
passwd -l root # deactivate the root password
reboot
Your old username will be the login name, but it will still let you in. To correct it, edit the file with the command below and look for the line that has your new and old username on the same line and change the old one to the new one:
sudo nano /etc/passwd
As others have said in other places, expect problems when changing your username as many programs will try to do things like find or store application data in your old username's folder which isn't there anymore.
Related videos on Youtube
Fazlan
I am a computer engineering undergraduate from SriLanka
Updated on September 18, 2022Comments
-
Fazlan over 1 year
I have accidentally typed my name wrong when I created the administrator account. Although I managed to change the user name at the login screen, I am unable to rename the
/home/oldusername
to/home/newusername
. I tried most of the online tutorials, and it failed.The code I tried was this:
usermod -l newusername -m -d /home/newusername oldusername
But the output is:
cannot lock /etc/passwd; try again later.
How can I fix the issue and change the folder to newusername and expect all the applications to work as before?
-
Admin over 11 yearsAre you running that command as root?
-
Admin over 11 yearsno in a guest account..the name i'm trying to change is the root account i guess.
-
Admin over 11 yearsis root and administrator different? I dnt knw
-
Admin over 11 yearshey I don't understand have u access to admin/root account??
-
Admin over 11 yearscould this help?? liberiangeek.net/2012/03/…
-
-
Fazlan over 11 yearsit says user oldname is currently logged in
-
user68186 over 11 yearsYou may need to add
sudo
before that line likesudo usermod -l new-username old-unername
, in Ubuntu. -
Eric Carvalho over 11 yearsAnswer updated.
-
Fazlan over 11 yearsThe username is changed but the folder name is still the old name
-
Bouba over 10 years#: means you have the root permissions, and $: means you're just a simple user.
-
Eric Carvalho over 8 years@Ilan answer updated.
-
June Wang over 3 yearsCtrl+Alt+F1 doesn't work