linux sudo环境变量设置

这是第一次在博客园中写自己的随笔,也是第一次使用Markdown的编辑环境,值得纪念一下!希望在以后学习linux的道路上能多多记录自己的学习心得和遇到问题的解决方法,朝着运维的方向迈出坚实的脚步。

问题描述

最近在编译一个开源软件时,在好不容易配置好各种编译环境之后,由于各种权限问题还是无法正常进行编译,所以索性切换到root用户下进行编译,这时自然不存在所谓的无权限问题了。但是有时候并不想在root用户和普通用户来回切换,说白了就是懒得输入root用户的密码,太长了。于是就想到了sudo命令,但是关键问题就出来了,切换到root用户下能正常编译,使用sudo命令竟然无法编译,提示错误为相关的编译器没有找到,这种问题对于我这种linux的小白来说有点困难,毕竟使用root用户是可以编译通过的。好了以下详细记录自己解决问题的办法吧。

环境变量配置

  1. 对于全局环境变量配置使用/etc/bash.bashrc/etc/profile两个文件,这两个文件中存放了全局的环境变量。也就是说是所用用户共享的环境变量。当然让我困惑的也正是这一点。
  2. 对于局部环境变量,也就是针对每个用户的环境变量,在每个用户家目录下面都有两个隐藏文件分别是.bashrc.profile,这两个文件中记录了,该用户专属的环境变量,当然如果在全局环境变量和局部环境变量中都定义了同一个环境变量的情况下,就会出现环境变量路径重复的情况,不过好像也没有什么大的问题。
  3. 在执行sudo命令的时候,我以为由于环境变量是配置的全局环境中的,所以应该不用管环境变量的问题。带着这个问题去百度了一下找到了有关问题的解释su和sudo的区别,但是关于这篇文章中说的sudo使用的是root的环境变量,我在root的家目录下的.profile文件中添加了需要的路径,但是并没有解决问题,关于这点还带进一步学习啊。其实对于linux的相关文档读的太少了,有待加强。原来sudo使用的是自己的环境变量,于是继续找答案,在sudo环境变量传递中找到了一点思路。但是使用该方法也没有解决问题,可能是自己人品太差了。最后只能使用杀手锏了,在secure_path中添加了需要的路径,这次终于编译通过了。

结论

  1. linux主要作为一个服务器使用,为了保证系统的安全性和给予用户足够的权限执行相关操作,采取的sudo命令使用自己的环境变量也是很有道理的。还是以前对于sudo命令理解的太浅了,经过这回问题的解决,也算是学习了好多,加深了对于sudo命令使用的认识。
  2. 就一个看似很小的环境变量的问题在linux中竟然能引发这多一连串的问题,看来学习linux还有很漫长的道路要走啊,希望自己能每天都进步一点,最终能实现自己linux运维和开发的目标。

转载于:https://www.cnblogs.com/chinazhonghao/p/5534149.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值