প্রক্রিয়াটি সমাপ্ত হওয়ার পরে আমি কীভাবে স্বয়ংক্রিয়ভাবে পুনরায় চালু করতে পারি?


11

আমি একটি গোলং প্রোগ্রাম পেয়েছি যা একটি ডেবিয়ান স্কুইজ বক্সে শেষ হওয়ার পরে পুনরায় চালু করতে চাই। জিনিসটি অ্যাপাচি 2 মোড_প্রক্সি সেটআপের পিছনে HTTP পরিবেশন করছে। আমি প্রক্রিয়াটি ব্যর্থ হওয়ার আশা করি না, তবে আমি এর বিরুদ্ধে কিছু বীমা চাই।

উবুন্টুতে আমি প্রক্রিয়াটি বাঁচিয়ে রাখতে আপস্টার্ট ব্যবহার করতাম। ডেবিয়ান আমি যা বুঝি তার থেকে আপস্টার্ট পছন্দ করে না কারণ এটি একটি ডিআই প্রতিস্থাপন।

কোন বিকল্প আছে যা এক বা একাধিক প্রক্রিয়া পুনরায় আরম্ভ করার পরে সেগুলি শেষ করে যা স্কুইজে কাজ করে এবং দীক্ষা দিয়ে সুন্দর খেলবে?


আপনি কি দয়া করে আপনার প্রশ্নটি নতুন করে লিখবেন? এটি কি আপনি কোনও প্রক্রিয়াটি সমাপ্ত হওয়ার পরে পুনরায় চালু করতে চান?
মেলকিউ

আমি যদি কোনও প্রক্রিয়া নিজেই ত্রুটিযুক্ত হয়ে যায় বা বন্ধ করে দেয় তবে আমি স্বয়ংক্রিয়ভাবে পুনরায় চালু করতে চাই।
মুছে ফেলা হয়েছে

2
ঐতিহ্যগত Init প্রোগ্রাম অবিকল এই আছে। লোকেরা কেন ভেবেছিল যে শেল স্ক্রিপ্ট চালানোর জন্য শেল স্ক্রিপ্ট চালানোর জন্য আরআইএন ব্যবহার করা ভাল ধারণা হবে যা একই কাজ করে এমন একটি অন্য প্রক্রিয়া শুরু করে, তবে স্বয়ংক্রিয় কার্নেল আতঙ্ক এবং পুনরায় বুট ছাড়াই যদি সেই প্রক্রিয়াটি কখনও ব্যর্থ হয় তবে তা সম্পূর্ণ আমার বাইরে।
সাইমন রিখটার

এটি একটি ন্যায্য বিষয়। আমি শুধু init ব্যবহার করে তদন্ত করব আমি dpkg ব্যবহার করে সফটওয়্যারটি প্যাকেজিং করছি যাতে init স্ক্রিপ্টগুলি তৈরি করা কোনও অসুবিধা না হয়।
মুছে ফেলা হয়েছে

উত্তর:


10

এটির জন্য সবচেয়ে ভাল উপায় হ'ল daemontools। তারা আপনাকে নিরীক্ষণ এবং রেডভন প্রক্রিয়াগুলি অনুমতি দেয়।

তাদের ওয়েবসাইটে ডকুমেন্টেশন দেখুন: http://cr.yp.to/daemontools.html


1
ধন্যবাদ - আমি ঠিক পরে যা করছি ডিজেবি = একটি নিয়ম হিসাবে ভাল। আমার আসলে মনে রাখা উচিত ছিল যে 5 বছর কেমেলের দেখাশোনা করার পরে কী ছিল!
মুছে ফেলা হয়েছে

আমার সাথে একই, আমি বেশিরভাগ সময় ডিজেবিডিএন দেখাশোনা করতাম।
মিঃআরবি

10

তদারকি একটি হালকা ওজনের, দক্ষ বিকল্প। ডিবিয়ান এর অধীনে এটি ডিমনটোলে প্যাক করা হয় । আপনি এই সম্পর্কিত প্রশ্নটিও পড়তে পারেন , যা কিছু তদারকি সমালোচনার তালিকা তৈরি করে এবং পুনরায় আরম্ভ করার সম্ভাবনা হিসাবে উল্লেখ করেছে

অবশেষে, আপনি যদি সেটআপের জন্য অবিশ্বাস্যরকম সহজ কিছু চান তবে আমি মনিট দিয়ে দুর্দান্ত সাফল্য পেয়েছি । এটি ডেবিয়ান প্যাকেজ করা হয়


2
ডিমনটোলগুলি দুর্দান্ত; মনিট হ'ল "কেন আপনি শুরু করবেন না? কেন?!?" পরাজয়.
দোলা

2

একক প্রক্রিয়া বাঁচিয়ে রাখার জন্য তদারকি বা মনিট ভাল are যেহেতু আপনি "এক বা একাধিক" প্রক্রিয়াটি জীবিত রাখার জন্য বলেছেন, তাই আমি সুপারভাইজার প্লাগ করতে চাই । এটি একটি একক প্রক্রিয়া পরিচালনার জন্য অবশ্যই ওভারকিল, তবে আপনার যদি একাধিক প্রক্রিয়াটির ট্র্যাক রাখতে হয় তবে এটি আপনার জিনিস হতে পারে।


2

একটি বিকল্প হ'ল /etc/inittabআপনার স্ক্রিপ্টটি ভিতরে রাখার পরিবর্তে ব্যবহার করা /etc/init.d/

আপনি কেবল নিম্নলিখিত বিন্যাসে একটি এন্ট্রি যুক্ত করুন:

<jobname>:<runlevels>:respawn:<command>

দুর্ভাগ্যক্রমে এর অর্থ আপনি সাধারণ স্টার্ট / স্টপ / পুনর্সূচনা আরম্ভ কমান্ডগুলি ব্যবহার করতে পারবেন না তবে এটি আপনার স্ক্রিপ্টটি সর্বদা চলমান রয়েছে তা নিশ্চিত হওয়া উচিত।


2

হ্যান্ডলিং প্রক্রিয়া পুনরায় শুরু করার ক্রস বিতরণ উপায় ক্রোন এবং একটি সাধারণ স্ক্রিপ্ট সহ। আপনি এখানে একটি লিখনআপ দেখতে পাবেন যে কীভাবে লিনাক্সে চাকরী চালানো যায়

স্ক্রিপ্টটি দেখতে এমন কিছু দেখাচ্ছে

#!/bin/bash 
# make-run.sh 
# make sure a process is always running.  
# Add the following to the crontab (i.e. crontab -e)
# */5 * * * * /home/path_to_make_run/make-run.sh

process=servermonitoringhq 
makerun="/home/path_to_the_job_you_want_running/runjob.sh"  

if pgrep $process > /dev/null         
then                 
  exit         
else         
  $makerun &         
fi 
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.