Запрет пользователям управлять питанием через KDE Plasma

Ответить
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

Всех приветствую!!! Возникла необходимость запретить пользователям завершать работу, перезагружать пк, отправлять в сон и в гибернацию из KDE Plasmа или скрыть кнопки управлением этим функционалом. Перелопатил уже кучу информации в инете. Что только не пробовал... И конфиги sddm правил, и команды всякие пробовал, и kiosk пробовал... Никак не могу добраться до истины..
irton
Сообщения: 1197
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение irton »

кнопку выключения на системном блоке выкорчевали уже?
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

))))) Нет! Кнопка как раз-то и не интересует! Мне нужно, что бы программно из графической оболочки невозможно было управлять питанием! Из консоли тоже нет необходимости лочить.
av179120
Сообщения: 290
Зарегистрирован: 25 май 2020, 07:32
Operating system: РОСА 13 КДЕ6 (х11)

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение av179120 »

Кнопки можно убрать из меню через ПКМ на каждую кнопку "убрать из избранного"...если устроит вас
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

Не совсем понимаю... Из какого меню? Нажимаю "пуск" и у меня там кнопки заблокировать, перезагрузить, выключить. Если нажимаю пкм на них, ничего не происходит...
av179120
Сообщения: 290
Зарегистрирован: 25 май 2020, 07:32
Operating system: РОСА 13 КДЕ6 (х11)

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение av179120 »

Да. они.
Меню Классическое.
На 2-я плазмах5 именно так работает :unknown:
irton
Сообщения: 1197
Зарегистрирован: 30 окт 2021, 04:17
Operating system: Rosa Fresh Xfce

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение irton »

Кнопки поди не убрать без правки кода,
но интернет советует
"юзеров из группы power убрать поробуй ты."
Настройка Polkit (для Linux):

Создайте файл /etc/polkit-1/localauthority/50-local.d/disable-shutdown.pkla.
Добавьте правило, запрещающее действие org.freedesktop.consolekit.system.stop или org.freedesktop.login1.power-off для обычных пользователей.

Блокировка действий: В настройках KDE перейдите в «Поведение рабочей области» -> «Экран блокировки» и убедитесь, что действия выключения недоступны.
av179120
Сообщения: 290
Зарегистрирован: 25 май 2020, 07:32
Operating system: РОСА 13 КДЕ6 (х11)

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение av179120 »

Извиняюсь. Это у меня кнопки ещё и в избранном добавлены.
А так-то это поломка системы, как недавно про Вин11 пишут
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

Группы power не обнаружил. Polkit тоже не сработал... Возможно, я что-то не так делаю... Не опытен в линуксах...
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

av179120 писал(а): 22 янв 2026, 15:41 Извиняюсь. Это у меня кнопки ещё и в избранном добавлены.
А так-то это поломка системы, как недавно про Вин11 пишут
Система только установленнная... Если только из коробки сломаная не идет))
av179120
Сообщения: 290
Зарегистрирован: 25 май 2020, 07:32
Operating system: РОСА 13 КДЕ6 (х11)

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение av179120 »

Недавнее обноаление Вин11 привело некоторые ПК к поломке, когда ОС не реагировала на кнопки!
А вы пытаетесь САМИ добться такого результата???
Ну и irton сказал - кнопку на системнике вы же выламывать не станете?

СМЫСЛ?
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

av179120 писал(а): 22 янв 2026, 16:24 Недавнее обноаление Вин11 привело некоторые ПК к поломке, когда ОС не реагировала на кнопки!
А вы пытаетесь САМИ добться такого результата???
Ну и irton сказал - кнопку на системнике вы же выламывать не станете?

СМЫСЛ?
Объясню. Роса будет использоваться на виртуальной машине. К ней будут подключаться несколько пользователей одновременно по RDP(то-есть физическая кнопка выкл меня не интересует). Пользователи не особо взрослые и обязательные. И если по RDP нажать в Plasma выключение или перезагрузку, то виртуальная машина не выключается, а выключается KDE и у пользователя черный экран навсегда! Что бы вернуть все обратно необходимо физически перезагрузить виртуальную машину, или под другим пользователем из консоли коммандой. Для этого мне и необходимо скрыть или обездействовать данный функционал KDE. В винде в любой все это без проблем 100500-ми способами...
va9(2)
Сообщения: 984
Зарегистрирован: 20 окт 2015, 08:06
Operating system: RF.KDE5.2023.1.x86_64

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение va9(2) »

