お知らせ

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

#1 2012-04-07 10:37:17

asterisk1976
メンバ
登録日: 2012-03-29

gnome-scheduleをrootで起動したときにtask templatesが作成できない

gnome-scheduleを以前から利用していましたが、ある時から表題の通りrootで起動したときに限ってtask templatesを作成できなくなりました。gksuコマンドでgnome-scheduleを起動させています。その場合、add templatesのボタンをクリックしてもなにも反応が無く、templateの設定画面に切り替わらず、作成できないといった状態です。

一旦gnome-scheduleを削除・再インストールをして再度試みましたが解決しませんでした。
因みにtask templatesはログインアカウントで起動させた時は問題なく作成できます。

原因に心当たりのある方、解決法のアイデアがある方、ご助言いただきたく思います。

オフライン

 

#2 2012-04-07 12:25:57

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

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

端末から起動した場合、Add as templateボタン押下時に、端末に何かメッセージが出ますよね?

オフライン

 

#3 2012-04-07 17:07:36

asterisk1976
メンバ
登録日: 2012-03-29

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

端末より
 gksu gnome-schedule
を実行。gnome-scheduleがroot権限で起動します。add a new taskボタンよりA task that launches one timeもしくはA task that launches recurrentlyを選択します。その中でtaskの内容を記述した後、 add as templateボタンをクリックします。この時、appウィンドウはtemplate設定pop-upウィンドウは出ません。しかしながら、端末上では
 savetemplate
 got new id
と表示されます。この時、プロンプトは表示されず、ただカーソルが点滅しているだけの状態になります。この常態を道理かいすべきか、そして、どう対応すべきかが分かりません。savetemplateと表示されているので、templateが保存されたのかとgnome-scheduleウィンドウ内のManage templatesのボタンをクリックしてみたのですが、何の反応もありません。

以上のような状況なのですが、何かお分かりになりますでしょうか?
宜しくお願いします。

オフライン

 

#4 2012-04-07 21:12:34

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

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

「gksudo gnome-schedule」で起動すると、エラー時のスタックトレースが端末に表示されないですね。(私の勉強不足で何故表示されないのか分からない。)

とりあえず、

コード:

gksudo gnome-terminal

で、root権限で起動した端末内で、

コード:

gnome-schedule

して、操作時に何かエラーが端末に出力されていないか、確認してみてください。

オフライン

 

#5 2012-04-07 22:16:50

asterisk1976
メンバ
登録日: 2012-03-29

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

早速ご回答頂きまして有り難うございます。ご指南頂いた通りコードを実行し、gnome-scheduleウィンドウ内の操作に移り、add as templateボタンをクリックしたところ、端末上に下記の表示がされました。ご覧頂いて何かお分かりになりましたら、引き続きご助言を頂きたく思います。

savetemplate
got new id
Traceback (most recent call last):
  File "/usr/share/gnome-schedule/atEditor.py", line 577, in on_button_template_clicked
    self.template.savetemplate_at (0, self.title, self.command, self.output)
  File "/usr/share/gnome-schedule/template.py", line 192, in savetemplate_at
    self.parent.template_manager.reload_tv ()
  File "/usr/share/gnome-schedule/template_manager.py", line 101, in reload_tv
    formatted = self.template.format_at (title, command, output)
  File "/usr/share/gnome-schedule/template.py", line 200, in format_at
    s = (s + " <i>(%s)</i>") % (str (self.parent.output_strings [2]))
ValueError: unsupported format character 'U' (0x55) at index 50

オフライン

 

#6 2012-04-08 00:30:03

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

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

これバグですね。こちらでも再現しました。

再現手順:
Add a new taskボタンよりA task that launches one timeを選択。

Task descriptionかTaskにパーセント記号(%)を含めた内容を入力。

"X application"にチェックを入れて、Add as templateボタンをクリックして登録。

Manage templatesボタンを押しても、反応が無くなる。
端末には、
  File "/usr/share/gnome-schedule/template.py", line 200, in format_at
    s = (s + " <i>(%s)</i>") % (str (self.parent.output_strings [2]))
ValueError: unsupported format character 'XX' (0xYY) at index ZZ
のようなスタックトレースが出力される。(XX,YY,ZZは登録内容によって変わります。)

今回のケースでは、おそらく登録内容のどこかに、%Uという文字が入ってしまっています。

gnome-scheduleはテンプレート情報をgconfに保存しているので、gconf-editorを使って、/apps/gnome-schedule/templates/at 配下の内容の"%U"の"%"をやめれば、直るはずです。

オフライン

 

#7 2012-04-08 00:42:22

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

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

良い忘れました。
今回はrootユーザのgconf情報なので

コード:

gksudo gconf-editor

です。

オフライン

 

#8 2012-04-08 10:34:05

asterisk1976
メンバ
登録日: 2012-03-29

Re: gnome-scheduleをrootで起動したときにtask templatesが作成できない

gksudo gconf-editor を実行。

/apps/gnome-schedule/templates/at 配下のフォルダを一つ一つ確認していきました。するとご推察に当てはまるであろうcommand key documentationファイルのvalue内容がありました。該当のcommand valueは下記のようになっていました。

rhythmbox %

まず、この%を削除してから端末より

gksu gnome-schedule 実行

Add a new taskボタンよりA task that launches one timeを選択。

適当にtask scheduleを作成

"X application"にチェックを入れて、Add as templateボタンをクリック。

【ここで変化あり!】これまで無反応だったのですが、今回はcreate a new scheduled taskのウィンドウが閉じました。

Manage templatesボタンをクリックすると、正常にmanage templatesのpop-upウィンドが立ち上がり、これまでに追加してきたtemplateが表示されていました。

◆◇◆ 解決です!有り難うございます。◆◇◆

しかしながら、ここで疑問が残ります。以前、gnome-scheduleが正常に機能していた時、設定時間にsuspendから復帰させ、時間差をつけて設定時間にrhythmboxを起動させて音楽を流そうと試みたことがありました。(音楽を自動で再生させることを考えていたのですが、結果は上手くいかなかったような記憶がありますが…)
今回問題になったcommand value内に入力されていた%ですが、記憶の域を越えませんが、入力した覚えがありません。commandの内容によって勝手に%が生成される事はあり得るのでしょうか?こんかい発見した%は2つあり、当時誤って入力した可能性は低いと思われます。
この件について、何かご存知でしたらご回答頂けたら幸です。

更にもう一つ疑問があります。manage templatesウィンド内のeditボタンに関してです。内容はrecurrent taskのtemplateに関しては反応があり、その内容を再編集できます。しかしながら、one-time taskのtemplateに関しては無反応で再編集ができません。この状態は正常なのでしょうか?
何かご存知でしたら併せてご回答をお願いします。

オフライン

 

Board footer

Powered by FluxBB