Глава 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. Перезагрузка системы

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

4.1. Если что-то пошло не так

Если система не загружается, то возможно есть проблема с менеджером загрузки или с MBR (Master Boot Record). В этом случае загрузите машину с дискеты и после того, как увидите строку:

booting fd0a:netbsd - starting in ...

Нажмите пробел в течении 5 секунд обратного отсчета; загрузка остановится и будет отображена командная строка. Вы можете получить краткую справку с помощью команды «?» или «help».

type "?" or "help" for help.
> ?
commands are:
boot [xdNx:][filename] [-adrs]
     (ex. "sd0a:netbsd.old -s")
ls [path]
dev xd[N[x]]:
help|?
quit
> boot wd0a:netbsd

Теперь система должна грузиться с жесткого диска вместо дискеты. Если NetBSD нормально загружается, то проблема, скорее всего, в MBR: вы можете установить менеджер загрузки или модифицировать его конфигурацию командой fdisk -B. Смотрите Раздел 19.4, «Установка менеджера загрузки» для дополнительной информации.

4.2. Вход в систему

Для первого входа в систему используйте учетную запись root, пароль для которой мы определили в ходе установки.

NetBSD/i386 (Amnesiac) (ttyE0)
login: root
password
...
We recommend creating a non-root account and using su(1) for root access.
#

4.3. Изменение раскладки клавиатуры

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

# wsconsctl -k -w encoding=it
encoding -> it

Смотрите Раздел 29.1.3, «Раскладка клавиатуры» для получения списка доступных раскладок и получения дополнительной информации по настройке раскладок.

4.4. Справочное руководство man

Если вы никогда ранее не использовали Unix(-like) операционные системы, то вашим лучшим другом станет команда man, которая поможет вам получить подробную и исчерпывающую справку по интересующему вас вопросу.

man name покажет справочную страницу руководства man для команды «name» и man -k name покажет список связанных страниц (также вы можете использовать команду apropos).

Для начального изучения команды man введите:

# man man

Руководство разделено на девять разделов, содержажих не только основную информацию относительно команд но также и описаний некоторых особенностей и структуры NetBSD. Для примера, посмотрите hier(7), в которой описывается используемая NetBSD файловая система.

# man hier

Другие подобные страницы — release(7) и packages(7). Каждая секция руководства содержит intro(8), описывающее содержание. Для примера, попробуйте:

# man 8 intro

Пример 4.1. Секции руководства

  1. основные команды (инструменты и утилиты)
  2. системные вызовы и номера ошибок
  3. библиотеки C
  4. специальные файлы и поддержка оборудования
  5. форматы файлов
  6. игры
  7. различные информационные страницы
  8. системное техническое обслуживание
  9. ядро

Тема может появиться более, чем в одном разделе руководства; для просмотра специфических страниц используйте номер секции в качестве аргумента команды man. Для примера, time имеется и в секции 1 (пользовательская команда), в секции 3 (функция библиотеки C) и в секции 9 (системная переменная):

# man 3 time

Для просмотра всех доступных страниц:

# man -w time
# man -a time

4.5. Смена пароля пользователя root

В ходе установки вы уже определили пароль пользователя root, изменить его вы можете с помощью команды passwd.

# passwd
Changing local password for root.
New password:
Retype new password:

Пароль не отображается на экране при вводе. Позднее вы также сможете добавить дополнительные учетные записи пользователей в систему.

4.6. Смена командной оболочки

Командная оболочка по умолчанию для пользователя root выбирается в момент установки, обычно это csh. Если это название вам ни о чем не говорит, то вы можете начать изучать ее с помощью csh(1): это неплохая интерактивная оболочка, хотя и довольно старая. Если вы хотите сменить оболочку, воспользуйтесь командой chsh(1). Доступные после установки системы оболочки:

  • csh
  • sh
  • ksh

Новая оболочка будет загружена при следующем вашем входе в систему. Тем временем, вы можете выполнить следующую команду, если используете csh:

# set filec

что позволит использовать автодополнение команд (с клавишей ESC, используйте Ctrl+D для просмотра всех возможных дополнений).

Вы можете установить и другие оболочки, например tcsh, bash, zsh, воспользовавшись коллекцией портов (мы рассмотрим этот вопрос позже).

