গৃহীত উত্তরটি সঠিক তবে পরিষেবা স্ক্রিপ্টের সাহায্যে rtorrent
পরিষেবাটির "নিরাপদ" শাটডাউন কীভাবে করা যায় তা নির্দিষ্ট করে না systemctl
।
বেশিরভাগ বিদ্যমান উত্তর বা স্ক্রিপ্টগুলি স্ক্রিন সেশন বা rtorrent
প্রক্রিয়া নিজেই "হত্যা" করে। এটি করার সাথে সাথে তারা একটি SIGINT (2)
বা SIGQUIT (3)
সংকেত প্রেরণ করে যা rtorrent
প্রক্রিয়াটি বন্ধ করে দেয় / হত্যা করে । ত্রুটিটি হ'ল সাধারণত লক-ফাইলটি rtorrent
মোছা হয় না কারণ rtorrent
সঠিকভাবে বন্ধ ছিল না। ফলস্বরূপ, rtorrent
অবিরাম লক ফাইলের কারণে পরবর্তী শুরুটি ব্যর্থ হবে।
কটাক্ষপাত গ্রহণ সোর্স কোডrtorrent
শো যে এটি একটি প্রত্যাশা SIGTERM (15)
। সুতরাং, systemctl
পরিষেবা স্ক্রিপ্ট বিবেচনা করে স্টপ কমান্ডটি দেখতে পেল:
ExecStop=/usr/bin/kill -s 15 \`pidof rtorrent`
যদি pidof
না পাওয়া যায় তবে আপনি এর মতো কিছু ব্যবহার করতে পারেন:
ps -A | grep "rtorrent" | awk '{print $1}'
ps
বর্তমান প্রক্রিয়া তালিকা
grep
রটারেন্ট প্রক্রিয়া বিশদ বিবরণ আহরণ
awk
পিড নির্বাচন করে এবং এটি স্টডআউটে প্রদর্শন করে
আপনি যদি শাটডাউনটি সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করতে হয় তবে আপনি এটি ব্যবহার করতে পারেন killall -w
। মনে রাখবেন যে:
killall
সিগন্যালটিকে অগ্রাহ্য করা হলে, তার কোনও প্রভাব ফেলল না, বা প্রক্রিয়াটি জম্বি অবস্থায় থাকলে (উত্স man killall
:) অনন্তকাল অপেক্ষা করতে পারে ।
sudo service start rtorrent
?