以下答案作者保留所有权利怎样才能卸载干净mac上的软件,禁止以任何方式全部或部分转载:
-------------------------------------------------- -------------------------------------------------- -------------
在回答之前,我需要问一些问题:
为什么要进行系统清理?
这看起来很简单:系统清理就是维护系统健康和恢复系统性能。所以现在目标已经存在,剩下的就是策略了:
系统清理对象?(或需要清理的东西)
对于一个系统来说,系统自身运行产生的临时文件(Temp File)、缓存文件(Cache File)、历史日志(Logs)等都可以看作是可以清理的对象。放大一些,内存驻留的文件映射页(放大一点,软件或用户生成的临时和缓存文件,长时间未访问的文件(包括一些用户可能忘记的数据),软件卸载遗留文件,以及由不当操作(例如)等产生的文件都可以被认为是要清理的对象。
可清洁物品≠垃圾
这个观点就是我说的,原因是:
1.缓存文件:缓存文件是指为提高重新访问速度而存储的处理和计算结果文件。除了缓存文件的具体术语,缓存是一种广泛应用于整个软硬件环境的技术,如CPU中的缓存(二级、三级缓存)、SSD固态硬盘中的缓存、操作系统的缓存等。 , font cache 等。虽然实现方式不同,但它们的功能和目的是一样的。
2、临时文件:文件是指操作系统和应用程序生成的用于存储中间数据的文件。这些文件具有以下原则:通常对最终用户不可见,用于存储中间数据或用于提高应用程序或操作系统的性能(例如对极长的数组进行排序、分段生成结果、最后合并)。
3. File Cache:文件缓存这是OS X的一个特性,是操作系统利用空闲内存来提高磁盘访问效率的一种机制。例如,OS X 中的首选项不是实时写入的,当您更改系统或 软件 首选项时,OS X 会将这些设置缓存在内存中,然后在“适当的”时间将它们写回磁盘一起。
4. : Pages 这是 OS X 的一个特性。应用程序可以利用这个特性将一些可以随时丢弃的数据(例如重新计算或从磁盘重新读取)放入内存中以提高性能。机制 。
5. 日志:日志包括系统日志、崩溃报告、审计子系统日志、内核崩溃报告、Core Dump 等。这些基本上与用户无关,但对系统监控和故障排除具有重要意义。比如通过内核崩溃报告、Core Dump等可以分析系统或者软件崩溃的原因。
6、软件 :包括卸载后遗留的软件配置文件、库、插件等。
7、神秘的“其他人”,这些数据是很多用户感到困扰的地方,比如:
这里的其他原因与 . (mds) 可以收集和管理磁盘上各类文件的元数据信息,因此可以通过存储在其中的元数据来计算当前系统中各类文件的磁盘占用信息。所以,就是关于这个mac,页面中磁盘文件占用信息的数据源。但无论它多么强大,总有它无法覆盖的数据类型。此时系统对这种无法识别的空间的判断统称为“其他”。
综上所述,我们可以知道,无论是缓存还是其他方式,这些文件与最终用户关系不大,而且往往对最终用户是不可见的。例如,下载 的 iOS 设备更新包对最终用户是不可见的,它实际上存在于磁盘上,备份文件也是如此。但就像空气一样,隐形并不意味着它没有用。所以,在某些方面,我们可以说“系统不需要清理”,或者更准确地说“系统清理不应该需要用户参与”。
事实上,也是如此。OS X 其实有最基本的清理功能:
1、对于用户设置和临时缓存文件等,OS X存放在以下目录,可以通过终端命令获取:
getconf DARWIN_USER_DIR
/var/folders/1s/6908_xvs1qbbql8s__3ml65m0000gp/0/
getconf DARWIN_USER_TEMP_DIR
/var/folders/1s/6908_xvs1qbbql8s__3ml65m0000gp/T/
getconf DARWIN_USER_CACHE_DIR
/var/folders/1s/6908_xvs1qbbql8s__3ml65m0000gp/C/
上述路径的 *1s//* 部分是随机生成的(但对于 root 用户,在当前 OS X 实现下,路径必须以 _/var//zz/_ 开头)。*T* 表示临时文件夹。而同级目录中的*C*代表缓存文件夹。*0* 文件夹是用户相关的配置文件夹: . . 该文件是用户的数据库文件。com.apple.dock。是一个文件夹,其中 db/db 文件用于存储其中的应用程序的排列信息。com.apple。是一个 OS X 文件(文件夹结构),其中包含一个名为的 plist 文件。该文件记录了当前系统中安装的所有Apps、Sync、Today View、信息及其在当前用户下的启用状态(== 1表示启用,== 2表示禁用)。com.apple。是一个文件夹,其中包含当前用户的历史通知数据。临时文件夹中存储的文件有一个特点。如果超过三天没有再次访问该文件(访问时间距当前时间超过三天),系统将自动删除该文件。对于缓存的文件,系统或 软件 负责删除它们。
2. OS X 在用户主目录 (~//)、全局存储库 (//) 和系统存储库 (///) 中有缓存文件夹。系统和应用程序可以将他们需要缓存的任何数据放在这里。典型的是缓存。为了加快启动速度,系统第一次启动时,预先链接内核和所有必要的内核扩展,然后在路径中
/System/Library/Caches/com.apple.kext.caches/Startup/kernelcache
生成一个预链接的内核缓存文件。系统引导将直接使用它来加速引导(只要系统没有看到任何变化,之后就会使用缓存)。对于 iOS 设备,它更加激进。iOS本身不提供单独和kext文件,而是在安装iOS系统时直接安装一个预链接的。
3. OS X是Unix系统,所以有两个传统的临时文件目录,/tmp。这个目录在 OS X 中的实现实际上是一个指向 _//tmp_ 的软链接。/var/tmp怎样才能卸载干净mac上的软件,这个目录的 OS X 实现是到 /var/tmp 的软链接。这两个临时文件夹是 Unix 自带的,区别不明显。OS X 保留这些文件夹作为 Unix 系统的要求,只有系统进程或从 Unix 或 Linux 移植的某些应用程序才使用这两个临时文件夹。/tmp 文件夹会被系统定期清理。在日常维护脚本(daily)中,明确了删除与/tmp文件夹过期文件的操作,见//etc//daily/110.脚本内容(OS X有3次维护脚本, 每日,,,
#!/bin/sh
'' #
'' # $FreeBSD: src/etc/periodic/daily/110.clean-tmps,v 1.13 2004/02/28 04:58:40 ache Exp $
'' #
'' # Perform temporary directory cleaning so that long-lived systems
'' # don't end up with excessively old files there.
'' #
''
'' # If there is a global system configuration file, suck it in.
'' #
'' if [ -r /etc/defaults/periodic.conf ]
'' then
'' . /etc/defaults/periodic.conf
'' source_periodic_confs
'' fi
''
'' case "$daily_clean_tmps_enable" in
'' [Yy][Ee][Ss])
'' if [ -z "$daily_clean_tmps_days" ]
'' then
'' echo '$daily_clean_tmps_enable is set but' \
'' '$daily_clean_tmps_days is not'
'' rc=2
'' else
'' echo ""
'' echo "Removing old temporary files:"
''
'' set -f noglob
'' args="-atime +$daily_clean_tmps_days -mtime +$daily_clean_tmps_days"
'' args="${args} -ctime +$daily_clean_tmps_days"
'' dargs="-empty -mtime +$daily_clean_tmps_days"
'' dargs="${dargs} ! -name .vfs_rsrc_streams_*"
'' [ -n "$daily_clean_tmps_ignore" ] && {
'' args="$args "`echo " ${daily_clean_tmps_ignore% }" |
'' sed 's/[ ][ ]*/ ! -name /g'`
'' dargs="$dargs "`echo " ${daily_clean_tmps_ignore% }" |
'' sed 's/[ ][ ]*/ ! -name /g'`
'' }
'' case "$daily_clean_tmps_verbose" in
'' [Yy][Ee][Ss])
'' print=-print;;
'' *)
'' print=;;
'' esac
''
'' rc=$(for dir in $daily_clean_tmps_dirs
'' do
'' [ ."${dir#/}" != ."$dir" -a -d $dir ] && cd $dir && {
'' find -dx . -fstype local -type f $args -delete $print
'' find -dx . -fstype local ! -name . -type d $dargs -delete $print
'' } | sed "s,^\\., $dir,"
'' done | tee /dev/stderr | wc -l)
'' [ -z "$print" ] && rc=0
'' [ $rc -gt 1 ] && rc=1
'' set -f glob
'' fi;;
''
'' *) rc=0;;
'' esac
''
'' exit $rc
除了这些系统自动清理的文件,系统中还有哪些文件可以安全的清理而不影响系统的运行呢?这里有一个小技巧。当 Time 运行时,它会自动排除某些位置进行备份。这些位置的文件可视为可以安全删除的文件。其实很多软件所谓的 ,也就是清理这些位置的内容:
cat /System/Library/CoreServices/backupd.bundle/Contents/Resources/StdExclusions.plist
ContentsExcluded
/Volumes
/Network
/automount
/.vol
/tmp
/cores
/private/tmp
/private/Network
/private/tftpboot
/private/var/automount
/private/var/folders
/private/var/run
/private/var/tmp
/private/var/vm
/private/var/db/dhcpclient
/private/var/db/fseventsd
/Library/Caches
/Library/Logs
/System/Library/Caches
/System/Library/Extensions/Caches
看,这些地方并没有什么神秘之处。所谓清理,就是清理这些内容。看来这里没必要软件帮你了。
其实所谓的清理软件,他们通常是做什么的呢?使用 Clean My mac 默认设置,
1. 删除不在系统首选语言列表中的语言包,以节省磁盘空间。例如,如果您在系统偏好设置中将英文设置为有限选择语言,那么 Clean My mac 将默认删除其他语言包。
2.缓存,这里是Xcode在开发过程中的缓存、临时文件、预链接库、预处理头文件。如果你是开发者,最好不要让它清理这里的内容。
3、有一种OS X的可执行文件叫做(Fat),就是将2个或多个架构的代码打包成一个二进制的可执行文件,比如i386、ppc、ppc64等,会导致二进制文件的大小增加。大的。CMM 将使用 ditto 或 lipo 来删除不必要的二进制架构以达到瘦身的目的,您可以使用这两个命令自己做。不过需要注意的是,现在很多应用都有代码签名,瘦文件会导致签名验证失败,导致这些程序无法启动,所以要小心。
4.临时文件、缓存文件、保存的iOS更新文件。
5.字体,这是系统为提高系统应用程序性能而生成的缓存。除非你自己加了字体,或者界面显示不正常,根本不需要动,反正会自己生成的。
6、软件删除,以及无用的plist配置文件删除。
所以综上所述,除非你清楚地知道自己要做什么以及可能产生的后果,否则CMM不仅不会清理系统,还可能导致问题或导致需要删除的文件。而且如果删除了很多缓存,应用程序或操作系统会花费大量时间重建它们,这是对CPU资源的浪费。
那么这种类型的 软件 真的没用吗?
事实上,事实并非如此。虽然之前提到了很多相关的问题,但是对于普通用户来说还是很无聊的。使用这种类型的 软件 可以让他们方便地执行一些操作。当您遇到以下问题时,请考虑使用它们:
1. 急需释放磁盘空间(清除缓存和临时文件)。
2. 系统、应用启动、加载异常,如启动慢、加载元素失败、网络访问问题或字体错误等(清除缓存)。
3. 卸载软件
在这里我们最后谈谈软件卸载。我个人认为唯一真正需要用户参与的系统清理是软件卸载。对于用户来说,这是最适合使用CMM等软件的场景。
最后总结:
1. OS X 具有自动清理功能。
2、一般情况下,用户不需要使用任何软件来清理系统。
3、软件的使用只能根据具体需要考虑。
4、在使用软件时,必须在充分了解其功能的情况下使用。
5.在完全卸载软件时考虑使用这些清理软件(我想,如果你不知道如何卸载某个软件,你不应该急于安装它。当卸载,首先应选择 软件 附带的卸载程序(如果可用)。
最后给点建议:
1.最好的系统清理软件,我只推荐两个,付费和免费的OnyX。TTS 是一个非常严谨的系统清理软件,也就是说,他一点也不无脑,他只知道删除和删除一个被用户称赞的软件。
2.在做所有的清理操作之前,需要了解为什么需要清理,预期的结果是什么,需要清理的对象是什么,备份是否到位,有的话能不能hold住一个问题。上面的问题不懂就不要做,问别人或者自己查。99%使用清理软件出事故的人都不是新手用户,也不是像我这样的人,而是对它知之甚少的人。
3. 最好等我发布的新版“OS X ”,它会教你如何处理这些问题。
================================================== ================================================== ================================================== ================================================== ================================================== ================================================;
帖子不够全面,有些地方没有照顾好。如果大家有什么想法或者问题,可以在评论中说明,我会酌情补充。
发表评论