virtual box 에 우분투를 설치 했다.
용량을 확인 하기 위해 몇번 "df' 란 명령을 친 적이 있다.
여기서 궁금해 진다.
명령어가 "du" 로 시작하는 것도 있는데 먼 차이인가?
df와 du의 차이점
| 기준 | df (disk free) | du (disk usage) |
| 측정대상 | 파일 시스템 전체를 측정 한다 | 특정파일이나 디렉토리를 측정 한다 |
| 용량기준 | 실제 파일 시스템 크기와 사용량 표시 | 특정 파일이나 디렉토리가 차지하는 용량 |
| 용도 | 시스템 상태를 점검 (전체 용량 관리) | 디렉토리별 공간 사용량 분석ㅇ |
df 와 du 의 용도를 알았으니 이제 명령어로 써 보자.
1. 전체 용량 확인
(-h 는 사람이 보기 편하게 해달라는 옵션)
df -h

2. 머 한것도 없는데 / 에 용량이 88%를 쓰고 있다.
머가 용량을 잡아 먹고 있지??
이걸 알아내려면 그렇지 디렉토리별로 사이즈를 보는 du 를 써보자.
"du -h /" 를 쳤다. ("/" 에 있는 디록토리별 용량을 보려고 한것이다.)
"du- h /" 를 쳐보면 알것이다.
"/" 루트 밑에 있는 내용이 파일별 폴더별로 쭈욱 다 나온다. 결과 페이지만 2~3 페이지 나온다. 사람이 볼수가 없다.
"du -h / "로는 아무 정보도 얻을수 없다.
아래처럼 명령어를 친다.
du -h --max-depth=1 /

3. 이제 사람이 볼만 하다.
"/" 루트 기준으로 depth 가 1만 du 로 summary 한것이다.
근데 이것도 헷갈리네. summary 된 크기 별로 sorting 이 안되었다.
sort 를 해보자.
du -h --max-depth=1 / | sort -h -r

파이프로 결과 받아서 sort 하고 정리한 결과
4. 이제 잘 보이네.
근데 /var 폴더는 먼데3 0G중에 8.6G 인가?
/opt 와 /home 은 알겠는데, /var, /snap, /usr 은 머 하는 폴더지??
==폴더별 설명==
1. /var (Variable)
- 용도: 가변 데이터(Variable Data)를 저장하는 디렉토리입니다.
- 주요 특징:
- 시스템 실행 중에 변경되거나 증가하는 데이터가 저장됩니다.
- 로그 파일, 캐시, 메일 큐, 프린터 스풀 등이 위치.
- 예시:
- /var/log: 시스템 및 애플리케이션 로그 파일.
- /var/cache: 애플리케이션 캐시 데이터.
- /var/spool: 프린터 스풀, 메일 큐와 같은 대기열 데이터.
- /var/lib: 데이터베이스나 소프트웨어 상태 데이터를 저장.
- 유의 사항: 디스크 용량이 부족하면 시스템 동작에 문제가 생길 수 있으므로 정기적으로 관리가 필요.
2. /usr (User System Resources)
- 용도: 사용자 관련 프로그램 및 라이브러리를 저장하는 디렉토리입니다.
- 주요 특징:
- 시스템 관리 프로그램 외의 일반적인 애플리케이션과 데이터가 위치.
- 리눅스에서 가장 큰 디렉토리 중 하나가 될 수 있습니다.
- 구조:
- /usr/bin: 일반 사용자 명령어 (예: ls, grep 등).
- /usr/sbin: 시스템 관리 명령어 (예: fdisk, ifconfig 등).
- /usr/lib: 애플리케이션과 관련된 라이브러리 파일.
- /usr/share: 애플리케이션의 공통 데이터 (예: 매뉴얼, 아이콘 등).
- 유의 사항: /usr는 일반 사용자가 수정할 필요가 없으며, 시스템 업데이트나 패키지 관리자가 관리합니다.
3. /snap (Snap Packages)
- 용도: Snap 패키지 관리 시스템에서 사용하는 디렉토리.
- 주요 특징:
- Canonical에서 개발한 Snap 패키지 관리자는 컨테이너 기반의 애플리케이션 배포 방식을 제공합니다.
- 각 Snap 애플리케이션은 독립적으로 실행되며 /snap에 설치됩니다.
- Snap 애플리케이션은 종속성 충돌 문제를 줄이고, 다양한 리눅스 배포판에서 호환됩니다.
- 구조:
- /snap/<패키지명>: 설치된 Snap 애플리케이션.
- /snap/bin: Snap 패키지의 실행 파일 링크.
- 유의 사항: Snap 패키지는 디스크 공간을 많이 차지할 수 있으니 필요 없는 패키지는 제거하세요.
4. /opt (Optional)
- 용도: 추가 애플리케이션 소프트웨어를 저장하는 디렉토리입니다.
- 주요 특징:
- 기본 시스템과 분리된 외부 패키지나 사용자 정의 애플리케이션이 위치.
- 주로 상용 소프트웨어나 타사 프로그램 설치에 사용됩니다.
- 구조:
- /opt/<애플리케이션>: 애플리케이션 별로 디렉토리가 생성됨.
- 예: /opt/google/chrome (Google Chrome 설치 디렉토리).
- 유의 사항: 수동으로 설치한 소프트웨어를 정리하거나 관리할 때 확인해야 할 디렉토리입니다.
요약 비교
디렉토리주요 용도예시| /var | 가변 데이터 저장 | 로그, 캐시, 프린터 스풀. |
| /usr | 사용자와 관련된 프로그램 및 라이브러리 | 명령어(ls), 라이브러리. |
| /snap | Snap 패키지 저장 및 실행 | Snap 애플리케이션. |
| /opt | 추가 소프트웨어 설치 | 상용 프로그램(예: Google Chrome). |
리눅스 디렉토리 구조는 체계적으로 설계되어 있어, 이 목적에 따라 효율적으로 관리할 수 있습니다.
6.
5. /var 에 변동성 data 가 쌓인다는데, log 나 오라클의 data 같은 것들.
docker 로 오라클을 띄어서 그런가?
확인해보자.
/var 로 이동 해서 아래 명령어를 친다.

/var/lib 가 8.6G 중에 8.0G 를 먹고 있다.
확인 해보자.

/var/lib 가 8G 먹고 있는데 그중 /var/lib 밑에 docker가 5G 를 먹고 있다.
여기까지 하자..
이제 확실히 df, du 는 알았다.
까먹지 말자.
오늘도 감사한 마음으로 하루를 보내자....
'SI 업무 > linux' 카테고리의 다른 글
| Postman 설치법 (0) | 2024.11.23 |
|---|---|
| 3. docker 내 oracle-xe 를 재 구동 시키지 못해서 삽질. (1) | 2024.11.19 |
| 2. 우분투에 Docker 로 OracleXE 설치 법 (2) | 2024.11.18 |
| 1. 우분투에 docker 설치 (1) | 2024.11.17 |
| 0. 로컬 pc에서 virtualbox 내 linux 에 접속이 안될때 (2) | 2024.11.16 |