Поддерживающие ресурсы

Поддерживающие ресурсы

Я ввел ps -p 3454 -o commandи получил следующий результат:

COMMAND
/usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh

Что -D -aздесь имеется в виду?

Если я использую ps -p 3454 -o comm, я не получаю вывод /run/user...., а только команду ssh-agent.

Что означает здесь /run/user....? Также comm=и commто же самое?

решение1

В соответствии сps(1) — Страница руководства Linuxи согласно моему тестированию, вот некоторые детали, которые помогут прояснить этот вывод. Это поможет вам лучше понять, что происходит с psкомандой, которую вы запускаете.

Вся твоя команда такова:ps -p 3454 -o command

  • Часть ps -p 3454этого получает сведения об активном запущенном процессе для pid3454
  • Эта -o commandчасть выводит фактическую команду и аргументы запущенного процесса, привязанные к pid

Когда вы запустили это, чтобы отобразить 3453детали PID, это былоssh-агентпроцесс. Используя -o commandвыходные данные необработанной команды и аргументы для ssh-agentкоторых использовались -D -aпараметры в момент, когда psкоманда делала снимок.

Использование just -o commна самом деле просто выводит только имя исполняемого файла pid. Это на самом деле просто означает -o commи -o commandотображает различные детали процесса, который вы запрашиваете.


Поддерживающие ресурсы

  • ps(1) — Страница руководства Linux

    • comm:

      • Показать имя команды (только имя исполняемого файла). Изменения имени команды не будут показаны. Вывод в этом столбце может содержать пробелы.
    • command:

      • Показать команду со всеми ее аргументами в виде строки. Могут быть показаны изменения аргументов. Вывод в этом столбце может содержать пробелы.

решение2

"-D -a" не имеет никакого отношения к PS. PS выводит список процессов, а запущенный процесс - это "/usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh" - т.е. -D -a - это параметры, передаваемые в ssh-agent.

Относительно ssh-agent: -D означает запуск в фоновом режиме, а -a означает «привязаться ко всем адресам».

В моей системе Ubuntu я вижу 2 процесса «ssh-agent» — один в фоновом режиме, предположительно, связанный с тем, что я делаю в командной строке, а второй является клиентом сеанса рабочего стола, поэтому, скорее всего, находится на переднем плане, чтобы взаимодействовать с ним. (Действительно, когда я завершаю процесс, связанный с процессом с параметрами -D -a, и запускаю сеанс ssh с рабочего стола, он снова запрашивает у меня аутентификацию и перезапускает этот процесс)

Связанный контент