原本今天早上打算把blog的评论功能写一下,后来被一些事情缠住了,就暂时把这想法给扔一边了。下午在写吧,弄个计时器,看看自己要花多少时间才能完成这个。

因为Flask0.72已经出了一段时间了,虽然有些模块还没有跟上,但我的blog程序只用了flask-cache模块,所以升上去也无所谓。就去官方找到个升级脚本把这个程序给升上去了。

下载地址: https://raw.github.com/mitsuhiko/flask/master/scripts/flask-07-upgrade.py

把这个放到程序目录下,然后执行:

python flask-07-upgrade.py>update.patch

然后用linux的patch把这个补丁打上,中间可能会有些文件打不上的,自己手工处理一下吧:

patch -p0<update.patch

我打完后有一个模板显示补丁打不上,自己手工替换了一下,然后运行程序的时候发现还有两个文件脚本没识别出来的,自己再改了一下,然后就可以用了。暂时没深入使用过0.72,下午把评论功能写一下,感受一下。

新买的这个xen的vps不装个pptp太对不起自己了,以前用openvz的vps没法装pptp,装openvpn又麻烦。这回终于可以用pptp来搭个vpn代理了。

1、安装pptpd

在ubuntu下面就直接用apt就安装就可以了:

apt-get install pptpd

2、编辑pptpd.conf文件

在/etc/pptpd.conf文件里面加入:

localip 192.168.80.1
remoteip 192.168.80.100-200

3、添加登陆用户

编辑/etc/ppp/chap-secrets文件,在里面加入登陆用户信息:

client    server    secret   IP addresses
用户名    pptpd      密码     允许拨入的IP地址(这里可以直接用*)

4、设置dns解析

编辑/etc/ppp/pptpd-options文件,在里面找到ms-dns并取消注释,然后自己设置一下dns服务器地址就可以了。

推荐使用Google DNS 8.8.8.8和8.8.4.4

5、开启转发

编辑/etc/sysctl.conf文件,在里面找到net.ipv4.ip_forward=1,并取消注释。再运行下面这条命令:

sysctl -p

然后输入下面命令,开启iptables的nat转发功能:

iptables -t nat -A POSTROUTING -s 192.168.80.0/24 -j MASQUERADE

因为iptables每次启动都要重新设置规则,所以用iptables-save保存下来:

iptables-save >/etc/iptables-rules

然后编辑/etc/network/interfaces文件,在iface etho下面添加如下内容:

pre-up iptables-restore /etc/iptables-rules

这次每次启动的时候就会自动添加了。

6、重启pptpd

1
/etc/init.d/pptpd restart

然后“我的财宝吗 想要的话就都给你 我把一切都放在墙外面了 翻墙去找吧!”

今天在QQ邮箱里面看到一封让我等了许久的YardVPS优惠码邮件,YARDVPS 72小时内有效,终身8折优惠,立马就去买了一个TREE1回来。优惠后6.36美元,折合人民币41.21元。

一买过来就兴冲冲的去装了个ubuntu10.10 64位系统,结果一直显示 Offline 。后来开机一会 Online 一会 Offline ,后来仔细看了看,发现这玩意重装应该是要点时间的,然后就不管它先上厕所放松放松。从厕所放松完回来,瞧瞧这东西还真好了。

既然好了就配置环境去。

1、先装个nginx

从官网上下了个nginx-1.0.4的源码包过来,在编译之前先装些需要的包。

安装gcc:

apt-get install gcc

安装nginx编译需要的包:

apt-get install libpcre3-dev
apt-get install zlib1g-dev

然后编译一下:

./configure --with-http_stub_status_module
make
make install

2、安装easy_install

1
apt-get install python-setuptools

3、安装uwsgi

1
2
apt-get install libxml2-dev python-dev
python setup.py install

4、安装Virtualenv

这个用来配合uwsgi和nginx来使用,非常方便:

easy_install virtualenv

最近上班比较无聊,下午想把局网站的互动交流模块做一下的。发现太久没写PHP,好不习惯啊。弄着弄着没什么想法,就暂时不弄了。还是Python好啊,语法看的舒服,写起来也爽。看来被Python养叼了~~

下午快下班的时候去看了一下白银的价格,发现很低啊。想想好久没炒了,就下了个单子,晚上居然真的买进来了。然后看着它的价格慢慢的往上涨,心情真是舒坦啊!最终赚了80块大洋。

