いつも参考にさせてもらっています。
linux(Red Hat Enterprise Linux ES release 3 Apache/2.0.46)上でcrontabを設定したいのですが、
現在うまくいっておりません。
まず、autoindex.shというシェルを/home/foo/scripts/ディレクトレィに作成しました。中身は3行からなっていて
#!/bin/sh
cd /var/www/html/search/index
mknmz -a /var/www/html/test
です。telnet上でroot権限を使用し、./autoindex.shコマンド発行で正常に動作しました。
そこで、crontabに以下のように
# crontab -l
50 11 * * * root /home/foo/scripts/autoindex.sh
と設定したところ、
# more /etc/log/cron
Sep 27 11:50:01 intra crond[18280]: (root) CMD (root /home/foo/scripts/autoindex.sh )
とcronは決めていた時間(11時50分)に稼動しているようなんですが、mailを見ると
# mail -t
From root@XXX.com Wed Sep 27 11:50:01 2006
Date: Wed, 27 Sep 2006 11:50:01 +0900
From: root@XXX.com (Cron Daemon)
To: root@XXX.com
Subject: Cron <root@hoge> root /home/foo/scripts/autoindex.sh
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
/bin/sh: line 1: root: command not found
と、シェルがこけているようです。
何か解決のヒントがありましたら、ぜひ教えていただけないでしょうか。
No.3ベストアンサー
- 回答日時:
rootで実行しているのに実行できないなら、やはりmknmzへのパスが通ってないのだと思います。
command not found と出るのは、パスが通ってない場合に出ますから。
実行権限がなくてこけるときはPermission Deniedと出るはずです。
シェルのmknmzをフルパスで書いてみたらどうなりますか?
何度もありがとうございます。mknmzをフルパス(/usr/local/bin/mknmz)で記入したら、見事にシェルが動きました。
パスを通すことも研究してみます。ありがとうございます。
No.2
- 回答日時:
No.1です。
> mknmzコマンドはrootじゃないと実行できないからだめなのかなーと思いますが・・・
とのことですが、このcrontabはrootでログインして設定しているのではないのですか?
crontabはユーザごとに設定します。
(/etc/cron.allowや/etc/cron.denyが設定されていると、許可されたユーザだけが設定できますが)
そして、そのユーザの権限で、指定したコマンドが実効されます。
rootで動かしたいのであれば、rootでログインしてcrontabを設定する必要があります。
あと蛇足かもしれませんが、mknmzへのパスは通ってますか?
>crontabはrootでログインして設定しているのではないのですか?
そのとおりです。rootでログインしてcrontabを設定しています。
mknmzコマンドはrootでないと実行できないので、何とかしたいのですが。
No.1
- 回答日時:
crontabの書式は、
分 時間 日 月 曜日 コマンド名
です。
> # crontab -l
> 50 11 * * * root /home/foo/scripts/autoindex.sh
これだと、「root /home/foo/scripts/autoindex.sh」というコマンドを実行するという意味になっていまい、rootというコマンドはないので、
>/bin/sh: line 1: root: command not found
と出ているのだと思います。
参考URL:http://www.linux.or.jp/JM/html/cron/man5/crontab …
ham_kamoさん、さっそくのご回答ありがとうございます。
> # crontab -l
> 40 13 * * * /home/foo/scripts/autoindex.sh
今度はrootを外してみましたが、またもNGでした。
mknmz: command not foundInterrupt
mknmzコマンドはrootじゃないと実行できないからだめなのかなーと思いますが・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux メールアドレスにホスト名が入らないようにする設定 2 2022/06/23 21:06
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- UNIX・Linux cronでシェルスクリプト実行時のkubactlコマンドが機能しない対処法。 2 2022/08/03 18:58
- UNIX・Linux Kali Linuxで起動できない - Minimal BASH Like Line Editing 1 2022/06/03 13:14
- その他(パソコン・スマホ・電化製品) pthonのframeに演算結果(数値)を表示したい 1 2023/06/05 22:08
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- Android(アンドロイド) Androidスマホの時刻の自動同期の頻度を短くしたい 4 2022/12/02 17:29
- UNIX・Linux マスターブートレコード方式のbiosを使ったシステムでインストールされたlinuxで/dev/sda 1 2023/05/13 21:23
- その他(プログラミング・Web制作) pythonのグローバル変数 2 2022/11/25 18:02
- SSL・HTTPS ルート証明書の有効期限がだいぶ前なのに時計が進んでいますと表示され今日になってみれなくなったサイト 1 2022/10/26 20:35
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TeraTermで操作する際の設定に...
-
suコマンド入力後バグが起きます。
-
CUIでの、$(ドルマーク)の使...
-
scpコマンドの-pオプションにつ...
-
Ubuntu・・・ユーザ名を変更したい
-
一般ユーザーでログインできな...
-
findでファイル抽出が行えない
-
root権限でも『Permission deni...
-
リモートからログインできない...
-
chownで所有権の変更ってrootし...
-
Linuxでユーザ権限の確認コマンド
-
突然sshからrootになれなくなり...
-
ubuntuのchmodでルートディレク...
-
<自分が所有者のファイルの所...
-
ユーザ管理(ユーザーマネージ...
-
Linuxを勉強している超初心者で...
-
crontabでのシェル自動実行がNG
-
Qt CreatorでMacのディスクの権...
-
リモートで使うとuseraddが使え...
-
Dirコマンドでフォルダ内ファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
scpコマンドの-pオプションにつ...
-
<自分が所有者のファイルの所...
-
[CentOS7] ユーザー(root,管理...
-
TeraTermで操作する際の設定に...
-
root権限でも『Permission deni...
-
CUIでの、$(ドルマーク)の使...
-
chownで所有権の変更ってrootし...
-
vi使用後、「vimiinfoが保存...
-
sudo: npm: コマンドが見つかり...
-
リモートで使うとuseraddが使え...
-
Linuxでユーザ権限の確認コマンド
-
smbpasswd 一括登録
-
ユーザをwheelグループに追加す...
-
linux(redhat9)の文字化けを直...
-
Ubuntu・・・ユーザ名を変更したい
-
findでファイル抽出が行えない
-
rootパスワードを入れずにsuで...
-
ubuntu9.0.4でユーザーにsudo権...
-
Linuxを勉強している超初心者で...
-
Ubuntuで、suとsudoの違いが分...
おすすめ情報