প্রারম্ভকালে চালানোর জন্য কীভাবে কোনও পরিষেবা কনফিগার করতে পারি


244

আমার একটি ডেমন রয়েছে যা আমি যদি serviceকমান্ড দিয়ে ম্যানুয়ালি শুরু করি :

ricardo@ricardo-laptop:~$ sudo service minidlna start                   
 * Starting minidlna minidlna                                                              [ OK ] 

তবে পিসি রিবুট হলে এটি স্বয়ংক্রিয়ভাবে কনফিগার করা হয় না।

পিসিতে কেউ লগইন না করেও কীভাবে এটি স্বয়ংক্রিয়ভাবে শুরু করার জন্য এটি কনফিগার করব?


@ user154721 অটোস্টার্ট কাজ করতে আপনি আপডেট-আরসি.ডি কোন যুক্তি দিয়েছিলেন? আমি বিভিন্ন অপশন চেষ্টা করেছি কিন্তু ভাগ্য হয়নি।
BennyTheBen

অটো-স্টার্ট প্রোগ্রামগুলি বেশ কয়েকটি স্থানে বা তেমনিভাবে বা হিসাবে হিসাবে বিভিন্ন ক্ষেত্রে autostartবা *.serviceফাইলগুলিতে কনফিগার করা থাকে । দেখুন: unix.stackexchange.com/a/525845/43233init.dcrontab
নোয়াম মানস

উত্তর:


281
sudo update-rc.d minidlna defaults

এটি স্বয়ংক্রিয় স্টার্টআপ সিস্টেমে পরিষেবা যুক্ত করা উচিত। তবে যদি আপনি পান:

System start/stop links for /etc/init.d/minidlna already exist.

হুকুম কর

sudo update-rc.d minidlna enable

পিএস : আরও বিশদে বিশদটির জন্য কমান্ডটি লিখে আপডেট-আরসি.ডির ম্যান পৃষ্ঠাটি দেখুনman update-rc.d


7
ধন্যবাদ, তবে এই আদেশটি চালানোর সময় যদি আমি এই আউটপুটটি পাই তবে কী হবে ?:System start/stop links for /etc/init.d/minidlna already exist.
রিকার্ডো রেইস

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

8
@ রিকার্ডোরেজ sudo update-rc.d -f minidlna removeবিদ্যমান লিঙ্কগুলি সরাতে ব্যবহার করে।
ডগওয়েদার

5
আমি ত্রুটি আপডেটের নীচে নেমে যাচ্ছি - rc.d: /etc/init.d/usermanage: ফাইলটির অস্তিত্ব নেই
রিজওয়ান প্যাটেল

2
আমিও আছি, একই ত্রুটি পেয়েছি update-rc.d: /etc/init.d/mongod: file does not exist। তারপর, sudo systemctl enable mongod.serviceআমার জন্য কাজ।
অন্বেষণকারী

36

কখনও কখনও আপনার বুট প্রক্রিয়াতে একটি স্ক্রিপ্ট চালানো প্রয়োজন, উদাহরণস্বরূপ বুট প্রক্রিয়াতে একটি iptables কনফিগারেশন চালান। সুতরাং আপনাকে প্রতিটি রিবুটিং ম্যানুয়ালি স্ক্রিপ্ট চালাতে হবে না to

আপনি আপনার স্ক্রিপ্টটি /etc/init.d/rc.localফাইলটিতে যুক্ত করে উবুন্টুতে বুট প্রক্রিয়াতে চালাতে পারেন । নীচের পদক্ষেপ দেখুন।

  1. /etc/rc.localএই আদেশ দিয়ে ফাইলটি খুলুন :

    vim /etc/rc.local
    
  2. আপনার স্ক্রিপ্টটি যুক্ত করুন যা আপনি সেখানে বুট প্রক্রিয়াতে চালাতে চান, উদাহরণস্বরূপ:

    sh /home/ivan/iptables.sh 
    echo 'Iptable Configured!'
    
  3. এই ফাইলটিতে অন্তর্ভুক্ত মন্তব্যগুলি পর্যালোচনা করুন এবং নিশ্চিত হন যে একটি প্রস্থান 0 শেষে রয়েছে।

  4. ফাইলগুলি সংরক্ষণ করুন। এবং আপনার স্ক্রিপ্ট বুট প্রক্রিয়া চলবে।


2
উবুন্টু ১২.০৪-এ /etc/init.d/rc.local এর মন্তব্য বলছে "সংক্ষিপ্ত বিবরণ: চালিত /etc/rc.local এটি উপস্থিত থাকলে", সুতরাং সম্ভবত স্ক্রিপ্টগুলি /etc/rc.local এ যুক্ত করা আরও ভাল ধারণা হতে পারে?
সংঘিউন লি

এই পদ্ধতিটি পরিষেবাটিতে "শাটডাউন" কমান্ড জারি করবে বা কেবল ওএস শাটডাউন করার পরে প্রক্রিয়াটি মেরে ফেলবে?
ভাদিম চেকান

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

1
এফওয়াইআই: rc.localবনাম এটির সাথে যোগ করার মধ্যে পার্থক্যটি
হ'ল আরসি.লোকাল এর

35
  • শুরুতে ডেমন শুরু করতে:

    update-rc.d service_name defaults
    
  • মুছে ফেলার জন্য:

    update-rc.d -f service_name remove
    

ডিফল্ট => ডিফল্ট রান স্তর 2,3,4 এবং 5

উদাহরণ:

update-rc.d tomcat7 defaults

1
আমি যখন এই কমান্ডটি করি তখন আমি "/etc/init.d/tomcat7 এর জন্য সিস্টেম স্টার্ট / স্টপ লিঙ্কগুলি ইতিমধ্যে বিদ্যমান" পাই। যাইহোক, যখন আমি রিবুট করি তখন এটি টমক্যাট শুরু করে না, আমাকে সর্বদা "পরিষেবা টমক্যাট 7 স্টার্ট" করতে হবে।
জন লিটল

আমার ক্ষেত্রে sudo আপডেট-rc.d মাইসারওয়াইস ডিফল্ট সর্বদা কোনও আউটপুট না দিয়ে সম্পূর্ণ হয় এবং পরিষেবাটি বুট-আপ বা সুডো সার্ভিস মাইসার্ভিস সূচনাতে শুরু হবে না যা নিঃশব্দে সম্পূর্ণ হয়। sudo /etc/init.d/myservice তবে কাজ শুরু করে
আক্ক

13

উবুন্টু 15.10 (শ্রদ্ধা। দেবিয়ান 8 "জেসি") থেকে, আপনাকে minidlnaপ্রারম্ভকালে চালানোর জন্য আপনার পরিষেবাটি কনফিগার করতে নিম্নলিখিত কমান্ডটি ব্যবহার করতে হবে :

sudo systemctl enable minidlna.service

এবং বুট সময় থেকে এটি আবার অক্ষম করতে:

sudo systemctl disable minidlna.service

এটি আপনার পরিষেবাগুলির সাথে সন্ধান করতে পারে এমন সমস্ত পরিষেবা নামের সাথে কাজ করে ls /lib/systemd/system/*.service

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