Я не могу думать ни о чем специальном с/tmp, который должен make-файлы быть периодически не быть там./tmp является просто обычным каталогом с немного специальными полномочиями, разрешающими всем бездельничать, но ограничить некорневых пользователей не владением файлами для удаления их.
Действительно ли там что-нибудь является внешним к Вашей программе, изменяющей/изменяющей тот файл, или, действительно ли Ваша программа является многопоточной и работает с тем файлом? Если так, это могло быть состояние состязания.
Для проверки, если это верно, Вы могли использовать inotify, как Kyle предполагает (Вы, вероятно, после удаляют и перемещенный из событий) видеть точно, что происходит с файлом.
С другой стороны, Вы могли попробовать к статистике файл и видеть, является ли это ctime, и/или mtimes совпадают с тем, когда fopen перестал работать с ENOENT.
Установка nc
на ssh.company.com, и настроенный строка файла конфигурации в ~/.ssh/config
следующим образом:
Host internalserver
ProxyCommand ssh user@ssh.company.com nc internalserver 22
Затем подключение к internalserver
с пользователем по Вашему выбору.