virtualbox - Redis使能密码后Ubuntu虚拟机无法正常关机
阿神
阿神 2017-04-25 09:02:50
0
3
1010

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

  • VirtualBox V5

  • Ubuntu Server 12.04LTS 32bit

  • Python 2.7.3

  • MySQL 5.5

  • Redis

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

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

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

阿神
阿神

闭关修行中......

모든 응답(3)
刘奇

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

으아아아
Ty80

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

阿神

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

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

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

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