05/05/2014

APP新发现

By dch1 in Just Notes No Comments Tags: Pandora Radio

最近发现了两个好玩好听的软件和服务。一个是Flightradar24,另一个是音乐收音机Pandora Radio。

Flightradar24其实就是汇集了航空爱好者业余搭建的ATR信号站数据实现的一款航空查询软件。该软件分为免费版和收费版,一般来说免费版功能已经足够使用,但收费版更是提供了航空信息查询,AR增强显示技术——即通过摄像头、GPS、陀螺仪的有机结合,向用户直观地展示周边过往的飞机,非常有趣。

其实早在三月份MH370事件之后我便对ATR和飞行控制产生了一定的兴趣,而Flightradar24就是由爱好者搭建的接收站信号制作的。这回终于可以知道飞过头顶的是哪架飞机了。

20140505-115408.jpg 20140505-115344.jpg

 

下一个软件就是Pandora Radio,其实这个软件就类似于iTunes Radio,只不过比iTunes Radio老牌很多,而且精准的算法可以通过用户按若干次的“喜欢”和“不喜欢”实现精准推荐。每个月月费也并不贵,只要3.99USD,IAP内购也只需要4.99AUD。

个人使用来看,当我试听完成前几首音乐之后,Pandora Radio就已经很精准了,之后的音乐99%都适合我的口味,看来真是名不副实的好东西。不过,由于前一天晚上不会用睡眠时钟,导致Pandora Radio持续播放,给出了以下提示:

20140505-115312.jpg

让Pandora破费了……

22/04/2014

观Food Inc.有感

By dch1 in Just Notes, Translation No Comments Tags: Translate

今天在Netflix看了部收藏的纪录片,介绍说是奥斯卡提名,看完果然不同凡响。

该纪录片从多个角度概述了21世纪食品业的发展,并从多个角度分析了为什么我们较祖先吃现代食物易生病的原因。

节目最后给出了一些忠告和建议,虽然这是美国的纪录片,但仍很有价值。

之前看过优酷的一段影片是讲述饮料的制作,使我几乎戒掉了所有碳酸饮料(包括果汁)。让牛从吃草改吃玉米,最终产肉会增加大肠杆菌O157:H7风险(因为牛天生就不具备消化玉米的能力).看来这部纪录片会帮我改掉吃垃圾食品的毛病了。看来垃圾食品不论品牌(麦当劳是榜首,汉堡王-HJ其次都被点名),都是高热量价值比(单位热量除以单价相较其他食物高出很多)的食物,常吃以后就要还债。

资本家必然要压榨生产成本,这也直接导致了非法移民、农民待遇下降、动物饲料更改,以及动物权利遭到践踏。虽然表面这些都不是问题,但最终受到惩罚的是大众。

简单翻译了下,当习作了。

FOOD Inc. Recommended Actions 《食品公司》推荐消费者采取的行动
You can vote to change this system. Three times a day. (你可以采取行动来“投票”,每天三次。)

Buy from companies that treat (从尊重)

workers, (员工)

animals, (动物)

and the environment with respect. (和环境的公司购买食物)

When you go to the supermarket, (当你每次去超市时)

Choose foods that are in season. (选择应季食物)
Buy foods that are organic. (购买有机食品)
Know what’s in your food. (知晓你所吃食物的成分)
Read labels. (阅读食物配料表)

Know what you buy. (了解你所购买的商品)

The average meal travels 1500 miles from farm to supermarket. (肉类平均需要1500英里[2400公里 – 译者注]才能从农场送到超市)

Buy food that are grown locally. (买当地产的食物)

Shop at farmer’s markets. (在农贸市场购物)

Plant a garden. (Even a small one) (自己开辟一块菜地,无论大小)

Cook a meal with your family and eat together. (在家做饭,并和家人一同享用)

Everyone has a right to healthy food. (每一个人都拥有吃健康食物的权利)

Make sure your farmer’s market takes food stamps. (确保农贸市场的店主有自主权)
Ask your school board to provide healthy school lunches. (要求学校董事会提供健康的午餐)

The FDA and USDA are supposed to protect you and your family. (美国食品及药物管理局[FDA]和美国农业部[USDA]应当保障你和你家人健康。)

Tell Congress to enforce food safety standards (告知国会实施食品安全标准)

and re-introduce Kevin’s Law. (并重新启用《开尔文法》[正式名称是the Meat and Poultry Pathogen Reduction and Enforcement Act of 2003(《降低肉类禽肉类病菌强制法案》)-译者注])

If you say grace, ask for food that will keep us and the planet healthy. (如果你做祷告的话,请祈求我们能够得到能让我们更健康,星球更美好的食物。)

You can change the world with every bite. (你可以通过你所你所吃的每一顿饭来改变世界。)

Hungry for Change? (想立即改变吗?请访问:)

go to takepart.com/foodinc

参考文献:

http://www.mccc.edu/pdf/eng024/Class%208/food%20inc%20recommended%20actions.pdf

 

21/04/2014

Linode 搭建LNMP/LEMP总结

By dch1 in Life, Web Log No Comments Tags: LEMP, Linode, Linux, VPS

既然是总结,就属于快餐性质的了,虽然使用Linode不是我第一次接触SSH的相关指令,但毕竟服务器所从事的任务和日常玩的Raspberry Pi以及2012年底买的128M OpenVZ主机是不一样的。

这次在Linode搭建VPS让我对Linux有了更深层次的了解,还是有很大收获的。 之所以不搭建LAMP平台的主要原因,是LAMP吃内存严重。

虽然Linode极力推荐LAMP方案(方便搭设出错概率少),但个人还是希望挑战一把,但没想到整体还是比较顺利的。 代码依据Debian 7 x64平台搭建(个人感觉Debian和Ubuntu实际差异不大,而且安装调试出现问题以后也可以部分参考Ubuntu的文档,但Debian版本更新慢,虽然Ubuntu和Debian底层差不多,但Debian还是相对更加稳定一点),Nginx服务器,PHP Fastcgi引擎,最后加上MYSQL平台和相关防火墙设置保障系统安全。

在开始之前,先习惯更新下程序包:

apt-get update apt-get upgrade

1. 设置时区以及主机名:

dpkg-reconfigure tzdata

echo “vpsgeek” > /etc/hostname

hostname -F /etc/hostname

2. 修改hosts文件(官方文档说与服务器所建主机无关,个人认为这是为了本地解析用的)

nano /etc/hosts

修改格式:

127.0.0.1 localhost.localdomain localhost

12.34.56.78 bjdch.org vpsgeek

2600:3c01::a123:b456:c789:d012 bjdch.org vpsgeek

完成上面的步骤以后,个人经验来看要让主机重启一回,实测中发现如果主机不重启,sudo之类的后期命令会出现错误。 3. 安装Web、PHP、MYSQL服务(第三行和第四行的MYSQL命令执行后需要依据屏幕提示操作,提示都还是挺简单的,主要是创建root代码,系统保护之类的操作)

apt-get install nginx

apt-get install php5-cli php5-cgi spawn-fcgi php-pear

apt-get install mysql-server php5-mysql

mysql_secure_installation

(Linode提供以下内容,每次复制一行,主要作用是把以上程序添加到系统服务里)

cd /opt/
sudo wget -O php-fastcgi-deb.sh http://library.linode.com/assets/1548-php-fastcgi-deb.sh
sudo mv /opt/php-fastcgi-deb.sh /usr/bin/php-fastcgi
sudo chmod +x /usr/bin/php-fastcgi
sudo wget -O init-php-fastcgi-deb.sh http://library.linode.com/assets/1549-init-php-fastcgi-deb.sh
sudo mv /opt/init-php-fastcgi-deb.sh /etc/init.d/php-fastcgi
sudo chmod +x /etc/init.d/php-fastcgi
sudo /etc/init.d/php-fastcgi start
sudo update-rc.d php-fastcgi defaults

4. 安装phpmyadmin (可选)

apt-get install php5-mcrypt apt-get install phpmyadmin

执行完以上命令基础程序基本就装完了,下面是设置部分。 之所以不按照官方教程来操作,是因为官方教程是带有讲解性质的,但实际操作起来会浪费一定的时间,就拿绑定主机头来说,官方教程是先装完Nginx配置一次,重启服务然后再来配置PHP环境,反反复复有时候很疑惑,为此我就走过弯路。 1. 先来配置WEB环境(一次搞定)

nano /etc/nginx/sites-available/网站名

粘贴以下命令(已经包含防注入目录的命令):

server { listen 80; server_name 域名 域名(含WWW形式);

access_log /srv/www/自定义目录/logs/access.log;

error_log /srv/www/自定义目录/logs/error.log;

location / { root /srv/www/自定义目录/public_html;

index index.html index.htm index.php; }

#Error outputs: error_page 400 /400.shtml;

error_page 401 /401.shtml; error_page 403 /403.shtml;

error_page 404 /404.shtml;

error_page 500 502 503 504 /500.shtml;

#PHP Settings
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
if ($uri !~ “^/防注入目录(相对路径即可)/”) {
fastcgi_pass 127.0.0.1:9000;
}
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/自定义目录/public_html$fastcgi_script_name;
}

#phpmyadmin
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
#phpmyadmin end

}

特别注意,如果该主机头所绑定的网站不需要PHP运行权限(即纯HTML、HTML5等网站),可以视情况只写入绿色文字,这样也能增加子网站安全性;如果网站需要自定义错误页面,可以考虑增加橙色文字;PHP脚本执行(例如Wordpress之类动态站点),需要包含蓝色文字;最后,如果需要在网站虚拟出phpmyadmin目录(慎用!建议建站初期使用,使用后在相关区域前加“#”后重启Nginx服务以增强服务器安全性),可以粘贴红色文字。部分使用本脚本时,不要忘记上面代码末尾的大括号“}”。 2. 做文件链接到可用网站列表(类似Windows里的快捷方式,但强大太多了)。

ln -s /etc/nginx/sites-available/网站名 /etc/nginx/sites-enabled

每个网站设置好都必须使用上面的命令建立文件链接。 3. 创建目录,修改权限。 官方的命令我在多次执行时均出现问题,所以还是老老实实手动创建每一个目录吧。其中目录名要和上面设置文档的相对应。

mkdir /srv/www/自定义目录

mkdir /srv/www/自定义目录/public_html

mkdir /srv/www/自定义目录/logs

问题重现:这也是我纠结了很长时间的问题,我的网站是从FTP通过wget方式远程搬家过来的,按理说wget在复制FTP目录时会继承之前的文件权限,但搬家之后的Wordpress只能打开不能更改目录内任何文件,对此我尝试了许多批量修改文件权限的命令均不奏效。最后无意间发现文件夹所属用户和用户组都是root……。 更改文件夹用户权限,恢复到WWW用户组:

chown -R www-data:www-data /srv/www/自定义目录/public_html

logs文件不用管。这样自定义目录权限还是root,应该安全性更高。Linux文件权限管理确实严格。 4. 重启Nginx服务,将域名指向Linode(此处不介绍)。

/etc/init.d/php-fastcgi service nginx restart

如果没有出现错误,网站已经开通。 下面内容是更改端口,添加用户、防火墙和登录失败惩罚机制。 1. 更改SSH、端口 SSH默认端口是22,基于多种因素考虑应该修改掉(从科学上网和反暴力破解角度来看)。

nano /etc/ssh/sshd_config

执行上面的命令,找到开头为“Port 22”的那一行(比较靠前,不用翻页),更改为自己喜欢的端口即可。注意不要与现有的端口冲突。执行完后,运行:

service ssh restart

2. 添加用户 Linode默认安装了sudo所以我们可以直接添加一个普通用户然后施加管理员权限。执行下面的命令:

adduser 用户名 usermod -a -G sudo 用户名 passwd 用户名

有时为了科学上网,我们需要创建特殊的SSH账户,这类账户没有登陆SSH的权限,即用putty以及ssh命令登陆后即时被系统剔除,其实这类用户主要是通过特殊命令不创建home文件夹达到的。执行以下命令即可:

sudo useradd -r -s /bin/false 用户名 passwd 用户名

3. 设置防火墙

nano /etc/iptables.firewall.rules

粘贴以下内容:

*filter

#  Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -j REJECT

#  Accept all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#  Allow all outbound traffic - you can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT

#  Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT

#  Allow SSH connections
#
#  The -dport number should be the same port number you set in sshd_config
#
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT

#  Allow ping
-A INPUT -p icmp -j ACCEPT

#  Log iptables denied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7

#  Drop all other inbound - default deny unless explicitly allowed policy
-A INPUT -j DROP
-A FORWARD -j DROP

COMMIT

然后执行命令启动防火墙:

iptables-restore < /etc/iptables.firewall.rules

添加到开机任务中:

nano /etc/network/if-pre-up.d/firewall

粘贴以下内容:

#!/bin/sh /sbin/iptables-restore < /etc/iptables.firewall.rules

最后修改文件权限:

chmod +x /etc/network/if-pre-up.d/firewall

4. 添加登录失败惩罚措施 – Fail2ban

apt-get install fail2ban

默认是连续5次SSH密码错误,IP封锁10分钟,感觉默认值就够用了。 写在最后:以上就是我通过整理SSH下历史命令和参考官方文档总结出的LNMP/LEMP安装指南,中间走过不少弯路所以应该这个步骤是相对省时省力的。

参考文档:

https://library.linode.com/getting-started

https://library.linode.com/securing-your-server

https://library.linode.com/lemp-guides

http://askubuntu.com/questions/29359/how-to-add-user-without-home

==========以下是广告栏目==========

另外,我的Linode推广链接(返现10刀,详情与我联系吧):https://www.linode.com/?r=6e90c4d0b3ebbabe169e3ab933326b87813b4c9c

对更便宜的Digital Ocean感兴趣的可以点这个链接(联系我可以帮你免费得到两个月等值$10的点数供测试使用):https://www.digitalocean.com/?refcode=46787e765bb6

18/04/2014

Linode 再次升级,内存和CPU翻倍,升级为SSD硬盘

By dch1 in Web Log No Comments Tags: Linode, Upgrade, VPS

在前几天网站搬家之后,今日偶然看到Linode再次给力升级。

最低配置的方案,主机从原来的1GB内存升级到2GB;CPU从1核心优先级升级到2核心,硬盘升级为固态硬盘,与此同时VPS价格不变。

希望Linode在和某主机商价格战中保质保量越做越好,其实现在1GB的内存1核心CPU已经完全能够胜任Wordpress这类CMS的功能了。

迫不及待想迁移主机到新服务器上,但发现暂时日本服务器还无法完成。但借机会做个磁盘测试,方便和之后的SSD性能做对比。

$ sudo dd if=/dev/zero of=test bs=64k count=4k && rm test
4096+0 records in
4096+0 records out
268435456 bytes (268 MB) copied, 0.945093 s, 284 MB/s
$ sudo dd if=/dev/zero of=test bs=1M count=256 && rm test
256+0 records in
256+0 records out
268435456 bytes (268 MB) copied, 0.771767 s, 348 MB/s
$ sudo dd if=/dev/zero of=test bs=64k count=4k oflag=dsync && rm test
4096+0 records in
4096+0 records out
268435456 bytes (268 MB) copied, 4.47045 s, 60.0 MB/s

开了个Ticket咨询了下客服有关升级的事宜,客服说日本服务器还需要等一段时间,如果着急可以新开主机通过克隆的方法进行升级。暂时不打算新开主机更换,还是等上两个星期官方统一升级吧!

顺便说一下,Linode客服Ticket回复速度很快,基本上接近某些主机上在线即时聊天的速度了。

linode2g-3

linode2g-2

13/04/2014

网站搬家至Linode,开通IPV6访问支持

By dch1 in Web Log No Comments Tags: Digital Ocean, Linode, VPS

经过一天时间的努力,网站终于像以前一样照常运作。但访问速度较之前有了很大程度的加速。网站直连TPG ping值大概在160ms左右,北京联通光纤稍高一些,大概在180ms~250ms不等。应用Cloudflare缓存加速,TPG能下降到40ms左右,国内延迟则有所增加。

由于准备比较充分,理论上应该没有多少分钟网络中断的产生,在此还要表扬下Cloudflare的服务,DNS更新速度非常快,秒秒钟就能完成更新。

由于之前实在受不了IXWebhosting的低质量服务(我之前的帖子有提到过),不得已终于在月初确定了升级VPS的计划,经过几天断断续续的测试,发现Linode不愧是VPS领域的旗舰,整体性能非常稳定。

应用网上的免费压力测试工具,在5分钟内,本博客(在Cloudflare作弊的帮助下)刷出了8329个访问量,Linode SSH后台测试1分钟CPU占用率不超过40%(Longview性能监视面板峰值是18%)。

ssh-top

两篇报告:

http://loadimpact.com/load-test/blog.bjdch.org-4ca95b31cb8bee5708f16d4530cc3970

http://loadimpact.com/load-test/www.bjdch.org-985bf2bd7b99f38167ddf81704f7c80f

用上了VPS,首先是要习惯自己定期维护系统,包括装软件、调设置、打补丁,堵端口等步骤,虽然很辛苦,但很有成就感(最喜欢装软件的时候疯狂刷新的屏幕代码,仿佛进入了黑客帝国)。为了系统安全性和稳定性,暂时只开Web服务,没有近期打算开Mail服务器的想法。服务器目前只挂个人网站,给其他公司做的网站以后打算再找地方(或者免费放在IX)。

服务器采用了LEMP(我习惯叫LNMP,因为Nginx是N开头的嘛),之所以不用Apache是因为LAMP占用资源大,传说一线程用户就要占用20M的内存,可是内存都是用钱堆起来的啊,但主机商推荐LAMP组合也无可厚非,一方面是老牌软件资源多好调试(话说Nginx调试起来是最复杂的,各种错误,设置,而且故障排除确实麻烦,网上有不少玩了多年LAMP组合的老鸟第一次碰LEMP都说复杂),我这个还是一天搞定,效率还挺高。第二,主机商有利可图;当用户内存不够了,自然就打算升级更大的内存。以上两点达到的目的可谓1+1>2 既方便了技术支持,又能坐收渔利,双赢方案!

这次升级VPS总体来说还是比较顺利的,英语阅读能力再一次得到了锻炼(Linode文档会指明方向,但出了问题还是得问Mr. Google),当我主机调试接近尾声的时候,居然在日志发现有人在不停穷举我SSH的root密码,我也就顺便改了默认端口并增加了防火墙和容错惩罚,但真是令人哭笑不得(这肉鸡抓的也太是时候了吧,让人连气也喘不得)。以下是日志内容的NN分之一。

Apr 13 20:03:34 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2
Apr 13 20:03:37 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2
Apr 13 20:03:39 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2
Apr 13 20:03:42 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2
Apr 13 20:03:44 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2
Apr 13 20:03:46 vpsgeek sshd[6798]: Failed password for root from 117.21.226.103 port 2441 ssh2

这个IP对应是电信机房,看来国人真是无处不在啊。您买了国内电信VPS不会就是为了抓肉鸡吧,当然这买卖也不亏,呵呵。放心,我的密码绝对10位以上,包含大小写字母,数字,字符,穷举还是要个把月的。另外输错5次以上密码系统封禁10分钟,不过上面这个IP的人欢迎多换几个IP试试看(信息公布还是挺透明的吧)。

此外,本网站全范围内支持IPV6访问,这也是一大特色,在国内用教育网的用户可以不花流量费访问本站了!

我将在稍后总结一些从零开始Linux的文档,虽然互联网上文章天花乱坠,但我会侧重写自己遇到并Troubleshooting的过程,给Linux Community尽一份力量吧。

==========以下是广告栏目==========

另外,我的Linode推广链接(返现10刀,详情与我联系吧):https://www.linode.com/?r=6e90c4d0b3ebbabe169e3ab933326b87813b4c9c

对更便宜的Digital Ocean感兴趣的可以点这个链接(联系我可以帮你免费得到两个月等值$10的点数供测试使用):https://www.digitalocean.com/?refcode=46787e765bb6

23/02/2014

IXWebHosting 宕机超过12小时

By dch1 in Web Log No Comments Tags: IX WebHosting

昨天在准备调试网站是偶然发现网站无法打开,在排除防火墙的问题后(测试可以正常解析IP,但Cloudflare提示网站无法到达),开始怀疑IX服务器挂掉了,登录CP以后发现磁盘不可读。

20140222-1

然后进入官方的服务器日志,发现已经有大量用户跟帖,声讨IX这次严重的宕机事件,一位2006年开始就成为IX的用户说,这么多年来,这还是头一次。虽然我希望这是最后一次发生这样的事故,但IX在应对事故的处理速度实在是太慢了。

Server Connectivity Issues

真所谓一分钱一分货啊,看来下一个主机上还是需要挑选一番了,希望剩下一年半的服务器能稳定些。

幸亏有了之前设置的CloudFlare,主机在离线的情况下可以缓存网站内容,网站不至于完全打不开。

20140222-2

11/02/2014

2014新年新气象,新增翻译类目

By dch1 in Web Log No Comments

近日修复了Cloudflare的DNS指向问题,增加了blog和digest的A记录,这样全球访问就可以达到负载均衡了。

由于NAATI翻译认证的要求,每年需要满足一些PD(Professional Development)任务,感觉在网站上翻译一些国外文章不但可以自我提高,还可以方便大众。这个想法也是在无意间看到其他的博客想到的。

我会在翻译的每篇文章中标明作者和源网站,方便对照。

01/02/2014

北京联通百兆提速入口(免客户端刷新)

By dch1 in Just Notes No Comments

北京联通网速自从光纤升级以后速度还是很稳定的,延续了ADSL的独享带宽策略,10M包年可以平均达到14M左右,20M提速可以达到24M,100M可以达到93M,估计和线路衰减还有光猫性能有关。

China Unicom Speed Test

由于非常厌恶联通安装的流氓软件(况且还没有MAC客户端,难道连同你让我提速下还得另开台电脑或虚拟机?),通过数据包监听,分析出了联通沃宽提速器的百兆提速算法,从此以后,只要账户内有提速时常,便可以直接调用该命令达到提速目的了。

提速接口是:http://bj.wokuan.cn/web/improvespeednew.php?r=10&AQBDTxt=这里填写纯数字账户名,例如100008000000,目前看来不能乱写,应该有校验。每月可以通过安装流氓测速端获得20小时免费时长。如果页面显示:

success&00000000&19.5

则证明提速成功,剩余提速时间19.5小时。

降速接口是:http://bj.wokuan.cn/web/lowerspeednew.php?r=10&AQBDTxt=这里填写纯数字账户名。访问网址后,页面提示如果和升速相同的success则证明降速成功。

我的智能路由器是BCM5354,属于非常老的处理器了,在这种情况下,百兆提速好像没有太多意义,所以暂时还是使用20M提速吧。下载速度在达到3M/S的时候,连管理界面都无法登入。打算过几个月直升千兆路由吧。

22/01/2014

Raspberry Pi 挖矿简明教程(下) bfgminer篇+混合挖矿

By dch1 in Life No Comments

cgminer在对付一种类别的矿机(尤其针对USB烤猫矿机)运行非常稳定,经测试一个月都没有出现任何问题,但由于近日蝴蝶矿机到货,便琢磨将两种矿机同时连接到机器上挖矿,这边是本篇文章的目的。

不知由于何种情况,在重新编译cgminer并在参数中加入蝴蝶矿机识别库之后,软件仍然无法识别,折腾了一个下午换了几种版本也无法解决,便将注意力集中在其他挖矿软件上。通过阅读大量帖子,发现bfgminer设置更加简便易行并原生支持多种矿机,在此强烈推荐。

1. 配置环境

sudo aptitude install autoconf libtool libncurses-dev yasm curl libcurl4-openssl-dev libjansson-dev pkg-config libudev-dev uthash-dev libusb-dev

2. 从网站下载最新版本(注意选择Source Code),例如我这里的版本是3.10.0,将压缩包解压缩,然后用ftp、tftp、或者sftp上传到RPi的目录中

https://bitcointalk.org/index.php?topic=168174.0

http://luke.dashjr.org/programs/bitcoin/files/bfgminer/3.10.0/bfgminer-3.10.0.zip

3. 配置,编译程序(这里相比cgminer简单许多)

./configure

make

4. 测试程序(登录信息请酌情更改)

sudo /home/pi/bfgminer-3.10.0/bfgminer -o mint.bitminter.com:8332 -O Username:Password -S all

5. 如果正常运行,那么可以将其添加到自动运行脚本了

sudo nano /etc/rc.local

在最后一行添加第4步的命令即可。

 

22/01/2014

Raspberry Pi 挖矿简明教程(上) cgminer篇

By dch1 in Life No Comments Tags: Bitcoin, Raspberry Pi

入手Raspberry Pi已经有几个月了,一直对其低功耗的特点很是赞赏。实话说,该机器如果用于日常办公和上网浏览确实有些不足,毕竟一台3.5W的ARM处理器电脑无法代替传统电脑。但如果让他完成一些日常程序化的工作却是游刃有余。

我曾经尝试在RPi上面搭建LAMP服务器,由于当时一味想通过超频来提升处理速度,导致SD卡分区经常频繁崩溃,每次崩溃都需要重新刷写系统真是一件折磨人的事情,所以这件事情之后便一直搁置了。

从2013年9月起,我陆续入手几台USB BLOCK ERUPTER和一个集线器,通过连接到笔记本电脑上进行挖矿,但无奈于电脑的高功耗和磨损,不得不将降低功耗列为挖矿活动的头等大事。所以,研究如何响应ZF号召(省钱、不省力、省心)节能减排便提到议事日程上了。

由于所学Linux只是不系统,很多都是东拼西凑照猫画虎学习来的,所以不得不参考了大量互联网上的教程,但发现其中不乏粗制滥造的文章,为此走了不少弯路。终于在11月中旬用cgminer调试成功了RPi挖矿机并可以长时间运行。现将主要命令记录如下:

1. 安装编译和系统插件

sudo apt-get install libusb-1.0-0-dev libusb-1.0-0 libcurl4-openssl-dev libncurses5-dev libudev-dev

2. 下载cgminer 3.1.1版本软件并解压缩

wget http://ck.kolivas.org/apps/cgminer/3.1/cgminer-3.1.1.tar.bz2

tar xvf cgminer-3.1.1.tar.bz2

cd cgminer-3.1.1

3. 将Block Erupter矿机加入编译列表,完成编译

./configure –enable-icarus

make

4. 编写conf配置文件,这里我的路径为“/home/pi/cgminer.conf”

sudo nano /home/pi/cgminer.conf

粘贴并改写以下内容

{

“pools” : [

{

“url” : “http://mint.bitminter.com:8332”,

“user” : “Username”,

“pass” : “Password”

}

]

,

“api-listen” : true,

“api-port” : “4028”,

“expiry” : “120”,

“failover-only” : true,

“log” : “5”,

“no-pool-disable” : true,

“queue” : “2”,

“scan-time” : “60”,

“worktime” : true,

“shares” : “0”,

“kernel-path” : “/usr/local/bin”,

“api-allow” : “0/0”,

“icarus-options” : “115200:1:1”,

“icarus-timing” : “3.0=100”

}

5. 运行lsusb命令,查看连接到RPi的设备是否正常识别

6. 查看映射的COM口

ls /dev/ttyUSB*

你会看到类似如下的信息:

/dev/ttyUSB0  /dev/ttyUSB2  /dev/ttyUSB4  /dev/ttyUSB6

/dev/ttyUSB1  /dev/ttyUSB3  /dev/ttyUSB5  /dev/ttyUSB7

USB0~7就应该是连接到RPi上的矿机了

7. 试运行程序,请酌情改写

sudo /home/pi/cgminer-3.1.1/cgminer –config /home/pi/cgminer.conf -S /dev/ttyUSB0 -S /dev/ttyUSB1 -S /dev/ttyUSB2 -S /dev/ttyUSB3 -S /dev/ttyUSB4 -S /dev/ttyUSB5 -S /dev/ttyUSB6 -S /dev/ttyUSB7

8. 如果正常运行,那么可以将其添加到自动运行脚本了

sudo nano /etc/rc.local

在最后一行添加第7步的命令即可。

此后,每次启动RPi便可在登录前自动运行挖矿脚本了。

«< 2 3 4 5 6 >»
Dominic's Blog
记录成长足迹,拥抱多彩生活
  • Categories
  • Thanks
RSS
© Dominic's Blog 2025