আপনি যখন কোনও টার্মিনালটি বন্ধ করেন তখন টার্মিনাল শেলটিতে একটি SIGHUP সংকেত প্রেরণ করে; শেলটি ঘুরে ফিরে তার সমস্ত শিশু প্রক্রিয়া গোষ্ঠীতে একটি সিএইচইচইপ সংকেত প্রেরণ করে, যার মধ্যে ব্যাকগ্রাউন্ড প্রক্রিয়া গ্রুপ রয়েছে;
প্রতিটি একক প্রক্রিয়া কীভাবে সিগন্যালে প্রতিক্রিয়া জানাবে তা সম্পূর্ণ প্রক্রিয়া নির্ভর করে: যদি প্রক্রিয়াটি সিগন্যালের জন্য কোনও হ্যান্ডলার সংজ্ঞায়িত না করে এবং কার্নেলটিকে (যেমন কিছু সিস্কেলের মাধ্যমে signal()
বা sigaction()
এটি) পরিচালনা করতে ইচ্ছুক করে না, তবে কার্নেলটি কার্যকর করে সিগন্যালের জন্য ডিফল্ট হ্যান্ডলার, যা একটি সিগআপ সংকেত ক্ষেত্রে প্রক্রিয়াটি সমাপ্ত করে।
যাইহোক, আপনি যখন কোনও কমান্ড দিয়ে চালাবেন sudo
, sudo
প্রক্রিয়াটির ইউআইডি এবং এর শিশু প্রক্রিয়াটি 0
(রুট) সেট করা আছে ; সাধারণভাবে, সিগন্যাল প্রেরণের প্রক্রিয়াটির ইউআইডি 0
(রুট) বা লক্ষ্য প্রক্রিয়াটির সমান না হলে, কার্নেল সিগন্যালটি বাতিল করে (যেমন: প্রক্রিয়াটি অন্য ব্যবহারকারীর মালিকানাধীন কোনও প্রক্রিয়াতে সংকেত প্রেরণ করতে পারে না, যদি না প্রক্রিয়া না হয় সংকেত প্রেরণ মূলের মালিকানাধীন); এজন্য টার্মিনাল দ্বারা চালিত ব্যাশ ইনস্ট্যান্সের মতো একটি ব্যবহারকারী-চালিত প্রক্রিয়া কোনও sudo
প্রক্রিয়া সাইনআপ করতে পারে না এবং শেষ পর্যন্ত, টার্মিনালটি বন্ধ করা শুরু হওয়া প্রক্রিয়াটিকে প্রভাবিত করে না sudo
।