Jak mogę wyłączyć przycisk wyłączania i ponownego uruchamiania w sddm na Debianie?


10

Co próbowałem: utworzyłem plik /etc/sddm/sddm.conf(również próbowałem /etc/sddm.conf) o następującej treści:

[General]
HaltCommand=true
RebootCommand=true

Niestety to nie pomogło - przycisk restartu nadal działał. Najlepiej, aby przyciski również zniknęły.

Edycja: Chciałbym wyjaśnić, że nie oczekuję trueinterpretacji jako wartości boolowskiej, oczekuję, że będzie interpretowana jako polecenie. A trueto ważne, ponieważ istnieje komenda wykonywalny /bin/truena większości systemów Linux, który nie robi nic oprócz powrocie sukces status wyjścia. Aby mieć pewność, że nie jest to problem ze ścieżką, próbowałem również ustawić to, /bin/trueco również nie pomogło.


1
Czy po wprowadzeniu tej zmiany ponownie uruchomiłeś SDDM (lub uruchomiłeś ponownie)?
— telcoM

Nic nie możesz zrobić, aby powstrzymać mnie od wyłączania komputera, jeśli pozwolisz mi go dotknąć. Jeśli mogę nacisnąć przycisk zasilania, większość maszyn wyłączy się po 4 sekundach. Jeśli mogę dotknąć przewodu zasilającego, mogę go odłączyć.
— ctrl-alt-delor

2
@ ctrl-alt-delor Po pierwsze, nie zawsze masz fizyczny dostęp tylko dlatego, że możesz uzyskać dostęp do ekranu logowania. Ale w moim przypadku nie chodzi o bezpieczeństwo, po prostu chcę zapobiec przypadkowym wyłączeniom.
— W.Mann

Odpowiedzi:


1

Jeśli nie chcesz, aby się wyświetlały, ustaw wartość false w /etc/sddm/sddm.conf. Teoretycznie zresztą, ponieważ nie wydaje się to faktyczną opcją wymienioną w dokumentacji. np. HaltCommand = ma wskazywać na polecenie, które ma zostać wykonane po wysłaniu żądania zamknięcia, więc ustawienie true powinno być faktycznie takie samo jak domyślne, czyli „/ usr / bin / systemctl poweroff”, a false oznacza przeciwieństwo to powinno być to, czego chcesz.

[General]
HaltCommand=false
RebootCommand=false

W dokumentach dozwolony jest sposób, aby były widoczne i po prostu sprawiały, że nie działały, ustawiając na / path / to / some / script / których zawartość powinna być podobna do:

#!/bin/bash
notify-send "Shutdown/Reboot not allowed!"

Aby to zrobić, musisz zainstalować libnotify-bin, ale powinien on nadal wyłączać tę opcję.

Powyższe powinno zadziałać, jednak wiele osób ma z tym problemy i wraca do KDM. Odnośnik tutaj: https://github.com/sddm/sddm/issues/611


Niestety nie działa to na moim komputerze. Przyciski zachowują się zgodnie z oczekiwaniami.
— AF7

1
@ AF7 Wszystko, co mogę zrobić, to skierować cię w stronę, aby uzyskać więcej informacji. Ponieważ kopałem głębiej, wydaje się, że wiele osób ma ten sam problem. Niestety bez rozwiązań. github.com/sddm/sddm/issues/611
— Michael Prokopec 30.01.2019

@MichaelProkopec Dodałem wyjaśnienie, dlaczego to ustawiłem true. Dzięki za link.
— W.Mann

@ W.Mann Ciekawy problem Mam ten sam problem w wirtualnej skrzynce, którą skonfigurowałem, aby sprawdzić, czy mogę to naprawić i nie mam jeszcze radości. Nie ma za co, dzięki za złe wieści.
— Michael Prokopec

0

Powinieneś umieścić tutaj swoje zmiany w tym pliku /etc/sddm.conf.d

[General]
HaltCommand=true
RebootCommand=true

Następnie uruchom ponownie i sprawdź, czy przyciski nadal działają. To powinno rozwiązać problem. Możesz przeczytać więcej o SDDM na arch wiki: https://wiki.archlinux.org/index.php/SDDM#Configuration


1
Uważam, że masz na myśli, że powinieneś utworzyć plik konfiguracyjny w tym samym folderze, a nie edytować /etc/sddm.conf.d, który jest folderem.
— AF7

Czy możesz po prostu zrestartować usługę (lub lepiej powiedzieć tej usłudze, aby ponownie załadowała swoją konfigurację). Nie powinieneś ponownie uruchamiać systemu.
— ctrl-alt-delor

Jaka byłaby różnica? Te .dkatalogi są zazwyczaj tylko tam, aby uniknąć konieczności zmiany seryjnej do plików konfiguracyjnych pakietu zainstalowanych na rozbudowę i umożliwić inne pakiety łatwo rozszerzyć konfigurację. Poza tym nie ma go /etc/sddm.conf.dw Debianie (stretch), a manpage wyraźnie określa /etc/sddm.conf jako plik konfiguracyjny. Właśnie znalazłem, że sddm --example-configdrukuje bieżącą konfigurację i szanuje zawartość pliku /etc/sddm.conf. Po prostu nie zachowuje się tak, jak bym się spodziewał.
— W.Mann

-1

Czy twój system używa systemd? W takim przypadku systemd instaluje moduł obsługi klucza Poweroff, który można wyłączyć, edytując /etc/systemd/logind.conf za pomocą:

HandlePowerKey=ignore

Może także wyłączyć (miękki) przycisk zasilania na komputerze (nie próbowałem tego).


Aby wyjaśnić oryginalne pytanie: Nie chcę wyłączać żadnego przycisku sprzętowego, ale przyciski pokazane w sddm na ekranie.
— W.Mann
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.