當前位置:首頁 » 文件傳輸 » 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命令上傳。