お知らせ

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

#1 2011-12-04 20:49:39

kazuhirox
新しいメンバ
登録日: 2011-12-04

サスペンドまでの時間を変更するコマンドを教えて下さい。

初めて投稿します。kazuhiroxと申します。よろしくお願いします。

システム設定の「電源」の「操作していない時にサスペンド」の設定をシェルスクリプトで
変更したいと考えています。
自分なりにネットで調べたのですが、pm-suspendのようなサスペンドを実行するコマンドは
見つかりましたが、この設定を変更する方法が分かりませんでした。

どなたか御存知の方がいらっしゃいましたら、教えて頂けないでしょうか?

私のUbuntuのバージョンは以下の通りです。
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"

オフライン

 

#2 2011-12-04 21:22:49

STGSAGWAN
メンバ
登録日: 2008-11-12

Re: サスペンドまでの時間を変更するコマンドを教えて下さい。

コード:

gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 秒数

です。

オフライン

 

#3 2011-12-04 21:29:20

STGSAGWAN
メンバ
登録日: 2008-11-12

Re: サスペンドまでの時間を変更するコマンドを教えて下さい。

画面操作をコマンドに"翻訳"するには、調べる方法があるんですよ。(あまり皆さんブログとかに書かないですけど。)
ぜひご自身でやってみてください。

1. 空のファイル作成する。

コード:

$ touch hoge

2. 画面から設定を変更する。

3. どのファイルが書き換わったかを、findコマンドの-newerオプションで調べる

コード:

$ cd
$ find . -newer hoge
./.config/dconf
./.config/dconf/user

4. findの出力を見ると、dconfの設定が書き換わっているのだろうと予想できる。

5. dconfの変更前の設定値をファイルに出力する。(ファイル:1.txt)

コード:

$ gsettings list-recursively > 1.txt

6. 画面から設定を変更する。

7. dconfの変更後の設定値をファイルに出力する。(ファイル:2.txt)

コード:

$ gsettings list-recursively > 2.txt

8. 2つのファイルをdiffコマンドで比較する。

コード:

$ diff -u 1.txt 2.txt
--- 1.txt    2011-12-02 02:20:39.688603189 +0900
+++ 2.txt    2011-12-02 02:20:48.560603445 +0900
@@ -773,7 +773,7 @@
 org.gnome.settings-daemon.plugins.power sleep-display-ac 600
 org.gnome.settings-daemon.plugins.power sleep-display-battery 600
 org.gnome.settings-daemon.plugins.power sleep-inactive-ac true
-org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 600
+org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 300
 org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend'
 org.gnome.settings-daemon.plugins.power sleep-inactive-battery true
 org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0

9. 以上のことから、画面から設定を変更すると、dconfの「org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout」 が書き換わっている事が明らかになる。

10. なお、4.にてdconfではなくgconfが書き換わっているだろうと予想した場合は、5.と6.では「gsettings list-recursively」の代わりに「gconftool --dump / 」を使えばよいです。
逆に、dconfでもgconfでも無い場合は、単なるテキストファイルの場合が殆どなので、もっと簡単です。
また、設定がシステム設定の場合は、3. にてホームディレクトリ配下の代わりに、/etc配下とかをfindするとよいです。

オフライン

 

#4 2011-12-04 21:38:05

STGSAGWAN
メンバ
登録日: 2008-11-12

Re: サスペンドまでの時間を変更するコマンドを教えて下さい。

他には、変更点をモニタリングする機構などが最初から組み込まれているソフトウェアもありますし、ファイル変更を監視するツール(inotifyとか)もありますが、上記の方法で私は、大抵のケースで画面操作をコマンドに"翻訳"できています。
ベタな方法ですが応用範囲が広いので、私は強力だと思っています。

オフライン

 

#5 2011-12-05 09:36:21

kazuhirox
新しいメンバ
登録日: 2011-12-04

Re: サスペンドまでの時間を変更するコマンドを教えて下さい。

STGSAGWANさん、回答ありがとうございました。

おぉ!操作コマンドの翻訳の仕方は、大変参考になりました!
これはUbuntuだけでなく、Linux全般にも応用できますね!

本当にありがとうございました。

オフライン

 

Board footer

Powered by FluxBB