Rc0.d, rc1.d,… ডিরেক্টরি / ইত্যাদি


30

আমি উবুন্টু চলছি আমি কোথায় ডিরেক্টরি আছে /etc/rc0.d, /etc/rc1.d, /etc/rc2.d, ..., /etc/rc6.d

আমার মেশিন থেকে ফাইলগুলির উদাহরণ:

directory      example symlinks in the dir
------------------------------------------
/etc/rc1.d:    K76dovecot, K77ntp
/etc/rc2.d:    S23ntp, S24dovecot
/etc/rc3.d:    S23ntp, S24dovecot
/etc/rc4.d:    S23ntp, S24dovecot
/etc/rc5.d:    S23ntp, S24dovecot

প্রশ্নাবলী:

  1. একাধিক "আরসি" ডিরেক্টরিগুলির উদ্দেশ্য কী?
  2. কেন উবুন্টু প্রতিলিপি ইনস্টল হয়নি dovecotএবং ntpসব মধ্যে ছাড়া ডিরেক্টরি rc0.dএবং rc6.d?
  3. যদি তারা উপরের মতো একাধিকবার নির্দিষ্ট করা থাকে তবে এগুলি কি আসলে একাধিকবার কার্যকর করা হয়?
  4. আপনি কি উপরোক্ত থেকে বলতে পারেন যে কোন ক্রমে dovecotএবং ntpশুরুতে কার্যকর হবে?
  5. শুরুতে ntpযাওয়ার আগে উবুন্টুকে সর্বদা চালিত করার সঠিক উপায় কী dovecot?

উত্তর:


23
  1. এগুলি runlevelহ'ল বেশিরভাগ * এনআইএক্স সিস্টেম দ্বারা ব্যবহৃত সিস্টেম ভি-স্টাইলের সূচনা ( systemdভিত্তিক সিস্টেমগুলির উল্লেখযোগ্য ব্যতিক্রম সহ )। কার্নেল বুট করার সময় / ব্যবহারকারী সিদ্ধান্ত নেয় যে runlevelএটি কী চালানো উচিত এবং কেবল এটি চালানো উচিত runlevel। এর অর্থ হ'ল নির্ভর করে runlevelআপনি বিভিন্ন সেট প্রোগ্রামের সাথে বুট করতে পারেন। থামাতে ও পুনরায় বুট করার জন্য রানলেভেলগুলিও রয়েছে তবে আপনি যেহেতু প্রারম্ভকালে অংশটির দিকে মনোনিবেশ করছেন তাই আসুন আপাতত এগুলি উপেক্ষা করুন।
  2. যেহেতু শুধুমাত্র একটি runlevelবুটে চালিত হয় তাই কিছু প্রোগ্রাম runlevelএকই / ভিন্ন ক্রমে বিভিন্ন বা একই পরামিতিগুলি সহ বিভিন্ন / তে শুরু করতে / থামাতে চায় (সমস্ত রান্লাইভেলগুলি সমস্ত ওএসের ক্ষেত্রে একই হয় না)। তবে উবুন্টু 2 থেকে 3-5 কে রানলিভেল অনুলিপি করে, সে কারণেই তারা একই।
  3. নং runlevelএসগুলি একবার প্রারম্ভকালে বা আপনি যখন পরিবর্তন করবেন তখনই মৃত্যুদন্ড কার্যকর করা হয় runlevel
  4. ntpস্ক্রিপ্টগুলি প্রথমে dovecotরানলেভেল 2-5-তে চালানো উচিত , রানলেভেলের ক্ষেত্রে নয় 1। স্ক্রিপ্টের নামগুলিতে অर्डিনাল সংখ্যা ( ) মৃত্যুদন্ড কার্যকর করার ক্রম নির্দেশ করে। সুতরাং, এটি আপনার ব্যবহৃত রানলেভেলের উপর নির্ভর করে।S23ntp
  5. এটি ডিস্ট্রোর উপর নির্ভর করে তবে উবুন্টুর বিশেষ ক্ষেত্রে আপনি আপনার স্ক্রিপ্টটি রানলেভেল 1 এবং 2 তে যুক্ত করতে পারেন।

উবুন্টু রানলেভেল সম্পর্কে উইকিপিডিয়া নিবন্ধে আরও তথ্য


সুতরাং আমি যদি সমস্ত আরসি.এক্স ডায়ারগুলিতে স্ক্রিপ্ট রাখি তবে এটি কয়েকবার কার্যকর হবে কি না?
ফ্ল্যাশ থান্ডার

পুনঃটুইট
ব্রায়াম

40

অন্যরা যেমন উল্লেখ করেছে, উত্তরটি হ'ল রানওয়েভগুলি সম্পর্কে যা মূলত কোনও অপারেটিং সিস্টেমের অপারেশনের পদ্ধতি। লিনাক্স এ সাধারণত:

ID  Name                               Description
0   Halt                               Shuts down the system.
1   Single-user Mode                   Mode for administrative tasks.
2   Multi-user Mode                    Does not configure network interfaces and 
                                       does not export networks services.
3   Multi-user Mode with Networking    Starts the system normally.
4   Not used/User-definable            For special purposes.
5   Start the system normally with 
    with GUI                           As runlevel 3 + display manager.
