RuNetBSD


Июнь, 2008

Глава 1. Что такое NetBSD?

Русский перевод: Михаил Сгибнев

Содержание

1.1. История NetBSD
1.2. Возможности NetBSD
1.3. Поддерживаемые платформы
1.4. Для кого предназначена NetBSD
1.5. Приложения для NetBSD
1.6. Философия NetBSD
1.7. Где получить NetBSD

NetBSD – это свободно распространяемая, защищенная, кросс-платформенная, Unix-подобная операционная система, развиваемая в соответствии с концепциями Open Source. NetBSD работает на множестве аппаратных платформ, от 64-битных серверов Opteron и настольных систем до карманных и встроенных устройств. Простота и ясность реализации в сочетании с широкими возможностями делают ее незаменимой при исследованиях и на производстве. Система поставляется с полными исходными кодами. В коллекции пакетов NetBSD вы легко можете найти множество приложений.

1.1. История NetBSD

Первая версия NetBSD (0.8) появилась в 1993 и базировалась на операционной системе 4.3BSD Lite, версии Unix, разработанной в Калифорнийском университете Беркли (BSD = Berkeley Software Distribution), и на операционной системе 386BSD, первой BSD системе, портированной на процессор Intel 386. В последующие годы, в состав системы вносились изменения из операционной системы 4.4BSD Lite (последний выпуск группы разработчиков из Беркли). BSD системы имели огромное значение в развитие Unix. Именно они представили множество инструментов и средств, в настоящее время ставших стандартами для всех Unix-систем – таких как текстовый редактор vi, оболочку C, быструю файловую систему Беркли (Berkeley FFS), поддержку виртуальной памяти, TCP/IP и многое другое. Традиция инновационных разработок и сегодня жива в системах BSD (свободных и коммерческих), в частности – в NetBSD.

1.2. Возможности NetBSD

NetBSD способна полноценно работать на большом количестве аппаратных платформ и по своей сути является в высокой степени портируемой ОС, возможно, самой портируемой операционной системой в мире. Для всех платформ доступны исходные тексты ядра и пользовательских утилит; вы можете уточнить детали на официальном сайте проекта NetBSD.

Подробное описание возможностей NetBSD находится по адресу: http://www.NetBSD.org/Misc/features.html.

Основными возможностями NetBSD являются:

  • Переносимость (поддерживаются более 50 платформ).
  • Безопасность.
  • Качество кода и его корректность.
  • Соответствие промышленным стандартам.
  • Исследования и инновации.

Помимо прямых, есть и косвенные преимущества. Для примера, вы работаете всего на одной платформе и высокая портируемость вам абсолютно не важна. Но высокая переносимость говорит о качестве кода, так как без хорошо написанного и документированного кода невозможно было бы поддерживать такое количество платформ. Качество базового кода подводит базу под создание высоконадежных систем, хотя, как показывает практика, немногие это понимают. Внимание, уделенное этим важным моментам, приводит к большим потенциальным возможностям NetBSD и высокому качеству драйверов устройств.

Одной из ключевых особенностей NetBSD является требование к правильности реализации. Некоторые системы исповедуют философию «Если это работает – то это правильно». NetBSD придерживается мнения, что «это не заработает, пока не будет правильно». Подумайте о том, сколько программ-переростков рушатся под собственным весом и «особенностями» и вы поймете, почему NetBSD хочет избежать этой ситуации любой ценой.

1.3. Поддерживаемые платформы

NetBSD поддерживает более 50 платформ, включая такие популярные, как PC (i386), системы на базе Opteron, SPARC и UltraSPARC, Alpha, Amiga, Atari, m68k и PowerPC. Технические подробности вы можете прочитать на сайте NetBSD.

1.4. Для кого предназначена NetBSD

Сообщество NetBSD утверждает: «проект NetBSD предоставляет свободно доступную и свободно распространяемую систему, которую профессионалы, любители и исследователи могут использовать любым способом, которым они пожелают». NetBSD является идеальной системой для изучения Unix, главным образом из-за приверженности стандартам (это одна из основных целей проекта) и из-за возможности работать как на современных, так и на устаревших аппаратных средствах. Поэтому вы можете достать с чердака старый, запыленный, побитый молью компьютер и работать на нем с NetBSD. Если у вас есть необходимость установить одинаковую операционную систему на различные аппаратные средства, то NetBSD ваш лучший (и единственный) выбор.

1.5. Приложения для NetBSD

После установки NetBSD вам предлагается широкий выбор программ, доступных для установки на вашу систему. Помимо наличия всех стандартных инструментальных средств Unix, редакторов, средств форматирования, компиляторов и отладчиков C/C++, есть огромное и постоянно растущее количество приложений, доступных с помощью системы пакетов. Все пакеты, которые вы ожидаете увидеть в хорошо налаженной системе, доступны для NetBSD бесплатно, и также существует великое множество коммерческих приложений. Помимо этого, имеется возможность выполнять в режиме эмуляции бинарные файлы других систем, (например Linux), чем пользуются практически все пользователи NetBSD. Вы можете запускать Linux-версии:

  • Netscape
  • Acrobat Reader
  • Doom, Quake
  • Adobe FrameMaker
  • множество других программ

В режиме эмуляции вам доступна поддержка приложений для FreeBSD, BSDI, Solaris и многих других систем.

1.6. Философия NetBSD

По сравнению с другими операционными системами, NetBSD имеет несколько особенностей, но не является сложной и избыточной, поскольку мы стремимся предоставить вам полную и стабильную систему без излишеств. После инсталляции вы получаете полностью работоспособную систему, которую можно настроить для различных нужд – например, GNOME или KDE с браузером и прочими программами для рабочей станции, Apache для web-сервера, Postgres или MySQL для сервера баз данных. Вы свободны устанавливать то, что вам больше нравиться, так как установка программ с помощью системы пакетов (pkgsrc) чрезвычайно проста.

Другим преимуществом данного подхода будет то, что основная система будет работать и без этих сторонних приложений. Например, если вы решили поставить новую версию языка Perl, вы можете быть уверены, что это не повлияет на работоспособность всей системы. Сразу после установки NetBSD вы не найдете огромного количества установленных приложений. Возможно, сначала это вам покажется недостатком, однако позже, когда вы начнете понимать философию системы, эта особенность предстанет пред вами как свобода выбора. После установки различных коллекций пакетов (подборку которых сделали вместо вас), вы обнаружите, что диск буквально завален тысячами программ, большинство из которых так и останется неиспользуемыми (и неизвестными) и будет попусту занимать место (а возможно даже приводить к потере стабильности всей системы). Это именно тот случай, которого пытается избежать типичный пользователь BSD.

Когда вы начинаете изучать NetBSD, вас будет поражать целостность и логика системы, в которой ничто не происходит по каким-то неизвестным причинам, а внимание уделяется даже мелочам. Это качество – одно из основных отличий NetBSD.

Мы могли бы потратить много времени, сравнивая достоинства и недостатки различных операционных систем (и некоторые люди любят делать это), но если вы не попробуете работать с системой, вы не сможете судить о ней. Я убежден в этом, поскольку в списках рассылки часто встречается мнение о том, что вы будете завоеваны совершенным равновесием между сложностью и эффективностью NetBSD. Все проблемы имеют больше, чем один путь решения и NetBSD не навязывает вам, как решать вашу проблему. Это походит на знакомство с фломастером в детстве – вы долго его разглядываете, в первый раз увидев, но как только вы понимаете, что с его помощью можно рисовать, то всецело отдаетесь творчеству, совершенно не обращая внимания на сам инструмент.

1.7. Где получить NetBSD

NetBSD является операционной системой с открытыми исходными текстами и доступна для свободной загрузки с ftp.NetBSD.org и его зеркал.

Не существует «официального» поставщика компакт-дисков с NetBSD, но есть несколько распространителей. Самый свежий их список вы можете посмотреть на соответствующей странице сайта NetBSD.

Глава 30. Коллекция пакетов

Русский перевод: Вадим Лопатюк
Содержание

30.1. Установка коллекции пакетов
30.2. Обновление коллекции пакетов
30.3. Пример: установка программы из исходных текстов
30.3.1. Скачивание исходных текстов
30.3.2. Компиляция и установка
30.4. Пример: установка бинарного (скомпилированного) пакета
30.5. Команды управления пакетами
30.6. Быстрый старт, руководство по созданию пакетов.
30.6.1. Программное обеспечение
30.6.2. Начало
30.6.3. Последние приготовления
30.6.4. Проверка с помощью pkglint
30.6.5. Запуск и проверка сборки/установки
30.6.6. Отправка пакета с использованием send-pr
30.6.7. Финальные примечания

Эта глава содержит общую документацию. Пожалуйста обращайтесь к руководству pkgsrc (pkgsrc/doc/guide), которое содержит наиболее свежую информацию системе пакетов NetBSD, до тех пор пока проблема не будет решена!

Коллекция пакетов NetBSD это коллекция инструментов для облегчения компиляции и установки огромного количества бесплатного программного обеспечения для Unix систем. Для установки безупречно сконфигурированного и работающего пакета понадобится только одна из двух команд.

Первый контакт с системой пакетов NetBSD может вызвать небольшое смущение: очевидно что различные команды выполняют одинаковые функции. Вопрос, на самом деле, очень прост: имеется два пути для установки программы. Вы можете:

  • скомпилировать пакет из исходных текстов на вашей системе. Это наиболее полное использование коллекции пакетов, которая может автоматически скачать исходные тексты из Интернет, скомпилировать их, установить и сконфигурировать программу и документацию всего двумя командами. Коллекция пакетов содержит набор файлов Makefile и конфигурационных файлов которые используют стандартные инструменты Unix, устанавливаемые с базовой системой. Еще одно приятное свойство системы пакетов заключается в том, что она может автоматически проверить требуемые зависимости и также скачать и установить необходимые пакеты. Коллекция пакетов не устанавливается автоматически с базовой системой потому, что очень часто обновляется: в следующих разделах будет объяснено, как скачать и установить ее на Вашу систему. Сайт NetBSD содержит очень подробное техническое описание системы пакетов.
  • установить скомпилированную и сконфигурированную версию программы. Это производится с помощью набора утилит pkgtools, которые устанавливаются с базовой системой. Этот метод быстрее, но менее гибок чем предыдущий (например, Вы не можете изменить опции этапа компиляции.) pkgtools также используются для управления установленными (обоих типов установки, как из исходных текстов, так и скомпилированных) пакетами, которые записаны в базу данных: Вы можете, например, просмотреть установленные пакеты, удалить пакет, и т.п.

    Если Вам нужно всего лишь установить скомпилированную программу, Вам не нужно скачивать коллекцию пакетов.

Оба вышеописанных метода требуют кое что еще для «создания пакета», например, то, что программа должна быть перенесена (портирована) и сконфигурирована для NetBSD. Хотя коллекция пакетов содержит более 5000 программ, существует вероятность что необходимая Вам программа до сих пор не включена. В таком случае Вы можете скомпилировать ее без использования системы пакетов и когда Вы получите работающий экземпляр – создайте пакет, который можно добавить в коллекцию, тогда другие пользователи извлекут пользу из Вашей работы.

30.1. Установка коллекции пакетов

Перед установкой программы из исходных текстов, Вы должны скачать и установить коллекцию пакетов с сайта NetBSD или с любого зеркала по Вашему выбору. Как это сделать описано ниже.

  1. Скачайте последнюю версию исходных текстов системы пакетов, которая включает все необходимые файлы Makefile и конфигурационные файлы, из ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-current/tar_files/. Файл, который необходимо скачать называется pkgsrc.tar.gz.
  2. Удалите существующую коллекцию с Вашего жесткого диска (если она у вас установлена) следующими командами:
    # cd /usr
    # rm -rf pkgsrc
  3. Установите коллекцию, которую Вы скачали:
    # tar -xzvpf pkgsrc.tar.gz -C /usr

    Работа предыдущей команды может занять некоторое время, из-за огромного количества (маленьких) файлов, которые необходимо распаковать. По окончанию структура, необходимая для установки новых программ, готова и Вы можете начинать их установку.

    Замечание

    предыдущие команды установили конфигурационные файлы, необходимые для автоматической установки программ, но у Вас еще не установлены сами программы! В основном система получила список доступных пакетов и инструкции по их доставке, компиляции и установке.

Когда Вы установите коллекцию пакетов, Вы можете просмотреть ее с помощью Lynx или Netscape и прочитать детали и описания по всем доступным пакетам и их категориям. Например:

$ cd /usr/pkgsrc
$ lynx README.html

Не потеряйте файлы дистрибутива

Когда Вы удалите существующую коллекцию пакетов для установки более новой версии, не забудьте сделать резервную копию каталога /usr/pkgsrc/distfiles перед удалением. Этот каталог используется для хранения скачанных архивов исходых текстов и если вы удалите этот каталог, то ваша система будет скачивать эти архивы еще раз, когда ей они понадобятся. Если вы не хотите рисковать, то можете указать системе использовать другой каталог для файлов дистрибутивов, который не является подкаталогом /usr/pkgsrc. Например, создайте новую директорию:

# mkdir /usr/pkgsrc_distfiles

Добавьте следующую строку в/etc/mk.conf:

DISTDIR=/usr/pkgsrc_distfiles

Конечно, Вы можете использовать каталог по Вашему выбору вместо /usr/pkgsrc_distfiles.

Вы можете настраивать множество аспектов системы пакетов с помощью /etc/mk.conf. Вы можете найти детальное описание переменных, которые, возможно, Вы захотите использовать, в файле /usr/pkgsrc/mk/bsd.pkg.defaults.mk и на странице руководства mk.conf(5).

30.2. Обновление коллекции пакетов

Коллекция пакетов часто обновляется: Вы можете найти новую версию на ftp сайте почти каждую неделю. Для обновления коллекции на Вашей системе следуйте тем же инструкциям как при первой установке.

Иногда, при обновлении коллекции пакетов, бывает необходимо обновить также утилиты «pkgtools». Вы можете легко определить, когда Вам необходимо это сделать: когда вы пытаетесь установить программу – система пакетов жалуется, что ваши pkgtools устарели.

# make
===> Validating dependencies for gqmpeg-0.6.3
Your package tools need to be updated to 2000/02/02 versions.
The installed package tools were last updated on 1999/01/01.
Please make and install the pkgsrc/pkgtools/pkg_install package.
*** Error code 1

Самый простой способ обновления:

# cd /usr/pkgsrc/pkgtools/pkg_install
# make install

После этого вы можете продолжить установку пакета, выдавшего это сообщение об ошибке.

Замечание

Вы можете определить необходимую версию проанализировав pkgsrc/mk/bsd.pkg.mk файл: ищите строку с:

PKGTOOLS_REQD = 20000202

(дата 20000202 это лишь пример.) Это означает, что версия программы, которая Вам необходима в pkg_install-20000202.tar.gz файле, ее Вы можете найти на ftp сайте NetBSD в packages/distfiles/LOCAL_PORTS. pkg_install может быть установлен как любой другой пакет.

30.3. Пример: установка программы из исходных текстов

Эта секция описывает установку на примере программы: cdrecord. Первое, cd в /usr/pkgsrc/sysutils/cdrecord директорию.

30.3.1. Скачивание исходных текстов

Если у Вас есть подключение к Интернет, Makefile должен автоматически определить необходимые источники и Вам нет необходимости читать данный раздел.

Скачивание с другой машины

Очень распространенная ситуация – когда Вы скачиваете исходные тексты пакетов на одной машине с быстрым подключением к Интернет (например на работе) и затем устанавливаете на Вашу NetBSD систему (например дома.)

В противном случае Вы должны беспокоится о получении файлов архива лично. Тогда Вам необходимо знать названия файла(ов) архива(ов); посмотрите в Makefile в строке

DISTNAME = cdrtools-2.0

Полное название пакета получается: cdrtools-2.0.tar.gz.

Вы можете добиться аналогичных результатов более простым путем с помощью следующих команд:

# cd /usr/pkgsrc/sysutils/cdrecord
# make fetch-list

Которые также выведут список сайтов с которых можно скачать пакет.

30.3.2. Компиляция и установка

Для компиляции пакета наберите:

# cd /usr/pkgsrc/sysutils/cdrecord
# make

Предыдущая комманда выбирает исходный архив (если его уже нет в директории файлов дистрибутивов), распаковывает исходные тексты, добавляет исправления, необходимые для установки программы на NetBSD, и затем собирает пакет.

Для его установки

# make install

Установка программы делает запись в Вашей системе, Вы можете проверить это при помощи команды pkg_info -a.

Тогда cdrecord пакет готов к использованию, Вы можете удалить промежуточные файлы созданные компилятором:

# make clean
# make clean-depends

Вторая команда необходима если были установлены некоторые зависимые пакеты. Тот же результат может быть достигнут одной командой:

# make clean CLEANDEPENDS=1

30.4. Пример: установка бинарного (скомпилированного) пакета

Я уже объяснил в первой части этой главы, что система пакетов может устанавливать пакеты из исходных текстов, но также возможно устанавливать бинарные пакеты, подготовленные кем-то еще для NetBSD. Этот, второй способ установки, быстрее, поскольку нет необходимости компилировать пакет и файлы архива для бинарных пакетов обычно меньше и более быстро отбираются. Для установки бинарного пакета коллекция пакетов не нужна, необходимы только утилиты «pkgtools».

Файлы архивов для бинарных программ обычно имеют расширение .tgz в то время как архивы исходных текстов заканчиваются на .tar.gz.

Замечание

не все архивы исходных текстов заканчиваются на .tar.gz. Система пакетов может манипулировать другими типами пакетов, например: .zip, .bz2, etc.
Нет жесткой необходимости скачивать бинарные пакеты перед установкой. Вместо этого Вы можете использовать ftp://-URLs. Например:

ftp://ftp.NetBSD.org/pub/NetBSD/packages/1.4.2/i386/All/tcsh-6.09.00.tgz

Если Вы не знаете какая версия пакета доступна на FTP сайте в данный момент вы можете пропустить в команде ввод версии и pkg_add использует последнюю версию с сервера FTP. Например:

# pkg_add ftp://ftp.NetBSD.org/pub/NetBSD/packages/1.4.2/i386/All/tcsh

Также можно установить в PKG_PATH список путей и URL, разделенный ; и затем пропускать эту часть в pkg_add:

# PKG_PATH="/cdrom;/usr/pkgsrc/packages/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/1.4.2/i386/All"
export PKG_PATH
 pkg_add tcsh

Предыдущая команда установит первый tcsh бинарный пакет, который она найдет.

Как пример, давайте установим программу texinfo в скомпилированном виде.

  1. Скопируем gtexinfo-3.12.tgz во временную директорию.
  2. Выполним следующие команды
    # pkg_add -v gtexinfo-3.12.tgz
  3. Проверим, что пакет был установлен командой
    # pkg_info
  4. Удалим файл gtexinfo-3.12.tgz из временной директории.

Скомпилированные пакеты очень практичны в использовании т.к. требуют минимальных усилий и времени для установки, но пакеты с исходным кодом предоставляют больше контроля, т.к. их опции компиляции могут изменяться. Установка происходит дольше из-за компиляции и это может быть критично на некоторых (старых) платформах.

Перед установкой скомпилированного пакета при помощи pkg_add, рекомендуется проверить его командой pkg_info. Например:

# pkg_info -f jpeg-6b.tgz

Это проверка первой CWD команды, для проверки месторасположения установки пакета (базовый каталог.) Наиболее употребляемые каталоги это /usr/pkg и /usr/X11R6. Если базовый каталог не тот, который Вам нужен, Вы можете изменить его опцией -p команды pkg_add. Например, jpeg-6b.tgz пакет устанавливается в /usr/pkg по умолчанию, но Вы можете установить его в /usr/X11R6 если вы распакуете его следующей командой:

# pkg_add -p /usr/X11R6 -v jpeg-6b.tgz

30.5. Команды управления пакетами

Самыми важными командами для управления пакетами являются:

pkg_add
добавляет скомпилированный пакет.

pkg_delete
удаляет установленный пакет. Название пакета может быть как с, так и без указания версии; если версия не указана - pkg_delete должна определить, какая установлена версия. Можно использовать маски (но они должны быть экранированы от оболочки); например:

# pkg_delete "*emacs*"

Очень мощная опция -r : она удаляет все пакеты, которые требуются для пакета, указанного в запросе, а потом удаляет сам пакет. Например:

# pkg_delete -r jpeg

удалит jpeg и все пакеты, используемые им; это позволит обновить пакет jpeg.

pkg_info
показывает информацию о пакете, установлен или не установлен.

pkg_create
создает новый пакет для коллекции пакетов. Эта программа используется для создания новых скомпилированных пакетов. Она автоматически вызывается системой сборки, и ее не нужно запускать вручную.

pkg_admin

создает переменные административные функции в системе пакетов.

30.6. Быстрый старт, руководство по созданию пакетов.

Jason R Fink

разработчик этого раздела (Быстрый старт, руководство по созданию пакетов)
В этом разделе описывается, как быстро начать создавать относительно небольшие пакеты для системы пакетов NetBSD. Чтобы более детально разобраться в сложностях системы пакетов NetBSD ознакомьтесь с pkgsrc документацией.

30.6.1. Программное обеспечение

Это три основных программы для быстрого создания маленьких пакетов для NetBSD:

url2pkg
шаблонные пакеты
pkglint

30.6.1.1. url2pkg

Приложение url2pkg можно установить из дерева pkgsrc. Этот инструмент помогает создателю пакета быстро заполнить и протестировать основные аспекты создания пакета.

30.6.1.2. Шаблонные пакеты

Шаблонные пакеты, например, bison, позволяют добавлять pkgsrc документацию.

30.6.1.3. pkglint

Приложение pkglint можно установить из дерева pkgsrc. Этот инструмент досконально проверяет правильность пакета.

30.6.2. Начало

Начать процесс довольно просто. Главное для создателя (т.е. Вас) иметь протестированную сборку пакета из исходных текстов, собранную под системой NetBSD. В противном случае, настройка для сборки нового пакета может быть проблематичной. Она должна быть прокомментирована как можно подробнее, патч может быть написан для исходных текстов и включен в пакет для исправления любых проблем сборки. Этот момент выходит за рамки данного руководства (см. pkgsrc документацию для получения более подробной информации).

30.6.2.1. Использование url2pkg

Следующий шаг - использование url2pkg.

Следуйте указаниям по использованию url2pkg для создания инициализационных файлов, необходимых для нового пакета:

  1. Создайте каталог под новый пакет в каталоге, определенном для pkgsrc. Ничего в него не помещайте.
  2. cd в новый каталог.
  3. введите
    $ url2pkg
  4. Вам сообщат, что нужно ввести адрес этой точки, введите его и нажмите <Ввод>.
  5. Начните сессию vi

    Замечание

    здесь используется стандартное расположение vi в NetBSD, по умолчанию это nvi. Если Вы обычно используете другой клон vi, такой как vim, Вы можете получить ошибку .exrc.

    Сессия vi открывается для файла Makefile нового пакета. Вы должны ввести название пакета, адрес электронной почты создателя пакета и категорию, в которой должен располагаться пакет.

  6. Сохраните файл и выйдите.
  7. url2pkg автоматически расположит пакет в рабочем подкаталоге.
  8. Далее, url2pkg сгенерирует md5 файлы.

