Linux에서 XFS 파일 시스템을 사용하는 서버는 대용량 데이터와 높은 입출력 성능이 필요한 환경에서 많이 사용됩니다. 하지만 갑작스러운 전원 장애, 시스템 오류, 저장 장치 문제 등이 발생하면 XFS 파일 시스템도 손상될 수 있습니다.
이러한 경우 사용하는 명령어가 xfs_repair입니다. xfs_repair는 XFS 파일 시스템 전용 복구 도구로, 파일 시스템의 구조를 검사하고 오류를 복구하는 역할을 합니다. XFS를 사용하는 Linux 서버라면 반드시 알아두어야 하는 관리 명령어입니다.
이번 글에서는 Linux에서 xfs_repair 명령어를 사용하는 방법과 파일 시스템을 안전하게 복구하는 방법을 자세히 알아보겠습니다.
xfs_repair 명령어란?
xfs_repair는 XFS 파일 시스템의 오류를 검사하고 복구하는 명령어입니다.
손상된 메타데이터를 검사하고 가능한 범위에서 파일 시스템을 복구합니다.
XFS 파일 시스템에서는 fsck 대신 xfs_repair를 사용하는 경우가 대부분입니다.
기본 사용법은 다음과 같습니다.
sudo xfs_repair 장치명
예를 들어 /dev/sdb1 파티션을 복구하려면 다음 명령어를 실행합니다.
sudo xfs_repair /dev/sdb1
현재 파일 시스템 확인하기
먼저 해당 파티션이 XFS인지 확인합니다.
다음 명령어를 실행합니다.
lsblk -f
또는
sudo blkid
파일 시스템 종류가 xfs인지 확인한 후 작업을 진행하는 것이 좋습니다.
마운트 상태 확인하기
복구를 수행하기 전에 현재 마운트 여부를 확인합니다.
mount
또는
df -Th
현재 사용 중인 파일 시스템이라면 먼저 마운트를 해제해야 합니다.
파일 시스템 마운트 해제하기
복구를 진행하기 전에 파일 시스템을 해제합니다.
sudo umount /dev/sdb1
마운트가 해제된 후 xfs_repair를 실행하는 것이 안전합니다.
파일 시스템 복구하기
기본 복구는 다음 명령어로 수행합니다.
sudo xfs_repair /dev/sdb1
손상된 메타데이터를 검사하고 필요한 경우 복구를 진행합니다.
복구가 완료되면 결과가 화면에 출력됩니다.
검사만 수행하기
파일 시스템을 수정하지 않고 상태만 확인하려면 -n 옵션을 사용합니다.
sudo xfs_repair -n /dev/sdb1
현재 상태를 점검할 수 있으며 실제 변경은 수행하지 않습니다.
운영 서버에서 먼저 점검할 때 많이 사용하는 옵션입니다.
로그 초기화 후 복구하기
로그(Log)가 손상된 경우에는 -L 옵션을 사용할 수 있습니다.
sudo xfs_repair -L /dev/sdb1
로그를 초기화한 후 복구를 진행합니다.
다만 로그 정보 일부가 손실될 수 있으므로 마지막 방법으로 사용하는 것이 좋습니다.
복구 후 마운트하기
복구가 완료되면 다시 파일 시스템을 마운트합니다.
sudo mount /dev/sdb1 /data
마운트가 정상적으로 완료되면 파일 시스템을 다시 사용할 수 있습니다.
복구 결과 확인하기
복구 후 정상적으로 동작하는지 확인합니다.
df -Th
또는
mount
파일 시스템이 정상적으로 마운트되었는지 확인하는 것이 중요합니다.
xfs_repair 사용 시 주의할 점
xfs_repair는 반드시 마운트되지 않은 상태에서 실행해야 합니다.
사용 중인 파일 시스템을 복구하면 데이터 손상이 발생할 수 있습니다.
또한 -L 옵션은 로그를 초기화하므로 필요한 경우에만 사용하는 것이 좋습니다.
중요한 데이터는 작업 전에 반드시 백업하는 것을 권장합니다.
자주 묻는 질문
XFS 파일 시스템은 fsck를 사용하면 되나요?
아닙니다.
XFS 파일 시스템은 일반적으로 xfs_repair를 사용하여 복구합니다.
검사만 수행하려면 어떻게 하나요?
다음 명령어를 사용합니다.
sudo xfs_repair -n /dev/sdb1
파일 시스템을 마운트한 상태에서도 복구할 수 있나요?
권장되지 않습니다.
먼저 마운트를 해제한 후 복구를 진행하는 것이 안전합니다.
마무리
xfs_repair는 XFS 파일 시스템을 복구하기 위한 대표적인 Linux 관리 도구입니다. XFS 파일 시스템에서 오류가 발생했을 때는 lsblk, blkid, umount, xfs_repair, mount 명령어를 함께 활용하면 안전하게 복구 작업을 진행할 수 있습니다. 특히 운영 서버에서는 복구 전에 파일 시스템 상태를 확인하고 중요한 데이터를 백업한 후 작업하는 것이 안정적인 서버 운영에 도움이 됩니다.