sudo in a terminal |
|
Developer(s) | Todd C. Miller |
---|---|
Operating system | Unix-like |
Type | Privilege authorization |
License | ISC-style[1] |
Website | www.sudo.ws |
sudo
( /ˈsuːduː/[2] or /ˈsuːdoʊ/) is a program for Unix-like computer operating systems that allows users to run programs with the security privileges of another user (normally the superuser, or root). Its name is a concatenation of the su
command (which grants the user a shell of another user, normally the superuser) and "do", or take action.
Unlike the su
command, users typically supply their own password to sudo
rather than the root password. After authentication, and if the /etc/sudoers
configuration file permits the user access, then the system will invoke the requested command.
Contents |
The program was originally written by Bob Coggeshall and Cliff Spencer "around 1980" at the Department of Computer Science at SUNY/Buffalo. The current version is under active development and is maintained by OpenBSD developer Todd C. Miller and distributed under a BSD-style license.[3]
In November 2009 Thomas Claburn, in response to fears that Microsoft had patented the sudo
command,[4] found the suspicions to be overblown.[5] The claims were narrowly framed to a particular GUI, rather than to the sudo concept.[6]
Unlike the su
command, users typically supply their own password to sudo. After authentication, and if the /etc/sudoers
configuration file permits the user access, then the system will invoke the requested command. By default the user's password can be retained through a grace period (15 minutes per pseudo terminal), allowing the user to execute several successive commands as the requested user without having to provide a password again.
sudo
is able to log each command run. Where a user attempts to invoke sudo without being listed in the sudoers file an error is presented to the user indicating that the attempt has been recorded in the system log.
The /etc/sudoers
file allows listed users access to execute a subset of commands while having the privileges of the root user.
sudo
may be configured to require the root password, or no password at all.[7]
In some cases sudo has completely supplanted the superuser login for administrative tasks, most notably in Linux distributions, such as Fedora and Ubuntu, as well as Apple's Mac OS X.[8][9]
visudo
is a command-line utility that allows editing of the /etc/sudoers
file in a safe fashion. It opens /etc/sudoers
using the vi
editor's interface, prevents multiple simultaneous edits with locks, performs sanity checks and checks for parse errors.[10]
There exist several graphical frontends for use in a GUI environment, notably kdesudo
, and gksudo
; Mac OS X also has Authorization Services.[11]
The runas
command provides similar functionality on Microsoft Windows.
|