Initial commit.

This commit is contained in:
Sergey Fedosov
2016-09-03 22:35:07 +03:00
commit 9177854a27
12 changed files with 1057 additions and 0 deletions

45
watchman-runas.bash Normal file
View File

@@ -0,0 +1,45 @@
#!@BASH_PATH@
watchman_version='@VERSION@'
err() { printf '%s\n' "$1" >&2; }
runas::main() {
local job_username
while [[ "$1" ]]; do
case "$1" in
(-u) job_username="$2"; shift;;
(-h) runas::usage;;
(-v)
printf '%s\n' "$watchman_version"
exit 0
;;
(-*)
err "Unknown option: $1"
runas::usage
return 1
;;
(*) break;;
esac
shift
done
[[ "$UID" -eq 0 ]] || {
err "Only root is allowed to runas!"
return 1
}
(( $# )) || {
err "No command supplied"
runas::usage
return 1
}
exec su "$job_username" -s "$BASH" -c "$*"
}
runas::main "$@"