リモートハードドライブだけがあり、chrootなしでルートのcrontabを編集する方法は?

リモートハードドライブだけがあり、chrootなしでルートのcrontabを編集する方法は?

ケースシナリオ:

  • 私が受け取ったハードディスクリモコンLinux(例:Debianベース)コンピュータ。
  • リモートハードウェア(例:山いちごしたがって、ARMは私の製品(PC、つまりAMD64など)と互換性がないためchroot不可能です。
  • 追加する必要がありますCRON作業(一部のコマンドを話すadduser newuser)リモートシステムに対する管理者権限があります。
  • パーティション形式が* NIX(たとえば、Ext3またはExt4)と互換性があると仮定できるため設置可能、ルートパーティション(RaspbianRaspberryの一般的なUbuntu様オペレーティングシステムなど)を読み、編集します。

ハードドライブ(RaspBerryをベースにした例の場合はMicro SDカード)を編集したら、それを使用してリモートシステムを起動してCRONジョブを実行する必要があります。

これは可能ですか?

答え1

はい、可能です。システム全体のcrontabファイルは通常にあり、上書きされているため、リモートシステムディスクのルートパーティションをマウントしたと仮定すると、目的のテキストエディタを使用してそのファイルを検索して/etc/crontab変更できます。/etc/cron.d/mnt/mnt/etc/crontab

ユーザー固有のcrontabファイルは通常Debianとその派生にあり、/var/spool/cron/crontabs同じ方法で編集できる必要があります(crontabのマンページではこれをお勧めしませんが)。

答え2

Crontabは、標準の場所に保存されている次のプログラムで使用される単純なテキストファイルですcroncrontabプログラムを使用してこれらのファイルを編集できますが、保存する前にフォーマットが正しいことを確認してください。私もcronデーモンに新しいバージョンを読むようにシグナルを送信していると思います。

したがって、このメカニズムは主に間違いを犯したときに問題が発生しないようにすることです。 (またsetgidなので、標準ディレクトリのcrontabを編集することもできます。)しかし、フォーマットが正しいかどうかを知っていれば、crontabを直接編集することを防ぐことはできません。特に、cronがそれを使用していないマウントされたドライブでは、これはさらに重要です。

ユーザーcrontabは、/var/spool/cron/crontabs/アカウント名に対応するファイル名に保存されます。ただし、AdminBeeが言及したシステムcrontabを使用したり、/etc/crontab(整理された状態を維持するために)内部で使用することもできます/etc/crontab.d/。 Debianには実行可能ファイルを置くことができる、、、/etc/cron.monthly/およびもあります(主にパッケージ用ですが、直接使用することに問題はありません)。/etc/cron.weekly//etc/cron.daily//etc/cron.hourly/

注私はDebianシステムとマンページを参考にしています。ターゲットディストリビューションへのパスを事前に確認してください。

関連情報