У меня есть часть скрипта bash, которую я выполняю от имени пользователя root:
rm -f ../../include/profile.h; \
cp profile.h ../../include/profile.h
файл ../../include/profile.h
идет речь, имеет разрешения:
-rw-r--r-- 1 root root 12178 Nov 5 02:00 ../../include/profile.h
Большую часть времени, фрагмент работает нормально, но очень редко, невозможно воспроизвести, он терпит неудачу:
cp: cannot create regular file `../../include/profile.h': File exists
Я проверил, что нет другой части программы, которая выполнялась бы параллельно, которая могла бы записать файл между двумя операторами, создавая таким образом условие гонки, которое объясняло бы поведение. Там нет другого места, чем выше, который выполняется только один раз, который написал бы этот файл.
Система
ядро:
Linux dev64 2.6.32.63+drm33.26-64.128-a10 #6 SMP Fri Jul 25 15:21:56 PDT 2014 x86_64 x86_64 x86_64 GNU/Linux
дистрибутив:
CentOS release 6.3 (Final)
Что может вызвать появление этого сбоя ??