通过对比上证指数跟各种投资机构之间的关系,也许我们能发现点什么规律。
我收集了公募基金,QFII,社保基金,券商持仓,保险持仓,信托持仓公布的季度数据,做了自2006年至今的数据对比。
我特意把公募基金放到最后,因为他的规律性会让很多人错愕。至于原因我不清楚,也许有公募基金的内部规则控制着。
不可否认公募基金的规模最大的,毕竟是散户投资的主要渠道之一。
下面的数据是上证指数对应机构持股的股数。单位:亿股。
QFII:
社保基金:
券商持仓:
保险持仓:
信托持仓:
公募基金:
通过对比上证指数跟各种投资机构之间的关系,也许我们能发现点什么规律。
我收集了公募基金,QFII,社保基金,券商持仓,保险持仓,信托持仓公布的季度数据,做了自2006年至今的数据对比。
我特意把公募基金放到最后,因为他的规律性会让很多人错愕。至于原因我不清楚,也许有公募基金的内部规则控制着。
不可否认公募基金的规模最大的,毕竟是散户投资的主要渠道之一。
下面的数据是上证指数对应机构持股的股数。单位:亿股。
QFII:
社保基金:
券商持仓:
保险持仓:
信托持仓:
公募基金:
复仇者联盟3无限战争过去有一段时间了,关于响指灭一半的剧情,我总觉的哪里不对,又说不上个所以然来。
2019的元旦小假期又想起这个,突然相通了点什么。
电影打打杀杀到一半,剧情告诉我们,紫薯只要集齐6颗无限宝石,那么只要打个响指就可以灭了宇宙一半的生命。我们是不是可以这么理解,拳击手套这件装备上镶嵌6颗无限宝石以后,全服无敌,想灭谁都轻而易举。甚至随便打个响指就灭全服一半玩家。
可是,可是,到了最后,服务器管理员说:这个无敌玩家-紫薯-必须要真的打一个响指才能发挥灭一半玩家。充分条件瞬间变成了充要条件。
可能紫薯给这个付费玩家的权限是在太大了,管理员都看不下去不得不做一个诡异的限制,不然实在太不平衡。

2006年,随着那股潮流,写起了博客。不知不觉坚持了7,8年,因为各种原因,也许包括生活的压力,站点越来越荒芜。直到4年前的某日,下定决心一关了之。
翻看历史文章,犹如翻看年少时自己的日记。看到自己尽量的在写技术文章;偶尔会转进来写一些自己现在还记着的小故事;有点诧异很少提及自己的宝贝女儿;直到后来越来越无病呻吟,就知道当初为什么一关了之了。
也许总想写点什么,也许不喜欢微博和朋友圈这种快餐文化,这个站点的源码一直留着,等待这某一天会复活。直到2018年的平安夜,她又复活了。
Hello World! Merry Christmas and Happy New Year!

