এই জাতীয় কোনও ফাইল বা ডিরেক্টরি /etc/init.d/function নেই


21

আমি একটি গোষ্ঠী অ্যাপ্লিকেশন শুরু / পুনঃসূচনা / বন্ধ করতে একটি স্টার্টআপ স্ক্রিপ্ট তৈরি করেছি। আমি /etc/init.d/functionsআমার স্ক্রিপ্টে লিব ব্যবহার করেছি। এটি আমার সিস্টেমে ভাল কাজ করছে, তবে এটি আমার ক্লায়েন্টের পক্ষে কাজ করছে না; সে ত্রুটি পাচ্ছে:

এই জাতীয় কোনও ফাইল বা ডিরেক্টরি /etc/init.d/function নেই

এখনই আমি জানি না কোন লিনাক্সটি আমার ক্লায়েন্ট ব্যবহার করে dist init.d/functionsফাইলটি কি বিভিন্ন লিনাক্সের ডিস্ট্রোসের জন্য আলাদা? যদি তা হয় তবে আমি এটি কীভাবে খুঁজে পাব?


মনে রাখবেন যে এই ত্রুটিটি উইন্ডোজ লাইন শেষ হওয়ার কারণেও হতে পারে।
এমারসন রোচা

উত্তর:


24

আপনি যে কোনও বিতরণ চালাচ্ছেন এটি এটি নির্দিষ্ট। দেবিয়ান এবং উবুন্টু আছে /lib/lsb/init-functions; সুস রয়েছে /etc/rc.status; এগুলির কোনওটিই অন্যের সাথে সামঞ্জস্যপূর্ণ নয়। আসলে, কিছু বিতরণ মোটেই ব্যবহার /etc/init.dকরে না, বা এটি বেমানান উপায়ে ব্যবহার করে না (স্ল্যাকওয়্যার এবং আর্চ আমার মাথার উপরের অংশে আমার কাছে আসে; অন্যগুলি রয়েছে)।


আমি কী ফাইলটি জানতে পারি এবং এটি রেডহাট 5.5 এর জন্য কোথায় অবস্থিত?
tecman

এছাড়াও, আমি কীভাবে সেই ফাইলের নাম এবং পথটি খুঁজে পেতে পারি? এটি করার কোনও উপায় আছে বা আমরা কেবল এটি ডকুমেন্টেশন থেকে খুঁজে পেতে পারি?
tecman

আমি এটি দেখেছি, যেমন আমার কাছে উভয় উপলব্ধ রয়েছে; আমার রেড হ্যাট ইনস্টল নেই। আপনার কাজ করে: কিন্তু আপনি আমি কি সাহসী উপরে বলেন গুরুত্ব মিস হতে পারে /etc/init.d/functions Do না অস্তিত্ব অন্যান্য ডিস্ট্রিবিউশন উপর। প্রতিটি বিতরণের জন্য নিজস্ব নিয়ম রয়েছে /etc/init.dএবং এর ফাংশন লাইব্রেরি (যদি থাকে) rules নিয়মগুলির চারদিকে ভিত্তি করে; উদাহরণস্বরূপ, SuSE এর rc_status -s। কিছু এলএসবি "স্ট্যান্ডার্ড" ফাংশন রয়েছে, যা সন্ধান করার কথা রয়েছে /lib/lsb/init-functions, তবে আপনার ক্লায়েন্ট হয়ত কোনও বিতরণ চালাচ্ছেন না যা সরবরাহ করার জন্য আপডেট হয়েছে।
গাইকোসৌর

15

ইন সেন্টওএস 7 Docker ইমেজ আমি কেবল প্যাকেজটি ইনস্টল করতে হয়েছে initscriptsএই স্ক্রিপ্টের ইনস্টল করা জন্য অনুক্রমে:

yum install -y initscripts

( এই বিষয়টিরdocker-library জন্য ধন্যবাদ যা আমাকে এই প্রতিশ্রুতিতে দেখায় )


