Два процесса ведут себя по-разному при запуске одной и той же команды и одного и того же двоичного файла.

Два процесса ведут себя по-разному при запуске одной и той же команды и одного и того же двоичного файла.

На сервере Ubuntu есть приложение, которое запускает экземпляр FFMPEG. Этот экземпляр продолжает работать нормально.

Но когда я запускаю ту же команду с тем же исполняемым двоичным файлом в терминале, он завершает работу через 3 или 4 минуты с сообщением в журнале «Conversion failed!».

Оба процесса запускаются от имени пользователя root и используют одни и те же .soбиблиотеки.

Я также просмотрел переменные окружения правильного процесса с помощью tr '\0' '\n' < /proc/62243/environ:

LANG=en_US
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOME=/root
LOGNAME=root
USER=root
SHELL=/bin/sh
INVOCATION_ID=89a8c6c4b24d4a1b919e0cf529366876
JOURNAL_STREAM=9:308
LD_LIBRARY_PATH=/tmp/_MEIDvDVDH
AV_LOG_FORCE_COLOR=
AV_LOG_FORCE_256COLOR=

Я создал скрипт оболочки для установки переменных среды перед моей командой:

export var1=value
export var2=value
export var3=value
.
.
.
my_command_here

Проблема все еще существует.

Я не могу понять почему. И это стало головной болью.

Любая помощь будет оценена по достоинству.

решение1

Возможно, вы сможете запустить strace ffmpegи посмотреть, какой системный вызов был вызван в момент прерывания программы, чтобы получить больше информации.

Что касается проблемы, то я предполагаю, что она может быть связана с тем, что ресурсов (например, памяти) недостаточно для запуска второй программы?

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