Как удалить метапекет без удаления его пакетов?

Автор Datarza, 08 января 2014, 13:26:26

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Datarza

В идеале хочется чтобы после установки Debian можно было сносить любой установленный пакет, без опасения того, что система станет голой. Например, снести xfce4-fsguard-plugin без сноса всех установленных пакетов через метапакет xfce4-goddies.

Так понимаю, что для этого нужно метить через apt-mark пакеты как установленные в ручную? Вот тут плаваю. Это можно сделать автоматически или искать каждый пакет отдельно? Смущает так же, что для чего-то пакеты xfce4-goddies пометили как автоматические, а не ручные. Если же просто удалить xfce4-goddies, то первый же apt-get autoremove снесёт все его пакеты. Или например установить пакет texlive-fonts-extra, удалить из него какой-то otf-freefont не потеряв другие установленные пакеты из texlive-fonts-extra.

Как быть?

qupl

Если не лень вручную, то быстрее это будет сделать через aptitude.
Если именно скриптами поищите на форуме есть тема где обсуждали похожий вопрос (ищите по "aptitude mark").

Datarza

Цитата: qupl от 08 января 2014, 14:22:04
Если не лень вручную, то быстрее это будет сделать через aptitude.
Если именно скриптами поищите на форуме есть тема где обсуждали похожий вопрос (ищите по "aptitude mark").

что посоветуете в этой ситуации?
Цитироватьapt-get autoremove
Чтение списков пакетов... Готово                                                 
Построение дерева зависимостей                                                     
Чтение информации о состоянии... Готово                                                   
Пакеты, которые будут УДАЛЕНЫ:                                                           
  apper apper-data ark cdparanoia cdrdao crda cups-pk-helper dnsmasq-base dragonplayer dvd+rw-tools esound-common espeak-data festival festival-freebsoft-utils
  festlex-cmu festlex-poslex festvox-kallpc16k fonts-droid fonts-sil-gentium fonts-sil-gentium-basic freespacenotifier genisoimage ghostscript gnupg-agent
  gnupg2 growisofs gsfonts gwenview htdig hyphen-en-us iw jovie juk k3b k3b-data k3b-i18n kaccessible kaddressbook kamera kate kcalc kde-baseapps
  kde-icons-mono kde-plasma-desktop kde-wallpapers kde-wallpapers-default kde-workspace kde-workspace-bin kde-workspace-data kde-workspace-kgreet-plugins
  kdeaccessibility kdepasswd kdeplasma-addons kdesudo kdm khelpcenter4 kinfocenter klipper kmag kmail kmenuedit kmix kmousetool kmouth knotes kopete korganizer
  kscreensaver kscreensaver-xsavers ksnapshot ksysguard kwalletmanager kwrite libakonadi-contact4 libao-common libao4 libarchive12 libassuan0 libaudiofile1
  libcln6 libcolamd2.7.1 libcupsimage2 libdebconf-kde0 libdiscid0 libdmtx0a libdotconf1.0 libelf1 libesd0 libespeak1 libestools2.1 libflac++6 libgadu3 libgle3
  libglib2.0-bin libgpgme++2 libgpgme11 libgs9 libgs9-common libijs-0.35 libjbig2dec0 libjim0debian2 libk3b6 libk3b6-extracodecs libkateinterfaces4 libkcddb4
  libkdepim4 libkexiv2-10 libkexiv2-data libkimproxy4 libkipi-data libkipi8 libkleo4 libknewstuff2-4 libkontactinterface4 libkopete4 libkpgp4
  libkpimidentities4 libkpimtextedit4 libkprintutils4 libksba8 libkscreensaver5 libksieve4 libksignalplotter4 libktnef4 libkutils4 liblockfile-bin liblockfile1
  liblzo2-2 libmarblewidget13 libmeanwhile1 libmediastreamer1 libmessagecore4 libmessagelist4 libmimelib4 libmsn0.3 libmusicbrainz3-6 libnetfilter-conntrack3
  libnetpbm10 libnettle4 libnl-genl-3-200 libnm-glib-vpn1 libnm-glib4 libnm-util2 libokularcore1 libopencore-amrnb0 libopencore-amrwb0 libortp8 libotr2
  libpackagekit-glib2-14 libpackagekit-qt2-2 libpaper-utils libpaper1 libpkcs11-helper1 libplasmagenericshell4 libpoppler-qt4-3 libpoppler19 libprison0
  libprocessui4a libpth20 libqalculate5 libqalculate5-data libqgpgme1 libqimageblitz4 libqrencode3 libqt4-help libqt4-scripttools libqt4-test   
  libqtassistantclient4 libqtlocation1 libqtruby4shared2 libreoffice libreoffice-calc libreoffice-draw libreoffice-filter-mobiledev libreoffice-help-en-us
  libreoffice-impress libreoffice-kde libreoffice-report-builder-bin libsmokekdecore4-3 libsmokekdeui4-3 libsmokekfile3 libsmokekhtml3 libsmokekio3   
  libsmokeknewstuff2-3 libsmokeknewstuff3-3 libsmokekparts3 libsmokektexteditor3 libsmokekutils3 libsmokenepomuk3 libsmokeplasma3 libsmokeqtdbus4-3       
  libsmokeqtopengl4-3 libsmokeqtsql4-3 libsmokeqtsvg4-3 libsmokeqtwebkit4-3 libsmokeqtxml4-3 libsmokesolid3 libsolidcontrolifaces4abi2 libsonic0               
  libsox-fmt-alsa libsox-fmt-base libsox2 libspectre1 libspeechd2 libsrtp0 libvisio-0.0-0 lockfile-progs lp-solve marble-data marble-plugins menu-xdg
  mobile-broadband-provider-info modemmanager mythes-en-us netpbm network-manager network-manager-kde network-manager-openvpn network-manager-pptp
  network-manager-vpnc okular openvpn p7zip-full packagekit packagekit-backend-aptcc packagekit-tools pinentry-gtk2 plasma-containments-addons
  plasma-dataengines-addons plasma-desktop plasma-desktopthemes-artwork plasma-runners-addons plasma-scriptengine-python plasma-scriptengine-ruby
  plasma-scriptengine-superkaramba plasma-scriptengine-webkit plasma-scriptengines plasma-wallpapers-addons plasma-widget-folderview plasma-widget-lancelot
  plasma-widget-networkmanagement plasma-widgets-addons polkit-kde-1 poppler-data pptp-linux python-cups python-cupshelpers python-dbus python-dbus-dev
  python-gconf python-glade2 python-gnome2 python-kde4 python-libxml2 python-notify python-packagekit python-pycurl python-pyorbit python-qt4 python-qt4-dbus
  python-sip ruby-kde4 ruby-plasma ruby-qt4 ruby-qt4-webkit sound-icons sox speech-dispatcher speech-dispatcher-festival sweeper system-config-printer
  system-config-printer-udev systemsettings ttf-liberation ttf-sil-gentium-basic unzip usb-modeswitch usb-modeswitch-data vcdimager vpnc wireless-regdb wodim
  wpasupplicant xscreensaver-data xscreensaver-data-extra xscreensaver-gl xscreensaver-gl-extra xscreensaver-screensaver-bsod zip
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 289 пакетов, и 0 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 694 MB.
Хотите продолжить [Д/н]?

qupl

Datarza, сначала выполнить
# aptitude keep-all
а потом посмотреть, что autoremove скажет

Malaheenee

Согласно мануалу,
aptitude search ~M
выведет все пакеты, помеченные как автоматические.
Можно задавать маску, например '~Mxfce'.
Для автоматизации метки, можно использовать команду:
aptitude unmarkauto ~Mxfce
Все мы где-то, когда-то и в чем-то были новичками.

Datarza

Цитата: Malaheenee от 08 января 2014, 17:15:00
Согласно мануалу,
aptitude search ~M
выведет все пакеты, помеченные как автоматические.
Можно задавать маску, например '~Mxfce'.
Для автоматизации метки, можно использовать команду:
aptitude unmarkauto ~Mxfce

Просветляюсь, ещё один вопрос: подскажите пожалуйста аналог команды
aptitude unmarkauto '?reverse-depends(kde-standard) | ?reverse-recommends(kde-standard)'
через apt-mark?

Malaheenee

Datarza, мы пользуемся исключительно aptitude, поэтому увы, не подскажем. По логике, для поиска таковых пакетов придется использовать apt-cache. Что-то типа такого:
apt-cache depends -i thunar
Но там придется шаманить еще с sed|awk.
Все мы где-то, когда-то и в чем-то были новичками.