সহকর্মীর সাথে দীর্ঘ সময় আলোচনার পরে এটি জিজ্ঞাসা করে আমি সত্যিই এখানে একটি ব্যাখ্যা চাই।
&
কমান্ড লাইনে " " যুক্ত করে বা এটিকে থামিয়ে CTRL-Z
এবং ব্যাকগ্রাউন্ডে " bg
" দিয়ে পুনরায় শুরু করে আমি একটি ব্যাকগ্রাউন্ড প্রক্রিয়া চালু করি । তারপরে আমি লগ আউট করি।
কি ঘটেছে?
আমরা নিশ্চিত ছিলাম যে এটি একটি সাইনআপের মাধ্যমে হত্যা করা উচিত ছিল, তবে এটি ঘটেনি; আবার লগ ইন করার পরে, প্রক্রিয়াটি সুখে চলছিল এবং pstree
দেখিয়েছিল যে এটি "গৃহীত" হয়েছিল init
।
এটা কি প্রত্যাশিত আচরণ?
তবে তা যদি হয় তবে nohup
কমান্ডের উদ্দেশ্য কী? দেখে মনে হচ্ছে প্রক্রিয়াটি যেভাবেই হোক না কেন বা এর বাইরে হত্যা করা হবে না ...
সম্পাদনা 1
আরও কিছু বিশদ:
- কমান্ডটি শারীরিক কনসোল থেকে নয়, একটি এসএসএইচ অধিবেশন থেকে শুরু হয়েছিল।
- কমান্ডটি এবং এবং বা ছাড়াই চালু হয়েছিল ; এরপরে এটি স্থগিত করা হয়েছিল এবং এর সাথে পটভূমিতে পুনরায় শুরু হয়েছিল ।
nohup
&
CTRL-Z
bg
- SSH অধিবেশন করা হয়নি ড্রপ। আসল লগআউট ("
exit
" কমান্ড) ছিল। - প্রক্রিয়াটি ছিল একটি
scp
ফাইল অনুলিপি অপারেশন। - আবার লগ ইন করার পরে,
pstree
প্রক্রিয়াটি চলমান এবং এর শিশু হিসাবে দেখানো হয়েছিলinit
।
সম্পাদনা 2
প্রশ্নটি আরও স্পষ্টভাবে বর্ণনা করতে: ব্যাকগ্রাউন্ডে কোনও প্রক্রিয়া স্থাপন (ব্যবহার &
বা bg
) কমান্ডের SIGHUP
মতোই তা উপেক্ষা করবে nohup
?
সম্পাদনা 3
আমি নিজে একটি পাঠানোর চেষ্টা SIGHUP
করতে scp
: এটা থেকে বেরিয়ে গেছে, তাই এটা স্পষ্টভাবে সংকেত উপেক্ষা করে না।
তারপরে আমি আবার এটি চালু করার চেষ্টা করেছি, এটিকে পটভূমিতে রেখে এবং লগিং বন্ধ করেছি: এটি "গৃহীত" হয়ে গেছে init
এবং চালিয়ে যেতে থাকে এবং লগ ইন করার সময় আমি এটি সেখানে পেয়েছি।
আমি এখন বেশ বিস্মিত। দেখে মনে হচ্ছে কোনও আপ SIGHUP
পাঠানোই হয়নি আপলোড লগিং বন্ধ।
1>/dev/null 2>&1
বাশ ইত্যাদির জন্য আপনি কি জিনিসগুলি অন্যদিকে ঘুরিয়ে দিয়েছিলেন ?