LinuxForum.Fans
Тема

Как удалить все пакеты из системы, кроме базовых

Автор: servi71 34 сообщений 12872 просмотров
#33743

Всех приветствую. Установил squeeze на нетбук. Возникли всякие проблемы. Думаю попробовать все удалить, оставить только базовую систему, а потом опять все устанавливать. Можно ли одним махом все удалить или же нужно вспоминать то, что устанавливал и вводить aptitude --purge remove <имя пакета>. И вообще как правлильно делать?

#33751

гм..
можно например apt-get remove gnome* но я такие штуки делал только когда очень торопился :-)
предпочитал через псевдогуйный aptitude удалять разделами.
может есть варианты и по шустрее, хз.

#33765

А потом почистить aptitude autoclean ? Так? И пользователя, наверное, можно удалить вместе с его каталогом?
(Я попросил бы выражения не использовать. Они ни нас не красят, ни смысла не придают. Прошу прощения.)

#33766

servi71, надо найти список "базовых" пакетов и через aptitude отметить на удаление все кроме них.

#33781

Только что установил абсолютно чистую систему (Debian 5.0.0 Lenny). Есть такой список:

text
ii  acpi                            1.1-2                  displays information on ACPI devices
ii  acpi-support-base               0.109-11               scripts for handling base ACPI events such a
ii  acpid                           1.0.8-1lenny2          Utilities for using ACPI power management
ii  adduser                         3.110                  add and remove users and groups
ii  apt                             0.7.20.2+lenny1        Advanced front-end for dpkg
ii  apt-utils                       0.7.20.2+lenny1        APT utility programs
ii  aptitude                        0.4.11.11-1~lenny1     terminal-based package manager
ii  base-files                      5lenny5                Debian base system miscellaneous files
ii  base-passwd                     3.5.20                 Debian base system master password and group
ii  bash                            3.2-4                  The GNU Bourne Again SHell
ii  bsdmainutils                    6.1.10                 collection of more utilities from FreeBSD
ii  bsdutils                        1:2.13.1.1-1           Basic utilities from 4.4BSD-Lite
ii  busybox                         1:1.10.2-2             Tiny utilities for small and embedded system
ii  console-common                  0.7.80                 basic infrastructure for text console config
ii  console-cyrillic                0.9-15.2               Better Cyrillic support for Linux console
ii  console-data                    2:1.07-11              keymaps, fonts, charset maps, fallback table
ii  console-setup                   1.28                   Set up the font and the keyboard on the cons
ii  console-terminus                4.26-2.1               Fixed-width fonts for fast reading on the Li
ii  console-tools                   1:0.2.3dbs-65.1        Linux console and font utilities
ii  coreutils                       6.10-6                 The GNU core utilities
ii  cpio                            2.9-13                 GNU cpio -- a program to manage archives of 
ii  cron                            3.0pl1-105             management of regular background processing
ii  debconf                         1.5.24                 Debian configuration management system
ii  debconf-i18n                    1.5.24                 full internationalization support for debcon
ii  debian-archive-keyring          2009.01.31             GnuPG archive keys of the Debian archive
ii  debianutils                     2.30                   Miscellaneous utilities specific to Debian
ii  dhcp3-client                    3.1.1-6+lenny4         DHCP client
ii  dhcp3-common                    3.1.1-6+lenny4         common files used by all the dhcp3* packages
ii  dictionaries-common             0.98.12                Common utilities for spelling dictionary too
ii  diff                            2.8.1-12               File comparison utilities
ii  dmidecode                       2.9-1                  Dump Desktop Management Interface data
ii  dpkg                            1.14.29                Debian package management system
ii  e2fslibs                        1.41.3-1               ext2 filesystem libraries
ii  e2fsprogs                       1.41.3-1               ext2/ext3/ext4 file system utilities
ii  ed                              0.7-3                  The classic unix line editor
ii  eject                           2.1.5+deb1-4           ejects CDs and operates CD-Changers under Li
ii  findutils                       4.4.0-2                utilities for finding files--find, xargs
ii  gcc-4.2-base                    4.2.4-6                The GNU Compiler Collection (base package)
ii  gcc-4.3-base                    4.3.2-1.1              The GNU Compiler Collection (base package)
ii  gnupg                           1.4.9-3+lenny1         GNU privacy guard - a free PGP replacement
ii  gpgv                            1.4.9-3+lenny1         GNU privacy guard - signature verification t
ii  grep                            2.5.3~dfsg-6           GNU grep, egrep and fgrep
ii  groff-base                      1.18.1.1-21            GNU troff text-formatting system (base syste
ii  grub                            0.97-47lenny2          GRand Unified Bootloader (Legacy version)
ii  grub-common                     1.96+20080724-16       GRand Unified Bootloader, version 2 (common 
ii  gzip                            1.3.12-6+lenny1        The GNU compression utility
ii  hostname                        2.95                   utility to set/show the host name or domain 
ii  ifupdown                        0.6.8+nmu1             high level tools to configure network interf
ii  info                            4.11.dfsg.1-4          Standalone GNU Info documentation browser
ii  initramfs-tools                 0.92o                  tools for generating an initramfs
ii  initscripts                     2.86.ds1-61            Scripts for initializing and shutting down t
ii  installation-report             2.38                   system installation report
ii  iproute                         20080725-2             networking and traffic control tools
ii  iptables                        1.4.2-6                administration tools for packet filtering an
ii  iputils-ping                    3:20071127-1           Tools to test the reachability of network ho
ii  irussian                        0.99g5-5               Russian dictionary for Ispell
ii  ispell                          3.1.20.0-4.4           International Ispell (an interactive spellin
ii  klibc-utils                     1.5.12-2               small utilities built with klibc for early b
ii  konwert                         1.8-11.2               Charset conversion for files or terminal I/O
ii  konwert-filters                 1.8-11.2               Filters used by konwert for charset conversi
ii  language-env                    0.69                   simple configuration tool for native languag
ii  laptop-detect                   0.13.6                 attempt to detect a laptop
ii  libacl1                         2.2.47-2               Access control list shared library
ii  libattr1                        1:2.4.43-2             Extended attribute shared library
ii  libblkid1                       1.41.3-1               block device id library
ii  libbz2-1.0                      1.0.5-1                high-quality block-sorting file compressor l
ii  libc6                           2.7-18lenny2           GNU C Library: Shared libraries
ii  libc6-i686                      2.7-18lenny2           GNU C Library: Shared libraries [i686 optimi
ii  libcomerr2                      1.41.3-1               common error description library
ii  libconsole                      1:0.2.3dbs-65.1        Shared libraries for Linux console and font 
ii  libcwidget3                     0.5.12-4               high-level terminal interface library for C+
ii  libdb4.6                        4.6.21-11              Berkeley v4.6 Database Libraries [runtime]
ii  libdevmapper1.02.1              2:1.02.27-4            The Linux Kernel Device Mapper userspace lib
ii  libept0                         0.5.22                 High-level library for managing Debian packa
ii  libgcc1                         1:4.3.2-1.1            GCC support library
ii  libgcrypt11                     1.4.1-1                LGPL Crypto library - runtime library
ii  libgdbm3                        1.8.3-3                GNU dbm database routines (runtime version)
ii  libgnutls26                     2.4.2-6+lenny2         the GNU TLS library - runtime library
ii  libgpg-error0                   1.4-2                  library for common error values and messages
ii  libklibc                        1.5.12-2               minimal libc subset for use with initramfs
ii  liblocale-gettext-perl          1.05-4                 Using libc functions for internationalizatio
ii  libncurses5                     5.7+20081213-1         shared libraries for terminal handling
ii  libncursesw5                    5.7+20081213-1         shared libraries for terminal handling (wide
ii  libnewt0.52                     0.52.2-11.3+lenny1     Not Erik's Windowing Toolkit - text mode win
ii  libpam-modules                  1.0.1-5+lenny1         Pluggable Authentication Modules for PAM
ii  libpam-runtime                  1.0.1-5+lenny1         Runtime support for the PAM library
ii  libpam0g                        1.0.1-5+lenny1         Pluggable Authentication Modules library
ii  libpopt0                        1.14-4                 lib for parsing cmdline parameters
ii  libreadline5                    5.2-3.1                GNU readline and history libraries, run-time
ii  libsasl2-2                      2.1.22.dfsg1-23+lenny1 Cyrus SASL - authentication abstraction libr
ii  libselinux1                     2.0.65-5               SELinux shared libraries
ii  libsepol1                       2.0.30-2               Security Enhanced Linux policy library for c
ii  libsigc++-2.0-0c2a              2.0.18-2               type-safe Signal Framework for C++ - runtime
ii  libslang2                       2.1.3-3                The S-Lang programming library - runtime ver
ii  libss2                          1.41.3-1               command-line interface parsing library
ii  libssl0.9.8                     0.9.8g-15+lenny6       SSL shared libraries
ii  libstdc++6                      4.3.2-1.1              The GNU Standard C++ Library v3
ii  libtasn1-3                      1.4-1                  Manage ASN.1 structures (runtime)
ii  libtext-charwidth-perl          0.04-5+b1              get display widths of characters on the term
ii  libtext-iconv-perl              1.7-1+b1               converts between character sets in Perl
ii  libtext-wrapi18n-perl           0.06-6                 internationalized substitute of Text::Wrap
ii  libusb-0.1-4                    2:0.1.12-13            userspace USB programming library
ii  libuuid1                        1.41.3-1               universally unique id library
ii  libvolume-id0                   0.125-7+lenny3         libvolume_id shared library
ii  libwrap0                        7.6.q-16               Wietse Venema's TCP wrappers library
ii  libxapian15                     1.0.7-4                Search engine library
ii  linux-image-2.6.26-2-686        2.6.26-21lenny4        Linux 2.6.26 image on PPro/Celeron/PII/PIII/
ii  locales                         2.7-18lenny2           GNU C Library: National Language (locale) da
ii  login                           1:4.1.1-6+lenny1       system login tools
ii  logrotate                       3.7.1-5                Log rotation utility
ii  lsb-base                        3.2-20                 Linux Standard Base 3.2 init script function
ii  lzma                            4.43-14                Compression method of 7z format in 7-Zip pro
ii  makedev                         2.3.1-88               creates device files in /dev
ii  man-db                          2.5.2-4                on-line manual pager
ii  manpages                        3.05-1                 Manual pages about using a GNU/Linux system
ii  manpages-ru                     0.98-4                 Russian translations of Linux manpages
ii  mawk                            1.3.3-11.1             a pattern scanning and text processing langu
ii  mktemp                          1.5-9                  tool for creating temporary files
ii  module-init-tools               3.4-1                  tools for managing Linux kernel modules
ii  mount                           2.13.1.1-1             Tools for mounting and manipulating filesyst
ii  mueller7-dict                   2002.02.27-7           English/Russian dictionary in dict format
ii  nano                            2.0.7-4                free Pico clone with some new features
ii  ncurses-base                    5.7+20081213-1         basic terminal type definitions
ii  ncurses-bin                     5.7+20081213-1         terminal-related programs and man pages
ii  net-tools                       1.60-22                The NET-3 networking toolkit
ii  netbase                         4.34                   Basic TCP/IP networking system
ii  netcat-traditional              1.10-38                TCP/IP swiss army knife
ii  passwd                          1:4.1.1-6+lenny1       change and administer password and group dat
ii  perl                            5.10.0-19lenny2        Larry Wall's Practical Extraction and Report
ii  perl-base                       5.10.0-19lenny2        minimal Perl system
ii  perl-modules                    5.10.0-19lenny2        Core Perl modules
ii  procps                          1:3.2.7-11             /proc file system utilities
ii  re                              0.1-5+b1               Russian Anywhere -- Russian text converter
ii  readline-common                 5.2-3.1                GNU readline and history libraries, common f
ii  rsyslog                         3.18.6-4               enhanced multi-threaded syslogd
ii  sed                             4.1.5-6                The GNU sed stream editor
ii  sysv-rc                         2.86.ds1-61            System-V-like runlevel change mechanism
ii  sysvinit                        2.86.ds1-61            System-V-like init utilities
ii  sysvinit-utils                  2.86.ds1-61            System-V-like utilities
ii  tar                             1.20-1                 GNU version of the tar archiving utility
ii  tasksel                         2.78                   Tool for selecting tasks for installation on
ii  tasksel-data                    2.78                   Official tasks used for installation of Debi
ii  tcpd                            7.6.q-16               Wietse Venema's TCP wrapper utilities
ii  traceroute                      2.0.11-2               Traces the route taken by packets over an IP
ii  tzdata                          2010a-0lenny1          time zone and daylight-saving time data
ii  udev                            0.125-7+lenny3         /dev/ and hotplug management daemon
ii  update-inetd                    4.31                   inetd configuration file updater
ii  usbutils                        0.73-10lenny1          Linux USB utilities
ii  util-linux                      2.13.1.1-1             Miscellaneous system utilities
ii  vim-common                      1:7.1.314-3+lenny2     Vi IMproved - Common files
ii  vim-tiny                        1:7.1.314-3+lenny2     Vi IMproved - enhanced vi editor - compact v
ii  wget                            1.11.4-2+lenny1        retrieves files from the web
ii  whiptail                        0.52.2-11.3+lenny1     Displays user-friendly dialog boxes from she
ii  xkb-data                        1.3-2                  X Keyboard Extension (XKB) configuration dat
ii  zlib1g                          1:1.2.3.3.dfsg-12      compression library - runtime

+ и тут надо быть осторожным, так как некоторые пакеты (например linux-image-2.6.26-2-686) могут не подойти для другой конфигурации компьютера, и поэтому нельзя удалять соответствующие пакеты на другом компьютере.

#33796

А как это удобно сделать: оставить все пакеты базовой системы, а все остальные удалить?

Проделал работу: удалил - установил, но система также глючно работает. Прийдется переустанвливать.
Но всеж, спасибо за советы, буду немного иметь представление о пакетах базовых (какие стоят)

#34071

ну стало быть берём вывод dpkg -l с чистой системы, берём свой dpkg -l при помощи скрипта (надо написать) вырываем то, что лишнее у вас и удаляем. Я бы с радостью написал такой на php, но с регулярками я не дружу и кодил на php последний раз год назад.

#34435

Спасибо. Надо будет все пакеты в squeeze таким образом хотя бы переписать .

#34444

А вообще интересный вопрос, должна же быть возможность взглянуть на пакеты имеющие в дебиан приоритет "нобходимый".
[console]
$ aptitude show bash|grep Приоритет
Приоритет: необходимый
[/console]
А вот это порадовало:
[console]
$ aptitude show linux-image-2.6.26-2-686|grep Приоритет
Приоритет: необязательный
[/console]
Соответственно вопрос, какой командой посмотреть пакеты с разным приоритетом?

#34481
text
dpkg --get-selections | awk '{if ($2 == "install") print $1}' | aptitude show $(awk '{print $1}') | grep  "\(Пакет:\|Приоритет: необязательный\)"

вот такая фиговинка

это для "посмотреть", для удаления добавим еще один пайп и уберем "Приоритет" из грепа.

только я вашим "приоритетам" не верю

#34491

Ха.. следуя такой логике можно достать компилятор и начать уже наконец писать ось для себя :-), а я имел ввиду уже готовые, штатные инструменты дебиана, где команды будет короткой и интуитивной, есть? Ведь за это мы его и любим, наверняка, что то есть, может я просто не туда копаю, может надо по другому.

system-root написал:
text
dpkg --get-selections ...

И тут речь идёт о установленных пакетах, а как быть если чел удалил важный пакет, но не знает какой? Хотелось бы увидеть одной командой список пакетов входящих в минимальную систему :-).

#34496

я над этим работаю..

text
grep "\(Package:\|Priority:\)"  /var/lib/dpkg/available

потом как-то находим и отделяем из списка все important и standard, для этого какой-то цикл нужен хитрый, я не врублюсь.

1) записываем в темп файл
1.а) создаем шаблон переменных, с чем будем сравнивать "important и standard и еще там чего?"
2)читаем строки
3)первую строку сохраняем как аргумент
4)вторую строку сверяем с шаблоном
5)если вторая строка подходит - передаем циклу аргумент и пункта 3
6)цикл переустанавливает пакет полученный как аргумент

7)можно еще список пакетов самим составить, но он будет приблизительный и будет разниться от дистрибутива.
результат:
пользователь запускает скрип и гарантированного получает минимальную рабочую систему из испорченной.
гы, кто поможет создать скрипт?

#34528
system-root написал:
/var/lib/dpkg/available

А здесь список всех доступных пакетов в репозиториях?

#34530

/var/lib/dpkg/available is the file that keeps track of all packages currently
available to be installed, based on the package info retrieved by apt-get update
and your sources.list file.

по русски - ага, его заполнение зависит от aptitude update

#35655

Все же, если мне известны все базовые пакеты, есть ли способ через aptitude удалить все одним разом кроме них или же более простым способом, чем ходить по всем категориям и отмечать, оставляя нужные? Ибо узнать набор базовых пакетов можно, в виртуальной машине установив систему.

#35694

Да же не знаю, что бы могло заставить меня заниматься таким извращением.

Устанавливай лучше по новой squeeze и выбери только базовую систему, думаю это единственный верный способ получить чистую базовую систему, без всякой лишней не нужной дряни.

#35709

Можно и заново установить систему, но жесткого диска, вроде как, частое форматирование не очень полезно. Да и просто хотелось бы таким способом восстановить систему, ибо слышал, что с debian в этом нет проблем, т.е. не нем можно работать длительное время, не перезагружая систему.

#35712
servi71 написал:
т.е. не нем можно работать длительное время, не перезагружая систему.

Изначально правильно его установив smile

#35723
servi71 написал:
Ибо узнать набор базовых пакетов можно, в виртуальной машине установив систему.

Ну это можно, но это костыль, наверняка есть решение, Вы его ищете?

ДимOn написал:
без всякой лишней не нужной дряни

И откуда у линуксоидов такая ненависть к свободному, бесплатному по...

ДимOn написал:
вроде как, частое форматирование не очень полезно

А чем оно отличается от стандартной работы с диском?

#35751
papin-aziat написал:

[quote=ДимOn]без всякой лишней не нужной дряни

И откуда у линуксоидов такая ненависть к свободному, бесплатному по...
[/quote]

Ненависти НЕТ, есть раздражение, когда при полной установке, наставляется куча разных пакетов, которыми не когда не воспользуешься, они бесполезно занимают место в системе, поэтому лучше делать все правильно изначально.

Особенно раздражает когда указываешь при установки, установку графической среды (КДЕ, ГНОМ), так там столько софта лишнего ставится.

Войдите или зарегистрируйтесь, чтобы ответить.