Удаление каталога с двоеточием из CIFS

Я не могу удалить каталог с двоеточием (используя Ubuntu) на сетевом диске (файловая система: CIFS). Как я могу удалить этот каталог? (нет привилегий root, но есть разрешение на чтение / запись)

Выходные данные rmdir ':5N0A210'/ и rmdir ':5N0A210' :

 rmdir: failed to remove ':5N0A210': No such file or directory 

Вывод ls -li :

 123011781 drwxr-sr-x 2 username domain users 0 May 31 10:00 :5N0A210 

Вывод ls -1b :

 :5N0A210 

Вывод find . -inum 123011781 -delete find . -inum 123011781 -delete

 find: cannot delete './:5N0A210': No such file or directory 

Вывод rename 's|:|-|g' * :

 Can't rename :5N0A210 -5N0A210: No such file or directory 

Я только что понял, что могу создать каталог: «test», а также могу удалить без ошибок.

Я также могу создать ‘: 5N0A210’ и удалить его, но он отображается сразу после обновления графического интерфейса. ls -li показывает тот же номер инода, что и раньше.

Я также могу создать «: 4N0A210» (изменил «5» на «4») и удалить его без ошибок.

Все тесты проводились в том же каталоге, что и «: 5N0A210».

Из каталога, в котором :5N0A210 находится:

 rm -rf ./\:5N0A210 rm -rf ':5N0A210' rm -rf ./:5N0A210 rm -rf :5N0A210 

Все это работает в моей среде.

ОБНОВИТЬ

Вы также можете просто удалить его со стороны сервера, используя приведенные выше команды. Если у вас нет доступа к серверу, попросите кого-нибудь, у кого есть такой доступ, удалить его.

Существует ряд зарезервированных символов, которые не разрешены в именах файлов Windows \ / : * ? " < > | \ / : * ? " < > | . CIFS следует этому правилу, что означает, что вы не можете использовать ни один из этих символов в имени файла.

SAMBA может быть настроена с помощью vfs catia для перевода таких символов в визуально схожие варианты, но это не значение по умолчанию и может не быть настроено в вашем случае. (Если это так, подстановочного знака простого символа оболочки ? Будет достаточно, чтобы соответствовать двоеточию, т.е.

Единственное другое решение – удалить каталог непосредственно на сервере, на котором размещена файловая система. Если это Windows, то проверка файловой системы принудительно переименует каталог. Если это Unix / Linux с SAMBA, тогда достаточно простого rmdir (или rm -rf ).