[server] 젠투 리눅스 업그레이드를위한 최적의 절차?

이것이 제가 젠투를 오랫동안 업그레이드해온 방법입니다. 이것이 권장되는 방법입니까? 사용할 방법이 있습니까?

emerge --sync
emerge -uDav --tree world
emerge -av --depclean
revdep-rebuild -v -- --ask
dispatch-conf
glsa-check -t all
glsa-check -f all



답변

당신이 그것을 덮은 것 같습니다. 다른 팁은 블라인드 도매 업데이트보다 약간 느리게하는 것입니다. 패키지 또는 종속성 체인을 항상 emerge -DNuav <atom>대신 개별적으로 업데이트 할 수 있습니다 world(예 : 시스템 라이브러리와 같이 월드 파일에 추가하지 않으려는 항목에는 –oneshot을 사용하십시오).

두 달마다 모 놀리 식 배치 업데이트를 수행하지 않고 정기적으로 최신 상태를 유지하는 것이 항상 더 쉽습니다. 또한 너무 많은 놀라움을 피하기 위해 gentoo-user주요 업데이트 문제가 목록에 나타날 가능성이 높기 때문에 (경고 :이 목록에서 하루에 최대 100 개의 메일) 과 같은 메일 목록 중 하나를 구독하면 도움이 될 수 있습니다 . 그것들을 해결하는 방법을 설명하는 많은 토론.

차기 주요 “문제”업데이트는 openrc가 안정적이되면 openrc 로의 마이그레이션이 될 것이라고 생각합니다 (작년 네트워킹은 주로 몇 가지 문제만으로 iirc의 작년 중반에 이루어졌습니다).


답변

나는 당신을 제외하고는 같은 단계에 가깝습니다.

  • eix-sync대신 emerge --sync포티지 트리의 변경 사항을보고 싶기 때문입니다. 이것은 트리에 새로운 패키지를 설치하고 싶을 때 특히 좋습니다.

  • layman -S (가끔) 메인이 나타나기 전에 오버레이의 변경 사항을 동기화합니다.

  • eclean-dist -d애프터 revdep-rebuild폐기 된 타르볼을 청소합니다. 패키지 다운 그레이드가 그렇게 일반적이지 않기 때문에 매번 등장한 후에이 작업을 수행합니다.

  • eix-test-obsolete/ etc / portage 파일을 깔끔하고 최신 상태로 유지하는 데 도움이되는 마지막 단계입니다. 또한 포티지에서 완전히 제거 된 패키지를 설치했을 때 알려주므로 저장소에서 ebuild를 가져와야합니다. 최근의 예에서, Xen VPS에서 실행되는 이전 커널로 인해 iproute2> 2.6.22.20070710의 모든 버전을 마스킹해야하지만 최근 포티지에서 제거되었습니다.

eix-synceix-test-obsolete앱 운반 / 익스 플에 있습니다.

eclean-dist app-portage / gentoolkit에 있습니다.


답변

  1. emerge --sync또는 eix-sync또는 emerge-delta-webrsynceix-update
  2. emerge -av portage
  3. eclean-dist

Linux 헤더, glibc, binutils, libtool 또는 gcc 중 하나에 업데이트가 있는지 확인하십시오 (예 : 4.6에서 4.8 사이의 gcc 업데이트). 11 단계로 진행되지 않으면

전체 재 구축 :

  1. rm -rf PKGDIR/* PKGDIR을 패키지 디렉토리 경로로 바꾸십시오!
  2. emerge -av linux-headers glibc binutils gcc-config libtool gcc
  3. gcc-config <number of new gcc> 새로운 gcc로 전환
  4. source /etc/profile
  5. emerge -avb glibc binutils gcc libtool
  6. emerge -avbke system
  7. emerge -avbke world

10 또는 11 단계에서 문제점이 발생하면이를 수정하고 다시 시도하십시오.

세계 업데이트 :

  1. /var/lib/portage/world불필요한 패키지에서 월드 파일 을 정리 하고 /etc/portage엔티티를 확인하십시오.
  2. fixpackages
  3. emerge -avuDN world
  4. eselect python update
  5. python-updater -- -av
  6. perl-cleaner --all -- -av
  7. emerge -a --depclean
  8. revdep-rebuild -i -- -av

14-18 단계에서 문제점이 발생하면이를 수정하고 13 단계부터 모든 단계를 반복하십시오.

  1. etc-update 또는 dispatch-conf
  2. glsa-check -vp affected 업데이트 후 슬롯의 패키지에 영향을 줄 수 있습니다
  3. emaint --check all

답변

당신의 목표가 모든 패키지를 절대적으로 최신으로 유지하는 것이라면 그렇습니다. 모든 기반을 덮는 것 같습니다. 블록, 부서진 등으로 자주 물릴 것이라고 상상할 수 있기 때문에 이것이 오랫동안 당신을 위해 일한 것에 놀랐습니다. 지난 몇 년 동안 나는 도매 업데이트에 대해 훨씬 더주의를 기울였습니다. 업데이트 트리를 본 후 단편적으로 수행하도록 선택합니다. 젠투 개발은 전성기를 지나간 것 같습니다. 우분투의 부상으로 인한 것일 수도 있습니다.

어쨌든, 전체 프로세스에 대해 정말 까다로워하기 위해 시도해야 할 또 하나의 일은 distfile을 정리하는 것입니다. 검색하면 스크립트가 있습니다.


답변

glsa-check -t all
glsa-check -f all

그것이 당신이 먼저해야 할 일입니다. 모든 패키지를 업그레이드하면 필요하지 않습니다.

아 그리고 나는 cfg-update를 선호한다;)


답변

이것이 제가하는 것입니다:

emerge --sync         //Synchronize the package manager with the latest
                      //version of each package.


emerge -aDvNu system  //updates the system, but only important if you want the
                      //latest stable version of the actual compiler and libraries
                      //with the core system.

emerge -uDNav world   //world means everything we've asked to be emerged before
                      //this does not include things that came pre installed.
                      //N means if you change your use directives in
                      //your make.conf file to pull in the new packages.

emerge -av depclean   //removes libraries or programs that don't have any other
                      //dependencies because of an update.


revdep-rebuild        //means if something is broken by an update, it
                      //recompiles it.  Fixes dynamic and static linking problems.

주석을 완전히 이해하지 못하면 젠투 패키지를 업데이트하는 방법에 대한 설명이므로이 내용을 읽으십시오.

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=1


답변

모든 명령을 실행할 필요는 없지만 일반적으로 동기화 및 업데이트 세계를 수행하지만 프로세스는 정확합니다. Emerge는 일반적으로 주요 Python 업그레이드와 같이 파일을 다시 작성하기 위해 스크립트를 실행해야하는지 여부와 구성 변경 사항을 병합 할시기를 알려줍니다. 젠투에는 실제로 버전 간 업그레이드 경로가 없습니다. 당신이 세상에 등장하는 순간 당신은 최신 버전을 얻었습니다.