특정 버전의 우분투에서 사용할 수있는 모든 패키지 목록을 어떻게 구할 수 있습니까?


5

다음 명령을 사용하여 사용 가능한 모든 패키지 및 세부 정보 목록을 얻을 수 있습니다.

apt-cache search .

다음과 같은 패키지 목록을 출력합니다.

i   0ad                - Real-time strategy game of ancient warfare
i   0ad-data           - Real-time strategy game of ancient warfare (data files)                            
i   0ad-data-common    - Real-time strategy game of ancient warfare (common data files)                        
p   0ad-dbg            - Real-time strategy game of ancient warfare (debug)                                    
p   0xffff             - Open Free Fiasco Firmware Flasher                                                     
p   2ping              - Ping utility to determine directional packet loss                                     
p   2vcard             - perl script to convert an addressbook to VCARD file format                            
p   3270-common        - Common files for IBM 3270 emulators and pr3287                                        
p   389-admin          - 389 Directory Administration Server 
...

설치 하지 않은 Ubuntu 버전의 패키지 목록을 어떻게 얻을 수 있습니까?

따라서 특정 버전의 Ubuntu에 사용할 수있는 모든 패키지의 데이터베이스를 어디에서 다운로드 할 수 있으며, 세부 정보 (버전, 크기, 자세한 설명 포함)를 일반 텍스트 또는 형식으로 얻는 방법 스크립트로 파싱하기 쉬운 것은 무엇입니까?


나에게 apt-cache search .또는 apt-cache search ''23xx 라인을 넣으십시오. 실제로는 다른 DE 버전을 포함하여 가능한 모든 패키지가 있습니다.
Videonauth

2
이 현상금을 가지고 있지 않은 경우, 나는이의 잘 속는로 좋을 것 askubuntu.com/q/722439/158442
muru

답변:


3

chdist 사용하십시오 . 이 명령을 사용하면 평소 apt-getapt-cache같이 우분투 (또는 데비안 또는 다른 데비안 파생 배포판)의 다른 릴리스 를 실행할 수 있습니다 .

또한 grep-dctrl 주위에 래퍼를 제공하여 메타 데이터 필드를 쉽게 검색하고보고 할 수 있습니다.


1
감사합니다. 이것은 내가 필요한 것을 정확하게 제공하는 것으로 보이며 Sneetsher의 답변보다 방법을 사용하는 것이 더 쉬운 것처럼 보입니다.
JonasCz

대단한 대답입니다. 당신은 나를 이겼습니다 : D. 그러한 도구에 대해 알게되어 반갑습니다.
user.dz 2016 년

8

1. 온라인

muru의 답변 으로 http://packages.ubuntu.com/ 을 사용하는 것을 선호합니다.

2. 오프라인, 수동

그렇지 않으면 오프라인 솔루션을 찾고 있다면 MR이어야합니다. http://archive.ubuntu.com/ubuntu/dists/ 에서 APT를 다운로드하십시오 .

p=$(pwd); for c in main universe multiverse restricted; do for u in "" -security -updates; do for a in binary-amd64 binary-i386; do mkdir trusty${u}_${c}_$a; cd trusty${u}_${c}_$a; wget http://archive.ubuntu.com/ubuntu/dists/trusty$u/$c/$a/Packages.bz2; cd $p; done; done; done;

결과 :

$ tree
.
├── trusty_main_binary-amd64
│   └── Packages.bz2
├── trusty_main_binary-i386
│   └── Packages.bz2
├── trusty_multiverse_binary-amd64
│   └── Packages.bz2
├── trusty_multiverse_binary-i386
│   └── Packages.bz2
├── trusty_restricted_binary-amd64
│   └── Packages.bz2
├── trusty_restricted_binary-i386
...

3. apt-cache / overlay-filesystem / chroot를 사용하는 오프라인

나쁜 고급 설정 :

실제로 16.04에 설치된 sources.list*것과 동일한 사용자 정의를 사용 apt-cache하지만 apt의 16.04 실제 목록 파일을 덮어 쓰지 않고 /var/lib/apt/lists/변경 사항은 overlay파일 시스템으로 이동 합니다.

설정:

sudo apt-get install chroot
mkdir sandbox0
cd sandbox0
mkdir upper work merged
sudo mount -t overlay overlay -o lowerdir=/,upperdir=./upper,workdir=./work ./merged
sudo chroot merged/
echo "deb http://archive.ubuntu.com/ubuntu/ trusty universe multiverse main restricted" > /etc/apt/sources.list
rm -r /etc/apt/sources.list.d/*
apt-get update
exit

사용 : (스크립트를 준비 할 수 있습니다)

sudo mount -t overlay overlay -o lowerdir=/,upperdir=./upper,workdir=./work ./merged
sudo chroot merged/

apt-cache ...

2

당신은 이미 게시 된 모든 가능한 것을 나열하는 명령을 가지고 있지만 ok는 우리가 좀 더 깊이 갈 수 있습니까? 그래서 apt-cache search .또는 apt-cache search ''출력 실제로 다른 드 버전을 포함하여 가능한 모든 패키지의 전체 양을 약 2300+ 라인.

더 쉽게하기 위해 다음과 같은 이름 만 얻을 수 있습니다.

apt-cache search '' | sort -d | awk '{print $1}'

또는 더 많은 정보를 좋아하고 긴 목록을 신경 쓰지 않아도됩니다 apt-cache policy.

apt-cache policy $(apt-cache search '' | sort -d | awk '{print $1}')

4
예, 그러나 " 설치하지 않은 특정 버전의 Ubuntu를 요청 합니까? " 라고 물었 으므로 아직 apt-cache에이 목록이 없으므로 어떻게 든 인터넷에서 가져와야합니다. 내가 어떻게 할 수 있는지 알아?
JonasCz

적어도 데스크톱 버전의 경우 매니페스트 파일이 있습니다. 하나에 대한 링크를 찾으십시오.
Videonauth

releases.ubuntu.com/16.04/ubuntu-16.04-desktop-amd64.manifest 는 16.04 LTS와 14.04.4에 해당하며 releases.ubuntu.com/14.04/ubuntu-14.04.4-desktop-amd64.manifest는 다음 과 같습니다. 파일 형식으로 사용하십시오.
Videonauth

불행히도 이것은 사용 가능한 모든 패키지 (ISO의 패키지 목록 일뿐 입니다)의 전체 목록이 아닙니다. 필요한 설명 및 기타 데이터도 필요하지 않습니다. 다른 가능성?
JonasCz 2016 년

내가 아는 것은 아니지만, 이것이 내가 당신에게 줄 수있는 가장 좋은 추측입니다. 매니페스트의 목록에는 내가 생각하는 표준 내용 만 포함되어 있지 않습니다. 그들은 꽤 완성 된 옆에 있습니다.
Videonauth
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.