파일에 대한 권한:

파일에 대한 권한:

디렉토리에 755 권한을 부여하고 싶으므로 다음을 사용합니다.

# chmod -R 755 /my/folder/

내 폴더 내의 모든 파일에 대해 작동하지만 문제는 이 폴더에 새 파일을 생성하는 스크립트를 사용하고 기본적으로 권한이 600이라는 것입니다.

이러한 '미래' 파일에 755 권한을 어떻게 부여할 수 있습니까?

--편집하다--

저는 캠퍼스의 네트워크 트래픽에 대한 정보를 제공하는 스크립트를 사용합니다. 다음과 같이 월 폴더에 있는 travel이라는 폴더에 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

문제는 아래의 모든 폴더와 파일에 대해/홈/netmet/보안/기본적으로 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 - umask0777은 디렉토리의 기본 모드이고 0666은 일반 파일이지만 이러한 사항을 올바르게 이해하면 다른 umask가 있습니다. 실행해 보세요 umask a=rx,uu+w.

편집: umask를 사용하여 디렉토리에 실행 비트를 제공하여 CD로 들어갈 수 있지만 파일에는 사용할 수 없습니다. 보안 때문에 실행 비트를 수동으로 제공해야 합니다. chmod +x <file>스크립트에 추가하기만 하면 됩니다 . 그리고 실행 파일 이외의 파일에 설정된 실행 플래그는 아무 효과가 없습니다.

답변2

나는 당신이 스크립트를 실행하고 있다고 추측합니다생성하다umask가 0077로 설정된 환경의 파일입니다. 이렇게 하면 생성 프로그램이 '그룹' 및 '기타' 권한 비트에 권한 비트를 설정하는 것을 방지할 수 있습니다.

umask는 모든 프로세스의 상속된 환경의 일부이며 일반적으로 로그인 시 기본 '프로필'에서 설정됩니다. 모든 프로세스(셸)는 'umask' 명령을 사용하여 자체 및 하위 하위(초기) umask를 수정할 수 있습니다.

현재 umask의 비트는 권한에 이러한 비트가 설정된 파일 생성을 방지합니다(따라서 결과 권한 비트를 마스크하는 "마스크").

답변3

메모: 이는 이상적이지 않으며 임시 해결 방법으로 고려해야 합니다.

5분마다 또는 원하는 대로 chmod 명령을 실행하는 크론 작업을 생성할 수 있습니다.

또한 있습니다inotify

관련 정보