Ethereum smart contract developers sometimes need to set up their own private blockchain network. In this article we will try to give you a step by step instruction on how to set up Ethereum geth client on Linux (Ubuntu) platform which is used in the process of creating your own blockchain network.
What is geth?
geth is a command line interface for running a full ethereum node implemented in programmic language Go. What we can do with geth client? Well, a couple of things, including:
- mine real ether
- transfer funds between addresses
- create smart contracts
- send transactions
- explore block history
geth client is available for most popular operating systems, so you can install it on Linux, OsX or Windows.
We decided to install geth client via the built in launchpad PPAs. Ethereum team provided a single PPA repository that contains both their stable and develop release for Ubuntu.
To enable launchpad repository, open terminal and execute this command:
sudo add-apt-repository -y ppa:ethereum/ethereum
When you are done with that, you have to decide which release you would like to install. It can be stable or unstable, we will chose a stable version.
Now execute command to update everything
sudo apt-get update
When updating is done, run apt-get command that will install ethereum on your os.
sudo apt-get install ethereum
You will be asked about additional disk space which you should allow by typing Y, otherwise you won’t be able to install ethereum. If you continue with installation, it will install everything that you need for running Ethereum blockchain node, including geth client that we want to install.
When it’s done you should see something like this
And we are done!
Now you have installed evm (ethereum virtual machine), puppeth, geth etc…
To check if everything is installed correctly, try to run geth. If Ethereum peer to peer node starts turning on, you are good.
This tutorial is a part of the series of tutorials about Ethereum smart contract development. If you want to create your own Ethereum blockchain network, the next step would be to create your own genesis file. If you would like to learn more about it feel free to check our article Ethereum smart contract: Params in genesis block explained