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

Bash Shell驱动程序安装时出现“ACCEPT_EULA=Y”错误,bash,environment-variables,installation,driver,eula,Bash,Environment Variables,Installation,Driver,Eula,如上所述,我正在尝试在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 upd

如上所述,我正在尝试在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
但我在最后一个命令中得到一个错误:

sudo: sorry, you are not allowed to set the following environment variables: ACCEPT_EULA
在搜索之后,我似乎在其他任何地方都找不到这个确切的错误

一种解决方案是运行最后一个命令而不接受_EULA=Y,因为sudo apt get install msodbcsql17。然后在提示下输入Y。这确实有效,但我想为其他用户运行上述安装,而不需要他们的输入

有没有办法解决上述错误,以便我可以使用ACCEPT_EULA=Y,或者 或者,是否有简单的方法输入EULA的Y响应 自动,这样最终用户就不需要采取任何行动了?
先谢谢你

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

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

sudo env ACCEPT_EULA=Y apt-get install msodbcsql17

我没有足够的代表发表评论。 但我在python:3 docker容器中对pyodbc进行了相同的安装。 在dockerfile中,以下命令起作用:

接受_EULA=Y apt get安装-Y msodbcsql17

我在找这个17岁的司机

阅读:可以帮助查看从基本ubuntu:16.04框设置的环境

此外,还应检查:
对于microsoft第一手文档。

当我试图通过Dockerfile设置msodbcsql17时,上面的ACCEPT_EULA=Y apt get install-Y msodbcsql17命令帮了我的忙。

这是sudo的配置设置。您需要修改/etc/sudoers以允许它。对于编程问题也是如此,不是关于使用或配置Linux及其应用程序的问题。或者更适合这样的问题。这很有效。非常感谢。如果这个附加上下文对其他人有帮助:您描述的关于访问运行命令而不是修改环境的情况,可能是因为这是一个由外部公司作为服务提供的旋转Linux环境。不知道这是否重要