четверг, 7 февраля 2013 г.

Создание мультизагрузочной флешки (HBCD, AlkidLiveCD, Recovery console XP)

Задача: Создание загрузочной флешки с Hiren's Boot CD, Alkid Live CD, консолью восстановления Windows XP и + полезные утилиты для быстрого доступа.
Все необходимые файлы я закину в архив. Скачать ТУТ!

Начнем с создания Hiren's Boot CD USB:

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

Внимание! Некоторые антивирусы могут реагировать на файлы setup.ex_ и setup_dbg.ex_ (Exploit.Win32.IMG-WMF) входящие в состав программы. Это ложные срабатывания, в сборке вирусов нет.

Убедитесь, что на флэш нет нужной вам информации, так как будет произведено форматирование USB накопителя.
Запускаем WinSetupFromUSB, выбираем в списке обнаруженных съёмных носителей флэш или USB-HDD на которую запишем установочные файлы.

Шаг 1.
Перед копированием загрузочных файлов нужно подготовить флэшку. Воспользуемся встроенной утилитой Bootice.
Если вы уже создавали загрузочный раздел на флэш можно сразу перейти к шагу 2.


Создадим активный загрузочный раздел на флэшке, жмём кнопку Parts Manage


нажимаем ReFormat USB disk


в этом окне выбираем USB-HDD mode и Align to cylinder (63 sectors), жмём Next


Выбираем файловую систему, FAT32 или NTFS, вписываем имя флэшки и жмём ОК. Появится предупреждение, что будет создан новый раздел и флэшка будут отформатирована, все существующие файлы и разделы будут удалены. Соглашаемся, жмём OK.
После форматирования список разделов на флэшке будет выглядеть вот так.


Закрываем окно создания разделов и переходим на основное окно утилиты Bootice. Нажимаем на кнопку Refresh


нам станет доступна кнопка Process MBR, нажимаем её и создадим главную загрузочную запись


в этом окне выбираем GRUB4DOS 0.4.5b MBR (grldr.mbr), далее нажимаем Install/Config


Нажимаем Save to disk и в предупреждающем окне нажимаем ОК. Закрываем окно Master Boot Record и возвращаемся на основное окно утилиты Bootice


Теперь создадим загрузочную запись на созданном разделе, нажимаем Process PBR


и выбираем Grub4Dos 0.4.5b (2010-09-22) (FAT/NTFS/Ext2), далее жмём Install/Config


В этом окне ни чего не меняем, просто жмем ОК. Закрываем окно Partition Boot Record, закрываем Bootice.
Подготовительный этап завершён.

Шаг 2.
Заходим в папку grub4dos и запускаем grubinst_gui:


Копируем grldr и menu.lst (из подпапки grub папки grub4dos) на USB флешку.

Мы сделали основу нашей заготовки. Наполнение дальше зависит от того, что хотим видеть на флешке.
Я хочу видеть следующее:


Для первого пункта копируем в корень флешки все из папк AWLUSB (Загрузочная Windows 7 с AntiWinlocker 4.07( - утилита для удаления баннеров))

Для второго нужно скопировать папку HBCD опять же в корень.

Для третьего, четвертого и шестого пункта нужно скопировать папку utils в корень.

Для пятого пункта необходимо скопировать все файлы из папки recovery console (некоторые файлы и папки скрытые)

Для последних двух пунктов необходимо скопировать все из папки Alkid в корень флешки.

Все все файлы подготовили, теперь необходимо править меню загрузчика. Для этого запускаем WinSetup, нажимаем Bootice, открывается окно, там переходим на вкладку Utilities и нажимаем Start menu editor:


В появившемся окне выбираем menu.lst (который расположен в корне флешки) и вставляем следующее содержание:

color black/cyan yellow/cyan
timeout 10
default /default

#use the following for reference, uncomment(#) and change as needed

title AntiWinlocker
find --set-root /bootmgr
chainloader /bootmgr

title Hiren's BootCD 15.1
find --set-root /HBCD/menu.lst
configfile /HBCD/menu.lst

