ファイルの権限:

ファイルの権限:

ディレクトリに 755 の権限を与えたいので、次のようにします。

# chmod -R 755 /my/folder/

これはフォルダー内のすべてのファイルに対して機能しますが、問題は、このフォルダーに新しいファイルを作成するスクリプトを使用しており、デフォルトでは権限が 600 になっていることです。

これらの「将来の」ファイルに 755 の権限を課すにはどうすればよいでしょうか?

- 編集 -

私はキャンパス内のネットワーク トラフィックに関する情報を提供するスクリプトを使用しています。次のように、month フォルダー内の Journey というフォルダーに、10 分ごとに新しいファイルが作成されます。

ls -lrt /home/netmet/secure/2017-04/2017-04-27/
total 118548
-rwxr-sr-x 1 root root   85922 avril 27 00:10 zzaccounting.dmp-00-00
-rwxr-sr-x 1 root root   54874 avril 27 00:20 zzaccounting.dmp-00-10
-rwxr-sr-x 1 root root   33534 avril 27 00:30 zzaccounting.dmp-00-20
-rwxr-sr-x 1 root root   48890 avril 27 00:40 zzaccounting.dmp-00-30
-rwxr-sr-x 1 root root   36878 avril 27 00:50 zzaccounting.dmp-00-40
-rwxr-sr-x 1 root root   37034 avril 27 01:00 zzaccounting.dmp-00-50
-rwxr-sr-x 1 root root   38154 avril 27 01:10 zzaccounting.dmp-01-00
-rwxr-sr-x 1 root root   38318 avril 27 01:20 zzaccounting.dmp-01-10
-rwxr-sr-x 1 root root   26978 avril 27 01:30 zzaccounting.dmp-01-20
-rwxr-sr-x 1 root root   31558 avril 27 01:40 zzaccounting.dmp-01-30
-rwxr-sr-x 1 root root   23662 avril 27 01:50 zzaccounting.dmp-01-40
-rwxr-sr-x 1 root root   32298 avril 27 02:00 zzaccounting.dmp-01-50
-rwxr-sr-x 1 root root   30282 avril 27 02:10 zzaccounting.dmp-02-00
-rwxr-sr-x 1 root root   31110 avril 27 02:20 zzaccounting.dmp-02-10
-rwxr-sr-x 1 root root   25718 avril 27 02:30 zzaccounting.dmp-02-20
-rwxr-sr-x 1 root root   26306 avril 27 02:40 zzaccounting.dmp-02-30
-rwxr-sr-x 1 root root   23690 avril 27 02:50 zzaccounting.dmp-02-40
-rwxr-sr-x 1 root root   23002 avril 27 03:00 zzaccounting.dmp-02-50
-rwxr-sr-x 1 root root   21854 avril 27 03:10 zzaccounting.dmp-03-00

ここで手動で権限を変更しましたが、新しいファイルが表示されると、次のようになります。

-rw------- 1 root root 3479106 avril 27 15:50 zzaccounting.dmp-15-40

問題は、/home/netmet/secure/デフォルトで 755 権限が必要です。

私はすでにこれをやりました:

chmod -R g+s /home/netmet/secure   
setfacl -d -m g::rwx /home/netmet/secure   
setfacl -d -m o::rx /home/netmet/secure   

答え1

umaskフォルダー内で 実行してみてください。 '0022' 以外の値が返された場合は、これが問題です。あなたの場合、最初に '0177' が出力されるはずです。ディレクトリを作成するときの権限システムは基本的に計算されます。default - umaskディレクトリのデフォルト モードは 0777、通常のファイルの場合は 0666 ですが、私の理解が正しければ、umask は異なります。 を実行してみてくださいumask a=rx,uu+w

編集: umask を使用してディレクトリに実行ビットを与え、そこに cd できるようにすることができますが、ファイルには実行ビットを与えることはできません。セキュリティ上の理由から、ファイルには手動で実行ビットを与える必要があります。chmod +x <file>スクリプトに追加するだけです。また、実行可能ファイル以外のファイルに実行フラグを設定しても効果はありません。

答え2

おそらく、あなたはスクリプトを実行しているのでしょう生成するumask が 0077 に設定されている環境のファイル。これにより、生成プログラムが「グループ」および「その他」の権限ビットに権限ビットを設定することが防止されます。

umask はプロセスの継承環境の一部であり、通常はログイン時にデフォルトの「プロファイル」から設定されることに注意してください。どのプロセス (シェル) でも、「umask」コマンドを使用して、自分自身の umask と子孫の (初期) umask を変更できます。

現在の umask のビットは、パーミッションにこれらのビットが設定されているファイルの作成を防止します (つまり、「マスク」となり、結果として得られるパーミッション ビットをマスクします)

答え3

注記: これは理想的ではないので、一時的な回避策として検討する必要があります。

5 分ごと、または好みに応じて chmod コマンドを実行する cron ジョブを作成できます。

また、通知

関連情報