এসএসএসের মাধ্যমে অন্য কোনও ব্যবহারকারী লগ ইন থাকলে শাটডাউন / সাসপেন্ড অক্ষম করুন


15

আমার মনে আছে উবুন্টুর সংস্করণগুলিতে 9.04 এর আশেপাশে অন্য ব্যবহারকারী লগইন থাকলে ব্যবহারকারীকে শাটডাউন (এবং সম্ভবত স্থগিতও করা) সিস্টেমটি নিষ্ক্রিয় করা সম্ভব ছিল policy পলিসিকিট বা অনুরূপ কিছু।

11.04 এ কি করা সম্ভব?

ধন্যবাদ

সম্পাদনা:

কারও যদি প্রয়োজন হয় (নিজের ঝুঁকির জন্য), / usr / lib / pm-utils / bin / pm-action- এ সামান্য পরিবর্তন ব্যবহারকারীকে কেবলমাত্র লগইন করা হয় বা ব্যবহারকারী যখন sudo pm-সাসপেন্ড চালাবেন মেশিনকে সাসপেন্ড করতে দেয়। সম্ভবত কোডের সেরা টুকরো নয়, তবে আপাতত কাজ করে।

diff -r 805887c5c0f6 pm-action
--- a/pm-action Wed Jun 29 23:32:01 2011 +0200
+++ b/pm-action Wed Jun 29 23:37:23 2011 +0200
@@ -47,6 +47,14 @@
    exit 1
 fi

+if [ "$(id -u )" == 0 -o `w -h | cut -f 1 -d " " | sort | uniq | wc -l` -eq 1 ]; then
+                echo "either youre root or root isnt here and youre only user, continuing" 1>&2
+                else
+                echo "Not suspending, root is here or there is more users" 1>&2
+                exit 2
+                fi
+
+
 remove_suspend_lock()
 {
    release_lock "${STASHNAME}.lock"

প্রশ্ন এখনও দাঁড়িয়ে আছে, যখন একাধিক ব্যবহারকারীর লগইন করা হয়েছে (সন্ধ্যা-সাসপেন্ড বা থামানো (বা অন্য হ্যাক) পুনরায় লিখে না দেওয়া) তখন কি শাটডাউন নিষিদ্ধ করা বা স্থগিত করা সম্ভব?

উত্তর:


1

আপডেট (এনজোটিবকে ধন্যবাদ):

আমি মূল উত্তরে তালিকাভুক্ত ফাইলগুলি সম্পাদনা করা উচিত নয় , কারণ প্যাকেজ আপডেটটি আপনার পরিবর্তনগুলি ওভাররাইট করতে পারে।

ম্যানুয়াল পৃষ্ঠাতে /var/lib/polkit-1/localauthority/বর্ণিত কনফিগারেশন ফাইলগুলি ব্যবহার করে পলিসিকিট পরিবর্তে কনফিগার করা উচিত pklocalauthority

আসল উত্তর:

এইচএএল অবমূল্যায়নের সাথে সাথে এটি এখন নিয়ন্ত্রণ করা হয় /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy

সেট allow_activeদুই কর্ম থেকে নিচে দেখানো বিভাগে no(তারা সেট করা হয় auth_admin_keepডিফল্টরূপে):

  <action id="org.freedesktop.consolekit.system.stop-multiple-users">
    <description>Stop the system when multiple users are logged in</description>
    <message>System policy prevents stopping the system when other users are logged in</message>
    <defaults>
      <allow_inactive>no</allow_inactive>
      <allow_active>no</allow_active>
    </defaults>
  </action>

...

  <action id="org.freedesktop.consolekit.system.restart-multiple-users">
    <description>Restart the system when multiple users are logged in</description>
    <message>System policy prevents restarting the system when other users are logged in</message>
    <defaults>
      <allow_inactive>no</allow_inactive>
      <allow_active>no</allow_active>
    </defaults>
  </action>

1
ম্যানুয়াল পৃষ্ঠাতে /var/lib/polkit-1/localauthority/*.dবর্ণিত হিসাবে আপনার নীতি ফাইলটি আপনার ডিরেক্টরিগুলির কোনও একটিতে সেট করা উচিত pklocalauthority/usr/share/polkit-1/actions/org.freedesktop.consolekit.policyকনফিগারেশন ফাইলগুলিতে থাকা প্যাকেজগুলি (যেমন ) দ্বারা ইনস্টল করা ফাইলগুলি পরিবর্তন করতে এড়াবেন /etc/
এনজোটিব

@ স্কটেল আপনি সঠিকভাবে পড়তে আপনার উত্তর সম্পাদনা করতে পারেন? এখন যেমন এটি পড়ছে এটি সম্পূর্ণ বিভ্রান্তিকর।
জর্জি কাস্ত্রো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.