Beaglebone Black(Debian Buster)に 'crontab'パッケージをインストール中にエラーが発生しました。

Beaglebone Black(Debian Buster)に 'crontab'パッケージをインストール中にエラーが発生しました。

私はBeagleBoard.org Debian Buster IoT Image 2020-04-06を実行しているBeaglebone Black Rev。 Cで起動すると、pythonscriptを自動的に実行するプロジェクトが進行中です。

このチュートリアルの最初の部分に従おうとしています(以下の手順について説明します)。 https://www.engineersgarage.com/autorun-python-script-on-beaglebone-black-boot-part-14-15/

チュートリアルで提案する手順は次のとおりです。

  1. PC経由で機械にSSHで接続
  2. コマンドを使用したcrontabのインストールsudo apt-get install crontab
  3. crontabを開き、次のように編集します。crontab –e
  4. 行を追加@reboot sudo python /PATH/TO/SCRIPT/PYTHONSCRIPT.py &

チュートリアルのスクリーンショットを見ると、crontabはPythonスクリプトと同じフォルダにインストールする必要があるようです。

次の手順を実行しようとしたときに経験した内容は次のとおりです。

crontabをインストールするとエラーが返されます。

debian@beaglebone:/media/card$ cd /media/card/Tests
debian@beaglebone:/media/card/Tests$ sudo apt-get install crontab
[sudo] password for debian:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package crontab

etcフォルダにcrontabファイルがあります。インストールされているアプリケーションのリストを使用する場合は、apt list --installedリストで次の行を探します。

cron/oldstable,now 3.0pl1-134+deb10u1 armhf [installed]

cronまた、etcフォルダからジョブを作成する必要がありますか?これには欠点がありますか?

私のプロジェクトはSDカードのフォルダにありますが、SDカードに書き込むことができます。これで作業が複雑になりますか?

(追加情報が必要な場合はお知らせください。喜んでそうします。)

ベストアンサー1

まず、ユーザーはパスワードを要求するため、sudoinを使用するとcronパスワードを入力する必要がありますが、これは例ではありません。ただ実行する方が良いです:

sudo su -

それから

crontab -e

そして入力

@reboot python /PATH/TO/SCRIPT/PYTHONSCRIPT.py 

cronすでにインストールされていると99.99%確信しているので、インストールする必要はありません。そうでない場合は、上記のパッケージ名に関する注意事項を確認してください。

スクリプトの実行については、python環境を設定した後にスクリプトを実行することをお勧めします。サンプルスクリプト(/PATH/TO/SCRIPT/runp.sh例:)を作成し、次から実行しますcron

. /home/debian/.bashrc #or whatever is the path to your user
python /PATH/TO/SCRIPT/PYTHONSCRIPT.py 

スクリプトを実行可能にし、cron次を追加します。

@reboot  /PATH/TO/SCRIPT/runp.sh

ちなみに、スクリプトはcronから(スクリプトの)最後まで実行されるため、背景に追加する必要はありません。

もう一つのポイント:SDカードを運用保存に使用しないでください。、彼らは信頼できません。

おすすめ記事