如何为sudo命令定义PATH环境变量

如何为sudo命令定义PATH环境变量,第1张

当你使用sudo去执行一个程序时,处于安全的考虑,这个程序将在一个新的、最小化的环境中执行,也就是说,诸如PATH这样的环境变量,在sudo命令下已经被重置成默认状态了。所以当一个刚初始化的PATH变量中不包含你所要运行的程序所在的目录,用sudo去执行,你就会得到"command not found"的错误提示。

要想改变PATH在sudo会话中的初始值,用文本编辑器打开/etc/sudoers文件,找到"secure_path"一行,当你执行sudo 命令时,"secure_path"中包含的路径将被当做默认PATH变量使用。

添加所需要的路径(如 /usr/local/bin)到"secure_path"下,在开篇所遇见的问题就将迎刃而解。

Defaultssecure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

这个修改会即刻生效。

Ubuntu的sudo与su命令使用与开启root帐户 http://www.linuxidc.com/Linux/2008-01/10685.htm

sudo: sorry, you must have a tty to run sudo http://www.linuxidc.com/Linux/2012-11/75153.htm

Linux配置sudo权限 http://www.linuxidc.com/Linux/2012-10/71795.htm

sudo配置临时取得root权限 http://www.linuxidc.com/Linux/2012-09/69525.htm

Linux下解决用户不能执行sudo的方法 http://www.linuxidc.com/Linux/2012-07/64694.htm

Linux系统管理员不可不知的命令:sudo http://www.linuxidc.com/Linux/2013-07/87855.htm

sudo使用之实现权限分配 http://www.linuxidc.com/Linux/2014-02/96996.htm

参考 https://technology.siprep.org/running-sudo-commands-in-automator/#:~:text=If%20you%27re%20wondering%20how%20to%20run%20sudo%20%28for,over%20to%20the%20workflow%20area%20on%20the%20right.

1 打开mac中的Automator程序

2 创建一个“应用程序”

3 点击“运行AppleScript”这个action,拖动到右侧面板

4 输入运行sudo的命令,比如

如果你要运行一个脚本,运行:

5 保存这个“应用程序”

6 尝试打开这个应用程序,测试他的可用性。这时应该会提醒你输入密码,因为你执行了 sudo 命令。

7 在系统偏好设置------用户与群组------登录项中,添加刚保存的application


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7906344.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存