如何以不同用户身份安装程序?

如何以不同用户身份安装程序?

非常具体地说:

德班系统:

我想以 root 身份登录时以特定用户身份安装 Linuxbrew。

Linuxbrew 享受由用户根据用户的特定目的安装的好处。我的目标是以 root 身份(绝对是 root 身份)执行以下命令:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/linuxbrew/go/install)"

作为用户,因此出于所有目的和意图,指定用户运行了它。

动机是代表指定用户运行此命令,以便他们可以自由使用 Linuxbrew,但 root 用户已经提供了它。

注意:我想要用于教育目的的-简单-解决方案。我确信有多种深奥的方法,但越少混淆越好。这是解决方案的一部分。简单性和可读性。

答案1

su - username -c 'ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/linuxbrew/go/install)"'

我认为这是显而易见的,但如果不是,请将“用户名”替换为您要安装 Linuxbrew 的用户名。

编辑:事后看来,您可以更疯狂一点,并使用 for 循环为在 /home 下拥有主目录的任何用户安装此程序

for u in `ls /home`; do su - $u -c 'ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/linuxbrew/go/install)"'; done

答案2

这并不是用户真正的工作方式,但是就brew 而言这并不重要。您的实际问题应该是“我如何设置我的自制程序安装,以便不同的用户可以管理它”,您可以找到一个非常好的答案这里

基本上,该用户所需的只是对 /usr/local 具有写入权限,最简单的方法是授予管理员组写入权限并将用户添加到该组。

相关内容