есть что-то вроде демона для каждого пользователя?

Мне нужно запустить некоторые фоновые процессы, которые живут до тех пор, пока я вошел в систему с определенным пользователем.

Существует ли что-то вроде демона для каждого пользователя? Я знаю только о глобальных демонах, которые живут от запуска компьютера до выключения (или ручного запуска / убийства).

на данный момент я создал скрипт, который проверяет, существует ли этот процесс и создает процесс, если он этого не делает. Затем этот скрипт запускается с помощью команды nohup из моего .profile . Таким образом, процесс запускается при запуске и запускается только один раз (даже при rxvt и использовании нескольких rxvt терминов). Тем не менее, он никогда не убивается после того, как я вхожу в журнал (что не является катастрофой, но чище также прекратить процесс).

  • Монетный двор - не удается войти в «домашний каталог ...»
  • Ошибки после автономной установки Kali на Dell XPS 13
  • Автолог вопрос с LightDM и Ubuntu 14.04
  • Запуск сценария оболочки при неудачных попытках входа в систему X
  • Приветственный баннер, останавливающий scp
  • Bash .hushlogin, сохранить последнее время входа и хост
  • Как изменить подсказку входа tty?
  • Элементарная ОС: случайно установленный экран входа в Ubuntu
  • 3 Solutions collect form web for “есть что-то вроде демона для каждого пользователя?”

    systemd позволяет пользователям запускать собственные экземпляры systemd для управления частными демонами.

    Если у вас уже установлен systemd, все, что вам нужно сделать, это запустить systemd --user и управлять вашими службами, запустив systemctl --user . Пользовательские службы будут искать в ~/.config/systemd/user .

    По умолчанию systemd будет убивать пользовательские службы при выходе из системы (по вашему усмотрению). Это поведение может быть изменено, если вы задерживаете пользователя с помощью команды loginctl --enable-linger $USER .

    Мор можно найти на странице ArchWiki .

    Служба dbus предназначена для того, чтобы … что-то вроде этого, можно использовать для того, чтобы :-). Каждый пользователь dbus-деамон запускается, когда пользователь входит в рабочую среду и заканчивается при выходе пользователя из системы (см. --exit-with-session страницу dbus-launch и опции --exit-with-session ). Служба dbus может быть запущена вместе с экземпляром dbus или когда интерфейс службы называется первым через dbus. Каждый пользователь может иметь свои собственные спецификации услуг dbus, определенные в скрытом каталоге в домашнем доме пользователей или глобально в /etc См. Домашнюю страницу dbus на freedesktop для большой документации и справочной реализации.

    В наши дни я использую только дистрибутивы на основе Debian. Все они имеют сценарии в /etc/X11/Xsession.d которые очень часто изменяют строку, которая в самом конце будет оцениваться как команда, запускающая выбранную среду рабочего стола. Существует один такой скрипт для dbus, который добавляет команду с dbus-оболочкой dbus-launch . Эта оболочка запускает dbus-сервер и, по крайней мере, на ванильном Debian (и я готов сказать «на всех дистрибутивах на Debian»). Для dbus-launch предоставляется опция --exit-with-session .

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

    Если вы используете BASH в качестве оболочки, вы можете попытаться выполнить некоторое обнаружение в ~ / .bash_logout и завершить работу.

    То, что вы, вероятно, ищете в более долгосрочной перспективе, взаимодействует (например, через D-Bus) с чем-то вроде ConsoleKit или logd системы .

    Linux и Unix - лучшая ОС в мире.