Bitcoin Forum

Other => Beginners & Help => Topic started by: alocacoc on July 11, 2012, 04:23:52 AM



Title: Entire Bitcoin on a USB 3.0 Stick / Problem while downloading Blocks
Post by: alocacoc on July 11, 2012, 04:23:52 AM
I did try to install Bitoin ( with -datadir parameter) in hidden truecrypt container on a USB 3.0 Stick.

While donwloading / updating the blocks the transmission was interrupted and i got two times the "22dbrunrecoveryexception" error message. After then, it was not possible to continue  at that point.

Now, i start the procedure at new, but installed bitcoin on the HDD. It looks, that the transmission runs much faster. After this is done, i plan to move the folder to the USB Stick.

Is it not recommend to run bitcoin on a USB Stick? Or what could be the the reason of the issue?

Another thing: I guess, the transmission get more slowly as progress comes closer to the end.


Title: Re: Entire Bitcoin on a USB 3.0 Stick / Problem while downloading Blocks
Post by: Stephen Gornick on July 11, 2012, 05:27:41 AM
I did try to install Bitoin ( with -datadir parameter) in hidden truecrypt container on a USB 3.0 Stick.

While donwloading / updating the blocks the transmission was interrupted and i got two times the "22dbrunrecoveryexception" error message. After then, it was not possible to continue  at that point.

Now, i start the procedure at new, but installed bitcoin on the HDD. It looks, that the transmission runs much faster. After this is done, i plan to move the folder to the USB Stick.

The disk i/o that the Bitcoin client does to verify each block as the blockchain gets downloaded is immense.  Having that i/o occur on an encrypted filesystem (the truecrypt container) will degrade performance.

Another thing: I guess, the transmission get more slowly as progress comes closer to the end.

Yes, each block has more data, stating in April, thanks somewhat to a widening interest in Bitcoin for speculation and commerce, but more significantly due to SatoshiDICE.

The Bitcoin client now supports passphrase encryption so there may be less necessity to hold the wallet.dat on an encrypted filesystem.  You could also keep the wallet.dat on the encrypted filesystem but keep everything else on disk and use a symlink for the wallet.dat to point to the wallet.dat on the encrypted filesystem.

You specifically mention a hidden container, which would likely mean you want plausible deniability.

One option might be to keep a several GB partition on the flash media as a staging area and before launching the client, temporarily copy the two blockchain data files (but not the wallet.dat, which you use a symlink to the wallet.dat that remains on the encrypted filesystem) to the staging area.  Launch with -datadir= the staging area.

That way you still never have any Bitcoin files on the hard drive, yet the blockchain data isn't being written to the encrypted filesystem while the app is running.  After shutdown of the Bitcoin client, then move the two blockchain datafiles back to the encrypted filesystem for use the next time.


Title: Re: Entire Bitcoin on a USB 3.0 Stick / Problem while downloading Blocks
Post by: alocacoc on July 11, 2012, 06:04:13 AM
Thank you for the explanations. It is very helpful.

I just installed the lightweight client "Multibit". It looks, that it don't need to download all the blockchains. So far, i didn't notice any negative comments on this client.

After i received a small free amount from "Bitcoin Faucet", i think about to use this client.


Title: Re: Entire Bitcoin on a USB 3.0 Stick / Problem while downloading Blocks
Post by: RandomQ on July 16, 2012, 11:33:48 PM
I did try to install Bitoin ( with -datadir parameter) in hidden truecrypt container on a USB 3.0 Stick.

While donwloading / updating the blocks the transmission was interrupted and i got two times the "22dbrunrecoveryexception" error message. After then, it was not possible to continue  at that point.

Now, i start the procedure at new, but installed bitcoin on the HDD. It looks, that the transmission runs much faster. After this is done, i plan to move the folder to the USB Stick.

The disk i/o that the Bitcoin client does to verify each block as the blockchain gets downloaded is immense.  Having that i/o occur on an encrypted filesystem (the truecrypt container) will degrade performance.

Another thing: I guess, the transmission get more slowly as progress comes closer to the end.

Yes, each block has more data, stating in April, thanks somewhat to a widening interest in Bitcoin for speculation and commerce, but more significantly due to SatoshiDICE.

The Bitcoin client now supports passphrase encryption so there may be less necessity to hold the wallet.dat on an encrypted filesystem.  You could also keep the wallet.dat on the encrypted filesystem but keep everything else on disk and use a symlink for the wallet.dat to point to the wallet.dat on the encrypted filesystem.

You specifically mention a hidden container, which would likely mean you want plausible deniability.

One option might be to keep a several GB partition on the flash media as a staging area and before launching the client, temporarily copy the two blockchain data files (but not the wallet.dat, which you use a symlink to the wallet.dat that remains on the encrypted filesystem) to the staging area.  Launch with -datadir= the staging area.

That way you still never have any Bitcoin files on the hard drive, yet the blockchain data isn't being written to the encrypted filesystem while the app is running.  After shutdown of the Bitcoin client, then move the two blockchain datafiles back to the encrypted filesystem for use the next time.

I'm going to try this method, I've used an encrypted USB in the past with everything on the drive. I didn't notice any performance issues(USB 3.0 & 6 core cpu) but i did have trouble with getting corrupted wallet.dat but I always had other encrypted backups.


Title: Re: Entire Bitcoin on a USB 3.0 Stick / Problem while downloading Blocks
Post by: exotime on July 17, 2012, 05:45:12 PM
If encrypting the data is you're bottleneck, you desperately need to upgrade your CPU ;)

The linux tool `dstat` will help you identify what your bottleneck is.