title Victoria 3.52.3
map --mem /utils/Victoria_v.3.52.3.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title Memtest86
map --mem /utils/memtest86.wbt (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title WindowsXP Recovery Console
find --set-root /cmdcons/setupldr.bin
chainloader /cmdcons/setupldr.bin
write 0x7C03 0x63646D63
write 0x7C07 0x00736E6F

title Windows with NTLDR is missing
map --mem /utils/fixntldr.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title Alkid Live DVD 3000
find --set-root /minint/setupldr.bin
chainloader /minint/setupldr.bin

title Alkid Live DVD 3000(without SCSI/RAID)
find --set-root /minint/setuplns.bin
chainloader /minint/setuplns.bin


Вот и все. Дальше делаем образ флешки с помощью Norton Ghost, чтобы потом все это еще раз не делать.




З.Ы. В будущем при записи другой флешки из созданного образа может возникнуть ошибка: "Missing MBR Helper". Для ее исправления делаем следующее:

запускаем файл "grubinst_gui.exe" из папки grub4dos. Там где написано DISK выбераем диск соответсвующий размеру вашей флешки и нажмите на кнопочку Install. Это запишет на неё загрузчик.

З.Ы.2: Если неохото все это проделывать, то скачиваем ТУТ образ и с помощью  Norton Ghost записываем на флешку, если необходимо правим загрузчик с помощью grub4dos и все!



Спасибо fobosworld.ru, flashboot.ru!













































среда, 6 февраля 2013 г.

Создание загрузочной USB с MS-DOS

Данная флешка с DOS необходима для запуска различных утилит, которые рассчитаны на работу в операционной системе DOS. Это в первую очередь утилиты для работы с BIOS, утилиты для редактирования MBR, различного рода тестовые утилиты для диагностики компьютера или ноутбука, различные файловые менеджеры и так далее.

Использование операционной системы DOS позволяет обойти некоторые ограничения операционной системы по работе с аппаратным обеспечением, а также избежать последствий ее сбоев.

Главная задача - это создать флешку с DOS и автоматической загрузкой Norton Ghost 11.5


Создание загрузочной флешки с DOS.

Все необходимые файлы заархивированы. Скачиваем ТУТ!
Дальше распаковываем скачанный архив в удобное место. В моем случае это С:\DOS:
Устанавливаем утилиту HP Format Tool. Для этого запускаем файл hp_usb_tool.exe.
Вставляем флешку в ноутбук/компьютер и запускаем от имени Администратора данную утилиту:
Предупреждение: в процессе создания флешки она будет форматироваться. Рекомендуется скопировать с нее всю важную информацию на жесткий диск.
В верхнем окне программы выбираете вашу флешку. В моем случае это Kingston DataTraveler PMAP
Дальше нужно поставить галочку возле пункта Create a DOS startup disk и указать путь к подпапкe dos архива, который вы вначале скачивали.
Когда путь указан и флешка выбрана, нажимаем на кнопку Start. Появится предупреждение о том, что флешка будет форматирована и все данные с нее будут удалены:
Дальше должен начаться процесс форматирования:
По его завершению появится отчет:
Дальше нужно скопировать все файлы из подпапки USB скачанного архива на флешку:
В итоге содержание флешки должно быть таким:
Замечание: на флешке должны присутствовать два скрытых файла: COMMAND.COM и IO.SYS. Они нужны для нормальной работы DOS.
Теперь можно записать нужные утилитки на флешку. Когда мы протестируем эту флешку на любом компьютере, то будет загружаться Volkov Commander, потому что в автозагрузке флещки прописано следующее ( в файле AUTOEXEC.bat, которая находится в корне папке):

@ECHO OFF
SET TEMP=C:\
LH BOOT\DRIVERS\SMARTDRV.EXE
LH BOOT\DRIVERS\KEYRUS.COM
LH BOOT\DRIVERS\MOUSE.COM
LH BOOT\DRIVERS\MSCDEX.EXE /D:CDDRIVER
LH BOOT\DRIVERS\NTFS4DOS.EXE
\BOOT\DN\VC.COM
SET SHELL=COMMAND.COM


ДОБАВЛЯЕМ НА ФЛЕШКУ NORTON GHOST 11.5.

Берем подпапку ghost115 и копируем в корень флешки. Кликаем правой кнопкой на файл AUTOEXEC.bat и выбираем "Изменить". Смотри чтобы было следующее:

@ECHO OFF
SET TEMP=C:\
LH BOOT\DRIVERS\SMARTDRV.EXE
LH BOOT\DRIVERS\KEYRUS.COM
LH ghost115\MOUSE.COM
rem LH BOOT\DRIVERS\MOUSE.COM
rem LH BOOT\DRIVERS\MSCDEX.EXE /D:CDDRIVER
rem LH BOOT\DRIVERS\NTFS4DOS.EXE
LH ghost115\ghost.exe
SET SHELL=COMMAND.COM

Итого на флешке получаем следующие папки:

Если не охото все это проделывать, то скачиваем ТУТ архив с образом, сделанным с помощью GHOST32.EXE и с ее же помощью заливаем образ на флешку.
Скачиваем, распаковываем, запускаем программку Ghost32.exe.
Выбираем Local -> Disk-> To Image, выбираем образ, выбираем нужную флешку (предварительно вставленную) и дальше везде OK. Готово!


Спасибо acer-club.ru!










воскресенье, 3 февраля 2013 г.

Сборка ядра FreeBSD


    А зачем вообще нужно собирать собственное ядро? Со стандартным ядром - GENERIC работает большинство железяк, все программы. Но - в GENERIC нет поддержки файрволла, оно неоптимизированно для Ваших нужд... Да и железок лишних там слишком много, зачем вам секция касающаяся SCSI контроллеров если у Вас их нет? А почти два десятка моделей сетевых плат, когда у на серваке стоят всего две-три, да ещё и одной модели? Куча разных процессоров - от i386 до P-IV и AMD K7 - реально-то стоит только один проц. Ещё ядро надо пересобирать при обнаружении новых уязвимостей. Происходит это не так часто, но ошибаются все. В том числе и те, кто делают FreeBSD.
   Да, конечно, не исключена возможность, что сгорит мама и придётся хард переставлять на другую машину - тогда будут проблемы - если старая машина была P-III и из ядра были выкинуты все другие процессоры, то на другой маме - например под K7 фря может даже не загрузиться, не говоря уже о нормальной работе. Да и если возникнет необходимость заменить, например сетевуху, на другую модель - придётся пересобирать ядро. Но - ядро на современных машинах пересобирается минут 5, максимум 7. Да и прибавка к быстродействию машины стоит того, чтобы один раз заморочиться и оптимизировать ядро.
   Итак. Для пересборки ядра у Вас должны быть установлены его исходные тексты. Проверяем:

/usr/home/lissyara/>cd /usr/src/
/usr/src/>ls
COPYRIGHT               etc                     sbin
Makefile                games                   secure
Makefile.inc1           gnu                     share
Makefile.upgrade        include                 sys
README                  kerberos5               tools
UPDATING                kerberosIV              usr.bin
bin                     lib                     usr.sbin
contrib                 libexec
crypto                  release
/usr/src/>
Если наблюдаем такую картину, то всё есть. Если в папке /usr/src ничего нет - надо их доставить с установочного диска. Делаем это таким образом:
/usr/src/>mount /cdrom
/cdrom/>df -h
Filesystem    Size   Used  Avail Capacity  Mounted on
/dev/ad0s1a   126M    36M    80M    31%    /
/dev/ad0s1e   252M  10.0K   232M     0%    /tmp
/dev/ad0s1f   3.0G   844M   1.9G    30%    /usr
/dev/ad0s1g   378M   254K   347M     0%    /var
procfs        4.0K   4.0K     0B   100%    /proc
/dev/acd0c    234M   234M     0B   100%    /cdrom
/usr/src/>cd /cdrom
/cdrom/>ls
ERRATA.HTM      README.TXT      compat1x        dict            kernel
ERRATA.TXT      RELNOTES.HTM    compat20        doc             manpages
HARDWARE.HTM    RELNOTES.TXT    compat21        docbook.css     ports
HARDWARE.TXT    bin             compat22        filename.txt    proflibs
INSTALL.HTM     boot            compat3x        floppies        src
INSTALL.TXT     catpages        compat4x        games           tools
README.HTM      cdrom.inf       crypto          info
/cdrom/>cd src/
/cdrom/src/>./install.sh
You must specify which components of src to extract
possible subcomponents are:

base bin contrib etc games gnu include lib libexec
release sbin share sys tools ubin usbin

You may also specify all to extract all subcomponents.
/cdrom/src/>./install.sh all
Extracting sources into /usr/src...
  Extracting source component: base
  Extracting source component: bin
  Extracting source component: contrib
  Extracting source component: etc
  Extracting source component: games
  Extracting source component: gnu
  Extracting source component: include
  Extracting source component: lib
  Extracting source component: libexec
  Extracting source component: release
  Extracting source component: sbin
  Extracting source component: share
  Extracting source component: sys
  Extracting source component: tools
  Extracting source component: ubin
  Extracting source component: usbin
Done extracting sources.
/cdrom/src/>cd /usr/src/
/usr/src/>umount /cdrom
/usr/src/>
Теперь, когда исходные кодя ядра установлены, приступаем с правке файла конфигурации ядра.
/usr/src/>cd sys/i386/conf/
/usr/src/sys/i386/conf/>ls
GENERIC LINT
/usr/src/sys/i386/conf/>cp GENERIC main_kernell.`date +'%Y-%d-%m'`
/usr/src/sys/i386/conf/>ls
GENERIC                 LINT                    main_kernell.2005-26-11
/usr/src/sys/i386/conf/>
Если у Вашей машины конфигурация i386 - а это 80386, 80486, 80586 (первые пни), P-II, P-III, P-IV, AMD K5, AMD K6, AMD K6-II, AMD K6-III, AMD K7 (Duron, Athlon, Sempron) то делаете то же что и я. Если архитектура отличается - тогда в директории /usr/src/sys/ ищете архитектуру, которая у Вас и делаете там похожие действия :) Архитектуру можно посмотреть, после загрузки таким макаром:
/usr/src/sys/i386/conf/>dmesg | grep CP
CPU: Intel Pentium III (792.22-MHz 686-class CPU)
Подробней про архитектуры можно узнать на www.freebsd.org или в файле /etc/defaults/make.conf. К нему, кстати, мы ещё вернёмся. Наверное, возник вопрос, зачем я так извращённо копировал файл GENERIC - чтобы не забыть дату когда я его делал. Вот мой файл конфигурации ядра:
# Мой файл конфига ядра

