Question: I am an Ethereum beginner and was following this guide: <https://www.ethereum.org/cli> 

I want to create a private Ethereum network. So I executed:

```
geth --datadir ~/.ethereum_private init ~/dev/genesis.json

```

But it fails: 

> 
> Fatal: failed to read genesis file: open /Users/xxxxxxx/dev/genesis.json: no such file or directory
> 
> 
> 

The tutorial does not tell me where I get the "genesis.json" file from. Where do I get it? Do I need to create it myself? How?

Answer: 
Since you want to create a private Ethereum network, you need to create your own genesis file with customized parameters suitable for you. This ensures that you're running your version of the blockchain. Not the public ethereum blockchain.

Here are some useful links:

<http://tech.lab.carl.pro/kb/ethereum/testnet_setup>

<http://ethdocs.org/en/latest/network/test-networks.html> 

<https://github.com/ethereum/go-ethereum/wiki/Setting-up-private-network-or-local-cluster>

<https://github.com/ethereum/go-ethereum/wiki/Connecting-to-the-network>
<https://github.com/ethereum/go-ethereum> in the "Operating a private network" section walks you through setting up a genesis file.