并且用户无法更改此限制
把它们删掉。只要这些文件存在,就一定要运行其中的命令。用 bash --norc 的方式可以让 bash 不去执行 ~/.bashrc 中的命令,bash --noprofile -l 可以启动一个 login shell,既不执行 /etc/profile 中的命令,也不执行 ~/.bash_profile, ~/.bash_login 以及 ~/.profile 中的命令。除此之外好像没有别的办法。要想让用户无法更改这种限制,好像不太可能。聪明的用户总是有办法改回来。
也许,你可以把 bash 的源代码修改一下,不让它执行 ~/.bashrc 和 ~/.bash_profile 中的命令。把原来的 bash 改个名字,然后用一个脚本替代 bash 也是一个选择,不过要是用户觉察有异的话,他看了脚本内容还是可以绕开你的限制的。
也许,你可以把 bash 的源代码修改一下,不让它执行 ~/.bashrc 和 ~/.bash_profile 中的命令。把原来的 bash 改个名字,然后用一个脚本替代 bash 也是一个选择,不过要是用户觉察有异的话,他看了脚本内容还是可以绕开你的限制的。
温馨提示:答案为网友推荐,仅供参考