#cd /usr/local/
#tar xvfz xvfz ncftp-3.2.1-linux-x86-glibc2.3-export.tar.gz
#cd ncftp-3.2.1
#ln -s /usr/local/ncftp-3.2.1/bin/ncftp /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpls /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpput /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpget /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpls /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpput /usr/bin/
#ln -s /usr/local/ncftp-3.2.1/bin/ncftpget /usr/bin/
anonymous 접속하기
첫번째방법: #ncftp ftp.daum.net
두번째방법:
#ncftp
계정으로 접속하기
#ncftp -u nforce 211.233.5.70
#ncftp -u nforce -p 1818218 211.233.5.70 ===> 패스워드지정접속
#ncftp -u nforce -P 21 211.233.5.70 ===> 포트지정접속
북마크 기능
--------------------------------------------------------------
#ncftp -u nforce 211.233.5.70
패스워드 입력하고
ncftp / > bookmark
Enter a name for this bookmark: nforce
Enter a name for this bookmark: nforce
You logged into this site using a password.
Would you like to save the password with this bookmark?
Save? [no] y
Bookmark "nforce" saved.
ncftp / > exit
Bookmark "nforce" saved.
ncftp / > exit
---------------------------------------------------------------
다음에 접속할때
#ncftp nforce 만하면 그냥 접속된다.
파일업로드 put 파일명
파일다운로드 get 파일명
멀티파일업로드 mput 파일명 mput file* mput *
멀티파일다운로드 mget 파일명 mget file* mget *
디렉토리 통째로 업로드및 다운로드 mget -R www/ mput -R www/
▶ ncftp 를 이용한 네트워크 백업스크립트
--------------------------------------------------------------------------------------------------------
#!/bin/bash
# 공통설정
export Today="`date '+%y-%m-%d'`"
backup_dir="/home/backup" ---> 로컬 백업할 디렉토리
export Today="`date '+%y-%m-%d'`"
backup_dir="/home/backup" ---> 로컬 백업할 디렉토리
# 디비설정
DB_user="계정"; ---> 디비 root
DB_pass="비밀번호"; ---> 디비패스워드
DB_user="계정"; ---> 디비 root
DB_pass="비밀번호"; ---> 디비패스워드
# 원격설정
FTP_addr="아이피주소"; ---> 네트워크 백업할 원격지 ftp서버 아이피
FTP_user="계정"; ---> 아이디
FTP_pass="비밀번호"; ---> 비번
FTP_addr="아이피주소"; ---> 네트워크 백업할 원격지 ftp서버 아이피
FTP_user="계정"; ---> 아이디
FTP_pass="비밀번호"; ---> 비번
# 디렉토리 생성
if [ ! -d "${backup_dir}/${Today}" ]
then
/bin/mkdir -p ${backup_dir}/$Today ---> 로컬백업하는 날짜
/bin/mkdir -p ${backup_dir}/$Today/homedir ---> 웹파일
/bin/mkdir -p ${backup_dir}/$Today/databases ---> 디비 파일
/bin/mkdir -p ${backup_dir}/$Today/system ---> dns파일
fi
if [ ! -d "${backup_dir}/${Today}" ]
then
/bin/mkdir -p ${backup_dir}/$Today ---> 로컬백업하는 날짜
/bin/mkdir -p ${backup_dir}/$Today/homedir ---> 웹파일
/bin/mkdir -p ${backup_dir}/$Today/databases ---> 디비 파일
/bin/mkdir -p ${backup_dir}/$Today/system ---> dns파일
fi
echo "-------------------------------- Delete Old Files Start ------------------------------"
yesterday=$(date --date '2 days ago' +%y-%m-%d) ---> 2일지난거는 삭제
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
rm -rf $yesterday
quit
EOF
echo "-------------------------------- Delete Old Files End ------------------------------"
yesterday=$(date --date '2 days ago' +%y-%m-%d) ---> 2일지난거는 삭제
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
rm -rf $yesterday
quit
EOF
echo "-------------------------------- Delete Old Files End ------------------------------"
echo "-------------------------------- System/Databases Backup Start --------------------"
# 시스템 디렉토리 백업
tar cvfpz ${backup_dir}/$Today/system/var.named.tar.gz /var/named --ignore-failed-read
tar cvfpz ${backup_dir}/$Today/system/var.named.tar.gz /var/named --ignore-failed-read
# databases를 사용자별 백업
for database in `mysqlshow -u ${DB_user} -p${DB_pass} | awk -F" " '{ print $2 }' | grep -v "^$" |grep -v "Databases"` ; do
mysqldump -u ${DB_user} -p${DB_pass} "${database}" ${table} > ${backup_dir}/${Today}/databases/${database}.sql
done
for database in `mysqlshow -u ${DB_user} -p${DB_pass} | awk -F" " '{ print $2 }' | grep -v "^$" |grep -v "Databases"` ; do
mysqldump -u ${DB_user} -p${DB_pass} "${database}" ${table} > ${backup_dir}/${Today}/databases/${database}.sql
done
# 원격 데이타백업을 시작한다.
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
put -R ${backup_dir}/$Today
quit
EOF
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
put -R ${backup_dir}/$Today
quit
EOF
/bin/rm -rf ${backup_dir}/$Today/system
/bin/rm -rf ${backup_dir}/$Today/databases
/bin/rm -rf ${backup_dir}/$Today/databases
echo "-------------------------------- System/Databases Backup End ---------------------"
echo "-------------------------------- Home Backup Start --------------------------------"
dirlists=`/bin/ls -t /home 2>/dev/null`
for dir in $dirlists
do
tar cvfpz ${backup_dir}/$Today/homedir/$dir.tgz /home/$dir
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
put -R ${backup_dir}/$Today
quit
EOF
/bin/rm -rf ${backup_dir}/$Today/homedir/$dir.tgz
done
for dir in $dirlists
do
tar cvfpz ${backup_dir}/$Today/homedir/$dir.tgz /home/$dir
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << EOF
put -R ${backup_dir}/$Today
quit
EOF
/bin/rm -rf ${backup_dir}/$Today/homedir/$dir.tgz
done
/bin/rm -rf ${backup_dir}/$Today
echo "-------------------------------- Home Backup End ----------------------------------"
--------------------------------------------------------------------------------------------------------