찾다

 >  Q&A  >  본문

virtualbox - Redis使能密码后Ubuntu虚拟机无法正常关机

我一直在虚拟机中开发自己的服务器程序。

Redis缺省是没有密码的,我使能密码后,发现虚拟机无法正常关机。关机时Redis报告脚本密码错误,并一直死循环。

具体看截图。有:(error) NOAUTH Authentication required.

但是我不知道redis停止脚本在哪里。求帮助。

阿神阿神2772일 전1018

모든 응답(3)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-04-25 09:04:50

    저도 같은 문제에 직면했습니다.
    당시 내 상황은 redis 자동 배포 및 배포를 위해 puppet을 사용했는데, redis에 대한 인증 비밀번호를 활성화하고 puppet에서 서비스를 닫은 후 puppet이 정지되어 계속할 수 없었습니다. 나중에 수동으로 문제를 찾아봐도 같은 현상이 발견되었습니다.
    사실 그 이유는 Redis 작성자가 소스코드 패키지에 제공한 서비스 제어 스크립트에서는 인증 비밀번호 추가 후 서비스 종료 방법을 고려하지 않았기 때문입니다.
    비밀번호를 사용한 종료 방법은 다음과 같습니다. redis-cli -p port-a 비밀번호 종료
    저는 puppet을 사용하여 redis를 배포하기 때문에 이 스크립트를 puppet 파일 템플릿으로 만들었습니다. 비밀번호를 추가하면 자동으로 실행됩니다. 서비스 제어 스크립트를 수정합니다. 템플릿을 게시했는데 도움이 되길 바랍니다.

    으아아아

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-25 09:04:50

    Redis은 클라이언트에서 SHUTDOWN 명령을 실행하여 닫을 수 있습니다.

    회신하다
    0
  • 阿神

    阿神2017-04-25 09:04:50

    현재는 임시로 Redis를 종료하는 스크립트를 만들어 놓고, 가상머신을 종료하기 전 수동으로 실행해 봤습니다. 약간의 마찰.

    셸 프로그래밍이 익숙하지 않기 때문에 스크립트를 배워야 합니다. 그러나 redis-cli에 키가 없으면 NOAUTH 오류를 반환해야 합니다. 이를 캡처한 후 판단하고 redis-cli+key를 재사용하여 Redis를 닫아야 합니다.

    마지막으로 /etc/init 디렉토리에서 해당 종료 스크립트를 찾아 통합 방법을 확인하세요.

    회신하다
    0
  • 취소회신하다