Shell 驱动程序安装时出现“ACCEPT_EULA=Y”错误

Dav*_*ave 2 bash installation driver eula environment-variables

如此处所述我尝试使用此代码(对原始代码稍作修改)在 shell 中安装以下驱动程序:

curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/debian/8/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
Run Code Online (Sandbox Code Playgroud)

但我在最后一个命令中收到错误:

sudo: sorry, you are not allowed to set the following environment variables: ACCEPT_EULA
Run Code Online (Sandbox Code Playgroud)

搜索后,我似乎在其他地方找不到这个确切的错误。

一种解决方案是运行最后一个命令而不使用ACCEPT_EULA=Yas sudo apt-get install msodbcsql17。然后Y根据提示输入即可。这确实有效,但我想为其他用户运行上述安装,而不需要他们的输入。

  • 有没有办法解决上述错误,以便我可以使用ACCEPT_EULA=Y,或者
  • 或者是否有一种简单的方法可以Y自动输入 EULA 响应,以便最终用户无需采取任何操作?

先感谢您。

tha*_*guy 8

您似乎有权运行任意命令,但无权修改环境。

简单的解决方法是将环境更改移交给命令:

sudo env ACCEPT_EULA=Y apt-get install msodbcsql17
Run Code Online (Sandbox Code Playgroud)