跳到内容

最新文章

自动备份网站文件和数据库

前几日博客挂了,为了保护数据,避免再挂了导致很久不能访问或者数据丢失,自己整一个数据备份.

1,将网站文件tar打包压缩.

2,将网站数据库用mysqldump备份.

3,然后用scp把文件和数据库传到另外的机器上,为实现scp免输秘密,制作一对密钥.

4,删除本机上的备份文件.

5,删除远程机器上的超过30天的备份.

6,输出备份完成时间

将以上六个步骤写成shell脚本,然后用crontab定期执行shell脚本.

首先制作密钥,为了方便,路径和短语全用默认设置,在发起scp的机器上,用要发起scp的用户执行:

ssh-keygen -t rsa

公钥被写入 ~/.ssh/id_rsa.pub,密钥被写入 ~/.ssh/id_rsa只有该用户能使用这对密钥.然后把公钥scp传到被连接的机器上,的家目录中的.ssh中:

scp 家目录.ssh/id_rsa.pub 接收用户@接收IP:家目录/.ssh/authorized_keys

然后用mysqldump备份数据库:

mysqldump -u用户 -p密码 数据库 > 目标文件

然后打包压缩网站文件:

tar -zcf 生成的文件 要备份的目录

然后把数据库和文件备份scp到别的机器上,这个时候因为有密钥,就不用输密码了,可以写在shell中执行.
定期执行shell:

crontab -e

内容如下:

# m h dom mon dow command
0 3 */2 * * /脚本目录/脚本 1>>/日志目录/日志文件 2>&1
#每两天3点执行一次,如果有输出,输出到指定文件

下面附上脚本代码:

#!/bin/bash

# 1,备份数据库
mysqldump -u用户 -p密码 数据库 > /目录/文件名-`date +%y%m%d`.sql

# 2,备份网站文件
tar -zPcf /目录/文件名-`date +%y%m%d`.tat.gz /目录

# 3,传到指定服务器上
scp /目录/文件名-`date +%y%m%d`.tat.gz 用户@IP:/目录
scp /目录/文件名-`date +%y%m%d`.sql 用户@IP:/目录

