Почему apt-get think пакеты «больше не требуются»

Я запустил apt-get install raspberrypi-net-mods на моем apt-get install raspberrypi-net-mods Pi, работающем на Raspbian, и получил следующее сообщение:

 The following packages were automatically installed and are no longer required: git git-man liberror-perl rsync Use 'apt-get autoremove' to remove them. 

Я запутался. Почему apt-get думает, что эти «больше не требуются»? Я часто использую rsync и git время от времени.

Удастся ли это удалить их, или они были предоставлены в другом месте – если да, то как я могу проверить?

Всякий раз, когда пакет устанавливается автоматически с помощью apt-get потому что это зависимость от другого пакета, apt-get отмечает этот факт; то, если он замечает, что больше ничего не зависит от такого пакета, он предполагает, что пакет будет удален. Это особенно полезно для библиотек.

Это все, что подразумевается под «больше не требуется»: apt-get не знает, используете ли вы пакеты или нет, но он знает, что они были установлены автоматически, и от них больше ничего не зависит.

Чтобы сказать apt-get что пакет не должен считаться автоматически установленным, запустите apt-mark и отметьте его как ручной [ly installed]:

 apt-mark manual git rsync 

Или установите его явно (это ничего не сделает, если последняя версия пакета уже установлена, за исключением отметки ее как установленной вручную):

 apt-get install git rsync 

Поскольку эти пакеты уже установлены, apt-get не будет устанавливать их снова, но он будет отмечать их как явно установленные и не будет предлагать их удаление. (Если пакеты не являются новейшими версиями, apt-get обновит их.)