我正在尝试运行以下命令
rabbitmq-plugins.bat enable rabbitmq_management
Run Code Online (Sandbox Code Playgroud)
它给我一个错误无法创建cookie文件h:/.
我使用的是Windows 7,Erlang版本R16B01和RabbitMQ-Server 3.1.5版
我正在使用我的工作PC,我们的公司政策将HOMEDRIVE设置为h:和HOMEPATH为/我不认为他们会让我改变这一点.
我可以在C:\ Windows下看到.erlang.cookie文件.
有人能让我知道一个解决方法吗?
提前致谢 !
Esp*_*sso 30
有同样的H:问题.在执行cli之前,将主驱动器设置为dos shell中的某个目录.
set HOMEDRIVE=C:/conf/rabbitmq :: Or your favorite dir
rabbitmq-plugins.bat enable rabbitmq_management
Run Code Online (Sandbox Code Playgroud)
使用C盘中的文件夹.rabbitmq系统会在那里写cookie文件.
fra*_*mes 10
我按照以下步骤解决了该问题:
打开文件:“Program Files/RabbitMQ Server/rabbitmq_server-/sbin/rabbitmq-env”
在文件末尾添加以下行:
REM Environment cleanup
set BOOT_MODULE=
set CONFIG_FILE=
set FEATURE_FLAGS_FILE=
set ENABLED_PLUGINS_FILE=
set LOG_BASE=
set MNESIA_BASE=
set PLUGINS_DIR=
set SCRIPT_DIR=
set SCRIPT_NAME=
set TDP0=
set HOMEDRIVE=C: <<< the new path of the .erlang.cookie
Run Code Online (Sandbox Code Playgroud)
打开 RabbitMQ 控制台
写:
4.1. rabbitmq-service stop
4.2. rabbitmq-service remove
4.3. rabbitmq-service install
4.4.rabbitmq-service start
在您的 PC 中找到“.erlang.cookie”的位置并运行以下命令:
set HOMEDRIVE=[location of ".erlang.cookie"]
rabbitmq-plugins.bat enable rabbitmq_management
Run Code Online (Sandbox Code Playgroud)
在某些情况下,您的 HOMEDRIVE 和 HOMEPATH 会被组策略(活动目录用户)覆盖,并且您每次想要启动 RabbitMQ 服务时都需要设置 HOMEDRIVE 变量。在这种情况下,你可以做的是:
rabbitmq-service remove服务
编辑rabbitmq-service.bat文件:
"!ERLANG_HOME!\bin\erl.exe" ^
-pa "!RABBITMQ_EBIN_ROOT!" ^
-boot !CLEAN_BOOT_FILE! ^
-noinput -hidden ^
-s rabbit_prelaunch ^
-setcookie "C:\Users\userName\" ^ <<< this is a place of your cookie
!RABBITMQ_NAME_TYPE! rabbitmqprelaunch!RANDOM!!TIME:~9!@localhost ^
-conf_advanced "!RABBITMQ_ADVANCED_CONFIG_FILE!" ^
..."
Run Code Online (Sandbox Code Playgroud)
保存脚本
set HOMEDRIVE=C:\Users\userName安装服务之前更改主驱动器
rabbitmq-service install重新安装服务
现在,每次重新启动时,您的服务都会自动启动,并且所有路径都正常!