উবুন্টু ১২.০৪-তে একটি স্ক্রিপ্ট থেকে কীভাবে একটি আপস্টার্ট কাজের উপর নির্ভর করবে


10

আমি উবুন্টু 12.04 এলটিএস ব্যবহার করছি এবং এই সিস্টেমটি প্রাথমিকভাবে আপস্টার্ট কাজগুলি ব্যবহার করে। দুর্ভাগ্যক্রমে আমার সিস্টেমটি একটি ম্যানুয়ালি সংকলিত ডিবিমেইল সার্ভারের উপরও নির্ভর করে , যার কেবল একটি থ্রি স্ক্রিপ্ট রয়েছে তবে কোনও আপস্টার্ট স্ক্রিপ্ট নেই।

update-rc.d dbmail defaultsআমি সমস্ত রানলেভেলের জন্য dbmail ইনস্টল করে ব্যবহার করেছি, তবে দুর্ভাগ্যক্রমে এটি মাইএসকিউএল উঠে যাওয়ার আগেই শুরু হয়েছিল, তাই ডেমনটি আবার মারা যায়। আমি এটিকে এস 90 বা এর মতো সরানোর চেষ্টাও করেছি, স্ক্রিপ্টটি চালিত হওয়ার পরে এখনও মাইএসকিউএল উপলব্ধ হয় না।

আমি স্ক্রিপ্টের এলএসবি শিরোনামের উপর নির্ভরতা যুক্ত করার চেষ্টা করেছি:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          dbmail
# Required-Start:    $local_fs $remote_fs $syslog $network mysql
# Required-Stop:     $local_fs $remote_fs $syslog $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start dbmail services
# Description:       Run network services provided by dbmail such as
#                    imap-server, pop3-server, lmtp-server, timsieve-server
### END INIT INFO

দুর্ভাগ্যক্রমে স্ক্রিপ্টটি এখনও মাইএসকিউএল হওয়ার আগেই শুরু হয়েছিল বলে মনে হচ্ছে। আমি পুরানো ফ্যাশিনযুক্ত আরআইপি স্ক্রিপ্টগুলিতে অভ্যস্ত, চাকরী না বাড়ানোর জন্য, তাই আমি এখানে কিছুটা বিভ্রান্ত হয়ে পড়েছি। আমি কীভাবে নির্ভরতা যুক্ত করতে পারি বা কীভাবে আমি init স্ক্রিপ্টের mysqlআগে কাজ শুরু করতে পারি dbmail?

বুট চলাকালীন আমি কীভাবে + কাজ স্ক্রিপ্টগুলির জন্য নেওয়া শুরু আদেশটি চেক / দেখতে পারি? এটির জন্য কোনও সরঞ্জাম আছে?

স্টার্টআপটি ঠিকঠাক কাজ করার পরে শেল থেকে স্ক্রিপ্টটি ম্যানুয়ালি চালু করা যেমন মাইএসকিউএল ইতিমধ্যে চলছে।


কুৎসিত কাজ হিসাবে যা কাজ করেছিল তা স্ক্রিপ্টের "শুরু ()" ফাংশনে একটি "ঘুম 3" যুক্ত করছিল adding তবে একটি পরিষ্কার উপায় হওয়া দরকার, এটি কেবল একটি জাতি-শর্তের অপব্যবহার করছে এবং আমি সত্যিই এটি সঠিক উপায়ে ঠিক করতে চাই।
মার্টিন সি

উত্তর:


12

আমি মনে করি আপনি যদি /etc/init.d/dbmail startএখান থেকে চলে যান তবে /etc/rc.localএটি আপনার সমস্ত আপস্টার্ট কাজ / অন্যান্য আরআইডি স্ক্রিপ্টগুলির পরে শুরু হবে।

যাইহোক, আমি সম্ভবত এটিতে একটি নতুন আপস্টার্ট কাজ যুক্ত করে এটি ঠিক করব /etc/init/dbmail.conf। সাধারণত init.d স্ক্রিপ্টগুলিতে স্ট্যাটাস ইত্যাদি যাচাইয়ের জন্য প্রচুর কোড থাকে যা আপনার জন্য আপস্টার্ট পরিচালনা করে। এটি এতটা সহজ হতে পারে:

start on started mysql
exec /usr/local/bin/dbmail

অথবা, আপনি সম্ভবত বিদ্যমান init স্ক্রিপ্টটি ব্যবহার করতে পারেন:

start on started mysql
pre-start script
  /etc/init.d/dbmail start
end script
post-stop script
  /etc/init.d/dbmail stop
end script
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.