
- •Расширенные возможности 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.B. Хуки функций Wireless Tools
Заметка: Это не будет работать с WPA Supplicant, однако переменные ${ESSID} и ${ESSIDVAR} существуют в функции postup() |
В /etc/conf.d/net могут быть определены две функции, которые будут вызваны перед и после функции соединения. Эти функции вызываются с именем интерфейса, так что одна функция может контролировать несколько адаптеров.
Возвращаемое значение для функции preassociate() должно быть 0 (удача), чтобы показать, что конфигурация или деконфигурация интерфейса может продолжиться. Если preassociate() вернет ненулевое значение, то конфигурация интерфейса будет отменена.
Возвращаемое значение для функции postassociate() будет проигнорировано, так как если произойдет ошибка, делать уже нечего.
${ESSID} устанавливается равной ESSID точки доступа, к которой вы подсоединяетесь. ${ESSIDVAR} это ${ESSID} сконвертированная к имени переменной, которое понимает bash.
Код 2.1: Функции pre/post association в /etc/conf.d/net |
|
preassociate() { # Нижеследующее добавляет две конфигурационные переменные leap_user_ESSID # и leap_pass_ESSID. Когда они обе сконфигурированы для того ESSID, # к которому мы подсоединяемся, тогда мы запустим скрипт CISCO LEAP
local user pass eval user=\"\$\{leap_user_${ESSIDVAR}\}\" eval pass=\"\$\{leap_pass_${ESSIDVAR}\}\"
if [[ -n ${user} && -n ${pass} ]]; then if [[ ! -x /opt/cisco/bin/leapscript ]]; then eend "For LEAP support, please emerge net-misc/cisco-aironet-client-utils" return 1 fi einfo "Waiting for LEAP Authentication on \"${ESSID//\\\\//}\"" if /opt/cisco/bin/leapscript ${user} ${pass} | grep -q 'Login incorrect'; then ewarn "Login Failed for ${user}" return 1 fi fi
return 0 }
postassociate() { # Эта функция здесь больше для комплектности. Я не думаю, что # что-то полезное можно сделать с помощью нее пока ;-)
return 0 } |
|
Заметка: ${ESSID} и ${ESSIDVAR} не существуют в функциях predown() и postdown(). |
|
Заметка: Для более подробной информации о написании своих собственных функций, прочитайте /usr/share/doc/openrc-*/net.example.bz2. |
|
6. Обслуживание сети
6.A. Обслуживание сети
Если вы и ваш компьютер всегда передвигаетесь, у вас не всегда может быть под рукой сетевой кабель или точка доступа. Также, вы можете захотеть, чтобы сеть автоматически начинала работать, когда сетевой кабель втыкается в ваш компьютер, или находится точка доступа.
Здесь вы найдете некоторые инструменты, которые помогут вам это сделать.
Заметка: Этот документ рассказывает только про ifplugd, но существуют альтернативы, например netplug. netplug это более легковесная альтернатива ifplugd, но она работает на основе правильно работающих сетевых драйверов ядра, а многие драйвера не работают правильно. |
6.b. ifplugd
ifplugd это демон, который включает и выключает интерфейсы, когда сетевой кабель втыкается или вытыкается. Он также отвечает за детектирование и соединения с точками доступа, если попадается новая.
Код 2.1: Устанавливаем ifplugd |
# emerge sys-apps/ifplugd |
Кофигурация для ifplugd достаточно проста. Конфигурационный файл находится в /etc/conf.d/net. Запустите man ifplugd для более детальной информации о существующих переменных. Также просмотрите файл /usr/share/doc/openrc-*/net.example.bz2 для большего числа примеров.
Код 2.2: Примерная конфигурация ifplugd |
(Замените eth0 на интерфейс, за которым нужно следить) ifplugd_eth0="..."
(Чтобы следить за беспроводным интерфейсом) ifplugd_eth0="--api-mode=wlan" |
В дополнение к обслуживанию нескольких сетевых соединений, вы можете захотеть программу, которая позволяет работать с несколькими DNS-серверами и конфигурациями. Это очень полезно, если вы получаете свой IP адрес по DHCP. Просто установите openresolv.
Код 2.3: Устанавливаем openresolv |
# emerge openresolv |
Просмотрите man-страницу openresolv, чтобы узнать больше о его возможностях.
Содержимое данного документа, если другое явно не указано, лицензируется по лицензии CC-BY-SA-2.5 (http://creativecommons.org/licenses/by-sa/2.5). Также применяется документ по импользованию имени и логотипа Gentoo (http://www.gentoo.org/main/en/name-logo.xml?style=printable)