Как просмотреть файлы, сгенерированные systemd-xdg-autostart-generator?

Вопрос или проблема

Я выполнил следующую команду:

$ systemctl --user list-dependencies xdg-desktop-autostart.target
xdg-desktop-autostart.target
○ ├─app-geoclue\x2ddemo\[email protected]
○ ├─app-gnome\x2dinitial\x2dsetup\x2dfirst\[email protected]
○ ├─app-gnome\x2dshell\x2doverrides\[email protected]
○ ├─app-im\[email protected]
○ ├─app-nemo\[email protected]
○ ├─app-nm\[email protected]
○ ├─app-orca\[email protected]
○ ├─app-org.gnome.Evolution\x2dalarm\[email protected]
○ ├─[email protected]
○ ├─[email protected]
○ ├─app-user\x2ddirs\x2dupdate\[email protected]
○ ├─app-xdg\x2duser\x2ddirs\[email protected]
○ └─app-yandex\[email protected]

Здесь я хочу узнать местоположение указанных файлов, в основном app-nemo\[email protected] (чтобы я мог просмотреть содержимое файла).

Я проверил документацию systemd-xdg-autostart-generator. Ничего не нашел.

Как я могу это сделать?

Файл автоматически создается systemd-xdg-autostart-generator.
Он смотрит на файлы .desktop в этих двух местах
и затем создает файл .service, который используется systemd.
Вы должны редактировать и просматривать оригинальные .desktop файлы.

  • специфические для пользователя: $XDG_CONFIG_HOME/autostart (~/.config/autostart по умолчанию)

  • системные: $XDG_CONFIG_DIRS/autostart (/etc/xdg/autostart по умолчанию)

Смотрите:

Местоположения файлов единиц и символических ссылок, генерируемых динамически systemd, указаны в следующих страницах man:

systemd-xdg-autostart-generator(8):

systemd-xdg-autostart-generator реализует systemd.generator(7).

systemd.generator(7):

По умолчанию эти пути являются временными директориями, которые включены в путь поиска systemd…

  1. normal-dir:
    /run/systemd/generator
    $XDG_RUNTIME_DIR/systemd/generator

  2. early-dir
    /run/systemd/generator.early
    $XDG_RUNTIME_DIR/systemd/generator.early

  3. late-dir
    /run/systemd/generator.late
    $XDG_RUNTIME_DIR/systemd/generator.late

Директории normal, early и high имеют нормальные, высокие и низкие приоритеты
соответственно.

Ответ или решение

Чтобы просмотреть файлы, созданные генератором systemd-xdg-autostart-generator, необходимо понимать, как данным компонентом системы управляются файлы автозагрузки. Генератор создает .service файлы на основе стандартных файлов .desktop, расположенных в системе.

1. Понимание автозагрузки через XDG

Файлы автозагрузки, которые используются в окружениях, соответствующих стандартам XDG, находятся в следующих директориях:

  1. Локальные (пользовательские) файлы:
    Путь по умолчанию: ~/.config/autostart
    Это место для пользовательских конфигураций, где пользователь может хранить свои собственные .desktop файлы.

  2. Системные файлы:
    Путь по умолчанию: /etc/xdg/autostart
    Эти файлы действуют для всех пользователей и могут содержать глобальные настройки автозагрузки.

2. Как находятся сгенерированные файлы

Используя команду:

systemctl --user list-dependencies xdg-desktop-autostart.target

вы можете получить список зависимостей, которые относятся к целевой задаче автозагрузки. В вашем случае, например:

app-nemo@[email protected]

Это обозначает, что для приложения Nemo был сгенерирован соответствующий .service файл, на основе .desktop файла.

3. Поиск, просмотр и редактирование файлов

  1. Поиск файлов .desktop:
    Чтобы просмотреть содержимое, вы можете открыть их в текстовом редакторе. Например:

    • Для пользовательской директории:
      nano ~/.config/autostart/nemo.desktop
    • Для системной директории:
      nano /etc/xdg/autostart/nemo.desktop
  2. Список сгенерированных .service файлов:
    Файлы, созданные systemd-xdg-autostart-generator, обычно располагаются в следующих директориях:

    • /run/systemd/generator
    • $XDG_RUNTIME_DIR/systemd/generator

    Для проверки сгенерированных файлов можно использовать команду ls:

    ls /run/systemd/generator

4. Применение знаний

Зная местоположение .desktop файлов и сгенерированных .service файлов, вы сможете производить необходимые изменения и настройки автозагрузки для своих приложений в окружении GNOME или другом совместимом графическом интерфейсе.

Заключение

Возможность управлять автозагрузкой через XDG и systemd позволяет повысить гибкость использования вашей системы. Важно помнить о строгом следовании путям и стандартам, описанным в документации, чтобы избежать конфликтов и ошибок при запуске программ. Если у вас остались вопросы или требуются дополнительные разъяснения по работе с системными службами, не стесняйтесь обращаться за помощью.

Оцените материал
Добавить комментарий

Капча загружается...