В конце сессии url2pkg, пожалуйста заметьте, что url2pkg не заполняет ни один другой файл кроме Makefile. Он, также, сгенерирует пустой PLIST файл.

30.6.3. Последние приготовления

Теперь, когда Makefile сгенерирован, нужно создать оставшиеся файлы. Используя Ваш шаблонный пакет, скопируйте следующие файлы из шаблонного пакета в подкаталог pkg:

DESCR
Многострочное описание части программного обеспечения. Он также должен включать список всех разработчиков.

COMMENTS
Однострочное описание части программного обеспечения. Здесь не нужно указывать название пакета - оно автоматически добавится инструментарием pkg_*, если его не будет.

PLIST
Этот файл содержит описание размещения файлов, которые будут установлены в систему. Для маленьких пакетов (т.е. один двоичный файл и одна-две страницы помощи), входящих в дистрибутив Makefile, установочный сценарий и т.п. должен наглядно иллюстрировать: куда какие файлы устанавливать.

30.6.4. Проверка с помощью pkglint

Когда все файлы подготовлены, подходит время проверить пакет с помощью pkglint. Зачастую Makefile нуждается в перемещении секций, изменениях или добавлениях, однако, для первого раза полезно просто запустить pkglint - так Вы наверняка узнаете, что Вам необходимо изменить. Далее небольшой пример вывода сессии pkglint, взятый из документации pkgsrc:

$ pkglint
OK: checking pkg/COMMENT.
OK: checking pkg/DESCR.
OK: checking Makefile.
OK: checking files/md5.
OK: checking patches/patch-aa.
looks fine.

Если произошла ошибка, то она, обычно, проста и прямолинейна, например, эту я получил во время сборки пакета:

extract suffix not required

Мне не нужно определять внешний суффикс в Makefile.

30.6.5. Запуск и проверка сборки/установки

Когда достигнут этот пункт, я, обычно, запускаю общую проверку поиска, сборки и установки. Чтобы выполнить это должным образом, мне нужно удалить рабочий подкаталог и файл(ы) дистрибутива из /usr/pkgsrc/distfiles. Только так я могу быть уверен, что я делаю полную и окончательную проверку.

30.6.6. Отправка пакета с использованием send-pr

Сначала сделаем архив дерева пакета, как оно есть (включая pkg/work поддиректорию), например так:

$ tar -czf packagename.tgz package_dir

Далее загрузим архив туда, откуда автогрейдеры пакетов NetBSD смогут его забрать. Если Вы не можете загрузить архив, свяжитесь с командой поддержки NetBSD.

Предпочтительный способ уведомления автогрейдеров пакетов NetBSD - использование утилиты send-pr из категории «pkg». Синтаксис включает название пакета и номер версии, короткое описание пакета и URL .tar файла.

Вы можете использовать любую утилиту: send-pr вашей системы NetBSD или онлайн форму http://www.NetBSD.org/cgi-bin/sendpr.cgi?gndb=netbsd если по каким-либо причинам Вы не можете использовать send-pr локально.

30.6.7. Финальные примечания

Повторюсь - это лишь маленькое руководство для небольших пакетов, которые содержат несколько файлов для установки в систему NetBSD. Предполагается, что пакет не требует никаких патчей и может собираться без зависимостей.

Более подробное описание Вы можете найти в полной документации pkgsrc .

Приложение C. С чего начать при работе с XML/DocBook

Русский перевод Михаил Сгибнев

Содержание

C.1. Что такое XML/DocBook
C.2. Установка необходимых инструментов
C.3. Использование утилит
C.4. Языковая специфика
C.4.1. Возможность переноса слов в Итальянском варианте
C.5. Ссылки

В этом разделе описывается установка инструментария, необходимого для форматирования руководства NetBSD. Помимо этого, здесь содержатся инструкции по написанию руководства. Эта глава предполагает знание системы pkgsrc, дополнительную информацию по которой содержит Глава 30, Коллекция пакетов.

C.1. Что такое XML/DocBook

XML (eXtensible Markup Language) является языком для определения других языков, основанных на разметке, то есть с помощью XML вы можете определить грамматику (допустимые конструкции) языка разметки. Например, с помощью XML можно определить HTML. Если вы – программист, то думайте о XML подобно BNF (Backus-Naur Form): это инструмент, предназначенный для определения грамматики.

DocBook представляет собой шаблон разметки, определенный с помощью XML; DocBook содержит список допустимых тегов, которые могут использоваться в документах формата DocBook, и описание их возможных комбинаций. Например, если встречается тег:

<para> ... </para>

то определяется параграф, при этом <para> может быть внутри <sect1>, но <sect1> не может находится внутри <para>.

Поэтому, когда вы пишете документ, вы пишете документ в DocBook а не в XML: в этом отношении DocBook похож на HTML (хотя имеет более обширные возможности и отличается некоторыми понятиями).

Спецификация DocBook (то есть список тегов и правил) называется DTD (Document Type Definition).

Если говорить кратко, то в DTD определяется вид вашего документа, но ни слова не говорится о формате конечного документа. В последующем требуется конвертация исходных текстов DocBook в, например, HTML или PDF. Этот этап выполняется инструментами типа Jade, с помощью которых в зависимости от DSSSL указаний происходят преобразования исходного документа. DSSSL (Document Style Semantics and Specification Language) представляет собой спецификацию языка, используемого для определения таблиц стилей, необходимых для преобразования DocBook в другие форматы. Инфраструктура сборки руководства также поддерживает таблицу стилей языка XSL (Extensible Stylesheet Language). Утилита xsltproc используется для XML преобразований, используя таблицы стилей XSL.

C.2. Установка необходимых инструментов

Все инструменты, необходимые для сборки руководства в различных форматах, могут быть легко установлены, как мета-пакеты netbsd-www, netbsd-doc и netbsd-doc-print. Совместно установленные пакеты netbsd-doc и netbsd-www обеспечивают сборку HTML-версии руководства. Для того, чтобы получить руководство в формате, пригодном для печати (Postscript и PDF), установите мета-пакет netbsd-doc-print.

$ cd /usr/pkgsrc/meta-pkgs/netbsd-www
$ make install
$ cd /usr/pkgsrc/meta-pkgs/netbsd-doc
$ make install
$ cd /usr/pkgsrc/meta-pkgs/netbsd-doc-print
$ make install

C.3. Использование утилит

Сейчас мы рассмотрим методику компиляции руководства из XML в другие форматы: html, html-split, ascii, ps и pdf. Для указания результирующего формата запустите команду make с указанием формата в качестве аргумента.

Давайте рассмотрим несколько примеров.

Перед тем как мы увидим вывод в любом из вышеприведенных форматах, необходимо обеспечить целостность структуры XML. Это делается с помощью команды make lint:

$ cd htdocs/guide/en
$ make lint

Исправьте все обнаруженные ошибки. При работе с содержанием руководства вы можете сделать HTML-версию для того, чтобы выполнить корректуру.

$ cd htdocs/guide/en
$ make html-split

После этого, пожалуйста, обновите PostScript и PDF версии руководства. Для этого выполните команду:

$ cd htdocs/guide/en
$ make pdf

Прежде, чем вы выгрузите в репозиторий сгенерированные файлы, удостоверьтесь, что вы уже выгрузили файлы в формате XML. В общем случае, это будет выглядеть приблизительно так:

$ cd htdocs/guide/en
$ cvs commit *.xml
$
$ make lint
$ make
$ make install-doc
$
$ cd ..
$ cvs commit en download

Когда make выполняется без аргументов, будут сгенерированы все форматы. Этот вариант по умолчанию используется для сборки руководства на сайте NetBSD.org

C.4. Языковая специфика

C.4.1. Возможность переноса слов в Итальянском варианте