6   Reboot                             Reboots the system.

সুতরাং, প্রতিটি rcNডিরেক্টরিতে স্ক্রিপ্টগুলির প্রতীকী লিঙ্ক রয়েছে যা সেই রানলেভলে চালানো উচিত। সমস্ত আসল স্ক্রিপ্টগুলি সাধারণত /etc/init.dডিরেক্টরিতে থাকে:

$ ls -l /etc/rc5.d/S22cron
lrwxrwxrwx 1 root root 14 Jan 14  2013 /etc/rc5.d/S22cron -> ../init.d/cron

প্রতীকী লিঙ্ক নামকরণ

একটি প্রতীকী লিঙ্ক যার নাম দিয়ে Sশুরু হয় প্রশ্নযুক্ত রানলেভেলে শুরু হবে এবং যাদের নাম দিয়ে শুরু Kহবে তাদের হত্যা করা হবে। লক্ষ্য করুন যে সমস্ত লিঙ্কগুলি rc6.d, রিবুট রানলেভেল দিয়ে শুরু হয় K। এটি কারণ সেগুলি পুনরায় বুটের জন্য বন্ধ করা উচিত এবং কিছুই শুরু করা উচিত নয়।

প্রাথমিক চিঠির পরে সংখ্যাগুলি লিঙ্কযুক্ত স্ক্রিপ্টগুলির চলমান ক্রমকে বোঝায়। যাদের সংখ্যায় কম সংখ্যক রয়েছে তাদের বেশি চালানো হবে before সুতরাং, আপনার নির্দিষ্ট উদাহরণে, আগেS23ntp চালানো হবে (এই ক্ষেত্রে শুরু হয়েছিল) । S24dovecot


দুর্দান্ত উত্তর! যদি দুটি স্ক্রিপ্টের একই সংখ্যা থাকে, উদাহরণস্বরূপ: S01bluetoothএবং S01rsync, আদেশটি নির্বিচারে হবে?
ডায়রপ্রস

@ ডায়ারপ্রোবস হুঁ, ভাল প্রশ্ন। হ্যাঁ, আমি অনুমান করব যে কোনও একজনকে এলোমেলোভাবে বেছে নেওয়া হবে। যদিও আমি জানি তা বলতে পারি না।
টেরডন

@ ট্রেডন আমার মনে হয় যে তাদের ফাইলের উপর ভিত্তি করে তাদের বেছে নেওয়া হবে যেহেতু তারা S01তুলনা শুরু করবেন b< r, আপনি ধারণা পাবেন। হতে পারে!
ডিরেক্টপ্রবস

1
সংক্ষিপ্ত উত্তরটি হল, /etc/init.d/rcবলেছেন for s in /etc/rc$runlevel/S*; do …, সুতরাং এটি কেবল গ্লোব সম্প্রসারণ ক্রমে যায়; অর্থাত্ সংখ্যাসূচক / বর্ণমালা। দীর্ঘ উত্তরটি হ'ল যে কোডটি আমার মনে আছে তার চেয়ে অনেক জটিল। আমি পরবর্তী ছয় থেকে আট সপ্তাহের মধ্যে এটি অধ্যয়ন করার জন্য কিছু গুরুতর সময় ব্যয় করার চেষ্টা করব। এক নজরে, এটা পছন্দ পরে সংখ্যা আহরণের এর দেখায় Sএবং এটির সাথে কিছু কাজ, তাই S42beeblebroxএবং S42zaphodআরো শক্তভাবে চেয়ে বলো যুক্ত হতে পারে, S43arthurএবং S44dent
জি-ম্যান

মহান উত্তরের জন্য সত্যিই ধন্যবাদ, কিন্তু আমার একটি প্রশ্ন আছে। : আমি প্রারম্ভে আমার প্রোগ্রাম করা, কিন্তু অ্যাপ্লিকেশন গতি কম stackoverflow.com/questions/49251955/...
H.Ghassami

4

1) একাধিক rcX.d ডিরেক্টরি 'এক্স' রানলেভেলের সময় কোন পরিষেবাগুলি শুরু করতে বা বন্ধ করতে হবে তা নির্দিষ্ট করে।

2) rc0.d রানলেভেল 0 এর জন্য যা শাটডাউন। rc6.d পুনরায় বুট করার জন্য। বাকি সমস্তগুলি বিভিন্ন রানলেভেলের জন্য (2 - 5)। এস হ'ল স্টার্ট এবং কে কে ফর কিল। এগুলি মূলত /etc/rc.d- এর মূল স্ক্রিপ্টগুলির লিঙ্ক। এস / কে এর পরে সংখ্যাগুলি অগ্রাধিকার যার মাধ্যমে পরিষেবাগুলি শুরু করা / হত্যা করা হবে।

3) হ্যাঁ এগুলি একাধিকবার নির্দিষ্ট করা থাকলে শুরু / হত্যা স্ক্রিপ্ট একাধিকবার চালানো হবে। তবে কেউ তা করতে চায় না।

৪) অগ্রাধিকারের সংখ্যাগুলি দেখে প্রথমে ডোভকোটের পরে এনটিপি পরিষেবা শুরু করা হবে।

5) চতুর্থ পয়েন্ট এর উপায়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.