Active Directory 계정으로 Systemd 서비스를 실행하는 방법은 무엇입니까?

Active Directory 계정으로 Systemd 서비스를 실행하는 방법은 무엇입니까?

저는 Ubuntu 17.10에서 NAS를 실행하고 있으며 이제 도메인 컨트롤러로 실행되도록 Samba 구성을 변경했습니다.

제가 취하고 싶은 다음 단계는 로컬 계정 대신 도메인 계정을 사용하여 실행되도록 NAS의 일부 Systemd 서비스를 수정하는 것입니다.

예를 들어:/lib/systemd/system/[email protected]

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target
[email protected]

[Service]
User=%i
ExecStart=/usr/bin/syncthing -no-browser -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

[Install]
WantedBy=multi-user.target

이것이 가능합니까? 그렇다면 어떻게? 줄을 User=%i다음으로 변경하려고 시도했지만 User=SAMDOM\syncthing서비스를 다시 시작한 후 Systemd에서 오류가 발생합니다.

Invalid user/group name or numeric ID: SAMDOM\syncthing

다음을 통해 사용자를 찾고 올바른 UID와 GID를 표시할 수 wbinfo -u있습니다 . id "SAMDOM\syncthing"Systemd에서 도메인 계정을 사용하는 방법에 대한 자세한 내용을 인터넷에서 검색했지만 성공하지 못했으므로 여기 누군가가 이 작업을 수행하는 방법을 알고 있기를 바랍니다.

추신: 추가 정보(예: 로그, Samba 구성)가 필요한 경우 최대한 빨리 제공하겠습니다.

답변1

나는 그것을 시도했고 작동합니다. 내 문제는 "syncthing"이라는 이전 로컬 계정이 여전히 존재하고 이름 충돌이 발생한다는 것입니다. 로컬 계정을 제거한 후 Systemd는 도메인 계정을 사용했고 모든 것이 잘 작동했습니다.

User=%i제가 이해한 바로는 "syncthing"이라는 이름이 자동으로 사용되므로 유닛 파일에 보관할 수도 있습니다 .

생각보다 쉽습니다!

관련 정보