Фройндшафт с чертенком Валерия Комиссарова Хакер, номер #081, стр. 081-108-6 kern.cam.scsi_delay - уменьшение этого параметра (задается в миллисекундах) обычно сокращает время загрузки системы. В принципе, на современной машине можно уменьшить это значение до 5. Эта опция используется в FreeBSD >= 5.0 и настраивается во время загрузки. Работа в сети net.inet.ip.forwarding - если установить значение равным 1, то машина будет форвардить IPv4-пакеты между сетевыми интерфейсами. net.inet.tcp.sendspace и net.inet.tcp.recvspace - входящий и исходящий буферы TCP-подключений. Обычное значение для машин с большим количеством памяти - 65535. Прежде чем увеличивать параметр, обратись к net.inet.tcp.rfc1323, а также к ману tuning(7). net.inet.tcp.msl=7500 - время ожидания ACK в ответ на SYN-ACK или FIN-ACK (в миллисекундах). net.inet.icmp.icmplim=50 - задаем максимальное количество ICMP-пакетов с типом "destination-unreachable" и TCP-пакетов, с установленным флагом RST (в данном случае 50 пакетов в секунду). net.inet.tcp.blackhole=2 - предписываем отбрасывать без отправки RST все TCP-пакеты, адресованные на закрытый порт. net.inet.udp.blackhole=1 - предписываем отбрасывать все UDP-пакеты, которые были адресованы закрытым портам. kern.ipc.somaxconn=1024 - изменение числа одновременно открытых сокетов. [полезные мелочи] Ну что ж, наш путь оптимизатора FreeBSD можно считать почти завершённым. Мы совершили два глобальных переворота в жизни нашей системы: перекомпилировали ядро и потвикали значения переменных sysctl. Но остались некоторые мелочи, о которых стоит рассказать, попутно дав несколько советов. Мы уже рассмотрели ситуацию, когда свежесобранное ядро не хочет грузиться, но случается, что проблемы возникают ещё раньше. Вот их и разберём. 1. Не удаётся выполнить команду config (сборка прекращается с сообщением "unknown option") - очевидно, в твой конфиг ядра закралась синтаксическая ошибка. В этом случае команда config выдаст номер строки, в которой обнаружена ошибка. 2. Не удается выполнить команду make - это тоже, вероятнее всего, означает ошибку в конфиге, но не столь очевидную, чтобы config ее обнаружил, либо ошибку при компиляции. 3. Не удается установить ядро (make install или make installkernel) - если фряха четвертой ветки и ниже, то необходимо проверить, не стоит ли уровень безопасности 1 или выше, т.к. установка ядра в этих версиях может выполняться только на уровне безопасности равным 0. Если новое ядро успешно собрано и загружено, но такие утилиты, как ps, top не работают - означает, что произошла десинхронизация кернела и узерленда, другими словами, версия исходных текстов ядра не совпадает с версиями системных утилит. Необходимо привести все версии к единому знаменателю (нельзя собирать пятое ядро на системе четвёртой версии). У владельцев фряхи <5.0 могут возникнуть трудности при создании файлов устройств. Поясню на конкретном примере. Большинство устройств имеет свои файлы в каталоге /dev. Их при первой установке создаёт скрипт /dev/MAKEDEV. Но может случиться так, что придётся самому добавить устройство в систему. Допустим, нам нужно установить айдишный CDROM. Сначала следует включить строчку "device acd0" в конфиг ядра. Теперь необходимо проверить наличие в каталоге /dev файлов, имена которых начинаются с acd0. Если такие есть, можно успокоиться, а если нет - нужно ввести следующую команду "sh MAKEDEV acd0". Примечание: для сетевых устройств не существует файлов в /dev, а SCSI-контроллеры используют одинаковый набор файлов в /dev, и создавать их (файлы) не требуется. |