Silencio "Su disco está casi lleno" Notificación

89

Después de actualizar a macOS Sierra, recibo la notificación de que "el disco está casi lleno. Ahorre espacio al optimizar el almacenamiento":

LasopcionesparecenseralmacenarmisarchivoseniCloud,eliminararchivosautomáticamenteoeliminararchivosmanualmente:

Mi problema / irritación es que tengo 80 GB libres de mi volumen de 440 GB.

La pregunta: ¿hay una manera de silenciar esta notificación de manera (semi-) permanente , o cambiar el umbral que utiliza para la notificación?

    
pregunta Mike Boers 25.09.2016 - 17:18

3 respuestas

89

La solución para deshabilitar las notificaciones "casi completas" y "completas" es deshabilitar al demonio responsable de ellas:

launchctl unload -w /System/Library/LaunchAgents/com.apple.diskspaced.plist

Alternativamente, si solo quiere evitar que aparezca "casi lleno" tan seguido, puede reducir el umbral de GB a través de:

minFreeSpace (int) - minimal free size in GB. Default: 20

El valor predeterminado de 20 GB es demasiado alto para SSD pequeños y un posible error hace que la alerta se muestre todos los días en lugar de solo una vez, por lo que, como solución alternativa, puede reducir el espacio libre antes de que aparezca la alerta, por ejemplo. a 10 GB:

defaults write com.apple.diskspaced minFreeSpace 10

El daemon solo lee sus preferencias en el inicio, por lo que debe reiniciarlo si tiene la integridad del sistema desactivada:

launchctl unload -w /System/Library/LaunchAgents/com.apple.diskspaced.plist
launchctl load -w /System/Library/LaunchAgents/com.apple.diskspaced.plist

De lo contrario, mátalo:

killall diskspaced

En caso de que esté interesado en las otras preferencias para estas alertas de disco, puede ver algunas de ellas utilizando el parámetro de ayuda:

/System/Library/PrivateFrameworks/StorageManagement.framework/Versions/A/Resources/diskspaced help
---
  Domain: com.apple.diskspaced
  Supported keys:
  debugLog (BOOL) - log additional debug information. Default: NO
  checkAllVolumes (BOOL) - check all volumes. Default: NO
  minDiskSize (int) - minimal disk size in GB. Default: 128
  minFreeSpace (int) - minimal free size in GB. Default: 20
  minPurgeableSpace (int) - minimal purgeabe space size in GB. Default: 20
---
  Commands: removeAllNotifications - Removes all scheduled and delivered user notificiations.

Y aquí hay un par de ocultos:

warningInterval (integer default 0)
lastWarningDate (string e.g. 2017-05-05 16:48:29 +0000)

No lo observé muy de cerca, pero es posible establecer la fecha de la última advertencia en una fecha en el futuro también evitaría que se muestre la alerta.

    
respondido por el malhal 05.05.2017 - 20:55
29

macOS Sierra

En Sierra este comando no me funcionó:

launchctl unload -w /System/Library/LaunchAgents/com.apple.diskspaced.plist

debido a Protección de integridad del sistema comprometida, para detener el servicio diskspaced , ejecute:

launchctl stop com.apple.diskspaced

Nota: usa start para comenzar de nuevo o list para ver los detalles (por ejemplo, su PID ).

Si el servicio se reinicia después de un tiempo, intente el siguiente comando para detenerlo:

killall -STOP diskspaced

macOS Mojave

Consulte: Cómo acceder a los valores de un daemon de lanzamiento / valores predeterminados del sistema

Cambio de nivel e intervalo de advertencia

Para cambiar la configuración predeterminada del usuario, aquí hay algunos comandos de ejemplo:

defaults write com.apple.diskspaced freeSpaceWarningLevel 1
defaults write com.apple.diskspaced warningInterval 3600
defaults write com.apple.diskspaced debugLog 1
defaults write com.apple.diskspaced checkAllVolumes 0

Luego reinicie el servicio:

launchctl stop com.apple.diskspaced && launchctl start com.apple.diskspaced

Para ver las configuraciones cargadas, ejecute diskspaced , por ejemplo:

$(find /System/Library/PrivateFrameworks -name diskspaced -print -quit)
2017-08-04 18:32:27.943 diskspaced[92401:12312556] FreeSpaceWarningLevel: 1
2017-08-04 18:32:27.943 diskspaced[92401:12312556] WarningInterval: 3600
2017-08-04 18:32:27.943 diskspaced[92401:12312556] Check All Volumes: NO

Notas

Creo que los parámetros mencionados por @malhal ya no existen. Aquí hay un comando simple para probar esto:

$ grep -A6 debugLog <(strings $(find /System/Library/PrivateFrameworks -name diskspaced -print -quit))
debugLog
freeSpaceWarningLevel
FreeSpaceWarningLevel: %ld
warningInterval
WarningInterval: %ld
checkAllVolumes
Check All Volumes: %@

Solución de problemas

Verifique los registros mediante este comando para ver si hay advertencias:

grep com.apple.diskspaced /var/log/system.log
    
respondido por el kenorb 04.08.2017 - 19:37
8

Creo que esta notificación es un error.

Tengo 760GB gratis en mi disco (un disco de 1TB) y todavía recibo esta misma notificación cada mañana desde que me actualicé a Sierra.

He habilitado Optimizar el almacenamiento (pero no Almacenar en iCloud).

    
respondido por el Will Henderson 27.09.2016 - 18:16

Lea otras preguntas en las etiquetas