파일시스템 오류 복구
    • PDF

    파일시스템 오류 복구

    • PDF

    Article Summary

    VPC 환경에서 이용 가능합니다.

    OS별 파일 시스템 오류를 복구하는 방법을 설명합니다.

    Linux 서버 파일 시스템 오류 복구 방법

    Linux 서버에서 파일 시스템의 오류가 의심되는 경우, 서버 접속 콘솔을 통해 파일 시스템을 복구해 주십시오.

    다음 방법을 통해 I/O 에러 발생 여부를 확인해 주십시오.

    • 직접 서버에 접속
    • 서버에 접속할 수 없는 경우
      • 네이버 클라우드 플랫폼 콘솔의 Service > Compute > Server > Server 메뉴에서 서버를 클릭하여 선택한 후 [서버 관리 및 설정 변경] > 서버 콘솔 스크린샷을 차례대로 클릭하여 확인
        server-ts-repair-filesystem-vpc-01_ko

    VM에 파일 시스템 오류가 발생한 경우, 다음과 같은 증상이 발생합니다.

    • I/O 에러
      server-ts-repair-filesystem-02
    • initramfs 프롬프트 복구 모드
      server-ts-repair-filesystem-03

    Linux 서버 파일 시스템 복구 명령어

    Linux 서버에서 파일 시스템 오류를 복구하려면 다음 명령어를 실행해 주십시오.

    • fsck: ext4 파일 시스템 검사 및 복구 도구
    • xfs_repair: XFS 파일 시스템 검사 및 복구 도구
    참고
    • fsck 명령어 실행 시 지원하는 옵션 정보는 다음과 같습니다.

      옵션설명
      -y모든 질문에 대한 응답을 yes로 취급하여 파일 시스템을 자동으로 복구 실행
      -n모든 질문에 대한 응답을 no로 취급하여 파일 시스템에 대한 체크만 진행
      -a명령 수행에 대한 확인 질문을 하지 않고, 자동으로 복구 실행
      • 해당 옵션 수행을 권장하지 않음
      -f파일 시스템의 이상 유무에 상관없이 강제로 파일 시스템 체크
    • xfs_repair 명령어 실행 시 지원하는 옵션 정보는 다음과 같습니다.

      옵션설명
      -n실제 복구 작업을 수행하지 않고, 파일 시스템에 대한 체크만 진행
      -f마운트 되어있지 않은 파일 시스템이나 파일에 대해 강제로 체크
      -Lf 옵션보다 강력한 옵션으로, 강제로 로그를 비워 파일 시스템 복구 실행
      • 데이터 손실 발생 가능

    1. 파일 시스템 오류 복구 준비

    파일 시스템 오류 복구를 위한 준비를 하는 방법은 다음과 같습니다.

    1. 파티션과 파일 시스템 타입을 확인하고 발생한 오류를 확인해 주십시오.
      • 상황에 따라 의심해 볼 수 있는 오류 종류는 다음과 같습니다.
        상황오류 종류
        부팅에 실패기본 스토리지의 파일 시스템 오류
        부팅은 성공했으나 파일 시스템 관련 오류 발생추가 스토리지의 파일 시스템 오류
      • 파일 시스템 관련 오류는 /var/log/messages에 기록되며, 콘솔의 I/O 에러 내용에서도 문제가 발생한 디스크를 확인할 수 있습니다.
      • 파티션 확인: cat /proc/partitions 명령어를 실행해 주십시오.
        [root@servera ~]# cat /proc/partitions 
        major minor  #blocks  name
        202        0   52428800 xvda
        202        1       1024 xvda1
        202        2   52425728 xvda2
        
      • 파일 시스템 타입 확인: blkid 명령어를 실행해 주십시오.
        [root@servera ~]# blkid
        /dev/xvda1: UUID="f95bed0a-11af-4b2c-bfcc-4afb91a68fc1" TYPE="xfs" 
        /dev/xvda2: UUID="0692fdb8-bb3c-4094-83f0-fe95a339b8c1" TYPE="xfs"
        
    2. 스냅샷 생성을 참고하여 복구 작업을 진행할 서버의 스냅샷을 생성해 주십시오.
      주의

      잘못된 복구 시도로 인해 서버가 손상될 수 있습니다. 서버 손상을 방지하기 위해 스냅샷을 생성한 후 복구 작업을 수행해 주십시오.

    2. 파일 시스템 오류 복구

    다음 경우에 따라 파일 시스템 오류 복구 방법을 확인해 주십시오.

    기본 스토리지에 파일 시스템 오류가 발생한 경우

    기본 스토리지에 오류가 발생하면 root file system check와 마운트에 실패하여 initramfs 프롬프트 복구 모드로 빠지게 됩니다.
    기본 스토리지에 발생한 파일 시스템 오류를 복구하는 방법은 다음과 같습니다.

    1. initramfs에서 기본 스토리지에 대해 파일 시스템 체크를 수행해 주십시오.
      <예시> 문제가 발생한 디바이스가 /dev/xvda1인 경우
      파일 시스템명령어
      ext4fsck.ext4 /dev/xvda1
      xfs
      • xfs_repair /dev/xvda1
        • 옵션 미사용으로 복구가 불가능한 경우, -L 옵션을 추가하여 수행
        • -L 옵션 사용 시 데이터 손실 발생 가능
      • xfs_repair -L /dev/xvda1
    2. 파일 시스템 체크를 한 번 더 진행한 후 clean이 출력되면 서버를 재부팅해 주십시오.

    추가 스토리지에 파일 시스템 오류가 발생한 경우

    추가 스토리지에 발생한 파일 시스템 오류를 복구하는 방법은 다음과 같습니다.

    1. 다음 명령어를 실행하여 오류가 발생한 디바이스의 마운트를 해제해 주십시오.
      umount /dir (/dir: 추가 스토리지 영역 마운트 디렉터리)
      
      참고

      마운트가 정상적으로 해제되지 않는 경우, 마운트 해제 강제 명령어 또는 fuser 명령어를 순서에 따라 실행하여 특정 파일이나 파일 시스템, 포트 등에서 사용 중인 프로세스를 확인 및 종료해야 합니다.

      • 마운트 해제 강제 명령어
        • umount -l /mnt/a
        • umount -f /mnt/a
      • fuser 명령어 사용 순서
        1. fuser -cu /mnt/a로 디렉터리를 사용하는 사용자 또는 프로세스 확인
        2. fuser -ck /mnt/a로 프로세스 강제 종료
        3. umount /mnt/a로 마운트 해제
    2. 오류가 발생한 디바이스에 파일 시스템 체크를 수행해 주십시오.
      <예시> 문제가 발생한 디바이스가 /dev/xvdb1인 경우
      파일 시스템명령어
      ext4fsck.ext4 /dev/xvdb1
      xfs
      • xfs_repair /dev/xvdb1
        • 옵션 미사용으로 복구가 불가능한 경우, -L 옵션을 추가하여 수행
        • -L 옵션 사용 시 데이터 손실 발생 가능
      • xfs_repair -L /dev/xvdb1
    3. 다음을 참고하여 추가 스토리지를 다시 마운트해 주십시오.
      • /etc/fstab에 추가 스토리지 영역에 대한 마운트 설정이 되어 있는 경우
        mount -a
        
      • 직접 마운트를 수행하는 경우
        mount /dir (/dir: 추가 스토리지 영역 마운트 디렉터리)
        
    4. 파일 시스템 체크를 한 번 더 진행한 후 clean이 출력되면 서버를 재부팅해 주십시오.

    파일 시스템 오류가 복구되지 않는 경우

    fsck 또는 xfs_repair를 시도한 후에도 파일 시스템 오류가 복구되지 않는 경우, 서버를 강제 재부팅해야 합니다.
    서버를 강제 재부팅하려면 네이버 클라우드 플랫폼 콘솔의 Services > Compute > Server > Server 메뉴에서 강제 재부팅할 서버를 클릭하여 선택한 후 [강제 정지] > [시작] 버튼을 차례대로 클릭해 주십시오.

    주의

    강제 재부팅한 후에도 서버가 정상화되지 않는 경우, 스냅샷을 통한 데이터 복구가 필요합니다. 스냅샷으로 스토리지 생성을 참고해 주십시오.

    Windows 서버 파일 시스템 오류 복구 방법

    Windows 서버에서 파일 시스템 오류를 복구하려면 경우에 따른 파일 시스템 오류 복구 방법을 확인해 주십시오.

    Windows 서버 파일 시스템 복구 명령어

    Windows 서버에서 파일 시스템 오류 복구를 위해서는 chkdsk 명령어를 사용합니다. chkdsk는 파일 시스템 점검 및 복구를 지원하는 Windows Tool입니다. 옵션 없이 실행할 경우, 기본 스토리지 점검만을 수행합니다.

    주의

    chkdsk 수행을 중간에 취소하거나 중단할 경우, 이전 상태보다 더 손상되지는 않지만 chkdsk 실행이 완료될 때까지 기다리는 것을 권장합니다.

    참고

    chkdsk 명령어 실행 시 지원하는 옵션 정보는 다음과 같습니다. 자세한 내용은 Microsoft 아티클을 참고해 주십시오.

    옵션설명
    /f발견한 에러 복구
    • 해당 옵션을 적용할 경우 드라이브는 lock 상태여야 하며, lock 상태가 아닐 경우 다음 재부팅 시 드라이브 점검 예약 여부에 대한 메시지 표시
    /rbad sector를 찾아 읽을 수 있는 정보 복구
    • 해당 옵션을 적용할 경우 드라이브는 lock 상태여야 함
    /x필요한 경우 드라이브를 강제로 마운트 해제하거나, 드라이브에 열려있는 모든 핸들 무효화

    OS hang이 발생한 경우

    OS hang이 발생한 경우, 서버를 강제 재부팅해야 합니다.
    서버를 강제 재부팅하려면 네이버 클라우드 플랫폼 콘솔의 Services > Compute > Server > Server 메뉴에서 강제 재부팅할 서버를 클릭하여 선택한 후 [강제 정지] > [시작] 버튼을 차례대로 클릭해 주십시오.

    주의

    강제 재부팅한 후에도 서버가 정상화되지 않는 경우, 스냅샷을 통한 데이터 복구가 필요합니다. 스냅샷으로 스토리지 생성을 참고해 주십시오.

    기본 스토리지에 파일 시스템 오류가 발생한 경우

    기본 스토리지에 발생한 파일 시스템 오류를 복구하는 방법은 다음과 같습니다.

    1. 다음 명령어를 입력하여 chkdsk를 실행해 주십시오.
      chkdsk C: /f /r /x
      
    2. 다음 재부팅 시 드라이브 체크 예약 여부에 대한 메시지가 나타나면 Y를 입력해 주십시오.
    3. 재부팅을 진행해 주십시오.

    추가 스토리지에 파일 시스템 오류가 발생한 경우

    추가 스토리지에 발생한 파일 시스템 오류를 복구하는 방법은 다음과 같습니다.

    1. run - diskmgmt.msc 명령어를 실행하여 복구할 추가 스토리지의 드라이브명을 확인해 주십시오.
    2. 다음 명령어를 입력하여 chkdsk를 실행해 주십시오.
      chkdsk <드라이브명> /f /r /x
      

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.