<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>定期備份 &#8211; 記下來</title>
	<atom:link href="https://noter.tw/tag/%E5%AE%9A%E6%9C%9F%E5%82%99%E4%BB%BD/feed/" rel="self" type="application/rss+xml" />
	<link>https://noter.tw</link>
	<description>一路上踩到的坑、遇到的問題，一點一滴記下來，希望能幫助到需要的人~</description>
	<lastBuildDate>Wed, 06 Nov 2019 14:40:40 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.3</generator>

<image>
	<url>https://noter.tw/wp-content/uploads/cropped-old-1130742_1920-1-32x32.jpg</url>
	<title>定期備份 &#8211; 記下來</title>
	<link>https://noter.tw</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>定期備份WordPress到Dropbox</title>
		<link>https://noter.tw/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/</link>
					<comments>https://noter.tw/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/#respond</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Mon, 12 Mar 2012 15:00:55 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[定期備份]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[crontab]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[add-apt-repository]]></category>
		<category><![CDATA[Dropbox]]></category>
		<guid isPermaLink="false">http://wazai.net/?p=2166</guid>

					<description><![CDATA[<p>(2012-09-14 更新) 上個星期蛙齋主機被跟 Linux 很不熟的小蛙弄到完全沒有辦法開機，只好放出最後大絕-reinstall &#62;&#60;，重新安裝新系統之後發現…之前把 VPS 裝起&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/" data-wpel-link="internal">定期備份WordPress到Dropbox</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>(2012-09-14 更新) 上個星期蛙齋主機被跟 Linux 很不熟的小蛙弄到完全沒有辦法開機，只好放出最後大絕-<strong><span style="color: #ff0000;">reinstall</span></strong> &gt;&lt;，重新安裝新系統之後發現…之前把 VPS 裝起來的過程是跌跌撞撞，有很多文件都沒有留下來…只能硬著頭皮慢慢把系統建回去，還好上一次找了一堆資料，寫了<strong>定期備份 WordPress 資料庫以及 /var/www的shell script</strong>，所以才能在一兩天內讓 VPS 可以正常運作！(否則以小蛙 Linux 的程度不知道要弄多久才會好 &#8230;)，這篇文章備份一下小蛙自己的備份的 shell script，免得又遇到什麼不測風雲&#8230;<br />
<span id="more-2166"></span>小蛙必須先寫在前面，小蛙對於 Linux 可以說是完全不熟悉，只會一些常常用到的操作，因此小蛙寫的 script 可能也會有不少問題，神經夠大條又懶得去找其他資料的網友可以「<strong>參考</strong>」小蛙的寫法，至少搭配上 crontab 後，這些 script 也是很盡職的做好備份的工作，當然如果有 Linux 強者有更好寫法的話，也歡迎留言讓小蛙以及其他網友參考！</p>
<ul>
<li>
<h3>Ubuntu 11.04 安裝 Dropbox</h3>
</li>
</ul>
<p>工欲善其事必先利其器，先把 <span style="color: #ff0000;"><strong>Dropbox </strong></span>裝上去吧！小蛙要裝這個 dropbox 也找了很久 … 明明第一次裝的時候並沒有那麼麻煩，感覺一下就裝好了…小蛙參考 <a href="http://raphaelhertzog.com/2011/06/06/official-debian-ubuntu-packages-for-nautilus-dropbox/" target="_blank" rel="noopener noreferrer nofollow external" data-wpel-link="external" class="wpel-icon-right"><strong>Official Debian/Ubuntu packages for Dropbox</strong><span class="wpel-icon wpel-image wpel-icon-6"></span></a> 這篇文章，其中有一些介紹，有興趣的網友可以點過去看看。</p>
<p>小蛙試過自己下載壓縮檔來執行，但總是會出現一堆奇奇怪怪的問題，最後使用上面那篇文章提到的方法，只有簡單三個指令<br />
( 2012-09-14 更新) 小蛙在安裝另一台VPS的時候發現下面這個 repository 已經失效了，請參閱&lt;&lt;<a href="http://wazai.net/2223" target="_blank" rel="noopener noreferrer nofollow external" data-wpel-link="external" class="wpel-icon-right">VPS安裝紀錄 &#8211; 安裝Dropbox<span class="wpel-icon wpel-image wpel-icon-6"></span></a>&gt;&gt;。如果已經不小心新增了 repository，可以在 <span style="color: #ff0000;"><strong>/etc/apt/sources.list.d/</strong></span> 找到它們，再刪除即可！</p>
<div>
<div id="highlighter_641011" class="syntaxhighlighter  bash">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">1</div>
<div class="line number2 index1 alt1">2</div>
<div class="line number3 index2 alt2">3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">add-apt-repository ppa:hertzog</code><code class="bash plain">/nautilus-dropbox</code></div>
<div class="line number2 index1 alt1"><code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">apt-get update</code></div>
<div class="line number3 index2 alt2"><code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">apt-get </code><code class="bash functions">install</code> <code class="bash plain">nautilus-dropbox</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>如果這三個指令都過的了，就真的是太恭喜了，但小蛙偏偏第一個指令就卡住了「<strong>command not found</strong>」，以小蛙對Linux粗淺的了解，只要發現某個指令出現command not found，就試試看<strong><span style="color: #ff0000;">apt-get instal</span><span style="color: #ff0000;">l</span></strong> 指令，搞不好就剛好可以裝到需要的套件(不知道這樣說對不對)，問題又來了，照著輸入之後出現下面的問題</p>
<div>
<div id="highlighter_486271" class="syntaxhighlighter  bash">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">1</div>
<div class="line number2 index1 alt1">2</div>
<div class="line number3 index2 alt2">3</div>
<div class="line number4 index3 alt1">4</div>
<div class="line number5 index4 alt2">5</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="bash comments"># apt-get install add-apt-repository</code></div>
<div class="line number2 index1 alt1"><code class="bash plain">正在讀取套件清單... 完成</code></div>
<div class="line number3 index2 alt2"><code class="bash plain">正在重建相依關係</code></div>
<div class="line number4 index3 alt1"><code class="bash plain">正在讀取狀態資料... 完成</code></div>
<div class="line number5 index4 alt2"><code class="bash plain">E: 找不到套件 add-apt-repository</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>喔耶！事情果然不像笨蛙所想的那樣簡單，上網查了一下原來「<strong>add-apt-repository</strong>」這個東東跟<strong>Python</strong>有關係，要使用這個指令必須先安裝</p>
<div>
<div id="highlighter_279071" class="syntaxhighlighter  bash">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="bash comments"># apt-get install python-software-properties</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>安裝完成後再執行剛剛上面提到的三個指令，就完成Dropbox的安裝囉！直接透過「<strong><span style="color: #ff0000;">dropbox start</span></strong>」啟動Dropbox、「<strong><span style="color: #ff0000;">dropbox stop</span></strong>」來停止Dropbox，第一次啟動會跳出一個連結，點選該連結後輸入dropbox的帳號密碼後就可以正常使用了。<br />
安裝Dropbox時小蛙遇到兩個問題也順便記錄下來：<br />
(1) 小蛙的Dropbox被安裝到<strong>/root/Dropbox</strong>目錄下，如果移動該目錄會造成Dropbox卡在Connecting而無法使用。<br />
(2) 有一次很奇怪的沒有出現認證連結，輸入dropbox start &gt;&gt; xxx，不知道為什麼把訊息輸出到xxx檔案中卻又出現連結 = = (2012-04-17 只要連續執行兩次以上 dropbox start 就會出現連結)</p>
<ul>
<li>
<h3>備份Shell Script</h3>
</li>
</ul>
<p><span style="color: #ff0000;"><strong>backupProcess.sh</strong></span> (注意要有執行權限，ex. <strong>chmod 744 backupProcess.sh</strong>)，.sh檔最上面一定要加上#!/bin/bash，否則會發生時間到卻一動也不動的情況(可參考<strong><a href="http://wazai.net/2000" target="_blank" rel="noopener noreferrer nofollow external" data-wpel-link="external" class="wpel-icon-right">crontab -e相關使用及問題 @ 蛙齋<span class="wpel-icon wpel-image wpel-icon-6"></span></a></strong>)。</p>
<div>
<div id="highlighter_50057" class="syntaxhighlighter  shell">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">01</div>
<div class="line number2 index1 alt1">02</div>
<div class="line number3 index2 alt2">03</div>
<div class="line number4 index3 alt1">04</div>
<div class="line number5 index4 alt2">05</div>
<div class="line number6 index5 alt1">06</div>
<div class="line number7 index6 alt2">07</div>
<div class="line number8 index7 alt1">08</div>
<div class="line number9 index8 alt2">09</div>
<div class="line number10 index9 alt1">10</div>
<div class="line number11 index10 alt2">11</div>
<div class="line number12 index11 alt1">12</div>
<div class="line number13 index12 alt2">13</div>
<div class="line number14 index13 alt1">14</div>
<div class="line number15 index14 alt2">15</div>
<div class="line number16 index15 alt1">16</div>
<div class="line number17 index16 alt2">17</div>
<div class="line number18 index17 alt1">18</div>
<div class="line number19 index18 alt2">19</div>
<div class="line number20 index19 alt1">20</div>
<div class="line number21 index20 alt2">21</div>
<div class="line number22 index21 alt1">22</div>
<div class="line number23 index22 alt2">23</div>
<div class="line number24 index23 alt1">24</div>
<div class="line number25 index24 alt2">25</div>
<div class="line number26 index25 alt1">26</div>
<div class="line number27 index26 alt2">27</div>
<div class="line number28 index27 alt1">28</div>
<div class="line number29 index28 alt2">29</div>
<div class="line number30 index29 alt1">30</div>
<div class="line number31 index30 alt2">31</div>
<div class="line number32 index31 alt1">32</div>
<div class="line number33 index32 alt2">33</div>
<div class="line number34 index33 alt1">34</div>
<div class="line number35 index34 alt2">35</div>
<div class="line number36 index35 alt1">36</div>
<div class="line number37 index36 alt2">37</div>
<div class="line number38 index37 alt1">38</div>
<div class="line number39 index38 alt2">39</div>
<div class="line number40 index39 alt1">40</div>
<div class="line number41 index40 alt2">41</div>
<div class="line number42 index41 alt1">42</div>
<div class="line number43 index42 alt2">43</div>
<div class="line number44 index43 alt1">44</div>
<div class="line number45 index44 alt2">45</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="shell comments"># 備份所有資料庫，不壓縮(也可以加入壓縮指令)</code></div>
<div class="line number2 index1 alt1"><code class="shell keyword">function</code> <code class="shell plain">backupDB(){</code></div>
<div class="line number3 index2 alt2"><code class="shell spaces">    </code><code class="shell plain">mysqldump -u資料庫帳號 -p資料庫密碼 --all-databases &gt; </code><code class="shell plain">/root/Dropbox/vpsbackup/vps-databases-</code><code class="shell plain">$(</code><code class="shell functions">date</code> <code class="shell plain">+%Y%m%d).sql</code></div>
<div class="line number4 index3 alt1"><code class="shell plain">}</code></div>
<div class="line number5 index4 alt2"><code class="shell comments"># 備份 /var/www 目錄，並且壓縮(如果要備份其他的資料夾，也可以此類推)</code></div>
<div class="line number6 index5 alt1"><code class="shell keyword">function</code> <code class="shell plain">backupWWW(){</code></div>
<div class="line number7 index6 alt2"><code class="shell spaces">    </code><code class="shell functions">tar</code> <code class="shell plain">-jpc -f </code><code class="shell plain">/root/Dropbox/vpsbackup/www-</code><code class="shell plain">$(</code><code class="shell functions">date</code> <code class="shell plain">+%Y%m%d).</code><code class="shell functions">tar</code><code class="shell plain">.bz2 </code><code class="shell plain">/var/www</code></div>
<div class="line number8 index7 alt1"><code class="shell plain">}</code></div>
<div class="line number9 index8 alt2"><code class="shell comments"># 備份 /etc 目錄</code></div>
<div class="line number10 index9 alt1"><code class="shell keyword">function</code> <code class="shell plain">backupEtc(){</code></div>
<div class="line number11 index10 alt2"><code class="shell spaces">    </code><code class="shell functions">tar</code> <code class="shell plain">-jpc -f </code><code class="shell plain">/root/Dropbox/vpsbackup/etc-</code><code class="shell plain">$(</code><code class="shell functions">date</code> <code class="shell plain">+%Y%m%d).</code><code class="shell functions">tar</code><code class="shell plain">.bz2 </code><code class="shell plain">/etc</code></div>
<div class="line number12 index11 alt1"><code class="shell plain">}</code></div>
<div class="line number13 index12 alt2"><code class="shell comments"># 備份 /root 目錄，並且排除Dropbox資料夾</code></div>
<div class="line number14 index13 alt1"><code class="shell keyword">function</code> <code class="shell plain">backupRoot(){</code></div>
<div class="line number15 index14 alt2"><code class="shell spaces">    </code><code class="shell functions">tar</code> <code class="shell plain">-jpc -f </code><code class="shell plain">/root/Dropbox/vpsbackup/root-</code><code class="shell plain">$(</code><code class="shell functions">date</code> <code class="shell plain">+%Y%m%d).</code><code class="shell functions">tar</code><code class="shell plain">.bz2 </code><code class="shell plain">/root</code> <code class="shell plain">--exclude=Dropbox</code></div>
<div class="line number16 index15 alt1"><code class="shell plain">}</code></div>
<div class="line number17 index16 alt2"><code class="shell keyword">case</code>  <code class="shell keyword">in</code></div>
<div class="line number18 index17 alt1"><code class="shell spaces">    </code><code class="shell string">"db"</code><code class="shell plain">)</code></div>
<div class="line number19 index18 alt2"><code class="shell spaces">        </code><code class="shell comments">#執行備份db動作</code></div>
<div class="line number20 index19 alt1"><code class="shell spaces">        </code><code class="shell plain">backupDB;</code></div>
<div class="line number21 index20 alt2"><code class="shell spaces">        </code><code class="shell plain">;;</code></div>
<div class="line number22 index21 alt1"><code class="shell spaces">    </code><code class="shell string">"www"</code><code class="shell plain">)</code></div>
<div class="line number23 index22 alt2"><code class="shell spaces">        </code><code class="shell comments">#備份www資料夾</code></div>
<div class="line number24 index23 alt1"><code class="shell spaces">        </code><code class="shell plain">backupWWW;</code></div>
<div class="line number25 index24 alt2"><code class="shell spaces">        </code><code class="shell plain">;;</code></div>
<div class="line number26 index25 alt1"><code class="shell spaces">    </code><code class="shell string">"etc"</code><code class="shell plain">)</code></div>
<div class="line number27 index26 alt2"><code class="shell spaces">        </code><code class="shell comments">#備份/etc資料夾</code></div>
<div class="line number28 index27 alt1"><code class="shell spaces">        </code><code class="shell plain">backupEtc;</code></div>
<div class="line number29 index28 alt2"><code class="shell spaces">        </code><code class="shell plain">;;</code></div>
<div class="line number30 index29 alt1"><code class="shell spaces">    </code><code class="shell string">"root"</code><code class="shell plain">)</code></div>
<div class="line number31 index30 alt2"><code class="shell spaces">        </code><code class="shell comments">#備份/root/shell資料夾</code></div>
<div class="line number32 index31 alt1"><code class="shell spaces">        </code><code class="shell plain">backupRoot;</code></div>
<div class="line number33 index32 alt2"><code class="shell spaces">        </code><code class="shell plain">;;</code></div>
<div class="line number34 index33 alt1"><code class="shell spaces">    </code><code class="shell plain">*)</code></div>
<div class="line number35 index34 alt2"><code class="shell spaces">        </code><code class="shell comments">#印出錯誤訊息及使用方式</code></div>
<div class="line number36 index35 alt1"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">""</code></div>
<div class="line number37 index36 alt2"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">"Usage  : ./backupProcess.sh [db | www]"</code></div>
<div class="line number38 index37 alt1"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">""</code></div>
<div class="line number39 index38 alt2"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">"  db   : backup all databases."</code></div>
<div class="line number40 index39 alt1"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">"  www  : backup /var/www data."</code></div>
<div class="line number41 index40 alt2"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">"  etc  : backup /etc/data."</code></div>
<div class="line number42 index41 alt1"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">"  root : backup /root/shell data."</code></div>
<div class="line number43 index42 alt2"><code class="shell spaces">        </code><code class="shell functions">echo</code> <code class="shell string">""</code></div>
<div class="line number44 index43 alt1"><code class="shell spaces">        </code><code class="shell plain">;;</code></div>
<div class="line number45 index44 alt2"><code class="shell keyword">esac</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<ul>
<li>
<h3>crontab定期執行備份動作</h3>
</li>
</ul>
<p>shell script寫完再來就是讓crontab定期執行囉！以下是小蛙的排程。</p>
<div>
<div id="highlighter_526146" class="syntaxhighlighter  shell">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">01</div>
<div class="line number2 index1 alt1">02</div>
<div class="line number3 index2 alt2">03</div>
<div class="line number4 index3 alt1">04</div>
<div class="line number5 index4 alt2">05</div>
<div class="line number6 index5 alt1">06</div>
<div class="line number7 index6 alt2">07</div>
<div class="line number8 index7 alt1">08</div>
<div class="line number9 index8 alt2">09</div>
<div class="line number10 index9 alt1">10</div>
<div class="line number11 index10 alt2">11</div>
<div class="line number12 index11 alt1">12</div>
<div class="line number13 index12 alt2">13</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="shell comments"># crontab –e</code></div>
<div class="line number2 index1 alt1"><code class="shell comments"># 每天早上三點五分備份/etc</code></div>
<div class="line number3 index2 alt2"><code class="shell plain">5   3 * * *     </code><code class="shell plain">/root/backupProcess</code><code class="shell plain">.sh etc &gt;&gt; </code><code class="shell plain">/root/log/etc</code><code class="shell plain">.log</code></div>
<div class="line number4 index3 alt1"><code class="shell comments"># 每天早上三點十分備份/root</code></div>
<div class="line number5 index4 alt2"><code class="shell plain">10  3 * * *     </code><code class="shell plain">/root/backupProcess</code><code class="shell plain">.sh root &gt;&gt; </code><code class="shell plain">/root/log/root</code><code class="shell plain">.log</code></div>
<div class="line number6 index5 alt1"><code class="shell comments"># 每天早上三點十五分備份database</code></div>
<div class="line number7 index6 alt2"><code class="shell plain">15  3 * * *     </code><code class="shell plain">/root/backupProcess</code><code class="shell plain">.sh db &gt;&gt; </code><code class="shell plain">/root/log/db</code><code class="shell plain">.log</code></div>
<div class="line number8 index7 alt1"><code class="shell comments"># 每個星期天上午三點半備份 /var/www 目錄</code></div>
<div class="line number9 index8 alt2"><code class="shell plain">30  3 * * 0     </code><code class="shell plain">/root/backupProcess</code><code class="shell plain">.sh www &gt;&gt; </code><code class="shell plain">/root/log/www</code><code class="shell plain">.log</code></div>
<div class="line number10 index9 alt1"><code class="shell comments"># 每天早上四點開啟dropbox</code></div>
<div class="line number11 index10 alt2"><code class="shell plain">0   4 * * *     dropbox start &gt;&gt; </code><code class="shell plain">/root/log/dropbox</code><code class="shell plain">.log</code></div>
<div class="line number12 index11 alt1"><code class="shell comments"># 每天早上四點三十分關閉dropbox</code></div>
<div class="line number13 index12 alt2"><code class="shell plain">30  4 * * *     dropbox stop &gt;&gt; </code><code class="shell plain">/root/log/dropbox</code><code class="shell plain">.log</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>呼 ~ 希望這些備份檔可以備而不用！對Linux不熟悉的小蛙來說，重灌Linux真是一大夢魘。(2012-04-17 DirectSpace主機有安全性漏洞遭受攻擊，結果造成部分用戶資料全部遺失 &#8230; 太恐怖了)</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/" data-wpel-link="internal">定期備份WordPress到Dropbox</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
