Почему пользователь запускается выполнение процесса при отсутствии входа в систему?

Не рекомендуется запустить Linux аппаратные средства Mac Apple, потому что это полно микропрограммного мрака и нарушений спецификаций (как, например, ACPI, EFI).

Если Ваши аппаратные средства хорошо поддерживаются в соответствии с Linux (потому что необходимые спецификации, открываются/публикуют достаточно, и поставщик на самом деле заботится), затем, Вы получаете большую батарею/управление питанием при каждом текущем основном распределении.

Например, я наблюдал оптимальное управление батареей с различными Ноутбуками ThinkPad при различных дистрибутивах. В других основанных на Intel системах я наблюдал лучшее управление питанием (например, управление вентилятора) в соответствии с Linux, чем под предварительно установленным Windows Vista.

2
07.09.2013, 00:27
1 ответ

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

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

Приложения такой как ssh-agent и gpg-agent не являются интерактивными, таким образом, они не подключены ни к какому терминальному серверу или X-серверу. Нормальная установка принимает меры, чтобы они были уничтожены другими средствами. Часто агент является родительским процессом целой сессии: сценарии запуска сессии располагают выполнить что-то как ssh-agent $SHELL или ssh-agent $SESSION_MANAGER. Тот путь, когда дочерний процесс, который является выходами лидера сессии, агент также, выходит (потому что это - то, как агент разработан). Если агент запускается по-другому, это до менеджера сеансов, чтобы расположить уничтожить его.

Когда Вы экспериментировали при следовании тому учебному руководству, Вы очевидно запустили много процессов агента способами, которыми не ожидал учебный писатель, и они не умерли с Вашей сессией. Можно уничтожить тех, Вы не используете. После того как Вы достигли стабильной установки, проверьте, что агент действительно становится уничтоженным, когда Вы выходите из системы. (Если Вы не предпочитаете выполнять единственный агент и иметь его работающий постоянно, который может быть разумным выбором на персональной машине.)

0
27.01.2020, 23:02
  • 1
    "Часто агент является родительским процессом целой сессии [...] агент также выходит..."; я был с Вами до этой последней точки. Предложение агента запускает некоторые процессы и остается после того, как это - выход дочерних процессов, объяснили бы явления. Это сбивает с толку. попытка –  xtian 13.09.2013, 16:45
  • 2
    @xtian я не понимаю Ваш комментарий. Когда Вы звоните ssh-agent my-session-manager, ssh-agent процесс запускается my-session-manager, ожидает его для выхода и затем выходит. То же идет для gpg-agent. Если у Вас есть агент, это все еще работает, это - потому что Вы запустили агент без аргумента, который требует, чтобы Вы уничтожили его явно, и по некоторым причинам Вы не уничтожили его явно на выходе из системы. –  Gilles 'SO- stop being evil' 13.09.2013, 18:06
  • 3
    "это - потому что Вы запустили агент без аргумента" ==, "потому что это - то, как агент разработан"; это - своего рода шаблон очистки. Выходы агента после всех его игрушек убраны. –  xtian 13.09.2013, 18:23

Теги

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