cron の変更点   

  • 追加された行はこの色です。
  • 削除された行はこの色です。
  • cron へ行く。

* for cygwin [#lb75de44]
COLOR(RED){''おきて:cronで実行されるスクリプトは環境変数が設定されていないのでフルパスでかくこと''}

* cron の登録 [#lfe892fe]
  cygrunsrv -I cron -p /usr/sbin/cron.exe -a '-D'

  この後、マイコンピュータ(右)-> 管理 -> サービス 
  cron のプロパティ -> ログオン
  アカウントをチェックし、「参照」-> 「詳細設定」-> 「今すぐ検索」
  自分のアカウントを選択
  パスワードを入力
  全般タブに戻り、サービス開始
  (ユーザとパスワードを入れないと //192.168.0.10/c といった
   ネットワークパスが使えないケースがある)
  
  よく失敗する。
  1062 はユーザアカウントエラー
  1067 はファイルアクセスエラー
    (/var/run/cron.pid と /var/log/cron.log を消すこと)
  1069 はユーザパスワードエラー(パスワード未設定)
  
  何回やってもだめなときは cygwin をフル削除する
  c:\cygwin 削除
  レジストリも cygwin と cron で検索してフル削除して
  最初からやり直すとうまくいった

  $ cat /var/log/cron.log でチェックすべし。
  
  $ ps -eaf 
  で cron が動いていればOK
  (または net start |grep cron)でも可
   
  $ crontab -e 
  vi で編集。
  下手に環境変数の EDITORを emacs などにかえるとはまる

  0 * * * * date >> /cygdrive/c/tmp.txt

  これで毎時 0時に日付データを tmp.txt に追記する
  意味はないけど。

 0   * * * * date >> /cygdrive/d/tmp.txt
 05  * * * * cron/sync.pl >> /cygdrive/d/tmp.txt
 35  * * * * cron/sync.pl >> /cygdrive/d/tmp.txt


*** batファイル起動 [#b8c3ab05]
cron等の batファイルからの起動では「ネットワークドライブの割り当て」→「ログオン時に再接続する」で登録した ドライブ名は使えない。
 たとえば n: を \\192.168.0.1\net に割り当ててるとしたら
 perlスクリプト中では chdir('\\\\192.168.0.1\\net\\');
 のように書く

***  sshd [#le6f83eb]
 ssh-host-config -y 
 cygrunsrv -S sshd

 emacs /etc/sshd_config

 PasswordAuthentication no
 ChallengeResponseAuthentication no