selinux 시스템 범위를 갖춘 Composer

selinux 시스템 범위를 갖춘 Composer

저는 우분투에 5명의 사용자가 있고 그들 모두에게 Composer와 phpmd와 같은 다른 패키지를 설치하고 싶습니다. 작곡가가 설치되어 있습니다 /usr/local/bin/.

Composer와 함께 설치된 phpmd는 에 있습니다 ~/.composer/vendor/bin/. 위의 경로를 심볼릭 링크하여 /usr/local/bin/compbin에 추가했습니다./etc/profile.d/comp.sh

어디서나 phpmd와 Composer를 실행할 수 있습니다. 다른 사용자는 Composer를 실행할 수 있지만 Composer를 통해 설치된 패키지는 실행할 수 없습니다.

모든 사용자를 동일한 그룹에 추가했지만 chmod -R 775 ~/.composer/venodr/bin/여전히 명령을 찾을 수 없습니다. 나는 그것이 /usr/local/bin/compbin그들의 길임을 알 수 있었다.

이렇게 하면 ls -Z다른 사람들과 같은 컨텍스트가 표시되지 않습니다 /usr/local/bin. ?문맥보다는 물음표일 뿐입니다 .

내가 뭘 잘못했나요? Composer 및 기타 패키지를 시스템 전체에 설치하는 가장 좋은 방법은 무엇입니까?

작곡가를 루트로 실행하려고 하면 불평만 하고 아무것도 하지 않습니다.

답변1

작동하게 만들다:

/etc/profile.d/comp.sh에서 다음을 설정하십시오.

export PATH=$PATH:/usr/local/composer/vendor/bin
export COMPOSER_HOME=/usr/local/composer
export COMPOSER_VENDOR_DIR=/usr/local/composer/vendor

/usr/local/composer에 대한 권한 및 그룹이 변경되었습니다.

chown -R :users /usr/local/composer
chmod -R 775 /usr/local/composer

이제 모든 것이 예상대로 작동합니다.

관련 정보