এটি এমন একটি প্রশ্ন যা বেশ কয়েকবার সম্বোধন করা হয়েছে, কেবল এখানেই নয়, স্ট্যাক এক্সচেঞ্জ নেটওয়ার্কের অন্যান্য সাইটেও (যেমন আমি যখন ssh নিজেই বাধা দিই তখন রিমোট প্রসেসটি মেরে ফেলতে কীভাবে এসএসএস তৈরি করব? )। যাইহোক, আমি কোনও সমাধান আমার জন্য কাজ করতে পারি না।
আমি ssh এর মাধ্যমে একটি কমান্ড চালাচ্ছি। যখনই আমি ssh থেকে প্রস্থান করি, আমি কমান্ডটিও মরতে চাই। এই কমান্ডটি কেটিসভার নামক একটি ডেমন যা আপনি সিটিআরএল-সি চাপ না দেওয়া পর্যন্ত অনির্দিষ্টকালের জন্য চলে।
আমি এটি নিম্নরূপে চালিত করছি: ssh -t compute-0-1 ktserver
এবং, প্রকৃতপক্ষে, আমি যখন Ctrl-C টিপবো, প্রক্রিয়াটি সুদৃশ্যভাবে শেষ হয় এবং ssh অধিবেশন শেষ হয়।
তবে, যদি Ctrl-C চাপার পরিবর্তে আমি kill
কমান্ডটি ব্যবহার করে (যেমন উদাহরণস্বরূপ, SIGINT বা SIGHUP প্রেরণ) ssh প্রক্রিয়াটি মেরে ফেলি , ktserver
প্রক্রিয়াটি জীবিত থাকে।
কীভাবে হত্যা ktserver
করা ssh
হয় আমি কীভাবে সর্বদা মরতে পারি?
সম্পাদনা : যদি ktserver
আমি এর পরিবর্তে পুরোপুরি আলাদা কিছু চালিত করি, যেমন gedit
, সমস্ত কিছু কবজির মতো কাজ করে (যেমন সংযোগটি মারা যায় তখন জিডিট মারা যায়)। সুতরাং, প্রক্রিয়া নিজেই কিছু ভুল হতে পারে। উদাহরণস্বরূপ, আমি ভেবেছিলাম এটি সম্ভবত SIGHUP বা সাইন ইন উপেক্ষা করছে। যাইহোক, যখন আমি চালাচ্ছি kill -1 ktserver
বা kill -2 ktserver
, প্রক্রিয়াটি প্রত্যাশা অনুযায়ী মারা যায়।
সম্পাদনা 2 : মার্ক প্লটনিক যেমন উল্লেখ করেছেন, সমস্যাটি এই বিষয়টির সাথে সম্পর্কিত যে এসএসএস চ্যানেলে কোনও যোগাযোগ প্রচার হয় না। আমি ssh -t <host> read
পরে ssh প্রক্রিয়া চালিয়ে এবং মেরে নিশ্চিত করেছি । read
এখনও বেঁচে ছিল এবং লাথি মারছিল।
ssh example.com dd ...
যাওয়ার কয়েক ঘন্টা পরেও আমার কাজ শেষ হয়েছে ssh
। আপনি যদি ktserver
কিছুক্ষণের মধ্যে একবার আউটপুট দেওয়ার বিকল্প নিতে পরিবর্তন করতে পারেন তবে এটি কার্যকর হতে পারে।
read
রিমোট কম্পিউটারে চালানোর চেষ্টা করেছি , এবং এসএসএস সংযোগটি হত্যা করার পরে, read
মারা যায় নি। দুর্ভাগ্যক্রমে, আমি কে-সার্ভারকে কিছুতেই আউটপুটে পরিবর্তন করতে পারি না। তাহলে কোন সমাধান নেই?
shopt -s huponexit
)। এটি যদি আপনার পক্ষে কাজ করে তবে আপনি পরীক্ষা করতে পারেন?
kill -9 ktserver
?