프로그램이 어떻게 설치되었는지 어디서 확인할 수 있나요?

프로그램이 어떻게 설치되었는지 어디서 확인할 수 있나요?

Snap, PPA, 다운로드한 deb 또는 표준 저장소를 통해 하나의 애플리케이션이 설치되었는지 확인할 수 있는 방법이 있습니까?

현재 Focal 20.04 노트북에 Zoom이 설치되어 있습니다. 처음에 어떻게 설치했는지 알아내려고 노력 중인데 이 문제가 꽤 자주 발생합니다. 독점 앱(예: Slack 또는 Dropbox)이고 이를 업데이트하고 싶거나 앱에서 최신 버전을 사용할 수 있다는 알림을 보내고(Keepass) 저장소에서 설치했는지 다시 확인하고 싶습니다. 업데이트할 저장소입니다.

추측해야 한다면 다운로드한 에서 Zoom을 설치했을 가능성이 높지만 .deb확인 방법을 잘 모르겠습니다. 에서 Slack을 설치하지 않은 것 같습니다 .deb.

나는 다음의 몇 가지 제안을 따르려고 노력했습니다.패키지가 어느 저장소에서 왔는지 어떻게 알 수 있나요?그러나 결과는 모호하다. 예를 들어 apt policySlack에 대한 결과 가 없습니다 .

amanda@rajje:~$ apt policy slack
slack:
  Installed: (none)
  Candidate: 1:0.15.2-9
  Version table:
     1:0.15.2-9 500
        500 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 Packages
        500 http://us.archive.ubuntu.com/ubuntu focal/universe i386 Packages

아마도 Ubuntu 소프트웨어에서 설치했기 때문에 Snap입니다. Slack 항목 스크린샷

내가 어떤 원숭이 작업도 하지 않은 것으로 알고 있는 앱을 시도하면 apt policy저장소 목록이 표시됩니다. 이것이 저장소에서 설치했다는 의미라고 가정할 수 있습니까?

amanda@rajje:~$ apt policy emacs
emacs:
  Installed: 1:26.3+1-1ubuntu2
  Candidate: 1:26.3+1-1ubuntu2
  Version table:
 *** 1:26.3+1-1ubuntu2 500
        500 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 Packages
        500 http://us.archive.ubuntu.com/ubuntu focal/universe i386 Packages
        100 /var/lib/dpkg/status

저장소가 표시되지 않으면 패키지 다운로드에서 설치했다는 의미입니까?

amanda@rajje:~$ apt policy zoom
zoom:
  Installed: 5.0.403652.0509
  Candidate: 5.0.403652.0509
  Version table:
 *** 5.0.403652.0509 100
        100 /var/lib/dpkg/status

답변1

which zoom또는 로 시작하세요 which zoom-client. 그러면 실행 파일의 파일 경로가 반환됩니다. (힌트: tab완성은 당신의 친구입니다)

다음으로 시작하는 모든 항목은 Snap(또는 Ubuntu 소프트웨어 센터)에 의해 설치되었으므로 소프트웨어 센터를 열거나 전체/올바른 Snap 이름을 얻기 위해 /snap실행하여 자세한 내용을 알아볼 수 있습니다 .snap list | grep -i zoom

시작되면 /usr/bin아마도 또는 Synaptic과 함께 설치되었을 것입니다 apt. 그런 경우에는 dpkg -l | grep -i zoom또는 apt policy zoom*자세한 내용을 알려드리겠습니다. Synaptic에서 "설치됨(로컬 또는 사용되지 않음)" 필터를 확인하여 설치된 항목이 apt로컬인지 저장소를 통해 설치되었는지 확인하세요.

다음 사항을 확인할 수도 있습니다.

  • Flatpak - 확인해보세요flatpak list | grep -i zoom
  • 우분투 메이크- 확인 umake --list-installed(예: IDE)

답변2

Synaptic Package Manager를 설치합니다(Ubuntu 소프트웨어에서 설치하거나 를 사용하여 명령줄에서 설치할 수 있음 sudo apt install synaptic). 패키지를 관리하는 훌륭한 도구입니다 .deb. 메인 화면에는 아래 스크린샷에서 볼 수 있듯이 그룹으로 나누어진 패키지가 표시됩니다. "설치됨(로컬 또는 사용되지 않음)"이라는 그룹을 살펴보세요. 이는 리포지토리가 아닌 수동으로 다운로드한 파일에서 설치된 패키지입니다( 와 같은 일부 매우 필수적인 시스템 패키지 libc도 여기에 포함되어 있음). 내 스크린샷에서 zoom해당 패키지를 볼 수 있습니다 .

여기에 이미지 설명을 입력하세요

그런데. Slack 예에서 프로그램은 패키지가 아닌 스냅으로 설치되며 .deb스크린샷의 데이터 시작 부분에 "채널"이 있으면 이를 인식할 수 있습니다. Snap 패키지에는 항상 채널(일반적으로 latest/stable) 이 있지만 .deb패키지에는 없습니다. 따라서 aptSynaptic이나 Synaptic 모두 해당 패키지에 대해 아무것도 알 수 없습니다(실제로 귀하의 예 apt policy에서는미설치 slack.deb패키지는 리포지토리에서 설치할 수 있습니다 ).

답변3

요청한 날짜보다 훨씬 지났지만 저장소와 스냅 모두에서 동시에 앱을 검색하고 해당 소스로 설치된 앱을 쿼리하는 스크립트(오늘 아침)를 빠르게 만들었습니다.

누구든지 유용하다고 생각하면 여기 git repo가 ​​있습니다.

https://github.com/rabinnh/uni-pkg-util/tree/main

관련 정보