apt
최종 사용자와 기본 하위 수준 패키지 관리자( , yast
등 ) pacman
사이의 인터페이스 역할을 하는 통합 패키지 관리자가 없는 이유는 무엇입니까 ?
하기가 어려워서 비실용적입니까, 아니면 그것을 불가능하게 만드는 실질적인 장애물이 있습니까?
답변1
우선 있습니다. 문제는 통합 패키지 관리자가 없다는 것이 아니라 심각하게도 10개가 있다는 것입니다.
내가 가장 좋아하는 것을 예로 들어 보겠습니다 poldek
. 여러 다른 배포판에서 실행하고 하나 rpm
이상의 패키지를 관리할 수 있는 패키지 관리를 위한 사용자 프런트 엔드입니다 deb
. Poldek은 rpm이 수행하는 작업을 수행하지 않고(rpm에 맡김) 사용자가 모든 복잡한 문제를 파악할 필요 없이 올바른 명령만 보냅니다.
그러나 문제는 거기서 끝나지 않습니다. 사용자 프런트엔드가 어떤 모습이어야 하는지, 어떻게 작동해야 하는지, 어떤 옵션을 노출해야 하는지에 대한 생각은 사람마다 다릅니다. 그래서 다른 사람들이 직접 썼습니다. 실제로 오늘날 일반 배포판에서 사람들이 사용하는 패키지 프런트엔드 관리자 중 다수는 여러 백엔드를 처리할 수 있습니다.
그러나 궁극적으로 문제(또는 장점)는 모든 사람을 기쁘게 하려고 노력하지만 진정으로 누구도 행복하게 만들지 못하는 메타 패션보다는 사람들이 자신이 원하는 대로 정확하게 작동하는 것을 좋아한다는 것입니다. 이것이 바로 우리가 애초에 수많은 배포판을 갖고 있는 이유입니다. 이것이 바로 우리가 매우 다양한 데스크탑 환경과 창 관리자를 갖고 있는 이유입니다(사실 이들은 실제로 다른 유형입니다).
범용 패키지를 작성하거나 모든 패키지를 이해하는 관리자를 두거나 한 패키지를 다른 패키지로 변환하는 API를 갖는 것에 대한 몇 가지 뛰어난 제안이 여전히 있지만... 결국유닉스는 그 철학에 따라 사용될 때 가장 좋다...각 도구는 한 가지 일을 하고 잘 한다.
두 가지 이상의 작업을 수행하려는 도구가 있을 때마다 해당 작업 중 하나에서 성능이 저하될 것입니다. 예를 들어, poldek
deb 패키지 종속성을 처리하는 것은 형편 없습니다.
답변2
간단히 말해서 모든 배포판은 패키지 관리에 대해 서로 다른 접근 방식을 사용하기 때문입니다. 그들은 단순히 호환되지 않습니다. Ubuntu에 가장 적합한 관리 전략은 Arch 등에는 적합하지 않습니다. "범용"(배포 독립적) 패키지 관리자는 사용자 인터페이스의 추가 계층일 뿐이며 각 배포판의 특정 관리자처럼 작동하지 않습니다.
그러니까 당신 말대로라면요.하기가 어려워서 실용적이지 않음-그러나 거의 아무도 그것으로부터 이익을 얻지 못하기 때문입니다.
답변3
당신이 묘사하는 것은,
최종 사용자와 기본 하위 수준 패키지 관리자 간의 인터페이스 역할을 합니다.
나에게는 PackageKit과 약간 비슷해 보입니다.그건,
PackageKit은 컴퓨터에 소프트웨어를 더 쉽게 설치하고 업데이트할 수 있도록 설계된 시스템입니다. 주요 디자인 목표는 다양한 배포판에서 사용되는 모든 소프트웨어 그래픽 도구를 통합하고 일부 최신 기술(예: PolicyKit)을 사용하여 프로세스를 덜 나쁘게 만드는 것입니다.
편집하다: 지원되는 백엔드 목록은 여기를 참조하세요. 편집 2:쓸모없는 댓글이 삭제되었습니다.
답변4
먼저, "Linux"는 운영 체제가 아니라는 점을 이해하세요. 커널입니다. 패키지 관리자는 커널 수준 개념이 아닌 운영 체제 수준 개념입니다. 따라서 Linux에 통합 패키지 관리자를 제공하도록 요구하는 것은 실제로 의미가 없습니다.
그러나 Linux 커널을 사용하는 다양한 운영 체제에 대해 호환되는 패키지 관리자가 없는 이유를 묻는다면 Windows 및 Mac에 대해 호환되는 패키지 관리자가 없는 이유를 묻는 것이 좋습니다. 또는 다른 두 운영 체제.
다양한 운영 체제는 다양한 사용자의 요구 사항을 충족하며 패키지 관리자는 그 일부입니다. 모든 Linux 배포판에 동일한 창 관리자가 없는 이유는 무엇입니까? 아니면 동일한 소프트웨어가 모두 사전 설치되어 있습니까?
답변: 사람마다 플레이 스타일이 다릅니다.