আমি লিনাক্সের বুটিম এ আপাচি কীভাবে শুরু করতে পারি?


32

আমি আমার লিনাক্স বাক্সে উত্স থেকে অ্যাপাচি 2 ইনস্টল করেছি। apachectl -k startঠিকঠাক কাজ করে তবে বুট সময়ে অ্যাপাচি কীভাবে শুরু করব?

এটি একটি রেড হ্যাট লিনাক্স বিতরণে রয়েছে:

লিনাক্স <হোস্টনাম> 2.6.9-55. এসএমএস # 1 এসএমপি শুক্র এপ্রিল 20 17:03:35 ইডিটি 2007 আই 686 আই 686 আই 386 জিএনইউ / লিনাক্স


1
কোন বিতরণ?
আয়াজ

উত্তর:


46

আপনি এর চালনাটি যথাযথ রান স্তরে যুক্ত করতে চান। Init স্ক্রিপ্টটি সাধারণত /etc/init.d/apache2যেখানে আপনি নিজেই /etc/init.d/apache2 startএটি শুরু করতে চালাতে পারেন।

জেন্টুতে আপনি লিখবেন:

rc-update add apache2 default

উবুন্টু / ডেবিয়ানে এটি কাজ করে:

sudo update-rc.d apache2 defaults

রেড হ্যাট লিনাক্স / ফেডোরা / সেন্টস-এ সামান্য গুগলিং এটি দেখায়:

chkconfig --add httpd

এটি বিতরণ থেকে বিতরণে কিছুটা ভিন্ন হয় তবে ধারণাটি সাধারণত একই রকম হয়। মূলত, এই সমস্ত কমান্ডগুলি /etc/init.d/যথাযথ রান-লেভেল ফোল্ডারে ইন থেকে একটি প্রতীকী লিঙ্ক তৈরি করে /etc/


1
উত্তরের জন্য ধন্যবাদ এটি আমাকে সঠিক দিকে নির্দেশ করেছে। আমি নীচে কী করেছি তা সংক্ষেপে জানালাম।
শোক করুন

আপনি যদি উত্স থেকে অ্যাপাচি তৈরি করে থাকেন তবে তা কোনও আরআইপি স্ক্রিপ্ট হতে পারে না, আপনি একবার আটক স্ক্রিপ্টটি সঠিকভাবে /etc/init.d/ এ সেট আপ করার পরে আপনি যে অংশটি আচ্ছাদন করেছেন সেটিকে কেবল পরিষেবা হিসাবে কনফিগারেশন করতে হবে এবং এটি ঠিক কী নয় ' টি
অ্যাপাচি

26

অবশেষে আমার পক্ষে যা কাজ করেছে তা এখানে। এটি ধরে নিলে আপনি মূল ব্যবহারকারী।

  1. vi /etc/init.d/apache2 (নীচে প্রদর্শিত হিসাবে এটি সম্পাদনা করুন)
  2. chmod 755 /etc/init.d/apache2
  3. chkconfig - অ্যাডে অ্যাপাচি 2
  4. chkconfig - list apache2 (এটি কাজ করেছে তা যাচাই করতে)

/Etc/init.d/apache2 এর উপাদানসমূহ:

#! / বিন / ব্যাশ
#
অ্যাপাচি এইচটিটিপি সার্ভারের জন্য # অ্যাপাচি 2 স্টার্টআপ স্ক্রিপ্ট
#
# চেককনফিগ: 3 85 15
# বিবরণ: অ্যাপাচি একটি ওয়ার্ল্ড ওয়াইড ওয়েব সার্ভার। এটি পরিবেশন করতে ব্যবহৃত হয় \
# এইচটিএমএল ফাইল এবং সিজিআই।

/ ইউএসআর / স্থানীয় / অ্যাপাচি 2 / বিন / অ্যাপাচিেক্টল $ @

আপনি রান / লেখনী চালিয়ে / রান / রানলিভেলটি পেতে পারেন যা আমার ক্ষেত্রে ৩ ছিল And এবং অবশ্যই আপনাকে আপনার অ্যাপাচেক্টল সংস্করণটি কল করতে হবে যা আমার ক্ষেত্রে / ইউএসআর / স্থানীয় / অ্যাপাচি ২ / বিন / অ্যাপাচিটল ছিল

নিম্নলিখিত ধন্যবাদ:


আমি আমার নিজের উত্তর গ্রহণ করতে সত্যই ঘৃণা করি, তবে এটিই কাজ করে।
শোক করুন

এটি আমার প্রয়োজন ঠিক ছিল! (/ ইউএসআর / লোকাল / অ্যাপাচি ২ তে একটি ২.২.২7 অ্যাপাচি পুনরায় কম্পাইল করে ইনস্টল করতে হয়েছিল)। অনেক ধন্যবাদ.
ক্রিস্টোফ মুলার 16

এই লাইনটি কি "/ usr / স্থানীয় / অ্যাপাচি 2 / বিন / অ্যাপাচিটল $ @" আসলে httpd শুরু করে? আপনার কি ইস্যু করতে হবে: সুডো চককনফিগ অ্যাপাচি 2 শুরু বা সুডো চককনফিগ অ্যাপাচি 2 চালু?
ওলালা

8

