私はしばしば別のユーザーとして仕事で走る必要があります。私はいつも次のようなことをしました
$ echo "$PWD/batchToRun -parameters" | sudo su - otheruser -c "at now"
batchToRun
また、 otheruserのcrontabを介して実行するようにスケジュールされています。これは、を実行しているユーザーの環境から渡されるLANG(誰かを並べ替える?)batchToRun
などの環境変数の設定の微妙な副作用に応じて開始するまでうまく機能します。sudo
私は通常、 otheruserとしてログインしたくありません。これは半特権のアカウントであり、関連するアクティビティの「紙の証跡」を作成して、戻って、誰が、いつ、何をしたかなどを正確に確認できるようにしたいと思います。
そのような設定から独立しているという明らかな書き直しbatchToRun
に加えて、sudoerの環境がターゲット環境を汚染しないようにするための良い方法は何ですか?
注:これはFC7(sudoバージョン1.6.8p12)およびその他の古いディストリビューションにあるため、//の光沢のある新機能sudo
(特にsu
、at
に引数を渡す機能-i
)sudo
は私の理解の範囲外です。
更新:これsu - otheruser
は実際にはユーザー間の十分なファイアウォールであり、私の汚染はインタラクティブな起動シーケンスの何かから来ていることがわかりました。しかし、私はまだenv
編集機能が好きです。