Как привязать службу systemd уровня пользователя -к сетевым событиям?

В LinuxZathuraхранит закладки в следующем файле:

/home/user/.local/share/zathura/bookmarks

Zathuraсохраняет быстрые отметки в следующем файле:

/home/user/.local/share/zathura/history

в этом файле истории быстрые отметки сохраняются как jumplist. К сожалению, ваши конкретные письма быстрого доступа не сохраняются в Zathura. Вы потеряете их, когда закроете документ. Но ваши места прыжков в этом файле сохраняются. И вы можете использовать ctrl+o, ctrl+i для перехода между местами даже после закрытия и открытия документа.

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

Таким образом,

Затура также портативна.

2
19.09.2021, 07:23
1 ответ

Запустите systemctl --userбез каких-либо других параметров, чтобы просмотреть список всех устройств, с которыми могут взаимодействовать службы уровня пользователя -. Вы, вероятно, найдете что-то вроде sys-subsystem-net-devices-eno1.device.

Но обратите внимание, что это может быть неоптимальный способ реагировать на изменения состояния сети :вместо этого вы можете поместить сценарий в /etc/NetworkManager/dispatcher.d/или любой из его подкаталогов -, который будет выполняться в любое время, когда есть сетевое событие. Прочтите главу DISPATCHER SCRIPTSпо man NetworkManagerдля получения подробной информации.

Или, если это должен быть уровень пользователя -без root-доступа,вы можете подключиться к системе D -Bus и отслеживать события NetworkManager. Вы можете начать с:

gdbus monitor --system --dest org.freedesktop.NetworkManager

и уточняйте оттуда в соответствии с вашими конкретными потребностями. Например, вы можете искать события org.freedesktop.NetworkManager.StateChangedили какую-то конкретную разновидность событий org.freedesktop.NetworkManager.Connection.Active.PropertiesChanged.

Подключение к шине D -может быть подходящим решением, если вы используете более продвинутые языки сценариев, такие как Perl или Python, а не только сценарии оболочки; эти языки имеют модули, которые могут более легко взаимодействовать с шиной D -.

3
19.09.2021, 10:03

Теги

Похожие вопросы