회사 서버의 로컬 계정 접속 문제 해결을 위해 로컬 계정을 삭제하고 테스트를 진행해야 하는 상황이 발생했습니다. 문제 해결 과정에서 예상치 못한 오류 발생을 방지하고, 데이터 손실을 최소화하기 위해 /home 디렉토리 백업이 필수적이라고 판단했습니다. 특히, 로컬 계정들이 각각 소유하고 있는 /home/[계정명] 디렉토리의 데이터 보존이 중요한데, 이를 효율적으로 백업하는 방법을 tar 명령어를 중심으로 설명드리겠습니다. 본 글에서는 cp 명령어를 사용한 예시도 함께 다루지만, 대용량 데이터 백업 시 tar 명령어를 활용하는 것이 더욱 효율적임을 알려드립니다.
먼저, 백업을 위한 디렉토리를 생성합니다. /backup 디렉토리를 생성하는 것은 백업 데이터를 체계적으로 관리하고, 원본 데이터와 혼동을 방지하기 위한 중요한 단계입니다. sudo mkdir -p /backup 명령어를 사용하여 /backup 디렉토리를 생성하고, 필요에 따라 접근 권한을 설정하는 것을 권장합니다. /backup 디렉토리가 생성되었으면, 이제 본격적인 백업 작업을 진행합니다.
개별 계정의 /home/[계정명] 디렉토리를 백업하는 방법은 다음과 같습니다. cp -r /home/[계정명] /backup/[계정명]_backup 명령어를 사용하여 해당 디렉토리를 /backup 디렉토리로 복사합니다. -r 옵션은 디렉토리의 하위 디렉토리와 파일을 재귀적으로 복사하는 옵션입니다. 여러 계정을 백업해야 하는 경우, 각 계정에 대해 위 명령어를 반복해서 실행해야 합니다. 하지만 더 효율적인 방법은 tar 명령어를 활용하는 것입니다. sudo tar -cvpzf /backup/[계정명]_backup.tar.gz /home/[계정명] 명령어를 사용하면, /home/[계정명] 디렉토리를 압축하여 .tar.gz 파일로 백업할 수 있습니다. -c는 생성, -v는 상세 정보 표시, -p는 권한 정보 유지, -z는 gzip 압축, -f는 아카이브 파일 이름을 지정하는 옵션입니다. tar 명령어는 cp 명령어보다 훨씬 효율적으로 대용량 데이터를 백업할 수 있습니다.
백업이 완료되면, ls -l /backup 명령어를 통해 백업 파일이 제대로 생성되었는지 확인할 수 있습니다. 백업 파일의 크기, 수정 시간 등을 확인하여 백업 작업의 성공 여부를 판단합니다. 더욱 확실한 확인을 위해서는 diff -r /home/[계정명] /backup/[계정명]_backup (tar로 백업한 경우에는 압축을 먼저 풀어야 합니다) 명령어를 사용하여 원본 디렉토리와 백업 디렉토리의 내용을 비교하여 데이터 무결성을 검증할 수 있습니다. 이 명령어는 두 디렉토리의 차이점을 보여주므로, 백업 과정에서 데이터 손실이나 오류가 발생했는지 확인하는 데 유용합니다.
최종적으로, 백업된 데이터의 안전성을 확인하고, 로컬 계정 삭제 및 테스트를 진행합니다. 만약 문제 발생 시, 생성된 백업 파일을 사용하여 데이터를 복원할 수 있습니다. 항상 백업본을 안전한 곳에 보관하고, 주기적인 백업을 통해 데이터 손실 위험을 최소화하는 것이 중요합니다. 본 글이 안전하고 효율적인 /home 디렉토리 백업에 도움이 되기를 바랍니다.