yum (software)

yum (software)
yum
Yum.png
Yum-update.png
YUM이 Fedora 16에서 업데이트 실행 중
개발자세스 비달
초기 릴리즈2002년 6월;[1] 19년 전(2002-06)
안정적 해제
3.4.3 / 2011년 6월 28일; 10년 전(2011년 6월 28일)
리포지토리
기록 위치파이톤[3]
운영 체제Linux, AIX, IBM i, ArcaOS
유형패키지 관리 시스템
면허증GPLv2
웹 사이트.yum.baseurl.org

YUM(Yellowdog Updater, 수정됨)은 RPM Package Manager를 사용하여 Linux 운영 체제를 실행하는 컴퓨터를 위한 무료 오픈 소스 명령줄 패키지 관리 유틸리티다.[4]YUM에는 명령줄 인터페이스가 있지만, 다른 여러 도구는 YUM 기능에 대한 그래픽 사용자 인터페이스를 제공한다.

YUM은 RPM 기반 배포에 대한 자동 업데이트 및 패키지 및 종속성 관리를 허용한다.[5]데비안의 APT(Advanced Package Tool)처럼 YUM은 로컬[6] 또는 네트워크 연결을 통해 액세스할 수 있는 소프트웨어 저장소(패키지 모음)와 연동한다.

후드 아래에서 YUM은 소프트웨어의 디지털 배포를 위한 포장 표준인 RPM에 의존한다. RPM은 해시디지털 서명을 사용하여 해당 소프트웨어의 저작권과 무결성을 자동으로 검증한다. 유사한 기능을 제공하는 일부 앱 스토어와 달리 YUM과 RPM은 c에 대한 독점 제한에 대한 내장 지원을 제공하지 않는다.최종 사용자에 의한 패키지 실행.YUM은 Python 프로그래밍 언어의 라이브러리로 구현되며, 명령줄 인터페이스를 제공하는 작은 프로그램 세트가 있다.[7]YUM Extender(유멕스)와 같은 GUI 기반 포장지도 존재하며,[8] 버전 22까지 Fedora Linux에 채택되었다.[9]

Fedora 22에서 기본 패키지 매니저로 YUM을 대체한 DNF라는 이름의 YUM을 다시 썼다.[9]페도라가 파이톤 3로 옮겨갈 예정이었기 때문인데, 이는 염씨가 이 변화에서 살아남지 못할 것이라는 것을 의미했다.반면에 DNF는 파이톤 2 또는 3을 사용하여 실행할 수 있다.[10]또한 DNF는 성능 향상, 종속성 충돌의 보다 나은 해결, 다른 소프트웨어 애플리케이션과의 보다 쉬운 통합 등 YUM을 개선하기 위해 만들어졌다.[11]

역사

원래의 패키지 매니저인 옐로독 UPdater(YUP)는 1999~2001년 테라 소프트솔루션즈(당시 CEO 카이 슈타츠)에서 댄 버코, 브라이언 스틸웰, 스티븐 에디, 트로이 벤게르데스 등이 옐로독 리눅스의 그래픽 설치용 백엔드 엔진으로 개발했다.[4]

YUP를 완전히 다시 쓰면서 YUM은 주로 세스 비달과 마이클 스텐너가 듀크대 물리학부에서 사용하는 Red Hat Linux 시스템을 업데이트하고 관리하기 위해 진화했다.비달은 2013년 7월 8일 노스캐롤라이나 더럼에서 발생한 자전거 사고로 사망할 때까지 YUM에 계속 기여했다.[12][13][14]

2003년에 듀크의 로버트 G. 브라운은 YUM을 위한 문서를 발표했다.[7]후속 채택자들로는 Fedora, Rocky Linux, AlmaLinux, CentOS와 YUP Linux 자체를 포함한 많은 다른 RPM 기반 Linux 배포가 포함되었는데[7], YUP 유틸리티는 2001년에 SourceForge에서 마지막으로 업데이트되었다.[15]2005년에는 리눅스 시장의 절반 이상에서 사용되고 있는 것으로 추정되었고,[3] 2007년에는 YUM이 RPM 기반 리눅스 배포의 "선택의 도구"로 여겨졌다.[16]

