CentOS Linux에서 권한 상속이 이상합니다.

CentOS Linux에서 권한 상속이 이상합니다.

체계: CentOS 버전 6.4(최종 버전)

질문:동일한 시스템에 동일한 umask:022가 있지만 /B/test/2018폴더를 생성하고 그 안에서 파일을 이동할 때 이상한 상속 문제가 있습니다.

test@CMS-OPER-01 ~]$ umask 
0022

프로세스 작업:

  • Tomcat은 루트로 실행됩니다.

    [test@CMS-OPER-01 ~]$ ps aux | grep tomcat
    root 15633 2.1 3.4 14387604 1118180 ? Sl 2017 2848:00 /usr/java/default/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -XX:PermSize=256m -XX:MaxPermSize=256m -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
    
  • /A/test/2018웹 응용 프로그램은 폴더에서 다른 폴더 로 파일을 이동합니다 ./B/test/2018

시스템의 스토리지 마운트:

[test@OPER-01 201801]$
1.1.1.10:/hnas1-data01
                      200T  176T   25T  88% /A
1.1.1.11:/hnas1-data02
                      200T   72T  129T  36% /B

상위 폴더와 동일한 권한:

[test@OPER-01 -]$ getfacl /A/test/201801
getfacl: Removing leading '/' from absolute path names
# file: A/test/201801
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[test@OPER-01 -]$ getfacl /B/test/201801
getfacl: Removing leading '/' from absolute path names
# file: B/test/201801
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

상위 폴더에 폴더를 생성하면 이동된 파일은 동일한 umask에도 불구하고 다른 권한을 갖습니다 022:

[test@OPER-01 -]$ getfacl /A/test/201801/*
# file: A/test/201801/197275
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[test@OPER-01 -]$ getfacl /B/test/201801/*
# file: B/test/201801/197258
# owner: root
# group: root
user::rwx
group::r-x
other::--x

답변1

umask 및 기본 ACL(귀하의 경우에는 존재하지 않음)은 새로 생성된 객체에만 영향을 미칩니다. 즉, 일반 파일의 경우 특정 프로세스를 실행해야 합니다 open()(또는 mkdir()디렉터리의 경우).

권한은 생성 시( open()매개변수, umask 및 기본 ACL을 기반으로) 결정되고 inode에 저장됩니다.

파일이 방금 이동되었고(파일 시스템 내에서) rename()이 시스템 호출이 inode에 전혀 영향을 주지 않고 파일 시스템 계층 구조에 표시된 위치에만 영향을 미치는 경우 호출됩니다.

관련 정보