CentOS配置vsftpd遇到550错误的解决办法

安装vsftpd很简单:yum install vsftpd

启动vsftpd也很简单:service vsftpd start

默认情况下用root是无法连接的,你可以创建一个非root帐户登录,但是登录是可以登录,却没有办法创建或是上传文件。有人说,可以把SELinux关掉,可是这样未免也有点尺度太大了,其实是SELinux里的设置问题,只要修改相应的配置就可以了。

发现问题的方法:

# getsebool -a | grep ftp
allow_ftpd_anon_write –> off
allow_ftpd_full_access –> off
allow_ftpd_use_cifs –> off
allow_ftpd_use_nfs –> off
ftp_home_dir –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off

将红色字体部分的值改成on就可以了,设置的方法如下:

# setsebool -P ftp_home_dir 1

然后就可以上传文件,做你想做的事情了。

4,970 次浏览 | 没有评论
2010年1月27日 | 归档于 Linux, 技术, 软件

Refactor

为什么要重构?我不知道教科书是或是别人都会怎么讲,但是重构对我来说,基本上就是把一个糟糕的设计重新写一遍。那么,什么是我定义的两糟糕的设计?又怎么样来重写,并且期望能够达到一个怎么样的目的才算是一个好的重构呢?

糟糕的设计:

  1. 因为时间紧,任务重,没有进行设计,基本上是随心所欲的写出来的代码;
  2. 充斥着“if…else…”,打了无数的补丁,新增功能的时候,就得多增加判断条件;
  3. 代码变得越来越复杂,相同的代码出现在了不同的地方,修改一处,必须时刻记着也要修改别的地方

那怎么样来重写呢?完全抛弃以前的代码么?

  1. 完全抛弃以前的代码:之前的代码写得实在是太糟糕,没有任何可取之处。而且没有办法使用一些重构工具一进行梳理。我自己没有遇到过这种情况。每一小段代码还不至于写得面目全非,这应该算是代价相对较重的一种重构方法,与其说是重构,不如说是重新写。
  2. 使用之前的代码:之前的代码,小的部分还是可以使用的,将它们独立出来,形成单独的模块,并使用一定的模块调用机制(如使用事件机制、插件系统)等,来调合各个不同的模块之间进行谐调工作。

我希望能达到一个几样的效果呢?

  1. 简单的说,我比较追求系统的可扩展性(scalability & extensibility)、可维护性、较高的系统性能。
  2. scalability是期望在一个较大的数据集前,系统也可以有一个比较好的表现;
  3. extensibility是期望系统能够容易的增减功能;
  4. 可维护性是期望系统在需要做出修改的时候,可以更加方便;
  5. 较高的系统性能,这个就不必说了,谁都希望自己的程序跑得更快。

有些时候,做重构并不是一个简单的决定,因为你要做出更多的工作,还不一定能搞出一个可用的系统来,但是,有风险的事情,做成功了会收获很大的好处,大部分时间,我还是咬咬牙会去选择重构代码。

==eof==

这篇文章也发表在AgilePHP上,快去看看,Refactor

2,947 次浏览 | 没有评论
2010年1月24日 | 归档于 技术, 软件

Nokia 5530XM

还是要跟小6说声对不起,把你摔坏了。

现在用的是小5,最近太忙,没时间折腾,原来是打算买个HTC Magic(G2),顺便还能试试在Android平台上做开发。可是时间实在是太仓促,买水货不做够功课我是不敢去买的,于是就买了Nokia 5530 Xpress Music。

到目前为此,我只装了Opera Mini 4.0和Opera Mini 5.2 Beta 2,以及UCWeb 7.0,Fetion for N97,QQ 2008 for Nokia 5800。前面的三款软件可以顺利安装,每一款都让人爱不释手,可以根据你个人的习惯来选择一个做为你的浏览器。同时,系统本身自带的浏览器也是不错的哟。

QQ 2008,去官网下,地址是http://mobile.qq.com/2008,手机型号选Nokia 5800XM
Fetion去官网下,地址是http://www.fetion.com.cn/download/mobileclient/,手机型号选N97

下下来了,OK,机器也连上WiFi了,想上飞信跟QQ,没门!这两个软件必须用GPRS连接,具体的设置方法是:

功能→设置→程序管理→已安装的程序→飞信(QQ)→选项→套件设置→接入点(移动梦网)

同时,我们要去掉那个无用的屏幕键盘,方法是:

功能→设置→程序管理→已安装的程序→飞信(QQ)→选项→套件设→屏幕键盘(关)→其它(默认)

与小五好好相处吧。

另外,连个WiFi的情况,可以正常使用手机自带的升级功能来升级系统,我真是肉牛满面呀!之前用小6从来没成功过。

如果你发现你的手机无法新建情景模式,或是无法自定义情景模式里的选项,那你可以尝试*#7370#这个功能!提醒:该功能会把你的手机彻底重置为出厂状态,所有联系人,以及设置信息都将不在。

9,418 次浏览 | 没有评论
2010年1月17日 | 归档于 Mobile, Nokia

Guge, Bye!

我没觉得Google要远离我的生活,我最常用的邮件客户端是Gmail(包括收其他邮箱的邮件),我的RSS阅读器是Google Reader,我搜索用Google.com,我查文章用Google Scholar,偶尔会在Google Books上查一些书的资料,我用Google Code来管理自己的一些项目,我用Google Analytics来统计我的网站的使用量,我用Google App Engine偶尔做一些小东西,还好我不需要用Google AdWords来做推广,也不用Google AdSense来做广告赚钱,写Blog也不用Google Blogger,Picasa网络相册也不常用,但是我用Picasa个管理我自己电脑上的照片,我用Google Toolbar for Firefox来增强我的浏览器的功能,我不用Google拼音输入法,但是我会装,偶尔有字用五笔一时打不出来了,可以换这个,会用Google Calendar来管理一下自己的形程。盘点完毕。

不过这些东西好像与Google.cn没有一点关系。Google.cn虽然不继续在中国发展了,我想我还能继续我的网上生活,除非哪一天上面说的那些服务都不能用了。

谷歌,这个名字从一开始我就不喜欢,没有科技公司应该有的那种给人的新潮的感觉,现在慢慢接受了,却要走了,Guge,bye!

3,139 次浏览 | 没有评论
2010年1月15日 | 归档于 Google, 生活

换了个新主题

之前的那个主题是我拿iNove改的,也用了很长时间了。mg12设计的主题还是很合我胃口的,现在用的也是他设计的主题,有些细节等到春节放假的时候我要再改一下。
页面基本上没有加载什么图片,所以可以放上更多的小工具。

4,416 次浏览 | 2 条评论
2010年1月9日 | 归档于 博客
标签: , ,

使用mklink或junction后Chrome无法安装扩展的解决办法

Chrome官方的扩展中心已经上线了,现在有相当多的扩展开用。之前一直不愿意放弃Firefox使用Google Chrome,有一大部分原因是因为Firefox上的一些扩展。之前我也尝试过在Chrome上安装扩展,但是每次都在“加载中”便没有反应了。今天下了功夫搜索了一下,发现所有使用过mklink或是junction,把User Profile从默认位置移出来的同学都有这个问题,而且最后把问题归结到TEMP和TMP这两个变量指向的位置上,所以我想了个办法,写了个简单的脚本:

按这个思路,只要把TEMP跟TMP设置到非mklink或是junciton后的位置,再启动Chrome就可以了。

另外,确实发现了一大批好用的扩展,与Google功能集成的扩展我基本上都装了,来让他们亮个相:

image

有空我再把每一个扩展都写一下介绍和安装地址。

此法同样适用于解决无法安装主题的问题。

UPDATE:只需要在启动Chrome的快捷方式上加上参数 –user-data-dir=D:\Test\GoogleChromeDir

把蓝色的那部分改成你文件系统中的一个非junction的目录即可,不用那么麻烦再写脚本了。

11,096 次浏览 | 6 条评论
2010年1月8日 | 归档于 Google, 软件

Python and RRD