YUM은 기존의 APT-RPM에서 인식된 결함과 [17]Red Hat update 패키지 관리 툴의 제한 사항을 모두 해결하는 것을 목표로 했다.YUM은 Red Hat Enterprise Linux 5 이상에서 업데이트 날짜를 대체했다.[18]일부 저자들은 YUM을 Yellowdog Update Manager라고 부르거나 "Your Update Manager"가 더 적절하다고 제안한다.[19][20]YUM에 대한 기본적인 지식은 리눅스 시스템 관리자 인증의 요구 사항으로 포함되는 경우가 많다.[5]YUM의 GNU General Public License는 라이선스의 다른 조건이 존중되는 경우 무료 오픈소스 소프트웨어를 로열티 없이 자유롭게 배포하고 수정할 수 있도록 한다.[4]

yum은 원래 Linux를 위해 만들어졌지만,[21] AIX, IBM [22]i, ArcaOS를 포함한 많은 다른 운영 체제에 포팅되어 있다.[23]

운영

YUM다음과 같은 작업을 수행할 수 있음:

  • 패키지 설치
  • 패키지 삭제
  • 설치된 기존 패키지 업데이트
  • 사용 가능한 패키지[24] 나열
  • 설치된 패키지[24] 나열

확장

Yum Extender 스크린샷(yumex)

2.x 버전의 YUM은 Python에서 확장을 프로그래밍하기 위한 추가 인터페이스를 갖추고 있어 YUM의 동작을 변경할 수 있다.일부 플러그인은 기본적으로 설치된다.[25]일반적으로 설치된[26] 패키지yum-utils에는 YUM API를 사용하는 명령과 많은 플러그인이 포함되어 있다.

"프론트 엔드"라고 알려진 그래픽 사용자 인터페이스를 통해 YUM을 보다 쉽게 사용할 수 있다. PackageKit와 Yum Extender(yumex)는 두 가지 예다.[8]윰댕 익스텐더는 페도라가 DNF로 이주하면서 한동안 인기가 떨어졌으나 파이톤 3와 Gtk 3로 다시 작성돼 개발을 진행 중이다.[27]이 신형 Yum Extender는 Fedora 34 이상에서 사용할 수 있다.[28]

메타데이터

패키지에 대한 정보를 메타데이터라고 한다(패키지 자체와는 반대).이러한 메타데이터는 각 패키지의 정보와 결합되어 패키지 간의 종속성을 결정하고 가능한 경우 해결한다.그 희망은 의존 지옥으로 알려진 상황을 피하는 것이다.별도의 도구,createrepo, YUM 소프트웨어 리포지토리를 설정하여 표준 XML 형식(그리고 -d 옵션이 주어진 경우 SQLite 메타데이터)으로 필요한 메타데이터를 생성한다.[29][30]mrepo도구(이전의 Yam)는 리포지토리의 생성과 유지보수를 도울 수 있다.[31]

YUM의 XML 리포지토리는 다른 많은 개발자들의 입력으로 지어졌으며, 빠르게 RPM 기반 리포지토리의 표준이 되었다.[30]YUM을 직접 사용하는 배포 외에도 SUSE Linux 10.1은[32] YAST의 YUM 리포지토리에 대한 지원을 추가했으며, Open Build Service 리포지토리는 YUM XML 리포지토리 형식 메타데이터를 사용한다.[30]

YUM은 원격 메타 데이터를 로컬 클라이언트에 자동으로 동기화하며, 다른 툴은 사용자가 요청할 때만 동기화를 선택한다.자동 동기화가 있다는 것은 사용자가 정확한 간격으로 명령을 실행하지 못해 YUM이 실패할 수 없다는 것을 의미한다.[33][34]

참고 항목

  • .rpm - YUM에서 사용하는 포장 파일 형식
  • DNF - libsolv를 기반으로 한 YUM의 재작성
  • umpi - rpm을 위한 또 다른 cli-frontend
  • APT-RPM - APT에서 파생된 또 다른 RPM 프런트엔드(dpkg용 cli-frontend)

