Używam skryptu do tworzenia przyrostowych kopii zapasowych partycji btrfs z jednego dysku na drugi.
Skrypt jest uruchamiany przez cron.weekly o losowej porze dnia.
Jeśli zamknę system podczas działania skryptu, mam problem ze starymi kopiami zapasowymi usuniętymi i nowymi, które nie zostały utworzone.
Czy istnieje sposób na skonfigurowanie systemu tak, aby czekał na zakończenie skryptu?
Używam Ubuntu 16.04 z systemd.
sudo
użytkownika. Łączę przeszłą odpowiedź dla GUI. Daj mi znać, jeśli chcesz dostosować go do swoich potrzebsystemd-inhibit
jest trochę łatwiejsze dla oczu? >: - DOdpowiedzi:
W systemie Ubuntu 16.04+ korzystającym z systemd (domyślnie).
===
Test:
===
Istnieje 7 zamków :
sleep
hamuje zawieszanie systemu i hibernację wymagane przez (nieuprzywilejowanych) użytkownikówshutdown
hamuje wyłączenie systemu wysokiego poziomu i ponowne uruchomienie wymagane przez (nieuprzywilejowanych) użytkownikówidle
hamuje przejście systemu w tryb bezczynności, co może spowodować automatyczne zawieszenie lub wyłączenie systemu w zależności od konfiguracji.handle-power-key
hamuje obsługę niskiego poziomu (tj. logind-wewnętrzny) klucza sprzętowego zasilania systemu, umożliwiając (prawdopodobnie nieuprzywilejowany) zewnętrzny kod do obsługi zdarzenia.handle-suspend-key
hamuje obsługę niskiego poziomu klucza zawieszenia sprzętowego systemu.handle-hibernate-key
hamuje obsługę niskiego poziomu klucza hibernacji sprzętowej systemu.handle-lid-switch
hamuje obsługę niskiego poziomu systemowego przełącznika pokrywy urządzenia.Prawdopodobnie chcesz również zapobiec
suspend
,idle
ihibernate
.Przykład użycia „menedżera pakietów” :
Podobnie do tego możesz zakodować swoją wersję i dodać „zamknięcie” na końcu tego skryptu (lub dodać sposób, aby ustalić, że zamknięcie musi być następną czynnością).
źródło
W BackInTime używam kilku różnych metod DBus do pracy na wszystkich głównych DE. Jedynym minusem jest to, że to nie zadziała,
root
ponieważroot
nie madbus.SessionBus
.źródło