ডিরেক্টরিতে httpdinit স্ক্রিপ্ট রয়েছে কিনা তা পরীক্ষা করে দেখুন /etc/rc.d। যদি হ্যাঁ, তবে আপনি কেবল নিম্নলিখিত কমান্ডটি চালাতে পারেন যা বুট সময়ে httpd পরিষেবাটি সক্ষম করে ।

chkconfig --level 345 httpd on

আপনার কাছে যদি স্ক্রিপ্ট না থাকে তবে কেবলমাত্র /etc/rc.localফাইলটি apachectl -k startঅ্যাপাচ করুন (অ্যাপাচি শুরু করার আদেশ)।


4

আপনি উত্স দ্বারা ইনস্টল হিসাবে /etc/init.d/ ডিরেক্টরিতে আরম্ভ স্ক্রিপ্ট ইনস্টল করা হবে না। অ্যাপাচ্যাক্টেল বাইনারিটি স্ট্যান্ডার্ড আরআই স্ক্রিপ্ট বিকল্পগুলির সাথে সামঞ্জস্যপূর্ণ করার জন্য ডিজাইন করা হয়েছে যাতে আপনি একটি মোড়ক স্ক্রিপ্ট তৈরি করার চেয়ে সহজেই এটিতে সিলেকিং করতে সক্ষম হতে পারেন (যেমন ln -s / usr / স্থানীয় / sbin / apachectl /etc/init.d/ Apache)

তারপরে আপনি সঠিক রানলেভলে init স্ক্রিপ্টের জন্য লিঙ্ক যুক্ত করার জন্য অন্যান্য পোস্টে বর্ণিত পদ্ধতিগুলি অনুসরণ করতে পারেন।

উদ্ধৃতি: অ্যাপাচি ডকুমেন্টেশন http://httpd.apache.org/docs/2.2/invoking.html

বুট-টাইম থেকে শুরু হচ্ছে

যদি আপনি চান যে আপনার সার্ভারটি সিস্টেম পুনরায় বুট করার পরেও চলতে থাকবে, আপনার সিস্টেম স্টার্টআপ ফাইলগুলিতে অ্যাপাচেকটলে একটি কল যুক্ত করা উচিত (সাধারণত rc.local বা একটি rc.N ডিরেক্টরিতে কোনও ফাইল)। এটি অ্যাপাচি রুট হিসাবে শুরু করবে। এটি করার আগে আপনার সার্ভারটি সুরক্ষা এবং অ্যাক্সেস বিধিনিষেধের জন্য সঠিকভাবে কনফিগার করা আছে তা নিশ্চিত করুন।

অ্যাপাচিেক্টল স্ক্রিপ্টটি স্ট্যান্ডার্ড এসআইএসভি থ্রি স্ক্রিপ্টের মতো কাজ করার জন্য ডিজাইন করা হয়েছে; এটি আর্গুমেন্টগুলি শুরু করতে, পুনরায় আরম্ভ করতে এবং থামাতে এবং উপযুক্ত সংকেতগুলিতে httpd এ অনুবাদ করতে পারে। সুতরাং আপনি প্রায়শই যথাযথ init ডিরেক্টরিতে অ্যাপাচিেক্টলকে লিঙ্ক করতে পারেন। তবে আপনার সিস্টেমের সঠিক প্রয়োজনীয়তা যাচাই করতে ভুলবেন না।


উত্তরের জন্য ধন্যবাদ এটি আমাকে সঠিক দিকে নির্দেশ করেছে। আমি নীচে কী করেছি তা সংক্ষেপে জানালাম।
শোক করুন

1

chkconfig --levels 345 httpd

রানলেভেলস 3,4,5 এ httpd শুরু করবে।

chkconfig --list সমস্ত পরিষেবা এবং তাদের বর্তমান প্রারম্ভকালীন রান-লেভেল প্রদর্শন করবে। 345 একটি নেটওয়ার্ক পরিষেবাটির জন্য সাধারণ।


1
এটি সেন্টোস 6 এ আমার সাথে নিম্নলিখিত ত্রুটিটি উত্পন্ন করে: "চেককনফিগ ক্যোয়ারির জন্য কেবলমাত্র একটি রানলেভেল নির্দিষ্ট করা যেতে পারে"। তবে, কমান্ডের শেষে "অন" যুক্ত করা ("chkconfig --levels 345 httpd on") কবজির মতো কাজ করেছে।
আকমে

1

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

নীচের দিকে httpd এ স্ক্রোল করুন এবং টিপুন Spaceযাতে বাম হাতের বাক্সে একটি তারা উপস্থিত হয়। তারপরে Tabঠিক আছে Returnসংরক্ষণ করতে চাপুন এবং শেলটিতে ফিরে আসুন।

আমি আবিষ্কার করেছি যে এটি ডিফল্টরূপে বেশ ইনস্টল করে। আমি কখনও এমন অবস্থানে ছিলাম না যেখানে এটি ইনস্টল করা হয়নি।

আপনার প্রথমে পরিষেবাটি ইনস্টল করতে হবে তবে /etc/init.d এ পরিষেবা স্ক্রিপ্ট অনুলিপি করে চলমান:

chkconfig --add <script name>

1

এটি আপনার লিনাক্সের গন্ধের উপর নির্ভর করে। ধরে নিচ্ছি /etc/init.d/apache2 ফাইলটি তৈরি হয়েছে, চেষ্টা করুন:

chkconfig -a apache2

অথবা

update-rc.d apache2 defaults

তাদের মধ্যে একটি কাজ করা উচিত।


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