好久没炒白银了,最近总想着怎么开个网站赚点小钱,昨天晚上在纸白银里随便下了个单子,早上起来发现居然买过来了。交易时间是2011-06-14 01:16:45,以7.25元1克的价钱买入1276克,成交金额为9251元,买入点非常低。

早上上班的时候就想着这个买入点这么低了,先不急着卖。一直到下午也只波动一点点,在13点32分的时候看见价格有回落的趋势就直接卖了,结果只赚了十几块钱。还好没亏,没过几分钟就那个价格居然猛涨上去了。不过也没涨多少就又开始回落了,算是回光返照吧。

晚上回家后又下了一个单子,这回控制的比较好,买入点也非常低,7.23元。然后就挂了个7.28准备涨上去就卖了。8点多的时候就卖掉了,发现居然卖了个小波段里的最高点。还好没贪心填太高的价格,不然就要哭死了。

波段图

睡前再下个单吧。

写这个篇记录下了很大的决心,昨天白银T+D猛涨,我一时冲动去买了5手空单。买完就后悔了,当时买的是7900,当天晚上继续涨到7970。晚上睡觉都觉得不安稳,睡前下了一个单,想着夜里能大跌,结果鬼使神差的又期望过大,下了个7750的平仓单。总以为市场会跟着自己的期望走,实际上市场就是市场,市场的动向是残酷的,如果没有详细的资金控制计划,没有顺势而为,把握住适合自己的进场点,那基本上就亏了。如果昨天晚上不再希望赚钱,下个7850到7870之间的单子还是可以小赚一笔的。

早上起来看了行情,真是肠子都悔青了,我想做这行的人大部份都有过类似的经历吧。今天中午的时候价格有所下降,我就准备在7900左右把这个给平仓了。但一直下不了手,总想着总有下降的时候,上个星期也是涨的非常高,后来也下来了。但到了晚上看了一些人对于亏损的心态,我决定如果超过10%的亏损就直接扔了,给自己定了严格的控制资金,再回来。悲剧的是晚上白银又疯涨,最终在8160的时候平仓了。直接经济损失应该在1457左右吧,现在银行还没有计算出来,明天晚上结果应该就出来了。

上个星期炒纸银的时候还是非常理智的,只找合适的低点进场,小赚一笔就出来,每天这样来一下一个星期也可以赚上将近500,结果这次直接全部亏进去了,还倒亏1000。我觉得这次是我的心态没放好,在巨大的利益驱动下,非常冲动的下了这个空单,以为市场暴涨了一天了,今天肯定会跌的。结果出现现在这种局面,不过这次也给了我一个教训。我决定以后不再轻易的进T+D了,这个比例太大了,还是纸白银比较适合我。现在平静下来想想,像T+D这种巨大的比例,虽然有巨大的利益,但风险太大了,心理压力非常的大。很容易判断错误,而且一次错误就可能万动不复,虽然现在的白银明天很可能会跌,但我不想再进场了,需要一段冷静思考的时间去调整一下心态。

我需要定一张明确的控制表,防止自己过度操作。过度的亏损可不这么舒服的。

工作的资金回帐要T+2的时间,也就是说要星期五的晚上才能回来,星期五晚上的尾巴有点难把握,就先不弄了,专心应对一下银行的应聘,换个职业。我倒是非常想换掉现在的工作。到底明年年底之前能不能赚到10万呢,看来想超越董东还是非常困难的。

自从买了这vps以来就一直没好好用过,最近有写个blog程序的冲动就重新配置一下。

先从控制面板里把这个系统重装成ubuntu 10.10 32位

然后就开始删掉一些不必要的东西:

apt-get --purge remove apache2
apt-get --purge remove apache2-common
apt-get --purge remove sendmail
apt-get autoremove
apt-get clean

安装编译器:

apt-get install build-essential
apt-get install gcc

设置 locale

先把 locale 设置正常:

cp /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/local
vi /var/lib/locales/supported.d/local

用 dd 命令删啊删,只留下en_系列和zh_系列 , 或者其他你要的 locale

重新生成 locale:

locale-gen --purge

安装nginx8.54

用wget去nginx官方上把源码包下过来:

./configure --prefix=/usr/local/nginx

中间可能会出现以下错误:

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.
1
sudo aptitude install libpcre3-dev
1
2
3
4
5
6
7
8
9
10
11
12
./configure: error: SSL modules require the OpenSSL library.
You can either do

not enable

the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source


