본문 바로가기
모의해킹 침해대응 과정/Liunx 관리

리눅스 파일시스템 점검, 모니터링 / day 7

by 알거음슴 2021. 4. 7.

1. 파일시스템 점검

-> 파일시스템이 전원이상이나 커널에서 동작하는 프로그램의 이상, 하드웨어적 이상, 비정상적인 시스템으로 문제가 생겼을때 fsck 또는 e2fsck 를 활용하여 무결성을 점검하게 된다.

 

  1) fsck

파일 시스템을 점검하고 수정한다. (ext* 의 경우 수행가능)

 (1) 형식

[fsck] [OPTIONS] <DISK>

 

 (2) 옵션

fsck -y : 점검시 모니터에 경고문구를 모두 yse로 답함

fsck -p : 점검시 모니터에 경고문구를 모두 yse로 답함 / 단 사용자에게 내용또한 출력하지 않음.

 * 주의사항 : fsck은 마운트된 파일시스템에 대해서 fsck 명령어를 수행하지 말아야 한다.

 

 (3) 점검

 - fsck 로 점검 -

[root@server1 ~]# fsck /dev/sdb1
fsck from util-linux 2.32.1
e2fsck 1.45.6 (20-Mar-2020)
/dev/sdb1: clean, 11/65536 files, 8859/261888 blocks

 

[참고] xfs 파일시스템의 점검. ( xfs_repair )

 xfs_repair <DISK> 

xfs 파일 시스템을 점검할 때 사용하는 명령어 

xfs_repair -n : 점검만 진행하고, 수정작업은 진행하지 않는 옵션

 

[참고] 파일 시스템 점검의 활용

 슈퍼 블럭을 복구 하는 방법

# dumpe2fs /dev/sdb1 | grep -i superblock

# e2fsck -b 32768 /dev/sdb1

 

 배드블럭(Bad Block) 발생한 경우의 복구 하는 방법

* 배드블럭 : 하나의 블럭이 활용할 수 있는 최대의 임계점에 도달하여 사용할 수 없게 망가진 상태.

배드블럭(bad block)의 종류

- 물리적인 배드블럭(Physical badblock) : 디스크 자체에 손상이 입어짐(스크레치) 로 인한 배드블럭, 복구불가.

- 논리적인 배드블럭(Logical badblock) : 해당 위치를 마킹하여 추가적인 사용을 막음.

# badblocks -v /dev/sdb1 /* 상당히 오랜 시간이 걸림 */

# e2fsck -c -p -f -v /dev/sdb1 (# e2fsck -cpfv /dev/sdb)

 

 

 

 

2. 파일 시스템 모니터링.

파일 시스템의 남은 사용량 및 상태의 대하여 점검할 수 있다.

 

 1) df (disk free space)

파티션 단위의 사용량 점검 (마운트 되지 않으면 출력되지 않음)

* unmount 포함 정보 확인 : blkid

 

 (1) 형식

[df] [OPTIONS] [위치]

 

 (2) 옵션

df -k(m) : KB(MB) 기준으로 표기해줌

df -h : 사람이 보기 좋게 출력해줌

df -T : 파일 시스템의 종류와 함깨 디스크의 정보를 보여줌

df -i : inodes 관련 정보 표기

* 주요 활용 포맷 df -h -T

 

 

 

 2) du (disk usage)

디스크와 파일의 용량 보여준다 (디렉토리 단위의 사용량 점검)

* unmount 포함 정보 확인 : blkid

 

 (1) 형식

[du] [OPTIONS] [위치]

* 기본값의 위치는 현재 dir

 

 (2) 옵션

du -k(m) : KB(MB) 기준으로 표기해줌

du -h : 사람이 보기 좋게 출력해줌

du -a : 디렉토리 뿐 아닌 파일까지 모든 용량을 표기해줌

du -s : 해당 경로의 디스크 용량 총 합계만 출력

* 주요 사용 포멧 : du -s or a 와 합쳐서 사용을 많이함.

 

 

[참고] df 와 du의 차이점

df : 남아있는 공간 기준으로 표기 (임시파일들도 작성중이라면 합산함)

 파일시스템 크기, 사용된 공간, 남은 공간, 전체에서 사용중인 %사용량, 마운트 포인트등을 출력한다.

du : 사용중인 공간 기준으로 표기

 디렉토리와 파일의 크기, 사용된 공간, 남은 공간, 전체에서 사용중인 사용량을 출력한다

 (예시)

 * 가장 용량이 큰 파일 시스템은? : df

 * 사용량(%)이 가장 많은 파일 시스템은? : df

 * /etc 디렉토리의 총 용량은? : du

 * /(root) 파일시스템 안에 있는 디렉토리 중 가장 용량이 큰 디렉토리는? : du 

-> [root@server1 /]# du -sk * | sort -nr | more

 * 운영체제 내에서 용량이 가장 큰 파일은? : find

-> [root@server1 /]# find / -size +200M -type f -ls

'모의해킹 침해대응 과정 > Liunx 관리' 카테고리의 다른 글

리눅스 RAID / day 9  (0) 2021.04.09
리눅스 LVM / day 8, 9  (0) 2021.04.08
리눅스 Mount / day 8  (0) 2021.04.08
리눅스 장치관리 / day 6, 7  (0) 2021.04.06
리눅스 디렉토리에 대하여 / day 6  (0) 2021.04.06