[ назад ] [ Зміст ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ далі ]
Для керування пакунками Debian існують численні утиліти, від графічних та псевдографічних інтерфейсів до низькорівневих інструментів, що використовуються для встановлення пакунків. Всі доступні утиліти базуються на низькорівневих інструментах та перераховуються тут по мірі зростання їхньої складності.
Важливо зрозуміти, що інструменти вищого
рівня, як aptitude
чи dselect
залежать від apt
, котра, у свою чергу,
залежить від dpkg
.
Перегляньте APT HOWTO
,
якщо бажаєте дізнатись більше про
інструменти керування пакунками Debian. Цей
документ є доступним різними мовами та в
різних форматах, зверніться до запису про
APT HOWTO на сторінці проекту документації Debian
Огляд
підручників для користувачів
.
Це основна програма керування пакунками.
dpkg
можна викликати з великою
кількістю опцій. Найчастіше вживаються
такі:
Отримати список опцій: dpkg --help.
Надрукувати файл control (та іншу інформацію) для заданого пакунку: dpkg --info foo_VVV-RRR.deb
Встановити пакунок (включаючи розпакування та конфігурування) у файлову систему на жорсткому диску: dpkg --install foo_VVV-RRR.deb.
Розпакувати (але не конфігурувати) архівний файл Debian у файлову систему на жорсткому диску: dpkg --unpack foo_VVV-RRR.deb. Зауважте, що ця команда не обов'язково робить пакунок готовим до вжитку; деякі файли можуть потребувати наступного налаштування для правильного запуску. Ця команда видаляє вже встановлену версію програми та запускає зв'язаний з пакунком сценарій preints (див. Що роблять сценарії preinst, postinst, prerm, та postrm?, розділ 6.6).
Конфігурувати пакунок, що був попередньо розпакований: dpkg --configure foo. Окрім іншого, ця команда запускає сценарій postinst (див. Що роблять сценарії preinst, postinst, prerm, та postrm?, розділ 6.6). Вона також оновлює файли, перелічені у conffiles. Зауважте, що операція configure приймає в якості аргументу назву пакунку, а не назву архівного файлу Debian (для прикладу, правильно буде вказувати foo, а не foo_VVV-RRR.deb).
Видобути файл "blurf" (або групу файлів "blurf*") з архівного файлу Debian: dpkg --fsys-tarfile foo_VVV-RRR.deb | tar -xf - blurf*.
Видалити пакунок (але не його конфігураційні файли): dpkg --remove foo.
Видалити пакунок (включно з конфігураційними файлами): dpkg --purge foo.
Перелічити стан встановлення пакунків, що містять послідовність символів (чи регулярний вираз) foo*: dpkg --list 'foo*'.
APT — це вдосконалений пакунковий
інструмент (Advanced Package Tool), що постачає
програму apt-get
. apt-get
забезпечує простий шлях для отримання та
встановлення пакунків з декількох джерел
за допомогою командного рядка. На відміну
від dpkg
, apt-get
працює не з
.deb-файлами, а з назвами пакунків і може
встановлювати їх лише з місць, котрі
перелічені у файлі /etc/apt/sources.list
.
apt-get
викликає dpkg
відразу
після завантаження архівного .deb-файлу з
сконфігурованих джерел. [4].
Ось деякі стандартні методи використання
apt-get
:
Щоб оновити список пакунків, відомих системі, запустіть:
apt-get update
(вам потрібно запускати цю команду регулярно для оновлення списку пакунків)
Щоб оновити всі пакунки у вашій системі, наберіть:
apt-get upgrade
Щоб встановити пакунок foo разом з усіма залежностями, виконайте:
apt-get install foo
Щоб видалити пакунок foo з вашої системи, введіть:
apt-get remove foo
Щоб видалити пакунок foo разом з його конфігураційними файлами, наберіть:
apt-get --purge remove foo
Щоб оновити всі пакунки у вашій системі до нової версії Debian GNU/Linux, запустіть:
apt-get dist-upgrade
Зверніть увагу, що ви повинні бути зареєстровані як root щоб мати можливість виконувати будь-які команди, котрі змінюють системні пакунки.
Набір інструментів apt включає також
утиліту apt-cache
для запитів списків
пакунків. Ви можете використовувати її щоб
знайти пакунки, котрі відповідають певним
вимогам за допомогою простих текстових
запитів чи регулярних виразів, або ж
запитів щодо залежностей у системі
керування пакунками. Ось деякі типові
способи використання apt-cache
:
Знайти пакунки, чий опис містить слово:
apt-cache search слово
Роздрукувати детальну інформацію про пакунок:
apt-cache show назва_пакунка
Вивести список пакунків, від котрих залежить даний пакунок:
apt-cache depends назва_пакунка
Показати детальну інформацію про доступні версії даного пакунку та пакунків, від котрих він залежить:
apt-cache showpkg назва_пакунка
Щоб отримати детальнішу інформацію,
встановіть пакунок apt
та прочитайте
apt-get(8)
, sources.list(5)
, встановіть
пакунок apt-doc
та прочитайте
/usr/share/doc/apt-doc/guide.html/index.html
.
aptitude
— це керівник пакунків для
системи Debian GNU/Linux, що являє собою зовнішній
інтерфейс до інфраструктури керування
пакунками apt. aptitude
— це програма
з псевдографічним інтерфейсом, що
базується на бібліотеці curses, вона може
використовуватись для швидкого й зручного
керування пакунками.
aptitude
забезпечує функціональність
dselect
і apt-get
та багато
додаткових можливостей, котрих немає у
жодній іншій прогамі:
aptitude
забезпечує доступ до всіх
версії пакунку.
aptitude
веде журнал своїх дій у файлі
/var/log/aptitude
.
aptitude
полегшує відслідковування
застарілого програмного забезпечення
ведучи список „Застарілих та локальних
пакунків“ (Obsolete and Locally Created Packages).
aptitude
є достатньо потужною системою
для пошуку окремих пакунків та виводу
короткої інформації про них. Користувачі,
котрі знайомі з mutt
, швидко засвоять
і її, оскільки синтаксис виразів взято саме
звідти.
aptitude
відслідковує, які саме пакунки
було встановлено завдяки залежностям та
видаляє їх, якщо пакунки, які залежали від
них, були видалені з системи.
aptitude
може автоматично
встановлювати рекомендовані (Recommended:)
пакунки[5].
В повноекранному режимі aptitude
має
вбудовану функціональність
суперкористувача та може запускатись
звичайним користувачем. Вона викличе
програму su
(та запитає пароль
суперкористувача, звісно) якщо вам справді
знадобляться привілеї системного
адміністратора.
Ви можете працювати з aptitude
як через
візуальний інтерфейс (просто запустивши
aptitude) так і напряму з командного
рядка. Синтаксис командного рядка дуже
подібний до синтаксису apt-get
.
Наприклад, щоб встановити пакунок foo,
вам потрібно запустити aptitude install
foo.
Зверніть увагу, що для встановлення та/або
оновлення вашої системи Debian рекомендує
саме aptitude
.
Для додаткової інформації прочитайте
сторінку підручника aptitude(8)
та
встановіть пакунок aptitude-doc-en
.
Ця програма являє собою керований у режимі
меню інтерфейс до системи керування
пакунками Debian. Вона є особливо зручною для
першого встановлення. Деякі користувачі
можуть почувати себе зручніше у
aptitude
, котра також рекомендується
для масштабних оновлень. Щоб отримати
додаткову інформацію про aptitude див. aptitude, розділ 7.1.3.
dselect
може:
бути провідником для користувача, котрий вирішив встановити чи видалити котрийсь із пакунків; перевірити, чи не було встановлено пакунків, що конфліктують з іншими та чи встановлено всі пакунки, котрі необхідні для роботи даного пакунка;
попередити користувача про суперечливість чи несумісність його вибору;
визначити порядок встановлення пакунків;
автоматично виконати встановлення чи видалення;
провести користувача через будь-який конфігураційний процес, необхідний для встановлення пакунку.
dselect
розпочинає свою роботу з
представлення користувачеві меню з 7
елементів, кожен з котрих є наперед
визначеною дією. Користувач може обрати
будь-яку з них за допомогою стрілок,
пересуваючи підсвітлений рядок та
натиснувши <Enter> щоб вибрати
підсвітлену дію.
Що користувач побачить на наступному
екрані залежить від дії, котру він обрав.
Якщо він обрав будь-яку з опцій окрім
Access чи Select, dselect
просто
перейде до виконання заданої дії:
наприклад, якщо користувач вибрав
Remove, dselect спробує видалити всі файли,
що вибрані для видалення користувачем при
попередньому відвідуванні екрану
Select.
Елементи меню Access та Select виводять додаткові підменю. В обидвох випадках меню представлені у вигляді розділеного екрану: у верхній частині знаходиться прокручуваний список можливостей вибору, а в нижній — коротке пояснення для кожного з елементів верхьої частини.
Додаткова довідка доступна після натиснення в будь-який момент клавіші '?'.
Порядок, в котрому представлені пункти
початкового меню dselect
аналогічний
порядку дій користувача коли він хоче
встановити нові пакунки. Проте користувач
може вибирати будь-який елемент меню
стільки разів, скільки вважатиме за
потрібне (в залежності від того, що він хоче
зробити).
Розпочніть з вибору методу доступу
(Access Method). Тут вибирається спосіб,
у котрий користувач планує отримувати
пакунки Debian; наприклад, деякі користувачі
мають пакунки на компакт-диску, тоді як
інші планують отримувати їх з FTP. Вибір
методу доступу зберігається по завершенню
роботи з dselect
, отож вам не потрібно
буде вибирати його знову.
Далі оновіть (Update) список
доступних пакунків. Щоб зробити це,
dselect
зчитує файл „Packages.gz“ , котрий
повинен знаходитись в теці, де
зберігаються пакунки Debian (Але якщо його там
не виявиться, dselect
зможе створити
його для вас).
Виберіть (Select), які пакунки ви хочете встановити до системи. Після вибору цього пункту меню користувачу спочатку виводиться повноекранна довідка (при умові, що програма запущена без опції '--expert'). Коли користувач покине вікно довідки, він побачить розділений надвоє екран, де він зможе обрати пакунки для встановлення (чи видалення).
Верхня частина екрану — це порівняно вузьке вікно зі списком 15400 пакунків Debian; нижня містить опис вибраного (підсвітленого) пакунку чи групи пакунків.
Ви можете вибрати пакунки, з котрими працюватиме програма, підсвітлюючи назву пакунку або мітку групи пакунків. Після цього ви можете вибирати пакунки:
Це досягається натисненням клавіші '+'.
Пакунки можна видаляти двома способами:
видаляючи (remove): видаляються більшість файлів, пов'язаних з пакунком, але залишаються файли, відмічені як конфігураційні (див. Для чого призначені conffile?, розділ 6.5) та конфігураційна інформація про пакунок. Це досягається натисненням клавіші '-'.
очищуючи (purged): видаляються всі файли, котрі відносяться до пакунку. Це досягається натисненням клавіші '_'
Зверніть увагу, що всі пакунки („All Packages“) видалити неможливо. Якщо ви спробуєте зробити це, у вашій системі залишаться базові пакунки.
Це досягається натисненням клавіші '=' і
вказує dselect
не оновлювати пакунок
навіть якщо його новіші версії є в сховищах
пакунків Debian, котрі ви використовуєте (це
було визначено, коли ви вибрали метод
доступу до пакунків та оновились, обравши
відповідний пункт меню).
Точно так само ви можете відмінити
фіксування пакунку, натиснувши ':'. В цьому
випадку dselect
може оновити пакунок,
якщо буде доступна його новіша версія.
Така поведінка є стандартною.
Ви можете вибирати різний порядок сортування пакунків, натискаючи клавішу 'o' для циклічного перемикання між різними представленнями. Зазвичай пакунки сортуються за пріоритетом; всередині пріоритету пакунки сортуються за теками (секціями) архіву, у котрому вони зберігаються. В такому порядку деякі пакунки, скажімо, з секції A можуть бути представлені першими, далі йтимуть якісь пакунки з секції B, а після них — інші пакунки з секції A з нижчим пріоритетом.
Ви також можете розширити значення міток вгорі екрану натиснувши клавішу 'v' (verbose — детально). Ця дія виведе купу тексту, який швидше за все не поміститься на екрані. Щоб його побачити, натисніть праву стрілку; щоб повернутись назад — ліву.
Якщо ви вибрали пакунок для встановлення
чи видалення, наприклад foo.deb
і цей
пакунок залежить (або рекомендує) інший
пакунок, наприклад blurf.deb
, тоді
dselect
виведе допоміжне вікно поверх
головного. Там ви побачите список залежних
пакунків і зможете приймати запропоновані
дії (встановлювати чи ні) або ж відкидати
їх. Для останнього натисніть Shift-D; щоб
повернутись до попереднього, натисніть
Shift-U. В будь-якому випадку, ви можете
зберегти свій вибір та повернутись до
головного вікна вибору, натиснувши Shift-Q.
Повернувшись до головного меню, користувач
може обрати пункт „Встановлення“ (Install),
щоб розпакувати та сконфігурувати вибрані
пакунки. Відповідно, користувач, котрий
хоче видалити пакунки, повинен вибрати
пункт меню „Видалити“ (Remove). І в будь-якому
випадку ви можете вибрати „Вихід“ (Quit), щоб
завершити роботу з dselect
; при цьому
все, що ви вибрали (для встановлення,
видалення і т.д.), зберігається.
Ця програма маніпулює архівними (.deb) файлами Debian. Ось її деякі стандартні опції:
Вивести повний список опцій: dpkg-deb --help.
Отримати список файлів у архівному файлі: dpkg-deb --contents foo_VVV-RRR.deb
Видобути файли з заданого архіву в теку, визначену користувачем: dpkg-deb --extract foo_VVV-RRR.deb tmp розпаковує всі файли з архіву foo_VVV-RRR.deb до теки tmp/. Це зручно при перевірці вмісту пакунка в локальному каталозі без необхідності встановлення його в кореневу файлову систему.
Зауважте, що всі пакунки, що були лише розпаковані за допомогою dpkg-deb --extract не є коректно встановленими, натомість вам потрібно використовувати dpkg --install.
Більше ви зможете дізнатись, переглянувши
сторінку довідки dpkg-deb(1)
.
Ця програма ділить великі файли пакунків
на менші (наприклад, для запису на дискети)
та об'єднує набір маленьких файлів назад у
один великий файл. Вона може
використовуватись лише в Debian-системі
(точніше, в системі, що містить пакунок
dpkg
), оскільки вона викликає програму
dpkg-deb, щоб розділити пакунок Debian на
складові частини.
Наприклад, щоб розділити великий „.deb“-файл на N частин,
Запустіть команду dpkg-split --split foo.deb. Вона створить N файлів довжиною приблизно 460 КБайт в поточному каталозі.
Скопіюйте ці файли на дискети.
Скопіюйте вміст дискет на жорсткий диск на іншій машині.
Об'єднайте шматки файлу командою dpkg-split --join "foo*".
Ядро (файлова система) в Debian GNU/Linux підтримує заміну файлів, що використовуються.
Ми також постачаємо програму під назвою
start-stop-daemon
, котра використовується
для запуску демонів під час завантаження
системи, чи їх зупинки під час зміни рівня
запуску ядра (наприклад, від
багатокористувацього режиму в
однокористувацький чи ж при вимкненні). Та
ж сама програма використовується
встановлювальними сценаріями, коли
встановлюється новий пакунок, що містить
демона: при зупинці запущених демонів та їх
перевантаженні у разі необхідності.
Щоб взнати стан всіх встановлених пакунків у Debian-системі, виконайте команду
dpkg --list
Вона виведе однорядкове резюме для кожного пакунку, включаючи 2-літерний код стану встановлення (пояснюється у заголовку), назву пакунку, встановлену версію та короткий опис.
Щоб дізнатись про стан встановлення пакунків, чиї назви збігаються з набором літер або виразом, запустіть команду:
dpkg --list 'foo*'
Для отримання детальнішого звіту про певний пакунок, наберіть команду:
dpkg --status packagename
Щоб взнати назву пакунку, що встановив певний файл виконайте:
dpkg --search filename
Вона шукає файл filename серед встановлених пакунків (на даний момент це еквівалентно пошуку серед файлів з розширенням .list в теці /var/lib/dpkg/info та виводу тих назв пакунків, котрі містять заданий файл).
Швидшою альтернативою є використання
утиліти dlocate
.
zgrep foo Contents-ARCH.gz
Ця команда шукає файли, що містять підланцюжок foo в своій повній назві. Файли Contents-ARCH.gz (де ARCH — це назва архітектури) розташовані у основних каталогах (main, non-free, contrib) на FTP-сайті Debian (наприклад, в /debian/dists/sarge). Файли Contents містять дані лише про ті пакунки, котрі розташовані у їх підтеці. Таким чином користувачеві може знадобитись здійснювати пошук не в одному файлі Contents, щоб знайти пакунок, котрий містить файл foo.
Цей метод має ту перевагу перед dpkg --search, бо пошук здійснюється навіть у пакунках, котрі не встановлені у вашій системі
apt-file search foo
Подібно до вищенаведеного, шукаються
файли, що містять ланцюжок чи регулярний
вираз foo в повній назві. Перевага
над попереднім прикладом полягає в тому, що
вам не потрібно отримувати файли
Contents-ARCH.gz, оскільки вони оновлюються
автоматично для всіх джерел, перелічених у
/etc/apt/sources.list
під час запуску (як root)
apt-file update.
Деякі пакунки розділені на власне програму (foo) та дані (foo-data). Це справедливо для багатьох ігор, мультимедійних додатків та словників і введено в Debian з тих пір, коли користувачі захотіли мати доступ до даних не встановлюючи програму, або ж до програми, котра б запускалась без даних, роблячи їх необов'язковими.
Подібні ситуації виникають і з бібліотеками: зазвичай вони встановлюються, якщо від них залежать програми з вибраного пакунка. Коли такий пакунок видаляться, пакунки з бібліотеками залишаються в системі. Або у випадку, коли пакунок з програмою перестає бути залежним від пакунка з бібліотекою.
В цьому випадку foo-data не залежить від foo,
отож, якщо ви видаляєте пакунок foo, foo-data не
буде автоматично видалено більшістю
інструментів для керування пакунками. Це
саме відбувається при використанні
пакунків з бібліотеками. Це необхідно ще й
для того, щоб уникнути циклічних
залежностей. Якщо ви використовуєте
aptitude
(див. aptitude, розділ
7.1.3) у якості керівника пакунками, він,
окрім іншого, може відслідковувати
автоматично встановлені пакунки та
видаляти їх, якщо в системі не залишилось
пакунків, що їх потребують.
[ назад ] [ Зміст ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ далі ]
FAQ Debian GNU/Linux
версія CVS від 19 червня 2006 року