자유게시판

2020.09.10 02:36

Borg CLI Backup Tool

조회 수 636 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Borg는 증분 백업. 원격 백업. 암호화 등을 모두 잘 지원합니다.

 

 

 

1. 저장소 초기화 및 암호 설정

 

$ borg init --encryption=repokey /path/to/repo

ex) borg init --encryption=repokey ~/Borg_backup_repo

 

/path/to/repo에 해당하는 타겟 경로는 백업이 저장될 경로를 써주세요.

레포라고 합니다. 암호 입력해 주시구요.

 

 

 

2. 백업하기

 

 

$ borg create --stats /path/to/repo::<아카이브> <source1> <source2>
$ borg create --stats /path/to/repo::<아카이브> <source1>

 

/path/to/repo는 아까 설정한 저장소를 그대로 입력하신 후에 띄어쓰기 없이 :: 치시고 아카이브 명을 입력해 주세요. 해당 백업본의 이름을 쓰시면 됩니다. Monday도 좋고, Home1이라 해도 좋구요. 그리고 <source>는 말 그대로 백업할 타겟 경로를 지정해 주시면 됩니다. 만일 원할 경우에 <source1> <source2> 처럼 백업할 소스를 연속으로 지정 가능하고, 소스 사이는 띄어쓰기 한 칸 주면 됩니다.

 

ex) borg create --stats ~/.backup::bzip /home/user/ ::이 경우에는 bzip이라는 백업 아카이브 명으로 유저폴더 전체를 백업합니다.

ex2) borg create --stats ~/.backup::bzip2 /home/user/ :: ~/.backup 이라는 동일한 레포 안이기 때문에 bzip2라는 다른 이름의 아카이브로 다시 백업 명령을 내리면 알아서 증분 백업이 적용되기 때문에 금방 완료 됩니다.

 

 

 

3. 파일 제외

 

-e, --exclude
--exclude-from=FILE

 

Tar에서 사용되는 exclude 옵션을 똑같이 적용할 수 있습니다.

--exclude=~/file1 --exclude=~/file2 이런식으로 일일이 지정해 주든가

--exclude-frome=File 해당 File 안에 한 줄 한 줄마다 제외시킬 경로를 모두 써 주시면 됩니다.

 

 

 

4. 백업 레포/아카이브 확인

 

$ borg list /path/to/repo
$ borg list /path/to/repo::아카이브

 

 

 

5. 아카이브 삭제

 

$ borg delete /path/to/repo::Archive

ex) borg delete ~/.backup::bzip1 bzip2
 

 

 

6. 아카이브 복구

 

$ borg extract /path/to/repo::Archive

 

현재 경로에 백업 파일을 모두 추출합니다. 항상 비어있어야 하며 현재 경로에 추출하기 외에는 지원하지 않습니다.

 

 

+++

 

 

$ borg mount /path/to/repo::system-2019-08-11 /mnt/borg

ex) borg mount ~/.backup::bzip ~/tmp

 

백업을 굳이 다 풀어낼 필요 없이 아카이브를 임시 폴더에 마운트 할 수도 있습니다.

아카이브 따로 지정 안하면 레포 안의 모든 아카이브를 전체 마운트 합니다.

 

$ borg umount /mnt/borg

끌 때는 항상 마운트 해제 (정확히 해야 합니다.)

 

 

 

7. 기타

 

--dry-run

해당 옵션은 어떤 어떤 변경 사항이 있는지에 대해 알려 주기만 하고 실행은 안 시키기 때문에 확인 사항을 알고자 할 때 씁니다.

 

--one-file-system (혹은 -x)

원파일시스템 옵션을 안 주는 경우에는 /boot/efi 같은 다른 파티션을 마운트 한 경로의 파일도 그대로 백업을 해 버립니다. exclude 해 버리는 것도 방법이긴 합니다.

 

 

$ borg break-lock /path/to/repo

혹시라도 Failed to create/acquire the lock 메시지가 뜰 경우엔 저장소 및 캐시 잠금을 해제하면 됩니다. borg 프로세스가 확실히 종료된 상황에서 사용하세요.

 

https://borgbackup.readthedocs.io/en/stable/

위키를 통해서 좀 더 자세한 메뉴얼을 확인할 수 있지만 위의 명령어들만으로도 리눅스 시스템, 홈 유저 폴더, 개인 파일 등을 자유롭게 백업하는데 충분할 것 같네요.

 

 

 

Last

 

$ sudo borg create --stats --one-file-system --exclude-from=~/.filex ~/.backup::bzip3 /home/user1 /home/user2

 

~/.backup 레포의

bzip3 라는 아카이브로

/home/user1 와 /home/user2 를 동시에 백업합니다.

 

백업에 제외할 파일 및 폴더들의 경로는 .filex에 지정해 둡니다.

timeshift의 제외 경로를 포함했고

이런 느낌으로 언제나 백업이  불필요한 경로는 다 꽂아 넣어 두면 되니까요.

(제외한 폴더 안의 추가는 + 를 넣었던가? 이건 안 해 봤네요.)

 

 

.filex

 

/dev
/proc
/lost+found
/media
/mnt
/sys
/tmp
/run
/swapfile
/snap
/var/run
/var/lock

/data
/DATA
/cdrom
/sdcard
/system

/var/lib/docker
/var/lib/schroot
/var/cache/apt/archives
/lib/modules/*/volatile/.mounted

/timeshift
/var/log/timeshift
/var/log/timeshift_btrfs
/etc/timeshift.json
/root/.mozilla/firefox/*.dafault/Cache
/root/.mozilla/firefox/*.default/OfflineCache
/root/.kde/share/apps/kio_http/cache
/root/.kde/share/cache/http

/home/*/.local/share/[Tt]rash/
*/.[Tt]rash-1000/
*/org.gnome.DejaDup/cache

 

~/공개
~/다운로드
~/문서

 

$HOME/사진
$HOME/음악
$HOME/비디오
$HOME/바탕화면

/home/*/Dropbox
/home/*/Insync
/home/*/snap
/home/*/.VirtualBox\ VMs

 

$HOME/.backup
$HOME/.cache
$HOME/.gvfs

$HOME/.themes
$HOME/.fonts
$HOME/.icons
$HOME/.local/share/icons
$HOME/.local/share/fonts
$HOME/.local/share/themes

$HOME/.local/share/flatpak
*/com.valvesoftware.Steam
$HOME/.steam
$HOME/.wine
$HOME/.local/share/Cryptomator/mnt
$HOME/.local/share/tracker
$HOME/.local/share/ice/firefox
$HOME/.config/REAPER

$HOME/.config/google-chrome
$HOME/.mozilla
$HOME/.mozilla/firefox/*.default/Cache
$HOME/.mozilla/firefox/*.default/OfflineCache
$HOME/.kde/share/apps/kio_http/cache
$HOME/.kde/share/cache/http


List of Articles
번호 제목 추천 수 글쓴이 날짜 조회 수
1528 애플페이 사용하시나요? 0 해중이 2023.04.11 428
1527 영상편집 관련 프로그램.. 0 재여이 2023.04.10 533
1526 무료세미나 - [챗GPT 러닝데이 & MS 애저톤] ChatGPT와 Azure가 만났을 때 : PDF 문서와 ChatGPT 연결하기 - 전미정 0 인공지능팩토리 2023.04.10 424
1525 무료세미나 - [챗GPT 러닝데이 & MS 애저톤] 챗GPT에 날개를 달아줄 랭체인! (LangChain) 0 인공지능팩토리 2023.04.06 512
1524 정보자산의 보안을 강화하기 위하여 주목해야 할 것들 file 0 BaroPAM 2023.04.05 1327
1523 가상머신에서 하모니카를 사용할때 부팅시간이 너무 깁니다 9 0 심플1234 2023.04.02 597
1522 챗GPT MS애저톤 file 0 인공지능팩토리 2023.03.31 491
1521 앞으로 어떻게 되려고... 0 해중이 2023.03.31 548
1520 "2차 인증을 도입했다"는 것이 아니라 기술 및 보안성 등 "어떤 2차 인증을 도입했느냐"가 관건 file 0 BaroPAM 2023.03.31 1300
1519 날은 참 좋은데 미세먼지가 0 leaveoiop 2023.03.31 520
1518 빙이 다시 뜰려나? 1 0 해중이 2023.03.29 560
1517 댓글을 달려고 하니 입력이 안되네요 1 0 재팔 2023.03.28 444
1516 챗gpt의 한계? 0 닝니니 2023.03.27 521
1515 AI 로봇 어떻게 생각하세요? 0 잘몰라요. 2023.03.26 618
1514 [무료교육 / 인턴십 연계] 2023 서울시 뉴딜일자리 콘텐츠 퍼포먼스 마케팅 전문가 과정 모집(~4.11) file 0 엑아 2023.03.22 516
1513 제4회 2023 연구개발특구 AI SPARK 챌린지 0 인공지능팩토리 2023.03.21 507
1512 웹 애플리케이션 서버(WAS) 로그인 시 보안의 취약점을 개선하기 위한 사용자 식별ㆍ인증을 위하여 2차 인증의 필요성 file 0 BaroPAM 2023.03.21 1254
1511 [2023 서울시 뉴딜일자리/인턴십 연계] 빅데이터 분석 시각화 전문가 과정 모집 (~04.13) 0 엑아 2023.03.20 520
1510 쳇지피티 유료 0 아무카 2023.03.19 573
1509 하모니카에서 제공하는 OnDrive 같은 개인 저장공간이 있죠. 1 0 잘몰라요. 2023.03.19 551
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 ... 94 Next
/ 94
CLOSE