Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
DOAS(1)			FreeBSD	General	Commands Manual		       DOAS(1)

     doas -- execute commands as another user

     doas [-nSs] [-a style] [-C	config]	[-u user] [--] command [args]

     The doas utility executes the given command as another user.  The command
     argument is mandatory unless -C, -S, or -s	is specified.

     The options are as	follows:

     -a	style	 Use the specified authentication style	when validating	the
		 user, as allowed by /etc/login.conf.  A list of doas-specific
		 authentication	methods	may be configured by adding an
		 `auth-doas' entry in login.conf(5).

     -C	config	 Parse and check the configuration file	config,	then exit.  If
		 command is supplied, doas will	also perform command matching.
		 In the	latter case either `permit', `permit nopass' or	`deny'
		 will be printed on standard output, depending on command
		 matching results.  No command is executed.

     -n		 Non interactive mode, fail if doas would prompt for password.

     -S		 Same as -s but	simulates a full login.	Please note this may
		 result	in doas	applying resource limits to the	user based on
		 the target user's login class.	However, environment variables
		 applicable to the target user are still stripped, unless
		 KEEPENV is specified.

     -s		 Execute the shell from	SHELL or /etc/passwd.

     -u	user	 Execute the command as	user.  The default is root.  Please
		 note: On some systems multiple	usernames can resolve to one
		 UID. For example, root	and toor both resolve to UID 0 on
		 FreeBSD. Please see the "as" syntax section of	the doas.conf
		 manual	page for details on how	doas handles this situation.

     --		 Any dashes after a combined double dash (--) will be inter-
		 preted	as part	of the command to be run or its	parameters.
		 Not an	argument passed	to doas	itself.

     The doas utility exits 0 on success, and >0 if an error occurs.  It may
     fail for one of the following reasons:

     o	 The config file /usr/local/etc/doas.conf could	not be parsed.
     o	 The user attempted to run a command which is not permitted.
     o	 The password was incorrect.
     o	 The specified command was not found or	is not executable.

     su(1), doas.conf(5)

     The doas command first appeared in	OpenBSD	5.8.

     Ted Unangst <>

FreeBSD	13.0			 June 11, 2016			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help