ZFS 스크립트는 최신 스냅샷을 가져와 복원합니다.

ZFS 스크립트는 최신 스냅샷을 가져와 복원합니다.

zfs 스냅샷 백업을 유지하고 VM이 직접 위치에서 zfs/snapshotbackps실행 중입니다 .zfs

최신 스냅샷을 추출하고 복원하는 스크립트를 작성하려고 합니다.

나는 다음을 시도했다

machine=582
zfs list -o name -s creation -t snapshot | grep "zfs/snapshotbackps/vm-${machine}-" |tail -n1 | xargs zfs send | "zfs receive zfs/vm-${machine}-disk-0"

이는 반환

-bash: zfs receive zfs/vm-582-disk-0: No such file or directory
xargs: zfs: terminated by signal 13

문제가 발생했습니다. 데이터가 있습니다.

zfs list -o name -s creation -t snapshot | grep "zfs/snapshotbackps/vm-${machine}-" |tail -n1
zfs/snapshotbackps/vm-582-disk-0@ZAP_HOME1_2023-05-19T10:26:19p0100--1w

답변1

귀하의 견적에 결함이 있습니다. 다음과 같이 시도해 보세요:

machine="582"
snap="$(zfs list -o name -s creation -t snapshot |
   grep "zfs/snapshotbackps/vm-${machine}-" |
   tail -n1)"
zfs send "$snap" | zfs receive "zfs/vm-${machine}-disk-0"

을 삭제하면 zfs receive나타나는 오류 메시지는 다음을 입력할 때 나타나는 오류 메시지와 동일합니다.

$ "echo foo"
bash: echo foo: command not found

zfs rollback원시 파일 시스템에서 작업하는 것을 고려할 수도 있습니다 zfs/vm-582-disk-0. 더 빨라야 합니다.

관련 정보