CentOS 6.5 자체 glibc - 2.12 에서 glibc - 2.15 로 업그레이드 하 는 과정 분석 (재 부팅 필요 없 음)

개발 할 때 프로젝트 에 의존 하 는 패 키 지 는 더 높 은 버 전의 glibc 라 이브 러 리 지원 이 필요 합 니 다. Centos 6.5 에서 glibc 기본 버 전 은 2.12 입 니 다. 이렇게 디 버 깅 할 때 오류 가 발생 할 수 있 습 니 다.그러나 조심 하지 않 아 동적 라 이브 러 리 에 있 는 libc. so. 6 을 삭제 하면 모든 비 시스템 명령 을 사용 할 수 없 게 되 고 사용 하면 오류 가 발생 합 니 다.libc. so. 6 은 c 가 실 행 될 때 라 이브 러 리 glibc 의 소프트 링크 이 고 시스템 은 거의 모든 프로그램 이 c 가 실 행 될 때 라 이브 러 리 에 의존 하기 때 문 입 니 다.프로그램 이 시작 되 고 실 행 될 때 libc. so. 6 소프트 링크 에 따라 glibc 라 이브 러 리 를 찾 습 니 다.libc. so. 6 을 삭제 하면 시스템 의 거의 모든 프로그램 이 작 동 하지 않 습 니 다.glibc. so 파일 마다 지원 하 는 libc 버 전이 있 습 니 다. strings / lib 64 / libc. so. 6 | grep GLIBC 를 통 해 볼 수 있 습 니 다. 이 명령 에 표 시 된 버 전 을 선택해 야 합 니 다.[root@test1 ~]# strings /lib64/libc.so.6 |grep GLIBCGLIBC_2.2.5GLIBC_2.2.6GLIBC_2.3GLIBC_2.3.2GLIBC_2.3.3GLIBC_2.3.4GLIBC_2.4GLIBC_2.5GLIBC_2.6GLIBC_2.7GLIBC_2.8GLIBC_2.9GLIBC_2.10GLIBC_2.11GLIBC_2.12GLIBC_2.13GLIBC_2.14GLIBC_2.15GLIBC_PRIVATE
프로그램 이 컴 파일 할 때 연 결 된 libc 라 이브 러 리 버 전이 프로그램 실행 환경 에서 glibc 라 이브 러 리 가 지원 하 는 libc 버 전에 없 으 면 오류 가 발생 할 수 있 습 니 다.그래서 시스템 의 모든 명령 ls, cp, cd 등 을 사용 할 수 없습니다.우 리 는 이곳 에 와 서 당신 이 원 하 는 버 전 을 찾 을 수 있 습 니 다.http://ftp.gnu.org/gnu/glibc/그리고 압축 을 풀 고 설치 합 니 다.
1. 먼저 이 컴퓨터 의 glibc 버 전 을 봅 니 다 [root@test1 ~]# /lib64/libc.so.6GNU C Library stable release version 2.12, by Roland McGrath et al.Copyright (C) 2010 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.Compiled by GNU CC version 4.4.7 20120313 (Red Hat 4.4.7-4).Compiled on a Linux 2.6.32 system on 2013-11-05.Available extensions:The C stubs add-on version 2.1.2.crypt add-on version 2.1 by Michael Glad and othersGNU Libidn by Simon JosefssonNative POSIX Threads Library by Ulrich Drepper et alBIND-8.2.3-T5BRT using linux kernel aiolibc ABIs: UNIQUE IFUNCFor bug reporting instructions, please see:;.
2. 컴 파일 설치 [root@test1 ~]# mkdir -pv /path/to/glibc-2.15/build[root@test1 ~]# cd /path/to/glibc-2.15/[root@test1 ~]# wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz [root@test1 ~]# tar xzvf glibc-2.15.tar.gz[root@test1 ~]# cd /path/to/glibc-2.15/build
[root@test1build] \ #.. / glibc - 2.15 / configure -- prefix = / usr -- disable - profile -- enable - add - ons -- with - headers = / usr / include -- with - bintils = / usr / bin 이 단계 가 관건 입 니 다. glibc 가 압축 을 풀 었 던 디 렉 터 리 에서 실행 / configure checking build system type... x8664-unknown-linux-gnuchecking host system type... x86_64 - unknown - linux - gnuchecking for gcc... nochecking for cc... nochecking for cl. exe... noconfigure: error: in /path/to/glibc-2.15/build':
configure: error: no acceptable C compiler found in $PATH
See
config. log 'for more details 이 오 류 는 gcc 와 cc 컴 파일 패키지 가 없 음 을 알려 주 는 것 입 니 다.
gcc cc 컴 파일 패 키 지 를 설치 하려 면 yum 으로 설치 하면 됩 니 다.그리고 make install
3. 검사 검증
[root@test1 build]# ll /lib64/libc*-rwxr-xr-x 1 root root 1926800 Nov 6 2013 /lib64/libc-2.12.so-rwxr-xr-x 1 root root 9801125 Apr 22 11:19 /lib64/libc-2.15.solrwxrwxrwx. 1 root root 18 Oct 10 2018 /lib64/libcap-ng.so.0 -> libcap-ng.so.0.0.0-rwxr-xr-x. 1 root root 18672 Nov 5 2010 /lib64/libcap-ng.so.0.0.0lrwxrwxrwx. 1 root root 14 Oct 10 2018 /lib64/libcap.so.2 -> libcap.so.2.16-rwxr-xr-x 1 root root 19016 Aug 23 2011 /lib64/libcap.so.2.16-rwxr-xr-x. 1 root root 197064 Nov 6 2013 /lib64/libcidn-2.12.so-rwxr-xr-x 1 root root 267972 Apr 22 11:19 /lib64/libcidn-2.15.solrwxrwxrwx 1 root root 15 Apr 22 11:19 /lib64/libcidn.so.1 -> libcidn-2.15.solrwxrwxrwx. 1 root root 17 Oct 10 2018 /lib64/libcom_err.so.2 -> libcom_err.so.2.1-rwxr-xr-x 1 root root 17256 Aug 13 2013 /lib64/libcom_err.so.2.1-rwxr-xr-x 1 root root 43392 Nov 6 2013 /lib64/libcrypt-2.12.so-rwxr-xr-x 1 root root 142947 Apr 22 11:19 /lib64/libcrypt-2.15.solrwxrwxrwx. 1 root root 22 Oct 10 2018 /lib64/libcryptsetup.so.1 -> libcryptsetup.so.1.1.0-rwxr-xr-x 1 root root 97072 Feb 29 2012 /lib64/libcryptsetup.so.1.1.0lrwxrwxrwx 1 root root 16 Apr 22 11:19 /lib64/libcrypt.so.1 -> libcrypt-2.15.solrwxrwxrwx 1 root root 12 Apr 22 11:19 /lib64/libc.so.6 -> libc-2.15.so
우 리 는 2.12 버 전의 오래된 라 이브 러 리 파일 이 여전히 존재 하고 2.15 버 전의 라 이브 러 리 파일 도 많 으 며 소프트 링크 파일 은 모두 2.15 버 전 을 가리 키 는 것 을 볼 수 있다.
다시 한 번 확인 해 보 니 버 전이 2.15 버 전 으로 업데이트 되 었 으 니 다시 시작 할 필요 가 없습니다.[root@test1 build]# /lib64/libc.so.6GNU C Library stable release version 2.15, by Roland McGrath et al.Copyright (C) 2012 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.Compiled by GNU CC version 4.4.7 20120313 (Red Hat 4.4.7-23).Compiled on a Linux 2.6.32 system on 2019-04-22.Available extensions:crypt add-on version 2.1 by Michael Glad and othersGNU Libidn by Simon JosefssonNative POSIX Threads Library by Ulrich Drepper et alBIND-8.2.3-T5Blibc ABIs: UNIQUE IFUNCFor bug reporting instructions, please see:;.
주: 1. glibc 소스 패키지 에서 직접 실행 하지 마 세 요. / configure 명령 을 실행 하지 마 세 요. 그렇지 않 으 면 학대 당 할 때 까지 기다 리 세 요. 패 키 지 를 설치 하 는 위치 가: / path / to / glibc - 2.15 라면 정확 한 자 세 는 1 급 디 렉 터 리 를 다시 만 드 는 것 입 니 다. 그 디 렉 터 리 에서 실행 하 는 것 입 니 다. / configure 명령 2. glibc 를 기본 디 렉 터 리 [/ usr / local] 또는 [사용자 정의 디 렉 터 리] 에 설치 하지 마 세 요.[/ usr] 디 렉 터 리 에 꼭 설치 하 세 요. 그렇지 않 으 면 학대 당 할 때 까지 기다 리 세 요.

좋은 웹페이지 즐겨찾기