Ответы:
Вам нужно ввести несколько команд в командную строку. Прежде всего:
apt-get update
(это обновит источники программного обеспечения)
apt-get upgrade
(это обновит все до последней версии)
unattended-upgrades
Пакет является способом автоматизировать обновление ОС в этих Debian семейство распределений. Следуйте инструкциям, найденным здесь .
В основном вы должны установить пакет:
sudo apt-get install unattended-upgrades
и добавить к /etc/apt/apt.conf.d/10periodic
следующему:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
Кроме того (поскольку портирование пакета выглядит безупречно), измените следующую строку в первом разделе /etc/apt/apt.conf.d/50unattended-upgrades
:
"origin=Debian,archive=stable,label=Debian-Security";
в
// "origin=Debian,archive=stable,label=Debian-Security";
"origin=Raspbian";
Теперь ваша система автоматически обновляется.
origin=Debian
) больше не нужен в последнем выпуске Raspbian.
Checking: openssl (["<Origin component:'main' archive:'oldstable' origin:'Raspbian' label:'Raspbian' site:'mirrordirector.raspbian.org' isTrusted:True>"])
origin=Raspbian
все еще необходимо в файле конфигурации, но, нет, вам больше не нужно делать это самим, извините ...
Dist:
$ sudo apt-get update
$ sudo apt-get upgrade
Rpi-обновление впервые: установите git и сертификаты для досягаемости github.
$ sudo apt-get install ca-certificates
$ sudo apt-get install git-core
$ sudo wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update
$ sudo chmod +x /usr/bin/rpi-update
обновить прошивку
$ sudo rpi-update
$ sudo ldconfig
$ sudo reboot
Rpi-обновление после:
$ sudo rpi-update
$ sudo ldconfig
$ sudo reboot
rpi-update теперь можно получить напрямую через apt-get, поэтому не нужно будет работать с Wget . Итак, вот теперь обновленный способ:
Dist:
$ sudo apt-get update
$ sudo apt-get upgrade
Вам нужно перезагрузить Raspberry Pi сейчас, иначе новое ядро не будет использовано!
Rpi-обновление впервые: Установите Git и сертификаты для доступа к GitHub .
$ sudo apt-get install ca-certificates
$ sudo apt-get install git-core
$ sudo apt-get install rpi-update
Обновление прошивки
$ sudo rpi-update
$ sudo reboot
Вы также можете написать небольшой скрипт со своими шагами apt-get и запускать его по расписанию один раз в день / как бы часто вам ни хотелось, это то, что я сделал.
Как настроить работу cron на Pi:
http://www.wexoo.net/20130406/running-cron-jobs-on-raspberry-pi-in-raspbmc
Как написать скрипт bash:
https://www.linux.com/learn/tutorials/284789-writing-a-simple-bash-script-
Мой сценарий был просто
apt-get update
apt-get upgrade -yes
apt-get dist-upgrade -yes
apt-get clean
и у меня было это запись выходных данных в файл с >>
в конце каждой строки, например apt-get update >> autoupdate.txt
.
Это спорный вопрос о том, как хорошо идея это сделать это, хотя!
На сайте Art of Web есть замечательное руководство для Debian Wheezy, в котором мне нужно было всего лишь изменить одну строку, чтобы он работал над моим тестируемым RPi. Ссылка приведет вас к их путеводителю cron-apt
; который был перефразирован ниже с объяснением модификации для системы репозиториев RPi.
Установите cron-apt
sudo apt-get install cron-apt
Конфигурацию по умолчанию, действия и пользовательские настройки можно найти с помощью
ls -hal /etc/cron-apt/config
ls -hal /etc/cron-apt/action.d/
ls -hal /etc/cron-apt/config.d/
Добавьте следующее к /etc/cron-apt/config
файлу с, sudo tee -a
чтобы разрешить отправку электронных писем с подробной информацией о действиях, предпринятых во время автоматического обновления
echo 'MAILON="output"' | sudo tee -a /etc/cron-apt/config
echo 'DEBUG="verbose"' | sudo tee -a /etc/cron-apt/config
Ведение журнала сбрасывается в: /var/log/cron-apt/log
Создайте новый файл действий для обновления только пакетов, связанных с безопасностью, с помощью сенсорной команды и добавьте одну строку с помощью команды sudo tee; другие будут загружены, но подождите, пока sys-admin установит обновления, не связанные с безопасностью. Уведомления об обновлениях и выводе будут отправлены пользователю root или sys-admin по электронной почте для дальнейшего просмотра и / или действий, которые необходимо предпринять.
sudo touch /etc/cron-apt/action.d/5-security
echo 'upgrade -y -o APT::Get::Show-Upgraded=true' | sudo tee -a /etc/cron-apt/action.d/5-security
Создайте новый файл конфигурации для использования вышеуказанного действия; специально использовать /etc/apt/sources.list.d/security.list
в качестве пути для обновлений безопасности. Путь к файлу может отличаться в вашей системе, если он не полностью основан на Debian Linux; В RPi теперь используется зеркальный директор, поэтому его /etc/apt/sources.list
следует использовать вместо этого, однако это нельзя рекомендовать для серверов производственного уровня, поскольку он также будет обновлять обновления, не связанные с безопасностью.
sudo touch /etc/cron-apt/config.d/5-security
echo 'OPTIONS="-o quiet=1 -o APT::Get::List-Cleanup=false -o Dir::Etc::SourceList=/etc/apt/sources.list.d/security.list -o Dir::Etc::SourceParts=\"/dev/null\""' | sudo tee -a /etc/cron-apt/config.d/5-security
Подождите день, cron-apt
чтобы обновить вашу систему и проверьте локальные журналы со следующим, чтобы увидеть, что было обновлено, пока вы спали
sudo cat /var/log/cron-apt/log
Это было протестировано на одном RPi для обновления каждого пакета, а также на ПК с Unbuntu, который обновляет только пакеты, связанные с безопасностью. Поэтому я чувствую, что это один из более портативных доступных вариантов. Другой пакет для автоматических обновлений, предложенный unattended-upgrades
широкими массами (спасибо, я собираюсь протестировать его дальше), выглядит как еще один отличный вариант для автоматизации процесса обновления.