首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是谁-- RPM-SPEC

我是谁-- RPM-SPEC
EN

Stack Overflow用户
提问于 2013-02-12 00:31:20
回答 2查看 278关注 0票数 0

我只是试着找出谁调用root或sudo,因为我不想在root的主文件夹中设置一些东西,当我在终端中尝试它的工作完美,但不符合规范,我做错了什么?

终端:

代码语言:javascript
复制
[Mcfly@Mcfly ~]$ whoami=$(who am i | awk '{print $1}')
[Mcfly@Mcfly ~]$ echo $whoami
Mcfly

等级库

代码语言:javascript
复制
%define whoami %(who am i | awk '{print $1}')
echo "The user that built this is %{whoami}"
the user that built this is '%{whoami}'

你能帮我吗?

或者有一个简单的方法来知道rpm-spec中的用户路径,我的意思是/home/mcfly/ no /root?

问候

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-13 10:22:16

您需要的是$SUDO_USER,这是一个由sudo方便地为您设置的变量。

如果您想确保root不执行安装,请将以下代码放入您的%pre

代码语言:javascript
复制
if [ -z "$SUDO_USER" ]; then echo "Please use sudo to ensure configuration files are installed in proper location."; exit 99; fi
if [ z"$SUDO_USER" == "zroot" ]; then echo "Please use sudo from a non-root account to ensure configuration files are installed in proper location."; exit 99; fi
票数 0
EN

Stack Overflow用户

发布于 2013-02-12 00:38:20

我不是Linux专家,您不会解释您当前的方法是如何失败的,但是id命令看起来是一个更简单的替代方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14816447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档