bra*_*blc 99
https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X描述了如何使用 native 卸载 .pkg pkgutil
。
修改后的摘录
$ pkgutil --pkgs # list all installed packages
$ pkgutil --files the-package-name.pkg # list installed files
Run Code Online (Sandbox Code Playgroud)
在目视检查文件列表后,您可以执行以下操作:
$ pkgutil --pkg-info the-package-name.pkg # check the location
$ cd / # assuming the package is rooted at /...
$ pkgutil --only-files --files the-package-name.pkg | tr '\n' '\0' | xargs -n 1 -0 sudo rm -f
$ pkgutil --only-dirs --files the-package-name.pkg | tail -r | tr '\n' '\0' | xargs -n 1 -0 sudo rmdir
Run Code Online (Sandbox Code Playgroud)
毋庸置疑,删除具有 root 权限的文件时应始终格外小心。特别要注意,某些软件包可能会更新共享的系统组件,因此卸载它们实际上会通过删除必要的组件来破坏您的系统。
对于较小的包,在目视检查包文件列表后手动删除文件可能更安全。
显然, 中曾经有一个--unlink
选项可用pkgutil
,但从 Lion 开始,手册页中没有提到它。也许它被移除是因为它被认为太危险了。
卸载文件后,您可以使用以下命令删除收据:
$ sudo pkgutil --forget the-package-name.pkg
Run Code Online (Sandbox Code Playgroud)
Che*_*ion 21
系统内置没有使用卸载程序卸载文件的选项,因此您可以自己制作卸载程序或手动删除文件。
确定已安装哪些文件的最佳方法是尽可能获取原始文件.pkg
。如果这是不可能的,您也可以使用收据代替/Library/Receipts
。您最大的问题是当您处理.mpkg
包含多个.pkg
文件的 a 时,您将不得不.pkg
在该文件夹中找到所有单独的文件(幸好按日期排序时并不那么困难)。
获得.pkg
文件(收据或完整安装文件)后,您可以使用实用程序创建卸载程序或查找文件,以便您可以手动删除它们:
卸载程序
Absolute Software InstallEase是一个免费程序,可以从现有的 .pkg 文件创建卸载程序。制作卸载.pkg
程序文件(注意:您需要安装 Apple 的开发工具才能实际制作该.pkg
文件)
手动
使用Pacifist 之类的程序或Suspicious Package 之类的 QuickLook 插件,您可以查看安装了哪些文件以及安装在什么位置。使用该列表,您可以手动导航到这些文件夹并删除文件。在我发现 InstallEase 之前,我已经无数次亲自使用过这种方法,但是如果安装没有分散在许多位置,这通常仍然更快。
小智 11
您还可以使用 UninstallPKG ( http://www.corecode.at/uninstallpkg/ )卸载 .pkg 软件包
[完全披露:是的,我是作者]
归档时间: |
|
查看次数: |
121618 次 |
最近记录: |