12.10 সালে সিস্টেম পরিষেবাগুলি কীভাবে শুরু হয়?


12

উবুন্টুতে আমাকে সর্বদা বিভ্রান্ত করার একটি বিষয় ছিল কীভাবে সিস্টেম পরিষেবাগুলি শুরু হয় are আমি জানি যে উবুন্টু আপস্টার্ট ব্যবহার করে এবং এসআইএসভি সমর্থন করে তবে পরিষেবাগুলি শুরু করতে কোনটি ব্যবহৃত হয়? আপনি যখন কোনও পরিষেবার জন্য "ম্যানুয়াল" শুরু করতে চান তখন এটি গুরুত্বপূর্ণ।

উদাহরণস্বরূপ, আমার সিস্টেমে আমার কাছে নিম্নলিখিত পরিষেবাগুলির জন্য ফাইল রয়েছে /etc/init.d/<service>(এসআইএসভি) এবং /etc/init/<service>.conf(আপস্টার্ট):

acpid, mysql, networking, qemu-kvm, ufw, libvirt-bin

সুতরাং আমি যদি শুরুতে মাইএসকিউএল এক্সিকিউশনটি অক্ষম করতে চাই, আমাকে অবশ্যই এটি নিষ্ক্রিয় করার জন্য আপস্টার্ট উপায় বা এসএসভি উপায়টি ব্যবহার করতে হবে? এছাড়াও, আমি কীভাবে বলতে পারি যে এর মধ্যে কোনটি একটি জেনেরিক পরিষেবা শুরু করতে সত্যই ব্যবহৃত হয়?

সম্পাদন করা

সত্যই সন্দেহ এখানে সিসভি / আপস্টার্ট ব্যবহার করে পরিষেবাগুলি কীভাবে অক্ষম / সক্ষম করে তা নয়। আমাকে যা সত্যিই বিভ্রান্ত করে তা হ'ল কিছু পরিষেবা একই সাথে SysV এবং আপস্টার্টে সংজ্ঞায়িত (এবং সক্ষম) বলে মনে হয়। তাদের মধ্যে কোনও নজির আছে (যেমন mysqlসিসভি ব্যবহার করে এটি উভয় চালু করতে সক্ষম করা হয়েছে)? অথবা এটি এমন কী হতে পারে যে কোনও সরঞ্জাম অন্য পটভূমিতে অন্যটি ব্যবহার করে?


1
এখানে গৃহীত উত্তরটি একবার দেখুন: জিজ্ঞাসাবাবু / প্রশ্ন / 133807/… এর কয়েকটি আকর্ষণীয় লিঙ্ক রয়েছে।
রিনজুইন্ড

উত্তর:


2

SysV এবং upstart উভয় ক্ষেত্রে সংজ্ঞায়িত পরিষেবাগুলি সম্পর্কে, সাধারণত আপনি যদি এসআইএসভি এর মাধ্যমে এটি পুনরায় চালু করেন তবে আপনি এই জাতীয় কিছু দেখতে পাবেন:

al@al-mythtv:~$ sudo /etc/init.d/mysql restart
[sudo] password for al: 
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 29846

আমি এটির অর্থ কী নিচ্ছি তা হ'ল আপস্টার্ট এই পরিষেবাদির জন্য পছন্দসই, এবং এসআইএসভি বাস্তবায়ন কেবল একটি র‍্যাপার।

এছাড়াও, আমি মনে করি আপনার পিছনের দিকের ডিরেক্টরিগুলির অর্থ আছে। / etc / init হ'ল আপস্টার্ট কনফিগারেশন, /etc/init.d হ'ল SysV সামঞ্জস্যতা, তবে এই ধরণের পরিষেবাগুলির জন্য আপস্টার্ট করার জন্য এটি কেবল প্রতিলিপি।


6

এটি মূলত অ্যাপ্লিকেশন এবং এর প্যাকেজিং রক্ষণাবেক্ষণকারীর উপর নির্ভর করে।

আপস্টার্ট স্ক্রিপ্টগুলির জন্য দৃ strong় অগ্রাধিকার রয়েছে কারণ তারা ইভেন্টগুলি পরিচালনা করে (যা সাধারণত একটি দুর্দান্ত জিনিস) তবে প্রচুর অ্যাপ্লিকেশনগুলির কাছে পর্যাপ্ত পরিমাণে আপস্টার্ট স্ক্রিপ্ট পাওয়া যায় না বা অ্যাপ্লিকেশনটির রক্ষণাবেক্ষণকারী ডিফল্ট (অ্যাপ্লিকেশন বা ডেবিয়ান) এর সাথে লেগে থাকতে বেছে নিয়েছেন ।

যে কোনও উপায়ে আপনি যে অবস্থাতেই নিজেকে খাপ খাইয়ে নিতে হবে।

  • আপস্টার্টের জন্য:
    • ফাইলটির এমন কোনও নামকরণ করুন যা শেষ হয় না .conf, বা doesn't
    • যোগ manualফাইলে। এটি আপনাকে ম্যানুয়ালি পরিষেবাটি লোড করার অনুমতি দেবে।
  • পুরানো পরিষেবাগুলির জন্য:

    update-rc.d -f <service> remove
    

আপনি একটি থাকে তাহলে /etc/init.d/কিছু স্ক্রিপ্ট এবং একটি /etc/init/স্ক্রিপ্ট এবং আপনার init.d সংস্করণ এখনো লাইভ হলে চেক করতে চান, আপনার সাথে চেক করতে পারেন:

ls -l /etc/rc?.d/*<service>

আপনি যদি অনেকগুলি সিমলিংক দেখতে পান তবে এটি পুরানো এসআইএসভি ইন্ডিমে ইনস্টল করা আছে।


সুতরাং যদি আমার কাছে এমন কোনও পরিষেবা থাকে যা সিসভি এবং আপস্টার্টে সক্ষম হয় (উদাহরণস্বরূপ, acpid), আমি কী ধরে নিতে পারি যে এটি এসআইএসভি চালু করেছে? বা যদি আমি এটি অক্ষম করতে চাই তবে এটি ব্যবহার update-rc.dকরে আমার পুনরায় নামকরণের কৌশলটি করা দরকার?
সালেম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.