প্রথমত, একটি ব্যাখ্যা যথাযথ:
- init.d হ'ল ডিরেক্টরি যা পরিষেবা নিয়ন্ত্রণ স্ক্রিপ্টগুলিকে সঞ্চয় করে, যা পরিষেবাগুলির শুরু এবং থামানো নিয়ন্ত্রণ করে যেমন
httpd
orcron
- rc.local একটি পরিষেবা যা সিস্টেম স্টার্টআপ প্রক্রিয়ার অংশ হিসাবে স্বেচ্ছাসেবী স্ক্রিপ্টগুলি চালনার অনুমতি দেয়
আপনার স্ক্রিপ্টটি ব্যবহার করা rc.local
বা cron
চালানো আরও ভাল কিনা সে বিষয়ে আমি সন্দেহ করি যে এটি ব্যবহারিকতার চেয়ে নান্দনিকতার প্রশ্ন বেশি। cron
কোনও টাস্ক শিডিয়ুলার হিসাবে, কোনও মেশিনের রক্ষণাবেক্ষণ বা রক্ষণাবেক্ষণ করার পদ্ধতি হিসাবে আপডেট করা, আপডেটগুলি পরীক্ষা করা, ক্যাশে পরিষ্কার করা বা সুরক্ষা নিরীক্ষণ সম্পাদন করার উদ্দেশ্যে তৈরি করা হয়। এর অর্থ এই নয় যে এটি those ফাংশনগুলি সম্পাদন করার মধ্যে সীমাবদ্ধ, কারণ এটি নির্দিষ্ট সময়ে (যেমন @reboot
) পছন্দসই কোনও স্ক্রিপ্ট বা কমান্ড চালাতে পারে ।
ব্যবহার rc.local
, অপরপক্ষে, কাজের একটি সিস্টেম কনফিগারেশন টাইপ মধ্যে আরো পড়া হবে, যেমন rc.local
, মেশিন দ্বারা সঞ্চালিত হচ্ছে সিস্টেম init, সাধারণত মেশিন নেটওয়ার্ক কনফিগারেশন সেট করার জন্য দায়ী, সেবা বা পরিবেশের (কিন্তু আবার, শুধু সীমাবদ্ধ নয় এই কাজটি).
উভয় পয়েন্ট, তবে, এই ঘটনাটি দ্বারা ক্ষোভ প্রকাশ করা উচিত যে সমস্ত init সিস্টেমগুলি কোনও rc.local
প্রক্রিয়া সরবরাহ করে না, এবং সমস্ত ক্রোন ডেমন একটি @reboot
psuedo ট্যাগ সরবরাহ করে না।
বোনাস পয়েন্ট
যেমনটি উল্লেখ করা হয়েছে, init.d
সেই ডিরেক্টরিতে এমন স্ক্রিপ্ট রয়েছে যা পরিষেবাগুলি নিয়ন্ত্রণ করে যা আপনার সিস্টেমে চালু করা বা বন্ধ করা যেতে পারে (কমপক্ষে মেশিনগুলিতে যা SysV
টাইপ init সিস্টেম ব্যবহার করে)। আপনার init সিস্টেম এবং আপনার স্ক্রিপ্টের উদ্দেশ্যগুলির উপর নির্ভর করে আপনার স্ক্রিপ্টটি কোনও পরিষেবা হিসাবে একইভাবে চালনার জন্য একটি স্ক্রিপ্টকে একটি init স্ক্রিপ্টে রূপান্তর করা যুক্তিসঙ্গত হতে পারে । এটি তবে আপনার আর ডি সিস্টেমের উপর নির্ভরশীল কারণ এই ফাইলগুলি কীভাবে তৈরি করা হয় তার চারপাশের কাঠামোটি ব্যাপকভাবে পৃথক হতে পারে।
শেষ কথা
এটি লক্ষ করা উচিত যে সাধারণত বাশ স্ক্রিপ্টগুলির .sh
পরিবর্তে তার প্রত্যয় দিয়ে শেষ হয় .txt
, কারণ এটি তত্ক্ষণাত ফাইলটিকে একটি টেক্সট ফাইলের পরিবর্তে শেল স্ক্রিপ্ট হিসাবে বোঝায়। এটি বলা হচ্ছে, শর্ত থাকে যেহেতু এটির ফাইলটির শীর্ষে একটি শেবাং ( #!/bin/bash
) রয়েছে, বা এটি হিসাবে ডাকা হয় bash /path/to/script.whatever
, এটি স্ক্রিপ্টটি কার্যকর করার ক্ষেত্রে বিবেচ্য নয়।