# 4,删掉本地临时文件
rm -rf /目录/*

# 5,远程删掉超过30天的文件
ssh 用户@IP "find /目录 -mtime +30 -exec rm -rf {} \;"

# 6,输出完成
echo "backup done at `date +%Y-%m-%d-%T`"

博客终于恢复了

前几日机房停电了,之后就访问不了了,不知道是机器关了没开机,还是我上网脚本设置有问题,等会检查一下.

之前攒了好多想写的文章赶紧写了,然后本地备份了.

不知道断了这么久对排名什么的有没有影响.

sed命令行使用小结

最近写了几个小脚本用到了sed命令,学了一下,顺便记下

 

sed替换的基本语法为:

sed 's/原字符串/替换字符串/'

单引号里面,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线”\”进行转义,但是单引号”‘”是没有办法用反斜线”\”转义的,这时候只要把命令中的单引号改为双引号就行了,例如:

sed "s/原字符串包含'/替换字符串包含'/" //要处理的字符包含单引号

命令中的三根斜线分隔符可以换成别的符号,这在要替换的内容有较多斜线是较为方便,只需要紧跟s定义即可,例如换成问号”?”:

sed 's?原字符串?替换字符串?' //自定义分隔符为问号

可以在末尾加g替换每一个匹配的关键字,否则只替换每行的第一个,例如:

sed 's/原字符串/替换字符串/' //替换所有匹配关键字

上箭头”^”表示行首,美元”$”符号如果在引号中表示行尾,但是在引号外却表示末行(最后一行),这里犯二了,搜了半天哪个符号表示首行,半天才想起来,首行就是数字”1″啊.那么在行首和行尾添加字符串就是把行尾和行首替换,例如:

sed 's/^/添加的头部&/g' //在所有行首添加
sed 's/$/&添加的尾部/g' //在所有行末添加
sed '2s/原字符串/替换字符串/g' //替换第2行
sed '$s/原字符串/替换字符串/g' //替换最后一行
sed '2,5s/原字符串/替换字符串/g' //替换2到5行
sed '2,$s/原字符串/替换字符串/g' //替换2到最后一行

替换样式可以多个在同一条命令中执行,用分号”;”分隔,例如:

sed 's/^/添加的头部&/g;s/$/&添加的尾部/g' //同时执行两个替换规则

sed处理过的输出是直接输出到屏幕上的,要保存可以将输出重定向,或者使用参数”i”直接在文件中替换:

sed -i 's/原字符串/替换字符串/g' filename //替换文件中的所有匹配项

写完晚上12点半了,困得不行,要是中间语言不连贯了出错了请见谅,欢迎指出.

Win8开机自动登陆,不输密码

按win+R键或者win+Q键,输入netplwiz,按回车

  

把”要使用本计算机,用户必须输入用户名和密码”的勾选去掉

单击确定,弹出窗口,输入密码就行了

MSDN Win8.1 PRO 激活 亲测

自己动手丰衣足食,

开始我用win7好好地,后来鬼使神差用了win8,

KMS激活以后貌似还不错,除了各种没驱动,各种bug,

后来迫不及待装了改进版win8.1,情况好一些了,除了不能激活,

本来我也没在意,过一段时间激活工具自然就有了,

但是蛋疼的事情发生了,我刀塔正激烈的时候,瘟都死激活弹出来霸屏了,擦了,

不能进行任何操作看了几秒”请激活”以后,再切回来,死了…

下定决心要找个激活方法,还真找到了.

这是正版激活,不是工具激活,不卖关子,就是电话激活的,

为了证明 ,先上一张激活成功图,

我的win8.1是在http://msdn.itellyou.cn/下载的,

Windows 8.1 (multiple editions) (x64) – DVD (Chinese-Simplified)

文件名:cn_windows_8_1_x64_dvd_2707237.iso

发布日期(UTC):2013-09-09 00:00:00

不是win8, 是win8.1, win8可以KMS激活的,

下面是激活流程:

首先到网上去找激活key,不是安装key,

一个一个到windows激活里面去试,基本都会激活失败的,不过没关系,

退到上一层,下面有个查看错误详细的按钮,

如果你的key错误提示是超过激活次数,这个key就还可以用,

这里我放几个吧,截止到2013.09.22,里面是有能用的,

TQQD9-XKNX7-RK7RM-TPKCJ-82KT7
N4C6X-D24WB-J4JCR-MQ8B3-GFYQH
NFMVG-M844W-R8VGR-7BM9Y-MY2KV
NGQWB-XWHY4-4K3QW-FDFJR-TVHQQ
BHNB4-WF6WB-KVW7M-43FG2-XTMCY
8DNHX-W3BCP-82HW3-M4H6H-8HRDH
2GVN8-TV3C2-K3YM7-MMRVM-BBFDH
4NMMK-QJH7K-F38H2-FQJ24-2J8XV
76NDP-PD4JT-6Q4JV-HCDKT-P7F9V
BDDNV-BQ27P-9P9JJ-BQJ96-KTJXV
CDQND-9X68R-RRFYH-8G28W-82KT7
DWV49-3GN3Q-4XMT7-QR9FQ-KKT67

找到一个提示超过激活次数的key,下面就要用网络电话打微软的电话,

先在控制面板>区域里面把区域设成美国,

然后打开win8应用中心搜索”skype”,安装第一个就好了,

如果电脑登陆了微软账号,一般就不用再注册skype账号了,会自动链接,如果没有就注册一个吧,

一些你懂得原因,skype国内貌似不好用,我们需要VPN代理,

下载一个鲨鱼免费VPN加速器(https://www.shayunet.net/),注册一个鲨鱼VPN账号,

注册了是测试账户,有300M流量,够用了,我激活的时候激活码每个听好几遍才用了十几M流量,

打开鲨鱼免费VPN加速器,选免费服务器,美国的,哪个快就哪个吧,

连接成功以后打开skype,打开拨号面板,位置选英国,然后分屏,把skype分在一边,

打开激活中心,点击那个拨打技术什么电话的按钮,分屏在另一边,

用skype打激活中心给的那个免费电话,不用给skype充值就能用,看着激活中心给的一组号码,

(知道为啥要装应用而不是软件了吧,分屏,哈哈),

下面是电话激活对话过程,四六级过了都能听懂:

Welcome to Microsoft Product Activation.
(欢迎来到微软产品激活中心)
Please press 1 as a home user, and 2 if you are a business customer with a volume license agreement.
(家庭用户请按1,如果你是一个批量许可协议的企业客户请按2)
To activate, you must have your installation numbers from your activation wizard screen.
(要激活电脑,你必须要有从电脑的激活向导上得来的激活号码)
If you are familiar with this process, you may press the hash key to skip any instructions.
(如果您熟悉这个过程中,你可以按#号键跳过了)
No personal information is collected during activation.
(在激活过程中不会收集何个人信息)
If you have your ID to hand and are ready to proceed, please press the hash key.(如果你的手上有激活ID,并且准备好继续激活,请按 #号键)
To repeat this message, press the star key.
(重复此消息,请按 *号键)
Please enter the first group now.
(请输入第一组数字)
Thank you! And the second group
谢谢,请输入第二组数字
Thank you! And the third group
谢谢,请输入第三组数字
Thank you! And the fourth group
谢谢,请输入第四组数字
Thank you! And the fifth group
谢谢,请输入第五组数字
Thank you! And the sixth group
谢谢,请输入第六组数字
Thank you! And the Seventh group
谢谢,请输入第七组数字
Thank you! Now enter the eighth group
谢谢,现在,请输入第八组数字
Thank you! To finish ,enter the final group
谢谢,请输入 最后一组组数字 以完成输入
Please wait while your confirmation number is generated.
(请稍候,您的激活码正在生成)

接下来我这会有两种情况:

(1) Key 失效的情况。
We are unable to activate your product.
(我们无法激活您的产品 )
It is possible that you are a victim of software piracy.
(您可能是盗版软件的受害者。)
In order to check if your product is original, please click on the weblink www.microsoft.com/genuine.

这个没办法,只能换key再试了,

(2) Key 生效的情况。
赶紧拿笔把 A 到 H 8组数记下来,

星号键重听该组数,井号键听下一组数,

听完填进去就激活了,正版激活的哦,

之所以微软会有这么个漏洞,

是因为防止购买正版的用户自己修改电脑配置以后无法重新激活,

微软不能说你重新买吧,这显然是不现实的,就有了这个电话激活,

但是被天朝人民的智慧是无穷的,VPN挂起,

用来做这种事微软也只能呵呵了.