<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>lazywen</title>
    <link>http://lazywen.com/</link>
    <description />
    <image>
      <title>lazywen</title>
      <url>http://m3.img.libdd.com/farm3/38/EF42516C04A240BB4238A262C2A3BE26_64_64.jpg</url>
      <link>http://lazywen.com/</link>
      <description />
    </image>
    <item>
      <title>照片</title>
      <link>http://lazywen.com/post/2012-02-16/15690167</link>
      <description>&lt;p&gt;&lt;p&gt;随手拍&lt;/p&gt;&lt;/p&gt;
    &lt;p&gt;&lt;img src="http://m2.img.libdd.com/farm3/227/F4FD9E891989AFA8E3A6E75CEF50E2E3_375_500.JPEG" /&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 16 Feb 2012 07:48:27 GMT</pubDate>
      <guid>http://lazywen.com/post/2012-02-16/15690167</guid>
      
    </item>
    <item>
      <title>照片</title>
      <link>http://lazywen.com/post/2012-02-16/15488817</link>
      <description>&lt;p&gt;&lt;p&gt;随手拍&lt;/p&gt;&lt;/p&gt;
    &lt;p&gt;&lt;img src="http://m3.img.libdd.com/farm3/227/ADF4067116DC3BD4839B1EFE69FC61E3_500_375.jpg" /&gt;&lt;/p&gt;
    &lt;p&gt;&lt;img src="http://m3.img.libdd.com/farm3/95/E857404ABD3EB9B004B7A913A21A955F_375_500.JPEG" /&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 16 Feb 2012 07:38:02 GMT</pubDate>
      <guid>http://lazywen.com/post/2012-02-16/15488817</guid>
      
    </item>
    <item>
      <title>照片</title>
      <link>http://lazywen.com/post/2012-02-16/16482376</link>
      <description>&lt;p&gt;&lt;p&gt;随手拍&lt;/p&gt;&lt;/p&gt;
    &lt;p&gt;&lt;img src="http://m2.img.libdd.com/farm3/181/0694F7AFDD70D0F777533A7C5A8DB0B5_500_375.jpg" /&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 16 Feb 2012 07:30:05 GMT</pubDate>
      <guid>http://lazywen.com/post/2012-02-16/16482376</guid>
      
    </item>
    <item>
      <title>照片</title>
      <link>http://lazywen.com/post/2012-02-15/15840483</link>
      <description>&lt;p&gt;&lt;img src="http://m3.img.libdd.com/farm3/35/364DC8E63FADAC1FD7ECFFB76C8DF923_500_375.jpg" /&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 15 Feb 2012 12:22:14 GMT</pubDate>
      <guid>http://lazywen.com/post/2012-02-15/15840483</guid>
      
    </item>
    <item>
      <title>最好用的U盘PE小工具</title>
      <link>http://lazywen.com/post/2012-02-15/16481847</link>
      <description>&lt;p&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;有时系统出问题了,进不了系统,或者硬盘出故障,想挽回数据,PE可就派上大用场啦,以前用过很多款PE,有老桃毛的,深山红叶的等,不过这款PE是我用过最好用的,PE作者不详,原作者用一堆东西引导PE,很琐碎,我把它改为了用grub4dos引导,并删除了几个不常用的东西,把最后精简的传到了网盘上,需要的朋友赶快下载吧,极具收藏价值.&lt;/p&gt;&lt;p&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;此PE不是光盘版,为U盘专用(移动硬盘也行),先用以前我推荐的 &lt;a href="http://shiwensblog.appspot.com/2010/04/2/fomat-u.html"&gt;格式化U盘为启动盘小工具&lt;/a&gt; &amp;nbsp;,把U盘格式化为启动盘,然后双击下好的U盘PE压缩包,把文件全部拖到U盘根目录,有重复名字的文件直接覆盖就行,(也可以先解压,然后再移动到U盘根目录,不过所有的文件已经被我设置成系统隐藏属性,解压后可能看不见),然后重启,设置U盘启动为优先,然后就能看见grub4dos的画面啦,第一个就是PE系统啦,下面是进入系统后画面:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;此PE自带了很多非常有用的软件,具体有:&lt;/p&gt;&lt;p&gt;U盘杀毒软件&lt;/p&gt;&lt;p&gt;Windows注册表编辑软件&lt;/p&gt;&lt;p&gt;大名鼎鼎的大蜘蛛杀毒软件&lt;/p&gt;&lt;p&gt;流氓软件清理&lt;/p&gt;&lt;p&gt;DiskGenius&lt;/p&gt;&lt;p&gt;FinalData数据恢复&lt;/p&gt;&lt;p&gt;ghost,这个当然少不了&lt;/p&gt;&lt;p&gt;PTDD磁盘分区表医生&lt;/p&gt;&lt;p&gt;VDM虚拟光驱,非常小巧&lt;/p&gt;&lt;p&gt;winRAR&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;截图工具,这个貌似是从qq截图里提取出来的同时按Ctrl+Alt+K就可以截图啦&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;硬盘检测&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;......&lt;/p&gt;&lt;p&gt;其它软件我就不列出来啦&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;由于精简了很多东西,此PE不支持热插拔,需要用移动硬盘的需在PE启动前就插好,鼠标也是,PE启动后再插上也不能用啦.做一个PE备用,天有不测风云,万一系统出问题的话就派上用场啦,我个人比较喜欢U盘PE,不用光驱,而且速度快,不推荐硬盘版的PE,因为如果是MBR出问题了你的硬盘PE也照样启动不了,有装ubuntu的朋友就有过这种经验吧,在windows下把ubuntu分区删除后进不了系统了,这时只要用pe启动,用硬盘管理工具重建一下MBR就行啦.总之,准备一个U盘PE是非常有必要的,强烈推荐.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;下载地址:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://u.115.com/file/f6a4cfe110"&gt;U盘PE&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <pubDate>Wed, 15 Feb 2012 06:38:41 GMT</pubDate>
      <guid>http://lazywen.com/post/2012-02-15/16481847</guid>
      
    </item>
    <item>
      <title>iptables开放mysql的端口</title>
      <link>http://lazywen.com/post/2011-11-22/15124941</link>
      <description>&lt;span class="text-img-holder"&gt;&lt;img  src="http://m3.img.libdd.com/farm3/241/5DA9A49645FAB63981B936604657ACF1_300_146.JPEG" width="300" height="146" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;今天在公司部署新服务器的mysql，发现无法远程登录，还以为配置出问题了，忙了半天关闭后iptables后神奇地正常了。真把我给郁闷的。但这外网服务器不能关闭iptables啊，然后google了一堆方法，都不管用，这些乱转载的童鞋，看到东西就转根本不管对错，真是一点都不负责，还浪费了别人的很多时间，后来研究出来了，很简单就是添加一条iptables规则打开3306端口，在/etc//sysconfig/iptables下添加&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;pre&gt;-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;注意确保在reject icmp-host-prohibited规则之前添加&lt;br /&gt;然后重启iptables，mysql又神奇的连接上了&lt;br /&gt;&lt;br /&gt;os: centos</description>
      <pubDate>Tue, 22 Nov 2011 09:59:44 GMT</pubDate>
      <guid>http://lazywen.com/post/2011-11-22/15124941</guid>
      
    </item>
    <item>
      <title>基于gae的低价机票监控并短信通知</title>
      <link>http://lazywen.com/post/2011-09-27/15223318</link>
      <description>&lt;span class="text-img-holder"&gt;&lt;img  src="http://m3.img.libdd.com/farm3/231/357EE39F5887F5FD1035F94BB7AD10E7_326_140.JPEG" width="326" height="140" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;这个算是除了学习工作之外写的第一个小东西吧，从基本代码到部署到gae上花了差不多一整天时间，第一次在gae上部署自己的东西，发现跟一般服务器区别还是挺大的，特别是没有了mysql很不习惯啊，不过gae也有它自己强大的数据库系统，用的是类SQL语句(非标准SQL)，研究了一段时间终于上手了，又因为gae的特殊环境，原来的代码又要调整好多地方，最后改得差不多了传到服务器上，居然还跑的挺不错。&lt;br /&gt;&lt;br /&gt;&lt;!--more--&gt;&lt;br /&gt;&lt;br /&gt;基本流程为：&lt;br /&gt;1.从数据库取以前查询的最低价格，若没有则为预期价格&lt;br /&gt;2.解析去哪儿网站的信息，取出指定日期的价格&lt;br /&gt;3.若取出的价格低于数据库里的价格，则将新的数据详细信息写入数据库&lt;br /&gt;4.发邮件通知(发到139邮箱可实现短信通知，当然如果你有自己的短信接口更好啦)&lt;br /&gt;5.每隔1小时重复步骤1-5&lt;br /&gt;6.当用户浏览器发送get请求时，从数据库中取出详细信息输出到用户浏览器中&lt;br /&gt;&lt;br /&gt;代码写的很一般，暂时不全部提供了，等过段时间完善一下，拿得出手了再提供给需要的朋友啦&lt;br /&gt;下面是后台查询价格的代码,水平一般还请朋友们不吝赐教&lt;br /&gt;[python]&lt;br /&gt;&lt;br /&gt;# -*- coding: utf-8 -*-&lt;br /&gt;import urllib2&lt;br /&gt;import xml.etree.ElementTree as etree&lt;br /&gt;from google.appengine.ext import db&lt;br /&gt;from google.appengine.api import mail&lt;br /&gt;from TicketDB import Ticket&lt;br /&gt;&lt;br /&gt;def getprice():&lt;br /&gt;date='2011-11-01'&lt;br /&gt;price=700&lt;br /&gt;try:&lt;br /&gt;price=int(db.GqlQuery('SELECT * FROM Ticket WHERE type=:1','go')[0].price)&lt;br /&gt;except:&lt;br /&gt;newdb=Ticket()&lt;br /&gt;newdb.type='go'&lt;br /&gt;newdb.price=str(price)&lt;br /&gt;newdb.put()&lt;br /&gt;context = urllib2.urlopen('http://ws.qunar.com/holidayService.jcp?lane=北京-昆明')&lt;br /&gt;tree = etree.parse(context)&lt;br /&gt;root = tree.getroot()&lt;br /&gt;for node in root[0]:&lt;br /&gt;if node.attrib[&amp;quot;date&amp;quot;] == date:&lt;br /&gt;for child in node:&lt;br /&gt;if child.attrib[&amp;quot;type&amp;quot;] == &amp;quot;go&amp;quot;:&lt;br /&gt;nowprice=int(child.attrib[&amp;quot;price&amp;quot;])&lt;br /&gt;if nowprice nowdb=db.GqlQuery('SELECT * FROM Ticket WHERE type=:1','go')[0]&lt;br /&gt;nowdb.discount=child.attrib['discount']&lt;br /&gt;nowdb.price=child.attrib['price']&lt;br /&gt;nowdb.name=child.attrib['name']&lt;br /&gt;nowdb.put()&lt;br /&gt;&lt;br /&gt;fromadd='xxx@gmail.com'&lt;br /&gt;toadd='xxx@139.com'&lt;br /&gt;subject='有新的机票啦，详情如下'&lt;br /&gt;body=unicode(&amp;quot;type: go\ndiscount: %s\nprice: %s\nname:%s&amp;quot; % (child.attrib['discount'],child.attrib['price'],child.attrib['name']))&lt;br /&gt;mail.send_mail(fromadd, toadd, subject, body)&lt;br /&gt;&lt;br /&gt;if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;getprice()&lt;br /&gt;&lt;br /&gt;[/python]&lt;br /&gt;&lt;br /&gt;其中TickDB是我自己定义的数据类型啦，price是预期的价格，预定700，当有低于这个价的机票就会发送邮件通知你啦，而下次比较又基于新的价格，所以不用担心会连续发送，另外139邮箱绑定了手机就能收到短信提醒，非常方便的说。&lt;br /&gt;&lt;br /&gt;在高物价的现在，能省一点就能多享受一点，我每次不买到600以下的票是不会轻易飞的，像这样有个程序每隔一段时间就帮自己查一下，我们就能省下很多时间和精力了吧？ ~~^.^~~</description>
      <pubDate>Tue, 27 Sep 2011 15:04:53 GMT</pubDate>
      <guid>http://lazywen.com/post/2011-09-27/15223318</guid>
      
    </item>
    <item>
      <title>用python打包tar.gz</title>
      <link>http://lazywen.com/post/2011-08-26/15133475</link>
      <description>&lt;span class="text-img-holder"&gt;&lt;img  src="http://m2.img.libdd.com/farm3/246/6E25B108306B47A9807723AFC9B1E0F6_211_71.GIF" width="211" height="71" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;近期工作中要用到python来打包日志，我马上就想用os.system调用tar命令，简单方便啊，写完后发现这样写不够pythonic，查了查文档，果然有tar相关模块，python真是强大，用法也很简单，记录一下以备不时之需。&lt;br /&gt;&lt;br /&gt;&lt;!--more--&gt;&lt;br /&gt;&lt;br /&gt;首先确保你的代码里导入了该模块&lt;br /&gt;&lt;br /&gt;[python]&lt;br /&gt;&lt;br /&gt;import tarfile&lt;br /&gt;&lt;br /&gt;[/python]&lt;br /&gt;&lt;br /&gt;解压文件：&lt;br /&gt;&lt;br /&gt;[python]&lt;br /&gt;&lt;pre&gt;tar = tarfile.open(&amp;quot;sample.tar.gz&amp;quot;)
tar.extractall()
tar.close()&lt;/pre&gt;&lt;br /&gt;[/python]&lt;br /&gt;&lt;br /&gt;创建tar.gz文件：&lt;br /&gt;&lt;br /&gt;[python]&lt;br /&gt;&lt;br /&gt;tar=tarfile.open(&amp;quot;simp.tar.gz&amp;quot;,&amp;quot;w:gz&amp;quot;)&lt;br /&gt;&lt;br /&gt;tar.add(filename)&lt;br /&gt;&lt;br /&gt;tar.close()&lt;br /&gt;&lt;br /&gt;[/python]&lt;br /&gt;&lt;br /&gt;同样bz2也可以这样创建，如果要设置utf-8或者其它参数的，请察看详细文档&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.python.org/library/tarfile.html"&gt;http://docs.python.org/library/tarfile.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;这段时间忙工作和学习，所以好久没更新了，实在是没时间，平时回寝室后还得看书充充电，计划想写的作品都还没开始做，人为什么这么累还乐在其中，因为有了信念，相信明天总会好的，所以无论如何，一定要扛住......</description>
      <pubDate>Fri, 26 Aug 2011 05:51:48 GMT</pubDate>
      <guid>http://lazywen.com/post/2011-08-26/15133475</guid>
      
    </item>
    <item>
      <title>从今天开始在点点写博！</title>
      <link>http://lazywen.com/post/2011-08-25/4348953</link>
      <description />
      <pubDate>Thu, 25 Aug 2011 15:29:02 GMT</pubDate>
      <guid>http://lazywen.com/post/2011-08-25/4348953</guid>
      
    </item>
    <item>
      <title>Arch下openssh服务简单配置</title>
      <link>http://lazywen.com/post/2011-05-16/15928805</link>
      <description>&lt;span class="text-img-holder"&gt;&lt;img  src="http://m3.img.libdd.com/farm3/241/5DA9A49645FAB63981B936604657ACF1_300_146.JPEG" width="300" height="146" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;由于本人经常挂机处理一些工作，当不在电脑旁时想要知道工作的进度，或察看错误，关机等，这时候ssh就派上用场了。openssh已经在core仓库中，所以可以直接安装了&lt;br /&gt;&lt;br /&gt;pacman -S openssh&lt;br /&gt;&lt;br /&gt;&lt;!--more--&gt;安装完成后就是一些必要的配置，首先是生成ras密钥（可跳过）&lt;br /&gt;&lt;br /&gt;ssh-keygen -t rsa&lt;br /&gt;&lt;br /&gt;按提示输入路径，passphrase口令等，最后可以把生成的密钥拷贝出来备用&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;然后是对ssh服务进行一些配置，配置文件路径为 /etc/ssh/sshd_config (由于要使用sshd)&lt;br /&gt;&lt;br /&gt;Port 22 #端口可改为其它的&lt;br /&gt;&lt;br /&gt;PermitRootLogin yes #允许root用户登录&lt;br /&gt;&lt;br /&gt;Protocol 2 #用ssh2的连接方式（可不管）&lt;br /&gt;&lt;br /&gt;LoginGraceTimeout 20 #等待登录时间&lt;br /&gt;&lt;br /&gt;其它的一般用默认的就行啦，主要是按你的需要来修改配置&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;最后把你要登录ssh的ip添加到白名单里面，不然ssh服务不会让你登录的哦，白名单路径为 /etc/hosts.allow，例如把局域网里的ip全添加进去：&lt;br /&gt;&lt;br /&gt;sshd: 192.168.1.*&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;最后，是时候该启动我们的sshd服务了&lt;br /&gt;&lt;br /&gt;/etc/rc.d/sshd start&lt;br /&gt;&lt;br /&gt;如果先前已经启动过就restart&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;查看一下ssh进程&lt;br /&gt;&lt;br /&gt;ps -e | grep ssh&lt;br /&gt;&lt;br /&gt;看到有sshd就说明服务顺利启动啦，现在可以用手机来测试一下（android和ios系统都可以），还支持彩色输出&lt;br /&gt;&lt;br /&gt;&lt;span class="text-img-holder"&gt;&lt;img  src="http://m3.img.libdd.com/farm3/154/88BFA37856F2A1D19B8F027EA3987E9A_400_267.jpg" width="400" height="267" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;vim的语法高亮也支持&lt;br /&gt;&lt;br /&gt;&lt;span class="text-img-holder"&gt;&lt;img  src="http://m2.img.libdd.com/farm3/126/7CD54F693B587770B635837D7C9DC47E_400_267.jpg" width="400" height="267" /&gt;&lt;/span&gt;</description>
      <pubDate>Mon, 16 May 2011 11:05:08 GMT</pubDate>
      <guid>http://lazywen.com/post/2011-05-16/15928805</guid>
      
    </item>
  </channel>
</rss>