machine         i386			# Тип компьютера
#cpu            I386_CPU		# процессор компьютера
#cpu            I486_CPU		# процессор компьютера
#cpu            I586_CPU		# процессор компьютера
cpu             I686_CPU		# процессор компьютера
					# про процы подробней можно 
					# посмотреть LINT
ident           main_kernell		# идентификатор ядра
maxusers        0			# Определяет количество дескрипторов 
					# в системе (0 - значит определяет 
					# "автопилот" :)))

#makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols
					# опции отладки ядра (в жизни,
					# вероятно не пригодится, но
					# если поймаете глюк
					# и захотите сообщить об этом 
					# разработчикам - то пригодится)

options         IPFIREWALL		# встраиваем поддержку файрволла в ядро
options         IPFIREWALL_VERBOSE	# вывод информации об отброшенных пакетах
options         IPFIREWALL_VERBOSE_LIMIT=100	# ограничение, чтоб весь /var
						# логами не засрали
options         IPFIREWALL_FORWARD	# включаем поддержку перенаправления
					# чтобы можно было сделать
					# позрачный прокси-сервер
					# TCP пакетов ядром
options         IPDIVERT		# поддержка IP-маскарадинга
options         DUMMYNET		# поддержка DUMMYNET (искуственное 
					# ограничение пропускной способности 
					# сети, может быть нужно если есть 
					# необходимость урезать канал одним
					# и разжать другим компьютерам)