Если вы имеет опыт работы с оболочкой, то сейчас самое время создать файлы инициализации (.chsrc, .login, …)

4.7. Системное время

NetBSD, как и все Unix системы использует системные часы, базирующиеся на Greenwich time (GMT) и поэтому их необходимо установить на это время. Если вы хотите использовать в качестве системного локальное время (например, в случае использования нескольких ОС на одной машине), то вам необходимо указать это NetBSD, модифицируя sysctl-переменную kern.rtc_offset.

# echo kern.rtc_offset=-60 >>/etc/sysctl.conf
# sh /etc/rc.d/sysctl restart

Где установленное значение (-60) число минут к западу от GMT.

Для отображения текущего значения переменной kern.rtc_offset:

# sysctl kern.rtc_offset
kern.rtc_offset = -60

Теперь ядро знает, как переконвертировать время часов машины в системное время GMT, но вы все еще должны сконфигурировать систему для указания часового пояса (обозначения которых вы можете посмотреть в /usr/share/zoneinfo). Если вы уже сделали это в ходе инсталляции, то можете пропустить этот шаг. Например, для Италии:

# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Rome /etc/localtime

Как только вы все правильно установили, можно изменить текущее время следующей командой:

# date [[[[[cc]yy]mm]dd]hh]mm

4.8. Начальная конфигурация /etc/rc.conf

NetBSD использует файл /etc/rc.conf для конфигурации системы в процессе начального запуска: в этом файле определяются запускаемые сервисы и начальные настройки. Понимание этого файла черезвычайно важно.

В файле /etc/defaults/rc.conf содержатся значения по умолчанию для большого числа параметров начальной настройки. Для изменения значения по умолчанию внесите новое значение в /etc/rc.conf: определенные в нем переменные перезапишут установки по умолчанию из /etc/defaults/rc.conf (не стоит их изменять).

Понимание /etc/rc.conf очень важно. Страница руководства rc.conf(5) содержит детальную информацию по всем возможным опциям.

# man rc.conf

Сперва модифицируем:

  • Установим «rc_configured=yes» (эта строка уже могла быть после установки)
  • Установим «dhclient=yes» для конфигурирования сети через DHCP.
  • Установим «sshd=yes» для запуска демона Secure Shell при старте системы.
  • Определим имя машины через параметр hostname (используйте полностью определенное имя, т.е. включая домен). Для машины без сети, вы можете использовать любое имя (например, woody.toys.net), если же машина подключениа к сети, то вы должны использовать корректное сетевое имя.

    Замечание

    Убедитесь, что имя машины можно разрешить, используя DNS или /etc/hosts, так как некоторые программы не работают с неразрешаемыми именами машин.

4.9. Включение FFS soft-dependencies

Сейчас довольно хороший повод включить soft-dependencies для файловой системы FFS. По умолчанию, в NetBSD FFS записывает мета-данные немедленно, в синхронном режиме. Механизм soft-dependencies позволяет не записывать данные сразу, а организовывать их и сохраняет их способом, не конфликтующим с FFS. Это обеспечивает быстродействие на уровне асинхронной системы без особого риска. Soft-dependencies может быть определено добавлением опции softdep в /etc/fstab. Рассмотрим типичный файл /etc/fstab:

/dev/wd0a / ffs rw 1 1
/dev/wd0b none swap sw 0 0
/dev/wd0e /var ffs rw 1 2
/dev/wd0f /tmp ffs rw 1 2
/dev/wd0g /usr ffs rw 1 2

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

/dev/wd0a / ffs rw 1 1
/dev/wd0b none swap sw 0 0
/dev/wd0e /var ffs rw,softdep 1 2
/dev/wd0f /tmp ffs rw,softdep 1 2
/dev/wd0g /usr ffs rw,softdep 1 2

Вот некоторые ссылки на дополнительную информацию по файловым системам и soft-dependencies:

4.10. Перезагрузка системы

В этот раз мы сделали:

  • Сконфигурировали клавиатуру
  • Изменили пароль пользователя root(по желанию)
  • Изменили командную оболочку пользователя root (по желанию)
  • Изменили системное время и смещение RTC
  • Опредилили локальное время
  • Сконфигурировали /etc/rc.conf

Теперь, когда подошло время перезагрузки, выполним команду:

# reboot