Evite que Finder / OSX cree elementos temporales y .apdisk en recursos compartidos de red

16

Estoy en busca de alguna manera de configurar OSX para evitar que la creación de .apdisk archivos y .TemporaryItems carpetas de recursos compartidos de red.

Estos se crean cada vez que OSX accede a una carpeta compartida en la red.

Al buscar, algunas posibles soluciones que he encontrado incluyen:

  • Dejar de usar la aplicación (Finder)
  • Marcar los recursos compartidos como de solo lectura
  • Ingnóralos
  • Utilice software de terceros (como BlueHarvest ) para eliminar los archivos.
  • Programe una secuencia de comandos cron para eliminar estos archivos.

Lamentablemente, las tres primeras opciones no me funcionan y prefiero no tener que comprar licencias o programar limpiezas en los servidores de archivos.

¿Hay alguna forma de configurar OSX para no crearlos en primer lugar?

(Finder se conecta a través de AFP a los recursos compartidos de la red, por lo que vale)

Editar, aproximadamente 1 año después: tenga en cuenta que no estoy buscando una solución de limpieza.

BlueHarvest (si tiene una Mac para ejecutarlo), y los scripts de limpieza programados están bien, pero no son ideales. Realmente necesito una solución que evite que OSX cree estos archivos en primer lugar.
En este momento, parece que Apple no proporciona una opción de configuración que sea decepcionante.


fuente
¿A qué tipo de servidor te estás conectando? OS X o algo más? Además, ¿por qué no quieres los archivos? Supongo que los clientes que no son Mac en esos recursos compartidos.
snakechowder
Todo tipo de servidores, no importa. Y sí, no los quiero debido a clientes que no son Mac y a la contaminación general de las acciones.
OKAY. Tengo el mismo problema pero mi solución no está dentro de sus parámetros; Ejecuto dot_clean (1) desde cron en el cliente (s) / suprimir la creación en el servidor.
snakechowder

Respuestas:

5
  1. Terminal abierta
  2. Ejecute este comando: defaults write com.apple.desktopservices DSDontWriteNetworkStores true
  3. Reinicie la computadora o cierre sesión y vuelva a iniciar sesión en la cuenta de usuario.

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

jnovack
fuente
3
Ah, desafortunadamente esto solo detiene la creación de los archivos .DS_Store, no detiene las carpetas .TemporaryItems y los archivos .APDisk.
#blameapple Nada que pueda hacer. :(
jnovack
3

Si está ejecutando archivos compartidos de Windows en Windows Server 2003 R2 y superior, puede crear pantallas de archivos que eviten que cualquier usuario cree cualquier conjunto de archivos especificados previamente.

He utilizado eficazmente este enfoque para eliminar todos los archivos creados por Mac en nuestros archivos compartidos.

Consulte el documento de MS Technet, Archivos de detección , para obtener más información.

Jorge Henriquez
fuente
Oh, wow, esa es una solución interesante. No tenía idea de que existían las pantallas de archivo.
3

Si bien esto podría no ayudar a todos, si está ejecutando samba en el servidor de archivos, puede agregar lo siguiente en su smb.conf:

Veto files = /.TemporaryItems/._.TemporaryItems/.DS_Store/

Los "archivos Veto" son una cadena de nombres de archivo / separados (también se permiten comodines) que está prohibido crear. Esto resolvió el problema para mí.

Encontré este truco en la wiki de samba de Arch Linux

Martin Olika
fuente
Utilicé algo similar hace algunos años, tuve que deshabilitarlo porque algunas versiones de MacOS X se negaron a conectarse al recurso compartido o tuvieron problemas aleatorios con él (no recuerdo exactamente, fue alrededor de 2010 ...). No estoy seguro de lo que sucede con las versiones actuales.
Ale
2

BlueHarvest es probablemente la mejor y más fácil forma de mantener limpios los recursos compartidos de la red, al menos eso es lo que busqué después de tomar la mayoría de sus opciones yo mismo.

Después de eso es un trabajo cron para eliminar todos esos archivos, usando algo como:

find "$@" \( -name ".DS_Store" -or -name ".TemporaryItems" -or -name ".Trashes" -or -name "._*" \) -exec rm -rf "{}" \; -prune 
acseven
fuente
BlueHarvest y un cronjob ya se mencionaron como formas no preferidas de lidiar con esto.
¡Hola! Creo que mencionaste eso, pero mi respuesta sirvió precisamente para dar una recomendación de mi experiencia previa (y actual). Todavía tengo BlueHarvest instalado para lograr exactamente lo que necesita, después de haber probado otras soluciones similares a las que mencionó, aunque ninguna con la misma tasa de éxito. Es decir, sigue siendo mi mejor recomendación y en mi punto de vista vale la pena el costo.
acseven
Gracias. Me alegra que encuentre valioso BlueHarvest, y estoy seguro de que otros encontrarán útil la secuencia de comandos que ha proporcionado para programar las limpiezas. Tampoco cumplen el requisito de configurar OSX para no crearlos en primer lugar. BlueHarvest en particular, independientemente del precio, no es útil para mi situación, requeriría la compra de una Mac, que no es rentable. Hasta que Apple proporcione una opción de configuración para suprimir esto, la pregunta permanecerá abierta.
0

sshfs tiene una opción doble noapple que evita que al menos .Spotlight-V100se cree en mis (muy limitadas) pruebas ...

mkdir -p /Volumes/user && /usr/local/bin/sshfs \
    -o volname=user,local,cache=no,allow_root,noappledouble,defer_permissions,reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 \
    [email protected]:/mnt/tank/homes/user \
    /Volumes/user

Si usar sshfs es una opción, puede considerar esta solución.

leoj
fuente