2013-03-08 46 views
0

我對所有這一切都超級綠色,所以去輕鬆 - 我的第一批bash腳本。OSX - 無法壓縮備份腳本中的數據庫文件 - 權限dennied

我做了一個簡單的bash腳本是:

  • 登錄到Web服務器
  • 轉會網站文件到我們的OSX服務器
  • 轉移數據庫在dumbs我們OSX服務器
  • 在OSX上使用tar壓縮文件
  • 將名爲歸檔日期的存檔保存到OSX上的其他目錄
  • 刪除檔案超過15天

腳本的偉大工程,除了它失敗,因爲權限錯誤,同時使檔案 - 這一切發生的OSX的服務器上。

如何給腳本權限壓縮文件?我使用網絡服務器的root用戶來傳輸文件。

腳本是超級基本的 - 只是這樣一羣終端命令:

echo "START WEB SERVER BACKUP" 
rsync -azrP --delete [email protected]:/etc/apache2/ ~/Backups/webserver-backups/apache/; 
echo "Complete" 
echo "Starting transfer of mysql databases" 
rsync -azrP --delete [email protected]:/mysql-backups/ ~/Backups/webserver-backups/mysql/; 
echo "Complete" 
echo "Starting transfer of website files" 
rsync -azrP --delete [email protected]:/website-vhosts/ ~/Backups/webserver-backups/vhosts/; 
echo "Complete" 
echo "Compressing files into archive - this may take 5-10 minutes" 
DATE=`date +%Y-%m-%d` 
tar -zcfp ~/Backups/webserver-backups/archives/dev-$DATE.tar.gz ~/Backups/webserver-backups; 
echo "Complete" 
echo "Removing archives older than 15 days" 
find "~/Backups/webserver-backups/archives/" -maxdepth 1 -type f -name "*.tar.gz" -mtime +15 -exec rm -f {} \; 
echo "Complete" 
echo "WEB SERVER BACKUP COMPLETE" 

任何幫助或指針將不勝感激。

乾杯

回答

0

你的問題是,一些文件(如dbu_1354246775.sql)無法通過嘗試創建壓縮包供用戶讀取。 刪除所有文件在〜/備份/網絡服務器的備份與:

sudo find ~/Backups/webserver-backups -type f -delete 

然後在你的腳本替換焦油-zcfp命令焦油CZF

並重新啓動你的腳本

+0

乾杯隊友,$ tar czf做了訣竅 – CMSCSS 2013-03-09 21:47:08

0

p選項僅用於提取。試試這個:

tar -czf

+0

乾杯隊友,我仍然得到相同的錯誤 - 這裏是輸出:tar:刪除成員名稱中的前導'/' tar:dbu_1354246775.sql:無法打開文件:權限被拒絕 tar:dbu_1348160584.sql:coul d未打開文件:權限被拒絕 – CMSCSS 2013-03-08 04:01:25