“디스크가 거의 찼습니다”알림 음소거 삭제하는 것으로 보입니다. 내 문제 / 자극은

macOS Sierra로 업그레이드 한 후 “디스크가 거의 가득 찼습니다. 스토리지를 최적화하여 공간을 절약하십시오”라는 알림이 표시됩니다.

macOS 알림

옵션은 iCloud에 파일을 저장하거나 파일을 자동으로 삭제하거나 수동으로 파일을 삭제하는 것으로 보입니다.

여기에 이미지 설명을 입력하십시오

내 문제 / 자극은 440GB 볼륨에서 80GB의 여유 공간이 있다는 것입니다.

질문 : 이 알림을 (반) 영구적으로 침묵 시키거나 알림에 사용되는 임계 값을 변경하는 방법이 있습니까?



답변

“거의 전체”및 “전체”알림을 비활성화하는 해결책은 해당 데몬을 담당하는 데몬을 비활성화하는 것입니다.

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

또는

launchctl stop com.apple.diskspaced

또는 “거의 가득 참”이 자주 나타나지 않도록하려면 다음을 통해 GB 임계 값을 낮출 수 있습니다.

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

기본 20GB는 소형 SSD에 비해 너무 높으며 가능한 버그로 인해 매일 한 번이 아니라 매일 경고가 표시되므로, 해결 방법으로 경고가 표시되기 전에 여유 공간을 10GB로 줄일 수 있습니다.

defaults write com.apple.diskspaced minFreeSpace 10

데몬은 시작시에만 prefs를 읽으므로 시스템 무결성을 끈 경우 다시 시작해야합니다.

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

그렇지 않으면 그것을 죽여라 :

killall diskspaced

이러한 디스크 경고에 대한 다른 기본 설정에 관심이있는 경우 help param을 사용하여 일부 디스크 경고를 볼 수 있습니다.

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

그리고 여기 숨겨진 것들이 몇 개 있습니다 :

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

너무 자세히 보지 않았지만 마지막 경고 날짜를 미래의 날짜로 설정하면 경고가 표시되지 않을 수도 있습니다.


답변

macOS 모하비

참조 : 시작 데몬의 값 / 시스템 기본값에 액세스하는 방법

맥 OS 시에라

시에라에서는 이 명령 이 작동하지 않았습니다.

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

시스템 무결성 보호 로 인해 diskspaced서비스 를 중지하려면 다음을 실행하십시오.

launchctl stop com.apple.diskspaced

참고 : start다시 시작하거나 list세부 정보 (예 :)를 보려면 사용하십시오 PID.

잠시 후 서비스가 다시 시작되면 다음 명령을 시도하여 중지하십시오.

killall -STOP diskspaced

경고 수준 및 간격 변경

사용자의 기본 설정을 변경하려면 다음 예제 명령을 사용하십시오.

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

그런 다음 서비스를 다시 시작하십시오.

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

로드 된 설정을 보려면 다음을 실행하십시오 diskspaced. 예 :

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

노트

@malhal이 언급 한 매개 변수 가 더 이상 존재하지 않는다고 생각합니다. 이것을 테스트하는 간단한 명령은 다음과 같습니다.

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

문제 해결

이 명령으로 로그에서 경고를 확인하십시오.

grep com.apple.diskspaced /var/log/system.log


답변

이 알림은 버그라고 생각합니다.

내 드라이브 (1TB 드라이브)에 760GB의 여유 공간이 있으며 Sierra로 업그레이드 한 후 매일 아침 동일한 알림이 표시됩니다.

스토리지 최적화 (iCloud에 저장하지 않음)를 활성화했습니다.


답변

알림에 대해 방해 금지 모드를 켜면 “디스크가 거의 찼습니다”알림이 표시되지 않습니다. 모든 알림이 침묵하므로 단점이 있습니다.

알림 사이드 바가 켜져 있지 않으면 아래에 '내일 사용 중지'라는 메시지가 표시됩니다.

실제로 디스크가 가득 찬 경우 디스크의 기본 문제가 너무 가득 찬 경우에는 도움이되지 않습니다 . 또한 방해 금지 모드를 다시 켜야 할 수도 있습니다. 하루 동안 약 1 분 동안 만 그대로 두는 것이 가능할 수도 있지만 개발자가 방해 금지를 계속 사용하도록 의도하지는 않았습니다.

알림 환경 설정 창에서 오전 12시에서 오후 11시 59 분까지 방해 금지


답변