# Backup e Restauração

## Versão

* Linux Control Center = 2.10.X ou superior

## Requisitos

* Acesso SSH no Host do LCC com usuário root

## Overview

* Este guia provê informações e passo a passo para realizar backup e restauração do LCC

## Objetivo

* Demonstrar o processo de backup e restauração completa do LCC por meio da interface CLI.

### Diretório Padrão de Backup

{% hint style="warning" %}
Recomendamos fortemente que os backups gerados sejam copiados para um local seguro, garantindo a preservação dos dados caso seja necessária alguma intervenção no futuro.

**Diretório de destino dos backups:** `/opt/lcc/bkp/`

Os arquivos de backup de configuração terão o nome no formato `backup_config_YYYY-MM-DD_HH-MM-SS.tar.gz`, indicando o ano, mês, dia, hora, minuto e segundos em que o backup foi criado. Esses arquivos contêm as configurações necessárias para o funcionamento do LCC.

O arquivo de backup do banco de dados será nomeado no formato `lcc_db_YYYY-MM-DD_HH-MM-SS.sql`, seguindo o mesmo padrão. Este arquivo armazena todo o banco de dados, permitindo a recuperação completa das informações armazenadas.
{% endhint %}

### Parando os Containers

1. Antes de realizar o backup, é necessário parar os processos dos Containers do LCC separadamente para maior integridade dos dados.
   1. **Container lcc\_console**\
      Comando: `docker stop lcc_console`
   2. **Container lcc\_worker**\
      Comando: `docker stop lcc_worker`
   3. **Container lcc\_alert\_report**\
      Comando: `docker stop lcc_alert_report`
2. Veja o exemplo na imagem abaixo:

   ![](/files/xTAJwoTrnZVV0RARfNXX)

### Backup de Arquivos de Configuração

1. Este comando realiza o backup de todos os arquivos com extensão `.yml` que foram gerados durante a instalação. Estes arquivos são essenciais para o funcionamento do LCC.

   Comando: `lcc-cli backup -a`
2. O backup estará compactado na extensão tar.gz

   ![](/files/Kdda3hLFBuH4Aug8hfa2)

{% hint style="warning" %}
O banco de dados do LCC é criptografado, e dentro deste backup compactado terá o arquivo chamado`crypt.yml`, cujo é a chave para descriptografar durante a restauração.

Sem esta chave será impossível restauração do banco de dados.
{% endhint %}

### Backup do Banco de Dados

1. Para realizar o backup do banco de dados do LCC, execute o comando abaixo;

   Comando: `lcc-cli database --backup`
2. O backup terá a extensão .sql com a data e hora da execução do comando de criação do backup.

   ![](/files/XExJzcSdLyFsV49b5Bbo)

### Restaurando Backup

1. Para realizar a restauração do LCC, é necessário extrair todos os [Arquivos de Configuração](#backup-de-arquivos-de-configuracao) para o diretório raiz do sistema `/` com o usuário root

   Comando: `tar -xzvf nome_do_arquivo.tar.gz -C /`

   ![](/files/KCy8lpa2W3b6XSFXoIQr)
2. Após extrair os arquivos, execute o comando para restaurar o LCC a partir do arquivo `.sql` criado na etapa de [Backup do Banco de Dados](#backup-do-banco-de-dados).

   Comando: `lcc-cli database --restore nome_do_arquivo.sql`
3. Verifique se está utilizando o backup correto e confirme digitando **y** e pressionando **enter**

   ![](/files/rQSENKeoTPGsn0xAhFuJ)

### Iniciando os Containers

1. Após a restauração ser concluída, execute os comandos para inicar os Containers.
   1. **Container lcc\_console**\
      Comando: `docker start lcc_console`
   2. **Container lcc\_worker**\
      Comando: `docker start lcc_worker`
   3. **Container lcc\_alert\_report**\
      Comando: `docker start lcc_alert_report`
2. Veja o exemplo na imagem abaixo:

   ![](/files/ihzIljf7DtW7Lm3x79p1)
3. O LCC estará pronto para o uso normalmente após a inicialização dos Containers finalizarem.

   ![](/files/X80kUMatkkAWyiGAJvrT)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.linuxcontrolcenter.com.br/conf-integrations/configuracoes/backup-and-restore.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
