Perbedaan antara / etc / crontab dan “crontab -e”


42

Apa perbedaan antara crontab yang terletak di /etc/crontabdan crontab yang dapat diedit menggunakan crontab -e?

Jawaban:


51

Seperti yang dikatakan Ignacio, /etc/crontabadalah sistem lebar crontab.

Formatnya /etc/crontabseperti ini:

# m h dom mon dow user      command
*   *  *   *   *  someuser  echo 'foo'

sementara crontab -eper pengguna, perlu disebutkan tanpa -uargumen perintah crontab pergi ke pengguna crontab saat ini. Anda dapat melakukannya crontab -e -u <username>untuk mengedit crontab pengguna tertentu.

Pemberitahuan dalam crontab per pengguna tidak ada bidang 'pengguna'.

# m h  dom mon dow  command
*   *   *   *   *   echo 'foo'

Aspek crontab yang mungkin membingungkan adalah root juga memiliki crontab sendiri. mis. crontab -e -u roottidak akan mengedit /etc/crontab Lihat Mengonfigurasi cron .

Di sebagian besar distro Linux, crontab per pengguna biasanya disimpan di: /var/spool/cron/crontabs/<username>(vixie-cron).

Distribusi berbasis RHEL disimpan di /var/spool/cron/<username>. (cronie)


FYI, jalur yang diberikan di atas salah: crontab per-pengguna disimpan di / var / spool / cron / crontab / <username> (Saya mencoba dua kali untuk mengirimkan koreksi sederhana ini.)
MartyMacGyver

1
... dan sudah diperbaiki sekarang.
MartyMacGyver

Sebenarnya, ini disimpan di /var/spool/cron/rootuntuk crontab per pengguna root pada sistem RHEL 6. Belum memeriksa Ubuntu, tetapi mengatakan "biasanya" tampaknya agak sulit.
Wildcard

@Wildcard Saya pikir "biasanya" adalah kata yang adil untuk digunakan. Distro RHEL dikirimkan bersama "cronie" (dan anacron, saya percaya) yang merupakan cabang dari cron ISC-Cron / vixie. Saya rasa itu bukan peregangan, dalam hal apa pun saya telah memperbarui jawaban saya untuk memasukkan lebih detail.
pemain skrewler

Untuk pencarian cepat jalur di distro, cari string path[crontabs]di pustaka "jalur" CFEngine dan periksa konteksnya (garis konteks sebelumnya terlihat seperti misalnya redhat::). Ada lebih banyak variasi daripada yang Anda pikirkan; misalnya SUSE menempatkan mereka /var/spool/cron/tabs. (Abstraksi perbedaan distro adalah salah satu alasan CFEngine awalnya dibuat, jadi ini sering menjadi referensi yang bagus.)
Wildcard

5

Salah satunya adalah sistem crontab dan hanya dapat diedit oleh root, dan yang lainnya adalah pengguna crontab dan dapat diedit oleh pengguna dan ada per pengguna.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.