Почему я должен регулярно запускать 'apt-get update' и подобные команды? [дубликат]

Я совершенно не знаком с Ubuntu. Друг порекомендовал мне почаще запускать следующие команды:

sudo apt-get upgrade
sudo apt-get update
sudo apt-get autoremove
sudo apt-get autoclean

Он сказал, что это каким-то образом будет поддерживать мою систему в чистоте и обновлении. Я не знаю, что именно делают эти команды. Действительно ли полезно запускать их регулярно?

5
задан 16 May 2018 в 00:08

2 ответа

На всех в настоящее время поддерживаемых версиях Ubuntu мы можем использовать apt вместо apt-get. Если Вы хотите получить вывод в файле, использовать apt-get, но иначе используйте apt поскольку его вывод более читаем (и кому нравится вводить?).

sudo apt update

Информация о загрузках из репозиториев 1 APT настроен для проверки и обновляет dpkg база данных доступных, установленных, и удаленных пакетов для отражения изменений в репозиториях. Это означает это при запросах базы данных по системе с командами как

apt policy package-name
apt show package-name
apt search package-name

они распечатают достоверную информацию, и когда Вы команды выполнения как

sudo apt install package-name

они выберут последнюю доступную версию.

Когда Вы работаете sudo apt update можно видеть, что некоторые пакеты являются обновляемыми, означающие новые версии были добавлены к репозиториям. Более новые версии часто имеют исправления ошибок и обновления системы защиты, таким образом, необходимо установить их. Это может быть сделано путем обновления всех пакетов, которые имеют новые версии в наличии с командой

sudo apt upgrade

Если ядро было обновлено (пакеты как linux-image-4.15.0-20-generic) необходимо затем выполнить команду для удаления старых версий ядра (за исключением второго новейшего, которое сохранено как запчасть, в случае, если новый является багги). Можно использовать эту команду:

sudo apt autoremove

сделать это. Эта команда также удалила осиротевшие пакеты. Они обычно только существуют при использовании команды как

sudo apt remove package-name

и package-name имеет зависимости, которые были установлены наряду с ним автоматически, но не нужны любым другим пакетом.

Для autoclean, Я отсылаю Вас к man apt-get

autoclean (and the auto-clean alias since 1.1)
       Like clean, autoclean clears out the local repository of retrieved
       package files. The difference is that it only removes package files
       that can no longer be downloaded, and are largely useless.

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


1These репозитории настроены по умолчанию, таким образом, Вы обычно ничего не должны делать с ними. Они перечислены в файле /etc/apt/sources.list и в файлах в /etc/apt/sources.list.d. APT строг о формате этих файлов (из соображений безопасности) и бросит ошибки, если у них есть неверный синтаксис. Если Ваша система будет иметь графическую среду, то она будет иметь опцию настроить репозитории в настройках. Вам нужно полномочие пользователя root сделать то задание.

8
ответ дан 23 November 2019 в 08:50

В то время как ответ Zanna касается цели этих команд, я хотел бы сфокусироваться на второй части:

Действительно полезно выполнить их регулярно?

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

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

  • apt-get update команда выполняется системой регулярно по умолчанию (см. Автоматические Обновления Пакета, AutomaticSecurityUpdates). Обновления системы защиты, которые были бы установлены apt-get upgrade, будет автоматически установлен Необслуживаемыми Обновлениями, также.

  • Автоматическое update относится ко всем пакетам. После того как APT знает об обновлениях, которые не установлены автоматически, система напомнит Вам устанавливать их вручную (использование apt install <package> или apt upgrade обновить всех их), например:

    • на CLI входят в экран:

      Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.113-rt128+ x86_64)
      ...
      29 packages can be updated.
      6 updates are security updates.
      
    • в выводе команды APT:

      $ sudo apt update
      ...
      5 packages can be upgraded. Run 'apt list --upgradable' to see them.
      
  • Вам напомнят работать autoremove также.

    $ sudo apt update
    ...
    The following packages were automatically installed and are no longer required:
      devilspie libturbojpeg:i386 libxrandr-ltsr2 language-pack-kde-en
    Use 'apt-get autoremove' to remove them.
    

Если Вы все еще хотите выполнить команды на основе времени, можно создать a cron задача для них.

2
ответ дан 23 November 2019 в 08:50

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

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