파일 시스템은 컴퓨터에서 자료들을 쉽게 발견하고 관리할 수 있게 하는 체계
사용자 영역이 아닌 커널 영역에서 동작하며, 파일의 읽기, 쓰기, 삭제 등의 기능을 효율적으로 수행하며, 모든 OS(Operating System)에서 지원한다.

/: 리눅스 파일 체제의 최상위 디렉토리로, 모든 디렉토리의 시작점
/bin: 필수적인 바이너리 실행 파일들이 들어있음 (예: ls, cp, mv, cat 등)
/dev: 시스템의 장치 파일이 위치하는 곳
/etc: 시스템 설정 파일들이 저장되는 위치
/home: 사용자의 개인 데이터와 설정 파일이 저장되는 디렉토리
/sbin: 시스템 관리와 관련된 실행 파일들이 들어있는 디렉토리
/tmp: 임시 파일을 저장하는 곳
/usr: 사용자들이 사용하는 응용 프로그램과 파일들이 위치하는 디렉토리
/var: 자주 변하는 데이터를 저장하는 곳
| 기능 | Windows | Linux |
|---|---|---|
| root | C:\ | / |
| 사용자 폴더 | C:\Users{username} | /home/{username} |
| 설정 | 폴더는 숨겨져 있지만 제어판으로 접근 | /etc |
| 시스템 파일 | C:\Windows\ | /bin, /sbin |
| 설치 프로그램 | C:\Program Files | /usr |
절대 경로: 루트 디렉토리부터 해당 파일에 이르는 경로
상대 경로: 현재 디렉토리를 기준으로 표기하는 경로
| 상대 경로 | 절대 경로 |
|---|---|
| ../ ../ | / |
| .. | /home |
| . | /home/ohgiraffers |
pwd: 현재 디렉토리 출력
cd: 현재 디렉토리 변경
ls: 디렉토리 안의 파일 출력
ls: 디렉토리 내의 파일 및 디렉토리 목록을 출력
## 시간순으로 나열하기
ls -lt
## 큰 사이즈 우선
ls -lSh
## 작은 사이즈 우선
ls -lSrh
## 인간이 보기 쉬운 용량
ls -lh
✅ 주요 옵션:
| 옵션 | 단어 | 내용 |
|---|---|---|
| -r | reverse | 거꾸로 나열한다. |
| -R | recursive | 하위 디렉토리도 검색한다. |
| -h | human | 사이즈를 인간이 보기 쉽게 K, M, G 단위로 표시한다. |
| -t | time | 시간 순서로 나열한다. |
| -a | all | 숨겨진 파일이나 디렉토리도 전부 표시한다. |
| -l | long | 자세한 내용을 출력한다. 권한: 포함된파일수 : 소유자 : 그룹 : 파일크기 : 수정일자 : 파일이름 |
| -S | size | 파일의 크기 순으로 표시한다. |
➡️ 디렉토리 생성:
$ mkdir [옵션] <작성할 디렉토리 이름>
## 현재 디렉토리 확인
$ pwd
## testDir 디렉토리 만들기
$ mkdir testDir
## 디렉토리 확인
$ ls
## 만들어진 testDir로 이동
$ cd testDir
➡️ 중간 경로가 없을 시 -p 옵션 사용:
$ mkdir -p 디렉토리1/디렉토리2/...
➡️ 파일 생성:
$ touch <생성할 파일1> <생성할 파일2> ...
➡️ 파일 삭제:
$ rm [옵션] <삭제할 파일1> <삭제할 파일2> ...
➡️ 디렉토리 삭제:
$ rm -r <삭제할 디렉토리1> <삭제할 디렉토리2> ...
$ rmdir <삭제할 디렉토리1> <삭제할 디렉토리2> ... # 비어있는 디렉토리만
➡️ 파일 내용 출력:
$ cat [옵션] <파일 이름1> <파일 이름2> ...
$ cat /etc/hostname
$ cat -n /etc/crontab # 행번호 붙여 출력
➡️ 파일 복사:
$ cp [옵션] <복사할 파일> ... <복사할 위치>
➡️ 디렉토리 복사:
$ cp -r dir1 dir2
➡️ 파일 및 디렉토리 이동:
$ mv [옵션] <이동할 파일> ... <이동할 위치>