Відповіді:
Вам потрібно ввести в командний рядок кілька команд. Поперше:
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
Ви також можете написати невеликий сценарій із кроком для влучення та запустити його за розкладом один раз на день / однак часто це вам подобається, це я і зробив.
Як налаштувати 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
здається, ще один чудовий варіант автоматизації процесу оновлення.