<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: vi命令速查表</title>
	<atom:link href="http://www.pkphp.com/2008/07/01/vi%e5%91%bd%e4%bb%a4%e9%80%9f%e6%9f%a5%e8%a1%a8/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pkphp.com/2008/07/01/vi%e5%91%bd%e4%bb%a4%e9%80%9f%e6%9f%a5%e8%a1%a8/</link>
	<description>PK with php!</description>
	<pubDate>Tue, 18 Nov 2008 22:54:46 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: askie</title>
		<link>http://www.pkphp.com/2008/07/01/vi%e5%91%bd%e4%bb%a4%e9%80%9f%e6%9f%a5%e8%a1%a8/#comment-18</link>
		<dc:creator>askie</dc:creator>
		<pubDate>Tue, 01 Jul 2008 13:43:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.pkphp.com/?p=121#comment-18</guid>
		<description>二、邮件发送远程备份
首先安装上面下载的文件，然后做下面的配置

vi /etc/Muttrc

set sendmail="/usr/bin/msmtp -a your_account"
set realname="your_email"
set use_from=yes
set editor="vim"

MSMTP

创建user_home/.msmtprc和 user_home/.msmtp.log,分别为配置和日志文件。

vi msmtprc

account default
host smtp.domain.com
from your_email_address
tls on
auth on
user user_name@domain.com
password your_password

account default : dominic

由于password是明码，所以我们需要修改此文件的权限。

chmod 600 .msmtprc

到这里，你可以使用mutt来发送邮件了，我们测试一下。
echo "test" &#124;mutt -s "my_first_test" anyone@163.com -c anytwo@163.com

-s "subject"
-c "carbon-copy"


观察.msmtp.log文件，如果有错会在日志文件中被报告出来，当然，成功发送的日志也会出现在此日志文件内。


编写如下脚本
#vi autoBakMysql.sh

#!/bin/bash
#Auto DB Backup shell
#Powered by leo

DBName=mysql
DBUser=root
DBPasswd=
BackupPath=/root/
LogFile=/root/db.log
DBPath=/var/lib/mysql/
#BackupMethod=mysqldump
#BackupMethod=mysqlhotcopy
#BackupMethod=tar
#Setting End


NewFile="$BackupPath"db$(date +%y%m%d).tgz
DumpFile="$BackupPath"db$(date +%y%m%d)
OldFile="$BackupPath"db$(date +%y%m%d --date='5 days ago').tgz

echo "-------------------------------------------" &#62;;&#62;; $LogFile
echo $(date +"%y-%m-%d %H:%M:%S") &#62;;&#62;; $LogFile
echo "--------------------------" &#62;;&#62;; $LogFile
#Delete Old File
if [ -f $OldFile ]
then
  rm -f $OldFile &#62;;&#62;; $LogFile 2&#62;;&#038;1
  echo "[$OldFile]Delete Old File Success!" &#62;;&#62;; $LogFile
else
  echo "[$OldFile]No Old Backup File!" &#62;;&#62;; $LogFile
fi

if [ -f $NewFile ]
then
  echo "[$NewFile]The Backup File is exists,Can't Backup!" &#62;;&#62;; $LogFile
else
  case $BackupMethod in
  mysqldump)
     if [ -z $DBPasswd ]
     then
        mysqldump -u $DBUser --opt $DBName &#62;; $DumpFile
     else
        mysqldump -u $DBUser -p$DBPasswd --opt $DBName &#62;; $DumpFile
     fi
     tar czvf $NewFile $DumpFile &#62;;&#62;; $LogFile 2&#62;;&#038;1
     echo "[$NewFile]Backup Success!" &#62;;&#62;; $LogFile
     rm -rf $DumpFile
     ;;
  mysqlhotcopy)
     rm -rf $DumpFile
     mkdir $DumpFile
     if [ -z $DBPasswd ]
     then
        mysqlhotcopy -u $DBUser $DBName $DumpFile &#62;;&#62;; $LogFile 2&#62;;&#038;1
     else
        mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile &#62;;&#62;;$LogFile 2&#62;;&#038;1
     fi
     tar czvf $NewFile $DumpFile &#62;;&#62;; $LogFile 2&#62;;&#038;1
     echo "[$NewFile]Backup Success!" &#62;;&#62;; $LogFile
     rm -rf $DumpFile
     ;;
  *)
     /etc/init.d/mysqld stop &#62;;/dev/null 2&#62;;&#038;1
     tar czvf $NewFile $DBPath$DBName &#62;;&#62;; $LogFile 2&#62;;&#038;1
     /etc/init.d/mysqld start &#62;;/dev/null 2&#62;;&#038;1
     echo "[$NewFile]Backup Success!" &#62;;&#62;; $LogFile
     ;;
  esac
fi

echo "-------------------------------------------" &#62;;&#62;; $LogFile

echo "start email backup file"

echo "test" &#124;mutt -s "mysql_backup_file" anyone@163.com -c anytwo@163.com -s $DumpFile

