---
title: InfluxDB file system layout
description: The InfluxDB file system layout depends on the operating system, package manager, or containerization platform used to install InfluxDB.
url: https://docs.influxdata.com/influxdb/v2/reference/internals/file-system-layout/
estimated_tokens: 3295
product: InfluxDB OSS v2
version: v2
publisher: InfluxData
canonical: https://docs.influxdata.com/influxdb/v2/reference/internals/file-system-layout/
date: '2024-03-11T15:06:15-05:00'
lastmod: '2024-03-11T15:06:15-05:00'
---

This page documents an earlier version of InfluxDB OSS.[InfluxDB 3 Core](/influxdb3/core/) is the latest stable version.

#### API token hashing is enabled by default in InfluxDB OSS 2.9.0

Stronger token security: tokens are stored as hashes on disk, so a
copy of the database file doesn’t expose usable tokens. Existing
tokens are hashed on first startup and the original strings can’t
be recovered afterward — **capture any plaintext tokens you still
need before you upgrade**.

For more information, see [Token hashing](/influxdb/v2/admin/tokens/#token-hashing).

The InfluxDB file system layout depends on the operating system, installation method,
or containerization platform used to install InfluxDB.

* [InfluxDB file structure](#influxdb-file-structure)
  * [Engine path](#engine-path)
  * [Bolt path](#bolt-path)
  * [SQLite path](#sqlite-path)
  * [Configs path](#configs-path)
  * [InfluxDB configuration files](#influxdb-configuration-files)

* [File system layout](#file-system-layout)
  * [Installed as a standalone binary](#installed-as-a-standalone-binary)
  * [Installed as a package](#installed-as-a-package)
  * [Docker Hub](#docker-hub)
  * [Quay.io](#quayio)

## InfluxDB file structure

The InfluxDB file structure includes the following:

### Engine path

Directory path to the [storage engine](/influxdb/v2/reference/internals/storage-engine/),
where InfluxDB stores time series data, includes the following directories:

* **data**: Stores time-structured merge tree (TSM) files.
  For more information about the structure of the `data` directory, see[TSM directories and files layout](#tsm-directories-and-files-layout).
* **replicationq**: Store the replication queue for the [InfluxDB replication service](/influxdb/v2/write-data/replication/).
* **wal**: Stores write-ahead log (WAL) files.
  For more information about the structure of the `wal` directory, see[WAL directories and files layout](#wal-directories-and-files-layout).

To customize this path, use the [engine-path](/influxdb/v2/reference/config-options/#engine-path)configuration option.

### Bolt path

File path to the [Boltdb](https://github.com/boltdb/bolt) database, a file-based
key-value store for non-time series data, such as InfluxDB users, dashboards, and tasks.
To customize this path, use the [bolt-path](/influxdb/v2/reference/config-options/#bolt-path)configuration option.

### SQLite path

File path to the [SQLite](https://www.sqlite.org/) database, an SQL database for non-time series data, such as InfluxDB notebooks and annotations.
To customize this path, use the [sqlite-path](/influxdb/v2/reference/config-options/#sqlite-path) configuration option.

### Configs path

File path to [`influx` CLI connection configurations](/influxdb/v2/reference/cli/influx/config/) (configs).

To use a custom path, pass the `--configs-path` flag with `influx` CLI commands.

### InfluxDB configuration files

Some operating systems and package managers store a default InfluxDB (`influxd`) configuration file on disk.
For more information about using InfluxDB configuration files, see[Configuration options](/influxdb/v2/reference/config-options/).

## File system layout

#### macOS ####

#### macOS default paths

|            Path             |           Default            |
|-----------------------------|------------------------------|
| [Engine path](#engine-path) |   `~/.influxdbv2/engine/`    |
|   [Bolt path](#bolt-path)   | `~/.influxdbv2/influxd.bolt` |
| [SQLite path](#sqlite-path) |`~/.influxdbv2/influxd.sqlite`|
|[Configs path](#configs-path)|   `~/.influxdbv2/configs`    |

#### macOS file system overview

* \~/.influxdbv2/
  * engine/
    * data/
      * *TSM directories and files*

    * wal/
      * *WAL directories and files*

  * configs
  * influxd.bolt
  * influxd.sqlite

When installing InfluxDB on Linux, you can download and install the `influxd` binary,
or you can use a package manager.
Which installation method you use determines the file system layout.

* [InfluxDB file structure](#influxdb-file-structure)
* [File system layout](#file-system-layout)
  * [Installed as a standalone binary](#installed-as-a-standalone-binary)
  * [Installed as a package](#installed-as-a-package)
  * [Docker Hub](#docker-hub)
  * [Quay.io](#quayio)

### Installed as a standalone binary

#### Linux default paths (standalone binary)

|            Path             |           Default            |
|-----------------------------|------------------------------|
| [Engine path](#engine-path) |   `~/.influxdbv2/engine/`    |
|   [Bolt path](#bolt-path)   | `~/.influxdbv2/influxd.bolt` |
| [SQLite path](#sqlite-path) |`~/.influxdbv2/influxd.sqlite`|
|[Configs path](#configs-path)|   `~/.influxdbv2/configs`    |

#### Linux file system overview (standalone binary)

* \~/.influxdbv2/
  * engine/
    * data/
      * *TSM directories and files*

    * wal/
      * *WAL directories and files*

  * configs
  * influxd.bolt
  * influxd.sqlite

### Installed as a package

InfluxDB 2.9 supports **.deb-** and **.rpm-based** Linux package managers.
The file system layout is the same with each.

#### Linux default paths (package)

|                          Path                           |             Default              |
|---------------------------------------------------------|----------------------------------|
|               [Engine path](#engine-path)               |   `/var/lib/influxdb/engine/`    |
|                 [Bolt path](#bolt-path)                 | `/var/lib/influxdb/influxd.bolt` |
|               [SQLite path](#sqlite-path)               |`/var/lib/influxdb/influxd.sqlite`|
|              [Configs path](#configs-path)              |   `/var/lib/influxdb/configs`    |
|[Default config file path](#influxdb-configuration-files)|   `/etc/influxdb/config.toml`    |

#### Linux file system overview (package)

* /var/lib/influxdb/
  * engine/
    * data/
      * *TSM directories and files*

    * wal/
      * *WAL directories and files*

  * configs
  * influxd.bolt
  * influxd.sqlite

* /etc/influxdb/
  * config.toml *(influxd configuration file)*

#### Windows default paths

|            Path             |                 Default                  |
|-----------------------------|------------------------------------------|
| [Engine path](#engine-path) |   `%USERPROFILE%\.influxdbv2\engine\`    |
|   [Bolt path](#bolt-path)   | `%USERPROFILE%\.influxdbv2\influxd.bolt` |
| [SQLite path](#sqlite-path) |`%USERPROFILE%\.influxdbv2\influxd.sqlite`|
|[Configs path](#configs-path)|   `%USERPROFILE%\.influxdbv2\configs`    |

#### Windows file system overview

* %USERPROFILE%\\.influxdbv2\\
  * engine\\
    * data\\
      * *TSM directories and files*

    * wal\\
      * *WAL directories and files*

  * configs
  * influxd.bolt
  * influxd.sqlite

InfluxDB Docker images are available from both [Docker Hub](https://hub.docker.com/_/influxdb)and [Quay.io](https://quay.io/repository/influxdb/influxdb?tab=tags).
Each has a unique InfluxDB file system layout.

* [Docker Hub](#docker-hub)
* [Quay.io](#quayio)

### Docker Hub

> [!Note]
> For InfluxDB v2, the InfluxDB Docker Hub image uses `/var/lib/influxdb2` instead of `/var/lib/influxdb`so you can easily mount separate volumes for InfluxDB 1.x and 2.x data during the[upgrade process](/influxdb/v2/upgrade/v1-to-v2/docker/).

#### Docker Hub default paths

|            Path             |                                                                              Default                                                                              |
|-----------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Engine path](#engine-path) |                                                                   `/var/lib/influxdb2/engine/`                                                                    |
|   [Bolt path](#bolt-path)   |                                                                 `/var/lib/influxdb2/influxd.bolt`                                                                 |
| [SQLite path](#sqlite-path) |                                                                `/var/lib/influxdb2/influxd.sqlite`                                                                |
|[Configs path](#configs-path)|`/etc/influxdb2/influx-configs` if InfluxDB is set up using automated `setup` mode or `influx setup` from within the container; `/etc/influxdb2/configs` otherwise.|

#### Docker Hub file system overview

* /var/lib/influxdb2/
  * engine/
    * data/
      * *TSM directories and files*

    * wal/
      * *WAL directories and files*

  * influxd.bolt
  * influxd.sqlite

* /etc/influxdb2/
  * configs
  * influx-configs

### Quay.io

#### Quay default paths

|            Path             |             Default              |
|-----------------------------|----------------------------------|
| [Engine path](#engine-path) |   `/root/.influxdbv2/engine/`    |
|   [Bolt path](#bolt-path)   | `/root/.influxdbv2/influxd.bolt` |
| [SQLite path](#sqlite-path) |`/root/.influxdbv2/influxd.sqlite`|
|[Configs path](#configs-path)|   `/root/.influxdbv2/configs`    |

#### Quay file system overview

* /root/.influxdbv2/
  * engine/
    * data/
      * *TSM directories and files*

    * wal/
      * *WAL directories and files*

  * configs
  * influxd.bolt
  * influxd.sqlite

#### Kubernetes default paths

|            Path             |              Default              |
|-----------------------------|-----------------------------------|
| [Engine path](#engine-path) |   `/var/lib/influxdb2/engine/`    |
|   [Bolt path](#bolt-path)   | `/var/lib/influxdb2/influxd.bolt` |
| [SQLite path](#sqlite-path) |`/var/lib/influxdb2/influxd.sqlite`|
|[Configs path](#configs-path)|     `/etc/influxdb2/configs`      |

#### Kubernetes file system overview

* /var/lib/influxdb2/
  * engine/
    * data/
      * *TSM directories and files*[+](#tsm-directories-and-files-layout)

    * wal/
      * *WAL directories and files*

  * influxd.bolt
  * influxd.sqlite

* /etc/influxdb2/
  * configs

#### TSM directories and files layout

TSM directories and files are stored in the `data` directory inside the [engine path](#engine-path).
The diagram below is **relative to the [engine path](#file-system-layout)**.

* …/data/
  * 000xX00xxXx000x0/ *(bucket ID)*
    * \_series/ *(series directory)*
      * 00/ *(internal shard index)*
        * 0000 *(internal shard index file)*

    * autogen
      * 0123/ *(shard ID)*
        * index *(index directory)*
          * L0-00000001.tsl *(write-ahead log for the TSI index)*
          * L0-00000001.tsi *(series index)*
          * MANIFEST *(index manifest)*

#### WAL directories and files layout

WAL directories and files are stored in the `data` directory inside the [engine path](#engine-path).
The diagram below is **relative to the [engine path](#file-system-layout)**.

* …/wal/
  * 000xX00xxXx000x0/ *(bucket ID)*
    * autogen/
      * 0123/ *(shard ID)*
        * \_01234.wal *(WAL file)*

#### Related

* [Manage InfluxDB internal systems](/influxdb/v2/admin/internals/)

[storage](/influxdb/v2/tags/storage/)[internals](/influxdb/v2/tags/internals/)
| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | ~/.influxdbv2/engine/ |
| Bolt path | ~/.influxdbv2/influxd.bolt |
| SQLite path | ~/.influxdbv2/influxd.sqlite |
| Configs path | ~/.influxdbv2/configs |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | ~/.influxdbv2/engine/ |
| Bolt path | ~/.influxdbv2/influxd.bolt |
| SQLite path | ~/.influxdbv2/influxd.sqlite |
| Configs path | ~/.influxdbv2/configs |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | /var/lib/influxdb/engine/ |
| Bolt path | /var/lib/influxdb/influxd.bolt |
| SQLite path | /var/lib/influxdb/influxd.sqlite |
| Configs path | /var/lib/influxdb/configs |
| Default config file path | /etc/influxdb/config.toml |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | %USERPROFILE%\.influxdbv2\engine\ |
| Bolt path | %USERPROFILE%\.influxdbv2\influxd.bolt |
| SQLite path | %USERPROFILE%\.influxdbv2\influxd.sqlite |
| Configs path | %USERPROFILE%\.influxdbv2\configs |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | /var/lib/influxdb2/engine/ |
| Bolt path | /var/lib/influxdb2/influxd.bolt |
| SQLite path | /var/lib/influxdb2/influxd.sqlite |
| Configs path | /etc/influxdb2/influx-configs  if InfluxDB is set up using automated  setup  mode or  influx setup  from within the container;  /etc/influxdb2/configs  otherwise. |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | /root/.influxdbv2/engine/ |
| Bolt path | /root/.influxdbv2/influxd.bolt |
| SQLite path | /root/.influxdbv2/influxd.sqlite |
| Configs path | /root/.influxdbv2/configs |

| Path | Default |
| --- | --- |
| Path | Default |
| Engine path | /var/lib/influxdb2/engine/ |
| Bolt path | /var/lib/influxdb2/influxd.bolt |
| SQLite path | /var/lib/influxdb2/influxd.sqlite |
| Configs path | /etc/influxdb2/configs |
