여러 외부 드라이브에 대용량 LVM 볼륨을 tar로 저장하려고 합니다. 그 부분은 해결되었습니다. 이제 이것은 긴 과정이므로 진행률 표시줄이 필요합니다. 여기의 훌륭한 기사를 통해 가까워지고 있습니다.
문제는 첫 번째 볼륨이 채워진 후 PV 스트립이 종료된다는 것입니다. 디스크 교체 후에도 PV가 계속 업데이트되기를 원합니다. 이 문제를 해결하는 방법을 아는 사람이 있나요?
내가 시도한 것은 다음과 같습니다.
코드 ExtBackup.sh:
#!/bin/sh
changedisk()
{
# This routine is called when tar runs out of disk space
# It simply waits for operator to change and mount disks
# then updates the file handle with a new volume number.
echo "Change disks now!"
read -p "Press <enter> when new disk is mounted. ..." NULL
echo ""
# Update the file name with the new volume number
name=`expr $TAR_ARCHIVE : '\(.*\)-.*'`
echo ${name:-$TAR_ARCHIVE}-Vol$TAR_VOLUME.tar >&$TAR_FD
}
###########
## MAIN ##
###########
# Test for recursive call to change disks
if [ "$1" = 'changedisk' ]; then
changedisk
exit 0;
fi
# If this is initial call, set SIZE to calculate bytes in source
SIZE=`du -sb *Folder_Name* | cut -f 1`
# Now TAR it, using Multi-volume option and pipe through PV for progress bar
tar -cM -F 'sh ExtBackup.sh changedisk' *Folder_Name* | \
pv -s ${SIZE} > LVMBackup-$(date +%m-%d-%y)-Vol1.tar
답변1
어쩌면 tar가 모든 출력 데이터를 stdout으로 보내기 -f -
전에 강제로 시도해 볼 수 있을까요?-F