我在将封隔器安装到EC2机器上时遇到问题。我已经在Windows PC上下载了Linux packer二进制文件并将其上传到实例。
我将它放在目录~/packer_new
中,并尝试了两种不同的方法将它添加到路径中,因为它产生了这个错误:
/usr/share/cracklib/pw_dict.pwd:权限被拒绝 / usr / share / cracklib / pw_dict:权限被拒绝
当我只运行packer
命令时。
在包装工website上,它说明了
要解决此问题,您可以创建一个使用不同名称(如packer.io)的打包程序的符号链接,或使用其绝对路径调用所需的打包器二进制文件,例如:的/ usr /本地/封隔器。
我通过使用此命令创建符号链接完成了第一部分:
sudo ln -s packer_new/packer /usr/bin/packer.io
当我再次运行packer
命令时,它仍会产生相同的错误。我应该运行不同的命令吗?
第二种方法是将路径添加到~/.bash_profile
:
export PATH=$PATH:~/packer_new/
请注意,我在bin的bash_profile中还有另一个PATH变量:
PATH=$PATH:$HOME/.local/bin:$HOME/bin
,不确定这是否会影响将PATH设置为打包器...
但是通过添加路径,它在运行packer
时也会产生相同的错误。
我该如何解决这个问题?
还有一个问题,他们说:
是什么意思使用其绝对路径调用所需的打包器二进制文件,例如:的/ usr /本地/封隔器。
答案 0 :(得分:1)
当我再次运行packer命令时,它仍会产生相同的错误。我应该运行不同的命令吗?
运行packer.io
并且链接命令错误。你应该sudo ln -s $HOME/packer_new/packer /usr/bin/packer.io
第二种方法是添加
~/.bash_profile
的路径:export PATH=$PATH:~/packer_new/
您必须将路径放在PATH
的前面。即。
export PATH=$HOME/packer_new:$PATH
使用其绝对路径调用所需的打包器二进制文件,例如:的/ usr /本地/封隔器。
这意味着您始终可以使用绝对路径运行。在您的情况下$HOME/packer_new/packer
。
答案 1 :(得分:0)
在安装cracklib-dicts rpm之后,我遇到了同样的问题。什么对我有用
Run->which packer
/usr/sbin/packer
Remove->rm /usr/sbin/packer
sudo ln -s /usr/local/packer /usr/sbin/packer
以下是此修复程序https://learn.hashicorp.com/tutorials/packer/getting-started-install#troubleshooting的支持链接