linuxfromscratch:12.4:linux_from_scratch:backup_and_restore

문서의 이전 판입니다!


Linux From Scratch - Version 12.4

LFS/BLFS 종료후 최종적으로 보관과 복구에 관한 내용

  1. 준비 사항: /etc/fstab 확인, LFS 파티션 마운트, tar, pv, xz 설치 확인
    export LFS=/mnt/lfs                                # LFS "/" 파티션
    export WAREHOUSE=/mnt/nfs/warehouse/lfs            # 백업 파일이 저장될 위치
    grep $LFS /etc/fstab                               # /etc/fstab에 $LFS 디렉터리 설정 확인
    mountpoint -q $LFS || sudo mount $LFS              # 마운트 상태 확인 필요시 마운트
    for prog in tar xz pv; do                          # tar, xz, pv 설치 확인
        if command -v "$prog" >/dev/null 2>&1; then
            $prog --version | head -n 1
        else
            echo "$prog is missing"
        fi
    done
    
  2. Backup
    cd $LFS
    tar -cp --numeric-owner \
        --exclude='proc' --exclude='sys' --exclude='dev' --exclude='run' . | \
        xz -9 --threads=$(nproc) --memory=80% -vv > "${WAREHOUSE}/lfs+blfs-12.4.tar.xz"
    
  3. Restore
    export LFS=/mnt/lfs                                # LFS "/" 파티션
    export WAREHOUSE=/mnt/nfs/warehouse/lfs            # 백업 파일 위치
    cd $LFS
    sudo tar -xpvJf ${WAREHOUSE}/lfs+blfs-12.4.tar.xz --numeric-owner .
    sudo mkdir -pv {dev,proc,sys,run}
    
    1. /etc/fstab 확인

정리 필요

복구이후 tar의 검증 기능을 이용한 확인방법

# 1. 전체 파일 개수 파악 (문자열 -> 숫자 처리)
TOTAL_FILES=$(tar -tvf "$TAR_FILE" | wc -l | awk '{print $1}')

# 2. 1% 진행률을 위한 인터벌 역산 (정수 나눗셈)
# 파일이 100개 미만일 경우를 대비해 최소값 1 설정
INTERVAL=$(( TOTAL_FILES / 100 ))
if [ "$INTERVAL" -le 0 ]; then INTERVAL=1; fi

# 3. 사용자에게 정보 출력 (친절한 도구의 정석)
echo "검증 대상: $TOTAL_FILES 파일 (1% 진행당 $INTERVAL 파일 처리)"

# 4. 검증 실행 (pv -s 100으로 백분율 동기화)
# tar가 INTERVAL만큼 처리할 때마다 점(.)을 찍고, pv가 이를 100개까지 카운트
tar -df "$TAR_FILE" --checkpoint=$INTERVAL --checkpoint-action=dot | \
    pv -p -l -s 100 > /dev/null

echo "무결성 검증이 완료되었습니다."


  • linuxfromscratch/12.4/linux_from_scratch/backup_and_restore.1772413576.txt.gz
  • 마지막으로 수정됨: 2026/03/02 01:06
  • 저자 baecy