bitcoin core ubuntu server

The Classic project maintains a package repository at launchpad.net/~bitcoinclassic/+archive/ubuntu/bitcoinclassic/ if you have other Bitcoin repositories or clients installed, you should remove these using the package management features.If you are certain you do not have any other bitcoin installed, you may skip directly ahead to the installation.You can check if there is any bitcoin packages installed by running; If the output lists a bitcoin-qt or bitcoind package, you have some other Bitcoin software installed.If neither of these are returned in your listing, you can skip directly ahead to the installation.We will now remove the software, this will only remove the conflicting parts.The personal data, like a wallet or the blockchain-data will not be removed.Before we start, please ensure that your bitcoind or bitcoin-qt application is not running (shut it down cleanly as necessary).Then remove its package by running: Continue only if the removal of the package(s) was successful!
As a next step, remove other Bitcoin software repositories, as their packages may conflict with those of Classic.For example, if you have the Bitcoin Core PPA installed previously, you can remove it as follows: Running the apt-cache policy | grep bitcoin command should now produce an empty output.You are now ready to install the Classic PPA and software packages.The following command will install the repository information for Bitcoin Classic: If that is successful, you should update the available package information using There are two software packages which you can install: You can install either or both of these with: They can also be installed together (although only one of them can be run at a time).After installation, you should have the respective binary package installed in /usr/bin/ Prebuilt binaries are also provided in compressed tar archives (.tgz) for 32- and 64-bit Linux systems.Attempting to run the 64-bit binaries on a 32-bit machine will fail.
If in doubt, you can check your Linux using If the output is x86_64 you should obtain the 64-bit version, otherwise the 32-bit version.Without going into full details, the installation steps are as follows: Download the appropriate tar archive.The "Download" link at downloads will take you to the latest release, where you should find .tar.gz files for 32- and 64 bit Linux systems.bitcoin osloUnpack it in a place of your choice.bitcoin краныThe software can be run from any ordinary user's folder.bitcoin kanyeFor example: cd /path/where/you/want/to/unpack tar xf bitcoin-1.x.y-linux64.tar.gz In the example above, x and y indicate software versions.ist bitcoin illegal
This will create a versioned subfolder, e.g.bitcoin-1.x, containing the Classic software.Run the executable from its installation location (if necessary adapting your PATH setting) /path/where/you/unpacked/bitcoin-1.x.y/bin/bitcoin-qt The archives contain both the graphical and headless clients.The executables are contained in the bin subfolder: There are also other binaries such as the command line RPC client, bitcoin-cli.ethereum annual reportIn the event of a contentious hard fork and a possible coin split, user's wealth may be in danger without a proper "replay protection" being implemented.bitcoin armory sourceThis holds true even more so when a user runs a lightweight wallet such as Electrum.Electrum's developer Thomas Voegtlin has published a document on how to safely split coins should such event occur.However, this method relies on 3rd party servers that the wallet connects to.bitcoin sydney conference
In the Bitcoin world, 3rd parties should not be trusted under any circumstances.I'll show you how to overcome this limitation by setting up your own Electrum server.This tutorial is aimed at Mac OS X and Debian-based Linux distributions.It should work with other Linux distros too.Sorry, I don't have a Windows machine.Before you start, make sure to install a full Bitcoin node first and set at least the following minimum options in bitcoin.conf: Use random string generator for rpcuser and rpcpassword.bitcoin armory vs multibitThe longer, the better.If you already have bitcoin node installed, you need to reindex the blockchain: When running Bitcoin-Qt it should be enough to just close and reopen the wallet.dogecoin blockchainIt will reindex the chain automatically.ElectrumX developer decided to use newer Python 3 which isn't installed on many operating systems by default.
Installing the latest version of Python on Apple's OS X is very easy using homebrew: There are many different options to install Python 3.6 based on your Linux distribution.The latest Ubuntu (16.10 as of now) only comes with Python 3.5.You will have to install the newer version from a 3rd party repository: Some Debian-based distributions may already be shipped with the latest Python.In a case of an error try using the following option instead.If you can't install it from a repository, just compile it from the source code.It should work for most distros.Please note that the compilation will take "forever".However, if your CPU has more than 4 cores, you can speed it up a bit by using make -j8 instead.You will also need to install some Python 3.6 dependencies for ElectrumX.then install some required packages:If the above command gives you an error, try installing it with sudo (try to avoid it as much as possible, though).Clone the ElectrumX code from a GitHub repository using git: /kyuupichan/electrumx.gitcd electrumx Next, create a data folder where the blockchain data will be stored: To allow Electrum wallets to connect to your server over SSL you need to create a self-signed certificate.Go to the data folder:Follow the on-screen information.
It will ask for certificate details such as your country and password.You can leave those fields empty.When done, create a certificate:These commands will create 2 files: server.key and server.crt.When configuring the ElectrumX instance, make sure to add server.key to SSL_KEYFILE and server.crt to SSL_CERTFILE.More on this in the next step.First, make sure a fully validating Bitcoin node is running:If you've installed Bitcoin-Qt the chances are bitcoin-cli is not present.It should output information about your node such as block height, open connections etc.If it doesn't, run the node first.OS X lacks Systemd to manage system services, so we will use UNIX's default svscan instead.Create a service folder that will hold symlinks to ElectrumX scripts.Copy daemontools scripts from the GitHub repo to your home directory:Set up ENV variables within ~/scripts/electrumx/env folder.Each variable is located in a separate file.Please refer to ElectrumX's documentation or have a look at my settings and change it accordingly.When finished open the log/run file:and edit the log path.
In my case it is /Users/bitcoin/ElectrumX/logs, yours may be different.Save the file by pressing ESC and typing :wqa followed by ENTER.Change the permissions for the file so it can be executed:Also, change the permission for another file that executes the server:Initialize svscan process to monitor electrumx services:Add services to the folder:They should be immediately recognized by svscan.Check the last few lines of the log to see whether the service outputs any errors: If it does, check your configuration again.Errors are pretty self-explanatory but if you're stuck, let me know in the comments section.ElectrumX is very resource intensive when it comes to open files so it needs a higher limit:Make sure the limit is set after every restart:If the above method doesn't work, try the following:Restart the service for new changes to take effect.Always wait for the service to be terminated properly by checking with logs.Above commands will only execute when svscan is already initialized.
You can check the service's status with: Most if not all Debian-based distribution use Systemd by default.Make sure that is the case for your system:If it outputs something like File: '/proc/1/exe' -> '/lib/systemd/systemd' you're good to go.Open a sudo session and copy a service file from the ElectrumX repo to your Systemd directory:Edit the file to match your setup:You need to edit at least ExecStart and User variables.When you're happy with the changes, hit ESC and type :wqa followed by ENTER.Create a configuration file for the server: and configure it according to your environment.Please refer to ElectrumX's documentation or have a look at my settings.If it gives you no errors, enable the service: You can exit the sudo session now:Say hi to connecting Electrum wallets (via Electrum console) using a banner file.It may contain any information such as your server version, donation address, contacts and even info on other services you offer.It's purely up to you.The content of my banner.txt file looks like this:and is located in the data folder ~/electrumx.You can save it to any location and let ElectrumX know via BANNER_FILE variable in either env/ folder or /etc/electrumx.conf depending on your operating system.Don't forget to restart the server after changing any server's settings.If you want to help the network and let others connect to your server, you have to open specific TCP ports.For a default Electrum set up, those ports are 50001 and 50002.On Linux, this can be easily done via iptables:However, Mac OS X users will need to install some kind of firewall.
The built-in one only manages outgoing connections.There are a few options such as Little Snitch but none of them are free to my knowledge.If you know about one, please let me know.Also, don't forget to open ports on your router if applicable.There are too many routers to cover them in this tutorial.Sorry.To test the connection, open your Electrum wallet.Start it with an argument --oneserver for extra privacy.On Mac OS X the command is:Click a green/red dot in the bottom right corner.A server configuration will pop up.Unclick "Select server automatically" and type in your server's local/remote IP address or a hostname.Click "Use SSL" and confirm.If you did everything right, your wallet should start synchronizing the chain data immediately.It shouldn't take more than 10 seconds to finish.Congratulations!You no longer rely on "trusted" 3rd parties.You also made yourself protected from contentious hard forks and coin splits.Please let me know in the comments section below if you have any questions or suggestions.My big thank you goes to Mashuri Clark that gave me some useful tips and corrected some steps for the OS X part.