tar를 사용하여 전체 Linux 시스템을 시스템 자체에 마운트된 파티션에 백업합니다.

tar를 사용하여 전체 Linux 시스템을 시스템 자체에 마운트된 파티션에 백업합니다.

내 모든 운영 체제는 하나의 파티션, 즉 /dev/vda1.

이 명령을 사용하여 전체 Linux 디렉터리를 백업하면 문제가 있습니까?

root@myOS:/# tar -cJpf /mnt/bax/myOS.tar.xz .

기본적으로 전체 시스템을 백업하고 두 번째 파티션에 저장합니다.

/mnt/bax설치된 위치 /dev/vda2(두 번째 파티션)

재귀 백업이 될까 걱정되는데, /dev/vda2설치했다고 해서 재귀 백업이 된다는 뜻인가요?

답변1

아마도 마운트된 파일 시스템과 의사 파일 시스템을 백업하고 싶지 않을 것입니다. 적어도 ,  /proc등을 사용하십시오./sys/tmp--one-file-system

필요한 경우 마운트된 파일 시스템을 추가할 수 있습니다.

root@myOS:/# tar --one-file-system --acls --xattrs --numeric-owner -JpScf /mnt/bax/myOS.tar.xz . /media/additional-mounted-drive

--exclude또는 디렉터리 무시를 사용할 수 있습니다 .

root@myOS:/# tar --acls --xattrs --numeric-owner --exclude=mnt --exclude=proc --exclude=sys --exclude=tmp -JpScf /mnt/bax/myOS.tar.xz .

답변2

나는 이것을 몇 번 사용했습니다. 시스템을 로컬 폴더(다른 파티션)에 RSYNC하고 제외합니다. 그런 다음 필요한 경우 TAR과 함께 압축할 수 있습니다.

mkdir /backup1; time rsync -aAXv -h --exclude={/backup*,/dev,/home,/lost+found,/media,/mnt,/mnt2,/proc,/run,/sys,/tmp,/var/lib/lxcfs,/var/lib/lxd/unix.socket} / /backup1

제외된 폴더를 확인하고 시스템에 적합한 폴더를 추가/제거하세요.

그런 다음 backup1 폴더를 직접 TAR할 수 있습니다.

tar czfp --rsyncable UbuntuServer1604.tar.gz ./backup1

또는 병렬 고압축 코덱을 설치하여 사용하십시오.파운드 압축 2아니면 더 빨리PGZ

apt install lbzip2 -y && time tar cf backup1.tar.bz2 ./backup1 --use-compress-program=lbzip2

백업을 위해 TAR을 사용해 보았지만 RSYNC를 선호합니다. TAR에는 병렬 "lbzip2" 및 "pigz"와 같은 압축 옵션이 있습니다.
작은 압축 파일의 경우 lbzip2를 사용하거나 빠른 압축을 위해 pigz -k를 사용하면 동기화 문제가 발생할 수 있습니까? 데비안 오류인 경우 lbzip4?

압축된 TAR 파일은 /에 위치하지만, 원하는 폴더에 저장하고 반드시 제외 목록에 추가해야 합니다.

apt install lbzip2 -y; sudo time tar cpf backup1.tar.bz2 --exclude={/backup*,/dev,/home,/lost+found,/media,/mnt,/mnt2,/proc,/run,/sys,/tmp,/var/lib/lxcfs,/var/lib/lxd/unix.socket} --use-compress-program=lbzip2 / 

apt install pigz -y; sudo time tar cpf backup3.pigz.tar.gz --exclude={/backup*,/dev,/home,/lost+found,/media,/mnt,/mnt2,/proc,/run,/sys,/tmp,/var/lib/lxcfs,/var/lib/lxd/unix.socket} --use-compress-program=”pigz -k” / 

어느 쪽이든 이는 라이브 백업에서 제외할 폴더를 추가하는 쉬운 방법입니다.

--exclude={/backup*,/dev,/home,/lost+found,/media,/mnt,/mnt2,/proc,/run,/sys,/tmp,/var/lib/lxcfs,/var/lib/lxd/unix.socket}

관련 정보