কীভাবে পটভূমিতে লিনাক্স কমান্ড শুরু করবেন এবং টার্মিনালে প্রক্রিয়াটি বিচ্ছিন্ন করবেন

Kibhabe Patabhumite Linaksa Kamanda Suru Karabena Ebam Tarminale Prakriyati Bicchinna Karabena



এই গাইডে, আমরা শিখব কিভাবে ব্যাকগ্রাউন্ডে একটি কমান্ড চালাতে হয় এবং কিভাবে টার্মিনাল থেকে প্রসেসগুলিকে আলাদা করতে হয়।

পূর্বশর্ত:

এই নির্দেশিকায় পদক্ষেপগুলি সম্পাদন করতে, আপনার নিম্নলিখিত উপাদানগুলির প্রয়োজন:

  • একটি কার্যকরী লিনাক্স সিস্টেম। এই সম্পর্কে আরও জানো ভার্চুয়ালবক্সে একটি উবুন্টু ভিএম সেট আপ করুন .
  • অ্যাক্সেস a সুডো অনুমতি সহ অ-রুট ব্যবহারকারী .

টার্মিনাল থেকে প্রসেস চালানো

যখনই একটি কমান্ড চালানো হয়, প্রক্রিয়াগুলি টার্মিনালের অধীনে তৈরি হয়। টার্মিনালটি বন্ধ থাকলে, সমস্ত সংশ্লিষ্ট প্রক্রিয়া স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়। কিছু পরিস্থিতিতে, এটি অসুবিধাজনক হতে পারে। উদাহরণ স্বরূপ:







  • অপ্রতিরোধ্য পরিমাণ আউটপুট ডেটা এবং ত্রুটি/ডায়াগনস্টিক বার্তা
  • টার্মিনালের দুর্ঘটনাজনিত বন্ধ হয়ে যাওয়া যার ফলে সম্ভাব্য মিশন-সমালোচনামূলক প্রক্রিয়াগুলি বন্ধ হয়ে যায়, ইত্যাদি।

এই সমস্যাগুলি মোকাবেলা করার জন্য, কয়েকটি বিকল্প রয়েছে:



  • পটভূমিতে প্রসেস চালানো হচ্ছে
  • টার্মিনাল থেকে প্রসেস বিচ্ছিন্ন করা

পটভূমিতে চলা প্রক্রিয়াগুলি টার্মিনাল আউটপুটকে অভিভূত করবে না। তাছাড়া, টার্মিনালটি অতিরিক্ত কমান্ড চালানোর জন্য বিনামূল্যে। বিচ্ছিন্ন প্রক্রিয়াগুলির জন্য, টার্মিনাল বন্ধ থাকলেও তারা শেষ হবে না।



পটভূমিতে প্রসেস শুরু করা হচ্ছে

অনেক ক্ষেত্রে, একটি কমান্ড সম্পূর্ণ হতে বেশ সময় নিতে পারে। সাধারণত, কমান্ড শেষ না হওয়া পর্যন্ত ব্যবহারকারীকে অপেক্ষা করতে বাধ্য করা হয়। উদাহরণস্বরূপ, আপনি যখন একটি পাঠ্য সম্পাদক ব্যবহার করছেন, তখন সম্পাদকটি বন্ধ না হওয়া পর্যন্ত শেলটি অনুপলব্ধ থাকে।





প্রদর্শন করতে, আমরা 'হ্যাঁ' কমান্ড ব্যবহার করি:

$ মানুষ হ্যাঁ



পদ্ধতি 1:

আমরা চলমান প্রক্রিয়াটিকে ব্যাকগ্রাউন্ডে পাঠাতে পারি এমন কয়েকটি উপায় রয়েছে।

প্রথমত, আমরা প্রক্রিয়াটি শেষ না করেই বন্ধ করি। এটি করতে, নিম্নলিখিত কমান্ডটি চালান এবং 'Ctrl + Z' টিপুন:

$ হ্যাঁ 'ওহে বিশ্ব' > / দেব / খালি

এখন, পটভূমিতে প্রক্রিয়াটি পাঠাতে 'bg' কমান্ডটি চালান:

$ bg

একবার পটভূমিতে ঠেলে, প্রক্রিয়া আবার শুরু হয়। নিম্নলিখিত কমান্ডটি পটভূমিতে চলমান সমস্ত কাজ তালিকাভুক্ত করে:

$ চাকরি

পদ্ধতি 2:

পূর্ববর্তী পদ্ধতিতে, প্রক্রিয়াটি প্রথমে অগ্রভাগে চলতে শুরু করে। আমরা প্রক্রিয়াটি বিরতি দিয়েছি, এটিকে ব্যাকগ্রাউন্ডে পাঠিয়েছি, তারপর আবার শুরু করেছি। পরিবর্তে, আমরা সরাসরি পটভূমিতে প্রক্রিয়াটি চালাতে পারি।

এটি করতে, কমান্ডের শেষে '&' চিহ্ন যোগ করুন:

$ হ্যাঁ 'ওহ লং জনসন' > / দেব / খালি এবং

এখানে, উদ্ভূত প্রক্রিয়াগুলি স্বয়ংক্রিয়ভাবে পটভূমিতে চলে। যাচাই করতে, ব্যাকগ্রাউন্ড কাজের তালিকা চেক করুন:

$ চাকরি

পদ্ধতি 3:

এর সাহায্যে আমরা ব্যাকগ্রাউন্ডে প্রসেস চালু করতে পারি tmux , একটি শক্তিশালী মাল্টিপ্লেক্সার যা একটি উইন্ডোর মধ্যে একাধিক টার্মিনাল সেশন পরিচালনা করতে পারে। এটি লিনাক্সে প্রি-ইনস্টল করা হয় না। যাইহোক, এটি সমস্ত প্রধান লিনাক্স ডিস্ট্রোগুলির জন্য উপলব্ধ। এই সম্পর্কে আরও জানো লিনাক্সে tmux ইনস্টলেশন .

