sudo
実行権限を必要とする Python スクリプトを作成しました(ICMP リクエストを実行)。このスクリプトは、小さなディレクトリといくつかの.csv
ファイル、およびlog.txt
ファイルを作成します。最初は、プログラムを実行した後、ディレクトリとファイルの作成をテストするために実行した後に成果物を削除することができました。
突然、OS X Finder がディレクトリとログ ファイルを削除する権限を求めてきました。chmod 775 *
モジュールがあるディレクトリで を実行し、必要に応じてフォルダとファイルを削除しました。ただし、スクリプトを再度実行すると、権限を再度満たす必要があります。またchmod
、ファイルとフォルダを削除できます。ただし、プログラムを実行するたびに同じ問題が発生します。
これを永久的に修正する方法について何か提案はありますか?
答え1
OP と私との間の上記のコメントに基づくと、権限の問題の根本的な原因は、Python スクリプトで作成されたフォルダー/ファイルが OP のユーザー アカウントではなく、root によって所有されていることです。実行中に作成されたものはすべて、sudo
root によって所有されます。
chmod
この問題を回避するには、スクリプトにまたはコマンドを含めてchown
、ファイル/フォルダを削除する権限をオペレータのユーザー アカウントに付与します。 をお勧めします。これはchown
、Finder (Mavericks 内) がルートが所有者であることを検出し、ユーザーにプロンプトを表示している可能性があるためです。これは、アカウントに完全な権限 (グループ権限経由) がある場合でも発生します。Finder がルート所有のファイルに特別なレベルの保護を設定している可能性があります。chown
スクリプトで を使用すると、ターミナルと Finder のすべてが適切に設定されるはずです。