options		TCP_DROP_SYNFIN		# Это нужно, чтобы сетевые сканеры 
					# не могли определять версию OS на
					# сервере. Также нужно добавить в 
					# /etc/rc.conf строчку
					# tcp_drop_synfin="YES"


#options        MATH_EMULATE            #Support for x87 emulation
					# эмуляция матеметического
					# сопроцессора сейчас он есть
					# во всех процах, поэтому
					# не нужно
options         INET                    #InterNETworking
					# поддержка сети, конкретно -
					# протокола TCP/IP (если у Вас
					# машина без сети - можете
					# смело убирать :))
#options        INET6                   #IPv6 communications protocols
					# Протокол IP версии 6
options         FFS                     #Berkeley Fast Filesystem
					# файловая система FreeBSD
options         FFS_ROOT                #FFS usable as root device [keep this!]
					# Файловая система FFS является
					# фаловой системой ядра
options         SOFTUPDATES             #Enable FFS soft updates support
					# SoftUpdates - повышает скорость
					# работы с файловой системой
options         UFS_DIRHASH             #Improve performance on big directories
					# если у Вас будут директории с
					# миллионами файлов - то этот 
					# пункт нужен. Но на самом деле 
					# никто не знает будут, или нет...
#options        MFS                     #Memory Filesystem
					# файловая система памяти