treenew писал(а): 22 янв 2026, 15:58 Polkit тоже не сработал... Возможно, я что-то не так делаю...
Гопота такой вариант выдал:
Подходит, если это корпоративная машина / киоск / общий ноутбук.
Пример: запретить power-off обычному пользователю

Код: Выделить всё

sudo nano /etc/polkit-1/rules.d/49-disable-power.rules

Код: Выделить всё

polkit.addRule(function(action, subject) {
    if (
        action.id.indexOf("org.freedesktop.login1.power-off") >= 0 ||
        action.id.indexOf("org.freedesktop.login1.reboot") >= 0 ||
        action.id.indexOf("org.freedesktop.login1.suspend") >= 0
    ) {
        return polkit.Result.NO;
    }
});
Перезайди в сессию.

✔️ Кнопки могут исчезнуть полностью
❌ Но выключение станет невозможно даже через терминал
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

va9(2) писал(а): 23 янв 2026, 14:03
treenew писал(а): 22 янв 2026, 15:58 Polkit тоже не сработал... Возможно, я что-то не так делаю...
Гопота такой вариант выдал:
Подходит, если это корпоративная машина / киоск / общий ноутбук.
Пример: запретить power-off обычному пользователю

Код: Выделить всё

sudo nano /etc/polkit-1/rules.d/49-disable-power.rules

Код: Выделить всё

polkit.addRule(function(action, subject) {
    if (
        action.id.indexOf("org.freedesktop.login1.power-off") >= 0 ||
        action.id.indexOf("org.freedesktop.login1.reboot") >= 0 ||
        action.id.indexOf("org.freedesktop.login1.suspend") >= 0
    ) {
        return polkit.Result.NO;
    }
});
Перезайди в сессию.

✔️ Кнопки могут исчезнуть полностью
❌ Но выключение станет невозможно даже через терминал

Вау!!! Почти годнота!!! Пропало всё!!! Кроме перезагрузки... Хотя, вроде, она в правиле тоже прописана...
va9(2)
Сообщения: 984
Зарегистрирован: 20 окт 2015, 08:06
Operating system: RF.KDE5.2023.1.x86_64

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение va9(2) »

treenew писал(а): 23 янв 2026, 14:50 Вау!!! Почти годнота!!! Пропало всё!!! Кроме перезагрузки... Хотя, вроде, она в правиле тоже прописана...
✅ Правильное и полное правило (рекомендую)
Открой правило:

Код: Выделить всё

sudo nano /etc/polkit-1/rules.d/49-disable-power.rules
И замени **целиком** на это:

Код: Выделить всё

polkit.addRule(function(action, subject) {
    if (
        action.id.startsWith("org.freedesktop.login1.power-off") ||
        action.id.startsWith("org.freedesktop.login1.reboot") ||
        action.id.startsWith("org.freedesktop.login1.suspend") ||
        action.id.startsWith("org.freedesktop.login1.hibernate") ||
        action.id.startsWith("org.freedesktop.systemd1.power-off") ||
        action.id.startsWith("org.freedesktop.systemd1.reboot")
    ) {
        return polkit.Result.NO;
    }
});
💡 `startsWith()` — ключевой момент.
Он **перехватывает все варианты**, включая `*-multiple-sessions`.

---

🔄 Применение

Код: Выделить всё

systemctl restart polkit
или просто **перелогинься**.

---

Если хочешь убедиться на 100%

Можно посмотреть, какое именно действие дергает KDE, так:

Код: Выделить всё

journalctl -u polkit -f
И нажать «Перезагрузка» в меню.
В логах будет точный `action.id`.

---

Важное предупреждение

⚠️ После этого:

* **перезагрузка не будет работать нигде**
* ни через меню
* ни через `reboot`
* ни через `systemctl reboot`

Вернуть можно **только удалив правило** или загрузившись под root.

---

Итог

* `login1` — корректно
* проблема была **в неполном списке action.id**
* `reboot` ≠ `reboot-multiple-sessions`
* `startsWith()` — правильное решение
treenew
Сообщения: 8
Зарегистрирован: 20 янв 2026, 11:23
Operating system: Rosa Fresh R12

Re: Запрет пользователям управлять питанием через KDE Plasma

Сообщение treenew »

Спасибо всем откликнувшимся!!! Особенная благодарность Va9(2)!!! Все заработало согласно ТЗ! Все супер!!!!
Ответить

Вернуться в «Обсуждение ROSA Fresh R12 (платформа 2021.1)»