유용한 apt (dpkg) 명령 [닫힘]


9

apt- *, dpkg 또는 aptitude와 관련하여 잘 알려지지 않았지만 유용한 apt 명령을 게시하십시오.


7
이것은 실제로 질문이 아닙니다.
Martin Owens -doctormo-

답변:


7

내가 자주 사용하는 명령 :

종속성 및 역 종속성을 보려면

apt-cache [--important] [--installed] [--recurse] depends $package
apt-cache rdepends $package

패키지, 모든 자동 제거 패키지 및 모든 관련 구성 파일을 제거하려면 다음을 수행하십시오.

sudo apt-get --purge --auto-remove purge $package

실제 apt구성 옵션 을 보려면

apt-config dump | less

명령 줄에서 옵션을 수정하려면

$ apt-config dump | grep -i recommend
APT::Install-Recommends "1";
$ sudo apt-get -o APT::Install-Recommends="0" install $package

다음은 권장 패키지 설치를 피하기 위해 명령 행을 통해 APT 옵션을 지정하는 예일뿐입니다.

sudo apt-get --no-install-recommends $package

모든 로컬 / 더 이상 사용되지 않는 패키지를 보려면

aptitude search ~o

잔여 구성으로 제거 된 패키지를 보려면

aptitude search ~c

그들을 제거하기 위해

sudo aptitude purge ~c

설치된 모든 패키지 목록을 얻으려면 ( dpkg -l종종 잘린 열 출력을 제공 할 수 있음)

dpkg --get-selections | awk '{ print $1 }'

또는

dpkg-query -Wf '${Package}\n'  # other fields available, see man page

해산하려면 패키지를 수정 한 후 다시 조립하십시오.

dpkg-deb -x file.deb ./dir
cd dir 
dpkg-deb -e ../file.deb
# apply your modification, then... 
cd ..
dpkg-deb -b dir file-new.deb

4

내가 많이 사용하는 두 가지는 다음과 같습니다.

apt-get autoremove <packagename>

패키지와 사용하지 않는 종속성을 제거하여 앱을 사용 해보고 필요하지 않은 것으로 판단하고 크래프트도 제거하려는 경우 유용합니다.

dpkg -S /path/to/file

파일이 설치된 패키지를 알려줍니다.

마지막으로 하나 더 ..

dpkg -l <packagename> | grep ^ii

패키지를 표시하지만 상태가 ii 인 패키지 만 설치되어 있으므로 설치된 항목을 표시하지 않습니다.

설치되지 않은 파일의 패키지 이름을 얻으려면 ( dpkg -S이지만 설치되지 않은 패키지의 경우) 다음을 설치 apt-file하고 실행하십시오.

apt-file search /path/to/file

whichdpkg -S와 함께 사용하면 유용합니다 . 예 : 다른 이름을 가진 패키지에있는 실행 파일의 경우 :dpkg -S `which uname`
Benjamin Rubin

예, 저것도 좋은 것입니다.
popey

3

패키지의 변경 로그보기

$ aptitude changelog <pkgname>

예:

$ aptitude changelog sudo
sudo (1.7.0-1ubuntu2.4) karmic-security; urgency=low

  * SECURITY UPDATE: properly handle multiple PATH variables when using
    secure_path in env.c
    - Adapted http://www.sudo.ws/repos/sudo/raw-rev/a09c6812eaec
    - CVE-2010-1646
...

2
우분투 11.04 Natty 기준으로 apt-get changelog sudo작동합니다.
Lekensteyn

3

apt-file을 설치 한 다음를 실행하십시오 sudo apt-file update. 이제 설치하지 않은 패키지의 파일을 검색 할 수 있습니다.

다른 버전의 우분투에서 패키지에 대한 정보를 알아야하는 경우에도 유용합니다. rscript는 devscripts 패키지에 있습니다. 패키지 이름을 인수로 제공하면 모든 현재 Ubuntu 버전에 해당 패키지 버전과 패키지가있는 저장소 섹션이 표시됩니다.

예:

[bnrubin@server:~/]$ rmadison cowsay
    cowsay |     3.03-8 | dapper/universe | source, all
    cowsay |     3.03-9 | hardy/universe | source, all
    cowsay |   3.03-9.2 | jaunty/universe | source, all
    cowsay |   3.03-9.2 | karmic/universe | source, all
    cowsay |   3.03-9.2 | lucid/universe | source, all
    cowsay | 3.03+dfsg1-2 | maverick/universe | source, all
    cowsay | 3.03+dfsg1-2 | natty/universe | source, all

apt-file이제 사용자의 데이터베이스를 관리 할 수 ​​있으므로 루트 사용자 일 필요가 없습니다 update.
enzotib

apt-file 꽤 좋습니다. 공유해 주셔서 감사합니다.
Gödel

1

'apt-'로 시작하는 목록 명령을 얻으려면 다음을 수행하십시오. 터미널을 열고 'apt-'를 입력하고 Tab 키를 두 번 누르면 'apt-'로 시작하는 모든 명령이 나열됩니다.

샘플 출력 :

apt-add-repository    apt-extracttemplates  apt-key
apt-cache             apt-file              apt-mark
apt-cdrom             apt-ftparchive        apt-sortpkgs
apt-config            apt-get 

자세한 정보를 얻으려면 특정 명령의 매뉴얼 페이지를 확인할 수 있습니다

예 : man apt-get


1

세 가지 종류의 패키지를 생각하고 싶습니다.

  • 시스템 패키지 (필수 패키지 또는 우선 표준 이상의 패키지)
  • 사용자 패키지 (선택적으로 또는 추가 우선 순위의 수동으로 설치된 패키지)
  • 종속성 및 권장 사항 (자동으로 설치된 패키지 / 시스템 또는 사용자 패키지가 아닌 모든 것)

모든 "시스템 패키지"를 표시하려면

aptitude search '(~pstandard|~pimportant|~prequired|~E)'

모두 설치하고 수동으로 설치 한 것으로 표시하고 싶습니다.

aptitude install '(~pstandard|~pimportant|~prequired|~E)!~i'
aptitude unmarkauto '(~pstandard|~pimportant|~prequired|~E)~i~M'

모든 "사용자 패키지"를 표시하려면

aptitude search '~i!~M!(~pstandard|~pimportant|~prequired|~E)'

이 목록에는 원하는 패키지 만 있어야합니다. 다른 모든 패키지는 종속 패키지이거나 다른 패키지의 권장 패키지 일 수 있습니다. 자동으로 설치된 것으로 표시 할 수 있습니다

aptitude markauto libsomething

에서 봐 적성의 검색 용어 참조
필수, 필수, 중요, 표준, 옵션, 또는 추가 패키지는 무엇입니까? 배경 정보.


0
  • 다른 패키지를 제거하거나 커널 업그레이드이기 때문에 유지되는 업그레이드 패키지 :

    sudo apt-get dist-upgrade
    
  • 패키지와 구성을 제거하십시오.

    sudo apt-get purge package
    
  • 섹션, 버전, 종속성, 관리자 및 설명을 포함하여 패키지 데이터베이스에 알려진 패키지의 세부 사항을 표시하십시오.

    apt-cache show package
    
  • 설치된 패키지에 파일 나열

    dpkg -L pkg
    
  • 모든 패키지 업그레이드

    sudo apt-get upgrade
    

-2
dpkg -i --force-architecture something.i386.deb

amd64에 일부 i386 뎁을 설치합니다.

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