.deb 파일에서 설치된 프로그램에서 업데이트가 어떻게 작동합니까?


11

우분투에서 전체 업데이트 작업이 어떻게 작동하는지 이해하고 소프트웨어 설치에 대한 모범 사례를 정확히 이해하는 데 어려움이 있습니다.

/etc/apt/sources.list모든 리포지토리가 나열 되는 파일이 있으며 apt-get update나중에 사용할 때이 리포지토리가 쿼리된다는 것을 이해 합니다
apt-get upgrade. 이것은 완벽하게 이해되며 최근 에이 "소스"목록 spotify에 추가
deb http://repository.spotify.com stable non-free하여 설치 했습니다 .

그러나 나는 혼란스러워했다 ...

Chrome을 다운로드 할 때 .deb파일 을 다운로드하여 가져와야 했지만 Chrome이 아무런 문제없이 설치되었지만 ...에 새로운 항목이 표시되지 않습니다 /etc/apt/sources.list...

그렇다면 apt-get updateChrome 업데이트와 관련하여 쿼리 할 위치를 어떻게 알 수 있습니까? 소스 파일에서 이미 나열된 저장소 중 하나에 추가 되었습니까?

설치된 모든 소프트웨어가 업데이트 기능에 포함되기를 바랍니다.

답변:


10

이것은 실제로 복잡합니다. 우선, aptA는 프런트 엔드dkpg실제로 핸들 패키지를 설치 / 제거한다. 따라서 /etc/apt/sources.list(및의 모든 파일 /etc/apt/sources.list.d/)은로 읽지 apt않습니다 dpkg.

이제 .deb파일을 수동으로 다운로드하면 바이 패스 apt되어 dpkg -i packagename.deb대신 설치하는 데 사용됩니다. 이는 apt의 데이터베이스가 업데이트되지 않으며 apt시스템에 설치 한 패키지에 대한 정보가 없음을 의미합니다. 즉, 수동으로 설치된 패키지 apt-get upgrade절대 업데이트하지 않습니다 .

그렇게 말하면 chrome실제로 규칙의 예외입니다. 다운로드 페이지로 이동하면 다음 메시지가 표시됩니다.

 여기에 이미지 설명을 입력하십시오

맨 아래에는이 메모가 있습니다.

참고 : Chrome을 설치하면 Google 저장소가 추가되어 시스템에서 Chrome을 자동으로 최신 상태로 유지합니다. Google의 저장소를 원하지 않으면 패키지를 설치하기 전에“sudo touch / etc / default / google-chrome”을 수행하십시오.

것을이 수단 .deb패키지 시스템 (특히, 그것은에서 파일을 만듭니다에 구글의 저장소를 추가하는 스크립트 포함 /etc/apt/sources.list.d/하여 그 보장하는 것은) chrome 합니다 사용할 때 업데이트를 apt-get.


알았어, 이해가 되겠지만 수동으로 설치된 모든 패키지의 업데이트를 쉽게 관리 할 수있는 방법이 있습니까?
Kirbies

2
@Morten 아니오, 그것이 바로 그 이유 apt가 존재 하는 이유입니다 . 만약 당신이 그 시스템 밖으로 나가면 당신은 스스로 있습니다. 트릭이 있지만 수동으로 설치할 수있는 몇 가지 패키지에 대한 노력은 거의 가치가 없습니다.
terdon

1
패키지 관리자는 실제로 dpkg 또는 apt에 의해 패키지가 설치되었는지 여부는 상관하지 않습니다. 리포지토리에서 최신 버전의 패키지를 찾으면 최신 버전이 설치됩니다.
Florian Diesch

물론 @FlorianDiesch 예. 내 요지는 저장소에없는 패키지에 대한 것이었다.
terdon

1

apt는에 나열된 소스 /etc/apt/sources.list및의 모든 파일을 검색 /etc/apt/source.list.d합니다. 당신은 같은 파일이됩니다 google-chrome.list/etc/apt/sources.list.d있는 다음 줄을해야합니다 :

deb http://dl.google.com/linux/chrome/deb/ stable main

구글 크롬 업데이트 소스로 사용됩니다.

Google 크롬 용 deb 파일을 수동으로 다운로드하여 설치하면 deb 파일의 스크립트가이 파일을 생성하므로 업데이트를 수동으로 검색 할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.