Belirli kullanıcıların kapatılmasını, askıya alınmasını vb. Önlemenin en “Ubuntu” yolu nedir?


21

Geleneksel bir Unix sisteminde kök olmayan kullanıcılar bunu yapamaz. Kullanıcılara modern masaüstü ortamlarında bu yeteneği sağlayan nedir ve bunu kullanıcı başına veya grup bazında nasıl devre dışı bırakacağım?

Hiç kimsenin kapanmasını / askıya alınmasını engellemek için harika bir yöntem gördüm , ancak ideal olarak aradığım şey belirli kullanıcıların (belirli bir kullanıcı grubuna ekleyerek / kaldırarak) kapatma işlemini gerçekleştirmesini engellemek. , yeniden başlat, askıya al.

Yanıtlar:


20

Diğer soruda belirtildiği gibi, bu eylemleri PolicyKit'in yerel otorite sistemi üzerinden kontrol edebilirsiniz.

/etc/polkit-1/50-local.d/restrict-shutdown.pklaİçeriği gibi bir dosya oluşturursanız :

[Disable shutdown/etc for group restricted]
Identity=unix-group:restricted
Action=org.freedesktop.consolekit.system.stop;org.freedesktop.consolekit.system.restart;org.freedesktop.upower.suspend;org.freedesktop.upower.hibernate
ResultAny=no
ResultInactive=no
ResultActive=no

Bu, grubun herhangi bir üyesinin restrictedeşleştirilen eylemleri gerçekleştirmesini önleyecektir . Eğer bireysel kullanıcıları kısıtlamak istiyorsanız Alternatif olarak, yerini unix-group:restrictedile unix-user:user1;unix-user:user2;.... Bu politikaya uymayan herhangi bir kullanıcı varsayılan davranışla sonuçlanmalıdır.


Artık 14.04.1'de çalışmıyor.
5’de

0

Bu dosyayı kök olarak oluşturun ve düzenleyin:

/etc/polkit-1/localauthority/50-local.d/power-management.pkla

Aşağıdakileri kopyalayıp yapıştırın:

[Disable shutdown/restart for users jim jane]
Identity=unix-user:jim;unix-user:jane
Action=org.freedesktop.login1.reboot;org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no

[Disable suspend/hibernate for users jim jane]
Identity=unix-user:a;unix-user:vvpinker
Action=org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.