Sistem Önyükleme Zamanında crontab Nasıl Yürütülür

Sistem Onyukleme Zamaninda Crontab Nasil Yurutulur



Sunucunuz veya sisteminiz her yeniden başlatıldığında crontab'ı çalıştırmak için bir çözüm mü arıyorsunuz? Bu, @reboot seçeneği kullanılarak mümkündür. Cron işlerini çalıştırmanın varsayılan yolu, bunların tarih ve saatini ve ardından yürütülecek komutun yolunu belirtmektir. Aynı kavram, sunucu yeniden başlatıldığında yürütülmesi gereken bir komut tanımlanırken de kullanılır. Tek fark, bu durumda tarih ve saati belirtmememizdir. Bunun yerine, @yeniden başlat ardından komuta giden yol. Bunun nasıl çalıştığını görelim.

Sistem Önyükleme Zamanında Çalıştırmak için crontab Nasıl Zamanlanır

Linux ve Unix sistemleri önceden yüklenmiş olarak gelir. cron yardımcı program, crontab dosyasındaki işleri planlamayı kolaylaştıran bir iş zamanlayıcı. Aynı yardımcı program macOS için de mevcuttur. Belirli aralıklarla zamanlama işleri için sözdizimi aşağıda verilmiştir:

Min Saat Ayın günü Ay Haftanın günü [ emretmek ]







Örneğin, saat 15:00'ten itibaren her 20 dakikada bir bir yedekleme komut dosyası çalıştırmanız gerekiyorsa aşağıdaki komutu kullanabilirsiniz. 16:00'ya kadar günlük.



*/ yirmi on beş - 16 * * * / yol / ile / backup.sh



Önceki komut, belirli bir zamanda bir işi yürütmeniz gerektiğinde çalışır, ancak her önyüklemeden sonra aynı komutu çalıştırmak için ne gerekiyorsa?





Aynı komutu sistem yeniden başlatıldığında çalışacak şekilde ayarlamak için tarih ve saat alanlarını @reboot ile değiştirin. Yeni komut şöyle olurdu:

@ yeniden başlat / yol / ile / backup.sh



Önceki komutta, @yeniden başlat cron'un her önyüklemeden sonra belirtilen komutu yürütmesi gerektiğini belirtir. Yine komutu crontab dosyasına eklemeliyiz.

Yeni işimizi eklemek için crontab dosyasını açmak ve düzenlemek için aşağıdaki komutu kullanın.

crontab -ve

İşi mevcut kullanıcı için oluşturduğumuzu unutmayın. Görevi farklı bir kullanıcı için zamanlamanız gerekiyorsa, örneğin linuxhint1 , aşağıdaki komut şöyle olacaktır:

crontab -ve -içinde linuxhint1

Crontab dosyası açıldığında, komutu en alt satıra ekleyin. Dosyayı kaydet ve çık.

Ayrıca, bir kullandığımızı unutmayın. nano editör, editörünüz farklı olabilir ama komut aynıdır.

İş başarılı bir şekilde planlanmışsa, yeni crontab'ın başarılı bir şekilde kurulduğunu belirtmek için aşağıdaki resimde gösterilene benzer bir mesaj almalısınız:

Yine de, zamanlanmış işleri listelemek için aşağıdaki komutu kullanabilirsiniz.

crontab -l

Komutu önyükleme sırasında artık yürütmek istemiyorsanız, crontab dosyasını düzenleyerek veya aşağıda verilen komutu kullanarak kaldırabilirsiniz. Aşağıdaki komutun tüm zamanlanmış işleri sildiğini unutmayın. Ulaşmak istediğiniz bu değilse, crontab'ı aşağı kaydırın ve bir düzenleyici kullanarak işi manuel olarak silin.

crontab -r

@reboot, önyükleme zamanından hemen sonra bir komut yürütür. Ancak, komut çalıştırılmadan önce bir uyku süresi belirleyebilirsiniz. Örneğin, önyüklemeden 10 dakika sonra komuta ihtiyacınız varsa, süreyi saniye olarak ayarlamanız gerekir.

Komut olurdu.

@ yeniden başlat uyumak 600 / yol / ile / backup.sh

600, saniye cinsinden ifade edilen 10 dakikayı temsil eder ve uyumak yürütmeden önceki süreyi belirtirken kullanılacak seçenektir.

Yeni crontab dosyamız aşağıda gösterildiği gibi ayarlanacaktır:

Sunucunuzu bir sonraki yeniden başlatışınızda, yedekleme komut dosyası veya set komutu 10 dakika sonra yürütülür.

Son olarak, durumunu kontrol ederek planlanan işin çalışacağını doğrulayabiliriz. crond servisi . Olmalı aktif . Durumunu kontrol etmek için aşağıdaki komutu kullanın:

sudo systemctl durumu cron.service

Aşağıdaki çıktı gibi bir çıktı alırsanız gitmekte fayda var:

Crond durumu aktif değilse, aşağıdaki komutu kullanarak etkinleştirebilir ve ardından durumu kontrol edebilirsiniz:

sudo sistemctl etkinleştirme cron.servis

Bu kadar. Komutunuz önyükleme sırasında yürütülecektir.

Çözüm

İşleri önyükleme zamanında nasıl planlayacağını bilmek, Linux yöneticileri için çok önemlidir. Neyse ki, bu kılavuz, Linux cron yardımcı programını kullanarak bunun nasıl yapılacağına dair kapsamlı bir uygulamalı kılavuz içeriyordu. Ek olarak, komut yürütülmeden önce nasıl bir uyku zamanı ayarlayabileceğinizi tartıştık.