[Linux] rsync 간단 사용

$ rsync -av --progress <source> <destination>

Local 에서 local이 아니라면 -z 옵션을 주는 것도 좋다.

crontab으로 등록

# crontab -e

0 3 * * * rsync -av --progress /mnt/NAS /media/dasomoli/Elements

 

나는 이렇게 한다.

# vi /root/backup_exthdd.sh
#!/bin/bash

if [[ -b /dev/sda1 && -b /dev/sdb1 ]]; then
    rsync -av --progress /mnt/NAS /media/dasomoli/Elements >> /var/log/rsync/backup_exthdd.log;
else
    echo "`date`: Error: HDDs have not mounted" >> /var/log/rsync/backup_exthdd.err;
fi

그리고 logrotate 설정을 해둔다.

# vi /etc/logrotate.d/backup_exthdd
/var/log/rsync/backup_exthdd.log /var/log/rsync/backup_exthdd.err {
    weekly
    missingok
    rotate 5
    compress
    notifempty
}

[github] 웹 브라우저로 내 repository 업데이트하기

github에서 fork한 내 repository는 해당 시점의 코드에서 멈춰 있게 된다. 이걸 git으로 작업하지 않고 그냥 브라우저 내에서 업데이트할 수 있다. 나에게 pull request하는 방법을 쓰면 된다.

절차를 간단히 설명하면 다음과 같다.

  1. 내 repository에서 “Compare”를 누른 후, “switching the base”

  2. “Create pull request”를 눌러 원본 repository에서 나에게 pull request를 생성

  3. 아래 confirm하는 곳에서 “Merge pull request” 옆의 세모를 눌러 “Rebase and merge”