Debian – Permissions on Files:

chmoddebianpermissionsumask

I would like to give 755 permissions to a directory, so I use:

# chmod -R 755 /my/folder/

It works for all files inside my folder, but the problem is that I use scripts that create new files in this folder, and by default the permissions are 600.

How could I impose, 755 permissions on these 'future' files ?

–EDIT–

I use a script that gives me info about network traffic on my campus. I have a new file every 10 minutes, located in a folder called journey, located in the month folder like this :

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

Here I changed permissions by hand but when new the file appears, I have this :

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

The thing is that for every folder and file under /home/netmet/secure/ I want 755 permision by default.

I have already done this :

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

Best Answer

Try to run umask in your folder. If it returns anything other than '0022' then this is your problem. In your case it should initialy output '0177'. The permission system when creating directory is basically computed: default - umask 0777 is the default mode for directories, and 0666 to ordinary files, but there are different umasks, if I understand these things right. Try to execute umask a=rx,uu+w.

EDIT: You can use umask to give execute bit to directory to be able to cd into it, but not to files. These have to be given execute bit manually because of security. Simply add chmod +x <file> to your script. And, execute flag set on file anything other than executable has no effect.

Related Question