Switching users with su
Command Line – Switching Users

© Lead Image © bee32, 123RF.com
There are more ways to switch users than you may know. The su command offers security and versatility.
The su
(substitute or switch user) command lets you change from the current account to another user or group ID [1]. It can be used for security purposes, such as running the web in a more locked-down account without access to other files, but its most common purpose is to switch from a user account to root in distributions that are not set up to use sudo
. Although the target account must be logged into, using su
requires fewer steps than logging out of one account and into another. When the session is no longer needed, the command exit
will return the terminal to the original account.
su Options
Frequently used to switch from a user account to root, the bare command switches to the root account given, but it does not change the current directory or environment. This option is convenient for small tasks, such as entering a single command, but it can cause problems if the root account differs greatly from the original account. By contrast, adding --login
(-
, -l
) opens a login shell that changes to the target account's home directory (in this case, /root
) and activates the environment variables HOME
, SHELL
, USER
, LOGNAME
, and PATH
(Figure 1). This option can be inconvenient if you plan to work on files in the original directory, but it removes the chance of a problem caused by a change in the environments, making it suited for a longer session in the target account.
However, those who use su
only for either of these purposes might be surprised to discover that the command is more versatile. To start with, su
can specify any account to log in to. The root user can also use --group=GROUP
(-g
) to access all accounts in a group, when, for example, an option such as --command
is used (see the following features list). In addition, a specific shell can be logged into with --shell=shell
(-s
).
[...]
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

News
-
Linux Mint 22.2 Beta Available for Testing
Some interesting new additions and improvements are coming to Linux Mint. Check out the Linux Mint 22.2 Beta to give it a test run.
-
Debian 13.0 Officially Released
After two years of development, the latest iteration of Debian is now available with plenty of under-the-hood improvements.
-
Upcoming Changes for MXLinux
MXLinux 25 has plenty in store to please all types of users.
-
A New Linux AI Assistant in Town
Newelle, a Linux AI assistant, works with different LLMs and includes document parsing and profiles.
-
Linux Kernel 6.16 Released with Minor Fixes
The latest Linux kernel doesn't really include any big-ticket features, just a lot of lines of code.
-
EU Sovereign Tech Fund Gains Traction
OpenForum Europe recently released a report regarding a sovereign tech fund with backing from several significant entities.
-
FreeBSD Promises a Full Desktop Installer
FreeBSD has lacked an option to include a full desktop environment during installation.
-
Linux Hits an Important Milestone
If you pay attention to the news in the Linux-sphere, you've probably heard that the open source operating system recently crashed through a ceiling no one thought possible.
-
Plasma Bigscreen Returns
A developer discovered that the Plasma Bigscreen feature had been sitting untouched, so he decided to do something about it.
-
CachyOS Now Lets Users Choose Their Shell
Imagine getting the opportunity to select which shell you want during the installation of your favorite Linux distribution. That's now a thing.