Existe alguma maneira de impedir que um Mac crie arquivos de sublinhado de ponto?

35

No trabalho, estamos deixando um de nossos clientes mais experientes em tecnologia ajudar um pouco em alguns projetos de desenvolvimento específicos para ele. No entanto, ele usa seu próprio Macbook pessoal e, ao editar arquivos em nossas redes (Windows), seu Macbook sempre cria vários metarquivos desnecessários que acabamos excluindo mais tarde.

Por exemplo, ele cria um arquivo chamado .DS_Store em qualquer diretório que ele abre, além de arquivos com "pontos sublinhados" para cada arquivo que ele edita. Por exemplo, se ele estiver editando um arquivo chamado "Main.php", seu Macbook criará outro arquivo chamado "._Main.php".

Eu sei que existem maneiras de impedir a criação de arquivos .DS_Store , mas nenhuma sobre como impedir a criação desses arquivos ocultos prefixados com sublinhado de ponto .

Existe alguma maneira de desativar isso nos Macs? Alguma maneira de impedi-lo de criar esses arquivos em primeiro lugar?

soapergem
fonte
1
Tópico relacionado , outro explicando para que ._servem os arquivos.
Daniel Beck

Respostas:

18

Peça ao seu usuário do Mac que instale o BlueHarvest .

Colheita Azul

fideli
fonte
6
É um software comercial. Algo mais?
Artur Bodera
Vale a pena notar que Ross Tulloch (o criador do BlueHarvest) oferece uma versão gratuita chamada BlueHarvest Lite . É limitado que você precise selecionar e ativar o recurso para cada nova unidade removível, mas, uma vez configurada, ela manterá a unidade livre de lixo. Você pode encontrá-lo na Mac App Store, mas não tenho certeza se funcionará para unidades de rede. Você pode tentar.
ADTC
5
Note-se que esta solução realmente não impede que um Mac crie arquivos ._, como solicitado pelo OP. Ele simplesmente remove os arquivos ._ quando você ejeta a unidade. Para mim, significa "adicionar insulto à lesão".
algum usuário
Parece que a versão Lite não está mais disponível. O link para download apenas leva você à versão paga da App Store.
Davecave
10

Em servidores de arquivos Linux ou dispositivos NAS, você pode usar o seguinte:

Opção A. Samba modificação configuração impedindo tanto ações de recursos e arquivos .DS_Store:

arquivos de veto = /._*/.DS_Store/

excluir arquivos de veto = sim

(Arquivo de configuração localizado em /etc/samba/smb.conf ou /etc/smb.conf, dependendo da sua distribuição) Desvantagens: nem todos os compartilhamentos são fornecidos por sistemas NAS controlados por Linux ou, na maioria das vezes, você não tem acesso ao shell.

Opção B. Crie um script de shell simples e execute-o em uma de suas máquinas conectadas usando cron.

find / YourNetworkShareLocation -name '._ *' -exec rm {} \;

Substitua / YourNetworkShareLocation por onde o compartilhamento de rede está montado, por exemplo, / Volumes / ShareName ou / media / ShareName, etc.

Desvantagens: este é o caminho do bruto - carga desnecessária no armazenamento e na rede. No entanto, o mesmo pode ser feito facilmente no Windows usando um pouco de mágica do PowerShell.

Isenção de responsabilidade: não é isso que chamo de "solução", é um hack. Mas isso poderia ajudar alguém a reduzir os níveis de aborrecimento fornecidos pelos arquivos de bifurcação de recursos.

Milen
fonte
Sua configuração do samba está realmente correta? É uma /lista separada?
Pare de prejudicar Monica
@OrangeDog Sim, é uma lista
separada
4

Faça com que ele procure o aplicativo Cleanup SMB Mess gratuito e com o nome adequado . O desenvolvedor diz:

