Kedua-dua ungkapan kelihatan seperti pagi Rabu, dan hanya satu daripadanya bermaksud sekali. 0 10 * * 3 berlaku pada 10:00 hari Rabu; * 10 * * 3 berlaku pada setiap minit jam kesepuluh, enam puluh peluang untuk memulakan terowong yang sama. Jika arahan itu ialah pelancar yang tidak menyemak sesi sedia ada, versi kedua bukan kesilapan penjadualan, ia ialah gelung yang menghasilkan pemilik yang bersaing. Baca medan minit sebelum membaca apa-apa lagi.

Lima medan ialah minit, jam, hari dalam bulan, bulan dan hari dalam minggu, dalam susunan itu, dan bintang dalam medan pertama bermaksud setiap minit.

Medan minit menentukan berapa kali

Nombor di hadapan ialah minit, jadi 0 10 * * 3 ialah minit pertama jam kesepuluh pada hari Rabu. Menggantikannya dengan bintang mengekalkan jam dan hari serta menggugurkan sifat sekali-jalan, yang menghasilkan enam puluh padanan. Cron tidak menghapuskan pendua: setiap padanan melancarkan arahan sekali lagi. Ini bukan kehalusan tentang cron, ini semantik medan, dan rujukan penjadual yang dipasang wajar dibaca kerana susunan medan dan lajur nama pengguna pilihan berbeza antara crontab pengguna dan sistem.

Uji dengan arahan tidak berbahaya yang merekodkan cap masanya sendiri selama sehari. Satu baris dalam log ialah jadual; enam puluh baris dalam sejam ialah pengajaran.

Apa yang pelancaran kedua lakukan kepada yang pertama

Pelancar yang berbudi menyedari sambungan sudah aktif dan tidak melakukan apa-apa. Panggilan openvpn mentah tidak: ia mencipta proses lain, percubaan lain untuk mengikat peranti atau port, dan set laluan lain yang bersaing untuk destinasi yang sama. Dalam NetworkManager, permintaan pengaktifan berulang bagi satu sambungan biasanya idempoten, dan itulah sebabnya masalah kekal tersembunyi sehingga seseorang menggunakan arahan lain. Jadual sepatutnya bertanya kepada pemilik yang sudah mengurus terowong itu.

Kemudian tentukan apa ertinya sesuatu permintaan ketika sambungan sedang dibina. Sama ada pengaktifan berganda atau baris gilir permulaan tertunda tidak jelas betul; pilih satu dan minta pelancar melaksanakannya, bukannya membiarkan penjadual memutuskan secara kebetulan.

Hitung medan sebelum arahan

Crontab pengguna dan sistem berbeza dari segi sama ada lajur nama pengguna muncul sebelum arahan. Entri yang disalin antara keduanya sama ada berjalan dengan akaun yang salah atau menghantar nama pengguna sebagai perkataan pertama arahan. Semak rujukan yang dipasang dan bukan panduan, dan hitung medan dalam baris anda sendiri. Entri lima medan dengan perkataan keenam sebelum arahan ialah crontab sistem; baris yang sama dalam crontab pengguna cuba melaksanakan perkataan itu sebagai program.

Identiti pelaksanaan membawa persekitaran bersamanya. Tugas cron tidak mewarisi cincin kunci yang tidak berkunci, gesaan kata laluan interaktif atau direktori kerja tempat anda menguji.

Tunggu kesediaan, bukan jam

Pelancaran yang berjaya bukan terowong yang berfungsi. Klien mungkin masih menyelesaikan titik akhirnya, mengesahkan atau memasang laluan apabila tugas tamat. Mana-mana tugas bergantung harus menunggu sumber terlindung yang benar-benar diperlukan, dengan had masa dan kegagalan yang direkodkan, bukan bilangan saat tetap. Perbezaan itulah yang memisahkan jadual yang kebanyakannya berjaya daripada yang gagal secara senyap pada pagi yang sibuk.

Jika MFA interaktif diperlukan pada jam itu, tugas boleh meminta perhatian seseorang tetapi tidak boleh menyediakan jawapannya. Kekalkan kes itu secara eksplisit dan bukan menyematkan kata laluan yang boleh diguna semula atau mencuba semula selama-lamanya.

Untuk pengaktifan yang benar-benar sekali, gunakan mekanisme sekali-jalan yang disokong. Peraturan berulang yang mesti diingat dan dibuang ialah pelancaran berganda pada masa hadapan.

Artikel berkaitan