如何在 Centos 7 上为根用户安装 AWS CLI - /usr/local/bin 不在根用户的路径中

How to install AWS CLI for root user on Centos 7 - /usr/local/bin not in PATH for root user

当我在 CENTOS 7 上为根用户安装 AWS CLI 时,它会像其他用户一样将其安装到 /usr/local/bin。问题是,/usr/local/bin 不在 root 用户的 $PATH 中。起初我以为这是CENTOS的一个bug,已经存在很长时间了,但也有可能是出于安全原因,我不知道。

然后为根用户安装 AWS CLI 的最佳做法是什么?

CentOS 自 2012 年起在 CentOS 6 中出现此 appears to a bug logged,但截至目前尚未修复。

将 运行ning AWS CLI 作为根用户,您仍然可以通过 运行ning /usr/local/bin/aws 运行 它,尽管我知道这并不理想。此外,如果可能,您应该尽量避免 运行 将 AWS CLI 作为 root,而是 运行 作为命名用户。

根据文档,您可以使用 --bin-dir-b 指定不同的 bin 目录,这样您就可以检查 root 用户和命名用户在其 $PATH 中的路径变量。

为了补充 Chris 的回答,您可以将 AWS CLI v2 安装在 root 可见的文件夹中,例如 /usr/local/sbin 如下:

sudo yum install unzip
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install --bin-dir /usr/local/sbin

然后确认:

aws --version

应该产生:

aws-cli/2.0.44 Python/3.7.3 Linux/3.10.0-1127.el7.x86_64 exe/x86_64.centos.7