メニュー ホーム

LaunchAgentサービスにおけるOperatuon not permittedエラーの問題

簡単なことだったのかもしれませんが、New iMacにしてからLaunchAgentへ登録したスクリプトが

find: Failed to save initial working directory: Operation not permitted

上のコードではFindがエラーを吐いていますが、コメントアウトしても違うコマンドが同じPermition関連のエラーを吐きます。FDA(Full Disk Access)がらみのエラーであるのはわかりますが、原因がわかりませんでした。FDAがキツくなってユーザーのエージェントにまで影響が出るのは困ったものだなぁ、と思いつつ原因をあちらこちらを検索して探していました。

python – how to fix “Operation not permitted” when i use launchctl in macos catalina – Stack Overflow

上記のリンクはCatalina時代のものですが、ドンピシャな答えがありました。曰く「BashにFDAを設定せよ」です。ほんまかいなと思いながら、zsh(私のスクリプトはzshで動いていました)にFDAを設定したら、あら不思議エラーが消えて実行できるじゃありませんか。これでしたね。

しかし納得はできない…

Bash/Zshはユーザーにとって重要な入り口のソフトです。基本的なと言ってもいいと思います。FDAにこれらを登録しないと動かないというのは、いくら何でもキツすぎるんじゃないか。

実は、ターミナル上でユーザー権限で実行するとエラーなく動くんですよ。スクリプトにエラーがないのはこれでわかりました。そうするとFDAだ。そこまではわかるんですよ。スクリプト自体もFDA設定しました。スクリプトが動く基本的な部分であるbash/zshにはFDA設定されていない(デフォルトでと言う意味で)。それは無いんじゃないかと思ったわけです。

安全対策であるのはよく分かります。しかしねぇ…

投稿者プロフィール

會澤 賢一
新潟県在住。1964年生まれ、東京オリンピックの年ですね。
突然燃え上がったり、鎮火したり興味の波が激しいので注意が必要です。

カテゴリー:Linux Mac

會澤 賢一

新潟県在住。1964年生まれ、東京オリンピックの年ですね。
突然燃え上がったり、鎮火したり興味の波が激しいので注意が必要です。

お気軽にコメントを残していってください