お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2014-09-11 00:37:29

astrorobot110
メンバ
登録日: 2012-07-18

vbetoolの起動の仕方

後学のために質問したいのですが

現在ホットキーを利用してノートPCのモニタをon/offでトグルするスクリプトを作っています
この際にvbetoolを利用するのですがユーザー権限からvbetoolを使用することが出来ないため
ホットキーに対する動作としてsudo hogeとして起動自体はしています
visudoの設定でNOPASSWDを利用しているので動作に不満はないのですが
ホットキーに対してsudoでスクリプトを起動するのは方法として正しくない気がしています

もっとスマートな方法はないでしょうか?

オフライン

 

#2 2014-09-11 11:37:12

hito
管理者
登録日: 2007-03-18

Re: vbetoolの起動の仕方

これはわりとどうしようもなくて、やるとすると以下でしょうか。

 ・vbetoolにまかせている必要な操作だけを切り出して別バイナリにし、そのバイナリをrootにsetuidする
 ・vbetoolにまかせている必要な操作をドライバに切り出して、かつそのドライバをsysfsなりprocfsなりからアクセスできるようにして、そのデバイスノードを一般ユーザーからアクセスできるパーミッションにする
 ・vbetool以外に特権無しで同じことができないか探してみる
 ・別にsudoでもいいやと諦める

オフライン

 

#3 2014-09-11 17:31:19

taka.zoo.n
メンバ
登録日: 2013-05-30

Re: vbetoolの起動の仕方

必ずしもすべての機種で動くというわけではありませんが:  vbetool にこだわらない、かつ、DISPLAY 環境変数の値を正しく参照できる(ホットキーでということなのでこの点は不明です)なら
   xset dpms force off
で display off,
   xset dpms force on
で display on です。

老婆心ながら:上記がお使いのマシンで動くかどうかコマンドラインから試すときには
     xset dpms force off ; sleep 30 ; xset dpms force on
のように自動で(上の例では 30 秒後) on になるようにしないと画面が真っ暗になったままで再び on にするのが困難になります。

オフライン

 

#4 2014-09-11 22:13:43

astrorobot110
メンバ
登録日: 2012-07-18

Re: vbetoolの起動の仕方

アドバイスありがとうございます
xset dpms force offの方が簡単でした

オフライン

 

Board footer

Powered by FluxBB