Bitcointalk · A few suggestions

中本聪,2009 年 12 月 11 日

SN-0036 已核对来源,附原文与上下文。

阅读语言
中文译文

对,SVN 上是接近候选版的 0.2 源码,也能在 Linux 上构建运行。FreeBSD 上还没测过。

如果后端进程能跑在 FreeBSD 上,我可以运行全天候的种子节点。

那会帮大忙。TOR 用户不必再操心如何引导种子,我们也不必依赖 IRC。

如果你不介意桌面上有个最小化窗口,它可以按几种简单模式在无 UI 的情况下运行。(0.1.5 没有 -min 参数,所以会是一个打开着的窗口)

只做种子节点: bitcoin -min -gen=0

你可以看着 debug.log 来监控它。要停止就 kill 进程,数据库不会介意。

要生成硬币: 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 时,就会出现这种情况。我刚为此向 SVN 提交了一个修复。如果收到 "433" 名称已被占用(是 433 错误吧?),就改用一个非地址形式的随机用户名重试。

总之,我愿意帮忙。我有大把时间,这样的项目让人非常兴奋。

那太好了,任何帮助都由衷感谢!

ORIGINAL · 英文原文
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.

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.

Quote
I 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.  

Quote
In 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!
来源
Bitcointalk 原始链接 ↗ 记录编号 SN-0036