原始文献 / 论坛帖 / Re: A few suggestions

Re: A few suggestions

Bitcointalk · 2009-12-11 19:27:55 UTC

AuthorSatoshi Nakamoto
TitleRe: A few suggestions
Date2009-12-11 19:27:55 UTC
ForumBitcointalk · 原文

对,SVN 上是接近发布候选的 0.2 源码,在 Linux 上也能编译运行。FreeBSD 上还没测过。

引用自:madhatter2,2009 年 12 月 11 日 04:59:19 AM(https://bitcointalk.org/index.php?topic=12.msg47#msg47)

如果能搞出可在 FreeBSD 上跑的后端进程,我就能架常年在线的种子节点。

那会帮大忙。TOR 用户就不用愁怎么连上种子节点,我们也不用依赖 IRC。

不用 UI 也能跑几种简单的模式,只要你不介意桌面上有个最小化的窗口。(0.1.5 没有 -min,会是个打开的窗口。)

只跑种子节点:

bitcoin -min -gen=0

看 debug.log 就能大致监控。停的话直接杀进程,数据库没事。

要挖矿:

bitcoin -min -gen

要取出挖到的币,得把 wallet.dat(0.2 版)拷到有 UI 的机器上,替换掉 wallet.dat,运行 bitcoin 再把币转到你的主账户。(0.1.5 版则要拷整个 "%appdata%/Bitcoin" 目录。)拷 wallet.dat 有个注意事项:如果恰好在它生成币或收到付款的那一瞬间杀掉程序,wallet.dat 可能单独用不了,就得拷整个目录。

引用:

我真觉得下载包里带一份每日更新的种子快照能改善冷启动。我见过全新安装时应用卡在 0 连接 / 1 区块,看 debug.log 发现 IRC 服务器(我记得是 freenode)说我已经连上了,不让我再连进去做种子。(举个例子。)

明白,多台机器共用同一个 NAT 或 VPN、或者 ISP 把大家都 funnel 到几个代理后面时就会这样。我刚往 SVN 提交了一个修复:如果遇到 "433" 昵称已被占用(是 433 错误吧?),就换个不带地址的随机用户名重试。

引用:

不管怎样,我想帮忙。我时间很多,这样的项目太让人兴奋了。

太好了,非常感谢任何帮助!

英文原文

Right, the SVN has the almost-release-candidate 0.2 source, which can also be built and run on Linux.   It hasn't been tested on FreeBSD.

Quote from: madhatter2 on December 11, 2009, 04:59:19 AM(https://bitcointalk.org/index.php?topic=12.msg47#msg47)If we can get to the point where we have a working backend process that will run on FreeBSD I can run always-on seeds.
That would be a big help.  TOR users wouldn't have to worry about how to get seeded, and we wouldn't depend on IRC.

It can be run in a few simple modes without access to the UI if you don't mind a minimized window on the desktop.  (0.1.5 doesn't have -min so it would be an open window)

To only run a seed:
bitcoin -min -gen=0

You could sort of monitor it by looking at debug.log.  To stop it, kill the process, the database won't mind.

To generate:
bitcoin -min -gen

To get the generated bitcoins, you'd have to copy wallet.dat (with version 0.2) to a machine with a UI, swap in the wallet.dat, run bitcoin and transfer the coins to your main account.  (With version 0.1.5 you'd have to copy the whole "%appdata%/Bitcoin" directory.)  There is one caveat about copying wallet.dat: if you happened to kill the program at the exact moment that it generated a coin or received a payment, wallet.dat might not work by itself and you'd have to copy the whole directory.

QuoteI really think that having the download package contain a daily seed snapshot will improve the bootstrapping. I have seen instances on new test installs here where the application will sit with 0 connections / 1 block. Upon inspecting the debug.log I find that the IRC server (freenode, I believe) claims I am already connected and refuses to let me seed the application. (Just an example).
I see, that would happen with multiple nodes using the same NAT or VPN or some ISP that funnels everyone through a few proxy servers.  I just committed a fix to SVN for this.  If it gets "433" name already in use (it was error 433, right?), it'll retry with a non-address random username.

QuoteIn any event, I would like to help. I have a lot of time and a project like this one is very exciting.
That's great, any help is really appreciated!