লগইনে নয়, বুটে চালাতে স্ক্রিপ্ট পাওয়া


11

যখনই মেশিন বুট হয় তবে লগইন করার আগে চালানোর জন্য আমি কীভাবে একটি সুনির্দিষ্ট স্ক্রিপ্ট পেতে পারি (পছন্দসইভাবে সুপারউজার হিসাবে নয়)। বুটে চালানো শেষ জিনিস হতে পারে। আমি বেশিরভাগই স্ক্রিপ্টটি ব্যবহার করতে চাই যদিও কোনও ব্যবহারকারী লগইন না করে।


1
@ ব্রুস এর এক নজরে দেখুন -> জিজ্ঞাসুবন্টু
প্রশ্ন /

1
আপনি আপস্টার্ট বা ক্রোন বা সম্ভবত অন্যান্য পদ্ধতিগুলির পুরো গোছা ব্যবহার করতে পারেন। একটি জেনে রাখা গুরুত্বপূর্ণ বিষয় এটি কত তাড়াতাড়ি চলতে পারে তাও । যেমন মাউন্ট করার জন্য এটির জন্য কোনও নির্দিষ্ট ফাইল সিস্টেমের দরকার আছে, এটি চালানোর জন্য কি এক্সের দরকার আছে, ডিবিস লাগবে না, এটির জন্য নেটওয়ার্কিং দরকার working বা আরও সাধারণভাবে: উপস্থিত থাকার জন্য কি কোনও সংস্থান প্রয়োজন?
জানু

@ জ্যানসি: হ্যাঁ আসলে, এটির জন্য আপনার জিজ্ঞাসিত সমস্ত কিছুই (এক্স ব্যতীত) প্রয়োজন, যার কারণেই আমি এটি চালানো সবচেয়ে শেষ জিনিস হিসাবে চাই। এটি আগে চালানোর কোনও কারণ নেই।
মালবারবা

@ এইচএলপি: দুর্দান্ত, ধন্যবাদ তবে আমি যদি সেই পদ্ধতিটি ব্যবহার করি তবে স্ক্রিপ্টটি কত তাড়াতাড়ি চলবে? যেমনটি আমি উপরে উল্লেখ করেছি, এটি সর্বশেষতম জিনিসগুলির মধ্যে একটি (লগইন করার আগে) হওয়া ভাল।
মালবারবা

ঠিক আছে, লগইন করার জন্য নেটওয়ার্কিংয়ের প্রয়োজন হয় না, যদি না আপনি টার্মিনাল সার্ভারে লগইন করতে চান এবং / অথবা আপনার নিজের নেটওয়ার্ক শেয়ারে $ হোম ...
...-)

উত্তর:


8

আমি ব্যবহার করার সুপারিশ করব cron। এর বিশেষ সময়ের মানটি @rebootআপনার ব্যবহারকারীর হিসাবে প্রতিটি রিবুটে আপনার কাজটিকে স্প্যান করবে। উদাহরণস্বরূপ, চালান crontab -eএবং ব্যবহার করুন:

@reboot /home/yourself/bin/some_script_to_run

বিশেষ সময়ের ফর্ম্যাটগুলির বিষয়ে আরও তথ্যের জন্য দেখুন man 5 crontab


ধন্যবাদ, এটি যথেষ্ট সহজ বলে মনে হচ্ছে। এটি কোন ব্যবহারকারী সঠিকভাবে ক্রোনজব তৈরি করে তার উপর নির্ভর করে না? এটি লগইন নির্বিশেষে বুটের শেষে চলে?
মালাবারবা

এটি একেবারে নির্ভর করে কে ক্রোনজব তৈরি করেছে - এটি সেই ব্যবহারকারী হিসাবে চলবে। তবে এটি লগ ইন করা তাদের উপর নির্ভর করে না
কেস কুক

মনে রাখবেন যে ক্রোন ডেমোনটি শুরু হওয়ার সাথে সাথে স্ক্রিপ্টটি চালানো এটি যথাযথ যে আপনার অন্য যে সিস্টেমটির প্রয়োজন হতে পারে তা প্রস্তুত নয়।
ফোনিক্স

4

একটি সম্ভাবনা আপস্টার্ট ব্যবহার করা হয়। নির্ভরশীলতার ক্ষেত্রে আপনি যখন আপনার স্ক্রিপ্টটি চালাতে চান এটি আপনাকে নির্দিষ্ট করতে দেয় যেমন, "যখন ফাইল সিস্টেমগুলি মাউন্ট হবে এবং নেটওয়ার্ক ইন্টারফেসটি eth0চালু এবং চলমান থাকবে"। এই জাতীয় কিছু যুক্ত করে একটি ফাইল তৈরি করুন /etc/init/bruce_script.conf(আপনাকে রুট হিসাবে ফাইলটি তৈরি করতে হবে):

description "Bruce's boot script"
start on filesystem and net-device-up IFACE=eth0
task
exec su -c '/home/bruce/script' bruce

আপনি যে কনফিগারেশন ফাইলটিতে রাখতে পারেন তার একটি তালিকার জন্য বিশেষত ম্যানুয়াল পৃষ্ঠাটি আরও তথ্যের জন্য আপস্টার্ট ডকুমেন্টেশনের সাথে পরামর্শ করুন।init(5)


আপস্টার্ট ইভেন্টগুলির একটি তালিকা রয়েছে যা ব্যবহার করা যেতে পারে?
সূর্যমুখী

@ মারকাস: আমি জানি না। স্ট্যান্ডার্ড ইভেন্টগুলির সেকশন 7 (তাই dpkg -L upstart |grep /man7/) তে একটি ম্যানুয়াল পৃষ্ঠা রয়েছে এবং আপনি বিদ্যমান স্ক্রিপ্টগুলিতে ট্রিগার হিসাবে নির্গত এবং ব্যবহৃত ইভেন্টগুলি দেখতে পারেন /etc/init
গিলস 'অশুভ হওয়া বন্ধ করুন'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.