Oracle Linux Server 7.8에서 Weblogic 설치를 실행하고 있습니다. weblogic의 응용 프로그램은 일부 파일을 로컬 디렉터리에 출력으로 씁니다. 이 애플리케이션은 Oracle Weblogic FileAdapter를 사용합니다.
setgid를 사용하여 디렉터리를 설정합니다.
[wesley@wesley from]$ ls -la
total 52
drwxrwsrwx 2 wesley group1 45056 Sep 14 16:15 .
drwxrwxrwx 3 wesley group1 4096 Sep 11 14:45 ..
애플리케이션이 디렉터리에 쓸 때 다음과 같은 상황이 발생합니다.
[wesley@wesley from]$ ls -la
total 816
drwxrwsrwx 2 wesley group1 45056 Sep 14 16:15 .
drwxrwxrwx 3 wesley group1 4096 Sep 11 14:45 ..
-rw-rw-r-- 1 oracle oinstall 57 Sep 14 15:05 20200914150523990.txt
따라서 setgid는 무시되고 파일은 디렉터리 그룹이 아닌 파일을 쓰는 프로세스의 그룹을 가져옵니다.
파일을 터치하기만 하면 예상대로 작동하고 새 파일에 올바른 그룹이 표시됩니다.
[wesley@wesley from]$ sudo su oracle
[oracle@wesley from]$ touch abc
[oracle@wesley from]$ ll
total 0
-rw-rw-r-- 1 oracle group1 0 Sep 15 11:15 abc
응용 프로그램이 setgid를 무시하고 있거나 잘못 구성했을 가능성이 있습니까? 팀을 강제할 수 있는 방법이 있나요?
내 다음 아이디어는 기록되는 디렉터리 그룹을 확인하고 프로그래밍 방식으로 파일을 올바른 그룹에 추가하여 "더러운" 해결 방법을 만드는 것이었습니다.
고쳐 쓰다:
출력 폴더는 NFS 마운트에 있습니다. 아마도 이것이 이유일 것이다. 출력을 예를 들어 /tmp/output으로 변경하면 파일이 올바른 그룹을 가져옵니다.
drwxrwsrwx 2 wesley group1 4096 Sep 15 11:40 .
drwxrwxrwx. 245 root root 16384 Sep 15 11:45 ..
-rw-rw---- 1 oracle group1 824958 Sep 15 11:40 20200914150523990.txt
설치 구성이나 다른 곳에서 해결책을 찾으면 업데이트하겠습니다.
업데이트 2:
NFS 문제는 아닌 것 같습니다. 실패한 첫 번째 디렉터리는 NFS의 디렉터리에 연결된 /vip/uri/from에 있습니다. 이제 /vip/aaa/bbb 아래에 NFS가 아닌 로컬 디렉토리를 생성했는데 동일한 문제가 발생했습니다. 여기에 생성된 파일은 디렉터리 그룹이 아니라 파일을 작성하는 프로세스의 사용자 그룹을 가져옵니다.
작업 및 비작업 디렉토리에 대한 통계:
File: ‘/tmp/output’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fc00h/64512d Inode: 67747909 Links: 2
Access: (2777/drwxrwsrwx) Uid: (54322/wesley) Gid: (54323/group1)
Access: 2020-09-15 17:39:59.014193471 +0200
Modify: 2020-09-15 17:39:55.226794047 +0200
Change: 2020-09-15 17:39:55.226794047 +0200
Birth: -
File: ‘/vip/aaa/bbb/’
Size: 4096 Blocks: 8 IO Block: 32768 directory
Device: 2fh/47d Inode: 25954 Links: 2
Access: (2777/drwxrwsrwx) Uid: (54322/wesley) Gid: (54323/group1)
Access: 2020-09-15 17:31:19.613972000 +0200
Modify: 2020-09-15 17:30:31.016081000 +0200
Change: 2020-09-15 17:30:31.016081000 +0200
Birth: -