Oleksiy Svintsitskiy Asked: 2020-12-02 07:28:25 +0800 CST2020-12-02 07:28:25 +0800 CST 2020-12-02 07:28:25 +0800 CST 远程命令有不同的umask 772 ssh user@host "umask"给 0174 ssh user@host服务器外壳的 umask 给出 0002 你能解释一下它是怎么发生的吗? UPD:实际上,是 /etc/passwd 覆盖了 umask。 unix bash ssh file-permissions umask 1 个回答 Voted Best Answer Tommiie 2020-12-02T07:35:17+08:002020-12-02T07:35:17+08:00 从 bash 手册页: 当一个不是登录 shell 的交互式 shell 启动时,bash 读取并执行来自 的命令~/.bashrc(如果该文件存在)。(...) 当作为交互式登录 shell 或带有选项的非交互式 shell 调用时--login,它首先尝试按顺序从/etc/profileand 读取和执行命令~/.profile。 在您的第一个命令 ( ssh user@host "umask") 中,它不是登录 shell,在第二种情况下,它是。因此,请检查您的~/.bashrc文件以获取umask 0002命令。
从 bash 手册页:
在您的第一个命令 (
ssh user@host "umask"
) 中,它不是登录 shell,在第二种情况下,它是。因此,请检查您的~/.bashrc
文件以获取umask 0002
命令。