這裡蒐索程式師資訊,查找有用的技術資料
当前位置:首页 » 文件传输 » linux用脚本操控ftp
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

linux用脚本操控ftp

发布时间: 2022-08-25 21:11:37

㈠ linux自动备份网站及自动上传FTP脚本的方法

对于我们个人站长来说,数据的重要不用再谈,而很多站长经常忘记备份数据,也有无良的JS跑路,硬盘损坏,数据丢了,其中DS就丢失过好几次数据,如果没有备份,肯定悲剧,本文介绍一种自动备份数据的方法!
本脚本特色:
1.纯zip压缩,1-9可自行调整压缩率
2.整台VPS备份,还原方便,非常适合站群
3.加入压缩密码,可以自己设置
4.加入绑米信息伪静态压缩,防止伪静态弄丢
5.请确保在home目录下有backup目录,如果没有请执行
mkdir
/home/backup
6.还原数据库请参考:导入数据库方法
最后更新时间:2012年8月25日
centos安装zip
yum
install
zip
debian安装zip
apt-get
install
zip
下载编辑
wget
-c
http://www.***.com/soft/beifen.sh
vi
beifen.sh
只编辑注解为需要修改的地方
【脚本开始】
#!/bin/bash
#下面的参数是你要修改的
MYsql_USER=root
#mysql用户名
MYSQL_PASS=mysql密码
#mysql密码
FTP_USER=FTP用户名
#ftp用户名
FTP_PASS=FTP密码
#ftp密码
FTP_IP=FTP地址
#ftp地址
FTP_backup=FTP目录
#ftp上存放备份文件的目录,这个要自己得ftp上面建的
WEB_DATA=/home/wwwroot/
#要备份的网站数据
WEB_BANGMI=/usr/local/nginx/conf/
#要备份的绑米信息
WEB_MULU=/home/backup
#备份文件存放目录
WEB_MIMA=zhujima
#备份时候的密码
WEB_YASUOLV=1
#压缩率
1-9
如果VPS没有zip,请安装zip
#上面是你要修改的地方

