많이 쓰지 않다 보니 잊고 있었는데
open() 시스템 콜 사용에서 퍼미션 설정시 0644라고 해야지 644로 하면 이상한 퍼미션으로 생성된다.
원인을 찾다보니.. 0644 라고 써야 할걸 귀찮아서(?!) 644라고 썼더니 오작동 한 것 같은데
16진수가 아니라 굳이 8진법을 쓰는 이유는
rwx로 조합되는 것이 2^3 = 8 이기 때문 이려나?
새삼 이런데서 8진법으로 표기한다는게 신기하네..
--w----r-T
아무튼 644로 표기하면 위의 희한한 퍼미션으로 생성된다.
T니까.. stikcy bit고.. 이거 1000(8) 일텐데
644(10) = 1204(8) = 284(16)
더럽게(!) 우연히 1000(8)이 들어가 버렸네?
'Linux API > linux' 카테고리의 다른 글
spi 통신 예제(linux) (0) | 2021.01.28 |
---|---|
linux USB bulk 통신 (0) | 2020.10.21 |
open with O_CREAT or O_TMPFILE in second argument needs 3 arguments (0) | 2020.09.28 |
open() read() write() close()를 이용한 cp 예제 (0) | 2020.09.28 |
fopen64 (0) | 2019.06.24 |