Руководство для NetBSD в настоящий момент доступно на трех языках: английский, французский и итальянский. Но автоматический перенос слов в TeX реализован только для английского и французского языков. Для включения переноса слов итальянского языка необходимо выполнить несколько простых шагов:
Отредактировать файл /usr/pkg/share/texmf/tex/generic/config/language.dat и удалить признак комментария (%) из строки с итальянским языком. То есть:

%italian ithyph.tex

будет выглядеть как:

italian ithyph.tex

Замечание

По мере появления переводов руководства на другие языки, вам, возможно, понадобится включить поддержку переносов и для них.
Теперь необходимо пересоздать форматы latex и pdflatex:

# cd /usr/pkg/share/texmf/web2c
# fmtutil --byfmt latex
# fmtutil --byfmt pdflatex

Если вы проверите, для примера, latex.log, вы там увидите строку типа:

Babel <v3.6Z> and hyphenation patterns for american, french, german,
ngerman, italian, nohyphenation, loaded.

Обратите внимание, что в зависимости от ваших знаний системы TeX (мои очень низкие), эта задача может быть решена массой других способов. Например, вы можете использовать интерактивную программу «texconfig» или же обновить форматы вручную, используя программу tex.

Если вам известен лучший способ корректной настройки переносов (или других вещей, описанных в этом приложении), пожалуйста, сообщите мне.

C.5. Ссылки

На официальной странице проекта DocBook вы можете найти исчерпывающую документацию по DocBook. Книга Нормана Уолша (Norman Walsh) и Леонарда Мюльнера (Leonard Muellner) DocBook: The Definitive Guide доступна как для загрузки, так и для интерактивного чтения.

Хорошим начальным источником информации о DSSSL выступает сайт http://nwalsh.com.

Описание XSL находится по адресу http://www.w3.org/Style/XSL/.

Исходные тексты и документация по Jade/OpenJade может быть найдена на домашней странице проекта OpenJade.

Если у вас есть желание подготавливать документацию в форматах PostScript или PDF из текстов DocBook, посетите страницу JadeTex.

На домашней странице Маркуса Хоенички (Markus Hoenicka) содержится информация по работе с SGML/DocBook на платформе Windows NT.

Приложение B. Содействие в работе над руководством

Русский перевод: Михаил Сгибнев

Содержание

B.1. Перевод руководства
B.1.1. Что необходимо для перевода
B.1.2. Работа с файлами в формате XML/DocBook
B.2. Предоставление нового материала
B.3. Шаблон документа XML/DocBook

Эта информация может оказаться полезной как для профессионалов, так и для начинающих пользователей NetBSD. Так как популярность операционной системы растет, мы заинтересованы в появлении нового материала и улучшении уже существующего.
Неважно, каков ваш уровень подготовки – вы все равно можете сделать свой вклад в развитие данного руководства. В этом разделе будет рассказано, что и как необходимо для этого знать.
Если вы – начинающий пользователь и нашли это руководство для себя полезным, то пришлите, пожалуйста, ваши комментарии и предложения по адресу www@NetBSD.org. Например, если у вас что-либо не получилось сделать, описанное в этом руководстве, что-то недостаточно хорошо объяснено или у вас есть материал для новой главы, мы с готовностью рассмотрим все ваши предложения.
Если вы являетесь опытным пользователем, то пожалуйста, рассмотрите возможность написания новой главы или дополнения существующей.
Если у вас есть немного свободного времени, то рассмотрите,пожалуйста, возможность перевода руководства на другой язык.
Независимо от того, что именно вы хотите делать, свяжитесь с нами, дабы не получилось дублирования работы.

B.1. Перевод руководства

Если вы хотите перевести данное руководство, то, как уже говорилось, свяжитесь с нами по адресу www@NetBSD.org или обратитесь к спискам рассылки netbsd-docs@NetBSD.org. Возможно несколько сценариев:

  • кто-то уже переводит документацию на ваш язык и вы могли бы ему помочь;
  • никто не переводит документацию, но имеется несколько переведенных глав и вы можете продолжить переводить остальные;
  • вы начинаете новый перевод. Конечно, вы не должны переводить все руководство, оно очень большое, но если вы переведете одну или две главы, то это уже неплохая отправная точка для следующего переводчика.

Даже если перевод уже имеется, всегда есть необходимость внесения исправлений и обновлений. В таком случае, вы можете стать содержателем этого перевода.

B.1.1. Что необходимо для перевода

Если кратко, то вам необходимо:

  • исходные тексты руководства. Они входят в состав модуля «htdocs», который можно получить с (анонимного) сервера CVS также, как и «src» или «pkgsrc». Описание подробностей содержит Глава 26, Obtaining sources by CVS.
  • текстовый редактор, такой как vi или emacs.

Замечание

Не начинайте работу в формате HTML или каком-либо другом: используемым форматом является XML/DocBook, из него и происходит конвертация в другие форматы.

B.1.2. Работа с файлами в формате XML/DocBook

Работа над переводом руководства не требует знания XML/DocBook, так как в ходе вашей работы вы не изменяете существующее форматирование. Например, для перевода предыдущего абзаца необходимо выполнить:

  1. загрузить английский вариант главы ap-contrib.xml в текстовый редактор.
  2. найти необходимый абзац:
    <note>
      <para>
        don't start working with HTML or other formats:
        it will be very difficult to convert you work
        to SGML/DocBook, the format used by the NetBSD
        guide.
      </para>
    </note>
  3. добавить ваш перевод между тегами, сразу после английской версии. Теперь это выглядит примерно так:
    <note>
      <para>
        don't start working with HTML or other formats:
        it will be very difficult to convert you work
        to SGML/DocBook, the format used by the NetBSD
        guide.
        здесь ваш перевод
        здесь ваш перевод
        здесь ваш перевод
      </para>
    </note>
  4. удалить английский текст между тегами, оставив только перевод.
    <note>
      <para>
        здесь ваш перевод
        здесь ваш перевод
        здесь ваш перевод
      </para>
    </note>

Пожалуйста, при переводе используйте такое же форматирование, как и оригинального текста. Для примера смотрите Раздел B.3, «Шаблон документа XML/DocBook».

Вы, вероятно, столкнетесь с одной проблемой, связанной с начертанием символов национального алфавита (например «?»). Такие символы допускается использовать в документе, но лучше заменять их на XML сущности. Например, «?» запишется как «&egrave;». Конечно, в этом случае текст станет более тяжело читать и усложнится его редактирование, но использование редакторов с развитыми средствами работы с макросами, таких как vi или emacs, облегчит вам работу. Вы можете назначить соответствующим символам макросы, отредактировав файл конфигурации, например .exrc:

map! ? &egrave;

Приложение C, С чего начать при работе с XML/DocBook объясняет, как установить необходимое программное обеспечение и сгенерировать файлы в HTML или каком-либо другом формате. Это особенно полезно, если вы хотите проверить правильность своей работы (к примеру, убедиться, что вы случайно не удалили какой-нибудь тег) или посмотреть, на что будет похож конечный результат. Однако в таких действиях нет необходимости при переводе документации. Если вы не хотите устанавливать себе соответствующее программное обеспечение, то вышлите исходный текст на www@NetBSD.org>, он будет проверен и конвертирован в соответствующий выходной формат.

B.2. Предоставление нового материала

Если вы хотите послать новый материал, который бы вы хотели увидеть в руководстве, то для этого есть несколько путей. Небольшое исправление проще всего отослать на www@NetBSD.org>. Если у Вас большой объем, например глава, то вы можете выбрать один из следующих форматов:

  • XML/DocBook; является предпочтительным форматом. Пожалуйста, получите исходные тексты руководства и используйте их в качестве образца.
  • простой текст; если форматирование документа достаточно простое, то преобразование в формат SGML не обязательно.
  • если у вас действительно отсутствует возможность использовать один из предыдущих форматов, документы могут приниматься и в каком-нибудь другом.

