- Глава з книги "Linux. Збірник рецептів "
- Опубліковано: 09.04.2006 Версія тексту: 1.0
- 3.2. Пошук програм для Debian
- Рішення
- коментар
- Див. також
- 3.3. Установка пакетів Debian з диска CD-ROM
- Рішення
- коментар
- Див. також
- 3.4. Установка пакетів в системі на базі Debian
- Рішення
- коментар
- Див. також
- 3.5. Видалення пакетів з системи Debian
- Рішення
- Див. також
- 3.6. Установка програм в Debian по вихідним текстам
- Рішення
- коментар
- Див. також
- 3.7. Оновлення пакунків Debian
- Рішення
- коментар
- Див. також
- 3.8. Оновлення системи Debian
- Рішення
- коментар
- Див. також
- 3.9. Установка оновленої версії Debian
- Рішення
- коментар
- Див. також
- 3.10. Створення змішаної системи Debian
- Рішення
- коментар
- Див. також
- 3.11. Пошук програм, встановлених в системі Debian
- Рішення
- коментар
- Див. також
- 3.12. Операції з кешем пакунків Debian
- Рішення
- коментар
- Див. такоже
- 3.13. Вирішення конфліктів залежностей в Debian
- Рішення
- коментар
- Див. такоже
- 3.14. Створення локального архіву Debian
- Рішення
- коментар
- Див. такоже
- 3.15. Вибір пакетних дзеркал для apt-proxy.conf
- Рішення
- коментар
- Див. такоже
- 3.16. Включення існуючого кешу пакетів в apt-proxy.conf
- Рішення
- Див. такоже
Глава з книги "Linux. Збірник рецептів "
Автор: Карла Шредер
джерело: Linux. Збірник рецептів
Матеріал надав: Видавництво "Пітер"
Опубліковано: 09.04.2006
Версія тексту: 1.0
3.1. Вступ
Дистрибутив Debian відомий своєю винятковою стабільністю і надійністю, а також чудовою системою управління пакетами / залежності не будуть задоволені apt. Установка нових додатків здійснюється дуже просто:
# Apt-get програма
Вибірка і установка бібліотек, від яких залежить робота додатки, здійснюються автоматично. Apt - витончена, інтелектуальна програма, а офіційний архів програмного забезпечення Debian підтримує жорсткі стандарти якості пакетів. Офіційний програмний архів Debian містить понад 12 000 програм; це більше, ніж у будь-якій іншій платформи.
Dpkg -аналог RPM для Debian, що володіє додатковими можливостями; він також виконує базову настройку конфігурації. Наприклад, при установці Postfix dpkg запитує деяку інформацію про систему, встановлює стартові і конфігураційні файли і ініціалізує програму.
Debian існує в трьох різних версіях: стабільною, тестової та нестабільної (також існує четверта версія для шукачів пригод - експериментальна). Вони позначаються термінами Woody, Sarge і Sid. Версія Woody надзвичайно консервативна. Пакети допускаються в версію Woody тільки після великої перевірки залежностей і виправлення всіх дефектів безпеки. Версії Sarge і Sid містять нові пакети, які не пройшли настільки докладного тестування. «Латки» безпеки швидко випускаються для Woody і вельми нерегулярно - для Sarge і Sid.
Яку версію використовувати? Найбільш очевидний вибір - стабільна версія (Woody), надійна, як скеля. Проте за надійність доводиться розплачуватися: програми в Woody на місяці, а іноді і на роки відстають від дати офіційного випуску. Woody ідеально підходить для серверів. Для настільних систем і робочих станцій більш актуальні тестова версія (Sarge) і нестабільна версія (Sid). І незважаючи на страхітливі назви ( «тестова», «нестабільна»), вони працюють цілком нормально.
Кодові позначення виглядають симпатично, але не варто використовувати їх в конфігураційних файлах. Нестабільної версії завжди буде відповідати позначення Sid, але Woody і Sarge не завжди будуть зв'язуватися зі стабільною і тестової версіями - коли-небудь поточна тестова версія Sarge буде підвищена до статусу стабільної, а поточна версія Woody піде на спокій. При грамотному супроводі система Debian постійно оновлюється без переустановлення, тому не варто порушувати її роботу використанням кодових позначень, які з часом зміняться.
Далі перераховані кодові назви версій. Всі вони запозичені з фільму «Історія іграшок»:
- Buzz - Базз Світловий рік, космонавт (1.1);
- Rex - тиранозавр Рекс (1.2);
- Bo - Бо Піп (1.3.x);
- Hamm - Хем, свиня-скарбничка (2.0);
- Slink - собака Слінки (2.1);
- Potato - містер Картопляна Голова (2.2).
А тепер версії 3.x:
- Woody - ковбой (стабільна версія);
- Sarge - командир армії зелених солдатиків (тестова версія);
- Sid - зіпсований хлопчисько, який ламає іграшки (нестабільна версія).
3.2. Пошук програм для Debian
проблема
Вам знадобилися програми для системи Debian. У Мережі можна знайти багато гігабайти програмного забезпечення - але де знайти програми, упаковані для Debian? І як вибрати архів?
Рішення
Пакети Debian встановлюються з офіційних архівів пакетів Debian, неофіційних архівів і з дисків CD-ROM. Джерела вказуються у файлі /etc/apt/sources.list, після чого система управління пакетами Debian використовується для установки пакетів з джерел.
Списки адрес сайтів для завантаження програм:
Список постачальників дисків CD-ROM з усього світу:
Для пошуку окремих пакетів можна скористатися сторінкою пошуку Debian:
Наступним кроком має стати редагування файлу /etc/apt/sources.list і занесення в нього відповідних джерел.
коментар
При наявності декількох джерел apt-get завжди використовує найновішу версію пакета. Список починається з найбільш бажаних джерел, оскільки apt-get обробляє список від початку до кінця.
Редагування файлу sources.list - абсолютно законний, простий спосіб управління установкою програм. Занесіть в файл всі записи, які ви коли-небудь плануєте використовувати, і закоментуйте рядки, не задіяні в конкретній установці.
У список sources.list рекомендується включити офіційні дзеркала Debian, щоб зняти навантаження з серверів Debian.org. Повний список офіційних дзеркал знаходиться за адресою http://www.debian.org/mirror/ .
ПОПЕРЕДЖЕННЯ
Заплатки безпеки поширюються тільки з адреси http://www.debian.org/security/ і не копіюються на дзеркалах.
Див. також
sources.list (5); офіційний список дзеркал Debian ( http://www.debian.org/mirror/ ); сторінка пошуку пакетів Debian ( http://www.debian.org/distrib/packages ).
3.3. Установка пакетів Debian з диска CD-ROM
проблема
Потрібно встановити пакети з компакт-диска. Процес, описаний в попередньому розділі, передбачає, що програми завантажуються з архіву. Як включити посилання на CD-ROM в файл sources.list?
Рішення
Змініть файл /etc/apt/sources.list командою apt-cdrom; це єдиний спосіб включення архівів на CD-ROM в sources.list. Диск повинен перебувати в дисководі, але монтувати його не обов'язково. Потім введіть команду:
# Apt-cdrom add Using CD-ROM mount point / cdrom / Unmounting CD-ROM Please insert a Disc in the drive and press enter Mounting CD-ROM Identifying .. [0eabc03d10414e59dfa1622326e20da7-2] Scanning Disc for index files .. Found 1 package indexes and 0 source indexes. This Disc is called: 'Libranet GNU / Linux 2.8.1 CD2' Reading Package Indexes ... Done Wrote 1271 records. Writing new source list Source List entries for this Disc are: deb cdrom: [Libranet GNU / Linux 2.8.1 CD2] / archive / Repeat this process for the rest of the CDs in your set.
Використовуйте ключ -d, щоб додати дані компакт-диска з іншого дисковода:
# Apt-cdrom -d / cdrom1 add
Ідентифікація диска:
$ Apt-cdrom ident Using CD-ROM mount point / cdrom / Mounting CD-ROM Identifying .. [0eabc03d10414e59dfa1622326e20da7-2] Stored Label: 'Libranet GNU / Linux 2.8.1 CD2' $
коментар
apt-get завжди вибирає з усіх доступних джерел новітні версії встановлюються пакетів. Світ Linux швидко розвивається, тому найсвіжіша інформація завжди знаходиться в Інтернеті. Щоб виконати примусову установку програми з компакт-диска, закоментуйте всі інші рядки в файлі sources.list.
ПРИМІТКА
Не забувайте виконувати команду apt-get update при кожній зміні файлу sources.list.
Див. також
apt-cdrom (8), apt-get (8); Debian on CD, архіви ISO ( http://www.debian.org/CD/http-ftp/ ).
3.4. Установка пакетів в системі на базі Debian
проблема
Всі архіви програмного забезпечення, компакт-диски і т. Д. Не принесуть ніякої користі, якщо ви не вмієте встановлювати програми. Отже, ви хочете знати, як встановити новий пакет в Debian.
Рішення
Скористайтеся командою apt-get install:
# Apt-get install tuxkart
Установка пакета з перезаписом файлів:
# Apt-get install --reinstall tuxkart
Щоб встановити відразу декілька програм, перерахуйте їх, розділяючи пробілами:
# Apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga
Завантаження програм без установки або розпакування:
# Apt-get -d install tuxkart
Щоб протестувати команду перед виконанням, приєднайте до рядку ключ --dry-run:
# Apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga --dry-run
коментар
Для визначення назв пакунків використовуйте сторінку пошуку Debian за адресою http://www.debian.org/distrib/packages/ . Імена пакетів Debian часто відрізняються від своїх аналогів з RPM. Наприклад, програма CyrusSASL оформляється в пакет sasl-2.x.rpm, а в Debian вона розбивається на кілька пакетів з іменами libsasl- *.
Не забудьте виконати команду apt-get update після зміни /etc/apt/sources.list і періодично запускайте її, щоб отримувати оновлену інформацію з архівів пакетів.
apt-get завантажує і встановлює (а при необхідності і видаляє) всі пакети, необхідні для вирішення всіх залежностей.
Див. також
apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto).
3.5. Видалення пакетів з системи Debian
проблема
Потрібно видалити пакет або кілька пакетів з системи Debian.
Рішення
Скористайтеся командою apt-get remove:
# Apt-get remove tuxpaint Reading Package Lists ... Done Building Dependency Tree ... Done The following packages will be REMOVED: tuxkart 0 upgraded, 0 newly installed, 1 to remove and 79 not updated. Need to get 0B of archives. After unpacking 188 kB disk space will be freed. Do you want to continue? [Y / n] y (Reading database ... 141283 files and directories currently installed.) Removing tuxkart ... #
Попереднє тестування команди remove:
# Apt-get remove tuxpaint --dry-run
Видалення всіх слідів існування пакету, включаючи конфігураційні файли:
# Apt-get --purge remove tuxpaint
Щоб видалити відразу кілька програм, перерахуйте їх, розділяючи пробілами:
# Apt-get remove tuxkart gltron frozen-bubble tuxracer nethack galaga
Див. також
Apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto).
3.6. Установка програм в Debian по вихідним текстам
проблема
Потрібно відкомпілювати програму в системі (замість установки довічних архівів Debian). Можливо, ви хочете відредагувати код програми або запустити пакет з тестової або нестабільної версії в стабільній (перекомпіляція забезпечує побудову правильних залежностей).
Рішення
Скористайтеся командою apt-get source і сприянням dpkg.
Для початку завантажте заголовки і бібліотеки, від яких залежить встановлювана програма, в каталог, в якому буде будуватися пакет:
# Cd / usr / src # apt-get build-dep tuxkart
Завантаження та збирання пакету:
# Apt-get -b source tuxkart
Установка пакета:
коментар
Побудова пакунків .deb по вихідним текстам найчастіше виконується з метою використання пакетів з тестової або нестабільної версії в стабільною. Перекомпіляція налаштовує залежності для стабільної версії.
Якщо буде потрібно встановити програму, відсутню в архівах Debian, побудуйте .deb за допомогою CheckInstall - утиліти, що створює пакети RPM, .deb і Slackware (див. Розділ 4.5).
Див. також
apt-get (8), dpkg-source (1); локальна документація (/ usr / share / doc / Debian / apt-howto); розділ 4.5.
3.7. Оновлення пакунків Debian
проблема
Потрібно оновити пакет в системі Debian, тому що нова версія має розширені можливості або в ній виправлені помилки.
Рішення
Скористайтеся командою apt-get install:
# Apt-get install gltron Reading Package Lists ... Done Building Dependency Tree ... Done The following packages will be upgraded: gltron 1 upgraded, 0 newly installed, 0 to remove and 78 not upgraded. Need to get 89.5kB of archives. After unpacking 266kB of additional disk space will be used. Get: 1 ftp://ftp.debian.org sid / main gltron 3.53 [89.5kB] Fetched 89.5kB in 5s (16.8kB / s) Preconfiguring packages ... (Reading database ... 141286 files and directories currently installed. ) Preparing to replace adduser 3.52 (using ... / archives / adduser_3.53_all.deb) ... Unpacking replacement gltron ... Setting up adduser (3.53) ... #
Оновлення декількох пакетів:
# Apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga
коментар
Команди відновлення окремих пакетів не існує. Команда apt-get install завжди встановлює останню версію пакета.
Див. також
apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto).
3.8. Оновлення системи Debian
проблема
Потрібно оновити всі пакети в системі і замінити їх новітніми версіями.
Рішення
Переконайтеся в тому, що файл /etc/apt/sourcs.list містить посилання на потрібні джерела, а потім виконайте команду apt-get upgrade.
Завжди починайте з оновлення списків пакетів:
Наступна команда оновлює всі встановлені пакети, але не видаляє пакети для залежності не будуть задоволені:
Оновлення всіх встановлених пакетів з видаленням або установкою пакетів в міру необхідності для вирішення всіх залежностей:
# Apt-get -u dist-upgrade
Прапор -u дозволяє заздалегідь переглянути список всіх змін. Процес оновлення може тривати кілька годин, в залежності від швидкості підключення до Інтернету і кількості для завантаження.
коментар
Щоб прапор -u застосовувався за замовчуванням, відредагуйте (або створіть) файл /etc/apt/apt.conf:
// Завжди перераховувати оновлювані пакети // і запитувати підтвердження у користувача APT :: Get :: Show-Upgraded "true";
Перед кожним виконанням команди apt_get dist_upgrade спочатку виконайте команду apt-get upgrade, щоб знизити ймовірність помилок при виконанні dist-upgrade.
Див. також
apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto).
3.9. Установка оновленої версії Debian
проблема
Потрібно перейти на новішу версію Debian (наприклад, з Woody на Sarge).
Рішення
Перш за все необхідно відредагувати файл /etc/apt/sources.list, щоб в ньому містилися тільки записи Sarge. Потім виконайте наступні команди:
# Apt-get update # apt-get -u upgrade # apt-get -u dist-upgrade
Прапор -u дозволяє спочатку переглянути список змін. Залежно від швидкості підключення до Інтернету і кількості необхідних пакетів процедура може зайняти кілька годин.
коментар
У якийсь момент Sarge підвищується до статусу стабільної версії, а Woody «йде на спочинок». Коли це станеться, поновіть свою систему так, як описано в цьому розділі.
Див. також
apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto).
3.10. Створення змішаної системи Debian
проблема
Потрібно встановити базову систему в стабільній версії, а також деякі програми з тестової версії. Іншими словами, ви хочете мати абсолютно надійну базову систему, але в деяких програмах вам необхідні додаткові можливості, присутні тільки в більш нових версіях.
Рішення
Відредагуйте файл /etc/apt/sources.list так, щоб в ньому містилися посилання на джерела як для стабільної, так і тестової версій (за інформацією про фото sources.list звертайтеся до розділу 3.2. Потім відредагуйте /etc/apt/apt.conf і задайте версію за замовчуванням (в нашому прикладі це стабільна версія). Потім при установці або оновленні пакетів потрібна версія вибирається за допомогою прапора -t.
Відредагований (або створений) файл /etc/apt/apt.conf повинен виглядати приблизно так:
APT :: Default-Release "stable";
Далі проводиться оновлення списків пакетів:
Зараз за замовчуванням використовується стабільна версія, тому вказувати її при установці пакетів не обов'язково. Наступна команда встановлює Tuxkart з стабільної версії:
# Apt-get install tuxkart
Для установки пакета з тестової версії (Sarge) скористайтеся ключем -t:
# Apt-get -t testing install tuxkart
Щоб гарантовано отримати конкретну версію, вкажіть номер пакета:
# Apt-get install tuxkart = 0.2.0-3
коментар
Супровід змішаної системи вимагає обережності, особливо якщо в якості базової версії використовується Woody. У міру «старіння» Woody можуть виникнути проблеми двійковій сумісності з Sarge / Sid. Відмінності між ключовими системними файлами (такими як libc і gcc) можуть стати настільки серйозними, що пакети Sarge / Sid НЕ будуть встановлюватися в Woody. Якщо це станеться, спробуйте побудувати пакети по вихідним текстам (див. Розділ 3.6).
Див. також
apt.conf (5), sources.list (5); сторінка пошуку пакетів Debian ( http://www.debian.org/distrib/packages ).
3.11. Пошук програм, встановлених в системі Debian
проблема
Потрібно дізнатися, які пакети встановлені в системі, до якого пакунку відносяться ті чи інші файли і що знаходиться в окремих пакетах.
Рішення
Скористайтеся засобами обробки запитів dpkg.
Наступна команда виводить список всіх встановлених пакетів і направляє його в файл:
Пошук всіх пакетів, що задовольняють критерію пошуку, і висновок інформації про їх стан:
$ Dpkg -l '* gnome *' Desired = Unknown / Install / Remove / Purge / Hold | Status = Not / Installed / Config-files / Unpacked / Failed-config / Half-installed | / Err? = (None) / Hold / Reinst-required / X = both-problems (Status, Err: uppercase = bad) || / Name Version Description +++ - ========================================== ==================== pn gnome <none> (no description available) un gnome-about <none> (no description available) ii gnome-applets 2.4.2- 1 Various applets for GNOME 2 panel rc gnome-bin 1.4.2-18 Miscellaneous binaries used by GNOME
Пошук встановлених пакетів, які відповідають критерію пошуку:
Виведення списку файлів, що входять в пакет:
$ Dpkg -L gnome-applets. / Usr / share / usr / share / lintian / usr / share / lintian / overrides / usr / share / lintian / overrides / gnome-applets ...
Наступна команда визначає, до якого пакунку належить файл:
$ Dpkg -S boing.wav tuxkart-data: /usr/share/games/tuxkart/wavs/boing.wav
Висновок повної інформації про пакет:
$ Dpkg -s kpoker Package: kpoker Status: install ok installed Priority: optional Section: games Installed-Size: 428 Maintainer: Daniel Schepler <[email protected]> Source: kdegames Version: 4: 3.1.5-1 ... .
коментар
Таблиця, що виводиться командою dpkg -l, виглядає досить загадково, тому я приведу розшифровку.
$ Dpkg -l gnome * Desired = Unknown / Install / Remove / Purge / Hold | Status = Not / Installed / Config-files / Unpacked / Failed-config / Half-installed | / Err? = (None) / Hold / Reinst-required / X = both-problems (Status, Err: uppercase = bad) || / Name Version Description +++ - ========================================== ==================== pn gnome <none> (no description available) un gnome-about <none> (no description available) ii gnome-applets 2.4.2- 1 Various applets for GNOME 2 panel rc gnome-bin 1.4.2-18 Miscellaneous binaries used by GNOME
У рядку pn gnome підніміться від букви p наверх по «стрілці». Вона приведе вас до рядка Desired = Unknown / Install / Remove / Purge / Hold з розшифровками першого символу (Purge в даному випадку).
Від наступній колонці, n, стрілка веде до рядка Status. По ній можна визначити, що символ n означає Not / Installed.
У третьому стовпці відображається код помилки. У нашому випадку він порожній (і добре). Як зазначено в кінці рядка, будь-які символи верхнього регістру в шпальтах Status і Err ні до чого доброго не приведуть.
Отримуємо: пакет gnome колись був встановлений в системі, але потім він був видалений.
Код un означає, що пакет ніколи не встановлювався.
Код ii означає, що пакет встановлений.
Код rc означає, що пакет був встановлений, а потім видалений, але після нього залишилися конфігураційні файли. Склад цих файлів визначається легко:
$ Dpkg -L gnome-bin /etc/logcheck/ignore.d.server/gnome-bin /etc/logcheck/ignore.d.workstation/gnome-bin
Див. також
dpkg (8).
3.12. Операції з кешем пакунків Debian
проблема
Потрібно забезпечити актуальність кешу пакетів та переліків пакетів, щоб програма apt працювала правильно, без виникнення помилкових проблем з залежностями.
Рішення
Скористайтеся програмами apt та dpkg.
Не забувайте виконувати команду apt-get update після модифікації файлу /etc/apt/sources.list, а також регулярно виконуйте її, щоб список пакетів залишався актуальним.
Наступна команда виводить список завантажених, але не встановлених пакетів:
Перевірка порушених залежностей:
Видалення кешованих пакетів, які стали непотрібними:
Видалення всіх кешованих пакетів:
Виведення списку частково встановлених пакетів:
Якщо виклик dpkg --audit повертає будь-які результати, як в наступному випадку:
$ Dpkg --audit vpw (no informationavailable)
для початку переконайтеся в тому, що повертається пакет існує:
$ Dpkg -l vpw Package 'vpw'is not installed and no info is available
Якщо пакет існує, або завершите установку, або видаліть її. Якщо пакет не встановлено, пошукайте відповідний запис в / var / lib / dpkg / available і / var / lib / dpkg / status і видаліть її.
коментар
Кеш пакетів запросто може займати десятки, якщо не сотні мегабайт. Загляньте в / var / cache / apt / archives і перевірте самі. Щоб заощадити місце на диску, створіть локальний кеш пакетів в своїй мережі (див. Розділ 3.14).
Див. такоже
dpkg (8), apt_cache (8), apt-get (8); локальна документація (/ usr / share / doc / Debian / apt-howto); The Debian Reference Manual ( http://qref.sourceforge.net/ ).
3.13. Вирішення конфліктів залежностей в Debian
проблема
Програма не встановлюється через проблеми з залежностями, або команда apt-get dist-upgrade залишає пакети, які потрібно видалити.
Рішення
Існує кілька команд, які можуть стати в нагоді для вирішення цього завдання; в цьому розділі вони перераховуються в тому порядку, в якому їх варто спробувати.
Припустимо, проблеми виникли з пакетом libpam-modules, який не бажає оновлюватися:
# Apt-get install libpam-modules ... The following packages have unmet dependencies: libpam-modules: Depends: libdb3 (> = 3.2.9-19.1) but 3.2.9-19 is to be installed E: Broken packages
Якщо ви працюєте в змішаній системі, для початку спробуйте вказати версію:
# Apt-get install -t stable libpam-modules
Якщо це не допомагає або система не є змішаною, спробуйте скористатися системою розв'язання конфліктів Debian:
Потім виконайте команду:
І знову повторіть команду:
Якщо буде отримано таку відповідь, значить, спроба завершилася невдачею:
Reading Package Lists ... Done Building Dependency Tree ... Done 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Тепер перевірте, що станеться при видаленні існуючого пакету libpam-modules:
# Apt-get remove --dry-run libpam-modules Reading Package Lists ... Done Building Dependency Tree ... Done The following packages will be REMOVED: adduser adminmenu apache at base-config courier-imap courier-imap-ssl courier -pop courier-pop-ssl cron cupsys cupsys-driver-gimpprint dict-elements dict-foldoc dict-gcide dict-jargon dict-vera dict-wn dictd gdm2 ... .... WARNING: The following essential packages will be removed This should NOT be done unless you know
exactly what you are doing ! login libpam-modules (due to login)
В даному випадку виправлення конфліктів залежностей потребують чи не повної перебудови системи. Найчастіше проблеми обмежуються кількома пакетами. В цьому випадку починайте видаляти найменш важливі з них, поки конфлікти залежностей не будуть вирішені, а потім повторно все пакети, які вам потрібні.
Якщо apt-get -u dist-upgrage відображає будь-які затримані (held) пакети, від них краще позбутися. Пакети утримуються через конфлікти залежностей, які не вдається вирішити apt. Спробуйте скористатися наступною командою для пошуку і виправлення конфліктів:
# Apt-get -o Debug :: pkgProblemResolver = yes dist-upgrade
Якщо виправити конфлікти не вдається, команда завершується з повідомленням
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
Видаляйте held-пакети один за одним, кожен раз запускаючи dist-upgrade, поки не залишиться жодного затриманого пакета. Потім встановіть заново всі необхідні пакети. Не забудьте використовувати ключ --dry-run, щоб заздалегідь знати про всі наслідки:
#
Apt -get remove --dry-run libsdl-perl
коментар
У «монолітних» системах подібні конфлікти версій зустрічаються рідко. Користувачі змішаних систем стикаються з ними частіше. Щоб запобігти їх, будьте надзвичайно обережні при виборі встановлюваних програм - при першій установці Debian витратьте трохи часу і виберіть кожен необхідний пакет.
Див. такоже
dpkg (8), apt-get (8); Debian User's List з архівами ( http://lists.debian.org/debian-user/ ).
3.14. Створення локального архіву Debian
проблема
Потрібно створити в локальній мережі сховище пакетів для загального користувача. Локальний архів особливо корисний в тому випадку, якщо користувачі мережі спільно використовують низькошвидкісне підключення до Інтернету. Замість того щоб завантажувати файли з Інтернет-архівів, робочі станції Debian завантажують їх з локального архіву.
Рішення
Скористайтеся програмою apt-proxy:
Apt-proxy запускається автоматично після установки.
Тепер відредагуйте секцію add_backend / debian / файлу /etc/apt-proxy/apt-proxy.conf так, щоб вона містила посилання на географічно близькі дзеркала (список дзеркал з пакетами знаходиться за адресою http://www.debian.org/mirror/list ).
Потім відредагуйте файл /etc/apt/sources.list на клієнтських комп'ютерах так, щоб він містив посилання на сервер apt-proxy. За замовчуванням використовується порт 9999:
deb http: // ip-or-hostname: 9999 / main stable main contrib non-free deb http: // ip-or-hostname: 9999 / non-US stable / non-US main contrib non-free deb http: / / ip-or-hostname: 9999 / security stable / updates main contrib non-free
Запустіть apt-get update на клієнтських машинах, і локальний архів почне працювати. Кожен раз, коли клієнтський комп'ютер в локальній мережі встановлює програму, ця програма буде кешуватися на сервері apt-proxy. Наступні запити того ж пакету будуть обслуговуватися з локального кеша.
коментар
Більшістю параметрів у файлі /etc/apt-proxy/apt-proxy.conf, крім джерел пакетів, можна залишити значення за замовчуванням. Виняток становить частота «оновлень», яка визначає періодичність завантаження списку пакетів. За замовчуванням відповідна секція виглядає так:
# Максимальна частота оновлень (в хвилинах) # Високі значення знижують навантаження. BACKEND_FREQ = 240
Я зазвичай встановлюю значення цього параметра рівним 1440; щоденної перевірки цілком достатньо. Дійсно важливі події відбуваються не так часто. Перевірку слід проводити хоча б раз в день головним чином для своєчасної установки оновлень безпеки.
Див. такоже
apt-proxy (8), apt-proxy.conf (5); офіційний список дзеркал Debian ( http://www.debian.org/mirror/ ); домашня сторінка apt-proxy ( http://apt-proxy.sourceforge.net/ ).
3.15. Вибір пакетних дзеркал для apt-proxy.conf
проблема
Пакетні дзеркала, що містяться за замовчуванням в файлі apt-proxy.conf, розкидані по всій земній кулі. Як вибрати ті з них, які ви хочете використовувати? В ідеальному варіанті хотілося б використовувати дзеркальні сайти, що знаходяться ближче до вашого комп'ютера.
Рішення
За замовчуванням записи /etc/apt-proxy.apt-proxy.conf виглядають так:
add_backend / debian / \ $ APT_PROXY_CACHE / debian / \ http://ftp.us.debian.org/debian/ \ http://ftp.de.debian.org/debian/ \ http: //ftp.uk.debian .org / debian / \ + ftp.us.debian.org :: debian /
на сайті http://www.debian.org/mirror/list наведено поточний список дзеркал Debian. Наприклад, ось деякі німецькі дзеркала в mirror / list:
DE Germany ---------- ftp.de.debian.org / debian / / debian / ftp2.de.debian.org / debian / / debian / ftp.tu-clausthal.de / pub / linux / debian / / pub / linux / debian / debian.uni-essen.de / debian / / debian /
Замініть стандартні записи apt-proxy.conf своїми, випереджаючи кожну запис префіксом http: //:
add_backend / debian / \ $ APT_PROXY_CACHE / debian / \ http://ftp.de.debian.org/debian/ \ http://ftp2.de.debian.org/debian/ \ http: //ftp.tu-clausthal .de / pub / linux / debian / \
Файли /etc/apt/sources.list на клієнтських комп'ютерах змінювати не потрібно.
коментар
Команди ping і traceroute допоможуть визначити, які дзеркала володіють мінімальним часом відгуку. Справа в тому, що географічна близькість ще не гарантує швидкого відгуку.
Вказівка трьох джерел забезпечує необхідну надмірність. apt-proxy опитує їх по порядку: якщо перший джерело не відповідає, опитується другий і т. д.
Див. такоже
apt-proxy (8), apt-proxy.conf (5), apt-proxy-import (8); офіційний список дзеркал Debian ( http://www.debian.org/mirror/ ); домашня сторінка apt-proxy ( http://apt-proxy.sourceforge.net/ ).
3.16. Включення існуючого кешу пакетів в apt-proxy.conf
проблема
На сервері apt-proxy вже існує досить великий кеш пакетів. Ви хотіли б, щоб програма apt-proxy використовувала його замість того, щоб завантажувати все пакети заново.
Рішення
Спочатку запустіть apt-get update принаймні на одному клієнті, щоб ініціалізувати кеш. Потім на сервері виконайте команду
# Apt-proxy-import -d / var / cache / apt / archives
Див. такоже
apt-proxy (8), apt-proxy.conf (5), apt-proxy-import (8); офіційний список дзеркал Debian ( http://www.debian.org/mirror/ ); домашня сторінка apt-proxy ( http://apt-proxy.sourceforge.net/ ).
Будь-який з матеріалів, опублікованих на цьому сервері, не може бути відтворений в якій би то не було формі і якими б то не було засобами без письмового дозволу власників авторських прав.Яку версію використовувати?У Мережі можна знайти багато гігабайти програмного забезпечення - але де знайти програми, упаковані для Debian?
І як вибрати архів?
List?
Do you want to continue?
Dpkg -l gnome * Desired = Unknown / Install / Remove / Purge / Hold | Status = Not / Installed / Config-files / Unpacked / Failed-config / Half-installed | / Err?
Як вибрати ті з них, які ви хочете використовувати?