Support

Linux Installation Guide

Follow @MultiBitOrg on Twitter for official announcements and occasional news items.

Quick install guide

  • After download completes double-click the installer icon
  • We recommend using the default settings
  • It is safe to overwrite an earlier version if prompted
  • Any existing wallet files and configuration will not be affected
  • If you are new to Bitcoin you should watch the video so you know what to expect.

We recommend SpiderOak as a privacy-conscious cloud backup provider. The first 2Gb are free.

We have a Getting Started guide so you can be up and running with Bitcoin quickly and safely.

There are more tutorials on our YouTube channel MultiBitOrg.

How to install on Linux

The Linux installer does not come with a pre-packaged Java installation due to the huge variety of Linux distros that are available. Consequently you will need to arrange for a suitable JVM to be installed prior to running the installer. We recommend Open Java 1.7.0_72, however due to issues with cryptography support on some Linux distributions you may need to use the Oracle JVM instead (see Troubleshooting section later).

Assuming you have a suitable JVM installed and have downloaded the installer to your home directory, do the following at the command shell:

cd ~
chmod +x multibit-hd-unix-0.x.y.sh
./multibit-hd-unix-0.x.y.sh

After a short time MultiBit will show a wizard and install into ~/multibit-hd. Your application directory will be ~/.multibit-hd and will hold all your configuration and wallet files. It will appear on first startup. A basic Unity .desktop file will be created and registered if available so you should be able to simply open Unity and search for "MultiBit" to get started (but see later). Alternatively you can run from the command line as follows (you'll see a lot of logging messages this way):

cd multibit-hd
./multibit-hd &

After running the installer you may need to run some scripts to further integrate MultiBit into your environment. In particular the KeepKey support requires certain udev rules to be in place. The following sections provide these scripts. If you have a distro that is not included and have a script you'd like to share please let us know through the website issue link at the foot of the page.

Ubuntu

This script will activate the USB HID rules for KeepKey and Trezor (just re-attach your device after running):


#!/bin/sh
echo Activate HID USB...
cat << _EOF_ > /etc/udev/rules.d/99-multibit-hd.rules
# KeepKey HID device
ATTRS{idProduct}=="0001", ATTRS{idVendor}=="2b24", MODE="0660", GROUP="plugdev"
# Trezor HID device
ATTRS{idProduct}=="0001", ATTRS{idVendor}=="534c", MODE="0660", GROUP="plugdev"
_EOF_

This script will ensure that MultiBit can respond correctly to Bitcoin links in web pages


#!/bin/sh
echo Build Unity desktop...
unityExec=$(ls -d $PWD/multibit-hd)
unityIcon=$(ls -d $PWD/.install4j/multibit-hd.png)
cat << _EOF_ > multibit-hd.desktop
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=$unityExec %U
Icon=$unityIcon
Name[en_US]=MultiBit HD
Comment=Secure lightweight international Bitcoin wallet
Comment[en_US]=Secure lightweight international Bitcoin wallet
Name=MultiBit HD
Categories=Network;X-Bitcoin;
MimeType=x-scheme-handler/bitcoin;
_EOF_

echo Install to Unity...
desktop-file-validate multibit-hd.desktop
desktop-file-install multibit-hd.desktop
update-desktop-database

echo Done. Please check the Unity dock.

To run it, launch gedit and copy-paste the above and save as ~/multibit-hd/post-install.sh. Then do the following:

cd ~/multibit-hd
chmod +x post-install.sh
sudo ./post-install.sh

When complete you will have a launch icon in the dock that you can locate using "MultiBit" in the search.

Other Linux distributions

You can run MultiBit manually as follows:

cd ~/multibit-hd
java -jar multibit-hd.jar &

Troubleshooting

Occasionally people encounter problems getting MultiBit set up on their Linux distribution. Here are some common solutions to known problems.

I'm seeing a SIGSEV (0xb) crash when creating a wallet

Some people have had issues using MultiBit with OpenJDK on Arch Linux, CentOS, OpenSuse and Fedora distributions. The error manifests when trying to add a password to a wallet and occurs deep within the platform-specific parts of the JVM. If this affects you the error will be like this:

SIGSEGV (0xb) at pc=0x00007f97ec7d06a0, pid=588, tid=140289289742080

After some research members of the MultiBit community found that installing the Oracle Java 7 JVM fixed the problem. To install Oracle's JDK do the following:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

However further research found a reliable workaround involving deleting libscrypt.so from the JAR which avoids the Oracle JVM requirement:

zip -d "multibit-hd.jar" lib/x86_64/{freebsd,linux}/libscrypt.so
deleting: lib/x86_64/freebsd/libscrypt.so
deleting: lib/x86_64/linux/libscrypt.so
My external browser does not launch

MultiBit will first attempt to launch a browser using GNOME libraries and will fall back to xdg-open if that fails. It may be that your system does not have a default browser available in which case you may need to add one manually.

Clicking a Bitcoin link in Firefox doesn't work

Assuming that you have installed MultiBit and run the post-install script this should work out of the box. However some people have fixed this by manually editing the ~/.mozilla/firefox/YOUR_PROFILE.default/mimeTypes.rdf file with an entry as follows:

  <RDF:Description RDF:about="urn:scheme:bitcoin"
                   NC:value="~/multibit-hd/multibit-hd”>
    <NC:handlerProp RDF:resource="urn:scheme:handler:bitcoin"/>
  </RDF:Description> 

Save and restart Firefox and click a Bitcoin URI. It should prompt for a handler and give you the option to make this choice permanent.

I don't have much system memory

MultiBit uses the Java Virtual Machine (JVM) to manage its memory. This means that over time you will see memory use increase as various activities take place. Synchronizing with the block chain is a memory-intensive process and during the initial sync or a Repair Wallet operation you will notice an increase. By default MultiBit will not consume more than the lesser of one quarter of your system memory or 1Gb. For example, on a 2Gb system (2009 mid-range machine) MultiBit will start having memory constraints at around 500Mb.

This default is sufficient to allow for smooth and responsive operations on most systems. However, MultiBit can continue to work with only 256Mb allocated to it although performance tends to reduce.

If you want to change the memory allocated to MultiBit you will need to start it with a command line parameter like this -Xmx1024m for a total memory allocation of 1024Mb or 1Gb.

Related articles

Here are some related articles: