1

How can I run a shell as Admin in Terminal if Im logged in as User with standard privileges? I know the passwords for user and admin account

  • 3
    Open a terminal window, execute the command su and carry on. So straightforward I'm sure I'm missing the point ... – High Performance Mark Feb 23 '18 at 8:32
  • 4
    btw, admin != root – Tetsujin Feb 23 '18 at 8:35
  • 3
    What exactly do you want to do that sudo is not sufficient? There seems to be a lot missing from this question. – Allan Feb 23 '18 at 11:06
  • 1
    There is no such thing as root/admin what do you want to actually do? – user151019 Feb 23 '18 at 15:07
  • 2
    Let’s close this as dupe. Unless the OP can clearly break out what they’re going to do once they’re root - this is totally the same as the linked question - use an admin shell to sudo -s and you are root on any and all macOS systems out of the box, no fiddling with enabling root user or setting a root password. – bmike Feb 23 '18 at 17:19
3

One easy way is to su to the admin user than use sudo -s to become root shell.

su - shortname_for_admin
sudo -s

This also is covered well in the linked questions:

2

I believe this has to do with the /etc/sudoers file, which is shown at the end of this answer. The important line is repeated below.

%admin      ALL = (ALL) ALL

This line gives the administrator accounts the ability to use the sudo command. If you know the user name and password for an administrator account, the enter the commands given below to become the root user. When prompted for a login:, enter the user name for the administrator account. When prompted for a Password:, enter the password for the administrator account.

login
sudo  login  -f  root

To return to your user account, enter the commands given below.

exit
exit

Appendix

Output from cat /etc/sudoers.

#
# Sample /etc/sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.

##
# Override built-in defaults
##
Defaults    env_reset
Defaults    env_keep += "BLOCKSIZE"
Defaults    env_keep += "COLORFGBG COLORTERM"
Defaults    env_keep += "__CF_USER_TEXT_ENCODING"
Defaults    env_keep += "CHARSET LANG LANGUAGE LC_ALL LC_COLLATE LC_CTYPE"
Defaults    env_keep += "LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME"
Defaults    env_keep += "LINES COLUMNS"
Defaults    env_keep += "LSCOLORS"
Defaults    env_keep += "SSH_AUTH_SOCK"
Defaults    env_keep += "TZ"
Defaults    env_keep += "DISPLAY XAUTHORIZATION XAUTHORITY"
Defaults    env_keep += "EDITOR VISUAL"
Defaults    env_keep += "HOME MAIL"

Defaults    lecture_file = "/etc/sudo_lecture"

##
# User alias specification
##
# User_Alias    FULLTIMERS = millert, mikef, dowdy

##
# Runas alias specification
##
# Runas_Alias   OP = root, operator

##
# Host alias specification
##
# Host_Alias    CUNETS = 128.138.0.0/255.255.0.0
# Host_Alias    CSNETS = 128.138.243.0, 128.138.204.0/24, 128.138.242.0
# Host_Alias    SERVERS = master, mail, www, ns
# Host_Alias    CDROM = orion, perseus, hercules

##
# Cmnd alias specification
##
# Cmnd_Alias    PAGERS = /usr/bin/more, /usr/bin/pg, /usr/bin/less

##
# User specification
##

# root and users in group wheel can run anything on any machine as any user
root        ALL = (ALL) ALL
%admin      ALL = (ALL) ALL

## Read drop-in files from /private/etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /private/etc/sudoers.d

Not the answer you're looking for? Browse other questions tagged .