B.3. Шаблон документа XML/DocBook

Для этого руководства я использую стиль форматирования, похожий на программу. Приведем следующий пример:

<chapter id="chap-xxxxx">
  <title>Это заголовок главы</title>

  <para>
    Это текст параграфа.  Это текст параграфа.
    Это текст параграфа.  Это текст параграфа.
    Это текст параграфа.
  </para>

  <!-- ==================== -->

  <sect1>
    <title>Это заголовок раздела sect1</title>

    <para>
      Это текст параграфа.  Это текст параграфа.
      Это текст параграфа.  Это текст параграфа.
      Это текст параграфа.
    </para>

    <!-- ........................................................... -->

    <sect2>
      <title>Это заголовок раздела sect2</title>

      <para>
	Раздел sect2 размещен внутри раздела sect1.
      </para>
    </sect2>

  </sect1>

  <!-- =================-->

  <sect1>
    <title>Это еще один раздел sect1</title>

    <para>
   Маркированный список:
      <itemizedlist>
	<listitem>
	  <para>
	   текст
	  </para>
	</listitem>
	<listitem>
	  <para>
	    текст
	  </para>
	</listitem>
      </itemizedlist>
    </para>

  </sect1>
</chapter>

По умолчанию:

  • два пробела между уровнями вложенности
  • длина строк не больше 72 символов.
  • используйте разделительные линии между sect1/sect2.

Цель этого руководства

Русский перевод: Михаил Сгибнев

В этом руководстве описывается установка и конфигурирование операционной системы NetBSD. Оно адресовано главным образом тем людям, которые мигрируют с других ОС, в надежде найти доступный инструмент для решения своих задач.
Это руководство не является учебником по Unix: читателю необходимо знать общие концепции и инструменты для понимания написанного. Например, вы должны знать, что такое файл или каталог, как использовать текстовый редактор. Есть много книг, рассказывающих об этом, и если уровень вашей подготовки недостаточен, рекомендую вам почитать их. Я советую вам выбрать книгу, рассказывающую о более общих вещах, чем «Выучи Unix-XYZ, version 1.2.3.4 за 10 дней», хотя это дело вкуса. Если вы устанавливаете одну из систем семейства BSD, рано или поздно вы столкнетесь с редактором vi без которого чтение документации будет невозможно. После установки системы у вас будет возможность установить более предпочитаемый вами редактор, так же, как и другие программы.
Предстоит еще много работы: некоторые главы не закончены, а некоторые еще даже не начаты, некоторые темы нуждаются в проверке. Если вы можете помочь в написании глав или исправить уже существующие, то ваша помощь будет принята с благодарностью.

Federico Lupi flupi@mclink.it>

Важно

В настоящее время это руководство поддерживается WWW группой проекта NetBSD (www@NetBSD.org). Исправления и предложения посылайте по этому адресу. Смотрите также Приложение B, Содействие в работе над руководством.

Руководство по операционной системе NetBSD

Разработчики NetBSD

Подготовка русского перевода: Группа ruNetBSD & Михаил Сгибнев

Copyright © 1999, 2000, 2001, 2002 Федерико Лупи (Federico Lupi)

Copyright © 2003, 2004, 2005 Организация NetBSD (The NetBSD Foundation)

Published:

$NetBSD$

Содержание

Цель этого руководства
I. Общие положения о NetBSD

1. Что такое NetBSD?

1.1. История NetBSD
1.2. Возможности NetBSD
1.3. Поддерживаемые платформы
1.4. Для кого предназначена NetBSD
1.5. Приложения для NetBSD
1.6. Философия NetBSD
1.7. Где получить NetBSD

II. Установка и начальная настройка

2. Установка

2.1. Документация
2.2. Схема установки NetBSD
2.3. Установка

2.3.1. Клавиатура
2.3.2. Геометрия дисков
2.3.3. Разделы
2.3.4. Требования к размеру жесткого диска
2.3.5. Повторим

3. Пример установки

3.1. Введение
3.2. Подготовка к установке
3.3. Создание установочной дискеты
3.4. Последние приготовления
3.5. Начало установки
3.6. Разделы
3.7. Метка диска
3.8. Создание метки диска
3.9. Процесс подготовки диска
3.10. Выбор источника данных
3.11. Установка с CD-ROM и DVD
3.12. Установка через FTP
3.13. Распаковка файлов
3.14. Конфигурация системы

4. Первая загрузка

4.1. Если что-то пошло не так
4.2. Вход в систему
4.3. Изменение раскладки клавиатуры
4.4. Справочное руководство man
4.5. Смена пароля пользователя root
4.6. Смена командной оболочки
4.7. Системное время
4.8. Начальная конфигурация /etc/rc.conf
4.9. Включение FFS soft-dependencies
4.10. Перезагрузка системы

5. Вторая загрузка

5.1. dmesg
5.2. Монтируем CD-ROM
5.3. Монтируем флоппи-диск
5.4. Получаем доступ к разделу DOS/Windows
5.5. Добавляем пользователей
5.6. «Теневые» пароли
5.7. Остановка и перезагрузка системы

6. Система rc.d

6.1. Конфигурация rc.d
6.2. Сценарии rc.d
6.3. Роль rcorder и rc сценариев
6.4. Дополнительно к прочтению

III. Конфигурирование, администрирование и тюнинг системы

7. Редактирование

7.1. Введение в vi

7.1.1. Интерфейс vi
7.1.2. Переключение в режим редактирования
7.1.3. Переключение режимов и сохранение буфера в файл
7.1.4. Копирование и вставка
7.1.5. Навигация в тексте
7.1.6. Поиск по файлу, альтернативное управление
7.1.7. Пример сессии

7.2. Конфигурирование vi

7.2.1. Расширения для .exrc
7.2.2. Документация

7.3. Использование тэгов в vi

8. X

8.1. Что такое X?
8.2. Конфигурирование
8.3. Мышь
8.4. Клавиатура
8.5. The monitor
8.6. Видеокарта

8.6.1. XFree 3.x
8.6.2. XFree86 4.x

8.7. Запуск X
8.8. Персональная настройка X
8.9. Другие менеджеры окон
8.10. Графический вход в систему с xdm

9. Эмуляция Linux

9.1. Установка поддержки эмуляции

9.1.1. Конфигурирование ядра
9.1.2. Установка библиотек Linux
9.1.3. Установка Acrobat Reader

9.2. Структура каталогов
9.3. Эмуляция /proc

10. Звук

10.1. Введение в аппаратную часть
10.2. Настройка BIOS
10.3. Конфигурирование устройства
10.4. Конфигурирование аудиокарты в ядре
10.5. Дополнительные команды

10.5.1. audioctl(1)
10.5.2. mixerctl(1)
10.5.3. audioplay(1)
10.5.4. audiorecord(1)

11. Печать

11.1. Активация демона печати
11.2. Конфигурирование /etc/printcap
11.3. Конфигурирование Ghostscript
11.4. Команды управления принтером
11.5. Удаленная печать

12. Работа со сменными носителями

12.1. Инициализация и использование флоппи-дисков
12.2. Использование диска ZIP
12.3. Чтение данных с CD в NetBSD
12.4. Чтение мульти-сессионных CD в NetBSD
12.5. Доступ непривилегированных пользователей к CD
12.6. Монтирование образов ISO
12.7. Использование video CD с NetBSD
12.8. Использование audio CD в NetBSD
12.9. Создание файлов MP3 (MPEG layer 3) из audio CD
12.10. Использование CD-R для записи данных
12.11. Создание диска с аудио-данными
12.12. Создание audio CD из mp3s
12.13. Копирование audio CD
12.14. Копирование CD, имея два привода
12.15. Использование CD-RW rewritables
12.16. Поддержка DVD
12.17. Создание ISO образа из CD
12.18. Получение информации о диске с CD и ISO образа

13. Драйвер криптографического устройства

13.1. Введение

