포터블기기 강좌


가만히 생각해 보면 백업의 중요성을 알면서도 대부분 안하는 이유는 간단히 백업이 귀찮기 때문입니다.
시스템에서 제공되거나 상업용으로도 여러가지 backup tool이 있는데 그걸로 백업하면 몇분-몇십분 이상 걸리니까 제 경험으로는 처음에 한두번 하고는 잘 안하게 됩니다.

처음에나 몇번만 해놓고 설마 별일 있겠어? 하고  백업을 안해놓고 그것이 지속될 때에 큰일이 터지는거죠

(저도 그런적이 한두번이 아니에요 크게 날린적 많음)

그렇다고 계속 다른 디스크에 sync하는 방식은 평소 사용에 걸리적거립니다.
그러니 백업도 몇초뿐이 안걸리게 해놓는게 최고입니다.
사실 백업이 안되어 낭패를 보는 경우는 영화같은 큰 화일이 아니라 직접 작성한 화일들인 경우죠.

하는 일이 항상 큰 화일을 항상 만드는 작업이라면 별수 없이 큰화일을 전부 백업해야 겠지만 대부분의 경우  크기가 전혀 크지 않습니다.

대개가 작은 문서화일 소스화일일겁니다.  그래서 시간이 오래걸리는 백업을 할 필요가 없죠. 

따라서 큰 하드에 통채로 백업하는것은 가끔만 하고 용량이 작은 ssd 얼마 안하니까 그걸 붙여놓고 큰화일제외하고 작은 화일만 ssd에 idle일때 수시로 백업하게 하는 것이 다수의 사용자에게 유용할 겁니다.


그래서

1. 작은 백업본이 몇개만 들어갈 정도면 충분한 백업용 디스크를 만들고

2. 수시로 원할때마다 백업하는 방향을 씁니다.

3. 2가 충분히 잘되면 그때가서 자신에 맞는 스케쥴대로 자동백업 계획을 세우기로 합니다


먼저 백업용 ssd를 장만해서 붙이고
sudo fdisk -l 하면 새로운 디스크의 디바이스명을 알 수 있습니다
예를 들어 /dev/sdb 라고 합시다

먼저 포맷하고
sudo mkfs.ext3 /dev/sdb

다시 sudo fdisk /dev/sdb 로 들어가서 파티션을 만듭니다.
n 으로 새 파티션 만들고 w로 쓰면 됩니다.

(파티션 종류는  아무거나 되는데 리눅스니까 ext3로 합시다)


디폴트파티션은 1부터 만들어지니까 처음 만들었다면 직접 사용하는 파티션의 경로는
/dev/sdb1이 됩니다.

그리고 라벨도 변경해 줍니다
위의 해당 파티션에 라벨을 Backup이라고 주려면
sudo e2label /dev/sdb1 Backup
이런 식입니다.

이제 백업과 리스토어 스크립트를 만들 차례입니다.


---file 'backup'----------
#! /bin/bash

set -e

gio mount -d /dev/sdb1 || true
while [ ! -d "/media/$USER/Backup" ]; do
  sleep 1
done

#백업에 제외할 화일들을 제외하고 3일동안 변경된 화일만을 tar합니다. (각자의 용도에 따라 변경하세요)

find $HOME -type f -size -100M ! -iname "*.avi" -and ! -iname "*.tar" -and \
! -iname "*.mp4" -and ! -iname "*.mpeg" -and ! -iname "*.vdi" -and \
! -iname "*.log" -and ! -iname "*.torrent" -and ! -iname "*.part" -and \
! -iname "*.deb" -and ! -iname "*.iso"  -and ! -path "*/.mozilla*" -and \
! -path "*/Trash/*" -and ! -path "*/.sogouinput/*" -and \
! -path "*/.config/*" -and ! -path "*/.xsession*" -and \
! -path "*/.local/share/*" -and ! -path "*/.cache*" -and -mtime -3 \
-print | xargs -d "\n" tar cvf /media/$USER/Backup/backup$(date -I).tar

# 7일 이상 지난 백업은 지웁니다.
find /media/$USER/Backup/backup*.tar -mtime +7 -exec rm {} \;


gio mount -u /media/$USER/Backup || true

--------end of file------------

다음은 리스토어 하는 스크립트

