Linux의 RPM 패키지에서 소프트 링크 및 기타 정보 삭제

Linux의 RPM 패키지에서 소프트 링크 및 기타 정보 삭제

저는 32비트 및 64비트 응용 프로그램을 모두 포함하고 두 모드, 즉 32비트 및 64비트 플랫폼에 설치할 수 있는 RPM 패키지를 제공합니다.

패키지에는 두 응용 프로그램이 모두 포함되어 있으므로 32비트 Linux 시스템에 RPM 패키지를 설치하려고 하면 64비트 응용 프로그램과 32비트 응용 프로그램에 대한 소프트 링크도 생성됩니다. 설치 후 프로세스에서 64비트 응용 프로그램을 32비트 시스템에 설치할 수 없기 때문에 해당 소프트 링크를 제거했습니다.

불행하게도 패키지가 32비트 컴퓨터에 설치되었고 설치 후 64비트 응용 프로그램에 대한 소프트 링크를 제거했지만 명령을 통해 쿼리할 때 RPM에는 여전히 이러한 64비트 응용 프로그램 소프트 링크에 ​​대한 정보가 포함되어 있습니다. 볼 수 있지만 rpm실제로는 존재하지 않습니다.

rpm64비트 애플리케이션에 대한 추가 정보를 쿼리하고 삭제하는 방법은 무엇입니까 ? 이 작업은 32비트 패키지를 설치하는 동안 수행해야 하지만 설치 후에 수행할 수도 있습니다.

답변1

확실한 해결책은 RPM 패키지 자체에 심볼릭 링크를 포함시키는 것이 아니라 RPM의 설치 후 스크립트에서 필요에 따라 심볼릭 링크를 생성하는 것입니다.

즉, 설치 후 스크립트는 호스트의 아키텍처를 확인해야 합니다. 32비트인 경우 32비트용 심볼릭 링크를 생성하고(필요한 경우), 그렇지 않으면 64비트인 경우 64비트용 심볼릭 링크를 생성합니다.

관련 정보