13.1.1. Почему используется шифрование диска?
13.1.2. Драйвер логического диска
13.1.3. Доступность

13.2. Компоненты системы Crypto-Graphic Disk

13.2.1. Драйвер псевдо-устройства ядра
13.2.2. Алгоритмы шифрования
13.2.3. Методы верификации

13.3. Пример: зашифровываем диск

13.3.1. Подготавливаем диск
13.3.2. Очистка диска
13.3.3. Создание cgd
13.3.4. Модифицирование файлов конфигурации
13.3.5. Восстановление данных

13.4. Предложения и предупреждения

13.4.1. Использование random-key cgd для шифрования файла подкачки
13.4.2. Предупреждения

14. Конфигурация Concatenated Disk Device (CCD)

14.1. Установка физичесих носителей
14.2. Конфигурирование ядра
14.3. Присоединяем метку каждого диска к CCD
14.4. Конфигурирование CCD
14.5. Инициализация устройства CCD
14.6. Создание файловой системы 4.2BSD/UFS на новом устройстве CCD device
14.7. Монтирование файловой системы

15. NetBSD RAIDframe

15.1. Введение в RAIDframe

15.1.1. Общие сведения о RAIDframe
15.1.2. Предупреждение о целостности данных, резервных копиях и высокой доступности
15.1.3. Получение помощи

15.2. Установка поддержки RAIDframe

15.2.1. Поддержка в ядре
15.2.2. Избыточность питания и кэширование дисков:

15.3. Пример: реализация RAID-1

15.3.1. Схема псевдо-процессов
15.3.2. Обзор аппаратного обеспечения
15.3.3. Начальная установка на Disk0/wd0
15.3.4. Подготовка Disk1/wd1
15.3.5. Инициализация устройства RAID
15.3.6. Установка файловой системы
15.3.7. Перенос системы на RAID
15.3.8. Первая загрузка с RAID
15.3.9. Добавление Disk0/wd0 в RAID
15.3.10. Тестирование загрузочной области

16. Pluggable Authentication Modules (PAM)

16.1. Краткое содержание
16.2. Introduction
16.3. Термины и соглашения

16.3.1. Определения
16.3.2. Примеры

16.4. Основное в PAM

16.4.1. Средства и примитивы
16.4.2. Модули
16.4.3. Цепочки и правила
16.4.4. Транзакции

16.5. Конфигурирование PAM

16.5.1. Файл политик PAM
16.5.2. Разбор строки конфигурации
16.5.3. Политики

16.6. Модули PAM

16.6.1. Общие модули
16.6.2. Специфичные для FreeBSD модули PAM
16.6.3. Модули PAM, специфичные для NetBSD

16.7. Программирование приложений PAM
16.8. Программирование модулей PAM
16.9. Пример приложения PAM
16.10. Пример модуля PAM
16.11. Простая функция сеанса связи PAM
16.12. Для дополнительного прочтения

17. Точная настройка NetBSD

17.1. Введение

17.1.1. Краткий обзор

17.2. Общие вопросы настройки

17.2.1. Конфигурация системы
17.2.2. Системные сервисы
17.2.3. Ядро NetBSD

17.3. Visual Monitoring Tools

17.3.1. Программа мониторинга процессов top
17.3.2. Утилита sysstat

17.4. Утилиты мониторинга

17.4.1. fstat
17.4.2. iostat
17.4.3. ps
17.4.4. vmstat

17.5. Сетевые утилиты

17.5.1. ping
17.5.2. traceroute
17.5.3. netstat
17.5.4. tcpdump

17.6. Аккаунтинг

17.6.1. Accounting
17.6.2. Чтение информации аккаунтинга
17.6.3. Как исполдьзовать аккаунтинг

17.7. Профили ядра

17.7.1. С чего начать
17.7.2. Расшифровка вывода kgmon
17.7.3. Использование
17.7.4. Резюме:

17.8. Оптимизация системы

17.8.1. Использование sysctl
17.8.2. memfs & softdeps

17.9. Оптимизация ядра

17.9.1. Подготовка к компиляции ядра
17.9.2. Конфигурирование ядра
17.9.3. Building the New Kernel

18. Подсистема Veriexec NetBSD

18.1. Как это работает
18.2. Файл сигнатур
18.3. Генерирование контрольной суммы
18.4. Уровни доступа
18.5. Конфигурация ядра

19. Различные полезные мелочи

19.1. Создание установочной/загрузочной дискеты i386
19.2. Создание CD-ROM

19.2.1. Создание образа ISO
19.2.2. Запись образа CD
19.2.3. Копирование CD
19.2.4. Создание загрузочного CD

19.3. Синхронизация системных часов
19.4. Установка менеджера загрузки
19.5. Удаление раздела
19.6. Спикер
19.7. Забыли пароль root?
19.8. Добавление нового жесткого диска
19.9. Файл паролей занят?
19.10. Как восстановить файлы устройств в /dev

IV. Работа в сети

20. Введение в сети TCP/IP

20.1. Читателям
20.2. Поддерживаемые сетевые протоколы
20.3. Поддерживаемые носители

20.3.1. Последовательная линия
20.3.2. Ethernet

20.4. Формат адреса TCP/IP
20.5. Подсети и маршрутизация
20.6. Концепция сервиса имен

20.6.1. /etc/hosts
20.6.2. Сервис доменных имен (DNS)
20.6.3. Сервис сетевой информации (NIS/YP)
20.6.4. Другое

20.7. Интернет протокол следующего поколения – IPv6

20.7.1. Будещее интернет
20.7.2. Чем хорош IPv6?
20.7.3. Отличия от IPv4

21. Практическая настройка TCP/IP в NetBSD

21.1. Проверка конфигурации ядра
21.2. Обзор конфигурационных файлов
21.3. Подключение к Internet с помощью модема

21.3.1. Получение информации о соединении
21.3.2. resolv.conf и nsswitch.conf
21.3.3. Создание каталогов для pppd
21.3.4. Сценарий соединения и файл конфигурации chat
21.3.5. Аутентификация
21.3.6. Опции pppd
21.3.7. Проверка модема
21.3.8. Установка соединения
21.3.9. Использование сценария для подключения и отключения
21.3.10. Выполнение команд после дозвона

21.4. Создание маленькой домашней сети
21.5. Настройка Internet шлюза с IPNAT

21.5.1. Настройка шлюза/межсетевого экрана
21.5.2. Конфигурирование клиентской машины
21.5.3. Некоторые полезные команды

21.6. Общая настройка LAN
21.7. Соединение двух компьютеров через последовательный кабель

21.7.1. Соединение NetBSD с BSD или Linux
21.7.2. Соединение NetBSD и Windows NT
21.7.3. Соединение NetBSD и Windows 95

22. Супер Сервер Интернет inetd

22.1. Обзор
22.2. Что такое inetd?
22.3. Конфигурация inetd /etc/inetd.conf
22.4. Сервисы /etc/services
22.5. Протоколы /etc/protocols
22.6. Вызов удаленных процедур (RPC) /etc/rpc
22.7. Разрешение и запрещение доступа с определенных хостов /etc/hosts.{allow,deny}
22.8. Добавление сервиса
22.9. Когда использовать или не использовать inetd
22.10. Другие ресурсы

23. Система доменных имен

23.1. DNS: сущность и принципы

23.1.1. Служба имен
23.1.2. Пространство имен DNS
23.1.3. Записи ресурсов
23.1.4. Делегирование
23.1.5. Делегирование множеству серверов
23.1.6. Вторичность, кэширование и SOA запись
23.1.7. Разрешение имен
23.1.8. Обратное разрешение

23.2. Файлы DNS

23.2.1. /etc/namedb/named.conf
23.2.2. /etc/namedb/localhost
23.2.3. /etc/namedb/zone.127.0.0
23.2.4. /etc/namedb/diverge.org
23.2.5. /etc/namedb/1.168.192
23.2.6. /etc/namedb/root.cache

