আমি আহি-ডেমনকে কীভাবে অক্ষম করতে পারি এবং আপনি কীভাবে এটি পরিষেবা হিসাবে প্রদর্শিত হয় তবে এটি আরসিএন.ডিতে না থাকলে এটি কীভাবে চলে তা আপনি আমাকে ব্যাখ্যা করতে পারেন?
আপনি এখানে পড়া বন্ধ করতে পারেন। আসলে আপনি দয়া করে কিছু উবুন্টু শেখাতে না চাইলে করুন। উপরের প্রশ্নটির যথেষ্ট উত্তর দেওয়া উচিত। বাকীটি আমাকে কেবল উবুন্টুর আশেপাশে কোনও উপায় খুঁজে পাওয়ার জন্য আরও কাঠামোগত উপায়ের জন্য কল করছি। আমি কম-বেশি অন্যান্য "ইউনিক্স-জাতীয়" সিস্টেম ব্যবহার করতে পারি।
আমি একজন শিক্ষানবিস তাই আমি যদি সংবেদনহীনভাবে কাজ করি তবে আমাকে আপনার প্রতিদিনের ডাব্লুটিএফ বিবেচনা করুন তবে দয়া করে আমাকে উন্নতি করতে সহায়তা করুন।
প্রতিটি বুটে, /sbin/init
মনে হয় একটি প্রক্রিয়া চালু করা হবে বলে মনে হচ্ছেavahi-daemon
# initctl list | grep avahi
avahi-daemon start/running, process 1280
ব্যবহারকারী হিসাবে avahi
# id avahi
uid=107(avahi) gid=118(avahi) groups=118(avahi)
একটি ps -efww ef
শো 2 প্রক্রিয়া সক্রিয়, উভয় বলা হয় avahi-daemon
, এবং PPID
প্রথমটির avahi-daemon
প্রকৃতপক্ষে 1
, দ্বিতীয় প্রক্রিয়াটি প্রথমটির একমাত্র শিশু। সেই PPID
= 1
যা আমাকে মনে করে যে এটি স্বয়ংক্রিয়ভাবে শুরু হয়েছিল।
বৈকল্পিকভাবে:
সিস্টেমের প্রারম্ভকালে কী কীভাবে সঠিকভাবে পরীক্ষা করা যায় সে সম্পর্কে চিন্তা করে কীভাবে সঠিকভাবে যাবেন তা আমি জানি না।
প্রারম্ভকালে চলমান পরিষেবার তালিকা পেতে কি এই উপায়? initctl list | sort
যাইহোক, আমি এই কমান্ডের মাধ্যমে এই "পরিষেবা" সাময়িকভাবে থামাতে সক্ষম হয়েছি বলে মনে হচ্ছে:
service avahi-daemon stop
বা সত্যই এই আদেশ
/etc/init.d/avahi-daemon stop
সরাসরি, যা এটি /usr/sbin/service
ব্যবহার করে বলে মনে হচ্ছে:
env -i LANG="$LANG" PATH="$PATH" TERM="$TERM" "$SERVICEDIR/$SERVICE"
চালু করার সময়, স্ক্রিপ্টটি মনে করিয়ে দেয় যে আমি একটি "আপস্টার্ট" পরিষেবা নিয়ন্ত্রণ করছি এবং আমার আরও সহজ প্রার্থনা করা উচিত stop avahi-daemon
। আমার ধারণা আপস স্টার্ট সম্পর্কে আমার শিখতে হবে তবে আপাতত আমার যা শিখতে হবে তা হ'ল:
আমি কীভাবে উবুন্টুতে পরিষেবাগুলি অক্ষম করব?
এখানে আমি চেষ্টা করেছি (এটি করার সঠিক উপায় এটি হওয়া উচিত, না এটি নয়?):
update-rc.d avahi-daemon disable
তবে এটি অভিযোগ করে:
System start/stop links for /etc/init.d/avahi-daemon do not exist
সুতরাং আমি বাইনারি যাওয়ার পথটি খুঁজতে গিয়েছিলাম:
# Let me know if there is a better way to get the path above
readlink "/proc/$(echo `ps --no-headers -o pid -C avahi-daemon | head -n 1`)/exe"
এটি যা:
/usr/sbin/avahi-daemon
এবং যে কোনও কিছুই যা "এক্সিকিউটেবল ফাইল" হিসাবে বিবেচিত হতে পারে etc
:
find /etc -type f -name '*avahi*' -perm -u+x
আমি ভাবছি যে আমি স্টার্টআপ স্ক্রিপ্টগুলিতে সন্ধান করব /etc/rcN.d
। পরিবর্তে আমি অন্যান্য জিনিস খুঁজে পেয়েছি:
/etc/dhcp/dhclient-exit-hooks.d/zzz_avahi-autoipd
/etc/dhcp/dhclient-enter-hooks.d/avahi-autoipd
/etc/resolvconf/update-libc.d/avahi-daemon
/etc/network/if-up.d/avahi-autoipd
/etc/network/if-up.d/avahi-daemon
/etc/network/if-down.d/avahi-autoipd
/etc/avahi/avahi-autoipd.action
avahi-daemon
নেটওয়ার্ক স্টেটের পরিবর্তনগুলি নিয়ে এই জিনিসটি চালু হচ্ছে বলে মনে হচ্ছে? কোনও সিস্টেমে স্বয়ংক্রিয়ভাবে বাইনারিগুলি অনুসন্ধানের আরও ভাল উপায় কী?
আমি সাধারণত rc{3,5}.d
এই পর্যায়ে বিভিন্নগুলিতে প্রতীকগুলি বিলুপ্ত করতে পারতাম তবে এখন আমি খুব বেশি নিশ্চিত নই। এই জন্তুটি ঠিক কী শুরু করে? কীভাবে apt-get remove
বা ছাড়া এটি নিষ্ক্রিয় করবেন apt-get purge
?
যতদূর আমি দেখতে পাচ্ছি এটির খুব বেশি সংস্থান খোলা নেই:
lsof -p $(echo `ps --no-headers -o pid -C avahi-daemon | head -n 1`)
বা এটি খুব শীঘ্রই এক নজরে ভিত্তিক সিপিইউ চক্র ব্যবহার করে না htop
।
আমি এই ওয়ান-লাইনারটি সিপিইউ ব্যবহারের জন্য এক মিনিটের সময়কালে ফান করে যায় কিনা তা দেখতে এটি লিখেছিলাম এবং এটি কখনই হয় না, তবে এটি পরীক্ষা করার আরও ভাল উপায় আছে কিনা তা আমাকে জানান:
for i in {1..59}; do ps -p $(echo `ps --no-headers -o pid -C avahi-daemon | head -n 1`) --no-headers -o pcpu; sleep 1; done
A
প্রয়াসের জন্য!