디렉토리 권한 "d"를 제거할 수 있습니까?

디렉토리 권한 "d"를 제거할 수 있습니까?

나는 대해 알고있다모든 것은 문서이다(Wikipedia). 파일 권한을 조사하면서 디렉터리 파일 형식을 일반 일반 파일 형식으로 변경하는 것이 가능한지 궁금했습니다.

예를 들어:

mkdir directory그리고 touch file다음 내용이 표시됩니다.

drwxr-xr-x 2 user group 4096 Aug 18 22:26 directory
-rw-r--r-- 1 user group    0 Aug 18 22:26 file

directoryLinux(또는 Unix) 세계에서 로 변환하는 것이 가능합니까 file? 즉, d?drwxr-xr-x

답변1

d권한이 아니라 파일 형식입니다. 과거 Unix 파일 시스템 구현에서는 유형과 권한이 16비트로 번들되었습니다.modei 노드 도메인1, 이것이 아마도 stat(2)API( st_mode필드)와 ls긴 출력도 함께 묶는 이유일 것입니다.

단, 종류는 변경할 수 없습니다. 원래 디렉토리 데이터는 일반 파일과 동일한 방식으로 저장되었으며 사용자 공간에 불투명하지 않았지만 이제는 특정 시스템 호출을 사용하여 내용을 읽거나 항목을 추가/제거/이름 바꾸기 위해 직접 내용을 읽고 쓰는 대신 디렉터리), 일부 파일 시스템에서는 디렉터리 데이터가 파일과 다르게 저장되기 때문에 유형을 변경하는 것이 훨씬 더 의미가 없습니다.


¹ 낮은 12비트 권한, 더 높은 비트 인코딩 유형 및 더 많은 내부 FS 관련 항목 등i_flagV7에서 별도의 새로운 필드 로 이동됨1970년대 후반.

관련 정보