다운로드하기 전에 apt를 사용하는 동안 패키지 크기를 결정하는 방법은 무엇입니까?


29

를 사용 apt-get install <package_name>하고 다운로드해야 할 종속성이있는 경우 터미널은 추가 패키지 이름과 총 크기를 출력하고 다운로드하기 전에 확인을 요청합니다.

그러나 종속성이 충족되고 명명 된 패키지 만 다운로드해야하는 경우 크기 출력 및 확인이 없습니다.

Synaptic을 사용할 때, 설치 후 사용할 새 패키지의 총 크기를 볼 수 있지만 패키지에서 패키지로 이동하고 속성을 사용하여 압축 된 크기를 보는 것 외에는 다운로드 할 크기를 볼 수 없습니다.

다운로드 및 설치하기 전에 터미널 및 시냅틱에서 패키지 크기를 볼 수있는 방법이 있는지 알고 싶습니다.

답변:


27

터미널에서 단일 패키지의 경우 :

apt-cache --no-all-versions show $package | grep '^Size: '

패키지 이상 :

apt-cache --no-all-versions show $packages | 
    awk '$1 == "Package:" { p = $2 }
         $1 == "Size:"    { printf("%10d %s\n", $2, p) }'

나는 시냅틱에 대해 전혀 모른다.


이것이 무엇입니까?
tatsu

나는 그것이 Size바이트이고 Installed-SizeKiB 라고 생각 하지만 이것이 어디에서 정의되었는지는 모른다. 예 : Firefox 버전 :apt-cache show firefox | grep -E "Package:|Version:|Size:"
Mikko Rantalainen

의도 된 휴먼 CLI는 오늘날 apt입니다. 예를 들어,apt show firefox | grep Size
미코 Rantalainen

문서를 찾았습니다. apt-cache show파일에 지정된 실제 값을 debian/control문서에서 Installed-Size찾을 수 있습니다. debian.org/doc/debian-policy/…
Mikko Rantalainen

11

apt-cache show <package>또는 aptitude show <package>크기를 포함하여 패키지에 대한 자세한 정보를 표시합니다.

패키지 크기의 경우에만 다음을 사용할 수 있습니다.

apt-cache show <package> | grep Installed-Size

또는

aptitude show <package> | grep 'Uncompressed Size'

들어 .deb패키지 당신은 사용할 수 있습니다 :

dpkg-deb -I <package>.deb | grep Installed-Size

1
종속성의 크기도 표시됩니까?
Tachyons

@Tachyons 문제는 " 패키지 크기를 얻을 수있는 방법이 있습니까? "입니다. 의존성 크기에 대해 관심이 있다면 질문하기 버튼을 사용 하여 다른 질문을 할 수 있습니다 .
Radu Rădeanu

1
그러나 dep의 크기를 포함하면 답변을 효율적으로 만들 수 있습니다. 그냥 내 친구 제안 :)
rɑːdːɑ

1
@Jaidpkg-deb -I <package>.deb | grep Installed-Size
Radu Rădeanu

3
나를 위해 68 ... MB를 반환합니까? GB? 숟가락?
puk

5

"드라 이런"모드를 사용하면 패키지를 다운로드하고 설치하는 것처럼 가장 할 수 있습니다

$ aptitude install -sy xlockmore
The following NEW packages will be installed:
  xlockmore 
0 packages upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
Need to get 194 kB of archives. After unpacking 373 kB will be used.
Would download/install/remove packages.

시도했지만 크기가 보이지 않습니다. 줄 : x 개의 아카이브를 가져와야합니다. 포장 풀기 후 x가 사용됩니다. 표시되지 않습니다.

1
죄송합니다. apt-get apt-get이 아니어야합니다 (쉘 별칭이 있습니다). 업데이트되었습니다. 이 솔루션에는 실제로 다운로드해야 할 항목을 표시 할 수있는 이점이 있습니다 (이미 설치된 종속성은 포함하지 않음).
Adam Byrtek

5

이것은 맞지만 크기는 바이트 단위로 표시됩니다. 그리고 이것은 더 나은 형식으로 크기를 보여 주지만 패키지가 매우 작은 크기 (예 : <1MB)이면 echo 'n'패키지를 설치하더라도 패키지가 설치됩니다 (이 경우 apt는 프롬프트하지 않습니다).

그래서, 당신은 사용 --no-download하여 --assume-no다음과 같이 :

sudo apt-get --no-download --assume-no install <package_name> | grep 'Need to get'

여기서는 --no-download패키지를 다운로드하지 말 것을 요구하며 프롬프트가 표시되면 --assume-no아니오 ( n) 를 가정 합니다.

예:

$ sudo apt-get --no-download --assume-no install ttf-devanagari-fonts 2>/dev/null | grep 'Need to get'
Need to get 938 kB of archives.

이 답변은 종속성도 포함하기 때문에 훌륭합니다. 사용되는 '실제'스토리지를 표시하려면 '추가 디스크 공간'을 grep하십시오.
Panki

0

아래 명령을 사용하여 특정 패키지에 다운로드해야 할 아카이브의 크기를 볼 수 있습니다.

echo 'n' | sudo apt-get install package | awk '/^Need to get/ {print $4,$5}'

@enzotib 답변은 좋지만 mb가 아닌 다른 형식으로 다운로드 해야하는 아카이브의 크기를 보여줍니다. 그러나이 명령은 Mb의 크기를 보여줍니다.

예:

$ apt-cache --no-all-versions show chromium-browser | grep '^Size: '
Size: 41493718

$ echo 'n' | sudo apt-get install chromium-browser | awk '/^Need to get/ {print $4,$5}'
44.4 MB

echo 'n' | sudo apt-get install <package>매우 작은 크기 인 경우에도 패키지 설치
Pandya
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.