값은 1777
다음 권한입니다 rwxrwxrwt
.
touch target.txt
chmod 1777 target.txt
ls -al target.txt
-rwxrwxrwt 1 debian debian 0 Jul 14 20:24 target.txt
다음 권한 문자열을 얻어야 합니다 rwSrwSrwT
.
ls -al sample
-rwSrwSrwT 1 debian debian 0 Jul 14 20:24 sample
그렇다면 그 가치를 어떻게 계산할 것인가 rwSrwSrwT
?
답변1
귀하의 질문에 대한 직접적인 대답은 입니다 7666
.
$ chmod 7666 target.txt
$ ls -l target.txt
-rwSrwSrwT 1 svsv svsv 0 Jul 14 13:20 target.txt
4비트 패턴의 최상위 비트는 setuid( ---S------
), setgid( ------S---
) 및 Sticky( ---------T
) 비트에 영향을 미칩니다. 비트와 동일한 위치에 라벨이 붙어 있으며 , 그 x
이상은 해당 비트가S
T
x
아니요놓다.
이는 참조 예제로 사용할 수 있습니다.
0000 = ----------
0111 = ---x--x--x
1000 = ---------T
1111 = ---x--x--t
2000 = ------S---
2111 = ---x--s--x
... = ...
7000 = ---S--S--T
7111 = ---s--s--t
7666 = -rwSrwSrwT
7777 = -rwsrwsrwt
답변2
알아내는 방법:
#↳ touch file
#↳ chmod a=rw,ug+s,+t file
#↳ stat file
File: file
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 5131644 Links: 1
Access: (7666/-rwSrwSrwT) Uid: ( 1000/ cad) Gid: ( 1000/ cad)
Access: 2023-07-15 20:56:08.363457855 +0100
Modify: 2023-07-15 20:56:08.363457855 +0100
Change: 2023-07-15 20:56:16.583445800 +0100
Birth: 2023-07-15 20:56:08.363457855 +0100
대답은 4번째 줄에 있습니다 stat
.