- How to Switch Users in Ubuntu and Other Linux Distributions [Quick Beginner Tip]
- Change user in Linux command line
- Change users in Linux graphically (for desktop Linux)
- Linux Change or Rename User Name and UID
- Linux Change or Rename User Command Syntax
- List all users in Linux system
- How to Change or Rename Username and UID in Linux
- View current user and group membership for user named tom
- Rename and change username from tom to jerry on Linux
- A note about running process
- Rename and change primary groupname from tom to jerry
- How to change user home directory from /home/tom/ to /home/jerry
- How to change user tom UID from 5001 to 10000
- Getting help about usermod command
- Conclusion
- How to Change Users in Linux Command Line
- Various user types in Linux
- 1. System Users
- 2. Regular Users
- 3. Super Users
- Switch users in the command line
- Switch to root user
- How To Change or Rename Username and User ID In Linux?
- List User Info
- Change User Name
- Change User ID
- Check It Again
How to Switch Users in Ubuntu and Other Linux Distributions [Quick Beginner Tip]
Last updated October 29, 2020 By Abhishek Prakash 12 Comments
It is really simple to switch users in Ubuntu or any other Linux distribution using the terminal.
All you need to do is to know the unsername and its account password and you can switch users with su command:
You’ll be asked to enter the password of the user you want to switch to.
As you can see in the screenshot above, I changed to user prakash from user abhishek in the terminal.
There are some minor details with this method that I’ll share with you in a moment. I’ll also share the graphical way of switching users in Linux if you are using desktop Linux.
Switching to root user
If you want to switch to the root user in Ubuntu, you can use the following command:
sudo su
You’ll have to enter your own user password here.
Change user in Linux command line
Let’s see things a bit in detail. To switch users, you need to first know the exact username because tab competition doesn’t work here. You can list all the users in Linux command line by viewing the content of the /etc/passwd file.
You’ll also need to know the password of the user account you want to switch to. This is for security reason, of course.
If you are the admin user or have sudo access, you can change account password with passwd command.
You’ll notice that some people use a — between su and the username. There is a specific reason for that.
When you use -, -l or –login option, you start the shell as a login shell. This means that it will initialize the environment variables like PATH and changes to the home directory of the changed user. It will be as if you logged into the terminal as the second user.
Note: though — is more popular, it is advised to use –login option.
Change users in Linux graphically (for desktop Linux)
If you are using desktop Linux, the above method may not be sufficient for you. Why? Because you switch the user in the terminal only. It is confined to the terminal. Nothing is changed outside the terminal.
If you want to switch users so that you can log in as another user and use all the system (browser, applications etc) graphically, you’ll have to log out and then log back in.
Now the screenshots may look different but the steps remain the same. Here’s how to switch users in Ubuntu Linux.
Go to the top right corner and click the Power Off/Log out option to open the dropdown and you can choose either of Switch User or Log Out.
- Switch User: You get to keep your session active (applications keep on running) for current user. Good for temporarily switching users as you won’t lose your work.
- Log out: Current session ends (all applications are closed). Good when you want to switch to the other user for a long time.
You can choose whichever option is more suited for your need.
Now, you’ll be at the login screen with all the available users for your system. Choose the user account of your choice.
Clearly, you need to know the password of the user account you want to use.
That’s it. I hope you find this quick beginner tip helpful in changing users in Ubuntu and other Linux distributions. Questions and suggestions are always welcome.
Like what you read? Please share it with others.
Источник
Linux Change or Rename User Name and UID
Linux Change or Rename User Command Syntax
Tutorial details | |
---|---|
Difficulty level | Easy |
Root privileges | Yes |
Requirements | Linux terminal |
Est. reading time | 5 mintues |
The syntax is as follows to rename by user name:
usermod -l login-name old-name
- We use the usermod command in Linux to rename user account. The name of the user will be changed from the old-name to login_name. Nothing else is changed. In particular, the user’s home directory name should probably be changed to reflect the new login name.
The syntax is as follows to rename by a UID (user ID):
usermod -u UID username
Where,
- The numerical value of the user’s ID (UID) . This value must be unique unless the -o option is used. The value must be non-negative. Values between 0 and 99 are typically reserved for system accounts. Any files which the user owns and which are located in the directory tree rooted at the user’s home directory will have the file user ID changed automatically. Files outside of the user’s home directory must be altered
manually.
List all users in Linux system
Type the following cat command:
cat /etc/passwd
One can use the grep command to filter out only user names:
grep -w ‘^username’ /etc/passwd
grep -w ‘^jerry’ /etc/passwd
Another option is to use the cut command:
cut -d: -f1 /etc/passwd
Sample outputs:
How to Change or Rename Username and UID in Linux
Let us see how to rename user login. First, make sure user name is not logged into the server and any other process is not running under the same user name. I also recommend that you backup any data or server files before changing user names.
View current user and group membership for user named tom
First get user identity using the id command:
id tom
Next use the grep command to grab login info about user named tom from the /etc/passwd file
grep ‘^tom:’ /etc/passwd
See group info about user named tom using the groups command:
grep ‘tom’ /etc/group
groups tom
Find home directory permissions for user named tom, run the following ls command:
ls -ld /home/tom/
Finally, see all Linux process owned by user and group named tom using the ps command:
ps aux | grep tom
ps -u tom
Fig.01: Getting info about user named ‘tom’ on a Linux based system
Rename and change username from tom to jerry on Linux
Type the usermod command as follows:
# id tom
# usermod -l jerry tom
## Verify ###
# id tom
# id jerry
# ls -ld /home/tom
A note about running process
You may see an error as follows if tom is logged in and running jobs:
You need to kill all Linux process owned by user named tom and forcefully logged them out of the system:
Rename and change primary groupname from tom to jerry
Type the usermod command as follows:
# id tom
# groupmod -n jerry tom
## Verify it ###
# id tom
# ls -ld /home/tom
Sample outputs:
Fig.02: Sample session renaming user on a Linux based server
How to change user home directory from /home/tom/ to /home/jerry
The syntax is as follows:
# usermod -d /home/jerry -m jerry
# id jerry
# ls -ld /home/jerry
Sample outputs:
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
How to change user tom UID from 5001 to 10000
Type the usermod command as follows:
# id tom
# usermod -u 10000 tom
# id tom
Getting help about usermod command
You can pass the —help option to the usermod command. For instance, type the following command at the shell prompt in Linux:
usermod —help
Options | Description |
---|---|
-c OR —comment | COMMENT new value of the GECOS field |
-d OR —home | HOME_DIR new home directory for the user account |
-e OR —expiredate | EXPIRE_DATE set account expiration date to EXPIRE_DATE |
-f OR —inactive | INACTIVE set password inactive after expiration to INACTIVE |
-g OR —gid | GROUP force use GROUP as new primary group |
-G OR —groups | GROUPS new list of supplementary GROUPS |
-a OR —append | append the user to the supplemental GROUPS mentioned by the -G option without removing the user from other groups |
-h OR —help | display this help message and exit |
-l OR —login | NEW_LOGIN new value of the login name |
-L OR —lock | lock the user account |
-m OR —move-home | move contents of the home directory to the new location (use only with -d) |
-o OR —non-unique | allow using duplicate (non-unique) UID |
-p OR —password | PASSWORD use encrypted password for the new password |
-R OR —root | CHROOT_DIR directory to chroot into |
-P OR —prefix | PREFIX_DIR prefix directory where are located the /etc/* files |
-s OR —shell | SHELL new login shell for the user account |
-u OR —uid | UID new UID for the user account |
-U OR —unlock | unlock the user account |
-v OR —add-subuids | FIRST-LAST add range of subordinate uids |
-V OR —del-subuids | FIRST-LAST remove range of subordinate uids |
-w OR —add-subgids | FIRST-LAST add range of subordinate gids |
-W OR —del-subgids | FIRST-LAST remove range of subordinate gids |
-Z OR —selinux-user | SEUSER new SELinux user mapping for the user account |
Conclusion
In this tutorial, you learned how to change or rename username and UID in Linux using the usermod command. Read man pages of usermod(8) and groupmod(8) commands for more information see this page.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Источник
How to Change Users in Linux Command Line
Linux systems have different types of users with different types or permissions as well.
Not all users can execute all commands and not all users are allowed to switch to other users neither. This all might sound confusing but, I will try to explain these so it can be easy to understand.
For the moment, here’s a quick summary of how to switch users in Linux command line.
To switch users, you need to know the password of that user. You can switch the users with this command:
To switch to root user in Ubuntu, you can use this command:
Various user types in Linux
If you list all users in Linux, you’ll see a lot of users that you didn’t know about. Who are these users? Where did they come from? I could write an entire article in regards of how users work in Linux, however, this is not the idea for this one.
Basically, there are 3 types of users in Linux:
1. System Users
These are the users that are automatically created in Linux systems to be able to run services or applications and are not intended to log in to the system (in fact you can’t log in as any of these users).
2. Regular Users
These are the (human) users who can log in to a system. Each of these users might have or not different permissions or levels in the system which is given by the groups they belong to.
3. Super Users
These are system administrators or users who can perform high-level tasks that can be considered critical or system dangerous.
Switch users in the command line
When using a Linux system you can log in with a user and then simply “switch” to another user through the same command line session. In order to do this, there is a command “su -“, which allows you to switch to become another user:
In the above example, you need to know the password of janedoe in order to switch to that user. Which makes sense because if you are going to switch to a user, you need to know the password of that user else it will be a security risk.
Switch to root user
For security reasons, some systems have ‘root’ account blocked for direct login, either locally or remotely, so this means it will not accept someone who tries to log in using ‘root’ even with the correct password.
So, how do you perform actions as the ‘root’ user? That’s what the ‘sudo’ command allows you to.
The sudo command will basically execute anything you want in the system as if the ‘root’ was doing it. You don’t need to know the ‘root’ user’s password, in fact, probably nobody knows it or there is no password assigned to ‘root’. You only need to know your own user’s password and that user must be in the ‘sudoers’ group, which is basically the group of users which can use ‘sudo’ in the system.
Normally, it is a good practice to run the commands with sudo that needs to run with root permission like this:
But if you want to change to root user so that all the subsequent commands will be run as root, you can use:
You’ll use your own password here, not the root account’s password.
As a sudo user yourself, you can create sudo user by adding the user to sudo group.
Conclusion
Linux systems allow you to easily switch users or execute high-level commands with the usage of ‘su‘ and ‘sudo’ commands. And remember: with great sudo power comes great responsibility!
Источник
How To Change or Rename Username and User ID In Linux?
The problem is we want to change the already created user name or user id. As we know there is a lot of configuration those rely on the user id like permissions. We will use usermod command to make this change. Keep in mind this changes will effects system wide.
List User Info
Before starting to big changes we will list users detailed info with cat command like below.
List User Info
- test is our user name for this operation
- 1000 is the current id of our test user.
Change User Name
We will change username with the following command by providing new username. We will provide the -l option with the new username and old username. In this example we will change username ismail into ali .
- usermod is command we issue to chage
- -l ali is the new username
- ismail is the original username
Change User ID
Another opportunity is changing the user ID. Previously we have listed user information of the ismail . We know that the user id of the ismail is 1000 . We will use -u option and the new user id with the user name. In this example we will change the user id of ismail into 1010
- usermod is command used too
- -u 1010 is new user id provided for the user
- ismail is the user whose id will be changed.
Check It Again
After these steps we need to the if there is a problem or everything is OK. We will list user information again with the cat command like below.
- test2 is new username but home directory stays the same
- 1010 is the users new id
Источник