Ubuntu 18.04 và 20.04
Xin chào,
Tôi có một tập lệnh sao lưu đang chạy dưới dạng dịch vụ systemd (borgmatic) với việc sử dụng systemd-ức chế
để chặn người dùng khởi động lại/ngủ/tắt máy tính. Điều này hoạt động tốt.
Thật không may, khi người dùng cố gắng tắt hoặc khởi động lại máy tính trong Gnome và không có gì xảy ra - tức là hành động đó không thành công - thì người dùng sẽ bối rối và cuối cùng tắt máy tính bằng cách nhấn và giữ nút nguồn :-(
Những gì tôi muốn đạt được là có thể mở một cửa sổ hộp thoại (với sự thoải mái hoặc gửi thông báo) và yêu cầu người dùng đợi một chút - nhưng chỉ sau khi anh ta cố gắng tắt máy.
Tôi đã thử nghiệm một chút với systemd --user
các đơn vị dịch vụ để hộp thoại tiện ích được hiển thị trước các mục tiêu khác nhau (gnome-session-shutdown.target
), nhưng điều đó không hoạt động vì quy trình tắt máy thậm chí không bắt đầu... (Và ngay cả khi nó đã bắt đầu, Xorg dường như đã ngừng hoạt động và zenity không thành công do thiếu HIỂN THỊ.)
Khi nào systemd-ức chế
đang hoạt động, thì điều này được ghi lại khi người dùng cố gắng tắt máy:
ngày 26 tháng 12 21:41:18 t410s gnome-Shell[8333]: endSessionDialog: Không có XDG_SESSION_ID, được tìm nạp từ logind: 17
ngày 26 tháng 12 21:41:19 t410s gnome-Shell[8333]: endSessionDialog: Không có XDG_SESSION_ID, được tìm nạp từ logind: 17
ngày 26 tháng 12 21:41:22 t410s gnome-session[8314]: gnome-session-binary[8314]: CẢNH BÁO: Tắt máy không thành công: GDBus.Error:System.Error.ESTALE: Xử lý tệp cũ
ngày 26 tháng 12 21:41:22 t410s gnome-session-binary[8314]: CẢNH BÁO: Tắt máy không thành công: GDBus.Error:System.Error.ESTALE: Xử lý tệp cũ
ngày 26 tháng 12 21:41:22 t410s gnome-session-binary[8314]: Đang vào trạng thái đang chạy
ngày 26 tháng 12 21:41:22 t410s gnome-Shell[8333]: Ngoại lệ bị bỏ qua từ phương thức dbus: Gio.IOErrorEnum: GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._g_2dio_2derror_2dquark.Code19:
Bạn có biết cách hiển thị thông báo rằng bản sao lưu đang chạy không?
CHỈNH SỬA: Như @matigo đã đề xuất, tôi đã triển khai một cách khắc phục để hiển thị một hình nền khác trong khi quá trình sao lưu đang diễn ra và hy vọng điều tốt nhất...