eManual.ru - электронная документация
Секция 5 из 10 - Предыдущая - Следующая
Все секции
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
который не поддерживается в стандартном ядре GENERIC (из моего личного
опыта).
6.2. Я не могу скомпилировать ядро. Отсутствует _hw_float.
Позвольте мне угадать. Вы, наверное, удалили npx0 из вашего файла конфигурации
ядра, потому что у вас нет сопроцессора, да? А вот и неправильно! :-) Строка
npx0 ОБЯЗАТЕЛЬНА. Даже если у вас нет математического сопроцессора, вы должны в
ключить поддержку устройства npx0.
6.3. Почему моё ядро такое большое (больше 10МБ)?
Скорее всего, вы компилировали ядро в отладочном режиме. Ядра, построенные в
этом режиме, содержат много символьной информации, которая используется для
отладки и сильно увеличивает размер ядра. Заметьте, что, если вы работаете с
FreeBSD версии 3.0 и старше, то уменьшения производительности при использовании
отладочного ядра нет или оно незначительно, однако отладочное ядро полезно
иметь под рукой на случай аварийного завершения работы системы.
Однако, если вы испытываете нехватку дискового пространства или просто не
хотите использовать отладочное ядро, проверьте, что имеют место следующие две в
ещи:
* В конфигурационном файле вашего ядра нет строчки, имеющей такой вид:
makeoptions DEBUG=-g
* Вы не запускали утилиту config с опцией -g.
Обе из вышеперечисленных ситуаций приведут к построению ядра в отладочном
режиме. Если же вы точно следуете указанным шагам, то сможете построить обычное
ядро и заметите значительное уменьшение его размера; большинство ядер имеют
размер от 1.5МБ до 2МБ.
6.4. Конфликты прерываний при включении поддержки многопортовыx
коммуникационных адаптеров.
Q. Когда я компилирую ядро с поддержкой многопортовых коммуникационных адаптеро
в, сообщается, что только первый порт будет тестироваться, а все остальные
пропускаются из-за конфликтов прерываний. Как это исправить?
A. Проблема состоит в том, что во FreeBSD встроен код, предохраняющий ядро от
аппаратных и программных конфликтов. Вам нужно убрать указания IRQ на всех
портах, кроме одного. Например:
#
# Высокоскоростной многопортовый коммуникационный адаптер - 16550 UARTS
#
device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
6.5. Как включить поддержку накопителей QIC-40/80?
Раскомментируйте следующую строку в файле конфигурации стандартного ядра (или
добавьте ее в конфигурационный файл вашего ядра), добавьте flags 0x1 к строке,
содержащей fdc и перекомпилируйте ядро.
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr
disk fd0 at fdc0 drive 0 ^^^^^^^^^
disk fd1 at fdc0 drive 1
#tape ft0 at fdc0 drive 2
Затем создайте устройство с именем /dev/ft0, перейдя в каталог /dev и запустив
команду
# sh MAKEDEV ft0
для первого устройства, ft1 для второго и так далее.
У вас появится устройство с именем /dev/ft0, на которое вы можете производить
запись с помощью специальной программы управления, называющейся ft - за
дополнительной информацией обратитесь к странице справочника по ft.
Версии операционной системы, предшествующие -CURRENT, имеют огрехи, связанные с
качеством носителя. Если у вас появились проблема, когда ft прокручивает ленту
туда-сюда на одном и том же месте, попробуйте взять последнюю версию программы
ft с /usr/src/sbin/ft из -CURRENT и попробовать её.
-------------------------------------------------------------------------------
Chapter 7. Системное администрирование
7.1. Где расположены файлы конфигурации системы?
7.2. Как проще всего добавить пользователя?
7.3. Как добавить в систему новый диск?
7.4. Как использовать устройство для чтения сменных дисков?
7.5. Почему после редактирования моего файла crontab я получаю сообщения вида
``root: not found''?
7.6. Я сделал ошибку в файле rc.conf или в каком-то другом файле начальной
загрузки, и теперь не могу его отредактировать из-за того, что файловая
система находится в режиме только для чтения. Что мне делать?
7.7. Как смонтировать вторичный раздел DOS?
7.8. Можно ли смонтировать другие файловые системы?
7.9. Как можно использовать загрузчик NT для запуска FreeBSD?
7.10. Как загрузить FreeBSD и Linux с помощью LILO?
7.11. Как загрузить FreeBSD и Linux с помощью BootEasy?
7.12. Не угрожает ли режим "dangerously dedicated" моему здоровью?
7.13. Как добавить дополнительную виртуальную память?
7.14. У меня проблемы с установкой принтера.
7.15. Раскладка клавиатуры неверна.
7.16. Не получается заставить работать дисковые квоты.
7.17. Что не так с устройством ccd?
7.18. Почему невозможно отредактировать метку диска ccd?
7.19. Поддерживает ли FreeBSD вызовы IPC из System V?
7.20. Как настроить sendmail для доставки почты по UUCP?
7.21. Как настроить почту при коммутируемом соединении с Internet?
7.22. Ой! Я забыл пароль администратора!
7.23. Как запретить перезагрузку по клавишам Control-Alt-Delete?
7.24. Как преобразовать текстовые файлы DOS в формат UNIX?
7.25. Как прервать процесс по имени?
7.26. Почему su выдаёт сообщение о том, что я не вхожу в root ACL?
7.27. Как деинсталлировать Kerberos?
7.28. Как добавить в систему дополнительные псевдотерминалы?
7.29. Не получается создать устройство snd0!
7.30. Как перечитать содержимое /etc/rc.conf и перестартовать /etc/rc без
перезагрузки системы?
7.31. Что означает термин sandbox (песочница)?
7.32. Как разрешить обычным пользователям монтировать дискеты, компакт-диски и
другие сменные носители?
7.33. Как перенести систему на большой новый диск?
7.34. Я пытался обновить мою систему до последней -STABLE, а получил -RC или
-BETA! Что происходит?
7.1. Где расположены файлы конфигурации системы?
Для FreeBSD версий от 2.0.5R до 2.2.1R основным конфигурационным файлом яв
ляется /etc/sysconfig. Все параметры указываются здесь, а остальные
конфигурационные файлы, такие, как /etc/rc и /etc/netstart просто его
используют.
Посмотрите файл /etc/sysconfig и измените значения переменных на соответств
ующие вашей системе. В файле содержатся комментарии, описывающие смысл этих
переменных и способ их задания.
В системах выше 2.2.1 и в 3.0 файл /etc/sysconfig сменил название на говорящее
само за себя rc.conf, синтаксис описания переменных был несколько улучшен. /etc
/netstart тоже был переименован в /etc/rc.network, так что все конфигурационные
файлы теперь можно перенести одной командой cp /usr/src/etc/rc* /etc.
А в системах версий 3.1 и выше /etc/rc.conf был перемещён в /etc/defaults/
rc.conf. Не редактируйте этот файл! Вместо этого, если в файле /etc/defaults/
rc.conf имеется параметр, который вы хотите изменить, то вы должны скопировать
строчку с ним в файл /etc/rc.conf и поменять его значение именно здесь.
Например, если вы хотите запустить named, сервер DNS, включенный в поставку
FreeBSD начиная с FreeBSD 3.1, всё, что вам нужно сделать, это:
# echo named_enable="YES" >> /etc/rc.conf
Чтобы запустить местные сервисы во FreeBSD 3.1 и выше, поместите скрипты в
каталог /usr/local/etc.rd. У этих скриптов должен быть выставлен бит в
ыполнимости, и их имена должны оканчиваться на .sh. Во FreeBSD 3.0 и ранее, вы
должны отредактировать файл /etc/rc.local.
Файл /etc/rc.serial предназначен для инициализации коммуникационных адаптеров
(например, установки характеристик работы последовательных портов и тому
подобное).
Файл /etc/rc.i386 предназначен для настройки специфичных для архитектуры Intel
параметров, таких, как эмуляция iBCS2 или характеристик системной консоли ПК.
7.2. Как проще всего добавить пользователя?
Используйте команду adduser. Для выполнения более сложных операций обратитесь к
команде pw.
Чтобы удалить пользователя, используйте команду rmuser. И, снова повторимся,
команда pw тоже будет работать.
7.3. Как добавить в систему новый диск?
Обратитесь к Руководству по форматированию дисков на сервере www.FreeBSD.org.
7.4. Как использовать устройство для чтения сменных дисков?
Каким бы ни было это устройство, типа ZIP, EZ (или даже обычным дисководом,
если вы хотите его использовать) или каким-то другим, как только оно будет
установлено и распознано системой, и вы вставите в него картридж/дискету/
что-там-ещё, всё будет выглядеть примерно одинаково.
(этот раздел опирается на FAQ по устройствам ZIP Марка Мэйо (Mark Mayo))
Если это устройство ZIP или обычный дисковод, и у вас уже есть файловая система
DOS на дискетах, то вы можете использовать команду типа:
# mount -t msdos /dev/fd0c /floppy
для обычных дискет, или
# mount -t msdos /dev/da2s4 /zip
для дискет ZIP со стандартной конфигурацией.
Для других дисков посмотрите их параметры с помощью команды fdisk или /stand/
sysinstall.
Остальные примеры даны для привода ZIP на da2, третьем диске SCSI.
Если это дискета или сменный диск, который будет использоваться для обмена
информацией с другими людьми, хорошей идеей будет помещение туда файловой
системы BSD. Вы получите поддержку длинных имён файлов, увеличение произв
одительности по крайней мере в два раза и гораздо большую надёжность. Первым
делом вам снова будет нужно выполнить разбиение диска на разделы/файловые
системы. Вы можете воспользоваться утилитой fdisk либо /stand/sysinstall, а в
случае небольшого диска, на котором не нужно располагать несколько операционных
систем, просто сотрите таблицу разделов (слайсов) FAT и используйте разбиение
на разделы BSD.
# dd if=/dev/zero of=/dev/rda2 count=2
# disklabel -Brw da2 auto
Вы можете использовать disklabel или /stand/sysinstall для создания нескольких
разделов BSD. Вам наверняка придётся это сделать, если вы станете добавлять
место для раздела подкачки на винчестере, хотя это не имеет отношения к
устройствам типа ZIP.
В итоге вы должны создать новую файловую систему (в этом примере она занимает в
есь наш диск ZIP):
# newfs /dev/rda2c
и смонтировать её:
# mount /dev/da2c /zip
Хорошо ещё добавить строку типа следующей в файл /etc/fstab, чтобы в будущем
можно было просто давать команду mount /zip:
/dev/da2c /zip ffs rw,noauto 0 0
7.5. Почему после редактирования моего файла crontab я получаю сообщения вида
``root: not found''?
Обычно это случается при редактировании системного crontab-файла (/etc/crontab)
и последующего использования утилиты crontab(1) для его установки:
# crontab /etc/crontab
Это неправильно. Системный crontab-файл имеет формат, отличный от пользов
ательских crontab-файлов, которые обновляет утилита crontab(1) (страница Справ
очника по crontab(5) описывает отличия более подробно).
Если вы сделали именно это, то нужно удалить файл /var/cron/tabs/root, так как
он будет являться просто копией /etc/crontab, но неправильного формата. В
следующий раз при редактировании /etc/crontab вам не нужно ничего делать для из
вещения утилиты cron(8) о сделанных изменениях, так как она заметит изменения а
втоматически.
Реальная причина ошибки заключается в том, что системный crontab-файл имеет
дополнительное поле, указывающее, какой пользователь запускает команду. В
системном crontab-файле, поставляемом с FreeBSD и используемом по умолчанию,
это пользователь root для всех строк. Если этот crontab-файл используется в
качестве crontab-файла пользователя root (что не то же самое, что системный
crontab-файл), cron(8) полагает, что слово root является первым в команде на в
ыполнение, но такой команды не существует.
7.6. Я сделал ошибку в файле rc.conf или в каком-то другом файле начальной
загрузки, и теперь не могу его отредактировать из-за того, что файловая система
находится в режиме только для чтения. Что мне делать?
При получении приглашения на ввод полного пути до командного процессора, просто
нажмите ENTER, а затем выполните команду mount / для повторного монтирования
корневой файловой системы в режиме чтения/записи. Вам может также потребоваться
выполнить команду mount -a -t ufs для монтирования файловой системы, в которой
расположен ваш любимый редактор. Если редактор расположен на сетевой файловой
системе, то вам потребуется выполнить сетевые настройки вручную до монтирования
сетевой файловой системы, либо воспользоваться редактором, находящимся в
локальной файловой системе, таким, как ed(1).
Если вы собираетесь использовать полноэкранный редактор, такой, как vi(1) или
emacs(1), то вам нужно будет выполнить команду export TERM=cons25, чтобы такие
редакторы смогли корректно взять данные из базы данных termcap(5).
После выполнения этих шагов вы сможете отредактировать файл /etc/rc.conf так,
как вы это обычно делаете для исправления ошибки. Сообщение об ошибке, выв
одимое сразу же после сообщений при загрузке ядра, должно указать вам на номер
строки в файле, которая содержит ошибку.
7.7. Как смонтировать вторичный раздел DOS?
Вторичные разделы DOS находятся после ВСЕХ первичных разделов. Например, если
раздел "E" является вторым разделом DOS на втором диске SCSI, вам нужно создать
специальные файлы для пятого "слайса" в каталоге /dev, затем смонтировать /dev/
da1s5:
# cd /dev
# sh MAKEDEV da1s5
# mount -t msdos /dev/da1s5 /dos/e
7.8. Можно ли смонтировать другие файловые системы?
Компакт-диски с файловой системой UFS от Digital UNIX могут быть замонтированы
без всяких проблем. Монтирование файловых систем Digital UNIX или других
систем, поддерживающих UFS, может быть более сложным, в зависимости от
особенностей разбиения диска конкретной операционной системой.
Linux: Версии 2.2 и выше имеют поддержку разделов ext2fs. За дополнительной
информацией обратитесь к страницам справочника по команде mount_ext2fs.
NT: Существует драйвер, позволяющий под FreeBSD иметь доступ к NTFS в режиме
"только для чтения". Посмотрите учебник от Марка Овенса (Mark Ovens) по адресу
http://ukug.uk.freebsd.org/~mark/ntfs_install.html.
Нас интересует любая дополнительная информация по этому вопросу.
7.9. Как можно использовать загрузчик NT для запуска FreeBSD?
Эта процедура выглядит по разному для версий FreeBSD 2.2.x и 3.x (с трё
хступенчатым процессом загрузки системы).
Идея заключается в копировании первого сектора корневого раздела FreeBSD в
файл, находящийся в разделе DOS/NT. Предположим, что вы назвали этот файл c:
bootsect.bsd (по аналогии с c:bootsect.dos), после чего можете отредактировать
файл c:boot.ini, чтобы он выглядел примерно так:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Windows NT"
C:BOOTSECT.BSD="FreeBSD"
C:="DOS"
Для систем 2.2.x предполагается, что DOS, NT, FreeBSD или другая операционная
система были установлены в их соответствующие разделы fdisk на одном и том же
диске. В моём случае DOS & NT находятся на первом разделе fdisk, а FreeBSD на в
тором. Я также установил FreeBSD для загрузки с её раздела, а не из MBR.
Смонтируйте дискету в формате DOS (если вы используете NTFS) или раздел FAT,
скажем, в каталог /mnt.
# dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1
Перезапустите DOS или NT. Пользователи NTFS должны скопировать файл
bootsect.bsd и/или bootsect.lnx с дискеты на диск C:. Измените атрибуты (прав
а) на файл boot.ini следующим образом:
C:> attrib -s -r c:boot.ini
Отредактируйте этот файл, добавив соответствующие строки из примерного boot.ini
выше, и восстановите атрибуты:
C:> attrib +s +r c:boot.ini
Если FreeBSD загружается из MBR, восстановите его командой DOS fdisk после
того, как переконфигурировали их для загрузки с их "родных" разделов.
Для систем FreeBSD 3.x эта процедура выглядит несколько проще.
Если FreeBSD установлена на тот же самый диск, что и загрузочный раздел NT,
просто скопируйте /boot/boot1 в C:BOOTSECT.BSD. Однако, если FreeBSD установ
лена на другой диск, то /boot/boot1 работать не будет, нужно копировать /boot/
boot0.
WarningНЕ КОПИРУЙТЕ ПРОСТО /boot/boot0 ВМЕСТО /boot/boot1, ЭТИМ ВЫ
ПЕРЕЗАПИШЕТЕ ТАБЛИЦУ РАЗДЕЛОВ ВИНЧЕСТЕРА И ВАШ КОМПЬЮТЕР ПЕРЕСТАНЕТ
ЗАГРУЖАТЬСЯ!
/boot/boot0 нужно устанавливать с помощью sysinstall, выбрав менеджер загрузки
FreeBSD в диалоговом окне при выборе менеджера загрузки. Это потому что в /boot
/boot0 область таблицы разделов заполнена символами NULL, а sysinstall копирует
сюда таблицу разделов перед тем, как скопировать /boot/boot0 в область MBR.
При запуске менеджер загрузки FreeBSD задаёт ОС, которая загружалась последний
раз, устанавливая для этой операционной системы признак активизации в таблице
разделов, а затем записывает 512 байт самого себя обратно в MBR, так что если в
ы просто скопируете /boot/boot0 в C:BOOTSECT.BSD, то в MBR будет записана
пустая таблица разделов с флагом активности в некотором месте.
7.10. Как загрузить FreeBSD и Linux с помощью LILO?
Если у вас установлены FreeBSD и Linux на одном и том же диске, следуйте
указаниям по установке LILO о загрузке не-Linux операционных систем. Они св
одятся к следующему:
Загрузите Linux, и добавьте следующие строки в файл /etc/lilo.conf:
other=/dev/hda2
table=/dev/hda
label=FreeBSD
(здесь вы предполагаем, что слайс с FreeBSD известен Linux как /dev/hda2;
измените эту строку в соответствии с вашей конфигурацией). Затем достаточно
будет запустить lilo, войдя в систему как администратор.
Если FreeBSD располагается на другом диске, вам нужно добавить строчку loader=/
boot/chain.b в конфигурационный файл LILO. Например:
other=/dev/dab4
table=/dev/dab
loader=/boot/chain.b
label=FreeBSD
В некоторых случаях для успешной загрузки со второго диска вам может потребов
аться указать номер диска BIOS загрузчику FreeBSD. Например, если диск SCSI с
FreeBSD определяется BIOS как диск 1, в приглашении загрузчика FreeBSD нужно
указать:
Boot: 1:da(0,a)/kernel
Во FreeBSD 2.2.5 и выше вы можете настроить boot(8) на автоматическое принятие
таких параметров во время загрузки.
В документе Linux+FreeBSD mini-HOWTO содержится много информации, касающейся в
заимодействия FreeBSD и Linux.
7.11. Как загрузить FreeBSD и Linux с помощью BootEasy?
Установите LILO в начало загрузочного раздела Linux, а не в Master Boot Record.
После этого можно запустить LILO из BootEasy.
Это рекомендуется сделать в любом случае при одновременном использовании
Windows-95 и Linux, чтобы упростить восстановление работоспособности Linux
после переинсталляции Windows95 (которая является Недоброжелательной
Операционной Системой и не терпит присутствия других операционных систем в
Master Boot Record).
7.12. Не угрожает ли режим "dangerously dedicated" моему здоровью?
В процессе установки вы можете выбрать два различных метода разбиения вашего
диска. По умолчанию это делается в режиме совместимости с другими операционными
системами на этой же машине с использованием записей в таблице разделов fdisk
(то, что называется "слайсом" во FreeBSD), со слайсом (разделом), выделенным
FreeBSD. Опционально, вы можете выбрать установку менеджера загрузки для
переключения между операционными системами. Либо вы можете выделить диск
полностью под FreeBSD, не заботясь о совместимости с другими операционными
системами.
Почему же этот режим называется "dangerous"? Дело в том, что диск в этом режиме
не будет содержать того, что обычные утилиты для ПК распознают как таблицу
разделов. В зависимости от того, насколько хорошо они написаны, они могут
сообщить вам об этом, как только обнаружат такой диск, или, что гораздо хуже,
могут запортить загрузчик BSD, даже не спрашивая и не сообщая об этом. К тому
же известно, что разметка диска в режиме "dangerously dedicated" вводит в
заблуждение BIOS многих производителей, включая AWARD (которые используются в
компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR (произв
одителя популярных SCSI-контроллеров серии 53C8xx). И это не полный список,
есть ещё другие производители. Симптомами подобных проблем является сообщение
"read error", выводимое загрузчиком FreeBSD, когда он не может найти сам себя,
а также зависания системы при загрузке.
Тогда зачем вообще нужен этот режим? Он экономит всего лишь несколько килобайт
дискового пространства и может вызвать серьёзные проблемы при новой
инсталляции. Причиной появления этого режима является желание избежать появ
ления одной из самых распространённых проблем, с которой сталкиваются новички -
соответствие параметров BIOS и реальных параметров диска.
"Параметры" диска являются устаревшей концепцией, но она лежит в основе работы
BIOS с диском. Когда программа установки FreeBSD создаёт слайсы, она записывает
их расположение в соответствии с тем, как с ними будет работать BIOS. Если это
делается неправильно, вы не сможете выполнить загрузку системы.
Режим "dangerously dedicated" пытается обойти это, упрощая решение данной
проблемы. Иногда он делает это правильно. Однако это значит, что его нужно
использовать только как последнюю альтернативу - есть способы получше, решающие
проблему в 99 случаях из 100.
Итак, как избежать использования режима "DD" во время установки? Сначала
запишите параметры диска, которые сообщает BIOS. Вы можете выяснить это, застав
ив ядро вывести эти параметры при загрузке, указав -v в приглашении boot:, или
используя boot -v в загрузчике. Перед тем, как запустится программа установки,
ядро выведет параметры, используемые BIOS. Не волнуйтесь - подождите запуска
программы установки, а затем воспользуйтесь скроллингом, чтобы посмотреть
значения этих параметров. Как правило, BIOS нумерует диски в том же порядке,
что и FreeBSD, сначала IDE, затем SCSI.
Когда вы разбиваете диск на слайсы, проверьте, что параметры диска, выводимые в
окне программы FDISK, корректны (то есть они соответствуют параметрам BIOS);
если это не так, воспользуйтесь командой g, чтобы их исправить. Вы можете это
сделать, если на диске нет абсолютно ничего или если этот диск был перенесён с
другой системы. Заметьте, что это касается только загрузочного диска; FreeBSD
прекрасно разберётся с остальными дисками, которые могут у вас быть.
Как только вы добились соответствия параметров диска в BIOS и FreeBSD, скорее в
сего, проблем у вас больше не будет, и использовать режим "DD" не потребуется.
Если, однако, страшной сообщение "read error" продолжает появляться при
загрузке, самое время перекреститься и попробовать этот режим - терять вам
больше нечего.
Чтобы вернуть диск из режима "dangerously dedicated" к нормальному режиму
использования, есть два способа. Первый заключается в том, что вы записываете
достаточное количество байтов NULL поверх MBR, чтобы любой инсталлятор думал,
что это чистый диск. Это можно сделать, например, командой
# dd if=/dev/zero of=/dev/rda0 count=15
Другой способ - недокументированной командой DOS
C:> fdisk /mbr
проинсталлировать новую MBR, удалив загрузчик BSD.
7.13. Как добавить дополнительную виртуальную память?
Наилучший способ - увеличить размер раздела подкачки, может быть, добавив для
этого ещё один диск. Общим правилом является выбор размера виртуальной памяти,
в два раза превышающий объём физической памяти. Однако, если у вас очень мало
физической памяти, этот объём гораздо больше. Хорошей практикой является
задание достаточного объёма виртуальной памяти в ожидании добавления физической
памяти, чтобы потом не испытывать трудностей.
Перенос виртуальной памяти на отдельный диск увеличивает быстродействие системы
по сравнению с добавлением виртуальной памяти на том же диске. Например,
компиляция исходных текстов происходит быстрее, если они находятся не на том же
диске, что и раздел подкачки. Особенно это заметно для дисков SCSI.
Если у вас имеется несколько дисков, размещение раздела подкачки на каждом из
них, даже на рабочем диске, обычно бывает полезно. Как правило, каждый быстрый
диск в вашей системе должен иметь раздел подкачки. FreeBSD поддерживает по
умолчанию до 4 устройств подкачки с чередованием. При задании нескольких
разделов подкачки вам захочется сделать их одинакового размера, однако иногда
первичный раздел подкачки делается несколько больше для того, чтобы он мог
поместить аварийный образ ядра. Размер вашего первичного раздела подкачки
должен по крайней мере быть равным объёму физической памяти, чтобы поместить ав
арийный образ ядра.
Диски IDE не позволяют реализовать одновременный доступ к обоим дискам по
одному каналу (FreeBSD не поддерживает режим 4, так что весь ввод/вывод для
дисков IDE "программируется"). Однако я всё равно советую перенести раздел
подкачки на отдельный диск. Диски достаточно дешёвы, и экономить тут не на чем.
Использование NFS для размещения раздела подкачки рекомендуется только в
случае, если у вас нет локального диска. Подкачка поверх NFS медленна и
неэффективна в релизах FreeBSD до 4.x, хотя достаточно быстра в релизах 4.0 и в
ыше. Кроме того, её скорость будет ограничена реальной пропускной способностью
сети и это даст дополнительную нагрузку на NFS-сервер.
Вот пример vn-файла подкачки размером 64Мб (/usr/swap0, хотя, конечно, вы
можете выбрать любое другое имя.
Удостоверьтесь, что ядро откомпилировано со строкой
pseudo-device vn 1 #Vnode driver (turns a file into a device)
в конфигурационном файле. Ядро GENERIC её содержит
1. создайте vn-устройство
# cd /dev
# sh MAKEDEV vn0
2. создайте файл подкачки (/usr/swap0)
# dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
3. Установите корректные права на файл (/usr/swap0)
# chmod 0600 /usr/swap0
4. Включите использование файла подкачки в /etc/rc.conf
swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
5. перезагрузите машину
Чтобы включить использование файла подкачки немедленно, наберите
# vnconfig -ce /dev/vn0c /usr/swap0 swap
7.14. У меня проблемы с установкой принтера.
Обратитесь к соответствующему разделу Руководства, посвящённому печати. В нём
описаны решения большинства ваших проблем.
7.15. Раскладка клавиатуры неверна.
Программа kbdcontrol имеет параметр, задающий файл раскладки. Файлы раскладок
находятся в каталоге /usr/share/syscons/keymaps. Выберите соответствующий вашей
системе и загрузите его.
# kbdcontrol -l uk.iso
Программа kbdcontrol предполагает использование каталога /usr/share/syscons/
keymaps и расширения .kbd.
Это может быть настроено в файле /etc/sysconfig (или rc.conf). Обратитесь к
соответствующим комментариям в этом файле.
В системах 2.0.5R и выше, всё, относящееся к знакогенератору, раскладке клав
иатуры, находится в каталоге /usr/share/examples/syscons.
На данный момент поддерживаются следующие раскладки:
* Belgian ISO-8859-1
* Brazilian 275 keyboard Codepage 850
* Brazilian 275 keyboard ISO-8859-1
* Danish Codepage 865
* Danish ISO-8859-1
* French ISO-8859-1
* German Codepage 850
* German ISO-8859-1
* Italian ISO-8859-1
* Japanese 106
* Japanese 106x
* Latin American
* Norwegian ISO-8859-1
* Polish ISO-8859-2 (programmer's)
* Russian Codepage 866 (alternative)
* Russian koi8-r (shift)
* Russian koi8-r
* Spanish ISO-8859-1
* Swedish Codepage 850
* Swedish ISO-8859-1
* Swiss-German ISO-8859-1
* United Kingdom Codepage 850
* United Kingdom ISO-8859-1
* United States of America ISO-8859-1
* United States of America dvorak
* United States of America dvorakx
7.16. Не получается заставить работать дисковые квоты.
1. Не включайте квотирование на /,
2. Помещайте файл с квотами в ту файловую систему, которую он обслуживает, то
есть:
Файловая система Файл квот
/usr /usr/admin/quotas
/home /home/admin/quotas
... ...
7.17. Что не так с устройством ccd?
Симптом выглядит так:
# ccdconfig -C
ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format
Это сообщение обычно выдаётся, когда вы пытаетесь объединить разделы c, по
умолчанию имеющие тип unused. Драйвер ccd требует, чтобы используемые разделы
имели тип FS_BSDFFS. Отредактируйте метки тех дисков, которые вы хотите
использовать, сменив типы разделов на 4.2BSD.
7.18. Почему невозможно отредактировать метку диска ccd?
Симптом выглядит так:
# disklabel ccd0
(здесь выводится информация о диске, пробуем отредактировать метку)
# disklabel -e ccd0
(редактирование, сохранение, выход)
disklabel: ioctl DIOCWDINFO: No disk label on disk;
use "disklabel -r" to install initial label
Это происходит из-за того, что метка диска, возвращаемая ccd, на самом деле
"ненастоящая", не соответствующая реально располагающейся на диске. Вы можете
решить эту проблему, явно записав эту метку обратно следующим образом:
# disklabel ccd0 > /tmp/disklabel.tmp
# disklabel -Rr ccd0 /tmp/disklabel.tmp
# disklabel -e ccd0
(теперь это будет работать)
7.19. Поддерживает ли FreeBSD вызовы IPC из System V?
Да, FreeBSD поддерживает IPC из System V, а именно совместно используемую
память, сообщения и семафоры. Чтобы они работали, вам нужно добавить следующие
строки в файл конфигурации ядра.
options SYSVSHM
options SYSVSHM # enable shared memory
options SYSVSEM # enable for semaphores
options SYSVMSG # enable for messaging
Note: Во FreeBSD 3.2 и выше эти параметры уже включены в ядро GENERIC, что
уже означает их присутствие в вашей системе.
Перекомпилируйте и проинсталлируйте ядро.
7.20. Как настроить sendmail для доставки почты по UUCP?
Конфигурация sendmail, поставляемая с FreeBSD, предназначена для сайтов,
которые имеют непосредственный выход в Internet. Сайты, которым требуется
обмениваться почтой по UUCP, должны использовать другой конфигурационный файл.
Ковыряние в файле /etc/sendmail.cf вручную - это занятие для пуристов (и
мазохистов). Восьмая версия sendmail поставляется с новой системой генерации
конфигурационных файлов с использованием препроцессора m4, в которой ручная
настройка перенесена на более высокий уровень абстракции. Используйте
конфигурационные файлы в каталоге /usr/src/usr.sbin/sendmail/cf.
Если вы не собираетесь инсталлировать все исходные тексты системы, специально
для вас конфигурационные файлы sendmail выделены в отдельный дистрибутив. Если
вы имеете смонтированный компакт-диск, выполните такую команду:
# cd /cdrom/src
# cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail
Не волнуйтесь, эти файлы занимают всего лишь несколько сотен килобайт. Файл
README в каталоге cf может быть использован как начальное введение в
конфигурацию m4.
Для доставки почты по UUCP лучше всего использовать mailertable. В этом файле
содержится база данных, используемая sendmail при маршрутизации почты.
Первым делом создайте ваш файл .mc. Для таких файлов предназначен каталог /usr/
src/usr.sbin/sendmail/cf/cf. Посмотрите в нём, там есть уже несколько примеров.
Положим, что вы назвали ваш файл foo.mc, всё, что вам нужно для преобразования
его в нормальный sendmail.cf, это:
# cd /usr/src/usr.sbin/sendmail/cf/cf
# make foo.cf
# cp foo.cf /etc/sendmail.cf
Типичный файл .mc выглядит примерно так:
include(`../m4/cf.m4')
VERSIONID(`Your version number')
OSTYPE(bsd4.4)
FEATURE(nodns)
FEATURE(nocanonify)
FEATURE(mailertable)
define(`UUCP_RELAY', your.uucp.relay)
define(`UUCP_MAX_SIZE', 200000)
MAILER(local)
MAILER(smtp)
MAILER(uucp)
Cw your.alias.host.name
Cw youruucpnodename.UUCP
Параметры nodns и nocanonify подавляют использование DNS в процессе доставки.
Строка UUCP_RELAY может понадобиться только в очень странных случаях, не спраши
вайте о них. Просто поместите здесь имя хоста Internet, который может обрабатыв
ать адреса с псевдо-доменами .UUCP; в большинстве случаев достаточно поставить
сюда имя почтового шлюза вашего провайдера.
Секция 5 из 10 - Предыдущая - Следующая
|