আমি টিএমউস সেশনের অভ্যন্তরে একটি ডেমন চালু করতে একটি আপস্টার্ট স্ক্রিপ্ট লিখেছিলাম। এটি ভালভাবে কাজ করে এবং যদি অপ্রত্যাশিতভাবে মারা যায় তবে প্রক্রিয়াটি পুনরায় প্রত্যাবর্তন করে তবে আমি নিজে এটি বন্ধ করে দিতে পারি না।
কাজটি (বুক্কিট নামে পরিচিত) এর মতো দেখাচ্ছে:
start on filesystem
stop on runlevel [!2345]
respawn
respawn limit 5 30
chdir /home/minecraft/bukkit
expect daemon
kill timeout 30
pre-start script
test -x /home/minecraft/bukkit/craftbukkit-0.0.1-SNAPSHOT.jar || { stop; exit 0; }
end script
pre-stop script
tmux send -t bukkit "stop"
tmux send -t bukkit "Enter"
sleep 10 # Wait for server to shut down properly
end script
exec tmux new-session -d -s minecraft -n bukkit "sudo -u minecraft -- /home/minecraft/java/jre1.6.0_27/bin/java -Xincgc -Xmx1G -jar /home/minecraft/bukkit/craftbukkit-0.0.1-SNAPSHOT.jar"
আমি যখন ইস্যু করি তখন stop bukkit
এটি 10 সেকেন্ডের জন্য নিথর হয়ে যায় (স্লিপ টাইমার, আমার ধারণা) এবং মুদ্রণগুলি bukkit start/running, process 2391
। আমি যখন ডিবাগ-এ স্টার্ট স্থাপন করি, তখন লগে আমি এই প্রাসঙ্গিক লাইনগুলি পেয়েছি:
Sep 21 19:14:59 cheftest init: bukkit goal changed from start to stop
Sep 21 19:14:59 cheftest init: bukkit main process (2499) exited normally
Sep 21 19:14:59 cheftest init: bukkit main process ended, respawning
Sep 21 19:14:59 cheftest init: bukkit goal changed from stop to respawn
যখন এটি বন্ধ হওয়ার কথা তখনও আপস্টার্ট আমার প্রক্রিয়াটির প্রতি শ্রদ্ধা জানায়?