我试图/etc/profile.d/sh.local
在系统构建时从系统中删除/删除(不使用它并且安全扫描标记它),但是它不起作用。我认为/etc/profile.d/sh.local
是从/etc/profile
(片段/etc/profile
)创建的:
for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
我通过删除from 的/etc/profile
部分创建了一个新服务器,并构建了一个没有该部分的新服务器,但当我登录时,我仍然看到./etc/profile.d/sh.local
/etc/profile
sh.local
/etc/profile.d/sh.local
显然这个文件是由我丢失的其他进程创建的?
答案1
/etc/profile.d/sh.local
是在setup
包中提供的,它不是由其他脚本创建的。您可以将其删除。
您引用的代码片段/etc/profile
负责处理来源sh.local
(如果存在);它不会创造它。