23.3. Использование DNS
23.4. Настройка только кэширующего сервера

23.4.1. Тестирование сервера

24. Почта и новости

24.1. sendmail

24.1.1. Конфигурация с genericstable
24.1.2. Проверка конфигурации
24.1.3. Использование альтернативных MTA

24.2. fetchmail
24.3. Читайте и пишите письма в mutt
24.4. Получаем почты
24.5. Отправляем почту
24.6. Дополнительные инструменты управления почтой.
24.7. Чтение новостей с помощью tin

25. Различные аспекты работы в сети

25.1. Мост

25.1.1. Пример моста

25.2. Сетевая файловая система (Network File System – NFS)

25.2.1. Пример настройки NFS

25.3. Настройка NFS автомонтирования для /net с amd(8)

25.3.1. Введение
25.3.2. Фактическая настройка

25.4. IPv6 соединения и переход сквозь 6to4

25.4.1. Поднятие 6to4 IPv6 и запуск
25.4.2. Получение адресного пространства IPv6 для 6to4
25.4.3. Как соединиться
25.4.4. Соображения безопасности
25.4.5. Данные, необходимые для установки 6to4
25.4.6. Подготовка ядра
25.4.7. Установка 6to4
25.4.8. Быстрый старт использования pkgsrc/net/hf6to4
25.4.9. Известные шлюзы 6to4
25.4.10. Туннелирование 6to4 через брандмауэр IPFilter
25.4.11. Выводы и рекомендуемая литература

V. Сборка системы

26. Obtaining sources by CVS

26.1. Получение исходных текстов системы и пользовательского окружения
26.2. Получение pkgsrc

27. Использование утилиты build.sh

27.1. Сборка инструментов
27.2. Кросс-платформенная сборка ядра
27.3. Сборка & релиза
27.4. Переменные окружения

27.4.1. Смена директории по умолчанию
27.4.2. Статическая сборка

28. Компиляция ядра

28.1. Установка исходных текстов ядра
28.2. Требования и процедура
28.3. Создание конфигурационного файла ядра
28.4. Ручное конфигурирование ядра
28.5. Генерация зависимостей и ручная компиляция
28.6. Использование build.sh
28.7. Если что-то не так

29. Драйверы консоли

29.1. wscons

29.1.1. Виртуальные консоли
29.1.2. Режим 50 строк в wscons
29.1.3. Раскладка клавиатуры
29.1.4. Cut&paste в консоли с помощью wsmoused
29.1.5. Скроллинг в консоли

29.2. pccons

30. Коллекция пакетов

30.1. Установка коллекции пакетов
30.2. Обновление коллекции пакетов
30.3. Пример: установка программы из исходных текстов

30.3.1. Скачивание исходных текстов
30.3.2. Компиляция и установка

30.4. Пример: установка бинарного (скомпилированного) пакета
30.5. Команды управления пакетами
30.6. Быстрый старт, руководство по созданию пакетов.

30.6.1. Программное обеспечение
30.6.2. Начало
30.6.3. Последние приготовления
30.6.4. Проверка с помощью pkglint
30.6.5. Запуск и проверка сборки/установки
30.6.6. Отправка пакета с использованием send-pr
30.6.7. Финальные примечания

A. Дополнительная информация

A.1. Где найти этот документ
A.2. История руководства

B. Содействие в работе над руководством

B.1. Перевод руководства

B.1.1. Что необходимо для перевода
B.1.2. Работа с файлами в формате XML/DocBook

B.2. Предоставление нового материала
B.3. Шаблон документа XML/DocBook

C. С чего начать при работе с XML/DocBook

C.1. Что такое XML/DocBook
C.2. Установка необходимых инструментов
C.3. Использование утилит
C.4. Языковая специфика

C.4.1. Возможность переноса слов в Итальянском варианте

C.5. Ссылки

D. Благодарности

D.1. Персональные благодарности
D.2. Текущие благодарности
D.3. Лицензионные соглашения

D.3.1. Оригинальная лицензия Федерико Лупи на данное руководство
D.3.2. Лицензия Networks Associates Technology на статью, посвященную PAM

E. Библиография

Литература

Список иллюстраций

2.1. Разделы
3.1. Выбор языка
3.2. Главное меню установочной программы
3.3. Подтверждение установки NetBSD
3.4. Выбор жесткого диска
3.5. Полная или ручная установка
3.6. Выбор наборов дистрибутивов
3.7. Выбор схемы разбиения
3.8. Выбор единицы измерения
3.9. fdisk
3.10. Опции раздела
3.11. Установка загрузчика
3.12. Когда необходимо редактировать раздел
3.13. Задание размеров раздела
3.14. Редактор disklabel
3.15. Редактор метки диска
3.16. Назначение имени NetBSD диску
3.17. Последний шанс перед изменением диска
3.18. Создание файловой системы
3.19. Выбор загрузочного блока
3.20. Выбор многословности процесса распаковки
3.21. Источник установочных файлов
3.22. CD-ROM/DVD установка
3.23. Какой сетевой интерфейс конфигурировать
3.24. Изменение настроек сетевого подключения
3.25. Использование DHCP конфигурирования сети
3.26. Ввод и конфигурирование сетевых данных
3.27. Подтверждение параметров сети
3.28. Какой каталог использовать для скачиваемого
3.29. Определение расположения источника установочных наборов
3.30. В процессе скачивания произошла ошибка
3.31. Скачивание установочных наборов
3.32. Распаковка файлов
3.33. Удалять наборы после распаковки?
3.34. Распаковка наборов завершена
3.35. Выбор Вашей временной зоны
3.36. Выбор алгоритма шифрования паролей
3.37. Задать пароль пользователя root сейчас или позже?
3.38. Установка пароля пользователя root
3.39. Выбор оболочки для сеанса root
3.40. Поздравляем
3.41. Перезагрузка системы для завершения установки
15.1. Размещение логических дисков в RAID-1
15.2. Подготовка к первичной установке на Disk0/wd0
15.3. Setup RAID Set
15.4. Reboot using Disk1/wd1 of RAID
15.5. Зеркалируйте Disk1/wd1 на Disk0/wd0
15.6. Award BIOS i386. Загрузка с Disk1/wd1
15.7. Award BIOS i386. Загрузка с Disk0/wd0
20.1. IPv4 адреса делятся на большую часть определяющую сеть – и меньшую определяющую хост.
20.2. Наша демонстрационная сеть
20.3. Подключение одной подсети к другой
20.4. Адреса IPv6 также разделены на более значимые биты сети и менее значимые биты хоста
20.5. Адреса IPv6 имеют схожую структуру с адресами класса B
20.6. Несколько интерфейсов соединенных в одну связь с одним ID области связи
21.1. Сеть с шлюзом
24.1. Структура почтовой системы
25.1. Часто используемый способ для перехода – туннелирование IPv6 в пакетах IPv4
25.2. 6to4 получает IPv6 из IPv4 адреса
25.3. Запрос и ответ могут быть смаршрутизированы через различные шлюзы в 6to4
25.4. Подключение перенаправления пакетов, необходимого для маршрутизатора 6to4

Список таблиц

15.1. Пример аппаратной конфигурации для i386
16.1. Выполнение цепочек PAM
18.1. Veriexec fingerprints tools
18.2. Псевдонимы типов Veriexec

Список примеров

4.1. Секции руководства
11.1. /etc/printcap
11.2. /usr/local/libexec/lpfilter
11.3. /etc/printcap
11.4. /usr/local/libexec/lpfilter-ps
21.1. resolv.conf
21.2. nsswitch.conf
21.3. Сценарий соединения
21.4. Файл конфигурации chat
21.5. Файл сhat с аутентификацией по имени пользователя
21.6. /etc/ppp/options
21.7. ppp-start
21.8. ppp-stop
21.9. /etc/hosts
23.1. файл /etc/hosts на strider
23.2. localhost