Solaris - 모든 사용자에 대해 PATH를 영구적으로 업데이트합니다.

Solaris - 모든 사용자에 대해 PATH를 영구적으로 업데이트합니다.

Solaris 11 시스템에 JDK와 Groovy를 설치했습니다. 이제 쉘을 열 때마다 PATH 변수에 bin 디렉토리가 포함되도록 설정하고 싶습니다.

내가 이해한 바로는 파일 끝에 다음 줄을 추가하면 /etc/profile문제가 해결됩니다.

JAVA_HOME=/usr/jdk/instances/jdk1.7.0
PATH=${PATH}:${JAVA_HOME}/bin

GROOVY_HOME=/usr/local/bin/groovy-2.1.3
PATH=${PATH}:${GROOVY_HOME}/bin

export PATH

그러나 Putty 세션을 다시 시작하면 JAVA_HOME 및 GROOVY_HOME 변수만 영향을 받습니다. PATH 변수는 변경되지 않고 그대로 유지됩니다.

/usr/bin:/usr/sbin

PATH 변수를 덮어쓸 수 있는 /etc/profile 이후에 실행되는 다른 스크립트가 있는지 궁금합니다. 하지만 어디를 봐야할지 모르겠습니다.

아니면 다른 질문이 있나요?


의견에서 제안한 대로 대신 다음 줄을 사용해 보았지만 불행히도 동일한 효과가 있었습니다.

JAVA_HOME=/usr/jdk/instances/jdk1.7.0
GROOVY_HOME=/usr/local/bin/groovy-2.1.3
export PATH=${PATH}:${GROOVY_HOME}/bin:${JAVA_HOME}/bin

답변1

/etc/default/login로그인 쉘을 확인하십시오 . 여기서 초기 경로를 강제로 설정할 수 있습니다.

실행 중인 Solaris 버전에 따라 /etc/profile에 변수를 추가하면 작동합니다. Solaris의 경우 보다 이식 가능한 접근 방식은 PATH 변수를 별도로 설정하고 내보내는 것입니다.

JAVA_HOME=/usr/jdk/instances/jdk1.7.0
GROOVY_HOME=/usr/local/bin/groovy-2.1.3
PATH=${PATH}:${GROOVY_HOME}/bin:${JAVA_HOME}/bin
export PATH

Solaris 11( bash기본 셸)은 구성 파일에서 제대로 작동하지만 이전 Solaris 버전에서는 export PATH=...구문을 예상대로 구문 분석하지 않거나 전혀 구문 분석하지 못할 수 있습니다.

또한 사용자의 초기 경로만 변경한다는 점을 기억하세요. /etc/profile사용자의 글을 읽기 전에 먼저 읽어보세요..profile

기본적으로 Solaris 사용자는 일반적으로 기본 경로가 포함된 자체 .profile파일을 얻습니다.

solaris:~$ grep PATH .*
.profile:export PATH=/usr/bin:/usr/sbin

이 .profile을 읽는 중이므로뒤쪽에귀하가 수정한 콘텐츠 /etc/profile, 변경 사항은 $PATH삭제되고 사용자의 항목이 이어집니다.

파일을 편집하여 새 사용자에 대해 이러한 변경 사항을 추가할 수 있지만 /etc/skel/.profile기존 사용자에 대해 변경 사항을 영구적으로 적용하려면 개인 .profiles를 편집하거나 사용자가 직접 편집하지 않은 경우 덮어써야 합니다.

관련 정보