栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

sudo -H是做什么的?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

sudo -H是做什么的?

通常

man sudo
(确切的文本可能会有所不同,但是会相似):

-H

-H(HOME)选项请求安全策略将HOME环境变量设置为密码数据库指定的目标用户的主目录(默认为root)。根据策略,这可能是默认行为。

那么,为什么这甚至是一个选择呢? 通常,使用“ sudo”不会更改$ HOME环境变量。

例如:

 echo $HOME $USER/home/testuser testuser sudo bash -c 'echo $HOME $USER'/home/testuser root sudo -H bash -c 'echo $HOME $USER'/home/root root

您可以看到普通的sudo会将我的用户从“ testuser”更改为“ root”,但不会将$ HOME设置为什么,而sudo -H还将变量从“
my”主目录更改为root的主目录。

就你而言

pip警告您它是作为root用户执行的,并且想要修改$ HOME中的内容,该内容设置为’/ Users /
petertao’,该用户不是root用户(很可能是“ petertao”用户)。该警告表明pip使用$
HOME缓存文件,但由于文件夹所有权差异而已禁用其自身的缓存。

当然,以root pip身份执行时可以修改’/ Users / petertao / Library / Caches /
pip’,因为root(几乎)是万能的。稍后可能会造成麻烦,因为在没有root用户的情况下运行的程序将无法再覆盖或修改这些文件。而是pip拒绝写入另一个用户拥有的目录。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/633883.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号