핵심 유틸리티와 이전 GNU/Linux 시스템 간의 호환성을 확인하세요.

핵심 유틸리티와 이전 GNU/Linux 시스템 간의 호환성을 확인하세요.

나는 가지고있다루트가 아닌컴퓨터 그리드에 액세스하세요. 설치된 운영 체제는 다음과 같습니다.

$ uname -mrs
Linux 2.6.18-274.el5xen x86_64

$ cat /etc/*-release                                                                                                      
Scientific Linux SL release 5.1 (Boron)

최신 버전의 핵심 유틸리티를 로컬로 구축했습니다.

./configure --prefix=<some_path>
make
make install

하지만 이 새 설치를 내 PATH& 에 추가하기 전에는 LD_LIBRARY_PATH내 운영 체제와 호환되지 않거나 사용하기에 안전하지 않을 수 있는 핵심 유틸리티 버전을 사용하기를 꺼려합니다.

나는 대답 중 하나가 "라는 것을 알고 있습니다.작동하는지 테스트chmod"라고 말하지만 나중에 핵심 유틸리티로 실제 작업(예: 파일 이동/삭제, 사용 등) 을 수행할 때 문제가 발생하지 않도록 하고 싶습니다.

이것이 타당한 우려입니까? 핵심 유틸리티는 이전 GNU/Linux 버전과 완벽하게 호환됩니까? 어떻게 알 수 있나요?

답변1

시스템 호출이 커널 자체에 존재하는 한 사용되는 coreutils 버전은 중요하지 않습니다. 그리고 coreutils는 이국적인(Linux용) 시스템 호출을 사용하지 않으므로 호환되지 않는 유틸리티를 실행할 가능성이 거의 없습니다.

그런 다음 SRPM을 잡고 내부의 타르볼을 교체하고 다시 빌드하여 사용하십시오.

답변2

알기 어렵고 보장도 없습니다. 예를 들어, 어떤 시점에서 GNU의 특정 버전은 head지원 tail을 중단하여 head -1(더 이상 사용되지 않는 변형 head -n 1) 많은 스크립트가 중단되었습니다(나중에 복원됨).

더 이상 사용되지 않는 일부 옵션이 제거되었음을 알 수 있습니다. 예를 들어 GNU에는 touch더 이상 --file선택의 여지가 없습니다. 일반적으로 이러한 기능은 사용되지 않을 것 같지만 문제가 발생하기 전까지는 알 수 없습니다.

관련 정보