echo "#################### send success! ##################" &#62;;&#62;; $LogFile</description>
		<content:encoded><![CDATA[<p>二、邮件发送远程备份<br />
首先安装上面下载的文件，然后做下面的配置</p>
<p>vi /etc/Muttrc</p>
<p>set sendmail=&#8221;/usr/bin/msmtp -a your_account&#8221;<br />
set realname=&#8221;your_email&#8221;<br />
set use_from=yes<br />
set editor=&#8221;vim&#8221;</p>
<p>MSMTP</p>
<p>创建user_home/.msmtprc和 user_home/.msmtp.log,分别为配置和日志文件。</p>
<p>vi msmtprc</p>
<p>account default<br />
host smtp.domain.com<br />
from your_email_address<br />
tls on<br />
auth on<br />
user <a href="mailto:user_name@domain.com">user_name@domain.com</a><br />
password your_password</p>
<p>account default : dominic</p>
<p>由于password是明码，所以我们需要修改此文件的权限。</p>
<p>chmod 600 .msmtprc</p>
<p>到这里，你可以使用mutt来发送邮件了，我们测试一下。<br />
echo &#8220;test&#8221; |mutt -s &#8220;my_first_test&#8221; <a href="mailto:anyone@163.com">anyone@163.com</a> -c <a href="mailto:anytwo@163.com">anytwo@163.com</a></p>
<p>-s &#8220;subject&#8221;<br />
-c &#8220;carbon-copy&#8221;</p>
<p>观察.msmtp.log文件，如果有错会在日志文件中被报告出来，当然，成功发送的日志也会出现在此日志文件内。</p>
<p>编写如下脚本<br />
#vi autoBakMysql.sh</p>
<p>#!/bin/bash<br />
#Auto DB Backup shell<br />
#Powered by leo</p>
<p>DBName=mysql<br />
DBUser=root<br />
DBPasswd=<br />
BackupPath=/root/<br />
LogFile=/root/db.log<br />
DBPath=/var/lib/mysql/<br />
#BackupMethod=mysqldump<br />
#BackupMethod=mysqlhotcopy<br />
#BackupMethod=tar<br />
#Setting End</p>
<p>NewFile=&#8221;$BackupPath&#8221;db$(date +%y%m%d).tgz<br />
DumpFile=&#8221;$BackupPath&#8221;db$(date +%y%m%d)<br />
OldFile=&#8221;$BackupPath&#8221;db$(date +%y%m%d &#8211;date=&#8217;5 days ago&#8217;).tgz</p>
<p>echo &#8220;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-&#8221; &gt;;&gt;; $LogFile<br />
echo $(date +&#8221;%y-%m-%d %H:%M:%S&#8221;) &gt;;&gt;; $LogFile<br />
echo &#8220;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;&#8221; &gt;;&gt;; $LogFile<br />
#Delete Old File<br />
if [ -f $OldFile ]<br />
then<br />
  rm -f $OldFile &gt;;&gt;; $LogFile 2&gt;;&#038;1<br />
  echo &#8220;[$OldFile]Delete Old File Success!&#8221; &gt;;&gt;; $LogFile<br />
else<br />
  echo &#8220;[$OldFile]No Old Backup File!&#8221; &gt;;&gt;; $LogFile<br />
fi</p>
<p>if [ -f $NewFile ]<br />
then<br />
  echo &#8220;[$NewFile]The Backup File is exists,Can&#8217;t Backup!&#8221; &gt;;&gt;; $LogFile<br />
else<br />
  case $BackupMethod in<br />
  mysqldump)<br />
     if [ -z $DBPasswd ]<br />
     then<br />
        mysqldump -u $DBUser &#8211;opt $DBName &gt;; $DumpFile<br />
     else<br />
        mysqldump -u $DBUser -p$DBPasswd &#8211;opt $DBName &gt;; $DumpFile<br />
     fi<br />
     tar czvf $NewFile $DumpFile &gt;;&gt;; $LogFile 2&gt;;&#038;1<br />
     echo &#8220;[$NewFile]Backup Success!&#8221; &gt;;&gt;; $LogFile<br />
     rm -rf $DumpFile<br />
     ;;<br />
  mysqlhotcopy)<br />
     rm -rf $DumpFile<br />
     mkdir $DumpFile<br />
     if [ -z $DBPasswd ]<br />
     then<br />
        mysqlhotcopy -u $DBUser $DBName $DumpFile &gt;;&gt;; $LogFile 2&gt;;&#038;1<br />
     else<br />
        mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile &gt;;&gt;;$LogFile 2&gt;;&#038;1<br />
     fi<br />
     tar czvf $NewFile $DumpFile &gt;;&gt;; $LogFile 2&gt;;&#038;1<br />
     echo &#8220;[$NewFile]Backup Success!&#8221; &gt;;&gt;; $LogFile<br />
     rm -rf $DumpFile<br />
     ;;<br />
  *)<br />
     /etc/init.d/mysqld stop &gt;;/dev/null 2&gt;;&#038;1<br />
     tar czvf $NewFile $DBPath$DBName &gt;;&gt;; $LogFile 2&gt;;&#038;1<br />
     /etc/init.d/mysqld start &gt;;/dev/null 2&gt;;&#038;1<br />
     echo &#8220;[$NewFile]Backup Success!&#8221; &gt;;&gt;; $LogFile<br />
     ;;<br />
  esac<br />
fi</p>
<p>echo &#8220;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-&#8221; &gt;;&gt;; $LogFile</p>
<p>echo &#8220;start email backup file&#8221;</p>
<p>echo &#8220;test&#8221; |mutt -s &#8220;mysql_backup_file&#8221; <a href="mailto:anyone@163.com">anyone@163.com</a> -c <a href="mailto:anytwo@163.com">anytwo@163.com</a> -s $DumpFile</p>
<p>echo &#8220;#################### send success! ##################&#8221; &gt;;&gt;; $LogFile</p>
]]></content:encoded>
	</item>
</channel>
</rss>
