Как загрузить файл ldif на сервер ldap Samba-dc?

Для локальной разработки я создаю файл следующим образом:

      version: '3.4'

networks:
  dsm:

services:
  samba:
    image: instantlinux/samba-dc:latest
    container_name: samba-dc
    cap_add:
      - CAP_SYS_ADMIN
    hostname: inno.tech
    environment:
      DOMAIN_ACTION: provision
      REALM: my.company
    volumes:
      - etc:/etc/samba
      - lib:/var/lib/samba
    ports:
      - "389:389"
    secrets:
      - samba-admin-password

volumes:
  etc:
  lib:

secrets:
  samba-admin-password:
    file: secrets.yaml

Также я использую тот же сервер в тестах с использованием testContainers.

      val adminPasswordFile = getSecretPassword(ResourceUtils.getFile("classpath:$SECRET_FILE_NAME"))
        val domainName = getDomainName(ResourceUtils.getFile("classpath:$APPLICATION_CONFIG_FILENAME"))

val secretPathInContainer = "/run/secrets/samba-admin-password"
// Create and start the container
return GenericContainer(SAMBA_IMAGE)
        .withEnv("DOMAIN_ACTION", "provision")
        .withEnv("REALM", domainName)
        .withEnv(
            "ADMIN_PASSWORD_SECRET",
            adminPasswordFile,
        )
        .withPrivilegedMode(true)
        .withExposedPorts(389)
        .withCopyToContainer(
            MountableFile.forClasspathResource(SECRET_FILE_NAME, Transferable.DEFAULT_FILE_MODE),
            secretPathInContainer,
        )

В обоих случаях я хотел бы иметь возможность загружать данные LDAP (например, при запуске, но это не обязательно) для обоих случаев, но в основном для тестов.

ldif- файл у меня уже есть , поэтому я начал его исследовать (но если есть другие способы сделать это - я готов их использовать)

Источник моих идей: https://wiki.samba.org/index.php/Back_up_and_Restoring_a_Samba_AD_DC#Offline.2Flocal_DC_backup .

Я нашел команду:

      sudo samba-tool domain backup restore --backup-file=<tar-file> --newservername=<DC-name> --targetdir=<new-samba-dir>

Но здесь используется tar- файл.

На основе https://lists.samba.org/archive/samba/2018-November/219439.html .

и

Он также работает только с файлами tar .

Честно говоря, я пытался сделать резервную копию с помощью команды, но безуспешно (просто зависает):

Если я добавлю sudo в начале - я увижу ошибку, котораяsudo: not foundи я понятия не имею, что делать дальше.

Также я встретил эту ссылку:

https://wiki.samba.org/index.php/Administer_Unix_Attributes_in_AD_using_samba-tool_and_ldb-tools

Где я нашел команду

      ldbmodify -H /usr/local/samba/private/sam.ldb /tmp/group.ldif -U Administrator

но когда я попытался его выполнить, у меня возникла ошибка:

Невозможно открыть tdb '/usr/local/samba/private/sam.ldb': такого файла или каталога нет.

      Failed to connect to '/usr/local/samba/private/sam.ldb' with backend 'tdb': Unable to open tdb '/usr/local/samba/private/sam.ldb': No such file or directory
Failed to connect to /usr/local/samba/private/sam.ldb - Unable to open tdb '/usr/local/samba/private/sam.ldb': No such file or directory

есть ли способ как-нибудь загрузить файл?

0 ответов

Другие вопросы по тегам