Como excluir arquivos (rm) em uma montagem CIFS quando o nome do arquivo contém dois pontos (:) ou outros caracteres especiais?

Como excluir arquivos (rm) em uma montagem CIFS quando o nome do arquivo contém dois pontos (:) ou outros caracteres especiais?

Na minha LAN, tenho um Synology NAS com pastas compartilhadas criptografadas. Eles são montados no meu computador Debian através do CIFS (o NFS está disponível apenas para pastas compartilhadas não criptografadas).

//<NAS_IP_ADDRESS>/<SHARED_FOLDER> /mnt/<MOUNT_FOLDER> cifs _netdev,credentials=<PATH_TO_CREDENTIALS>,iocharset=utf8,mapchars,uid=<UID>,gid=<GID>,setuids 0 0

Quando tento manipular ( rm, stat, mv…) um arquivo contendo um caractere especial (geralmente dois pontos), recebo um erro

rm: cannot remove '<FILENAME>': No such file or directory

O que posso fazer para resolver este problema? Provavelmente alterando algum parâmetro de montagem ou alguma opção na configuração do samba?

Desde já, obrigado!

Responder1

Acabei de ter o mesmo problema. O arquivo é mostrado na listagem de diretórios, mas não pode ser aberto/excluído. Nenhum truque com find ou inodes funcionou.

Então usei smbclientem vez de cifs mount, o nome do arquivo é mostrado como no formato DOS 8.3, mas o comando delete ainda não consegue encontrá-lo. Mas usar del *nesse diretório (era o único arquivo restante) removeu o arquivo com sucesso.

Listando montagem cifs:

ls: 'VK? NEWS - 2009.pdf.2018-12-03T01:24:59+01:00.snapshot.gz': No such file or directory
total 897
-rwxrwxrwx 1 root root 891372 Nov 13  2012 VK? NEWS - 2009.pdf.2018-12-03T01:24:59+01:00.snapshot.gz

Listagem/exclusão via smbclient:

smb: \main\rdiff-backup-data\increments\userfiles\> dir
  .                                   D        0  Wed Oct 16 00:01:34 2019
  ..                                  D        0  Tue Oct 15 23:06:52 2019
  V9AGMV~L.GZ                         A   891372  Tue Nov 13 11:35:24 2012

                104857600 blocks of size 1024. 30534775 blocks available

smb: \main\rdiff-backup-data\increments\userfiles\> del V9AGMV~L.GZ
NT_STATUS_NO_SUCH_FILE listing \main\rdiff-backup-data\increments\userfiles\V9AGMV~L.GZ

smb: \main\rdiff-backup-data\increments\userfiles\> del *

smb: \main\rdiff-backup-data\increments\userfiles\> dir
  .                                   D        0  Wed Oct 16 00:05:42 2019
  ..                                  D        0  Tue Oct 15 23:06:52 2019

                104857600 blocks of size 1024. 30534775 blocks available

informação relacionada