How to deploy Ethereum (geth) Full-node on Linux

Ethereum nodes are computers participating in Ethereum blockchain network. These nodes are actual computers running software that verifies, stores, and sometimes creates blocks. The actual software is called a "client," and it allows us to interact with the blockchain using the JSON-RPC API, parse and verify the blockchain, and read or write to smart-contracts.
Geth is the official client software provided by the Ethereum foundation. It is generally considered to be the reference implementation for other Ethereum nodes.
geth node requirements
• At least 8GB RAM
• SSD drive with at least 500GB (1 TB recommended)
• Good internet connection is always an uncompromisable factor.
Deploy geth node
To enable go-ethereum's launchpad repository run:
$ sudo add-apt-repository -y ppa:ethereum/ethereum
Then to install the stable version of go-ethereum:
$ sudo apt-get update
$ sudo apt-get install ethereum
Or to install the develop version:
$ sudo apt-get update
$ sudo apt-get install ethereum-unstable
geth additional configs
For seeing all other flags and general help:
$ geth --help
To enable the HTTP server
$ geth --http
To enable mining
$ geth --mine
To enable the WS-RPC server.
$ geth --ws
Following link will provide step by step in instructions on how to upgrade your Geth Ethereum node.
Additional References:

