리눅스 서버 백업 및 복구
리눅스 환경에서 안정적인 시스템 운영을 위해서는 정기적인 백업과 신속한 복구가 필수적이다.
Timeshift를 이용한 시스템 스냅샷 백업 및 복구 방법과 mysqldump를 활용한 데이터베이스 백업 및 복구 방법을
공부했다.
Timeshift 이용한 리눅스 스냅샷 백업 및 복구 실습
Timeshift는 시스템 스냅샷을 생성하여 OS를 특정 시점으로 복원할 수 있도록 도와주는 강력한 백업 도구이다.
가상 머신에 백업 디스크 만들기
- VirtualBox 관리자 화면에서 기존 가상 머신을 선택한 후 설정 클릭
- 저장소 탭에서 컨트롤러: SATA 선택 후 하드 디스크 추가 (+ 아이콘) → 새 디스크 만들기 클릭
- 가상 머신에 디스크가 추가되면 "Not Attached" 상태로 표시됨 → 해당 디스크 선택
- 컨트롤러: SATA 탭에 디스크 추가 확인 후 확인 클릭 → 가상 머신 실행
- 디스크를 백업용으로 사용하려면 초기화 필요:
- 바탕화면에서 유틸리티 → 디스크 실행
- 새로 추가한 디스크 선택 후 톱니바퀴 아이콘 → 파티션 포맷 선택
- 볼륨 이름을 backup으로 설정 후 포맷 실행
Timeshift 설치 및 스냅샷 생성
1. Timeshift 설치
sudo apt install timeshift
2. Timeshift 실행 후 스냅샷 형식 선택 (RSYNC 추천)
RSYNC: Remote Sync의 약자로, 파일과 디렉터리를 동기화하여 백업본을 생성함
3. 기존 디스크 외에 별도의 백업 디스크(예: 외장 하드, 별도 파티션)를 선택
4. 스냅샷 보관 개수 및 백업 주기 설정
- 스냅샷 보관 개수:
- 예: 최근 5개 또는 10개의 스냅샷만 보관하도록 설정 (디스크 공간 관리에 유리)
- 백업 주기:
- 예: 매일, 매주, 또는 부팅 시 자동 백업 등
- 사용자의 필요와 시스템 사용 패턴에 맞게 선택
5. 홈 디렉토리 백업 여부 설정 (사용자 정보는 기본적으로 제외됨)
6. 설정 완료 후 "만들기" 클릭하여 백업 진행
7. 설정한 백업 주기에 따라 RSYNC 방식으로 시스템 작동됨
리눅스 스냅샷을 이용한 복구
- Timeshift 실행 후 복원할 스냅샷 선택 → 다음 클릭
- 시스템 영역과 부트로더 영역 확인 후 일치 여부 확인 → 다음 클릭
- 변경될 데이터 리스트 확인 후 복원 실행
데이터베이스 백업 및 복구 실습
데이터베이스 백업은 전체 백업과 증분 백업으로 나뉜다:
- 전체 백업: 데이터베이스 전체를 백업 (mysqldump 사용)
- 증분 백업: 전체 백업 이후 변경된 데이터만 백업 (Mariabackup 사용)
mysqldump를 활용한 백업 및 복구 실습
1. 데이터베이스 백업 파일(backup.sql) 생성
sudo mysqldump -u root -p --all-databases > backup.sql
2. 데이터 삭제 및 복구
# MariaDB 콘솔 접속 후 기존 데이터 삭제
DROP DATABASE [데이터베이스명];
SHOW DATABASES; # 삭제 여부 확인
# 백업 파일을 이용한 데이터 복구
sudo mysql -u root -p < backup.sql
3. 복구 완료 후 데이터 확인
SHOW DATABASES;
정리
이번에는 Timeshift를 이용한 리눅스 시스템 백업 및 복구, 그리고 mysqldump 를 활용한 간단한 데이터베이스 백업 및 복구 방법을 공부하였다.
- 시스템 백업 및 복구: Timeshift 활용 (스냅샷 생성 및 복구)
- 데이터베이스 백업 및 복구: mysqldump (논리적 백업)
추가적으로 증분백업을 실습해보고 싶다면 Mariabackup를 활용하여 실습을 진행해보면 된다.
'Security' 카테고리의 다른 글
Security_서버 침입 탐지 시스템 (1) | 2025.02.10 |
---|---|
Security_DNS 서버 해킹&보안 (0) | 2025.02.07 |
Security_메일 서버 보안 (1) | 2025.02.04 |
Security_ 파일 공유 서버 해킹 (0) | 2025.01.23 |
Security_FTP 해킹 (0) | 2025.01.23 |