Розділ 8 - Підтримування вашої системи Debian в сучасному стані

Метою Debian є забезпечення постійних оновлень та безупинне підвищення безпеки. Ми робимо все можливе, щоб оновлення до нової версії було максимально простою процедурою. У тому випадку, якщо під час процесу оновлення щось сталось, система попереджує користувача про це та пропонує шляхи вирішення можливої проблеми.

Вам також потрібно прочитати примітки до нової версії (Release Notes), документ, що описує специфічні деталі оновлення, котрий доступний як на КД всіх версій Debian, так і в тенетах за адресою http://www.debian.org/releases/stable/releasenotes.

Як я можу оновити свою збірку Debian 1.3.1 (чи давнішу), що базується на libc5, до 2.0 (чи новішої), котрі базуються на libc6?

Є декілька можливостей оновлення:

  • За допомогою простого сценарію оболонки, що називається autoup.sh ви можете оновити всі найважливіші пакунки. Після того, як сценарій завершить свою роботу, ви можете встановити всі інші пакунки за допомогою dselect. Це рекомендований метод, хоча й не єдиний.
    Найновіші версії autoup.sh на даний момент можна знайти за наступними адресами:

  • Слідуйте за вказівками "Debian libc5 to libc6 Mini-HOWTO" та оновіть найважливіші пакунки вручну. Сценарій autoup.sh базується на цьому документі, отож цей метод працюватиме приблизно так само, як і попередній.

  • За допомогою apt, що базується на libc5. APT іноді може замінити dselect. На даний момент він працює лише в режимі командного рядка або як метод доступу dselect. libc5 ви можете знайти у каталозі dists/slink/main/upgrade-older-i386 архівів Debian.
  • Використовуючи лише dselect, без попереднього оновлення пакунків вручну. НЕ рекомендується використовувати цей метод, якщо у вас є така можливість, оскільки dselect не визначає оптимальний порядок встановлення пакунків. APT в цьому випадку працює значно краще та безпечніше.

Як я можу підтримувати систему Debian у найновішому стані?

Найпростіше здійснити анонімний вхід до ftp-серверу з архівом Debian, знайти необхідний файл, стягнути його та встановити за допомогою dpkg. Зауважте, що dpkg встановить оновлені файли тут же, на працюючій системі. Іноді отриманий пакунок може вимагати встановлення іншого пакунку; в цьому випадку завершити операцію не вдасться поки той пакунок не буде встановлено.

Багато людей вважають, що оновлення в такий спосіб займає надто багато часу, оскільки Debian розвивається надто швидко - щотижня оновлюється сотня, а то й більше пакунків. Це число таке велике в основному із-за незначних оновлень. Щоб залишатись "на передовій", багато людей використовують більш автоматизовані методи. Для цього існують декілька пакунків:

APT

АРТ - це розвинений інтерфейс для системи керування пакунками Debian. apt-get - це інструмент командного рядка для обробки пакунків; його метод dselect - це інтерфейс до АРТ через програму dselect. Обидва вони пропонують простіший та безпечніший шлях для встановлення та оновлення пакунків.

Можливості АРТ включають повне впорядкування встановлення, можливість доступу до багатьох джерел та деякі інші унікальні функції, описані у користувацькому посібнику, що знаходиться в /usr/share/doc/apt-doc/guide.html/index.html (у вас повинен бути встановлений пакунок apt-doc).

Встановіть пакунок apt та відредагуйте файл /etc/apt/sources.list. Якщо ви хочете оновитись до найсвіжішої стабільної версії Debian, вам мабуть знадобиться рядок на кшталт ось такого:

deb http://http.us.debian.org/debian stable main contrib non-free

Ви можете замінити http.us.debian.org іменем найшвидшого для вас дзеркала. Список дзеркал ви можете знайти за адресою http://www.debian.org/misc/README.mirrors.

Додаткову інформацію ви можете знайти на сторінках підручника apt-get(8) та sources.list(8), та в Посібнику користувача APT, /usr/share/doc/apt-doc/guide.html/index.html.

Далі запустіть

apt-get update