#options        MD_ROOT                 #MD is a potential root device
					# корневой файловой системой может
					# быть файловая система в памяти 
					# (нужно для бездисковых рабочих 
					# станций )
#options        NFS                     #Network Filesystem
					# Сетевая файловая система - если 
					# будете строить сеть между 
					# фряхами - оно нужно
#options        NFS_ROOT                #NFS usable as root device, NFS required
					# корневым разделом может быть ФС 
					# находящаяся на другом компе. Нужно, 
					# опять-таки только бездисковым
					# рабочим станциям
#options        MSDOSFS                 #MSDOS Filesystem
					# файловая система FAT12, FAT16 и 
					# FAT32. Если будете что-то таскать
					# дискетками на виндовые машины и 
					# обратно - нужно. если будете 
					# монтировать форточные ФС - 
					# тоже нужно.
options         CD9660                  #ISO 9660 Filesystem
					# файловая система CD-ROM дисков
#options        CD9660_ROOT             #CD-ROM usable as root, CD9660 required
					# Корневым разделом может быть
					# файловая система CD-ROM - опять
					# таки для бездисковых рабочих
					# станций
options         PROCFS                  #Process filesystem
					# файловая система процессов
options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
					# совместимость с BSD 4.3 (отдельные
					# приложения начинают себя
					# неадекватно вести, без этого
					# пункта)
#options        SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
					# Задержка при загрузке для того,
					# чтобы SCSI-контроллер успел
					# обнаружить все подключенные к 
					# нему устройства. для современных
					# винтов и контроллеров - 5 секунд,
					# хватает за глаза. Если у Вас есть
					# другие устройства на SCSI-шине - 
					# то курите маны, что шли с ними.
#options        UCONSOLE                #Allow users to grab the console
					# если иксов на машиен нету - 
					# то этот пункт и не нужен
#options        USERCONFIG              #boot -c editor
#options        VISUAL_USERCONFIG       #visual boot -c editor
#options        KTRACE                  #ktrace(1) support
options        SYSVSHM                 #SYSV-style shared memory
					# чё-то там про разделяемую память
					# как я понял, это нужно в первую
					# очередь графическим программам,
					# но на всякий случай оставляю
options        SYSVMSG                 #SYSV-style message queues
options        SYSVSEM                 #SYSV-style semaphores
options        P1003_1B                #Posix P1003_1B real-time extensions
					# Насчёт этого пункта нигде ничё
					# нарыть не удалось, самая подробная
					# инфа в LINT - это какие-то
					# расширения для работы в режиме
					# реального времени....
options        _KPOSIX_PRIORITY_SCHEDULING
					# ну и шедулер, для этого самого
					# Real Time - только вот не
					# вполне понятно, какой нафиг
					# шедулер для реального времени
					# вообще может быть...
options         ICMP_BANDLIM            #Rate limit bad replies
					# ограничение неверных ответов
					# по ICMP
#options        KBD_INSTALL_CDEV        # install a CDEV entry in /dev
					# для всяких клав USB-овых
#options        AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
                                        # output.  Adds ~128k to driver.
                                        # для отладки
#options        AHD_REG_PRETTY_PRINT    # Print register bitfields in debug
                                        # output.  Adds ~215k to driver.
                                        # для отладки

# To make an SMP kernel, the next two are needed
# следующие две опции нужны для многопроцессорных систем
#options        SMP                     # Symmetric MultiProcessor Kernel
#options        APIC_IO                 # Symmetric (APIC) I/O

device          isa			# поддержка шины ISA - советую
					# не удалять этот пункт, даже на самых
					# современных компах, т.к. даже в них
					# есть ситемный таймер, клава и прочие
					# вещи, которые с рождения ИСОвые
					# и такими навсегда и останутся :)
