Я не понимаю, что такое Linux и sys-admin, но я недавно установил xscreensaver Ubuntu 18.04.4 LTS, как описано здесь и Я выполнил все шаги. Если я заблокирую экран с помощью Cntrl + Alt + L, запустится xscreensaver.Но если я жду, пока экран не истечет, он просто станет черным, как это делает gnome-screensaver, несмотря на то, что у меня установлен gnome-screensaver. Любопытно, что когда я набираю locate screensaver.desktop
, я получаю:
/etc/xdg/autostart/gnome-screensaver.desktop
/home/nestor/.config/autostart/xscreensaver.desktop
Я боялся удалить файл gnome-screensaver.desktop
, поэтому я все прокомментировал в нем. Тем не менее, проблема сохраняется.
Если после перезапуска я набираю xscreensaver -nosplash
, я получаю:
xscreensaver: 18:39:29: already running on display :0 (window 0x1a000de)
Думаю, это хорошо и исключает возможность того, что заставка просто не запускается автоматически при запуске.
Затем я выполнил инструкции здесь , и я сделал:
sudo apt-get remove --auto-remove gnome-screensaver
sudo apt-get purge --auto-remove gnome-screensaver
systemctl --user enable xscreensaver.service
systemctl --user start xscreensaver.service
После последней команды я получил сообщение:
Failed to start xscreensaver.service: Unit xscreensaver.service is not loaded properly: Exec format error.
See user logs and 'systemctl --user status xscreensaver.service' for details.
В упомянутом журнале написано:
● xscreensaver.service - XScreenSaver
Loaded: error (Reason: Exec format error)
Active: inactive (dead)
апр 03 18:07:22 nestor-Eve-V systemd[1492]: /usr/lib/systemd/user/xscreensaver.service:5: Executable path is not absolute: xscreensaver
апр 03 18:07:22 nestor-Eve-V systemd[1492]: xscreensaver.service: Cannot add dependency job, ignoring: Unit xscreensaver.service is not loaded properly: Exec format error.
Это говорит о том, что проблема заключается в «Путь к исполняемому файлу. не является абсолютным », поэтому я открыл файл /usr/lib/systemd/user/xscreensaver.service
, и он содержит:
[Unit]
Description=XScreenSaver
[Service]
ExecStart=xscreensaver
[Install]
WantedBy=default.target
Нужно ли мне вводить абсолютный путь? Есть идеи, как включить правильную работу заставки? спасибо
Спасибо за вопрос, @NeStack.
Это сообщение об ошибке кажется ясным:
systemd[1492]: /usr/lib/systemd/user/xscreensaver.service:5: Executable path is not absolute: xscreensaver
Итак, я открыл файл с помощью sudo vim /usr/lib/systemd/user/xscreensaver.service
и увидел это:
[Service]
ExecStart=xscreensaver
Я заменил его на ExecStart=/usr/bin/xscreensaver
, после чего systemctl --user start xscreensaver.service
больше не выдает ошибку.
`