Centos7에는 다음이 있습니다 /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
그리고 다음 /etc/bashrc
( running 에서 ~/.bashrc
):
for i in /etc/profile.d/*.sh; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
데비안과 우분투는 이것을 에서만 실행하는데 /etc/profile
, 이것이 제가 기대하는 것입니다.
- Centos가 두 가지 모두에서 실행하는 이유는 무엇입니까?
- 왜 차이가 있나요
sh.local
?
답변1
첫 번째 문제에 대해서는 잘 모르겠지만 그 이유는 Debian 기반 쉘이 호출될 때 기본적으로 Red Hat 기반 쉘보다 sh
"더 멍청하게" 동작하기 때문이라고 생각합니다 .bash
sh
이것빨간 모자 오류이는 sh.local
SA 보장을 위한 것임을 설명합니다.모든 것다른 것들은 에서 발견되었습니다 /etc/profile.d
.