본문 바로가기
Linux

ncftp - 원격지 FTP에 자동으로 백업하기

by 올엠 2020. 11. 20.
반응형

예전에 쉘 스크립트를 이용하여 원격지 백업을 진행한 적이 있다. 이때 사용했던 쉘 스크립트를 보관하는 차원으로 글을 남긴다. 원격지 FTP 백업을 위해 사용한 도구는 ncftp 으로 GUI없이 command line을 유저/비밀번호 입력이 가능해 자동화 작업에 유용하다. 

ncftp 설치는 apt-get을 이용해 가능하다.

$sudo apt-get install ncftp

ncftp 도움말

ncftp를 입력하면 ncftp 쉘로 접근해 ftp client 기능을 수행하고, ncftpput을 입력하면 command line으로 구동할 수 있다. 이외에도 다양한 옵션이 있으니, ftp 업로드와 같은 작업이 있다면 유용하게 활용할 수 있다.

 

#!/bin/bash

##함수 지정 부분 현재 년도와월,일을 시간뒤에 표시가 된다.
exporttoday="'date '+%Y%m%d'"
##함수 지정 부분으로 백업 하고자 하는 디렉토리를 지정하면 된다.
backup_dir="/backup/msp1"
##백업보관일
backup_count="2"

##2일이상인백업데이터삭제
dirlists='/bin/ls -t $backup_dir 2> /dev/null'
i=1
for dir in $dirlists ; do
    if[ "$i" -ge $backup_count ] ; then
    rm -rf "$backup_dir/$dir"
    fi i=$(($i+1))
    done

##디렉토리생성
mkdir -p ${backup_dir}/$today
cd${backup_dir}/$today

##home 디렉토리및중요한데이터백업
dirlists='/bin/ls -t /home/test 2>/dev/null'
for dir in $dirlists ; do
    tar cvfz ${backup_dir}/$today/$dir.tar.gz /home/test/$dir
    done
tar cvfz ${backup_dir}/$today/mail.tar.gz /var/spool/mail

##다른서버로백업
/usr/bin/ncftpput -R -u user -p password FTP_IP ./${backup_dir}/$today/*

https://linux.die.net/man/1/ncftp

 

ncftp(1) - Linux man page

ncftp(1) - Linux man page Name ncftp - Browser program for the File Transfer Protocol Synopsis ncftp [host] ncftp [ftp://host.name/directory/] Description The purpose of ncftp is to provide a powerful and flexible interface to the Internet standard File Tr

linux.die.net

 

반응형

'Linux' 카테고리의 다른 글

Linux - 기본 네트워크 접근 제한하기 access.allow  (0) 2020.11.23
Linux - 기본 Log 확인  (0) 2020.11.20
Liunx - 유저 생성  (0) 2020.11.20
DNS Change on Ubuntu 18.x/20.x  (0) 2020.11.19
cURL - JSON 전송  (0) 2020.11.18