zoukankan      html  css  js  c++  java
  • sudo如何保持当前用户的环境变量?

    现象,我在/etc/profile里设置全局代理,然后使用命令

    1、curl http://www.baidu.com  走代理

    2、sudo curl http://www.baidu.com 并没有走代理

    使用env和sudo env查看环境变量,发现代理设置只存在于env里,sudo env里并没有代理的信息

    那么如何使用sudo的时候,把环境变量也带进去呢?

    方法一、

    /etc/sudoers中添加以下内容作用相同:

    Defaults !env_reset

    方法二、

    可以把需要传递环境变量的命令设置到env_keep

    Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"

    可以看到sudo pip和pip环境变量是不同的

    传递命令别名

    当前用户的命令别名不会应用到sudo。如果需要这样,只需在~/.bashrc或者/etc/bash.bashrc中加入:

    alias sudo='sudo '

    参考:

    1、https://www.ibm.com/developerworks/cn/aix/library/au-sudo/

    2、https://wiki.archlinux.org/index.php/Sudo_%28简体中文%29

    3、http://blog.csdn.net/dabao1989/article/details/51955559

  • 相关阅读:
    描述网络的优点与缺点
    外键之表格三种关系
    Mysql完整性约束
    Mysql数据类型
    mysql的基本语句
    Mysql的基本安装
    type与object的关系
    反射
    面向对象内置方法(进阶)
    Python 的五种io模型理解
  • 原文地址:https://www.cnblogs.com/shengulong/p/7593614.html
Copyright © 2011-2022 走看看