MacOS Sierra-找不到正在使用的所有磁盘空间


8

我的Macbook Pro磁盘空间不足,我找不到原因。

我的应用程序和用户数据很少。

来自的输出 df -h

Filesystem      Size   Used  Avail Capacity  iused   ifree %iused  Mounted on
/dev/disk1     233Gi  227Gi  5.8Gi    98% 59462769 1518477   98%   /
devfs          182Ki  182Ki    0Bi   100%      630       0  100%   /dev
map -hosts       0Bi    0Bi    0Bi   100%        0       0  100%   /net
map auto_home    0Bi    0Bi    0Bi   100%        0       0  100%   /home

正如您在此处看到的那样,它报告说我有6GB可用空间。

然后ncdu,我习惯于对实际使用空间有一个更好的了解

在此处输入图片说明

如您所见,ncdu报告的是我已经使用过大约30GB空间,这对我来说很合适。

我显然在这里看错了什么。

有什么见解吗?


在我们走得太远之前,您是否运行过DiskUtility以查看Btree或其他目录管理文件是否只是损坏了?
卡尔·威索夫特

我不认为您的问题完全是这个问题的重复,但是您肯定应该看看,因为它对释放磁盘空间的方式进行了广泛的讨论。apple.stackexchange.com/questions/5353/...
setholopolus

Answers:


12

试试吧sudo ncdu。作为普通管理员或用户,您无法扫描某些文件夹的内容(如果无法扫描子文件夹,则无法扫描某些文件夹的内容(如果无法扫描子文件夹,则在最终列表中均以点号表示);如果由于缺少读取权限,整个文件夹都无法扫描!)。

示例(此处仅显示大六号和.Spotlight-V100文件夹):

  • ncdu

       10,7 GiB [##########] /Applications                                                                                               
    .   4,8 GiB [####      ] /System
    .   3,5 GiB [###       ] /Library
    .   2,2 GiB [##        ] /usr
    .   1,8 GiB [#         ] /private
    .   1,1 GiB [#         ] /Users
                 ...
    !   0,0   B [          ] /.Spotlight-V100
    
  • sudo ncdu

    .  10,7 GiB [##########] /Applications                                                                                               
        6,3 GiB [#####     ] /System
        5,2 GiB [####      ] /Library
        2,6 GiB [##        ] /private
        2,4 GiB [##        ] /usr
        1,2 GiB [#         ] /Users
                 ...
      310,7 MiB [          ] /.Spotlight-V100
    

另一个不错的perl hack是以下命令:

sudo perl -e'%h=map{/.\s/;99**(ord$&&7)-$`,$_}`du -h`;die@h{sort%h}'

它将根据类似于无砖块的Grand Perspective的大小对所有文件夹(不仅是当前文件夹中的文件夹)进行排序:

 29G    .
 11G    ./Applications
7,4G    ./Applications/Xcode.app
6,3G    ./System
5,2G    ./Library
2,4G    ./usr
1,9G    ./usr/local
966M    ./Users/user/Library
879M    ./System/Library/PrivateFrameworks
851M    ./Applications/MAMP
850M    ./private/var/db/dyld
805M    ./usr/local/mysql-5.7.11-osx10.9-x86_64/lib
778M    ./System/Library/Frameworks
...

确实sudo ncdu向我展示了所有空间都在被/.Spotlight-V100
kabal

@kabal但是Spotlight文件夹中的200 GB确实很多。您是否重建了聚光灯索引?
klanomath '16

6

虽然我是duand的忠实拥护者ncdu,但有时尝试GUI还是很有用的。

这是从/扫描的我的MBP售后SSD 的Grand Perspective的输出:

大透视扫描结果

例如,我可以看到Xcode.app是我的/ Applications文件夹中最大的条目。(我还发现9GB可以从旧的Deleted User主文件夹中释放出来。)


2

虽然ncdu它很棒(但这并不是对它的打击),但是如果您不想安装(或不能)第三者实用程序,可以尝试使用一些内置命令:

sudo du -hsx -d 1 / | sort

该命令列出了根目录中的所有文件,但不包括任何文件系统挂载(即USB或网络挂载),并按从小到大的顺序排序。例如,在我的iMac上发出命令,我得到以下结果:

  0B    /.Trashes
  0B    /.vol
  0B    /Network
  0B    /cores
 30G    /Applications
 64K    /Volumes
1.0K    /home
1.0K    /net
1.0M    /sbin
2.5M    /bin
234M    /.fseventsd
261G    /Users
314G    /
383M    /.cleverfiles
4.7G    /Library
478M    /.DocumentRevisions-V100
5.0K    /dev
523M    /usr
7.1G    /private
811M    /.Spotlight-V100
9.1G    /System

这使我对驱动器上顶级文件夹正在使用的内容有一个很好的总结。在我的情况下,该/Applications文件夹消耗30G,而我/Users有261G。

如果要查看“应用程序”文件夹中的所有内容并按大小排序,则可以发出以下命令

sudo du -ha /Applications | sort -r

我将输出传递给sort并使用该-r标志以相反的顺序(从大到小)对其进行排序,这样我就可以看到哪些文件和目录正在占用哪些空间。

996K    /Applications//The Unarchiver.app/Contents/Frameworks/XADMaster.framework/Versions
996K    /Applications//Microsoft Word.app/Contents/SharedSupport/Proofing Tools/Latvian Speller.proofingtool/Contents/SharedSupport/LatvianSpeller.lexicon/Contents/Resources/LexiconData
996K    /Applications//Microsoft Word.app/Contents/SharedSupport/Proofing Tools/Latvian Speller.proofingtool/Contents/SharedSupport/LatvianSpeller.lexicon/Contents/Resources
996K    /Applications//Microsoft Word.app/Contents/SharedSupport/Proofing Tools/Latvian Speller.proofingtool/Contents/SharedSupport/LatvianSpeller.lexicon/Contents
996K    /Applications//Microsoft Word.app/Contents/SharedSupport/Proofing Tools/Latvian Speller.proofingtool/Contents/SharedSupport/LatvianSpeller.lexicon
996K    /Applications//Microsoft Word.app/Contents/SharedSupport/Proofing Tools/Latvian Speller.proofingtool/Contents/SharedSupport

清单将很长,因此我建议将输出发送到文本文件进行评估:

sudo du -ha /Applications | sort -r > ~/Desktop/du_results.txt

这将在您的桌面上提供一个文本文件,您可以使用任何文本编辑器进行查看。这样,您将记录需要/想要调查哪些文件/子目录,以了解为什么要占用如此多的磁盘空间。


因为使用过-h,所以排序很不稳定,因此sort将大小视为字符串。
shoover
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.