우분투 대 CentOS 및 이진 호환성


9

CentOS 4.7에 빌드 된 소프트웨어를 설치하려고합니다. 우분투에서도 실행되는지 알고 있습니까? CentOS는 100 % 이진 호환입니다. 최신 버전의 우분투에서도 마찬가지입니까?


1
"100 % 이진 호환"은 의미가 없습니다. 무엇과 호환됩니까? Caleb이 말했듯이 이에 대한 대답은 RHEL입니다.
Gilles 'SO- 악마 그만'

답변:


3

LSB (Linux Standard Base) 바이너리는 LSB를 지원하는 배포판간에 호환 가능해야합니다. CentOS는 LSB를 지원합니다. LSB 지원은 우분투에서도 가능하지만 관련 LSB 패키지가 기본적으로 설치되어 있는지 여부는 알 수 없습니다. 응용 프로그램이 이진 호환인지 테스트 할 수 있습니다 .

LSB는 표준 자체와 그 영향이 얼마나 많은지 논란의 여지가 있습니다.


15

다른 배포에 필요한 공유 라이브러리가있는 경우 Linux 배포를 위해 컴파일 된 실행 파일은 다른 배포에서 작동합니다. CentOS에는 꽤 오래된 라이브러리 버전이 있으므로 Ubuntu의 버전이 너무 최신 버전 일 수 있습니다. 하지만 우분투는이 자주있는 경우 libfoo5libfoo6당신이 필요 libfoo3하면 이전 우분투 버전에서 잡아 수 있습니다.

CentOS와 Ubuntu는 rpm과 deb의 다른 패키징 시스템을 사용합니다. 로 rpm을 deb로 변환 할 수 있습니다 alien. 필요한 종속성이 있는지 여부에 따라 결과 패키지를 설치하거나 설치하지 못할 수 있습니다. rpm을 일반 아카이브로 다시 변환하고 (와 함께 alien) /opt또는 아래의 별도 디렉토리에 압축을 푸는 것이 더 쉬울 수 있습니다 /usr/local.

프로그램에 종속성 목록이 제공되지 않으면 ldd /path/to/binary필요한 라이브러리를 확인하기 위해 실행할 수 있습니다 . libfoo.so.4 => not found무언가 빠진 것처럼 출력이 나타납니다 .


"외국인"기능을 어떻게 사용합니까? 그놈 명령 프롬프트에서?
Concerned_Citizen

@GTyler 예, alien명령 행 프로그램입니다. GUI가 있는지 모르겠습니다. 커맨드 라인에 익숙하지 않다면 우분투를위한 바이너리 패키지를 구하는 것이 좋습니다.
Gilles 'SO- 악마 그만'

12

에 CentOS는 "100 % 바이너리 호환"입니다 상업 대응으로 , 레드햇 엔터프라이즈 리눅스 . RHEL 은 지원 계약 및 다양한 엔터프라이즈를 포함하여 라이센스가있는 시스템 이므로 모든 사람이이를 실행하려는 것은 아닙니다. 그러나 오픈 소스 세계에서는 모든 개발을 공유해야하므로 지원 계약, 미디어 등을 청구하는 동안 여전히 소스를 공유해야합니다. CentOS 는 커뮤니티에 무료로 제공하기 위해 재 포장되었습니다.

또한 "100 % 호환성"은 동등한 버전RHELCentOS 사이에만 있습니다. 라이브러리 버전은 각 주요 릴리스마다 변경되지만 이러한 프로젝트 릴리스는 동기화되어 있기 때문에 둘 다 동일한 주 버전으로 설정되어 있으면 패키지를 서로 교환 할 수 있습니다.

배포판, 특히 CentOS 와 같은 RPM 기반 배포판과 우분투 와 같은 데비안 기반 배포판의 차이점은 군단이 될 수 있으며 주어진 패키지는 그 사이에 이식성이 없습니다. 그러나 전체 시스템은 대략 동일하며, 하나를 위해 개발 된 소프트웨어는 일반적으로 다른 하나를 위해 쉽게 컴파일 될 수 있으며, 약간 다르게 컴파일되고 패키지되어야합니다. 올바른 라이브러리 버전을 모두 가져와야 할 경우 하나의 바이너리는 실제로 다른 바이너리에서 작동합니다. Gilles 's answer을 참조하십시오 .


0

CentOS는 장기적으로 안정적이므로 최신 시스템에서 컴파일 된 바이너리가 연결되지 않는 오래된 라이브러리가 있습니다. CentOS는 rpm 패키지 관리자를 사용하고 Ubuntu는 Debian apt를 사용합니다. 따라서 패키지는 호환되지 않습니다.

일반적으로 CentOS에서 원하는데 아직없는 경우 다른 CentOS 시스템의 소스에서 RPM을 빌드해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.