#device         eisa			# Шина EISA - я её видел то пару раз,
					# на 486 компах...
device          pci			# поддержка шины PCI

# Floppy drives 
# флоппики
device          fdc0    at isa? port IO_FD1 irq 6 drq 2 # контроллер флопов
device          fd0     at fdc0 drive 0			# первый флоп
#device         fd1     at fdc0 drive 1			# второй флоп
#
# If you have a Toshiba Libretto with its Y-E Data PCMCIA floppy,
# don't use the above line for fdc0 but the following one:
# какой-то тошибовский флопповод, подрубающийся по PCMSIA (для буков?)
#device         fdc0

# ATA and ATAPI devices
# Контролеры IDE хардов
device          ata0    at isa? port IO_WD1 irq 14	# первый канал
device          ata1    at isa? port IO_WD2 irq 15	# второй канал
device          ata					# ????????
device          atadisk                 # ATA disk drives
					# собственно поддержка ATA-хардов
device          atapicd                 # ATAPI CDROM drives
					# CDROM`ы подключаемые к ATA
#device         atapifd                 # ATAPI floppy drives
					# флопповоды подключаемые к ATA
					# контроллеру (первый раз о таких
					# узнал именно из конфига ядра)
#device         atapist                 # ATAPI tape drives
					# Стриммеры подключаемые по ATA
#options        ATA_STATIC_ID           #Static device numbering
					# статическая нумерация устройств
					# (я вот думал, что она всегда 
					# статическая)

# SCSI Controllers
# SCSI-контроллеры - без комментариев
#device         ahb             # EISA AHA1742 family
#device         ahc             # AHA2940 and onboard AIC7xxx devices
#device         ahd             # AHA39320/29320 and onboard AIC79xx devices
#device         amd             # AMD 53C974 (Tekram DC-390(T))
#device         isp             # Qlogic family
#device         mpt             # LSI-Logic MPT/Fusion
#device         ncr             # NCR/Symbios Logic
#device         sym             # NCR/Symbios Logic (newer chipsets)
#options        SYM_SETUP_LP_PROBE_MAP=0x40
                                # Allow ncr to attach legacy NCR devices when
                                # both sym and ncr are configured

#device         adv0    at isa?
#device         adw
#device         bt0     at isa?
#device         aha0    at isa?
#device         aic0    at isa?

#device         ncv             # NCR 53C500
#device         nsp             # Workbit Ninja SCSI-3
#device         stg             # TMC 18C30/18C50

# SCSI peripherals
# периферийное сказёвое оборудование (собственно диски, накопители на 
# магнитной ленте, CD-ROM`ы)
#device         scbus           # SCSI bus (required)
#device         da              # Direct Access (disks)
#device         sa              # Sequential Access (tape etc)
#device         cd              # CD
#device         pass            # Passthrough device (direct SCSI access)

# RAID controllers interfaced to the SCSI subsystem
# сказёвые рэйды
#device         asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
#device         dpt             # DPT Smartcache - See LINT for options!
#device         iir             # Intel Integrated RAID
#device         mly             # Mylex AcceleRAID/eXtremeRAID
#device         ciss            # Compaq SmartRAID 5* series
#device         twa             # 3ware 9000 series PATA/SATA RAID

# RAID controllers
# рэйд-контроллеры
#device         aac             # Adaptec FSA RAID, Dell PERC2/PERC3
#device         aacp            # SCSI passthrough for aac (requires CAM)
#device         ida             # Compaq Smart RAID
#device         ips             # IBM/Adaptec ServeRAID
#device         amr             # AMI MegaRAID
#device         mlx             # Mylex DAC960 family
#device         pst             # Promise Supertrak SX6000
#device         twe             # 3ware Escalade

# atkbdc0 controls both the keyboard and the PS/2 mouse
device          atkbdc0 at isa? port IO_KBD		# контроллер клавы
device          atkbd0  at atkbdc? irq 1 flags 0x1	# клава
#device         psm0    at atkbdc? irq 12		# PS/2 мышь

device          vga0    at isa?		# Ну, это, куда моник прикручивать :)

# splash screen/screen saver
#pseudo-device  splash

