写真アプリで使用される多くのバックグラウンドサービスは、私が利益を得ることを望まない機能を実行します(場合によっては、積極的には望まない)。主にこれらはphotoanalysisd
とcloudphotosd
です。私は、写真アプリが動作するために前者が厳密に必要ではないことを合理的に確信しています(いくつかの機能に必要な場合)私は後者については少し確信がありませんが、それは正確に問題の推力ではありません。(photolibraryd
私はアプリがまったく正しく動作するために必要であることに気づいているので、私はそれに触れていません)。
私が立ち往生しているように見えるのは、彼らの立ち上げが尊重されていないように見えることlaunchctl disable
です。実際、launchctl print gui/$UID
両方のデーモンがdisabled services
セクション内に含まれ、フラグはに設定されtrue
ていますが、どちらも実行されていません。写真アプリは、起動するとすぐにこれらのデーモンを起動します。launchd
写真アプリを起動してテスト後にチェックしてもフラグは変更されないため、でそれらを有効にしません。
間違ったlaunchd
ドメインでそれらを無効にする可能性を考慮して、私はドメインでそれらを無効にしてみましたが、system
何の効果もありません。
またlaunchctl unload -w
、対応する.plist
ファイルでレガシーパターンを使用しようとしまし/System/Library/LaunchAgents/
たがlaunchctl
、その場合、サービスが見つからないという通知を受けました。
いくつかの揮発性状態をフラッシュまたはリロードする必要がある場合、それらのサービスに無効のフラグが付けられたことを確認した後、システムをシャットダウンして再起動しました。写真アプリが起動するとすぐに戻ってきました。
launchctl blame gui/$UID/cloudphotosd
サービスはのために開始されたと簡単に述べましたが、xpc (mach)
実際にはあまりわかりません(ここでのプロセス間通信は、おそらくサービスを開始する写真アプリにすぎません)。
これらの特定のバックグラウンドプロセスを実際に無効にして、システムから削除したり、その他の「破壊的な」変更を行ったりせずに、写真アプリで起動できないようにする方法を考えています。または、言い換えれば、おそらく実際の実行可能ファイルを見つけてアーカイブのためにどこかに移動することはできますlaunchd
が、特定のサービスを実際に禁止する方法がシステム内で機能しているかどうかについて私は興味がありません打ち上げから。私はそれがlaunchctl disable
...だと思ったが、この例では効果がないように見えるので、そうではないようだ。
編集:明確にする必要があります、これはmacOS 10.14 / Mojaveにあります。
launchd
サービスシステムの「外部」で動作しますが、他の場所に移動するよりも破壊的ではありません。システム内に、おそらく私がやることになる方法がないことが判明した場合、ありがとう!
chmod -x
バイナリを入れている?誤って新しいバージョンを起動するのを防ぐために、iTunesの2つの異なるバージョンを管理しているときにそれを行いました。