O prefixo: 2e parece ser um efeito colateral da configuração padrão do serviço netatalk que não permite o uso de dotfiles; para evitar isso (ou seja, os nomes dos arquivos aparecem no servidor como .DS_Store etc), adicione options:usedots
a cada compartilhamento em /etc/netatalk/AppleVolumes.default (consulte esta pergunta anterior e o documentação do netatalk ).
Isso não livrará os arquivos ": 2e" existentes ou evitará novos "." Quando os arquivos são criados, basta criar novos arquivos com nomes mais limpos (e torná-los invisíveis). A configuração DSDontWriteNetworkStores
que você fez deve impedir que novos arquivos .DS_Store sejam criados, mas não impedirá os arquivos .TemporaryItems, .Trashes, ._ * (esses são arquivos AppleDouble que contêm recursos forks e metadados não padrão), etc. Eu não sei de nenhuma maneira de impedir que isso seja criado, você só pode limpá-los depois (e esperar que eles não tenham nada de importante neles - isso nem sempre é uma suposição segura).
Eu encontrei um script de Christian Imhorst para excluir vários desses arquivos no servidor. A codificação de caracteres em seu site é um pouco confusa, então vou incluir uma versão limpa (e ligeiramente modificada ...) aqui. Eu adicionei um pouco à lista de nomes de arquivos para excluir; Sinta-se à vontade para editar a lista de matar a gosto. Mas CERTIFIQUE-SE DE QUE VOCÊ TEM UM BACKUP ANTES DE EXECUTAR ISTO, pois qualquer script que inclua os caracteres "rm -rf" deve ser considerado como potencialmente perigoso.
#!/bin/bash
# Script: sauber
# Object: Cleans up your Linux file system after a
# session with AppleTalk and Finder.
# Etymologie: sauber means clean in German
# Author: originally by Christian Imhorst [http://www.datenteiler.de/what-is-2eds_store/]
# modified by Gordon Davisson
# Test number of arguments here
if (( $# < 1 )) ; then
echo >&2
echo "We need an argument here." >&2
echo "Usage: ./sauber [Directory]" >&2
echo "Example: ./sauber /home/christian" >&2
echo >&2
exit 1
elif [[ ! -d "$1" ]] ; then
echo "$1 is not a directory" >&2
exit 1
fi
find "$1" \( -iname ':2eDS_Store' \
-o -iname '.DS_Store' \
-o -iname '.AppleDouble' \
-o -iname 'Network Trash Folder' \
-o -iname 'Temporary Items' \
-o -iname ':2eTemporary Items' \
-o -iname '.Temporary Items' \
-o -iname ':2elocalized' \
-o -iname '.localized' \
-o -iname ':2e_*' \
-o -iname '._*' \) -exec rm -rf {} \;