# Copy Persistent Volume to Persistent Volume
Use case:
- When need to manually restore data from pv to pv.
- When the Persistent Volume declares size too big, need to restore to a smaller one.
apiVersion: batch/v1
kind: Job
metadata:
name: pvc-copy-job
spec:
template:
spec:
restartPolicy: Never
containers:
- name: copy
image: busybox
# checking space usage
# command: ["sh", "-c", "du -sh /src/. && du -sh /dest/"]
command: ["sh", "-c", "cp -a /src/. /dest/"]
volumeMounts:
- name: src-pvc
mountPath: /src
- name: dest-pvc
mountPath: /dest
volumes:
- name: src-pvc
persistentVolumeClaim:
claimName: source-pvc # replace with your backup PVC
- name: dest-pvc
persistentVolumeClaim:
claimName: target-pvc # replace with your recovery PVC