저는 현재 재미와 교육적 목적으로 Linux를 탐색하고 실험하고 있습니다.
/etc/bash.bashrc
내용을 삭제 했는데 /etc/profile
루트 디렉터리나 로컬 사용자의 홈 디렉터리에 아무것도 구성되어 있지 않으며 재부팅도 수행했습니다.
하지만 실행하면 printenv PATH
path 값이 여전히 남아 있습니다.
$PATH=usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/games
$PATH를 정의하는 것은 무엇입니까?
편집하다:
Kali Linux를 사용하고 있다는 사실을 잊어버렸습니다.
나는 이 게시물의 댓글 섹션에서 범인 중 한 명이 /etc/profile.d/kali.sh
Flyingdrifter라는 사람에 의해 언급되었다는 것을 알게 되었습니다 ->
bash에서 PATH 변수가 설정된 위치에 대한 전체 보기
(그의 배포판은 LinuxMint이지만)
이제 $PATH 변수가 다음으로 축소되었습니다.
$PATH=/usr/local/bin:/usr/bin:/bin:/usr/games
이는 PATH 변수가 설정된 마지막 파일이 있을 수 있음을 의미합니다.
답변1
금액 도 확인해보세요 /etc/login.defs
./etc/environment
자세한 내용은 여기를 참조하세요: bash에서 PATH 변수가 설정된 위치에 대한 전체 보기
답변2
대부분의 배포판에는 비슷한 것이 있습니다 (귀하의 배포판을 확인
/etc/bash.bashrc
하고/etc/profile
그러한 코드가 있는지 확인하십시오)for file in /etc/profile.d/*.sh ; do . $file ; done
pam_env
( 라는 파일이 있습니다 .매뉴얼 페이지), 기본적으로 설정됩니다/etc/environment
.