Esse droplet AppleScript limpa os compartilhamentos do Windows montados no cliente de samba do Mac OS X, removendo todos os arquivos "._ *", os arquivos .DS_Store e as pastas .Trashes em todos os volumes e pastas arrastados nele. "

Eu só usei com pen drives e MP3 players, e ele faz o que diz que faz. Suponho que ele precise verificar o dispositivo para remover o lixo, e isso pode ser complicado em um grande compartilhamento de rede. Mas isso é apenas especulação da minha parte. Eu sugiro perguntar ao desenvolvedor.

JRobert
fonte
3

Use um programa diferente Finderdaquele MuCommanderpara procurar seus arquivos. (funciona também em unidades locais).

No OS X lion, esse método deve permitir o acesso padrão ~/Librarysem modificar as configurações ou pressionar ALT também.

Eu uso MuCommanderon Snow Leoparde Lione notou que nem HFS+ou ExtFatvolumes acabam repleta de arquivos com esses arquivos.

Pessoal: existe outro problema, o tamanho do arquivo ... muitos dos garfos de recursos têm pelo menos 4096 bytes, mesmo quando o arquivo original está abaixo de 4096 bytes, portanto, eliminar esse problema ajuda com o inchaço do sistema de arquivos.

(Por exemplo: Faça o download do arquivo de texto: http://www.gamers.org/pub/games/idgames/levels/heretic/gi/horror.txt em um Mac e veja você mesmo)

Marz
fonte
2

Você também pode usar um aplicativo Mac na loja de aplicativos chamado ' Annoying File Be-Gone ', que roda na barra de menus e funciona bem.

Phil
fonte
0

No meu QNAP NAS, a configuração do samba no /etc/smb.conf já continha isso:

veto files = /.AppleDB/.AppleDouble/.AppleDesktop/:2eDS_Store/Network Trash Folder/Temporary Items/TheVolumeSettingsFolder/.@__thumb/.@__desc/:2e*/.@__qini/.Qsync/.@upload_cache/.qsync/.qsync_sn/.@qsys/.digest/
    delete veto files = yes

então editei a linha de arquivos de veto para:

veto files = /._*/.AppleDB/.AppleDouble/.AppleDesktop/:2eDS_Store/Network Trash Folder/Temporary Items/TheVolumeSettingsFolder/.@__thumb/.@__desc/:2e*/.@__qini/.Qsync/.@upload_cache/.qsync/.qsync_sn/.@qsys/.digest/

e, em seguida, reiniciei o samba (é um sistema linux primitivo, então fiz isso através do init.d):

/etc/init.d/smb.sh restart
Steve Goossens
fonte
-1

existe um utilitário chamado "assepsia"

Ele também possui um recurso para limpar seu Mac a partir de arquivos .DS_Store e assim por diante, leia as Perguntas frequentes.

http://asepsis.binaryage.com/

deadElk
fonte
O FAQ não faz menção de ._arquivos.
DavidPostill
-3

Isso é realmente fácil e você não precisa instalar nada.

  1. Spotlight aberto (cmd + espaço)
  2. Digite 'Terminal.App'
  3. E pressione enter (Isso deve abrir o aplicativo Terminal)
  4. Copie isso no seu clipbpoard (cmd + c):

    os padrões gravam com.apple.desktopservices DSDontWriteNetworkStores true

  5. e cole no terminal (cmd + p)

  6. pressione Enter
  7. fechar o terminal (cmd + Q)
  8. Na próxima vez que você reiniciar o localizador, o seu Mac deixará de gravar arquivos DS no armazenamento em rede.

Ref: http://support.apple.com/kb/HT1629

Luke Browell
fonte
4
Esse link já foi publicado pelo próprio OP, que sabe como desativar a .DS_Storecriação de arquivos. O método não impede que ._arquivos sejam criados, pois são bifurcações de recursos (e outros) sempre escritas pelo sistema operacional, mesmo se você ativar a DSDontWriteNetworkStoresopção.
slhck