카테고리 없음
리눅스는 디렉토리를 어떻게 일반 파일이 아니라 디렉토리라고 인식하는걸까?
Rosieblue
2024. 6. 10. 19:56
728x90
사실 디렉토리 안에 파일들 이름들 저장되어있으니까(UNIX 파일시스템 기준), 실제로 디렉토리 안의 contents을 읽어보고 싶어졌다. (ls 말고...)
그런데 cat이나 xxd등의 일반 읽기 명령어로 읽으려고 하면 계속 ~~is directory가 뜨고 안됐다ㅜㅜ
(참고로 vi로는 읽을 수 있었는데 얘가 디스크에 있는 ㄹㅇ 찐 컨텐츠 자체를 읽는건 아닌듯 근데 암튼 이것도 신기하긴 했음)
그래서 찾아봤더니, inode에 파일의 형식이 저장되어있다고 한다.
- 일반 파일: S_IFREG (0100000)
- 디렉토리: S_IFDIR (0040000)
- 심볼릭 링크: S_IFLNK (0120000)
- 문자 장치 파일: S_IFCHR (0020000)
- 블록 장치 파일: S_IFBLK (0060000)
- 파이프(명명된 FIFO): S_IFIFO (0010000)
- 소켓: S_IFSOCK (0140000)
요런식으로~
그러면 inode는 어떻게 수정하지..?이건 다음에 가져오겠음 ㅃㅃㅇ
글고 왜 디렉토리들은 다 4096byte일까...? 이것도 궁금함