참조

  1. ^ "Initial Commit". source control message. Seth Vidal. 7 June 2002. Retrieved 17 September 2021.
  2. ^ "Oldest Mailing List Message". yum mailing list archive. Grigory Bakunov. 11 June 2002. Retrieved 17 September 2021.
  3. ^ a b Jang, Michael H. (14 December 2005). "Chapter 7 – Setting Up a YUM Repository". Linux Patch Management: Keeping Linux Systems Up to Date (PDF). Prentice Hall Professional.
  4. ^ a b c Brown, Robert G. "YUM (Yellowdog Updater, Modified) HOWTO - Introduction". Duke Physics. Retrieved 12 July 2013.
  5. ^ a b Shields, Ian (11 May 2010). "RPM and YUM package management". Learn Linux, 101. IBM. Retrieved 12 July 2013.
  6. ^ "Creating a Local YUM Repository Using an ISO Image". Oracle. Retrieved 12 July 2013.
  7. ^ a b c Brown, Robert G. (17 December 2003). "YUM: Yellowdog Updater, Modified" (PDF). Retrieved 13 July 2013.
  8. ^ a b "Yum Extender". Yumex Homepage. Retrieved 13 July 2013.
  9. ^ a b Miller, Matthew (11 June 2014). "Board Meeting, Rawhide Rebuilt, Firewall Debate, ARM 64, and DNF as Yum Replacement (5tFTW 2014-06-10)". Fedora Magazine. Retrieved 4 May 2016.
  10. ^ Wallen, Jack (2015-07-02). "What You Need to Know About Fedora's Switch From Yum to DNF". Linux.com. Retrieved 2021-09-26.
  11. ^ Edge, Jake (2014-01-15). "DNF and Yum in Fedora". LWN.net. Retrieved 2018-10-16.
  12. ^ "Seth Vidal, creator of "yum" open source software, killed in bike accident off Hillandale Rd". Durham io: The Daily Durham. 9 July 2013. Archived from the original on 12 July 2013. Retrieved 13 July 2013.{{cite web}}: CS1 maint : 부적합한 URL(링크)
  13. ^ "Thank you, Seth Vidal". Red Hat. 10 July 2013. Retrieved 13 July 2013.
  14. ^ Bort, Julie (9 July 2013). "36-Year-Old Open Source Guru Seth Vidal Has Been Tragically Killed". Business Insider. Retrieved 13 July 2013.
  15. ^ "Yellow Dog Update Program". SourceForge repository. Retrieved 18 July 2013.
  16. ^ Fusco, John (6 March 2007). The Linux Programmer's Toolbox. Pearson Education. ISBN 9780132703048.
  17. ^ Murphy, David (23 July 2004). "How to run your own yum repository". Linux Foundation. Retrieved 12 July 2013.
  18. ^ "What are the yum equivalents of up2date and rpm common tasks on Red Hat Enterprise Linux?". Red Hat.
  19. ^ Sweeney, Michael (2005). Network Security Using Linux. p. 84. ISBN 9781411621770.
  20. ^ Negus, Christopher; Bresnahan, Christine (2012). Linux Bible. John Wiley & Sons. p. 598. ISBN 9781118286906.
  21. ^ "Configuring YUM and creating local repositories on IBM AIX". 2018-10-24.
  22. ^ "RPM and Yum are a big deal for IBM i. Here's why". 2018-07-18.
  23. ^ "Package Manager". Retrieved 2020-09-04.
  24. ^ a b Jang, Michael H. (2006). Linux Patch Management: Keeping Linux Systems Up to Date. Bruce Perens' Open Source series. Prentice Hall Professional. p. 199. ISBN 9780132366755. Retrieved 26 August 2014.
  25. ^ "Yum Plug-ins". Red Hat. Retrieved 12 July 2013.
  26. ^ "Maintaining yum". CentOS. Retrieved 12 July 2013.
  27. ^ "dnf replacing yum and dnf-yum - devel - Fedora Mailing-Lists". lists.fedoraproject.org. Retrieved 2021-09-27.
  28. ^ Lauridsen, Tim (2021-09-20), Yum Extender (yumex-dnf), retrieved 2021-09-26
  29. ^ "createrepo(8)". Linux manual page. Retrieved 12 July 2013.
  30. ^ a b c "Standards Rpm Metadata". openSUSE. Retrieved 12 July 2013.
  31. ^ "mrepo". Freecode. Retrieved 12 July 2013.
  32. ^ "SUSE Linux 10.1 Alpha 2 is ready". Archived from the original on February 8, 2006. Retrieved 12 July 2013.
  33. ^ Schmitz, Dietrich T. "YUM vs. APT: Which is Best?".
  34. ^ "'Linux Advocates' Throws in the Towel i.e. previous link is dead". FOSS Force.

외부 링크