"statoverride 파일에서 알 수없는 사용자 'elasticsearch'"오류를 해결하는 방법?


8

Elastic Search를 설치하려고하는데 elasticsearch-2.3.4.deb파일 을 다운로드했습니다 . 명령을 사용하려고하면 :

sudo dpkg -i elasticsearch-1.7.2.deb

이 오류가 출력됩니다.

dpkg: unrecoverable fatal error, aborting: unknown user 'elasticsearch' in statoverride file

이 문제를 어떻게 해결할 수 있습니까?

답변:


19

제 경우에는 다음 단계를 수행했습니다.

  • 머신에서 Elasticsearch 인스턴스를 완전히 제거하여 시작하십시오.

    apt remove --purge elasticsearch
    apt autoremove
    
  • 그런 다음 /var/lib/dpkg/statoverride편집기 에서 파일을 열고 elasticsearch사용자를 언급하는 행을 제거하십시오 .

그것은 수동으로 일반적으로 단지에 의해 수정 된 파일 편집 관련이 있기 때문에 그것은 이상적인 솔루션이 아니다 dpkg자체를하지만, 실행 dpkg-reconfigure하고 apt --reinstall install나를 위해 일을하지 않았다; 이것이 최후의 수단이었습니다.


1
'apt autoremove'가 필요하지 않았습니다. statoverride를 편집하는 것은 속임수입니다
user1007727

감사합니다! 추가 데이터 포인트가 있으면 좋습니다. 내가 autoremove필요했기 때문에 어쨌든 호출을 떠나고 있는데 (IIRC), 시스템 최악의 경우를 어지럽히는 데 도움이됩니다.
Jules

5

파일을여십시오

/var/lib/dpkg/statoverride

다음과 같이 보일 것입니다 :

root elasticsearch 755 /var/log/elasticsearch

또는

root elasticsearch 755 /var/lib/elasticsearch

그렇다면 dpkg-statoverride --remove를 실행하십시오.

dpkg-statoverride --remove /var/log/elasticsearch
dpkg-statoverride --remove /var/lib/elasticsearch

2

난 그저 필요해

sudo dpkg-statoverride --remove /var/lib/elasticsearch
sudo dpkg-statoverride --remove /var/log/elasticsearch

2

나를위한 문제는 기본 사용자 이름을 변경하여 서버의 이름 지정 체계에 부합한다는 것입니다.

이 문제를 해결하여

/var/lib/dpkg/statoverride

파일 이름을 바꾸고 이전 이름을 새 이름으로 바꿉니다. 응용 프로그램을 제거 할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.