¿Cómo excluir una subcarpeta de la unidad iCloud en macOS Sierra?

Tengo mi carpeta Documentos sincronizada con la unidad iCloud, quiero excluir algunas subcarpetas de la unidad iCloud, ¿hay alguna manera de lograr esto?

Respuestas (10)

actualización 2022: este método ya no funciona. debe cambiar el nombre del directorio a * .nosync, como se describe en otras respuestas.

Agregar un archivo vacío con nombre .nosynca una carpeta evitará que esa carpeta se sincronice.

También puede usar esto como una extensión de archivo para archivos específicos, pero el tratamiento de la carpeta es bastante útil.

Una vez que haya sincronizado una carpeta, ahora también puede evitar que se sincronice en algunos (o todos los puntos finales) con una utilidad llamada Bailiff , si por alguna razón no desea simplemente eliminar los archivos de iCloud por completo y en su lugar desea para evitar la siguiente sincronización "inicial".

¿Qué sucede si coloca un archivo .nosync oculto en la carpeta, que también detendrá la sincronización de la carpeta?
¡Funciona! ¡Brillante! De hecho, detiene la carpeta. Incluso después del hecho. Lo acabo de probar. +1 de mí
También quiero evitar sincronizar una carpeta de "compilación". En ese caso, no puedo cambiar el nombre de esa carpeta.
¡Finalmente! Dejé un archivo iCloud.nosync vacío (no me gustan los archivos invisibles) en todas las carpetas que no quiero en iCloud, principalmente porque mi viejo y confiable BBEdit falla cada vez que intento abrir o buscar uno de esos archivos en la nube. . Funciona al instante, la paz ha vuelto.
Esto no es realmente exacto. El directorio continúa sincronizándose cuando .nosyncse agrega un archivo; además, iCloud incluso parece comportarse como si los contenidos del directorio se estuvieran cargando, e incluso puede ocupar espacio, aunque no quiero arriesgarme a perder espacio que nunca volverá, ya que he visto muchos informes de espacio nunca de- asignando El directorio aparecerá en iCloud, aunque parece vacío. En Finder, el .nosyncarchivo se considerará "no elegible", pero todos los demás archivos se considerarán "Descargados". Esto es desconcertante. Comparar: i.imgur.com/uYybYAK.png
Esto no funcionó para mí. Creé un archivo vacío llamado .nosyncen la carpeta, pero todo lo demás en la carpeta aún está sincronizado. Creé algunos archivos nuevos en la carpeta y los subí a iCloud Drive. Estoy usando Mojave.
Puedo confirmar que poner un .nosync dentro de una carpeta NO es confiable ya que iCloud todavía está cargando contenido nuevo. La única solución que funciona es poner «.nosync» en el nombre de la carpeta, que desafortunadamente está un poco sucio...
2019-07-12: esto ya no parece funcionar. Lo probé en High Sierra (10.13.6) y Mojave (10.14.5) e incluso con archivos .nosync en cada Mac, el nuevo contenido continúa sincronizándose. Una subcarpeta llamada "test.nosync" no se sincroniza, ni tampoco los archivos que terminan en .nosync. Pero eso es obviamente menos que ideal.
Esto no funcionó.
a mi tampoco me funciono ☹️
Me gustaría ver algo como el archivo ".icloudignore" donde puedo enumerar archivos y carpetas (con comodines) que deben ignorarse. Es lamentable que no sea compatible :\

Aquí están todos los nombres de archivos/carpetas excluidos, por lo que tal vez uno de estos podría usarse para una solución alternativa:

Nombre del archivo:

  • es.DS_Store
  • empieza con(A Document Being Saved
  • contiene .nosync(en cualquier caso)
  • es.ubd
  • contiene.weakpkg
  • es tmp(en cualquier caso)
  • es .tmp(en cualquier caso)
  • es desktop.ini(en cualquier caso)
  • comienza con ~$
  • es Microsoft User Data(en cualquier caso)
  • es $RECYCLE.BIN(en cualquier caso)
  • es iPhoto Library(en cualquier caso)
  • es Dropbox(en cualquier caso)
  • es OneDrive(en cualquier caso)
  • es IDrive-Sync(en cualquier caso)
  • es .dropbox(en cualquier caso)
  • es .dropbox.attr(en cualquier caso)
  • es icon\r(en cualquier caso)

La extensión es (en cualquier caso):

  • tmp
  • photoslibrary
  • photolibrary
  • aplibrary
  • migratedaplibrary
  • migratedphotolibrary
  • migratedaperturelibrary

La extensión tiene más de 2 caracteres y el nombre del archivo es~

Fuente: inversión del demonio de iCloud.

Con suerte, en una versión futura del sistema operativo, nos permitirán colocar .nosync dentro de la carpeta para excluirlo, o tener una .IgnoreList como la que tiene Resilio.

Eso es útil, pero ¿puede agregar también una fuente a su respuesta?
iCloud Drive también excluye los enlaces simbólicos ("alias").
¿Alguien puede ayudarme con lo mismo para Windows? Excluir un archivo de la sincronización con .nosync funciona, pero esto no funciona para las carpetas... continúan sincronizándose normalmente.

Cambie el nombre de la carpeta o el archivo:

mv fileorfolder fileorfolder.nosync

Crea un enlace simbólico que se sincronice:

ln -s fileorfolder.nosync fileorfolder

Repita en cada máquina.

¡Buena esa! Funciona con Magento 2.3.2, ¡excluir las rutas 'var/cache', 'var/session', 'var/view_preprocessed/pub/static', 'pub/media/catalog/product/cache', 'pub/static'ahorrará mucha batería!
esto funcionó para mí. También mencionado aquí 😊
¡¡¡Brillante!!! Y si tiene node/npm, puede agregar esto como un solo comando con github.com/HaoChuan9421/nosync-icloud
1/2: Esta sugerencia (extremadamente útil) todavía funciona solo con un pequeño asterisco: cuando usé este enfoque en dos Mac con Big Sur, el enlace simbólico que creé en la primera Mac se sincronizó a través de iCloud con la segunda Mac, y fue apuntando exactamente a la misma ruta que en mi primera Mac. En la segunda Mac, eliminé el archivo de configuración para el que estaba usando este flujo de trabajo, así que cuando abrí la aplicación, creó un nuevo archivo someConfig.nosync, tal como lo había configurado en mi primera Mac.
2/2: para resumir, parece que la parte "Repetir en cada máquina" ya no funciona/se aplica, porque al menos actualmente, el enlace simbólico se sincroniza a través de iCloud, por lo que ejecutar el ln -scomando en una segunda Mac fallaría o se sobrescribiría el enlace simbólico existente.

Agregar el .nosyncarchivo al directorio ya no funciona.

El directorio tiene que ser renombrado para contener .nosync. Además, de acuerdo con este hilo en Reddit , debería ser posible encadenar las palabras my_file.nosync.noindexno solo para marcar el archivo como no sincronizado, sino también para ocultarlo de Spotlight.

Confirmo, ya no funciona.

Desarrolladores de nodos: para agregar un archivo vacío llamado .nosync a cada subcarpeta node_modules, ejecute este script de shell desde un directorio principal:

find . -name node_modules -exec touch {}/.nosync \;
¡Muy útil, gracias! Sin -pruneembargo, lo combiné, de modo que solo se orientaron aquellas node_modulescarpetas que no eran en sí mismas una subcarpeta de otra node_modules, que descubrí aquí: unix.stackexchange.com/a/582634
esto funcionó para usted? definitivamente no funciona para mí hoy .. ;(
Tiene razón, alguien especial, esto ya no impide la sincronización, como se documenta en muchos otros comentarios en esta página. La mejor solución podría ser de Appyx ahora. Probablemente podrías combinar mi idea con esa para automatizarla....

Creé este flujo de trabajo de Automator para hacerlo desde el menú contextual en Finder https://github.com/tsdexter/iCloud-NoSync

Parece que los directorios que se llaman "tmp" o terminan en ".tmp" no están sincronizados. Un icono de nube con una línea que lo atraviesa aparece junto al directorio junto con todo lo que contiene.

La respuesta que me funcionó muy bien se agregó como un comentario anterior ( https://apple.stackexchange.com/a/335629/117233 ), pero para ser minucioso, pensé en agregar el código real.

La forma en que funcionó para mí fue la siguiente:

  1. Elimine la carpeta que no desea sincronizar (o cámbiele el nombre si el contenido no se genera automáticamente, por ejemplo node_modules)
  2. ejecute lo siguiente en el directorio principal de lo anterior:
mkdir NAME_OF_FOLDER.nosync && ln -s NAME_OF_FOLDER.nosync NAME_OF_FOLDER

Luego copie su contenido a la NAME_OF_FOLDER.nosynccarpeta.

Espero eso ayude.

supongamos que tiene un proyecto de reacción/angular en el que está trabajando y que se encuentra en la carpeta de documentos, ahora desea sincronizar todo excepto la carpeta node_modules. como lograr eso.? ¿Reaccionará/angular reconocerá 'node_modules.nosync'?

Puede, si desea excluir node_modules, hacer una dir/node_modulesen una carpeta no sincronizada, mover los archivos allí y luego crear un enlace simbólico a esa carpeta donde estaban los módulos de nodo originales. Todo el código se ejecutará igual, excepto la sincronización de iCloud, que excluye los enlaces simbólicos.

.nosyncno funciona para esto porque node_modulesdebe llamarse node_modulesy tampoco debe sincronizarse nunca.

Solo creo carpetas directamente debajo de mi casa de usuario que quiero mantener solo localmente (separadas de mis carpetas de iCloud).