這篇教學需要有很多背景知識, 畢竟自己也花了很多時間研究, 但成果非常豐碩, 在外島期間伺服器完全正常運作, 替我累積了1.8G的資料以及1000多的Hath值, 如果你聽不懂我在說什麼那是正常的, 如果你聽得懂, 也有興趣玩看看, 那就繼續往下閱讀吧
本文要介紹如何利用樹梅派(以下簡稱Rpi)運行H@H(也就是某熊貓站的P2P軟體), 因此使用者要對Rpi與H@H這兩個東西有些初步的認識, 才能得心應手, 因為我其實懶得重頭教學起。 順帶一題除了我之外, 該網站上也有很多高手是利用樹梅派運行的, 請參考此
硬體設備
Rpi model B
16G記憶卡(cache約可存10G)
程式碼如下
1.升級樹梅派
sudo apt-get updatesudo apt-get upgrade
2.初步設定
安裝 vim 或習慣的文字編輯軟體sudo apt-get install vim
開啟ssh遠端登入服務, 即可把樹梅派的線路簡化成2條(電源+網路)
3.samba
網芳, 可與windows做連結, 可利用樹梅派載檔案再丟到windows中如果只是要純粹賺積分那就跳過
其中samba檔的設定如下
unix charset = utf8
display charset = utf8
dos charset = cp950
security = share
新增一個資料夾 /hath
[hath]
comment =
path = /hath
writable = yes
browseable = yes
guest ok = yes
重點在...該資料夾要777
4.java
這是重點, jdk7會導致樹梅派上傳極限值大幅下降(以我為例好像是36kb/s), 所以必須用jdk6或jdk8, icetea提供的我則沒有測試過wget http://www.java.net/download/JavaFXarm/jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
tar zxf jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
rm jdk-8-ea-b36e-linux-arm-hflt-29_nov_2012.tar.gz
sudo mv ./jdk1.8.0/ /opt/
sudo chown root:root -R /opt/jdk1.8.0/
sudo ln -s /opt/jdk1.8.0/ /opt/jdk8
sudo nano -w /etc/profile
添加
PATH="$PATH":/opt/jdk8/bin
JAVA_HOME=/opt/jdk8
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.8.0/bin/java" 1
5.mount
因為我直接灌在16G的記憶卡中, 無須掛載其他磁碟但若要掛載其他磁碟增加容量, 就要考慮到電腦重新開機時要自動掛載
還有外掛2.5吋硬碟的話, 該USB HUB 要有主動供電的能力, 不然會有I/O錯誤或是讀不到的情況
6.hath檔案
上網下載H@H的主程式, 解壓縮到/hath中此時可以先試運行
sudo java -jar HentaiAtHome.jar
登入帳號看看能否運轉, 可以的話代表前述java設定無誤
顯示綠色Online就代表成功了, 以樹梅派不超頻的狀況, 冷開機可能要達10分鐘, 若是正常起動可能也要3~5分鐘, 要耐心等待, 超頻的話時間可以減半, 但注意散熱。
7.rc.local
開機自動啟動H@H程式, 僅須修改rc.local檔, 開機就會執行此程式sudo vim /etc/rc.local
添加以下兩行, 注意第二行末紅色部分是指把H@H的輸出資料寫入到datalog檔案中, 並且不在螢幕顯示, 這樣的好處是可以遠端登入Rpi中監控H@H的運行狀況, 缺點是datalog檔會越來越大, 半年大約1.8G, 但可以讓他自行清理, 不然就改成 >> /dev/null & 就不會有檔案產生, 但似乎無法監控, 詳情請參考鳥哥資料流導向
cd /hath
sudo java -jar HentaiAtHome.jar --disable_bwm --disable_logging --skip_free_space_check --use_more_memory >> datalog &
8.crontab
自行清理, 看要多久自動關機清理一次, 一週或是一個月很洽當, 但不清理也沒關係, 把datalog檔變成黑洞(/dev/null), 而且樹梅派很穩定, 我自己半年沒關過都沒問題crontab -e(不登入時會也會執行)
添加以下, 代表每天晚上9點55分會執行reboot.sh檔
55 21 * * * /home/pi/reboot.sh
修改完後 重新啟動
sudo /etc/init.d/cron restart
並在/home/pi/底下新增可讀可寫可執行的reboot.sh檔(777), 內容如下
#!/bin/bash
sudo kill $(ps aux|grep 'java'|grep -v 'grep'|awk '{print $2}')
sleep 30
rm /hath/datalog
sudo shutdown -r now
exit 0
如此一來就大功告成了, 試著重新開機看是否有自動運行H@H, 然後到指定時間是否有自動重開, 重開完是否又自動運行, 並且datalog檔是否有移除更新
9.其餘設定
遠端登入時, 利用tail指令監控datalog的變化tail -f /hath/datalog
樹梅派內建溫度監控(單位是度, 目前裸殼平均是50, 若有風冷可以降到36)
cat /sys/class/thermal/thermal_zone0/temp | awk '{print $1/1000}'
檢查cache已有的容量, 建議網路上設10G即可
du -sh /hath/cache/
etc/rc.local 中可補上 renice
回覆刪除cd /hath
sudo java -jar HentaiAtHome.jar --disable_bwm --disable_logging --skip_free_space_check --use_more_memory >> datalog &
sleep 5
sudo renice -5 $(pgrep 'java')
exit 0
太高深啦~~
回覆刪除太高深啦~~
回覆刪除