将 sudo umask 与调用它的用户区分开来

The*_*ist 5 security permissions umask debian sudo

问题:我将我umask的用户设置为 0077。现在我使用sudo而不是su在我需要超级用户访问时使用,问题是每当我使用sudo类似的东西执行软件安装时sudo pip3 install sympy,所有安装的软件都会得到权限被 0077 屏蔽,这意味着任何用户都无法访问所有这些库!!

问题:当我的用户调用的掩码为 0022 时,如何让所有 sudo 调用的掩码都为 0022?

注:我没加行Defaults umask = 0022sudo visudo,仍然没有工作。这是所有要做的事情吗?

如何设置我的umask:我将行umask 0077添加到~/.bashrc~/.profile

Tho*_*key 5

这似乎被忽视了:

Defaults umask_override
Run Code Online (Sandbox Code Playgroud)

执行要求的操作(请参阅sudoers 联机帮助页):

umask_override
如果设置,sudo将不加修改地设置umask为指定的sudoers。这使得可以在 sudoer 中指定比用户自己更宽容 umaskumask并匹配历史行为。如果umask_override未设置,sudo则将 umask 设置为用户的 umask 与sudoers. 默认情况下此标志是关闭的。如果设置,sudo即使没有 I/O 日志记录消失,也会在伪 pty 中运行命令。sudo可以想象,在其下运行的恶意程序可能会在主程序执行完毕后分叉一个后台进程,该进程保留在用户的终端设备上。使用此选项将使这成为不可能。默认情况下此标志是关闭的。

  • 这就是“visudo”的用途。 (2认同)