কীভাবে পাওয়ার বোতামটি কম্পিউটারকে রুট অনুমতি ছাড়াই বন্ধ করে দেয়?


36

আমি যখন কোনও কমান্ড লাইন বা টার্মিনাল থেকে কম্পিউটারটি বন্ধ করার চেষ্টা করি তখন আমার অবশ্যই মূল সুযোগগুলি থাকতে হবে:

amy@amy:~$ shutdown now
shutdown: Need to be root

এবং

amy@amy:~$ halt
halt: Need to be root

তবে গ্রাফিকাল ইউজার ইন্টারফেস, যেমন শাটডাউন বোতাম বা হার্ডওয়্যার শাটডাউন বোতামটি ব্যবহার করে যখন শাট ডাউন করবেন, তখন আমাকে পাসওয়ার্ডটি করার জন্য জিজ্ঞাসা করা হয়নি। গ্রাফিকাল ইন্টারফেসের জন্য সেই শাটডাউনটি কী করে এবং কেন এটির পাসওয়ার্ড বা রুট সুবিধার দরকার নেই?

আমি উবুন্টু 11.04 নেট ব্যবহার করছি।



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

উত্তর:


33

হার্ডওয়্যার পাওয়ার বোতামটি একটি এসিপিআই ইভেন্টকে ট্রিগার করে যা acpid(এসিপিআই ডেমন) বিজ্ঞপ্তি দেয় এবং প্রতিক্রিয়া জানায়; এক্ষেত্রে সিস্টেমটি বন্ধ করে, যদিও আপনি এটি চান তা করতে পারেন। এসিপিআই ডিমন মূল হিসাবে চালায়, সুতরাং এটি সিস্টেম বন্ধ করার অনুমতি পেয়েছে। ডেস্কটপ এনভায়রনমেন্টস (যেমন gdmগনোমের জন্য) সাধারণত মূল হিসাবে চালিত হয়, সুতরাং আমার সন্দেহ হয় যে তারা একইভাবে কাজ করে - আপনার সিস্টেম বন্ধ করার অনুমতি নেই তবে আপনি বলতে gdmপারেন এটি বন্ধ করে দিতে চান এবং এটি এটি করতে পারে can তোমার পক্ষে


এটা কি নিরাপদ ?? 'আপনি যা চান তা করতে পারতেন' '
amyassin

7
acpidইতোমধ্যে এর থেকে আলাদা কিছু করার জন্য আপনাকে মূল হতে হবে, সুতরাং আপনার কাছে ইতিমধ্যে অনিরাপদ কাজ করার অনুমতি থাকতে হবে। acpidরুট হিসাবে চালানো সত্ত্বেও, সেলইনাক্সের মতো ম্যাক সিস্টেমগুলি সুরক্ষার জন্য , তাদের অনুমতি দেওয়া জিনিসগুলিকে সীমাবদ্ধ করার জন্য ব্যবহার করাও সম্ভব ।
ওয়ারেন ইয়ং

5
@ এমায়াসিন ওয়েল, এটির জন্য আপনার মূল সুবিধার কী দরকার তা পরিবর্তন করতে; একটি সাধারণ ব্যবহারকারী এটি কী করতে হবে তা বলতে পারে না। তবে acpidকনফিগারযোগ্য, এটি দেখতে পাওয়া হার্ডওয়্যার ইভেন্টের উপর নির্ভর করে এটি বিভিন্ন স্ক্রিপ্টগুলি চালনা করতে পারে (উদাহরণস্বরূপ, আমি acpidপাওয়ার কম্পিউটারে চাপ দেওয়ার পরে আমার কম্পিউটারটি লক করে রেখেছি)
মাইকেল মরোজেক

7
@amyassen যদি কারও কাছে আপনার মেশিনে শারীরিক অ্যাক্সেস থাকে তবে সুরক্ষা নিয়ে চিন্তা করতে খুব দেরী হয় - যদি পাওয়ার বোতামটি চমত্কার শাটডাউনটি ট্রিগার না করে তবে তারা কেবল বিদ্যুতের কর্ডটি টানতে পারে এবং একটি কদাচিৎ বন্ধ করতে পারে cause
শাদুর

3
বলেছে যে 'দূষিত সফ্টওয়্যার' র শাটডাউনটি শুরু করতে বলার জন্য মূল মালিকানা এবং এসইউডি অনুমতি নিতে হবে - এবং আবার যখন এই মুহুর্তে পৌঁছে যায় তখন আপনার সম্ভাব্য শাটডাউনয়ের চেয়ে বেশি উদ্বেগের সমস্যা রয়েছে।
শাদুর

11

মাইকের উত্তরে হার্ডওয়্যার পাওয়ার স্যুইচটি ব্যবহার করার সময় সিস্টেমের কার্যকারিতাটি সঠিকভাবে আলোচনা করা হয়, তবে বেশিরভাগ ডেস্কটপ এনভায়রনমেন্টগুলি dbusনিজেরাই না করে বরং এই উদ্দেশ্যে ব্যবহার করে। উদাহরণস্বরূপ, গনোম ব্যবহার dbus's org.freedesktop.Hal.Device.SystemPowerManagement.Shutdownযখন হরতাল বোতাম এ ক্লিক করেছেন। এটি যখন dbusপ্রেরণ করা হয় তখন বার্তা প্রেরণকারী ব্যবহারকারী একটি শাটডাউন করার জন্য অনুমোদিত কিনা এবং তা যদি হয় তবে এটি সিস্টেম বন্ধ করে দেয় কিনা তা নির্ধারণ করার জন্য কিছু পরীক্ষা করে।

আপনি এটি ব্যবহার করে অনুকরণ করতে পারেন dbus-send। উদাহরণস্বরূপ, আপনার সিস্টেমটি ব্যবহার করে বন্ধ dbusকরতে এই জাতীয় কিছু ব্যবহার করুন:

dbus-send --system --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.