追加読書

追加読書

Debian Extension ユーザーはここにあります。画面が10分ごとに点滅するようにしたいと思います。いくつかの選択肢をxrefresh含めると、シェルsctで動作しますがcron

これは働きます:

sct 2000

スクリプト:(名前colrefr

#!/bin/bash
PATH=/usr/bin
sct 2000; sleep 3; sct

クローナ:(実行中のpgrep cron姿cron

* * * * * /home/user/folder/colrefr

(デバッグが成功するまで1分に1回)

PATH最後のコマンドの後の改行、スクリプト設定、ファイル名にドットなしなどの一般的な問題を軽減しました。

$ which sct
/usr/bin/sct

$ which sleep
/bin/sleep/

-

$ sudo tail -f /var/log/syslog
Oct 16 16:00:01 user CRON[29060]: (user) CMD (/home/user/folder/colrefr )
Oct 16 16:00:01 user kernel: [229206.201351] sct[29062]: segfault at e0 ip 000055dca79aa8cd sp 00007ffd9dfc6220 error 4 in sct[55dca79aa000+2000]
Oct 16 16:00:01 user kernel: [229206.201366] Code: 17 20 00 66 90 ff 25 4a 17 20 00 66 90 41 57 41 56 41 55 41 54 55 53 89 fb 31 ff 48 89 f5 48 83 ec 38 e8 ae ff ff ff 49 89 c4 <48> 63 80 e0 00 00 00 4c 89 e7 48 c1 e0 07 49 03 84 24 e8 00 00 00 
Oct 16 16:00:01 user kernel: [229206.209280] sct[29064]: segfault at e0 ip 000055dcdd3268cd sp 00007ffdf60c9e40 error 4 in sct[55dcdd326000+2000]
Oct 16 16:00:01 user kernel: [229206.209295] Code: 17 20 00 66 90 ff 25 4a 17 20 00 66 90 41 57 41 56 41 55 41 54 55 53 89 fb 31 ff 48 89 f5 48 83 ec 38 e8 ae ff ff ff 49 89 c4 <48> 63 80 e0 00 00 00 4c 89 e7 48 c1 e0 07 49 03 84 24 e8 00 00 00 

他の3人がいますが、cronjobsすべて動作します。

シェルでスムーズに実行されます。

ベストアンサー1

これは2つの組み合わせです。

  1. Xサーバーがどこにあるかプログラムに教えてくれませんでした。
  2. M. Unangstのプログラムはエラーチェックと処理を全く行いません。

プログラムは、DISPLAY調整したいXサーバーが表示される場所を知らせるために、crontabまたはラッパースクリプトで指定された環境変数を継承する必要があります。特に言及しない場合、表示される分割エラーは失敗モードです。

これをバグとして報告することもできます。

DISPLAYGUI端末エミュレータを使用しているため、シェル環境に変数がある場合があります。カーネル/ユーザー仮想端末、物理端末、X11 転送なしの SSH セッションなど、GUI 以外の環境にログインしている場合は、対話式にプログラムを呼び出すときにも同じ動作を確認できます。

%ディスプレイ= sct
zsh: 分割エラー DISPLAY= sct
%

追加読書

おすすめ記事