Установка пакетів в gentoo
Відео: Відео №1: Установка Gentoo
Gentoo - особливий дистрибутив Linux, і виділяється він саме установкою програмного забезпечення. Тут реалізована власна система управління пакетами - portage, яка на відміну від інших систем, таких як deb або rpm, надає в повному обсязі зібрані, налаштовані і готові для установки пакети, а тільки файли зі скриптами компіляції, установки, і наступного налаштування.
Пакетний менеджер на основі цих файлів завантажує вихідні пакетів, накладає необхідні патчі, компілює програму з зазначеними вами прапорами і встановлює її. На перший погляд все дуже складно, але насправді це не так. Ось побачите. У цій статті ми розглянемо установку пакетів в Gentoo, деякі особливості роботи з пакетним менеджером в Gentoo, а також помилки під час установки і способи їх вирішення.
Трохи про Portage
Система portage дуже схожа на систему портів FreeBSD, а ще чимось нагадує роботу pacman`а в ArchLinux. Як я сказав, тут немає зібраних пакетів, є тільки вихідні, патчі і файли, що описують що з цим усім робити. Такі файли мають розширення * .ebuild. По суті, база даних пакетів це система підкаталогів в / usr / protage. При оновленні бази даних просто скачиваться її нова версія з серверів Gentoo, а стара, яка використовується в системі видаляється.
Відео: Серія Gentoo №01 - Інструменти для тестової установки
Список всіх встановлених вами пакетів зберігається в файлі / var / lib / portage / world. Тут будуть тільки ті пакети, які ви явно встановлювали за допомогою менеджера пакетів. Дуже зручна річ, можна завжди визначити що в системі зайве.
Система прапорів Gentoo це окрема і дуже довга історія, але скажу про це пару слів про всяк випадок. В інших дистрибутивах додаткова функціональність для програм підключається установкою додаткових пакетів, тут же в цьому немає необхідності, ми просто перед компіляцією вказуємо з якими функціями потрібно збирати пакет.
Це було трохи матчастини, тепер перейдемо безпосередньо до теми статті - установка пакетів в Gentoo.
Установка пакетів в Gentoo
Для управління пакетами в Gentoo використовується власний менеджер пакетів - emerge. Щоб встановити пакет Gentoo досить набрати:
$ Sudo emerge -av Имя_ПакетаПрограма виведе всю доступну інформацію про пакет, USE прапори, повне ім`я, розмір, категорію і т д. А потім запитає чи потрібно його встановлювати:
Тут червоним кольором відзначені активні USE прапори, синім неактивні, салатовим - ті, які будуть активовані, наприклад, при перевстановлення або оновленні.
Буква біля слова ebuild значить дію з пакетом:
- N - буде встановлений;
- S - установка в новий слот;
- U - оновлення версії пакета;
- D - установка старішої версії пакету;
- R - перевстановлення;
- F - необхідне ручне завантаження початкових кодів пакета;
- f - те ж саме, тільки файли вже завантажені;
- B - пакет конфліктує з іншими пакетами, але конфлікт буде вирішено автоматично;
- b - пакет конфліктує з іншими пакетами, конфлікт потрібно вирішувати вручну.
Далі ми бачимо кількість оброблюваних пакетів і кількість даних які необхідно завантажити в кілобайтах.
Якщо установка програм в Gentoo не потрібна, а потрібно тільки подивитися інформацію про пакет можна використовувати опцію -p:
$ Sudo emerge -avl Имя_ПакетаЯкщо до пакету необхідно застосувати додаткові USE прапори можна вказати їх прямо в команді за допомогою локальної змінної:
$ Nano /etc/portage/package.use$ sudo nano /etc/portage/package.mask$ sudo emerge - av Имя_ПакетаРішення проблем з установкою пакетів в Gentoo
Установка програм в Gentoo, які дуже рідко використовуються або ще нестабільні і тим більше при використанні різних оверлеїв може викликати різні помилки. Почнемо з найпростіших і елементарних.
(See "package.accept_keywords" in the portage (5) man page for more details)
# Required by skype (argument)
= "Net-im / skype-4.3.0.37-r5" ~ amd64
Це означає що пакет не був протестований з вашої архітектурою або вважається не зовсім стабільним для неї, але це не привід його не використовувати просто додайте рядок в /etc/portage/package.keywords, роздільну встановлювати цей пакет:
(See "package.unmask" in the portage (5) man page for more details)
# Required by sun-jdk (argument)
Це означає що пакет вважається ще нестабільним або вже застарілим і замаскований, або він несумісний з вашим профілем, якщо впевнені що воно вам потрібно, додайте ім`я пакета в /etc/portage/package.unmask
категорія_пакета / Имя_ПакетаЧасто виникають конфлікти USE прапорів, тут навіть не потрібно нічого робити незвичайного, щоб отримати ось помилку. Для її усунення потрібно подивитися які пакети конфліктують і прибрати або додати до одного з пакетів потрібні прапори з допомогою /etc/portage/package.use.
- Огляд пакетних менеджерів linux
- Огляд gentoo linux
- Що краще deb або rpm
- Apt vs apt-get. В чому різниця?
- Що краще - gentoo або arch linux
- Установка rpm пакетів в linux
- Установка webmin в gentoo
- Установка wine в gentoo
- Налаштування bash-completion в gentoo
- Установка gnome archlinux
- Установка з ebuild в gentoo
- Новий blackarch містить понад 1500 хакерських інструментів
- Очищення системи debian 8
- Список встановлених пакетів gentoo
- Установка пакетів в centos 7
- Помилка apt-get command not found
- Установка пакетів ubuntu
- Новий дистрибутив uruk linux
- Установка snap пакетів ubuntu
- Найшвидший дистрибутив linux
- Порівняння дистрибутивів linux для професіоналів