Bash'da bir kabuk betiği yazıyorum. Komut dosyasının bir noktasında, devam etmeden önce makinenin yeniden başlatılması gerektiğini algılar. Konuları:
sudo reboot
Makine geri geldiğinde, bu komut dosyasının yapması gereken daha fazla iş var. Bu komut dosyasında çalışmaya devam etmek için bir şeyi nasıl yapılandırabilirim?
Bir sonraki yeniden başlatıldığında çalıştırılacak şekilde bir kabuk komut dosyası yazabileceğim bir yer olduğunu varsayıyorum. Böyle bir yer nerede? Görüyorum ki cron'un @reboot yönergesi var. Ayrıca Apache gibi hizmetlerin önyükleme sırasında başlatıldığını biliyorum. Bunlardan herhangi biri uygun mekanizmalar olabilir mi? Eğer öyleyse, nasıl tetiklenir?
Bu komut dosyasının yalnızca bir kez çalıştırılması gerekir, her yeniden başlatmanın değil. Bu nedenle, bir sonraki yeniden başlatmada çalışan bir yere gitmeli veya çalıştıktan sonra kendisini kaldırabilmelidir.
Bu soru , yeniden başlatma sonrasında uygulama durumunuzu nasıl kaydedeceğinizi sorar. Senaryomun durumu çok fazla değil, bu yüzden bunu başarabilirim. Sadece bu komut dosyası bir sonraki yeniden başlatmadan sonra çalıştırmak için bir şey tetiklemek için bilmek gerekir.
Benim özel sürümüm Ubuntu Linux 14.04. Orijinal komut dosyası, komut satırında bir sistem yöneticisi tarafından başlatılır (cron'dan çalıştırmanın aksine).