Я использую CentOS 6.3 и вошел в систему с правами root.
Когда я создаю жесткую ссылку следующим образом:
ln /root.hdd /somedir/root.hdd
Это работает нормально, индексный дескриптор показывает то же самое между двумя файлами, и все работает нормально. Но когда я пытаюсь удалить ссылку, это не позволяет мне.
rm /somedir/root.hdd
unlink /somedir/root.hdd
umount /somedir/root.hdd
Ничего из этого не работает. Я получаю сообщение «Операция запрещена», хотя я - root, и даже использование sudo не помогает.
root.hdd - это файл openvz, который содержит файловую систему виртуальной машины в одном файле. Что позже монтируется с помощью ploop (устройство ретроспективного анализа).
Ваша strace содержит следующее:
...
unlinkat(AT_FDCWD, "root.hdd", 0) = -1 EPERM (Operation not permitted)
...
write(2, "cannot remove `root.hdd'", 24cannot remove `root.hdd') = 24
...
Поскольку отсоединение не удалось, можно с уверенностью предположить, что что-то еще имеет открытый файл (используя имя root.hdd). Поскольку файл содержит файловую систему OpenVZ, убедитесь, что все процессы или службы, связанные с OpenVZ, отключены, а затем повторите попытку.