Screen
ফিফো / সকেটটি যখনই SIGCHLD
সিগন্যাল পায় তখন তা পরীক্ষা করে । যদি সকেটটি অনুপস্থিত থাকে তবে এটি পুনরায় তৈরি করা হবে। সুতরাং সমাধানটি প্রক্রিয়াটি সন্ধান এবং এটি প্রেরণ করা SIGCHLD
।
আমার ডেবিয়ান সিস্টেমে screen
সেটগিড হিসাবে সেট আপ করা হয়েছে utmp
তবে সেটুইড নয়, সুতরাং নীচের এফএকিউ থেকে প্রথম সমাধানটি কাজ করেছে:
$ kill -CHLD 30860
$ ls /var/run/screen/S-username/
30860.pts-4.localhost
যে সিস্টেমে স্ক্রিন সেটআপড ইনস্টল করা আছে root
, এটি কাজ করবে না এবং আপনাকে সক্রিয় সংকেত প্রেরণের জন্য কার্নেলকে বাধ্য করার জন্য আপনাকে সক্রিয় স্ক্রিন সেশনের একটি শিশু প্রক্রিয়াটি মেরে ফেলতে হবে। এর অর্থ বাকীগুলির সাথে পুনরায় সংযোগ করতে আপনার স্ক্রিন উইন্ডোগুলির একটিটিকে বলিদান করা (বিজ্ঞতার সাথে চয়ন করুন!)।
একটি আর্কাইভ জেন্টু উইকি এফএকিউ থেকে :
সকেট অনুপস্থিত
কখনও কখনও স্থির-চলমান স্ক্রিনের সকেটটি ধ্বংস করা যায়, যদিও আসল প্রক্রিয়া এবং এর সমস্ত শিশু প্রক্রিয়া এখনও চলছে। স্ক্রিন-তালিকাটি "/ tmp / uscreens / তে পাওয়া কোনও সকেট প্রদর্শন করবে না" " http://www4.informatik.uni-erlangen.de/ এ এই (এবং কয়েকটি অন্যান্য অস্বাভাবিক সমস্যা) থেকে কীভাবে পুনরুদ্ধার করা যায় তার জন্য কয়েকটি কার্যকর নির্দেশাবলী will n jnweiger / screen-faq.html # এমআইএসসি
প্রায় 2/3 নামার পথে।
প্রশ্ন: কোনও অজানা কারণে, / tmp / স্ক্রিনে / এস-মাইনেমে থাকা ফিফোটি চলে গেছে, এবং আমি আমার স্ক্রিন সেশনটি আরম্ভ করতে পারি না। ফিফো পুনরায় তৈরি করার কোনও উপায় আছে?
উত্তর: স্ক্রিনটি যখনই একটি সিএইচসিএলডি সংকেত পায় তখন ফিফো / সকেট পরীক্ষা করে। অনুপস্থিত থাকলে, ফিফো / সকেটটি পুনরায় তৈরি করা হবে।
যদি স্ক্রিনটি অ-সেট-ইউইডে চলমান থাকে তবে ব্যবহারকারী kill -CHLD screenpid
সরাসরি সরাসরি ইস্যু করতে পারে
(এটি -CHILD
কিছু সিস্টেমে রয়েছে)। স্ক্রিনপিড হ'ল একটি ps -x
তালিকাতে পাওয়া স্ক্রিন প্রক্রিয়াটির প্রসেস-আইডি ।
তবে সাধারণত এটি কাজ করে না, কারণ স্ক্রিনটি সেটআপড রুট ইনস্টল করা উচিত। এই ক্ষেত্রে আপনি এটি একটি সংকেত পাঠাতে সক্ষম হবেন না, তবে কার্নেলটি করবে। এটি এমন করে, যখনই পর্দার কোনও শিশু তার অবস্থার পরিবর্তন করে। পর্দার অভ্যন্তরে চলমান "সর্বনিম্ন গুরুত্বপূর্ণ" শেলের প্রসেস-আইডি (নীচে শেলপিড) সন্ধান করুন। চেষ্টা kill -STOP shellpid
। ফিফো / সকেট যদি আবার উপস্থিত না হয় তবে শেল প্রক্রিয়াটি ধ্বংস করুন। আপনি বাকীটি বাঁচাতে একটি শেল ত্যাগ করেন। যদি কিছুই কাজ না করে, দয়া করে হারিয়ে যাওয়া স্ক্রিন সেশনে চলমান সমস্ত প্রক্রিয়া সরিয়ে দিতে ভুলবেন না।