¿Hay alguna manera de usar la función de clonación de copia en escritura de APFS para recuperar espacio de archivos duplicados existentes?
Cuando copia un archivo en APFS, en realidad no duplica los bloques del archivo, sino que solo clona los metadatos. Eso evita que use más espacio hasta que realmente realice una edición en el archivo duplicado. Parece que debería haber alguna herramienta para encontrar duplicados existentes y reemplazarlos con clones, recuperando el espacio utilizado para almacenar el duplicado.
Las preguntas relacionadas sobre las comunidades de Apple y los foros de MacRumors no tienen nada.
Respuestas:
Hay algunos scripts de código abierto de calidad alfa que intentan hacer esto: https://github.com/ranvel/clonefile-dedup
fuente
cp -c
, lo que descarta todos los metadatos del archivo de origen (propietario, permiso, atributos extendidos, etc.). Y no hay ninguna razón por la que no se pueda hacer solo con un script de shell, llamandosqlite3
directamente; en su lugar, debe instalar Python 3, lo que significa que está prohibido para los no administradores que no pueden cambiar la configuración para ejecutar sin firmar / no Código firmado de la tienda de aplicaciones.Yo tenía el mismo problema y escribió un pequeño script de shell para hacer esto utilizando nativa
cp
,mv
,jdupes
(para velocidad), ygcp
(para la preservación de metadatos). ¡Espero que esto ayude!Ventaja sobre otras soluciones:
fuente
Consulte también https://github.com/deckarep/apfs-compactor , que también es solo un prototipo.
fuente
Echa un vistazo a diskDedupe http://www.diskdedupe.com Hace exactamente lo que estás buscando.
Solo tiene dos botones (escanear y deduplicar) y mantiene todos los metadatos, al reemplazar un duplicado con un clon del original.
Lo usé en todos mis archivos.
fuente