공식 웹사이트에서 다운로드한 파일로 Prey를 설치했을 때 .deb
갑자기 내 Ubunu 노트북에 "불필요한" 패키지가 많이 설치되어 있다는 것을 깨달았습니다.
내 작업 순서는 다음과 같습니다.
노력하다
sudo dpkg -i prey.deb
. 패킷 손실/충돌로 인해 작동하지 않습니다.prey:i386 depèn de sudo. prey:i386 depèn de python. prey:i386 depèn de python-gtk2. prey:i386 depèn de scrot. prey:i386 depèn de streamer. prey:i386 depèn de mpg123. prey:i386 depèn de dmidecode. prey:i386 depèn de gksu.
sudo apt-get update
그런 다음 하나 (모두 잘 작동함)와 하나sudo apt-get upgrade
(이전 패키지 설치가 실패했다고 생각하여 실패함)를 수행했습니다 . APT가apt-get -f install
이것을 제안했기 때문에 그렇게 했습니다. 갑자기 나는 (적어도 어제는) 내가 갖고 있지 않은 불필요한 패키지 목록이 매우 길다는 것을 깨달았습니다.aglfn asymptote asymptote-doc checkbox-ng checkbox-ng-service cm-super cm-super-minimal context context-modules fonts-cabin fonts-comfortaa fonts-dejavu-extra fonts-ebgaramond fonts-ebgaramond-extra fonts-font-awesome fonts-freefont-otf fonts-gfs-artemisia fonts-gfs-baskerville fonts-gfs-bodoni-classic fonts-gfs-complutum fonts-gfs-didot fonts-gfs-didot-classic fonts-gfs-gazis fonts-gfs-neohellenic fonts-gfs-olga fonts-gfs-porson fonts-gfs-solomos fonts-gfs-theokritos fonts-hosny-amiri fonts-inconsolata fonts-junicode fonts-lato fonts-linuxlibertine fonts-lobster fonts-lobstertwo fonts-oflb-asana-math fonts-roboto fonts-sil-gentium fonts-sil-gentium-basic fonts-sil-gentiumplus fonts-stix freeglut3 giblib1:i386 gstreamer0.10-alsa gstreamer0.10-plugins-good gstreamer0.10-x lcdf-typetools libasound2:i386 libatk1.0-0:i386 libaudit1:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libbz2-1.0:i386 libcairo2:i386 libcomerr2:i386 libcups2:i386 libdatrie1:i386 libdb5.3:i386 libdbus-1-3:i386 libdbus-glib-1-2:i386 libdv4:i386 libffi6:i386 libfontconfig1:i386 libfreetype6:i386 libftgl2 libgconf-2-4:i386 libgcrypt20:i386 libgdk-pixbuf2.0-0:i386 libgif4:i386 libglib2.0-0:i386 libgmp10:i386 libgnome-keyring0:i386 libgnutls-deb0-28:i386 libgpg-error0:i386 libgpm2:i386 libgraphite2-3:i386 libgsl0ldbl libgssapi-krb5-2:i386 libgtk2.0-0:i386 libharfbuzz0b:i386 libhogweed4:i386 libid3tag0:i386 libimlib2:i386 libintl-perl libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 libk5crypto3:i386 libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libltdl7:i386 liblzma5:i386 libmpg123-0:i386 libncursesw5:i386 libnettle6:i386 libosmesa6 libp11-kit0:i386 libpam-modules:i386 libpam0g:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpcre3:i386 libpixman-1-0:i386 libpng12-0:i386 libpoppler-qt5-1 libprojectm2v5 libpython-stdlib:i386 libpython2.7-minimal:i386 libpython2.7-stdlib:i386 libpython3.5-minimal libpython3.5-stdlib libqca2-plugins libqca2v5 libqt5script5 libqxt-core0 libqxt-gui0 libreadline6:i386 libselinux1:i386 libsigsegv2 libsqlite3-0:i386 libssl1.0.0:i386 libstartup-notification0:i386 libsystemd0:i386 libtasn1-6:i386 libtext-unidecode-perl libthai0:i386 libtiff5:i386 libtinfo5:i386 libv4l-0:i386 libv4lconvert0:i386 libx11-xcb1:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-util1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxml-libxml-perl libxml-namespacesupport-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl libxrandr2:i386 libxrender1:i386 linux-image-4.2.0-16-generic linux-image-4.2.0-18-generic linux-image-4.2.0-19-generic linux-image-4.2.0-22-generic linux-image-extra-4.2.0-16-generic linux-image-extra-4.2.0-18-generic linux-image-extra-4.2.0-19-generic linux-image-extra-4.2.0-22-generic linux-signed-image-4.2.0-18-generic linux-signed-image-4.2.0-19-generic linux-signed-image-4.2.0-22-generic m-tx mpg123:i386 musixtex pfb2t1c2pfb plainbox-secure-policy pmx python3-checkbox-ng python3-checkbox-support python3-jinja2 python3-plainbox python3-pyparsing python3-xlsxwriter python3.5 python3.5-minimal qml-module-qtquick-localstorage qtdeclarative5-localstorage-plugin scrot:i386 streamer:i386 sudo:i386 tex4ht tex4ht-common texinfo texlive-fonts-extra texlive-fonts-extra-doc texlive-formats-extra texlive-games texlive-generic-extra texlive-humanities texlive-humanities-doc texlive-lang-african texlive-lang-arabic texlive-lang-cyrillic texlive-lang-czechslovak texlive-lang-english texlive-lang-european texlive-lang-french texlive-lang-german texlive-lang-greek texlive-lang-indic texlive-lang-italian texlive-lang-polish texlive-lang-portuguese texlive-lang-spanish texlive-luatex texlive-math-extra texlive-music texlive-omega texlive-plain-extra texlive-publishers texlive-publishers-doc texlive-science-doc texlive-xetex ttf-adf-accanthis ttf-adf-gillius ttf-adf-universalis ttf-dejavu-core xawtv-plugins:i386 zlib1g:i386
이 긴 목록 외에도
apt
다음 패키지도 제거될 것이라고 명시되어 있습니다(sudo
??):Es SUPRIMIRAN els paquets següents: plainbox-provider-resource-generic prey:i386 sudo
apt-get -f install
그래서 혹시나 해서 포기했는데 ...프로세스 에 대해 확신이 없었기 때문에 를
dpkg
실행하여 첫 번째 명령을 취소했습니다dpkg --purge prey
.이 시점에서
apt-get -f install
불필요한 패키지 목록을 다시 확인하여() 줄어들었지만 여전히 명령을 취소할 수 있을 만큼 길어졌습니다.apt
필요하지 않기 때문에 "제거"하려는 패키지 목록은 다음과 같습니다 .aglfn asymptote asymptote-doc checkbox-ng checkbox-ng-service cm-super cm-super-minimal context context-modules fonts-cabin fonts-comfortaa fonts-dejavu-extra fonts-ebgaramond fonts-ebgaramond-extra fonts-font-awesome fonts-freefont-otf fonts-gfs-artemisia fonts-gfs-baskerville fonts-gfs-bodoni-classic fonts-gfs-complutum fonts-gfs-didot fonts-gfs-didot-classic fonts-gfs-gazis fonts-gfs-neohellenic fonts-gfs-olga fonts-gfs-porson fonts-gfs-solomos fonts-gfs-theokritos fonts-hosny-amiri fonts-inconsolata fonts-junicode fonts-lato fonts-linuxlibertine fonts-lobster fonts-lobstertwo fonts-oflb-asana-math fonts-roboto fonts-sil-gentium fonts-sil-gentium-basic fonts-sil-gentiumplus fonts-stix freeglut3 gstreamer0.10-alsa gstreamer0.10-plugins-good gstreamer0.10-x lcdf-typetools libftgl2 libgsl0ldbl libintl-perl libosmesa6 libpoppler-qt5-1 libprojectm2v5 libpython3.5-minimal libpython3.5-stdlib libqca2-plugins libqca2v5 libqt5script5 libqxt-core0 libqxt-gui0 libsigsegv2 libtext-unidecode-perl libxml-libxml-perl libxml-namespacesupport-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl linux-image-4.2.0-16-generic linux-image-4.2.0-18-generic linux-image-4.2.0-19-generic linux-image-4.2.0-22-generic linux-image-extra-4.2.0-16-generic linux-image-extra-4.2.0-18-generic linux-image-extra-4.2.0-19-generic linux-image-extra-4.2.0-22-generic linux-signed-image-4.2.0-18-generic linux-signed-image-4.2.0-19-generic linux-signed-image-4.2.0-22-generic m-tx musixtex pfb2t1c2pfb plainbox-provider-resource-generic plainbox-secure-policy pmx python3-checkbox-ng python3-checkbox-support python3-jinja2 python3-plainbox python3-pyparsing python3-xlsxwriter python3.5 python3.5-minimal qml-module-qtquick-localstorage qtdeclarative5-localstorage-plugin tex4ht tex4ht-common texinfo texlive-fonts-extra texlive-fonts-extra-doc texlive-formats-extra texlive-games texlive-generic-extra texlive-humanities texlive-humanities-doc texlive-lang-african texlive-lang-arabic texlive-lang-cyrillic texlive-lang-czechslovak texlive-lang-english texlive-lang-european texlive-lang-french texlive-lang-german texlive-lang-greek texlive-lang-indic texlive-lang-italian texlive-lang-polish texlive-lang-portuguese texlive-lang-spanish texlive-luatex texlive-math-extra texlive-music texlive-omega texlive-plain-extra texlive-publishers texlive-publishers-doc texlive-science-doc texlive-xetex ttf-adf-accanthis ttf-adf-gillius ttf-adf-universalis ttf-dejavu-core
나는 어제 이 목록이 몇 가지 다른 것들로 채워져 있었지만 linux-signed-image...
확실히 전부는 아니었던 것을 기억합니다. 실제로 이러한 패키지(예: , , texlive-*
... )가 사용되고 있다고 판단되면 무엇이 손상되었을 수 있으며 어떻게 복원할 수 있습니까?fonts-*
ttf-*
python-*
오류가 3단계에서 발생한 것으로 의심되지만 확실하지 않습니다.
고쳐 쓰다:의견에 제안된 수정 사항을 적용하기 전에 debfoster
몇 가지 패키지를 확인하고 다음 사항을 확인했습니다.
ubuntu-desktop
설치되지 않았습니다(?!). 그리고 KDE나 XCFE를 사용하고 있지 않습니다.
답변1
이미 제안된 debfoster 외에도 불필요한 패키지를 찾아 정리하는 루틴(늙은 아내의 이야기)이 있습니다.
(첫 번째) 그러나왜해당 패키지가 설치되어 있습니까?
패키지를 정리할 때 사용해야 하는 도구 aptitude why pkg-name
aptitude 매뉴얼 페이지에서:
$ aptitude why kdepim
i nautilus-data Recommends nautilus
i A nautilus Recommends desktop-base (>= 0.2)
i A desktop-base Suggests gnome | kde | xfce4 | wmaker
p kde Depends kdepim (>= 4:3.4.3)
이렇게 하면 가장 강력한 종속성 체인만 인쇄되지만 많은 질문에 신속하게 답변할 수 있습니다. why-not
패키지 제거와 관련이 적은 것도 있습니다 .
패키지가 제거되고 구성 파일이 남음
더 이상 사용하지 않지만 여전히 구성 파일 등이 있는 패키지를 찾을 수 있습니다. 이렇게 하려면 터미널을 열고 다음을 입력하세요.
dpkg-query -l '*' | grep ^rc | awk '{print $2}' |xargs > my_ apt_rc_removeList.lst
결과 목록에는 "rc" 상태(삭제되었지만 구성 파일은 여전히 유지됨)의 모든 파일이 포함됩니다. 이제 나머지 파일을 제거하지만 먼저 my_apt_rc_removeList.lst 파일에 나열된 파일을 검토하여 실제로 이 모든 정크를 제거하려는지 확인하십시오. 지금 입장하세요
aptitude purge `cat apt_rc_removeList.lst`
이 잔해물은 모두 제거됩니다.
겟코판
남은 패키지를 찾는 데 사용할 수 있는 또 다른 애플리케이션은 gtkorphan입니다. apt 시스템의 gtkorphan 설명을 보면 다음과 같습니다.
GtkOrphan은 데비안 시스템에서 고아 라이브러리를 검색하는 그래픽 도구입니다. 이는 deborphan의 GUI 프런트엔드를 구현하지만 패키지 제거 기능을 추가합니다. 이 프로그램에 대한 자세한 문서는 다음에서 찾을 수 있습니다.http://www.marzocca.net/linux/gtkorphan.html.
또한 이를 사용하여 다른 섹션("libs" 제외)의 패키지를 정리하는 데 도움을 줄 수도 있습니다.
흥미롭지 않은 패키지를 종속성으로 표시: 가능한 한 빨리 제거하십시오.
적성에서 설치된 패키지의 하위 범주에 l
(문자 "el")을 입력한 다음 나타나는 상자에 입력합니다 ?not(?automatic)
. 이제 다른 패키지에 의존하지 않는 패키지만 표시됩니다. 이제 각각을 스크롤하여 직접 관심이 없는 특정 가방의 키를 누르세요 M
. 이는 패키지를 제거하지 않고 대신 각 패키지를 "뭔가 의존하기 때문에 여기에만 있음"으로 표시합니다.
이제 각 섹션을 하나씩 살펴보겠습니다. 대부분의 "종속성 전용" 패키지는 libs 섹션에 있습니다.
"pattern"과 일치하는 모든 패키지를 "auto"로 표시: 가능한 한 빨리 삭제
모든 "-dev" 패키지는 제거 대상으로 표시될 수 있습니다(필요하지 않은 경우).
aptitude markauto ~i~n"\-dev$"
전체 카테고리 지우기
다음 명령을 사용하면 전체 카테고리("CATEGORY_NAME")를 삭제할 수 있습니다.
aptitude purge '~sCATEGORY_NAME ! ~exceptThisApp