[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/17 18:08 / Filesize : 285 KB / Number-of Response : 869
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだらねえ質問はここに書き込め! Part 184



499 名前:login:Penguin mailto:sage [2010/06/17(木) 05:39:56 ID:TJFzO9Yj]
以下のようなことが実現したいです。

・root又は(ログイン出来る)一般ユーザーのcron等で、shスクリプトを実行
・そのスクリプトの動作自体は、他のユーザー権限で行いたい(ファイル作成やコピー等)
・その"他のユーザー"と言うのは、システムには存在するが、ログインシェルやパスワードがない
 (普段はFTPやメール等専用のユーザーで、SSHログインを認めていない)

色々ググッて調べてみたのですが、
・スクリプト内で su は使えない
 → "This account is currently not available."と出て、userが切り替わらない
・suidビットを立てる
 → shスクリプトには無効(他の例えばperlスクリプト等では可能?)
っと言ったような状況です。

とりあえずの解決策としては、以下のようなことが考えられるのですが、
・全部rootで実行後、chmodやchownで適宜ファイル属性を修正する
・perl等shスクリプト以外で実現
・その実行ユーザーにログインシェルとPasswordを与えてログイン出来るようにする

端的に希望を述べると、"suで切り替えできないユーザーの権限で、スクリプトやプログラムを実行したい"
っと言うことなんですが、出来ればshスクリプト(bash)だけで解決する方法はないでしょうか?

もちろん実現不可能であれば、上記のどれかで解決しようとは思いますが、
サービス起動のいくつかのプログラムで似たような動作
(rootでキックされるが、アプリ実体は別のユーザー権限で実行される)が
実現出来ているので、なんとかやる方法はあるとは思うのですが・・・。
(mysqld_safe等、そのあたりの起動スクリプトはこれから読んでみようと思います)

ディストリはCentOS/5.5 or 4.8、bashのバージョンは3.0及び3.2.25です。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<285KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef