Changeset View
Changeset View
Standalone View
Standalone View
doc/files.md
Show All 16 Lines | |||||
## Data directory location | ## Data directory location | ||||
The data directory is the default location where the Bitcoin ABC files are stored. | The data directory is the default location where the Bitcoin ABC files are stored. | ||||
1. The default data directory paths for supported platforms are: | 1. The default data directory paths for supported platforms are: | ||||
Platform | Data directory path | Platform | Data directory path | ||||
---------|-------------------- | ---------|-------------------- | ||||
Linux | `$HOME/.bitcoin/` | Linux | `$HOME/.ecash/` | ||||
macOS | `$HOME/Library/Application Support/Bitcoin/` | macOS | `$HOME/Library/Application Support/eCash/` | ||||
Windows | `%APPDATA%\Bitcoin\` <sup>[\[1\]](#note1)</sup> | Windows | `%APPDATA%\eCash\` <sup>[\[1\]](#note1)</sup> | ||||
2. The non-default data directory path can be specified by `-datadir` option. | 2. The non-default data directory path can be specified by `-datadir` option. | ||||
3. All content of the data directory, except for `bitcoin.conf` file, is chain-specific. This means the actual data directory paths for non-mainnet cases differ: | 3. All content of the data directory, except for `ecash.conf` file, is chain-specific. This means the actual data directory paths for non-mainnet cases differ: | ||||
Chain option | Data directory path | Chain option | Data directory path | ||||
--------------------|-------------------- | --------------------|-------------------- | ||||
no option (mainnet) | *path_to_datadir*`/` | no option (mainnet) | *path_to_datadir*`/` | ||||
`-testnet` | *path_to_datadir*`/testnet3/` | `-testnet` | *path_to_datadir*`/testnet3/` | ||||
`-regtest` | *path_to_datadir*`/regtest/` | `-regtest` | *path_to_datadir*`/regtest/` | ||||
## Data directory layout | ## Data directory layout | ||||
Subdirectory | File(s) | Description | Subdirectory | File(s) | Description | ||||
-------------------|-----------------------|------------ | -------------------|-----------------------|------------ | ||||
`blocks/` | | Blocks directory; can be specified by `-blocksdir` option (except for `blocks/index/`) | `blocks/` | | Blocks directory; can be specified by `-blocksdir` option (except for `blocks/index/`) | ||||
`blocks/index/` | LevelDB database | Block index; `-blocksdir` option does not affect this path | `blocks/index/` | LevelDB database | Block index; `-blocksdir` option does not affect this path | ||||
`blocks/` | `blkNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Actual Bitcoin blocks (in network format, dumped in raw on disk, 128 MiB per file) | `blocks/` | `blkNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Actual Bitcoin blocks (in network format, dumped in raw on disk, 128 MiB per file) | ||||
`blocks/` | `revNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Block undo data (custom format) | `blocks/` | `revNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Block undo data (custom format) | ||||
`chainstate/` | LevelDB database | Blockchain state (a compact representation of all currently unspent transaction outputs and some metadata about the transactions they are from) | `chainstate/` | LevelDB database | Blockchain state (a compact representation of all currently unspent transaction outputs and some metadata about the transactions they are from) | ||||
`indexes/txindex/` | LevelDB database | Transaction index; *optional*, used if `-txindex=1` | `indexes/txindex/` | LevelDB database | Transaction index; *optional*, used if `-txindex=1` | ||||
`indexes/blockfilter/basic/db/` | LevelDB database | Blockfilter index LevelDB database for the basic filtertype; *optional*, used if `-blockfilterindex=basic` | `indexes/blockfilter/basic/db/` | LevelDB database | Blockfilter index LevelDB database for the basic filtertype; *optional*, used if `-blockfilterindex=basic` | ||||
`indexes/blockfilter/basic/` | `fltrNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Blockfilter index filters for the basic filtertype; *optional*, used if `-blockfilterindex=basic` | `indexes/blockfilter/basic/` | `fltrNNNNN.dat`<sup>[\[2\]](#note2)</sup> | Blockfilter index filters for the basic filtertype; *optional*, used if `-blockfilterindex=basic` | ||||
`wallets/` | | [Contains wallets](#multi-wallet-environment); can be specified by `-walletdir` option; if `wallets/` subdirectory does not exist, a wallet resides in the data directory | `wallets/` | | [Contains wallets](#multi-wallet-environment); can be specified by `-walletdir` option; if `wallets/` subdirectory does not exist, a wallet resides in the data directory | ||||
`./` | `banlist.dat` | Stores the IPs/subnets of banned nodes | `./` | `banlist.dat` | Stores the IPs/subnets of banned nodes | ||||
`./` | `bitcoin.conf` | User-defined [configuration settings](bitcoin-conf.md) for `bitcoind` or `bitcoin-qt`. File is not written to by the software and must be created manually. Path can be specified by `-conf` option | `./` | `ecash.conf` | User-defined [configuration settings](ecash-conf.md) for `ecashd` or `ecash-qt`. File is not written to by the software and must be created manually. Path can be specified by `-conf` option | ||||
`./` | `bitcoind.pid` | Stores the process ID (PID) of `bitcoind` or `bitcoin-qt` while running; created at start and deleted on shutdown; can be specified by `-pid` option | `./` | `ecashd.pid` | Stores the process ID (PID) of `ecashd` or `ecash-qt` while running; created at start and deleted on shutdown; can be specified by `-pid` option | ||||
`./` | `debug.log` | Contains debug information and general logging generated by `bitcoind` or `bitcoin-qt`; can be specified by `-debuglogfile` option | `./` | `debug.log` | Contains debug information and general logging generated by `ecashd` or `ecash-qt`; can be specified by `-debuglogfile` option | ||||
`./` | `guisettings.ini.bak` | Backup of former [GUI settings](#gui-settings) after `-resetguisettings` option is used | `./` | `guisettings.ini.bak` | Backup of former [GUI settings](#gui-settings) after `-resetguisettings` option is used | ||||
`./` | `mempool.dat` | Dump of the mempool's transactions | `./` | `mempool.dat` | Dump of the mempool's transactions | ||||
`./` | `onion_v3_private_key` | Cached Tor onion service private key for `-listenonion` option | `./` | `onion_v3_private_key` | Cached Tor onion service private key for `-listenonion` option | ||||
`./` | `peers.dat` | Peer IP address database (custom format) | `./` | `peers.dat` | Peer IP address database (custom format) | ||||
`./` | `settings.json` | Read-write settings set through GUI or RPC interfaces, augmenting manual settings from [bitcoin.conf](bitcoin-conf.md). File is created automatically if read-write settings storage is not disabled with `-nosettings` option. Path can be specified with `-settings` option | `./` | `settings.json` | Read-write settings set through GUI or RPC interfaces, augmenting manual settings from [ecash.conf](ecash-conf.md). File is created automatically if read-write settings storage is not disabled with `-nosettings` option. Path can be specified with `-settings` option | ||||
`./` | `.cookie` | Session RPC authentication cookie; if used, created at start and deleted on shutdown; can be specified by `-rpccookiefile` option | `./` | `.cookie` | Session RPC authentication cookie; if used, created at start and deleted on shutdown; can be specified by `-rpccookiefile` option | ||||
`./` | `.lock` | Data directory lock file | `./` | `.lock` | Data directory lock file | ||||
## Multi-wallet environment | ## Multi-wallet environment | ||||
Wallets are Berkeley DB (BDB) databases: | Wallets are Berkeley DB (BDB) databases: | ||||
Subdirectory | File(s) | Description | Subdirectory | File(s) | Description | ||||
Show All 10 Lines | |||||
3. A wallet database path can be specified by `-wallet` option. | 3. A wallet database path can be specified by `-wallet` option. | ||||
4. `wallet.dat` files must not be shared across different node instances, as that can result in key-reuse and double-spends due the lack of synchronization between instances. | 4. `wallet.dat` files must not be shared across different node instances, as that can result in key-reuse and double-spends due the lack of synchronization between instances. | ||||
5. Any copy or backup of the wallet should be done through a `backupwallet` call in order to update and lock the wallet, preventing any file corruption caused by updates during the copy. | 5. Any copy or backup of the wallet should be done through a `backupwallet` call in order to update and lock the wallet, preventing any file corruption caused by updates during the copy. | ||||
## GUI settings | ## GUI settings | ||||
`bitcoin-qt` uses [`QSettings`](https://doc.qt.io/qt-5/qsettings.html) class; this implies platform-specific [locations where application settings are stored](https://doc.qt.io/qt-5/qsettings.html#locations-where-application-settings-are-stored). | `ecash-qt` uses [`QSettings`](https://doc.qt.io/qt-5/qsettings.html) class; this implies platform-specific [locations where application settings are stored](https://doc.qt.io/qt-5/qsettings.html#locations-where-application-settings-are-stored). | ||||
## Legacy subdirectories and files | ## Legacy subdirectories and files | ||||
These subdirectories and files are no longer used by the Bitcoin ABC: | These subdirectories and files are no longer used by the Bitcoin ABC: | ||||
Path | Description | Repository notes | Path | Description | Repository notes | ||||
---------------|-------------|----------------- | ---------------|-------------|----------------- | ||||
`blktree/` | Blockchain index; replaced by `blocks/index/` in [0.8.0](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.8.0.md#improvements) | [PR #2231](https://github.com/bitcoin/bitcoin/pull/2231), [`8fdc94cc`](https://github.com/bitcoin/bitcoin/commit/8fdc94cc8f0341e96b1edb3a5b56811c0b20bd15) | `blktree/` | Blockchain index; replaced by `blocks/index/` in [0.8.0](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.8.0.md#improvements) | [PR #2231](https://github.com/bitcoin/bitcoin/pull/2231), [`8fdc94cc`](https://github.com/bitcoin/bitcoin/commit/8fdc94cc8f0341e96b1edb3a5b56811c0b20bd15) | ||||
Show All 12 Lines |