RRD是Round Robin Database的意思,RRDTool是用来管理RRD的一个工具。RRDTool主页在这里,Wikipedia的页面在这里。RRD其实就是一个时序数据库,使用一个固定大小的环型buffer,适用于存储一些统计性的信息,如CPU负载呀,气温变化呀。我为什么要说这个东西呢,因为XenServer里的性能统计是用的RRD,你可以访问诸如http://xenserver-host/rrd_updates?cf=AVERAGE&interval=5&start=123131321形式的网址来获取统计信息。XenServer将返回一个XML文件,这个XML文件其实就是用rrdtool里的export工具导出的。

好,下载完成了这个文件以后,我们假设文件名是data.xml,你可以使用rrdtool restore data.xml data.rrd的方式将数据重新恢复成rrd的格式,然后就可以使用rrdtool进行一系列操作。rrdtool的操作可以写十篇博客,这不是我今天想说的重点。

我今天想说的是,当我把rrdtool跟Python集成的时候,发现Python提供了若干封装的工具,比如Python-PyRRD,Python-rrd,Python-rrdtool,我想没几个人能搞明白这几者之间的关系吧。我来说一下。

Python-rrdtool,这个就是rrdtool的一个Python封装,调用方式与rrdtool里命令的格式是一致的。

Python-rrd,这个据说应该是rrdtool的前身,命名方式不符合Python的命名策略,所以改名成了Python-rrdtool,但是debian和ubuntu的源里还保留了一个过渡性质的傀儡包(transitional dummy package),其实就是Python-rrdtool

Python-PyRRD,这个是OO化的rrdtool封装,个人比较推荐用这个包,方便,代码也更容易让人理解。

另外,Java也提供了两个rrdtool的封装,一个是JRobin,一个是rrd4j,后者是在前者的基础上做的,提供了更好的OO的支持和性能。但是这两个项目似乎更新得很慢,XenServer导出的rrd数据(version 0003)他们现在不支持(只支持到version 0001)。所以想用Java分析XenServer的性能,还是自己去解析那个xml文件吧。

帮帮这个小姑娘

image

在北京工作的潘俊廷是一位在嵌入式领域尤其是ARM/Linux方面从事开发工作多年的工程师,也是Linux社区活跃分子,担任Linux论坛版主。

他的女儿潘怡帆今年5岁。出生第二天就进了急救病房。后诊断为肺动脉高压,一直靠氧气机呼吸。目前她的肺部已经转纤维化,不能提供自己所需的氧气,生命垂危。她的父母为了挽救女儿的生命,已经倾其所有,卖掉了房子。国内专家已经无能为力,需要转美国治疗此病经验丰富的德州儿童医院进行心肺移植手术。所需资金约50万美元。

请大家一起帮助她,程序员的下一代。因为病魔的折磨,她还没有学会走路,她的记忆里更多的只是针头和面罩,她更多的是从电视里知道了世界,她还保存着给四川灾区捐款一万元而收到的感谢信。

【捐款方式】

请访问怡帆基金网站捐赠页面 http://www.help-yifan.org/donate.html

更多详情请访问 http://www.help-yifan.org

2,438 次浏览 | 没有评论
2010年1月7日 | 归档于 生活
标签:

玩玩小游戏:翻砖头

2,931 次浏览 | 没有评论
2010年1月5日 | 归档于 小游戏, 生活

2009~2010年

今天发现AgilePHP.net的PR值升到了3,不过妖气重重的PR值降到了3,平均水平保持不变,以后主要的精力还是会放在AgilePHP.net上,今天突然有个想法,不知道有多少人想自助建博客的,到是可以找几个人,出些钱,买个虚拟主机,做做这方面的生意试试。在现如今国内的互联网环境下,看到godaddy.comIXWebHosting都开始支持支付宝付款了,不过我想自己搭个WordPress,对于一般人来说,应该还是有一小点门槛的吧,利用这一点小小的门槛,倒是可以赚些小钱。

新的一年来了,在2010年里需要再接再厉,这一年要升入研三了;这一年要找工作了;这一年将会影响以后好多年!

2,155 次浏览 | 没有评论
2009年12月31日 | 归档于 未分类
标签: