Как посмотреть параметры запущенного процесса в Linux?

«Как посмотреть параметры запущенного процесса в Linux?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

Основные команды:

  1. ps — показывает список процессов. Ключевые опции:

    # Показать все процессы с полной командной строкой
    ps aux
    # Показать дерево процессов (полезно для поиска родительских процессов)
    ps auxf
    # Показать только конкретный процесс по PID и его полную командную строку
    ps -p <PID> -o args
  2. Файловая система /proc — содержит детальную информацию о каждом процессе в каталоге /proc/<PID>/.

    # Прочитать исходную командную строку (аргументы разделены нулевыми символами)
    cat /proc/<PID>/cmdline | tr '' ' '
    # Просмотреть переменные окружения процесса
    cat /proc/<PID>/environ | tr '' 'n'
    # Просмотреть текущий рабочий каталог процесса
    ls -la /proc/<PID>/cwd

Практический пример в DevOps: Допустим, контейнер с приложением падает. Подключаемся к хосту, находим PID проблемного процесса через ps aux | grep <имя_приложения>, а затем смотрим cmdline и environ, чтобы убедиться, что он запущен с правильными аргументами и переменными (например, флагами JVM, путями к конфигам). Это помогает отличить проблему в коде приложения от ошибки в параметрах его запуска.