та

apt-get dist-upgrade

Дайте відповідь на запитання, котрі ви можливо отримаєте, і вашу систему буде оновлено.

Щоб використати АРТ разом з dselect, виберіть метод доступу АРТ на екрані вибору методу доступу dselect (опція 0) та визначте, який список джерел слід використовувати. Конфігураційним файлом є /etc/apt/sources.list, його формат описується на сторінці підручника sources.list(5).

Якщо ви хочете встановлювати пакунки з КД, ви можете використовувати apt-cdrom. Деталі описуються у документі "Release Notes", параграф "Setting up for an upgrade from a local mirror" ("Налаштунки для встановлення з локального дзеркала").

Зверніть, будь-ласка, увагу, що коли ви отримуєте та встановлюєте пакунки, їх копії зберігаються у каталозі /var. Щоб вберегти ваш розділ від переповнення не забувайте видаляти надлишкові файли за допомогою apt-get clean та apt-get autoclean, або ж пересувати де-інде (підказка: за допомогою apt-move).

dpkg-ftp

Це старіший метод доступу для програми dselect. Його можна викликати з dselect, що дасть користувачеві можливість завантажувати файли та встановлювати їх за один крок. Щоб зробити це, виберіть тип доступу ftp та визначте назву й каталог віддаленого хоста. dpkg-ftp автоматично завантажить вказані файли (вибрані як в поточному сеансі роботи з deselect так і раніше).

Зауважте, що dpkg-ftp завантажує не цілий сайт, а лише ті файли, котрі ви вказали та ті, що потребують оновлення.

dpkg-ftp є дещо застарілим. Натомість вам краще використовувати метод доступу АРТ з рядками ftp:// URLs у файлі sources.list.

mirror

Щоб вибрати визначені користувачем частини дерева каталогів з заданого користувачем хоста за допомогою анонімного ftp-з'єднання можна використати сценарій, написаний на Perl та його додаткову керуючу програму, що називається mirror-master.

mirror є надзвичайно зручним для завантаження великих масивів програмного забезпечення. Після того, як файли були вперше завантажені з сайту, на локальному комп'ютері створюється файл під назвою .mirrorinfo. Всі зміни у віддаленій файловій системі автоматично відслідковуються сценарієм, котрий порівнює цей файл з аналогічним на віддаленій системі та завантажує лише змінені файли.

В загальному програмою mirror зручно користуватись для оновлення локальних копій віддалених дерев каталогів. Отримані файли не обов'язково повинні бути архівами Debian. Оскільки mirror написана на Perl, вона може бути запущена також і на інших системах окрім Unix. В програму включено механізм виділення назв файлів, що відповідають заданим користувачем ланцюжкам. Програма зручніша для завантаження цілих дерев каталогів, а не окремих файлів.

dpkg-mountable

dpkg-mountable додає метод доступу 'mountable' до списку методів dselect, котрий дозволяє вам встановлювати пакунки з будь-якої файлової системи, визначеної у файлі /etc/fstab. Наприклад, архів може знаходитись на звичайному дисковому розділі, чи на NFS-сервері, що монтуються та розмонтовуються по мірі необхідності.

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

Чи повинен я переходити у однокористувацький режим при оновленні пакунків?

Ні, пакунки можуть оновлюватись на місці, навіть у працюючій системі. В Debian є програма start-stop-daemon, котра при необхідності в процесі оновлення перезапускає запущений процес.

Чи потрібно мені зберігати на диску всі ці .deb-файли?

Ні. Якщо ви завантажили файли на ваш диск (що є абсолютно необхідним, дивись вище опис dpkg-ftp), ви можете видалити їх після встановлення.

Як я можу вести список всіх пакунків, котрі я встановив у системі?

dpkg зберігає список пакунків, що були розпаковані, конфігуровані, видалені та/або очищені, але (на даний момент) він не веде журналу термінальної активності, що виникає під час цих дій над пакунком.

Найпростіший спосіб попрацювати у цьому напрямку - це запускати ваші сесії dpkg/dselect/apt-get/абощо всередині програми script(1).