--- file 'restore'--------------
#! /bin/bash
set -e
gio mount -d /dev/sdb1 || true
cd /media/$USER/Backup
fn=$(ls -Art backup*.tar | tail -1)

read -p "Restore from $fn? [Y/N]" yn
case $yn in
  [Yy]* ) tar xvf $fn -C /;;
  * ) exit;;
esac

gio mount -u /media/$USER/Backup || true

--------end of file------------



각각 .local/bin 같이 잘 쓰는 경로에 backup과 restore란 이름을 주어 저장하고 실행권한을 주세요
chmod +x backup restore


그다음에 편하게 쓰기 위해서는 .bashrc (배시쉘의 경우)화일에

alias b="backup"
alias r="restore"
를 추가합니다

로그인아웃 한다음,

일상생활하며 b로 백업 r로  리스토어 해가며 쓰면 됩니다.

저는 m2<->ssd간에 이렇게 쓰는데 백업이 몇초도 안걸리기에 하루에도 몇번씩 쉽게 백업해가며 쓸수 있습니다~

심지어 안정성이 떨어지는 기기에서도 마음의 평화를 얻을 수 있습니다.

어 실수로 작업이 잠깐 잘못되었다? 뭘 지워버렸다? 리눅스에선 명령어 잘못써서 이런경우 꼭 있는데 undo처럼 바로바로 뒤로 돌아갈 수 있어서 매우 편리합니다.


사실 linuxmint의 backup tool도 훌륭합니다. (ver.19쓰시면 꼭 필히 20으로 업글하세요 많이 다듬어졌습니다.) 저는 가끔만 전체백업사용하고 나머지는 수시로 이렇게 수동으로 백업해가며 씁니다.


제 판단에는 이게 가장 빠르고 편한 백업같습니다.
(*물론 시스템 도난 화재 분실등을 대비한 경우에는 이런 동일 기계안에서의 간이 백업갖고는 안되고 클라우드나 하다못해 cd롬이라도 별도의 제대로된 백업플랜이 필히 있어야겠습니다.)




번호 제목 작성자 작성일 조회
41 [팁] 구글 주소록 정렬 [2] 맑은하늘 10.14 4608
40 Palm Desktop to Google [6] dow 10.08 3430
39 갤럭시 S 간단 사용기.. (노란 액정, 하얀 액정) [3] 상현아빠 10.03 4240
38 [draft] 팜 to 안드로이드 주소록 옮기기 [7] file 맑은하늘 09.29 5720
37 다이어트 방법 공유? [8] Freedom^^ 09.16 3182
36 [뽐뿌 사이트 / 휴대폰 - 간략 약어 해설] [6] 맑은하늘 09.13 4065
35 [팁] 아이폰과 나이키 플러스 [1] 미케니컬 09.06 3867
34 윈모바일 기기 속도향상방법(PDA 포함)-아시는 분도 많을듯 합니다~ [4] 아브라함 09.03 3449
33 DIY 철상자를 책 테이블로 [6] file 파리 07.16 3257
32 노키아 N5800 하드리셋 방법 [3] 준용군 07.12 3414
31 위룰 하고 싶은데, 미국계정으로 앱스토어 접속해야하나요? [2] 바보남자 07.02 3371
30 iBooks 의 화끈한 샘플 양 [9] file 파리 06.24 3354
29 EKEN M001 안드로이드 타블렛 FAQs [7] 성야무인 06.20 3403
28 EKEN M001 안드로이드 타블렛 플리뷰~~~ [17] file 성야무인 06.03 3764
27 휴대기기 이북리더 활용 [6] 마루 05.24 3405
26 VIA ARM 기반의 중국산 넷북 그리고 그 다양한 OS~~ [11] file 星夜舞人 04.26 4289
25 아이팟터치 사용자들을 위한 오페라 앱의 오프라인 저장 기능 [1] file minki 04.26 3576
24 아이폰 동기화 팁 (재생횟수, 별점 유지하기) 불량토끼 04.16 5803
23 노트북의 트랙패드나 마우스로 팜 그래피티 입력 하기. [2] file 거스파이 04.10 3849
22 VIA ARM 기반의 중국산 넷북과 그 기기를 최적화 시키는 방법... [15] file 성야무인 04.04 3774

오늘:
2,003
어제:
2,081
전체:
16,384,613