- •Расширенные возможности Portage
- •А. Установка Gentoo
- •1. Об установке Gentoo Linux
- •1.А. Введение.
- •2. Выбор правильного источника установки.
- •2.А. Требования к железу
- •2.B. Установочные cd Gentoo
- •2.С. Скачайте, запишите, и загрузитесь с установочного cd Gentoo
- •3. Конфигурация сети
- •3.A. Автоматическое определение сети
- •3.B. Автоматическая конфигурация сети
- •3.С. Ручная настройка сети
- •4. Подготовка дисков
- •4.A. Введение в блочные устройства
- •4.B. Разрабатываем схему разделов
- •4.C. Использование fdisk для разбивки вашего диска
- •4.D. Использование parted для разбивки вашего диска
- •4.E. Создаем файловые системы
- •4.F. Монтирование
- •5. Установка файлов Gentoo
- •5.A. Устанавливаем tar-архив Stage3
- •5.B. По умолчанию: Используем Stage3 из Интернета
- •5.C. Устанавливаем Portage
- •5.D. Настройка опций компиляции
- •6. Установка базовой системы Gentoo
- •6.A. Чрутинг
- •6.B. Конфигурируем Portage
- •7. Конфигурация ядра
- •7.A. Временная зона
- •7.B. Устанавливаем исходники
- •7.C. По умолчанию: Ручная конфигурация
- •7.D. Альтернатива: Используем genkernel
- •7.E. Модули ядра
- •8. Конфигурация системы
- •8.A. Информация о файловой системе
- •8.B. Информация о сети
- •8.C. Системная информация
- •9. Установка необходимых системных приложений
- •9.A. Системный логгер
- •9.B. Опционально: Демон Cron
- •9.C. Опционально: Индексация файлов
- •9.D. Опционально: Удаленный Доступ
- •9.E. Программы работы с файловой системой
- •9.F. Программы работы с сетью
- •10. Конфигурация загрузчика
- •10.A. Делаем выбор
- •10.B. По умолчанию: Используем grub
- •10.C. Альтернатива: Используем lilo
- •10.D. Перезагружаем систему
- •11. Окончание установки Gentoo
- •11.A. Работа с пользователями
- •11.B. Очистка диска
- •12. Куда идти дальше?
- •12.A. Документация
- •12.B. Gentoo в сети
- •B. Работа с Gentoo
- •1. Введение в Portage
- •1.A. Добро пожаловать в Portage
- •1.B. Дерево Portage
- •1.C. Поддержка приложений
- •1.D. Лицензии
- •1.E. Когда Portage ругается...
- •2.A. Что такое use-флаги?
- •2.B. Использование use-флагов
- •3. Возможности Portage
- •3.A. Возможности Portage
- •3.B. Распределенная компиляция
- •3.C. Кеширование компиляции
- •3.D. Поддержка бинарных пакетов
- •3.E. Скачивание файлов
- •3.F. Загрузка проверенных образов дерева Portage
- •4. Инициализационные скрипты
- •4.A. Уровни запуска
- •4.B. Работаем с rc-update
- •4.C. Конфигурирование сервисов
- •4.D. Пишем инициализационные скрипты
- •4.E. Изменение поведения уровня запуска
- •5. Переменные окружения
- •5.A. Переменные окружения?
- •5.B. Определение переменных глобально
- •5.C. Определение переменных локально
- •C. Работа с Portage
- •1. Файлы и каталоги
- •1.A. Файлы Portage
- •1.B. Сохраненные файлы
- •1.C. Компиляция приложений
- •1.D. Возможности логгинга
- •2. Конфигурирование через переменные
- •2.A. Конфигурация Portage
- •2.B. Опции, специфичные для компиляции
- •2.C. Защита файлов конфигурации
- •2.D. Опции скачивания
- •2.E. Конфигурация Gentoo
- •2.F. Поведение Portage
- •3. Смешение веток приложений
- •3.A. Использование одной ветви
- •3.B. Смешиваем стабильную ветку и ветку для тестирования
- •3.C. Используем замаскированные пакеты
- •4. Дополнительные программы для Portage
- •5. Отход от официального дерева
- •5.A. Использование поднабора дерева Portage
- •5.B. Добавляем неофициальные ебилды
- •5.C. Приложения, не обрабатываемые Portage
- •6. Расширенные возможности Portage
- •6.A. Введение
- •6.B. Переменные окружения для каждого пакета
- •6.C. Вмешиваемся в процесс установки
- •6.D. Выполняем задачи после --sync
- •6.E. Изменяем настройки профиля
- •6.F. Применение нестандартных патчей
- •D. Конфигурация сети Gentoo
- •1. Начинаем
- •1.A. Начинаем
- •2. Расширенная конфигурация
- •2.A. Расширенная конфигурация
- •2.B. Сетевые зависимости
- •2.C. Имена и значения переменных
- •3. Модульная сеть
- •3.A. Сетевые модули
- •3.B. Обработчики интерфейсов
- •3.F. Связывание
- •3.G. Мосты (Поддержка 802.1d)
- •3.I. Туннелирование
- •3.J. Vlan (Поддержка 802.1q)
- •4. Беспроводные сети
- •4.A. Введение
- •4.D. Определение конфигурации сети на каждый essid
- •5. Добавление функциональности
- •5.A. Хуки стандартных функций
- •5.B. Хуки функций Wireless Tools
- •6. Обслуживание сети
- •6.A. Обслуживание сети
5.C. Устанавливаем Portage
Распаковываем образ Portage
Теперь вам необходимо установить образ Portage, набор файлов, которые говорят Portage, какие программы вы можете установить, какие профили существуют, и так далее.
Скачивание и установка образа Portage
Перейдите к точке монтирования, куда вы смонтировали вашу файловую систему (скорее всего /mnt/gentoo):
Код 3.1: Переходим к точке монтирования Gentoo |
# cd /mnt/gentoo |
Запустите links (или lynx) и перейдите к списку зеркал Gentoo (http://www.gentoo.org/main/en/mirrors.xml?style=printable). Выберите зеркало, ближайшее к вам, и откройте каталог snapshots/. Там скачайте последний образ Portage (portage-latest.tar.bz2), выбрав его и нажав D.
Код 3.2: Смотрим на список зеркал Gentoo. |
# links http://www.gentoo.org/main/en/mirrors.xml |
Теперь выйдите из вашего браузера, нажав Q. Теперь у вас есть образ Portage, сохраненный в /mnt/gentoo.
Если вы хотите проверить целостность скачанного образа, используйте md5sum и сравните вывод с контрольной суммой MD5, которая дана на зеркале.
Код 3.3: Проверка целостности образа Portage |
# md5sum -c portage-latest.tar.bz2.md5sum portage-latest.tar.bz2: OK |
На следующем шаге мы распакуем образ Portage на вашу файловую систему. Удостоверьтесь, что вы используете точно такую же команду, последняя опция — большая C, не c.
Код 3.4: Распаковываем образ Portage |
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr |
5.D. Настройка опций компиляции
Введение
Чтобы оптимизировать Gentoo, вы можете настроить несколько переменных, которые влияют на поведение Portage. Все эти переменные могут быть установлены как переменные окружения (используя команду export), но это будет не постоянно. Чтобы хранить ваши настройки, Portage дает вам файл /etc/make.conf, конфигурационный файл для Portage. Именно этот файл мы теперь будем редактировать.
Заметка: Прокомментированный список всех возможных переменных можно найти в /mnt/gentoo/usr/share/portage/config/make.conf.example. Для успешной установки Gentoo вам нужно установить только те переменные, о которых сказано ниже. |
Запустите ваш любимый редактор (в данном обзоре мы используем nano), чтобы мы могли изменить переменные оптимизации, которые мы обсудим позже.
Код 4.1: Открываем /etc/make.conf |
# nano -w /mnt/gentoo/etc/make.conf |
Как вы наверное заметили,файл make.conf.example структурирован в общем виде: комментированные строки начинаются с «#», остальные строки определяют переменные, используя синтаксис ПЕРЕМЕННАЯ=«содержание». Файл make.conf использует такой же синтаксис. Некоторые из этих переменных обсуждаются ниже.
CFLAGS и CXXFLAGS
Переменные CFLAGS и CXXFLAGS определяют флаги оптимизации для gcc C и C++ компиляторов, соответственно. Хотя мы определяем их здесь, вы получите максимальную производительность только если оптимизируете эти флаги для каждой программы отдельно. Причина этого в том, что каждая программа различна.
В файле make.conf вы должны определить флаги оптимизации, которые, как вы считаете, сделают вашу систему наиболее отзывчивой «в общем». Не помещайте в данную переменную экспериментальные установки, слишком много оптимизации может заставить программы вести себя плохо (падать, или, еще хуже, неправильно работать).
Мы не будем объяснять все возможные опции оптимизации. Если вы хотите узнать их все, прочитайте документацию (http://gcc.gnu.org/onlinedocs/) или просмотрите info-страничку gcc (команда info gcc, но она работает только уже на установленной системе Linux). Сам файл make.conf.example тоже содержит много примеров и информации, не забудьте его тоже почитать.
Первая настройка это флаг -march= или -mtune=, который определяет название архитектуры. Возможные опции описаны в make.conf.example (как комментарии).
Второе — это флаг -O (это большая O, а не ноль), который определяет класс оптимизации gcc. Возможные классы это s (для оптимизации по размеру), 0 (никаких оптимизаций), 1, 2, или даже 3 для оптимизации на скорость (каждый класс оптимизирует так же, как предыдущий, плюс имеет некоторые дополнения). -O2 это рекомендованное значение по умолчанию, -O3бывает вызывает проблемы, когда используется на общесистемном уровне, поэтому мы рекомендуем вам остаться на -O2.
Другим популярным флагом оптимизации является -pipe (использовать пайпы вместо временных файлов для взаимодействия между различными этапами компиляции). Он не воздействует на генерируемый код, но использует больше памяти. На системах с малым объемом памяти, gcc может быть убит. В этом случае не используйте этот флаг.
Использование -fomit-frame-pointer (не заносить указатель фрейма стека в регистр для функций, которым это не необходимо) может иметь серьезные последствия в случае дебага приложений.
Когда вы определяете CFLAGS и CXXFLAGS, вы должны выбрать несколько флагов оптимизации. Значения по умолчанию, которые находятся в распакованном вами архиве stage3 доолжны быть достаточно хороши. Следующий пример это просто пример:
Код 4.2: Определение переменных CFLAGS и CXXFLAGS |
CFLAGS="-O2 -march=i686 -pipe" # Use the same settings for both variables CXXFLAGS="${CFLAGS}" |
Заметка: Вы также можете захотеть просмотреть «Гайд по оптимизации компиляции» (http://www.gentoo.org/doc/en/gcc-optimization.xml?style=printable) для большего количества информации о том, как разные опции компиляции могут повлиять на вашу систему. |
MAKEOPTS
С помощью MAKEOPTS вы определяете, сколько параллельных компиляций должно проходить при установке пакета. Хорошим выбором будет число CPU (или ядер CPU) в вашей системе, плюс один. Но этот совет не всегда бывает идеален.
Код 4.3: MAKEOPTS для обычной, однопроцессорной системы. |
MAKEOPTS="-j2" |
Пристегнулись, сели, поехали!
Измените ваш файл /mnt/gentoo/etc/make.conf так, как вам нужно, и сохраните его (пользователи nano нажали бы Ctrl-X). Теперь вы готовы установить базовую систему Gentoo.