নোহপ কমান্ডের কাজ কী?


18

আমি উবুন্টুর এক নবাগত। আমি একটি কমান্ড শিখেছি

nohup [command]- <command>হ্যাঙ্গআপ সিগন্যালের প্রতিরোধ ক্ষমতা চালান

আমি " হ্যাঙ্গআপ সংকেত থেকে ইমিউন " এর অর্থ বুঝতে পারি না । এটি কী ধরণের সংকেতের কথা বলছে? এবং দয়া করে আমাকে একটি উদাহরণ সহ এই আদেশটি কীভাবে ব্যবহার করবেন তা বলুন।


যদি আপনার শেলটিতে উপলভ্য থাকে তবে এর থেকে disownআরও ভাল বিকল্প nohup। একটি কমান্ড command &বা এর সাথে ব্যাকগ্রাউন্ড করুন Ctrl-Z, তারপরে disownএটি শেল থেকে আলাদা করতে ব্যবহার করুন ।
জন কুগেলম্যান 13-15

@ জনকুগেলম্যান যা যথেষ্ট নয় , আপনি ইনপুট, আউটপুট এবং ত্রুটি প্রবাহকেও সরিয়ে দিয়েছেন। তাহলে 'নোহুপ' ব্যবহার করবেন না যা আপনার জন্য স্বয়ংক্রিয়ভাবে এটি করে?
चमत्कार 173

উত্তর:


34

আসুন আপনি বিবেচনা করুন যে আপনি geditকোনও টার্মিনাল থেকে একটি পাঠ্য সম্পাদক খুলছেন এবং এতে কাজ করছেন। আপনি যদি টার্মিনালটি বন্ধ করার আগে বন্ধ করে দেন gedit, টার্মিনালটি বন্ধ করার সাথে সাথে জিডিটও বন্ধ হয়ে যায়। তাহলে এখানে কি চলছে? geditটার্মিনাল অধীনে একটি শিশু প্রক্রিয়া হিসেবে চালানো হয়। আপনি যখন টার্মিনালটি বন্ধ করবেন তখন একটি হ্যাঙ্গ আপ সিগন্যাল (SIGHUP ) প্রেরণ করা হয় যা শিশু প্রক্রিয়াটিকে মেরে ফেলে।

অন্যদিকে আপনি যদি geditপিতা বা মাতা টার্মিনালটি বন্ধ করার পরেও আপনার সন্তানের প্রক্রিয়াটি (এখানে ) চালিয়ে যেতে চান তবে আপনি চাইবেন যে আপনার প্রক্রিয়াটি হ্যাঙ্গআপ সিগন্যালের প্রতিরোধ ক্ষমতা থেকে রক্ষা পাবে। যাতে টার্মিনালটি বন্ধ করে দেওয়া শিশু প্রক্রিয়াটি বন্ধ না করে। nohupঠিক এই কাজ করে।

nohupটার্মিনাল থেকে কোনও কমান্ড সংযোগ বিচ্ছিন্ন করে না , এটি আপনার স্ক্রিপ্টটি SIGHUP উপেক্ষা করে এবং stdout / stderr কে একটি ফাইল nohup.out এ পুনর্নির্দেশ করে, যাতে আপনি লগ আউট করার পরে কমান্ডটি পটভূমিতে চলতে পারে। যদি আপনি শেল / টার্মিনালটি বন্ধ করেন বা লগ অফ করেন, আপনার আদেশটি আর সেই শেলের শিশু নয়। এটি init প্রক্রিয়ার অন্তর্ভুক্ত। আপনি যদি অনুসন্ধান করেন তবে pstreeদেখতে পাবেন এটি এখন প্রক্রিয়া 1 (init) এর মালিকানাধীন। এটিকে অগ্রভাগে ফিরিয়ে আনা যায় না কারণ অগ্রভাগ আর বিদ্যমান নেই।


16

@ সৌরভ্যাক যা লিখেছেন তা ছাড়াও, এটি ব্যাক ইন দি ডে-র একটি উত্তরাধিকার, যখন লোকেরা কেবল টেক্সট-কেবল বোবা টার্মিনালগুলির মাধ্যমে লগ ইন করে, প্রায়শই (মূল, অ্যানালগ ১১০ বাউড) মডেমের মাধ্যমে: "হ্যাং আপ" আক্ষরিক অর্থে "ফোনটি হ্যাং আপ করে" "।

হ্যাংআপ সিগন্যালে সুরক্ষিত একটি পিড আপনার লগ আউট এবং ফোন হ্যাং আপ করার পরেও চলতে থাকবে । এটি ধীর কম্পিউটারগুলিতে খুব দরকারী যখন কাজ কয়েক ঘন্টা ধরে চলত, এবং আপনি কেবল লগইন করতে পারবেন না (অন্য কেউ টার্মিনালটি ব্যবহার করার প্রয়োজন ছিল, আপনার ফোনটি ব্যবহার করার দরকার ছিল, লাইনে স্থির থাকতে পারে সংযোগটি "বিজেট") ইত্যাদি)।


1
শুধু দিন ফিরে না। আমি আমার বেশিরভাগ বড় কাজগুলি সার্ভার ক্লাস্টারে চালিত করি যা আমি প্রবেশ করি। যদি আমি নোহুপ না ব্যবহার করি তবে আমার কাজ শেষ হওয়ার অপেক্ষায় কয়েকদিন ধরে আমার ল্যাপটপগুলি সেই মেশিনগুলির সাথে সংযুক্ত করে রেখে দেওয়া উচিত।
রায়

@ রে "এট" এর মাধ্যমে বা ক্রোন জব হিসাবে তাদের চালানোর বিষয়ে কী?
রন

পুনঃটুইট বা গ্রিড ইঞ্জিনের মাধ্যমে। আমি নোহুপকে একমাত্র বিকল্প বলে বোঝানোর অর্থই দিচ্ছিলাম না যে এটি আজও এই উদ্দেশ্যে ব্যবহৃত হয়।
রে

1
হতে পারে আপনার historicalতিহাসিক মন্তব্যগুলি সঠিক। তবে এর বর্তমান গুরুত্ব সম্পর্কে আপনার সিদ্ধান্তগুলি ভুল। এটি ধীর কম্পিউটারগুলিতে কার্যকর নয় তবে এটি দীর্ঘকালীন কাজের জন্য দরকারী। এই দুটি ভিন্ন জিনিস। আপনি আপনার টার্মিনালের উদ্দেশ্য বা অযৌক্তিক বিচ্ছিন্নতার বিরুদ্ধে আপনার কাজ রক্ষা করতে 'nohup' ব্যবহার করেন। এমনকি আজকাল আপনি যদি খুশি হন না যে কোনও চাকরী বাতিল হয়ে যায় কারণ একটি নেটওয়ার্ক ত্রুটি আপনার টার্মিনালটি সংযোগ বিচ্ছিন্ন করে এবং আপনার কাজটি বাতিল করা হয়েছে।
चमत्कार 173

@ রে ক্রোন জবগুলি এটি অর্জনের জন্য সম্পূর্ণ অনুপযুক্ত। ক্রোনজবসগুলি পর্যায়ক্রমিক কাজের জন্য, আপনাকে ক্রোনজবায় পরিবেশ নির্ধারণ করতে হবে এবং অন্যান্য অনেক বিষয় বিবেচনা করতে হবে। সম্ভবত 'এট' হ্যান্ডেল করা কিছুটা সহজ তবে তবুও নোহাপের চেয়ে জটিল।
चमत्कार 173
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.