# syscons is the default console driver, resembling an SCO console
device          sc0     at isa? flags 0x100	# системная консоль - 
						# без этого пункта всё
						# работает, но на 
						# локальном мониторе
						# ничего не показывает :))
						# Когда я первый раз на
						# это напролся, то думал, 
						# что убил сервак :))

# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
# это для всяких иксов нужно
#device         vt0     at isa?
#options        XSERVER                 # support for X server on a vt console
#options        FAT_CURSOR              # start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options        PCVT_SCANSET=2          # IBM keyboards are non-std

#device         agp             # support several AGP chipsets
				# Поддержка шины AGP
				
# Floating point support - do not disable.
# какой-то драйвер расширений для математического сопроцессора
device          npx0    at nexus? port IO_NPX irq 13

# Power management support (see LINT for more options)
# управление питанием (ну, вот, зачем серверу засыпать?)
#device         apm0    at nexus? disable flags 0x20 # Advanced Power Management

# PCCARD (PCMCIA) support
#device         card
#device         pcic0   at isa? irq 0 port 0x3e0 iomem 0xd0000
#device         pcic1   at isa? irq 0 port 0x3e2 iomem 0xd4000 disable

# Serial (COM) ports
device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
device          sio1    at isa? port IO_COM2 irq 3
#device         sio2    at isa? disable port IO_COM3 irq 5
#device         sio3    at isa? disable port IO_COM4 irq 9

# Parallel port
#device         ppc0    at isa? irq 7
#device         ppbus           # Parallel port bus (required)
#device         lpt             # Printer
#device         plip            # TCP/IP over parallel
#device         ppi             # Parallel port interface device
#device         vpo             # Requires scbus and da


# PCI Ethernet NICs.
#device         de              # DEC/Intel DC21x4x (``Tulip'')
#device         em              # Intel PRO/1000 adapter Gigabit Ethernet Card
				# (``Wiseman'')
#device         txp             # 3Com 3cR990 (``Typhoon'')
#device         vx              # 3Com 3c590, 3c595 (``Vortex'')

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
#device         miibus          # MII bus support
                                # Вообще, MII bus нужен для всех современных
                                # сетевух, поэтому его комментировать не надо.
                                # у меня сетевухи исовые, потому закомментил.
#device         dc              # DEC/Intel 21143 and various workalikes
#device         fxp             # Intel EtherExpress PRO/100B (82557, 82558)
#device         pcn             # AMD Am79C97x PCI 10/100 NICs
#device         rl              # RealTek 8129/8139
#device         sf              # Adaptec AIC-6915 (``Starfire'')
#device         sis             # Silicon Integrated Systems SiS 900/SiS 7016
#device         ste             # Sundance ST201 (D-Link DFE-550TX)
#device         tl              # Texas Instruments ThunderLAN
#device         tx              # SMC EtherPower II (83c170 ``EPIC'')
#device         vr              # VIA Rhine, Rhine II
#device         wb              # Winbond W89C840F
#device         xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
#device         bge             # Broadcom BCM570x (``Tigon III'')

# ISA Ethernet NICs.
# 'device ed' requires 'device miibus'
#device         ed0     at isa? disable port 0x280 irq 10 iomem 0xd8000
#device         ex
#device         ep
#device         fe0     at isa? disable port 0x300
# Xircom Ethernet
#device         xe
# PRISM I IEEE 802.11b wireless NIC.
#device         awi
# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
# exists only as a PCMCIA device, so there is no ISA attachment needed
# and resources will always be dynamically assigned by the pccard code.
#device         wi
# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
# mode (the factory default). If you set the switches on your ISA
# card for a manually chosen I/O address and IRQ, you must specify
# those parameters here.
device          an
# The probe order of these is presently determined by i386/isa/isa_compat.c.
#device         ie0     at isa? disable port 0x300 irq 10 iomem 0xd0000
#device         le0     at isa? disable port 0x300 irq 5 iomem 0xd0000
device          lnc0    at isa? disable port 0x280 irq 10 drq 0
#device         cs0     at isa? disable port 0x300
#device         sn0     at isa? disable port 0x300 irq 10

# Pseudo devices - the number indicates how many units to allocate.
pseudo-device   loop            # Network loopback
				# сетевая петля
pseudo-device   ether           # Ethernet support
				# поддержка Ethernet
