I just got a new Nexus 5X phone and want to install shadowsocks. But I always met "can't open file" mistake from naive Android download manager when I downloaded apk from my own http server. Finally I found it is a download manager bug (link) and could be fixed by update mime configuration file from sever side (link)
Thursday, October 22, 2015
I lost ip for my VPS after reboot when systemd update from 225 -> 226. I noticed a wired thing is eth0 -> ens3. According to this link, ens is better new name strategy. So I decided to follow this rule. The configuration file of netctl and iptables are updated (all eth0 -> ens3).
Another thing is I found systemd-networkd could be used for statis IP instead of netctl for my VPS. So I uninstall netctl and switch to systemd-networkd.
Thursday, January 22, 2015
2014年初正式告别做了三年之久的maintenance project，并将项目转给了一位新来的同事。之后的主要精力放在了mRBS和node 相关的事情。
由于宝宝的缘故，2014年的读书进度很慢。看完了英文版的安娜卡列琳娜，Darwin's dangerous idea由于生僻单词的原因，只看了20%。中文方面还在看网络小说，比如魔天记，宰执天下，从前有做灵剑山，宋时归。
2014年主要使用微博，微信和 Google+。微博仍然是主要的信息来源；微信主要用于和老朋友联系，但朋友圈的帖子质量是在不高。Google+的使用频率在下降，主要还是确实有用的信息源。 水木，twitter and Facebook的账户已经删除。reddit和豆瓣的账户还在，但活跃度基本为零。
科学方面上并无特别突出的研究和兴趣点，希望2015年能focus一两个方向。最主要的还是要多读几本英文原著。 经济方面也无所突出的兴趣点，希望2015对货币和汇率相关的课题能有所了解。 大数据和机器学习在网上很火爆，但暂时还是不要有所涉及吧，有限的精力需要放在重点项目上。
Wednesday, January 21, 2015
there are two issues when I installed new server on vultr
i couldn't git clone or ssh to git on new server. It takes long time to trouble shooting and finally it is caused no home direct in /etc/passwd.
SharedDataMiddleware in werkzeug could be used to host static file, but te problem is I always get a empty png without any drawing. It also take a long time to trouble shooting and it is caused by cache parameter which is used to enable or disable caching headers. cache is enabled by default and browser always use first png it get even later one has changed.
Monday, November 17, 2014
I have a company laptop which is behind a company HTTP proxy. It takes me lots of time to study how to use proxy for pip. At beginning, I tried "pip search --proxy xxx.xxx.xx.xx:xxxx matplotlib", but it doesn't work. Then I searched internet and found there are some bugs in pip proxy, like link,NTLM proxy issue. I even tried to use privoxy to convert socket5 proxy from ssh to HTTP to fix them, but it still doesn't work.
Saturday, October 11, 2014
flup is python library which could convert your wsgi application into fastcgi server. Since it is a library, you don't need to setup other extra standalone application. flup could hep to set up fastcgi through Unix socket domain or TCP port. It is also support scgi. webpy could use flup directly.
app = web.application(urls,locals())
if __name__ == '__main__':
#web.wsgi.runwsgi = lambda func, addr=None: web.wsgi.runfcgi(func, addr) for unix socket domain
#web.wsgi.runwsgi = lambda func, addr="/tmp/test.sock": web.wsgi.runfcgi(func, addr) for Tcp port
#web.wsgi.runwsgi = lambda func, addr=("localhost",7070): web.wsgi.runfcgi(func, addr) used with spawn-fcgi
different addr could be config as different fastcgi behavior. app.run() just simply refer to web.wsgi.runwsgi.
uwsgi needs to be isntalled if you want use wsgi + nginx. I don't see webpy could support uwsgi protocal directly.
Wednesday, October 08, 2014
first step is to apply a ssl certifciation on startsll. Please notice there is no username/passwd to login startsll website instead of certification on your browser which is installed by startssl. second is to follow website to fill personal information, validation your email and produce private key. private key (ssl.key) is not stored in startsll server, but it will download to your computer. Then you need to wait for sometimes to fetch public key (ssl.crt) and retrieve it from "Retrieve Certificate" in Toolbox.
Last thing needs to notice is firewall configuration on your server. Please open 443 port and remove other un-necessory configuration rule for 443. Previously I forwarded 443 to 8080 for shadowsocks and it toke me long time to find that is root caused for my https connection failure
Tuesday, September 30, 2014
first step is to init pacman and update system
- init pacman for package verification function according to link
- update system to latest one: pacman -Syu
next step is to add user and configure ssh
- add normal login user with useradd. Add user to group: wheel,log and systemctl-journal
- add user git with useradd
- update sudo with visudo
- add public key in .ssh/authorized_keys for git and normal login user
- install git and change user git shell to git-shell.
- test ssh public key access and git clone from local computer
- disable ssh root access and passwd login
- install sshguard
next step is to configure network,time and other system configuration
- configure netctl for dhcp (enable both IPv4 and IPv6) and enable this profile as startup service. (I couldn't sucess for static IP configuration) (update: change to system-networkd for statis ip)
- set timezone with timedatectl
- install ntp and enable it as startup service
- set up iptables rules in /etc/iptables/iptables.rules and ip6tables.rules
- install bash-completion
next step is to install different application
- install vnstat
- install shadowsocks
- install nginx, spawn-fcgi,python2-webpy,python2-flup,python2-matplotlib,python2-iso8601
- install python2-pip and pip2 install --upgrade google-api-python-client
- install my own webapplication *.service file and start app