#删除淘宝客缓存,属于自定义设置。可自行操作
#rm
-rf
/home/wwwroot/1.com/Apicache/*

#定义数据库的名字和旧数据库的名字
DataBakName=Data_$(date
+"%Y%m%d").zip
#定义数据库名字
WebBakName=Web_$(date
+%Y%m%d).zip
#定义备份网站名字
BANGMI=BANGMI_$(date
+%Y%m%d).zip
#定义绑米备份名字

OldData=Data_$(date
-d
-5day
+"%Y%m%d").zip
#定义5天前数据库名字
OldWeb=Web_$(date
-d
-5day
+"%Y%m%d").zip
#定义5天前网站名字
BANGMIshan=BANGMI_$(date
-d
-5day
+"%Y%m%d").zip
#定义5天前绑米名字

#删除本地3天前的数据
rm
-rf
$WEB_MULU/Data_$(date
-d
-3day
+"%Y%m%d").zip
$WEB_MULU/Web_$(date
-d
-3day
+"%Y%m%d").zip
$WEB_MULU/BANGMI_$(date
-d
-3day
+"%Y%m%d").zip

#导出全部数据库
cd
$WEB_MULU
/usr/local/mysql/bin/mysqlmp
-u$MYSQL_USER
-p$MYSQL_PASS
--all-databases
>
$(date
+"%Y%m%d").sql

#压缩数据库文件为一个文件
zip
-r
-$WEB_YASUOLV
-P
$WEB_MIMA
$DataBakName
$WEB_MULU/*.sql
rm
-rf
$WEB_MULU/*.sql

#压缩网站数据
cd
$WEB_DATA
zip
-r
-$WEB_YASUOLV
-P
$WEB_MIMA
$WebBakName
./*
mv
$WebBakName
$WEB_MULU/$WebBakName
cd
$WEB_MULU

#压缩绑米信息
cd
$WEB_BANGMI
#进入绑米目录
zip
-r
-$WEB_YASUOLV
-P
$WEB_MIMA
$BANGMI
./*
mv
$BANGMI
$WEB_MULU/$BANGMI

#上传到FTP空间,删除FTP空间5天前的数据
cd
$WEB_MULU
#进入备份目录
ftp
-v
-n
$FTP_IP
<<
END
user
$FTP_USER
$FTP_PASS
type
binary
cd
$FTP_backup
delete
$BANGMIshan
delete
$OldData
delete
$OldWeb
put
$DataBakName
put
$WebBakName
put
$BANGMI
bye
END
加入权限,写入定时执行
chmod
777
/root/beifen.sh
crontab
-e
30
21
*
*
*
/root/beifen.sh
注:每天21:30开始备份并且上传FTP
本文地址:http://www.zhujima.com/139.html

㈡ linux下用什么软件ftp自动上传文件

Linux下使用Shell脚本实现ftp的自动上传
1. ftp自动登录批量下载文件。

复制代码
代码如下:

#####从ftp服务器上的/home/data 到
本地的/home/databackup####
#!/bin/bash
ftp -n<<!
open
192.168.1.171
user guest 123456
binary
cd /home/data
lcd
/home/databackup
prompt
mget *
close
bye
!

2. ftp自动登录上传文件。

复制代码
代码如下:

####本地的/home/databackup to
ftp服务器上的/home/data####
#!/bin/bash
ftp -n<<!
open
192.168.1.171
user guest 123456
binary
hash
cd /home/data
lcd
/home/databackup
prompt
mput *
close
bye
!

3. ftp自动登录下载单个文件。

复制代码
代码如下:

####ftp服务器上下载/home/data/a.sh to local
/home/databackup####
#!/bin/bash
ftp -n<<!
open
192.168.1.171
user guest 123456
binary
cd /home/data
lcd
/home/databackup
prompt
get a.sh a.sh
close
bye
!

4. ftp自动登录上传单个文件。

复制代码
代码如下:

####把本地/home/databachup/a.sh up ftp
/home/databackup 下####
#!/bin/bash
ftp -n<<!
open
192.168.1.171
user guest 123456
binary
cd /home/data
lcd
/home/databackup
prompt
put a.sh a.sh
close
bye
!

小结:把以上脚本另存为文件加入到crontab中即可实现ftp自动上传、下载文件。
注解:
1. -n
不受.netrc文件的影响。(ftp默认为读取.netrc文件中的设定)
2. << 是使用即时文件重定向输入。
3.
!是即时文件的标志它必须成对出现,以标识即时文件的开始和结尾。

㈢ linux下怎么用命令设置ftp服务器

vsftpd软件包安装过了?
知识用命令可能性应该不大,相关的配置文件要根据要求修改啊:
vi /etc/vsftpd/vsftpd.conf #vsftpd.conf是vsftpd服务器的主配置文件
vi /etc/ftpusers #ftpusers用于保存不允许进行FTP登录的本地用户帐号
启动脚本名称是vsftpd /etc/init.d/vsftpd
vsftpd服务需要设置在运行级别3和5自动启动
# chkconfig --level 35 vsftpd on
服务器启动
# service vsftpd start
服务器停止
# service vsftpd stop
服务器状态查询
# service vsftpd status
ftp命令登录FTP服务器的格式
# ftp 192.168.1.2
希望对你有帮助!!!

㈣ 如何使2台Linux服务器通过FTP自动同步文件(用Shell脚本)

楼上正解。

㈤ linux系统内 怎么使用shell实现自动上传文件到ftp服务器

ftp自动登录上传单个文件。
把下面脚本另存为文件加入到crontab中即可实现ftp自动上传文件。
####把本地/home/databachup/a.sh up ftp /home/databackup 下####
#!/bin/bash
ftp -n<<!
open 192.168.1.171
user guest 123456
binary
cd /home/data
lcd /home/databackup
prompt
put a.sh a.sh
close
bye
!
注解:
1. -n 不受.netrc文件的影响。(ftp默认为读取.netrc文件中的设定)
2. << 是使用即时文件重定向输入。
3. !是即时文件的标志它必须成对出现,以标识即时文件的开始和结尾。

㈥ linux下的ftp服务需要24小时运行请写一个脚本监控ftp服务并保证ftp关闭后能在一分钟重启

那你就做个脚本1分钟查看一下ftp进程是否正常,文件夹是否访问正常,如果否则重启ftp服务。

㈦ 在Linux的客户端上怎么写可以自动每隔5分钟连接远程的FTP的脚本

/etc/crontab linux的任务计划*/5 * * * * 你的脚本 这就是每5分钟运行一次脚本 脚本要写ftp的自动应答 可以使用 expect命令

㈧ Linux shell 脚本ftp传输文件

ftp xxxxftp服务器
put命令上传
或者
输入ftp
执行open xxxftp服务器
然后 再执行
put命令上传。