Почему результат исполнения команды из терминала и из python отличается?
Имеется сервер Apache 2, на нем с помощью mod_wsgi развернуто веб-приложение на flask (пользователь u1). В системе есть пользователь u2, на котором запущена сессия tmux. Если вызвать bash скрипт из под flask (модуль python subprocess) с содержимым sudo -u u2 tmux ls то результатом исполнения будет вывод no server running on /tmp/tmux-1001/default. Если вызвать тот же самый скрипт из под ssh (тот же пользователь u1) результатом будет правильный вывод u2: 1 windows. В чем может быть причина такого поведения?
planc, к сожалению, ни одно из решений не помогло. И с -i и с явным указанием пути к сессии выполнение из под фласка возвращает no server running on /tmp/tmux-1001/default
Vitaly Karasik, единственное отличие - переменная TERM. При исполнении напрямую она равна xterm-256color, через фласк - unknown. Что можно с этим сделать?