নিম্নলিখিত উদাহরণে, আমরা একটি লক্ষ্যকে পিং করতে এবং আউটপুট লগ করতে tmux ব্যবহার করি:

$ tmux নতুন -d 'ping -c 9 127.0.0.1 > ping.log'

লগ ফাইলটি যাচাই করে যে কমান্ডটি সফলভাবে চলে কি না:

$ বিড়াল ping.log

tmux কী করতে পারে তার এটি একটি উদাহরণ। এই সম্পর্কে আরও জানো উদাহরণ সহ tmux .

ফোরগ্রাউন্ডে চাকরি ফিরিয়ে দেওয়া

আপনি যদি ফোরগ্রাউন্ডে একটি কাজ ফিরিয়ে দিতে চান, আমরা 'fg' কমান্ডটি ব্যবহার করি। আমাদের জবস কমান্ড থেকে কাজের নম্বরও দরকার।

প্রথমে, আপনি যে কাজটি অগ্রভাগে আনতে চান তা নির্ধারণ করুন:

$ চাকরি

এখন, 'fg' কমান্ড ব্যবহার করুন:

$ fg %< কাজের_সংখ্যা >

টার্মিনাল থেকে প্রসেস বিচ্ছিন্ন করা

একটি টার্মিনালের সাথে যুক্ত যেকোন প্রক্রিয়াটি একবার টার্মিনাল বন্ধ হয়ে গেলে শেষ হয়ে যায়, তা সামনের অংশে বা ব্যাকগ্রাউন্ডে চলুক। প্রক্রিয়া সমাপ্তি এড়াতে, আমরা টার্মিনাল/শেল থেকে টার্গেট প্রক্রিয়াটিকে বিচ্ছিন্ন করি।

পদ্ধতি 1:

একটি প্রক্রিয়া অস্বীকার করার জন্য, আমাদের প্রথমে একটি পটভূমি প্রক্রিয়া প্রয়োজন:

$ হ্যাঁ 'কোয়ার্টি' > / দেব / খালি এবং

চলমান ব্যাকগ্রাউন্ড কাজের তালিকা দেখুন:

$ চাকরি

লক্ষ্য ব্যাকগ্রাউন্ড কাজের ক্রমিক নম্বর নোট করুন। এখন, টার্মিনাল থেকে এটিকে বিচ্ছিন্ন করতে 'অস্বীকৃতি' কমান্ডটি ব্যবহার করুন:

$ অস্বীকার %< কাজের_সংখ্যা >

লক্ষ্য কাজটি এখন কাজের তালিকা থেকে অদৃশ্য হওয়া উচিত:

$ চাকরি

যাইহোক, আপনি এখনও পটভূমিতে প্রক্রিয়া চলমান দেখতে পারেন:

$ পুনশ্চ প্রতি

পদ্ধতি 2:

প্যারেন্ট টার্মিনাল থেকে একটি প্রক্রিয়া বিচ্ছিন্ন করার আরেকটি উপায় হল 'nohup' কমান্ড ব্যবহার করা। এটি টার্মিনাল বন্ধ করার পরেও পটভূমিতে একটি প্রক্রিয়া চলমান রাখে।

'nohup' এর ব্যবহার নিম্নরূপ:

$ nohup < আদেশ > এবং

কাজটি সফলভাবে তৈরি হয়েছে কিনা তা যাচাই করুন:

$ চাকরি

পদ্ধতি 3:

এই পদ্ধতিটি লক্ষ্য প্রক্রিয়াটিকে সম্পূর্ণরূপে বিচ্ছিন্ন করে। এটি GUI অ্যাপগুলিকে বিচ্ছিন্ন করার আরও কার্যকর উপায়।

উদাহরণস্বরূপ, ফায়ারফক্স শুরু করতে এবং টার্মিনাল থেকে সম্পূর্ণরূপে বিচ্ছিন্ন করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

$ ফায়ারফক্স দেব / খালি &>/ দেব / খালি এবং

এখানে:

  • দ্য /dev/null লিনাক্সের একটি বিশেষ ডিভাইস যা এটিতে লেখা যেকোনো ডেটা থেকে মুক্তি পায়।
  • পূর্ববর্তী কমান্ডে, ইনপুট থেকে পড়া হয় এবং আউটপুট পাঠানো হয় /dev/null . সম্পর্কে আরো জানুন /dev/null ব্যবহার করার অন্যান্য উপায় .

উপসংহার

আমরা পটভূমিতে একটি প্রক্রিয়া চালানোর বিভিন্ন উপায় প্রদর্শন করেছি। আমরা প্যারেন্ট টার্মিনাল থেকে একটি প্রক্রিয়া বিচ্ছিন্ন করার উপায়গুলিও প্রদর্শন করেছি৷ এই কৌশলগুলি যখনই টার্মিনালের সাথে কাজ করে বা কাজে লাগতে পারে একটি স্ক্রিপ্ট চলমান .

আপনার যদি নির্দিষ্ট প্যাটার্নে নির্দিষ্ট কিছু কমান্ড চালানোর প্রয়োজন হয়, আমরা এটিকে একটি হিসাবে অফলোড করতে পারি সিস্টেমড পরিষেবা . দূরবর্তী মেশিনের জন্য, আমরা তৃতীয় পক্ষের সরঞ্জামগুলিও ব্যবহার করতে পারি প্রায় সবকিছু স্বয়ংক্রিয় করার জন্য উত্তরযোগ্য .

শুভ কম্পিউটিং!