Xer0FyT এর উত্তর সম্ভবত পিআই এ স্বয়ংক্রিয়ভাবে কোনও প্রোগ্রাম শুরু করার সহজতম উপায়। শুরু হওয়া প্রোগ্রামটি যে কোনও কারণে ক্রাশ হয়ে গেলে সমস্যাগুলি দেখা দেয় কারণ এটি পুনরায় আরম্ভ হবে না, যেহেতু কোনও প্রক্রিয়া পর্যবেক্ষণ নেই। পরিবর্তে আমি ব্যক্তিগতভাবে ডিমনটোলগুলি ব্যবহার করার পরামর্শ দেব । এটি সেটআপ করা বেশ সহজ (এবং রাস্পবিয়ান অন্তর্ভুক্ত)। মূলত আপনি একটি পরিষেবা ডিরেক্টরি তৈরি করেন যা একটি run
শেল স্ক্রিপ্ট থাকে যা আপনার প্রোগ্রামটি শুরু করে। ডিমন্টোলগুলি তখন নিশ্চিত করবে যে কোনও কারণেই ক্রাশ হওয়ার পরে আপনার প্রোগ্রামটি শুরু হয়েছে এবং পুনরায় চালু হবে।
ডিমনটোলগুলি সেট আপ করা বেশ সহজ। মাত্র
apt-get install daemontools daemontools-run
তারপরে একটি এক্সিকিউটেবল রান স্ক্রিপ্টযুক্ত আপনার পরিষেবা ডিরেক্টরি তৈরি করুন:
# create the service directory
mkdir -p /service/my-service
# create the run script
cat > /service/my-service/run <<EOF
#!/bin/sh
echo "I'm an example service executed by daemontools"
sleep 1
# Replace those 2 lines with a real call to your program like this:
# exec /my/program.py --arguments
EOF
# make it executable
chmod 755 /service/my-service/run
/service/my-service/run
এটি দেখুন এবং সম্পাদনা করুন, সুতরাং এটি চালানোর পরিবর্তে আপনার নিজস্ব প্রোগ্রাম শুরু করে echo
। এটি শেষ হয়ে গেলে, ডিরেক্টরিটি /etc/service
সিমলিংক করুন যাতে স্বয়ংক্রিয়ভাবে ডিমনটোলগুলিতে পুনরায় শুরু হয়:
cd /etc/service
ln -s /service/my-service .
প্রায় 5 সেকেন্ড পরে আপনার প্রোগ্রামটি চালানো উচিত। আপনি এটি ব্যবহার করে শুরু / থামাতে পারেন
# stop it
$ svc -d /service/my-service
# start it
$ svc -u /service/my-service
(উদাহরণস্বরূপ) সিসলগে লগ ইন করাও সম্ভব। সুতরাং আপনার প্রোগ্রামের আউটপুটটি হারাবে না। আমি এ সম্পর্কে আরও একটি সম্পূর্ণ ব্লগ পোস্ট লিখেছি: https://info-beamer.com/blog/running-info-beamer-in- Production
sudo
যেrc.local
নিজেই। এটি বুটে মূল অধিকার সহ চালানো হয়।&
আপনার প্রোগ্রামটি যদি দ্রুত কিছু না করে বাইরে বেরিয়ে আসে তবে ব্যবহার সম্পর্কে অংশটির দিকে মনোযোগ দিতে ভুলবেন না।