反対 に対する意見にもかかわらず、すべてのパッケージが1つのディレクトリのみにクリーンにインストールされるわけではありません。できれば元のパッケージを使用して(またはインストールされたパッケージに関する情報のリポジトリから)、pkgファイルのインストールプロセスを元に戻す方法はありますか?
具体的には、Intel MacBookにPowerPC MySQL 5.4.1パッケージをインストールしましたが、それを完全に元に戻したいのですが、5.1 x86インストールをリカバリすると、まだそこにありますが、現在は正しく機能していません。
https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X は、ネイティブpkgutil
を使用して.pkgをアンインストールする方法を説明しています。
変更された抜粋
$ pkgutil --pkgs # list all installed packages
$ pkgutil --files the-package-name.pkg # list installed files
ファイルのリストを視覚的に検査した後、次のようなことができます。
$ 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
言うまでもなく、root権限でファイルを削除するときは、常に細心の注意を払う必要があります。特に、一部のパッケージは共有システムコンポーネントを更新する可能性があるため、それらをアンインストールすると、必要なコンポーネントが削除されてシステムが実際に破損する可能性があることに注意してください。
小さなパッケージの場合、パッケージファイルのリストを目視で確認した後、手動でファイルを削除する方が安全です。
どうやら、--unlink
オプションはpkgutil
で使用できますが、Lionの時点では、manページには記載されていません。危険すぎると判断されたため削除された可能性があります。
ファイルをアンインストールしたら、次の方法で領収書を削除できます。
$ Sudo pkgutil --forget the-package-name.pkg
システムに組み込まれているため、アンインストーラーを使用してファイルをアンインストールするオプションはないため、自分でアンインストーラーを作成するか、ファイルを手動で削除できます。
インストールされているファイルを判別する最良の方法は、可能であれば元の.pkg
を取得することです。これが不可能な場合は、代わりに/Library/Receipts
にある領収書を使用することもできます。最大の問題は、複数の.mpkg
ファイルを含む.pkg
を処理しているときに、そのフォルダー内のすべての.pkg
ファイルを見つける必要があるためです(ソートすると、それほど難しくありません)日付別)。
.pkg
ファイル(領収書または完全インストールファイル)を取得したら、ユーティリティを使用してアンインストーラーを作成するか、ファイルを見つけて手動で削除できます。
アンインストーラー
Absolute Software InstallEase は、既存の.pkgファイルからアンインストーラーを作成できる無料のプログラムです。アンインストーラー.pkg
ファイルを作成します(注:実際に.pkg
ファイルを作成するには、Appleの開発ツールをインストールする必要があります)
手動で
Pacifist などのプログラム、または Suspicious Package のようなQuickLookプラグインを使用すると、インストールされているファイルとその場所を確認できます。そのリストを使用して、それらのフォルダーに手動で移動し、ファイルを削除できます。私はInstallEaseを発見する前にこの方法を個人的に数え切れないほど使用しましたが、多くの場所にインストールが広がっていない場合は、これは多くの場合さらに高速です。
uninstallPKGで.pkgパッケージをアンインストールすることもできます( http://www.corecode.at/uninstallpkg/ )
[完全な開示:はい、私は著者です]
私は先月同じホイールを作りました、それはPackage Uninstallerと呼ばれ、オープンソースでgithubでホストされています: https://github.com/hewigovens/PackageUninstaller 、
[こちら]からダウンロードして試してみてください。( http://sourceforge.net/projects/packageuninstaller/files/latest/download )
Shell srciptを作成しました
あなたはそれを試すことができます
https://github.com/iamrToday/pkg-remove
これは.gifデモを示しています。ソースコードを見ることができます。 brablc's コマンドラインをラップするだけです。これを実行して情報を検索したり、apkを削除したりできます。インタラクティブです。
このサイトからの提案を試すことができます: http://www.entropy.ch/software/macosx/mysql/remove-old-mysql.html 。また、アドビサポートサイトにこれに関する記事があります。ここにリンクがあります: http://support.Adobe.com/devsup/devsup.nsf/docs/52355.htm 。
また、通常pkgファイルをdmgに通常持つアプリアンインストールに使用される別のpkgもあります。これが本当かどうかはわかりませんが、元のdmgファイルを保持するようにお知らせします。