Run function under different user


romy4 аватар

romy4 - Posted on 29 Июнь 2016

Представьте, что у вас под рутом запускается скрипт, но есть код, который надо выполнить от другого пользователя. Проблема в том, что у вас всего один файл и он запускается на удалённой машине при старте.

#!/bin/bash
 
function run_as_another()
{
  echo "I'm under another user"
  id
}
 
export -f run_as_another
su another -c run_as_another
 
echo Voila!
0
Ваша оценка: Ничего

Как альтернативный вариант

#!/bin/sh
 
function foo { do_some_stuff_here; }
su test -c "$(typeset -f foo); foo"

пишем функцию. далее в новом подшеле вставляем её исходный код и запускаем

Отправить комментарий

Google Friend Connect (leave a quick comment)
loading...
Содержание этого поля является приватным и не предназначено к показу.