시스템을보다 깨끗한 상태로 유지하려면 rpm 스펙 파일의 % preun 섹션에서 PATH 항목을 제거하려고합니다. rpm을 제거하는 동안 PATH에서 항목을 제거합니다.
은 내가 수동으로 터미널에서 실행할 때 이러한 링크가 완벽하게 작동 모두에What is the most elegant way to remove a path from the $PATH variable in Bash? 및 Linux: Remove path from $PATH variable
답변을 시도 유래에 대한 스레드의 몇 가지를 발견했다. 그러나 rpm -e xx 명령을 실행하면 작동하지 않습니다. 내 PATH이 후 성공적으로 설치처럼 보였다 경우
/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
: 경로를 제거하려면 회전 후
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/lpp/mmfs/bin
내가는/usr/LPP/MMF의/빈을 제거하기 위해 노력하고,
의 모습
질문 : 1) 이전 링크에서 언급 한 명령을 spec 파일에서 실행할 때 다른 작업을 수행해야합니까?
2) rpm 제거 중에 PATH 항목을 제거하는 몇 가지 권장 방법은 무엇입니까? 내가 사양 파일에 시도
주 명령은 다음과 같습니다
PATH=$(echo $PATH | sed -e 's;:\?/home/user/bin;;' -e 's;/home/user/bin:\?;;')
및
PATH=${PATH/:\/home\/user\/bin/}
더 나은 사용 :'PATH = $ (echo $ PATH | sed -e ';/home/user/bin ;;'-e ';;; :;')' –
일반적으로 공명은 없습니다 RPM 패키지가 처음부터 표준 시스템 PATH 외부에 바이너리를 설치합니다. – tripleee
일반 사용자가 스스로 실행해야하는 바이너리가 아니라'$ PATH '를 수정하는 것이 좋습니다.사실 RPM을 통해 시스템이나 사용자의'$ PATH '를 수정하는 것은 거의 항상 잘못된 것입니다 (매우 특정한/제어 된 배포 시나리오 제외). –