transmission web 界面上,你会发现每个下载项目的上传和下载分别显示为:↑ 和 ↓ 。 而实际上程序想显示的分别是向上箭头(↑)和向下箭头(↓)。
这是一个已知的bug,解决方案见链接:https://trac.transmissionbt.com/ticket/4987
上面的解决方案和patch应该是解决所有transmission版本bug。如果只是解决transmission-daemon WEB UI的bug,可以下载arrows.patch, 或者自己修改文件:
/usr/share/transmission/web/javascript/torrent-row.js
第90行左右
TorrentRendererHelper.formatUL = function(t)
{
return ‘↑ ‘ + Transmission.fmt.speedBps(t.getUploadSpeed());
};TorrentRendererHelper.formatDL = function(t)
{
-return ‘↓ ‘ + Transmission.fmt.speedBps(t.getDownloadSpeed());
};
改为
TorrentRendererHelper.formatUL = function(t)
{
return ‘↑ ‘ + Transmission.fmt.speedBps(t.getUploadSpeed());
};TorrentRendererHelper.formatDL = function(t)
{
return ‘↓ ‘ + Transmission.fmt.speedBps(t.getDownloadSpeed());
};
其实就是把↑和↓ 替换掉。
不用重启transmission-daemon, 刷新web页面生效。
本文基于下列操作环境:
硬件:raspberry pi 树莓派
操作系统:RASPBIAN — Debian Wheezy
假设系统ip: 192.168.1.100
1. 安装transmission-daemon
sudo apt-get install transmission-daemon
2. 基本配置:
启动控制文件:/etc/init.d/transmission-daemon
transmission-daemon配置文件位于/etc/transmission-daemon/settings.json (权限所有者:trnasmission-daemon)
默认配置文件夹目录: /var/lib/transmission-daemon/info (权限所有者:trnasmission-daemon)
文件夹 /var/lib/transmission-daemon/info 中含 setting.json 指向 /etc/transmission-daemon/settings.json
默认下载目录: /var/lib/transmission-daemon/downloads(权限所有者:trnasmission-daemon)
/etc/transmission/settings.json主要配置说明:
“cache-size-mb”: 4, #内存缓存大小
“dht-enabled”: true, #开启dht
“download-dir”: “/your/own/download/path”, #请指定下载地址
“download-limit”: 100, #下载限速kb,所有限速相关的建议网页上自己设定
“incomplete-dir”: “/your/own/incomplete/path”, #请指定地址
“incomplete-dir-enabled”: false, #如果指定了,可以改为true开启
“rpc-enabled”: true, #开启网页控制
“rpc-username”: “simon”, #远程控制用户
“rpc-password”: “{f51cf44878098657b404152b3b532f8c04854514rIbqCA.F”, #加密的远程控制密码,你可以填写不加密的密码,启动后软件会自行加密
“rpc-port”: 9091, #远程访问端口
“rpc-url”: “/transmission/”,
“rpc-whitelist”: “192.168.1.*”, #默认127.0.0.1 只允许本机访问,一般路由器远程访问就设置成这样即可
保存, 启动transmission-daemon. 这里有陷阱,相见下方的常见问题。
sudo /etc/init.d/transmission-daemon start
或者
sudo service transmission-daemon start
远程控制,假设树莓派主机ip 192.168.1.100,则以 http://192.168.1.100:9091/ 访问,输入settings.json 设定的用户/密码。
基本设置完成,enjoy!
好吧,Linux下的东西不折腾几下是不会enjoy的。下面是常见问题:
1. 配置文件陷阱1:
默认启动脚本相当于
sudo -u transmission-daemon transmission-daemon –config-dir /var/lib/transmission-daemon/info
具体,请自行 ps aux | grep transmission-daemon 确认。但是实际的配置文件却在/etc/transmission-daemon/settings.json。是的,这点我上面讲过,因为: /var/lib/transmission-daemon/info/setting.json -> /etc/transmission-daemon/settings.json
2. 配置文件陷阱2:
默认安装了transmission-daemon后,会自动启动。然后你去配置setting.json文件夹,然后重启( /etc/init.d/transmission-daemon restart ),然后你会发现根本不是你改的那个样子,然后你再改配置文件发现配置文件变成默认样子了,然后你寻找原因,然后你找不到原因,然后你抓狂。
因为在远程访问网页上可以修改一些配置,transmission-daemon在stop的时候会将修改的内容写入settings.json,所以不要再启动状态下修改settings.json, 请先/etc/init.d/transmission-daemon stop
3. 如何修改transmission-daemon运行用户
transmission-daemon运行的默认用户是transmission-daemon,如果要共享出来,给共享用户读写权限,会深深陷入Linux用户权限的旋涡。最简单的方式,就是以常用用户运行(树莓派为例用户pi)。
修改运行用户简单,/etc/init.d/transmission-daemon/ 修改
注释USER=debian-transmission这一行,增加 USER=pi 这一行。
修改你的下载文件夹:
sudo chown pi:pi -R /your/own/download/path
如果完成这两步,启动transmission-daemon,则会出现
a. 原来正在下载的东东不见了
b.添加新的种子,下载是报错:Error: Unable to save resume file: No such file or directory
resume文件夹在/var/lib/transmission-daemon/info/resume ,transmission-daemon用户权限,所以:
sudo chown pi:pi -R /var/lib/transmission-daemon/
其实,还要这样:
sudo chown pi:pi -R /etc/transmission-daemon/settings.json
不然无法保存网页上修改的配置。
OK, enjoy then.
Amazon 云计算EC2 的几个基本概念说明:
1. EC2 有两个IP, 内部IP: 例如:172.xxx.xxx.xxx, 外部IP:例如:68.xxx.xxx.xxx
ifconfig 只能看到内部IP, 也就是说默认网卡分配了一个内部IP。而外部IP实际上是NAT端口到服务器。
2. EC2 控制台->NETWORK & SECURITY->Security Group 可以设定了ec2的防火墙,选择哪些端口打开。实际上是设定了那些NAT的端口。
假设我们以比较严格的方式设定Security Group, 仅开放使用到的端口。如使用ssh, ftp, web, 等,仅打开22,21,80端口。以vsftpd服务器为例,设定ftp服务器通常会碰到的问题。
vsftpd.conf 相关设定:
listen=YES #打开监听listen_port=21 #监听21端口pasv_enable=YES #启动被动模式
227 Entering Passive Mode (172,xxx,xxx,xxx,56).
ftp: connect: timout!
500 Illegal PORT command.
如果vsftpd.conf 绑定 ip 68.xxx.xxx.xxx呢?
listen_address=68.xxx.xxx.xxx
listen_port=21
pasv_enable=YES
pasv_max_port=21100 #可自行变更
pasv_min_port=21000 #可自行变更
port_enable=YES
pasv_address=68.xxx.xxx.xxx