電子書籍の厳選無料作品が豊富!

特定のUserのときにだけ
XSystem起動時にアプリケーションを起動して
そのアプリケーションが終了したら
シャットダウンしたいのですが

OS CentOS 5.1
実行アプリ vmware (vmware -q -x /home/user/winxp.vmx)

よろしくお願いします。

A 回答 (3件)

X起動時のクライアント起動、クライアント終了後のシャットダウン。


手元の環境では次の(1)~(4)の手順で実現できました。(ユーザー名:astronaut)

(1) /etc/sudoers に、以下の設定を追加(編集には、visudoを使用)

----ここから----
astronaut ALL=(ALL) NOPASSWD: /sbin/shutdown
----ここまで----

(2) このユーザーで、sudo shutdown -h now が有効に働くことを確認

(3) .xinitrc または .Xclients を以下のように作成

----ここから----
tuxpaint --fullscreen --native
sudo /sbin/shutdown -h now
----ここまで----

(4) クライアント終了時にシャットダウンしなかったので確認すると、「sudo: sorry, you must have a tty to run sudo」というエラーがでている。ググって以下のページを発見。

 http://fun.poosan.net/sawa/index.php?UID=1188143 …

これに従って、/etc/sudoers の該当行をコメントアウト

ちなみに、シェルスクリプトに sudo コマンドを書いても、問題なくシャットダウンしますね。
    • good
    • 0

あ、本当にシャットダウンしたいんですね。

ログアウトしたいだけかと勘違いしてました。

sudo の設定で、一般ユーザーがパスワード入力無しにシャットダウンできるようにしておいて、アプリ起動コマンドの直後に

/usr/bin/sudo /sbin/shutdown -h now

とか書いておいたらどうでしょう? 試していないので「自信無し」で。
    • good
    • 0
この回答へのお礼

ありがとうございます。
sudo の設定で端末内からのshutdownはできるようになりました。
もう少し知恵を借りれればと
SHUTDOWN.shと言うファイルを作成し、
中身に /usr/bin/sudo /sbin/shutdown -h now
を記述子 実行しても動きません
しかし、起動時に端末内で実行すると実行できるのですが
何かまだ設定がたらないのでしょうか

お礼日時:2008/04/24 10:56

(1) GDMログイン(runlevel 5, グラフィカルなログイン画面)の場合


 そのユーザーのホームディレクトリに、.Xclients ファイルを作成して、お望みのXクライアントを起動するコマンドを記述する。.Xclientsファイルには実行属性をつけておく(chmod +x)必要がある。

(2) テキストログイン(runlevel 3)から、startx で X を起動する場合
 そのユーザーのホームディレクトリに、.xinitrc ファイルを作成して、お望みのXクライアントを起動するコマンドを記述する。

いずれも、そのアプリを終了すれば、Xが終了(GDMの場合はログアウト)します。(シャットダウンはしません)

手元の環境で、tuxpaint --fullscreen --native とか書いて、確認しました。

この回答への補足

ありがとうございます
どうにか起動はできるようになったのですが
シャットダウンはやっぱりできないんですかね

補足日時:2008/04/23 14:08
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!