with nginx by using --with-openssl=

<path> option
1
sudo aptitude install libssl-dev

然后用make&make install安装

安装uwsgi

首先要安装libxml2-dev模块和python-dev模块:

apt-get install libxml2-dev python-dev

再安装virtualenv用来管理python环境

VPS:YardVPS LEAF1 内存 128MB 流量 500GB $15/Year

系统:Ubuntu 10.10 32bit

方案:Nginx 7.67+Python2.5.5+Flask0.6+jinja2-2.5.5+werkzeug-0.6.2+Postgresql8.4+psycopg2.2.2+Flask-SQLalchemy0.9.1

1、首先把 Apache2 给干掉, vps 上用 nginx 比较好,把内存省出来给 postgresql

1
2
3
4
apt-get --purge remove apache2 
apt-get --purge remove apache2-common
apt-get --purge autoremove
apt-get clean

2、安装 Nginx

1
apt-get install nginx

3、设置 locale

先把 locale 设置正常,否则 PG 安装不上。

1
2
cp /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/local
vi /var/lib/locales/supported.d/local

用 dd 命令删啊删,只留下en_系列和zh_系列 , 或者其他你要的 locale

重新生成 locale:

locale-gen --purge

4、安装 Postgresql

1
apt-get postgresql

这个是安装 psycopg2 的时候需要的:

apt-get libpg-dev

5、安装编译环境

1
2
sudo apt-get install build-essential
sudo apt-get install gcc

6、安装 Python2.5.5

1
wget http://www.python.org/ftp/python/2.5.5/Python-2.5.5.tgz

解压出来:

tar xzvf Python-2.5.5.tgz

进入解压出来的 python 目录:

sudo ./configure --prefix=/usr/local/python
make
make install

删除原来的 python 软件连接:

rm /usr/bin/python

新建一个指向 2.5 版本的:

ln –s /usr/local/python/bin/python /usr/bin/python

7、安装 setuptools 工具,也就是 easy_tool 命令

http://pypi.python.org 里面去选择对应的版本,或着使用 ez_setup.py

8、安装 psycopg2.2.2

1
easy_install psycopg

9、安装 Flask,jinja2,werkzeug

这一条命令就可以全部装上:

easy_install flask

10、安装 Flask-SQLalchemy0.9.1

这个全自动把 sqlalchemy 也安装上的。

10、安装psyco

去sourceforge.net下载源码过来安装

要求就是:

  1. 将当前目录中的所有“子目录”的权限设置为755;
  2. 将当前目录中的所有“文件”的权限设置为644。

解决方法:

chmod 644 -R *
chmod 755 `find -type d` 

也可以用find彻底些:

find /path -type f -exec chmod 644 {} \;
find /path -type d -exec chmod 755 {} \; 

tip

{}和;中间必需有空格

  1. Ubuntu进程管理 # Top动态 Ps-aux静态 进程树pstree 查看系统进程
  2. Ubuntu进程管理 # 程序名 & 后台运行程序
  3. Ubuntu进程管理 # fg 把后台运行的进程调回前台
  4. 进程管理 # bg 把前台运行进程调到后台
  5. Ubuntu进程管理 # renice Renice +1 180 把180号进程的优先级加1
  6. 进程管理 # kill Kill PID 终止某个PID进程
  7. Ubuntu进程管理 # at at 5pm + 3 days /bin/ls 指定三天后下午5:00执行/bin/ls
  8. 进程管理 # crontab Crontab -e 用VI的形式来编辑自动周期性任务
  9. Ubuntu进程管理 # crontab Crontab -l 查看自动周期性任务
  10. 进程管理 # crontab Crontab -r 删除自动周期性任务
  11. Ubuntu进程管理 # crond Service crond 马上启动自动周期性服务 Service crond <启动|停止|重启|状态>
  12. Ubuntu启动管理 # reboot Init 6 重启LINUX系统
  13. Ubuntu启动管理 # Halt Init 0 Shutdown –h now 关闭LINUX系统
  14. 启动管理 # runlevel 显示系统运行级
  15. Ubuntu启动管理 # Init [0123456] 改变系统运行级,7种
  16. 启动管理 # Chkconfig –-list [服务名称] 查看服务的状态
  17. 启动管理 # Chkconfig –-level <运行级> <服务名> on|off|set 设置服务的启动状态
  18. Ubuntu启动管理 # Chkconfig <服务名> on|off|set 设置非独立服务启状态