Почему я получаю gdm, и набор пакетов в списке Кв. - добираются, автоудаляют?

В последнее время я сделал много изменений конфигурации на моем Испытанном ноутбуке (14.04 LTS). Во-первых, я установил gnome-shell, сделал все обновления и мигрировал на стопку реализации возможностей LTS. После этого я добавил gnome 3 staging ppa и обновленный gnome-shell от v3.10 до v3.12 оттуда. Теперь, когда я работаю apt-get autoremove, Я получаю эти пакеты в списке:

The following packages were automatically installed and are no longer required:
  evolution-indicator gdm gir1.2-gkbd-3.0 gir1.2-tracker-0.16 gir1.2-xkl-1.0 libgtksourceview2.0-0
  libgtksourceview2.0-common libiptcdata0 libtracker-extract-0.16-0
  libtracker-miner-0.16-0 libtracker-sparql-0.16-0 linux-headers-4.2.0-23
  linux-headers-4.2.0-23-generic linux-image-4.2.0-23-generic
  linux-image-extra-4.2.0-23-generic python-gtksourceview2

Поскольку я понимаю, gdm критический пакет, который очень необходим, поскольку я использую оболочку гнома. Я также посмотрел на этот ответ, который предлагает отметить пакет, как "необходимый", просто работая apt-get install <package>. Но как я знаю, какие пакеты этого списка я могу безопасно удалить, не влияя на мою систему? Я знаю для того, однако, что мне не нужно linux-image-* и linux-headers пакеты, поскольку я уже обновил до более поздних версий ядра. Но как я знаю об остальной части пакетов?

1
задан 13 April 2017 в 15:23

1 ответ

команда apt-cache showpkg <package> скажет Вам, что пакеты "реверс зависят" т.е. что другие пакеты - в Ваших настроенных репозиториях (не обязательно установленные пакеты) - зависят от того пакета.
В случае gdm существуют много, таким образом, я записал этот сценарий для итерации через все обратные зависимости, чтобы проверить, был ли кто-либо установлен - который указал бы, что Вы, вероятно, не должны удалять gdm.

#!/bin/bash

package=$1

apt-cache showpkg $package | sed '1,/Reverse Depends:/d;/Dependencies:/,$d'  > /tmp/dependencies.txt

while read line
do
    reverse_dependency=$(awk -F '[:,]' '{print $1}' <<< $line)
    if dpkg -s $reverse_dependency &> /dev/null
    then
        echo "$line is installed and depends on $package"
    fi
done < /tmp/dependencies.txt

при вызове сценария, необходимо передать пакет в качестве параметра т.е.

./script "gdm"

На моей машине, которой результат был

$ ./script.sh gdm
plymouth:i386,gdm 3.0.4-0ubuntu11 is installed and depends on gdm
plymouth,gdm 3.0.4-0ubuntu11 is installed and depends on gdm
plymouth:i386,gdm 3.0.4-0ubuntu11 is installed and depends on gdm
plymouth,gdm 3.0.4-0ubuntu11 is installed and depends on gdm
1
ответ дан 7 December 2019 в 16:03

Другие вопросы по тегам:

Похожие вопросы: