質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

解決済

初心者です。crontabがどうしても機能しなくて困っています。

退会済みユーザー
退会済みユーザー

総合スコア0

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

3回答

0評価

0クリップ

4041閲覧

投稿2017/01/29 07:47

編集2017/01/29 07:48

初心者です。crontabがどうしても機能しなくて困っています。

一時的にUbuntu 16.04 LTSを使っていますが、普段はWindowsを使っていますので、いろいろネットで調べましたが、解決できなくてお手上げ状態です。

一応自分でやったことを書きます。なんとなくですが、何か根本的なことであったり、非常に初歩的なケアレスミスをしている気がします。

よろしくお願いします。

・crontab -eからnanoというエディターみたいなソフトを使って、「* * * * * touch /test /result.txt 2>&1」というコマンドを設定しています。このコマンドはcronが動くかどうか試すために設定しているだけで、実際cronを使ってやりたいことは別のことです。touch他のコマンドもいくつか試してみましたが、cronは機能しませんでした。そのときは.shというファイルを実行するコマンドだったので、chmodで実行権限を与えましたが、それでも機能しませんでした。

'・touchでtestファイルが作られないだけではなく、result.txtは一切出力されません。

・GUIのシステムモニターを起動しても、「crond」「cron」という文字列を含むプロセスはありません。

・「crontab -l」と打つと、このような途中から切れた文字列が出てきます。
~$ /result.txt 2>&1bin:/bin:/usr/sbin:/usr/binn(8)

・「crontab -e」と打つと、「/tmp/crontab.x0x0x0/crontab」というファイルを編集しているようです。(xは英字で0は数字です。)

・「crontab -e」と打つと、中身はこのようになっています。コメントアウト以外の部分を自分で設定しました。最初の4行はあってもなくてもcrontabは機能しません。
'# Edit this file to introduce tasks to be run by cron.
'#
'# Each task to run has to be defined through a single line
'# indicating with different fields when the task will be run
'# and what command to run for the task
'#
'# To define the time you can provide concrete values for
'# minute (m), hour (h), day of month (dom), month (mon),
'# and day of week (dow) or use '*' in these fields (for 'any').'#
'# Notice that tasks will be started based on the cron's system
'# daemon's notion of time and timezones.
'#
'# Output of the crontab jobs (including errors) is sent through
'# email to the user the crontab file belongs to (unless redirected).
'#
'# For example, you can run a backup of all your user accounts
'# at 5 a.m every week with:
'# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
'#
'# For more information see the manual pages of crontab(5) and cron(8)
'#
'# m h dom mon dow command

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""
HOME=/

          • touch /test /result.txt 2>&1

'・sudo service cron statusとターミナルに打つと、このような文字列が出てきます。(これはネットに公開するのはまずいでしょうか?)

● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
Active: active (running) since 土 2017-01-28 16:44:43 JST; 23h ago
Docs: man:cron(8)
Main PID: 650 (cron)
Tasks: 1 (limit: 512)
CGroup: /system.slice/cron.service
└─650 /usr/sbin/cron -f

1月 29 12:17:01 username CRON[12786]: pam_unix(cron:session): session opened for user root by (uid=0)
1月 29 12:17:01 username CRON[12787]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
1月 29 13:17:01 username CRON[14515]: pam_unix(cron:session): session opened for user root by (uid=0)
1月 29 13:17:01 username CRON[14516]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
1月 29 13:17:01 username CRON[14515]: pam_unix(cron:session): session closed for user root
1月 29 14:17:01 username CRON[15658]: pam_unix(cron:session): session opened for user root by (uid=0)
1月 29 14:17:01 username CRON[15659]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
1月 29 14:17:01 username CRON[15658]: pam_unix(cron:session): session closed for user root
1月 29 15:17:01 username CRON[17319]: pam_unix(cron:session): session opened for user root by (uid=0)
'1月 29 15:17:01 username CRON[17320]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。