runasroot.sh revision 107d8363003c4c65ed6dad3994e710453dcf4cba
2N/A# VirtualBox privileged execution helper script for Linux and Solaris 2N/A# Copyright (C) 2009-2011 Oracle Corporation 2N/A# This file is part of VirtualBox Open Source Edition (OSE), as 2N/A# you can redistribute it and/or modify it under the terms of the GNU 2N/A# General Public License (GPL) as published by the Free Software 2N/A# Foundation, in version 2 as it comes in the "COPYING" file of the 2N/A# VirtualBox OSE distribution. VirtualBox OSE is distributed in the 2N/A# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. 2N/Acase "$1" in "--has-terminal")
2N/A echo "Usage: `basename $0` DESCRIPTION COMMAND [ADVICE]" >&
2 2N/A echo "Attempt to execute COMMAND with root privileges, displaying DESCRIPTION if" >&
2 2N/A echo "possible and displaying ADVICE if possible if no su(1)-like tool is available." >&
2 # Older gksu does not grok --description nor '--' and multiple args. # @todo which versions do? # "$GKSU" --description "$DESCRIPTION" -- "$@" # Note that $GKSU_SWITCHES is NOT quoted in the following # pkexec may work for ssh console sessions as well if the right agents # are installed. However it is very generic and does not allow for any # custom messages. Thus it comes after gksu. ## @todo should we insist on either a display or a terminal? # case "$DISPLAY$HAS_TERMINAL" in ?*) # On Ubuntu we need sudo instead of su. Assume this works, and is only # needed for Ubuntu until proven wrong. # The ultimate fallback is running 'su -' within an xterm. We use the # title of the xterm to tell what is going on. echo "Unable to locate 'pkexec', 'gksu' or 'su+xterm'. $ADVICE" >&
2 echo "Unable to locate 'pkexec'. $ADVICE" >&
2