Remove all packages marked as rc by dpkg

Let’s see all the packages marked as rc by dpkg. Know more about the state rc. This state means that the configuration files are not yet removed. You can see how a single package can be removed.

What does rc mean?

For detailed information on interpreting the status, you can refer State of a Package. rc corresponds to:

1. r: the package was marked for removal
2. c: the configuration files are currently present in the system
In nutshell, it means that the package is not completely removed. The configuration files are still present. To completely remove a package, refer Remove packages marked as rc.

dpkg --list |grep "^rc"
dpkg --list |grep "^rc"
rc  bind9                            1:9.10.3.dfsg.P4-12.3+deb9u4   amd64        Internet Domain Name Server
rc  ca-certificates                  20161130+nmu1                  all          Common CA certificates
rc  cmake                            3.7.2-1                        amd64        cross-platform, open-source make system
rc  cmake-data                       3.7.2-1                        all          CMake data files (modules, templates and documentation)
rc  fail2ban                         0.9.6-2                        all          ban hosts that cause multiple authentication errors
rc  fetchmail                        6.3.26-3                       amd64        SSL enabled POP3, APOP, IMAP mail gatherer/forwarder
rc  isc-dhcp-client                  4.3.5-3+deb9u1                 amd64        DHCP client for automatically obtaining an IP address
rc  libcwidget3:amd64                0.5.17-2                       amd64        high-level terminal interface library for C++ (runtime files)
rc  libpython3.4-minimal:amd64       3.4.2-1                        amd64        Minimal subset of the Python language (version 3.4)
rc  libpython3.5-minimal:amd64       3.5.3-1                        amd64        Minimal subset of the Python language (version 3.5)
rc  libsigc++-2.0-0c2a:amd64         2.4.0-1                        amd64        type-safe Signal Framework for C++ - runtime
rc  lsb-release                      9.20161125                     all          Linux Standard Base version reporting utility
rc  module-init-tools                18-3                           all          transitional dummy package (module-init-tools to kmod)
rc  perl-modules                     5.20.2-3+deb8u9                all          Core Perl modules
rc  pkg-config                       0.29-4+b1                      amd64        manage compile and link flags for libraries
rc  postfix-sqlite                   3.1.8-0+deb9u1                 amd64        SQLite map support for Postfix
rc  python                           2.7.13-2                       amd64        interactive high-level object-oriented language (default version)
rc  python3                          3.5.3-1                        amd64        interactive high-level object-oriented language (default python3 version)
rc  python3.4                        3.4.2-1                        amd64        Interactive high-level object-oriented language (version 3.4)
rc  python3.4-minimal                3.4.2-1                        amd64        Minimal subset of the Python language (version 3.4)
rc  python3.5-minimal                3.5.3-1                        amd64        Minimal subset of the Python language (version 3.5)
rc  sasl2-bin                        2.1.27~101-g0780600+dfsg-3     amd64        Cyrus SASL - administration programs for SASL users database
rc  snmp                             5.7.3+dfsg-1.7                 amd64        SNMP (Simple Network Management Protocol) applications

Let’s extract out the packages marked as rc

dpkg --list |grep "^rc" | cut -d " " -f 3

Now let’s remove all the packages marked as rc.

dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs dpkg --purge

See how we have used xargs and the command dpkg –purge in combination.

2 Replies to “Remove all packages marked as rc by dpkg”

  1. Hi, thanks. It helped to better understand dpkg outputs. I found those ‘rc’ packages from the ‘dpkg –list’ command are those marked as ‘deinstall’ from the ‘dpkg –get-selections’ command.
    But, do I have to uninstall those ‘rc’ marked packages? What happens if I don’t? (I have 5 ‘rc’ packages. some old kernel images and old NVIDIA drivers)

    1. Hi, status of ‘rc’ signifies that the package has been removed, but that the configuration files remain. You can use ‘purge’ as an option to either dpkg or apt to remove these files also, if you wish.

Leave a Reply

Your email address will not be published. Required fields are marked *