#pseudo-device  sl      1       # Kernel SLIP
#pseudo-device  ppp     1       # Kernel PPP
#pseudo-device  tun             # Packet tunnel.
pseudo-device   pty             # Pseudo-ttys (telnet etc)
				# псевдо консоли (ssh, telnet)
#pseudo-device  md              # Memory "disks"
#pseudo-device  gif             # IPv6 and IPv4 tunneling
#pseudo-device  faith   1       # IPv6-to-IPv4 relaying (translation)

# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device   bpf             #Berkeley packet filter
				# псевдо-устройство, используется
				# программами подсчёта траффика,
				# сетевыми сканерами...

# USB support
#device         uhci            # UHCI PCI->USB interface
#device         ohci            # OHCI PCI->USB interface
#device         usb             # USB Bus (required)
#device         ugen            # Generic
#device         uhid            # "Human Interface Devices"
#device         ukbd            # Keyboard
#device         ulpt            # Printer
#device         umass           # Disks/Mass storage - Requires scbus and da
#device         ums             # Mouse
#device         uscanner        # Scanners
#device         urio            # Diamond Rio MP3 Player
# USB Ethernet, requires mii
#device         aue             # ADMtek USB ethernet
#device         axe             # ASIX Electronics USB ethernet
#device         cue             # CATC USB ethernet
#device         kue             # Kawasaki LSI USB ethernet

# FireWire support
#device         firewire        # FireWire bus code
#device         sbp             # SCSI over FireWire (Requires scbus and da)
#device         fwe             # Ethernet over FireWire (non-standard!)

Я его специально выложил в таком непотребном виде, просто закомментировав ненужные строки - чтобы было наглядно видно, что я убрал, а что оставил. Также были добавлены несколько строк непосредственно мною - для поддержки IPFW и ipforward.
/usr/src/sys/i386/conf/>cd ../../../
/usr/src/>make buildkernel KERNCONF=main_kernell.2005-26-11 && \
make installkernel KERNCONF=main_kernell.2005-26-11
По окончании инсталляции заглянем в /
/usr/src/>cd /
//>ls -l | grep kern
-r-xr-xr-x   1 root  wheel  1677713 Nov 26 20:54 kernel
-r-xr-xr-x   1 root  wheel  4388756 Jan 21  2005 kernel.GENERIC
-r-xr-xr-x   1 root  wheel  4388756 Jan 21  2005 kernel.old
//>
Ядро стало меньше почти втрое. Перезагружаемся командой shutdown -r now, и проверяем всё ли работает нормально. У меня всё прекрасно подцепилось не считая ругани отдельных приложений на пропавший протокол IPv6 - на эту тему надо копать их конфиги, или просто забить (но это неверный метод!).
   Теперь рассмотрим вариант, что у вас что-то неполучилось. В простых случаях, например, не работает сеть - надо просто изменить конфиг и пересобрать ядро. Для этого можно и локально поработать недолго :) В более сложном варианте - фря не грузится вообще - такое вполне возможно, если Вы на горячую руку ампутировали что-то нужное - например подержку SCSI-контроллера на котором висят винты, или вообще ампутировали файловую систему из ядра :) Бывает и такое. Тоже не надо терять голову, проблема решается сравнительно просто - надо загрузиться со старым ядром и заново пересобрать новое. На моменте загрузки, когда идёт 10-секундный обратный отсчёт времени (у меня, кстати, 2-х секундный :)) надо сделать то, что он просит - нажать любую клавищу, кроме [Enter], я, например, жму 'Esc':

Hit [Enter] to boot immediately, or any other kay for command prompt.
Booting [kernel] in 8 seconds...

Type '?' for a list of commands, 'help' for more detailed help.
ok _
Как итог мы получаем приглашение загрузчика. Советую ознакомится со списком команд - их совсем мало, и времени это немного займёт. Теперь, выгружаем новое ядро из памяти, загружаем туда GENERIC (или Ваше старое ядро, если на машине какой-то нестандартный набор железа), и загружаем ОС:
ok unload
ok load kernel.GENERIC
/kernel.GENERIC text=0x3418b5 data=0x4c0e0+0x34af4 syms=[0x4+0x474b0+0x4+0x5037c]
ok boot
После загрузки собираем новое ядро и снова пробуем.