এটি ডকের পাত্রে ফেডোরা 24-তে জেনকিন্স ব্যবহার করে আমার সমস্যাটি সমাধান করেছে। ( অবশ্যই কোর্সের dnfপরিবর্তে ব্যবহৃত yum) ধন্যবাদ!
geerlingguy

এটি Centos7 ডকার পাত্রে মার্কলজিক 9 ইনস্টল করার সময়ও কাজ করে। ইনস্টলেশন নথিতে কেবলমাত্র lib.so.6 এবং lsb-core-amd64 প্রয়োজনের কথা উল্লেখ করা হয়েছে, তবে আমি অনুমান করছি যেহেতু তারা একটি সম্পূর্ণ CentOS 7 ইনস্টল ইনস্টল করার বিষয়ে কথা বলছেন, তারা উপেক্ষা করবে যে আপনার ইনসিক্রিপ্ট প্যাকেজটি দরকার।
alc6379

12

এটি একেবারে বিতরণ নির্ভর। সঠিকভাবে মিলে যাওয়া স্ক্রিপ্টটি লেখার জন্য আপনাকে সত্যই ডিস্ট্রোটি সন্ধান করতে হবে।

আপনি এলএসবি (লিনাক্স স্ট্যান্ডার্ড বেস) স্পেসিফিকেশন অনুসরণ করতে পারেন এবং আশা করতে পারেন যে প্রশ্নে থাকা ডিস্ট্রোও এটি করেছে। বর্তমান স্পেসিফিকেশন নির্দেশ দেয় যে স্ট্যান্ডার্ড init স্ক্রিপ্ট ফাংশনগুলি উপলভ্য হবে /lib/lsb/init-functions( এখানে ডক্স দেখুন )। ফেডোরা এবং অন্যান্য রেড হ্যাট এর সাথে সম্পর্কিত ডিস্ট্রো উপর, যে দ্বারা উপলব্ধ হচ্ছে redhat-lsbপ্যাকেজ, যা ঐচ্ছিক

সুতরাং, আপনি কী লক্ষ্য করে যাচ্ছেন তা সত্যই আপনাকে খুঁজে বের করতে হবে। দুঃখিত।


1

সাম্প্রতিক উত্তর যুক্ত করা হচ্ছে

অন্য উত্তরে উল্লিখিত হিসাবে, লিনাক্স স্ট্যান্ডার্ড বেস (এলএসবি) init.dস্পেসগুলি এখানে তালিকাভুক্ত হিসাবে এলএসবি সংজ্ঞায়িত ডিআইআই ফাংশনগুলি ব্যবহার করে প্ল্যাটফর্মটি স্বাধীন ভিত্তিক প্রারম্ভিক স্ক্রিপ্টগুলি লেখার একটি উপায় সরবরাহ করে

সকল lsb অনুবর্তী ডিস্ট্রিবিউশন (সমস্ত বড় বেশী) ফাইল প্রদান /lib/lsb/init-functionsমেটা-প্যাকেজের মধ্যে (যা তালিকাভুক্ত ফাংশন সংজ্ঞায়িত) lsb-core-noarchযা বন্টন প্যাকেজ ম্যানেজার ব্যবহার করে ইনস্টল করা যাবে $PKGMAN $INSTOPT lsb-core-noarch( yum, dnf, apt, ...)।

যেমন একটি init স্ক্রিপ্ট উদাহরণ এটি

তবে, systemdএখন বেশিরভাগ বিতরণের জন্য ডি-ফ্যাক্টো সিস্টেম এবং পরিষেবা ব্যবস্থাপক এখন কীভাবে তা systemd service unitলেখার পরিবর্তে একটি লিখতে ভাল initscript


0

আমি উবুন্টুতে চলে আসার সময় এই ফাংশনগুলি মিস করেছি, তাই আমি একটি লাইব্রেরি তৈরি করেছি যা তাদের কার্যকারিতা পুনরায় তৈরি করে: efunitions


0

আমার ডকারের ধারকটি চালানোর সময় আমিও একই ত্রুটি পেয়েছি। এটি আমার ডকফাইফিলের নীচে লাইন যুক্ত করে ঠিক করা হয়েছিল

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