Silenciando a notificação "Seu disco está quase cheio"

117

Após a atualização para o macOS Sierra, recebo a notificação de que "Seu disco está quase cheio. Economize espaço otimizando o armazenamento".

notificação do macOS

As opções parecem ser para armazenar meus arquivos no iCloud, excluir automaticamente arquivos ou excluir manualmente:

insira a descrição da imagem aqui

Meu problema / irritação é que tenho 80 GB livres do meu volume de 440 GB.

A pergunta: existe uma maneira de silenciar esta notificação de maneira (semi) permanente ou alterar o limite que ela usa para a notificação?

Mike Boers
fonte
10
O mesmo aqui: "Você tem apenas 17,57 GB de armazenamento. Economize espaço otimizando o armazenamento". no meu armazenamento flash do Macbook Pro. Ridículo.
Kenorb #
Algumas sugestões, embora algumas me façam estremecer. Mas, quando as coisas são irritantes, às vezes você precisa experimentá-las.
Zonker.in.Geneva
A atualização do Mojave para 10.14.1 parece ter corrigido esse bug.
garageàtrois 17/11/19
3
@ garageàtrois Desde a atualização para o Mojave, recebo a notificação com mais frequência, ou seja, a cada poucos minutos!
Bhav
E você esvaziou o lixo?
Lisa Ann

Respostas:

114

A solução para desativar a notificação "quase cheia" e "cheia" é desativar o daemon responsável por isso:

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

ou

launchctl stop com.apple.diskspaced

Como alternativa, se você deseja impedir que o "quase cheio" apareça com tanta frequência, é possível diminuir o limite de GB via:

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

Os 20 GB padrão são altos demais para SSDs pequenos e um possível bug faz com que o alerta seja exibido todos os dias, em vez de apenas uma vez; portanto, como solução alternativa, você pode diminuir o espaço livre antes que o alerta apareça, por exemplo, para 10 GB:

defaults write com.apple.diskspaced minFreeSpace 10

O daemon apenas lê suas prefs na inicialização, portanto, é necessário reiniciá-lo se a integridade do sistema estiver desativada:

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

Caso contrário, mate-o:

killall diskspaced

Caso você esteja interessado nas outras preferências desses alertas de disco, é possível visualizá-las usando o parâmetro de ajuda:

/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.

E aqui estão alguns ocultos:

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

Eu não olhei muito de perto, mas é possível definir a data do último aviso como uma data no futuro também impediria a exibição do alerta.

malhal
fonte
10
o osX é muito patético que você precise usar o terminal para desligar essas coisas.
Jamie Hutber
16
Operação não permitida enquanto o System Integrity Protection está ativado
Raptor
21
"um possível bug faz com que o alerta seja exibido todos os dias" O meu aparece a cada 5 segundos. Esta resposta realmente ajudou.
user3247189
3
Sim, com o Mojave, esse alerta aparece literalmente a cada 20 segundos para mim, não diariamente. Talvez se o Xcode parasse de instalar automaticamente 20 GB de arquivos do simulador a cada atualização, isso não seria um problema. Infelizmente ... @malhal Eu configurei o defaultespaço mínimo para um valor mais baixo. Existe uma maneira de ver quais padrões você alterou manualmente ou devo acompanhar algo assim sozinho?
Jake T.
8
Precisamos de uma resposta atualizados para Mojave
zcahfg2
40

macOS Mojave

Consulte: Como acessar os valores de um daemon de ativação / valores padrão do sistema

macOS Sierra

No Sierra, este comando não funcionou para mim:

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

devido ao System Integrity Protection ativado, para interromper o diskspacedserviço, execute:

launchctl stop com.apple.diskspaced

Nota: Use startpara iniciar novamente ou listpara ver os detalhes (por exemplo, seus PID).

Se o serviço for reiniciado após algum tempo, tente o seguinte comando para pará-lo:

killall -STOP diskspaced

Alteração do nível e intervalo de aviso

Para alterar as configurações padrão do usuário, aqui estão alguns comandos de exemplo:

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

Em seguida, reinicie o serviço:

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

Para ver as configurações carregadas, execute diskspaced, por exemplo:

$(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

Eu acredito que os parâmetros mencionados por @malhal não existem mais. Aqui está um comando simples para testar isso:

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

Solução de problemas

Verifique os logs por este comando para quaisquer avisos:

grep com.apple.diskspaced /var/log/system.log
kenorb
fonte
2
A execução desses comandos no Mojave não parece ter nenhum efeito.
Jonathan Allard
@kenorb, então o que esse último comando grep faz, para o macOS mojave, recebo uma saída diferente (veja aqui) , e estou tentando usá-la para desativar o pop-up no Mojave. Alguma idéia de como isso poderia ser feito?
QuantumHoneybees
11
Ainda executando o Sierra em um MBA 2012. Essa tela irritante era irritante e me colocou em posição de não querer comprar outro Macbook. killall -STOP diskspaced corrigiu isso para mim ... Obrigado
mrSidX 02/09
10

Eu acho que esta notificação é um bug.

Tenho 760 GB gratuitos em minha unidade (uma unidade de 1 TB) e ainda recebo a mesma notificação todas as manhãs desde a atualização para o Sierra.

Ativei o recurso Otimizar armazenamento (mas não a loja no iCloud).

Will Henderson
fonte
7
Há um processo de sistema chamado deletedque limpa caches e, sempre que o faz, envia uma CACHE_DELETE_PURGEABLE_UPDATEDnotificação distribuída a todos os aplicativos. Sempre que essa notificação é enviada, a notificação "Seu disco está quase cheio" aparece, então acho que é um bug em algum aplicativo que está ouvindo essa notificação distribuída.
inket 27/01
11
@inket Como se observa essas notificações?
Mike Boers
4
Estou no Mojave 10.14, nenhuma dessas sugestões fez nada. Isso é realmente irritante.
vknyvz
2

A ativação do modo Não perturbe para notificações silenciará as notificações "Seu disco está quase cheio". Existe uma desvantagem, pois isso silenciará todas as notificações.

barra lateral de notificação com não perturbe ativada, ele diz "Desligará amanhã" embaixo

Isso não ajudará com o problema subjacente do seu disco estar muito cheio, se estiver realmente cheio. Além disso, pode ser necessário ativar o recurso Não perturbe novamente. Parece que é possível mantê-lo ativo por quase um minuto do dia, mas não tenho certeza se os desenvolvedores pretendem que o Não perturbe seja usado continuamente.

painel de preferências de notificações definido para Não incomodar das 12h às 23h59

dwightk
fonte