TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.52K subscribers
Post #624 542
/proc/PID/cwd: когда процесс работает не из того каталога

У каждого Linux-процесса есть текущий рабочий каталог. Обычно мы видим его через shell, но для уже запущенного процесса можно посмотреть напрямую через /proc.

readlink /proc/1234/cwd


Например:

/var/lib/app


Это каталог, относительно которого процесс разрешает относительные пути.

▪️Найти процессы с неожиданным cwd

for p in /proc/[0-9]*; do
pid=${p##*/}
cwd=$(readlink "$p/cwd" 2>/dev/null) || continue
printf '%-8s %s\n' "$pid" "$cwd"
done


Теперь можно быстро увидеть, какие процессы находятся в /tmp, /dev/shm, домашних каталогах или других необычных местах.

▪️Почему это может быть важно

Приложение может запускаться из:

/opt/myapp


но после работы оказаться в другом каталоге из-за chdir().

Особенно интересны процессы с:

/tmp
/dev/shm
/home/user


если для конкретного сервиса такое поведение не ожидается.

▪️Связь с systemd

Для unit можно задать:

[Service]
WorkingDirectory=/var/lib/myapp


А фактическое значение уже запущенного процесса проверить через /proc.

Это полезнее, чем тупо смотреть конфигурацию: /proc/PID/cwd показывает состояние конкретного процесса прямо сейчас.

BashTex 📱 #bash #proc
  • 👍 6
More from @bash_tex
  1. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  2. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  3. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
  4. Oct 1, 2026flock vs fcntl - почему две блокировки одного файла могут вести себя совершенно по-разному…
  5. Sep 30, 2026DEBUG trap - как Bash выполняет код перед каждой командой В Bash есть специальный DEBUG tr…
  6. Sep 29, 2026tee + process substitution: один поток и несколько получателей Иногда нужно одновременно:…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →