Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  начальная настройка
  Установка FreeBSD
  DUMMYNET
  Сборка ядра
  IPFW
  обновление
  portsnap
  CP1251 на FreeBSD
  loader.conf
  defaults/rc.conf
  jail
  Ntpdate/Ntpd
  diskless
  Обновление мира ("world")
  PBR & PF
  bsnmpd
  newsyslog
  if_bridge
  make.conf
  PBR & IPFW
  Работа с HDD
  sshd & AD
  Удаленное разбиение HDD
  Заметки об IPFW
  FreeBSD на VDS
  CVSUP и софт через Proxy
  i386=>amd64
  ALTQ в IPFW
  Виртуальный свитч
  VPN сервер по средствам mpd5.
  NTP
  sysupdate
  mpd5 L2TP
  freebsd + webcamera
  IPFW policy (PBR)
  RAID1 via LAN
  зеркальный RAID1 на ОС FreeBSD
  4.x => 7.x
  portdowngrade
  Быстрое обновление портов
  ipfw nat
  Использование csup
  UTF-8 console
  dump/restore
  hast carp zfs ucarp cluster
  ng_nat
  Wi-FI роутер + DHCP + DNS
  backup/restore & ZFS
  Обновление ОС и портов через SVN.
  подсчёт трафика
  программы
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> настройка —> Сборка ядра

Сборка ядра и возможные проблемы при сборке.

Автор: lissyara.


    А зачем вообще нужно собирать собственное ядро? Со стандартным ядром - 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

После загрузки собираем новое ядро и снова пробуем.



Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?f=8&t=8334.

размещено: 2005-11-30,
последнее обновление: 2006-02-21,
автор: lissyara

оценить статью:

den, 2005-11-30 в 18:22:28

пиздатенько,но пробывать пока не буду,(разве что на комто:)).Всё время что то меняю, вставляю и т.д.

Pattern®, 2006-02-21 в 9:44:57

Ну и зря, den. Пересборка ядра на unix системах, как говорил дедушка Ленин "архинужно и архиважно". Поотрубать половину ненужной ботвы из ядра и система будет не загружаться, а влетать.
lissyara, как всегда - респект!

abigor(собака)llaff.com, 2006-02-22 в 11:24:59

>у меня, кстати, 2-х секундный
вопрос, как ты это сделал. и еще, если гузиться в safe mode он пароль у рута не просит, можноли сделать чтоб просил?

Статья хорошая, я в свое время до пнятия всех параметров доходил методом тыка =) небыло ни где вот такого конфига с комментариями на родном языке =)

lissyara, 2006-02-22 в 12:05:15

файлик /boot/loader.conf - настройки из него перекроют те, что в /boot/defaults/loader.conf Советую хотяб пробежаться по `man loader.conf`

А насчёт рута - яндекс + `secure level`...

Moff, 2006-04-10 в 8:49:41

Еще раз повторюсь ,,,,,,,заипись что есть такие люди как ты Лисяра РЕСПЕКТ)))))))))))

ad0s1a, 2006-04-29 в 20:29:27

>вопрос, как ты это сделал. и еще, если гузиться в safe mode он
>пароль у рута не просит, можноли сделать чтоб просил?

надо в /etc/ttys
comsole none uncnown off secure
поправить на
comsole none uncnown off insecure

Спасибо человеку делающему этот сайт и не ленящемуся делиться опытом.

urgor, 2006-05-10 в 11:54:43

В шохе ядра лежат не в корне, сам счас наступил :)
/boot/kernel/kernel  — собранное
/boot/kernel.old/kernel  — старое

lissyara, 2006-05-10 в 12:08:10

ага. а ещё там дженерика по дефолту нет :)
потому надо сразу сохранить его...

bonh, 2006-07-19 в 6:23:30

Не могу собрать ядро с опцией:
options         ICMP_BANDLIM            
 Уже давно пытаюсь и в нете по указанному вопросу ни чего не находил. Да ветвь фри 5.

Maveric, 2006-08-07 в 14:32:40

#options        APIC_IO

Немного не то. опция apic

lissyara, 2006-08-07 в 15:06:27

А это от версии FreeBSD кажися зависит.

Maveric, 2006-08-08 в 17:32:53

Тогда уточню что для 5.4 и 6.1 не то. А то случайно себе в конфиг добавил, а оно решило отказаться от сборки

E_K, 2006-12-23 в 17:24:04

Спасибо громадное, все прошло как по маслу, разве что в 6.0 все  чуть не так. Почувствовал себя увереннее, а то все мои начинания заканчивались фиаско. УВАЖУХА :)

Grin, 2007-01-04 в 10:02:04

Спасибо класс сайт и статья в частности  много нужной информации нашел для себя

Maklay, 2007-01-22 в 9:34:34

Эти девайсы я бы всетаки оставил:
#device         scbus           # SCSI bus (required)
#device         da              # Direct Access (disks)
#device         cd              # CD
#device         pass            # Passthrough device (direct SCSI access)

hfnclkju, 2007-01-30 в 17:52:57

Ничего не пойму, а на 6.1 совсем не собирается ядро.

KaMa-CyTpA, 2007-01-30 в 19:38:50

make buildkernel KERNCONF=main_kernell.2005-26-11 && \
make installkernel KERNCONF=main_kernell.2005-26-11

Сорри если ламерский квест - а я раньше делал make cleandepend && make clean && make all && make install

Это получается неправильно?

KaMa-CyTpA, 2007-01-31 в 18:00:13

Сделал как написано - всё красиво, но вываливается с ашЫпкой - и всё тут.
Добавил
device miibus
заработало...

KaMa-CyTpA, 2007-02-28 в 12:45:43

Только что столкнулся с трабблой - пересобрал ядро - а он ругается. Старое не загружается. Оказалось что в fstab написано /dev/ad4s1b а после перекомпиляции стало /dev/ad0s1b
В однопользовательском режиме забрался, переделал fstab - загрузилось.

Antichrist, 2007-04-03 в 7:24:25

Огромное спасибо за этот ресурс, чтож я раньше сюда не заходил то...

VasyK, 2007-04-26 в 17:28:17

Для FreeBSD 5.x опция "options ICMP_BANDLIM" была удалена из конфигурационного файла ядра. Теперь она включается в /etc/rc.conf
icmp_bandlim="YES"

toptyg, 2007-05-10 в 2:36:53

про
rm /usr/obj
перед сборкой не написано

kovenanter, 2007-05-10 в 9:23:55

Статья супер. Сайт тоже.

Yura, 2007-05-30 в 12:17:39

порстроил 2 сервака спасибо lissyarе только прикрутил IPFW  и все путем бегает теперь ночью сплю спокойно

schizoid, 2007-06-04 в 9:50:06

#options        ATA_STATIC_ID           #Static device numbering
                   # статическая нумерация устройств
                   # (я вот думал, что она всегда
                   # статическая)

не совсем так. к примеру есть 2 винта, 1-й подключен на первом контроллере мастером, 2-й на второй контроллер мастером.
соответственно первый бедет ad0xx , а второй ad2xx.
вчера вот наткнулся на такие грабли, оно мне сделало по-порядку, стало ad0xx, ad1xx
и почему-то винт , который стал вместо ad2xx -> ad1xx, невозможно было ни приментировать, ни fsck пройтись. добавил ту галку в ядре, пересобрал, стало все ок.

ashgdw, 2007-06-04 в 14:58:26

Извеняюсь за ламерский вопрос. Как посмотреть какая сетевая карта установлена в системе или какой она соответствует в конфиге ядра???

При загрузке проскакивала некая PCI Net, но в файле такой карты небыло поэтому я закоментил все сетевухи. После всех манипуляций эта карта пропала, и сеть перестала работать. Извращаюсь под VMWare с 6.2.

schizoid, 2007-06-04 в 17:04:05

ну вообще мона глянуть ifconfig
на вмваре у мну lnc0
а еще dmesg много чего инетерсного выводит ;)

K2el, 2007-06-06 в 8:39:29

В FreeBSD 6.x надо еще
device   random        # Entropy device
оставить, так как не будет работать ssh
prng is not seeded

MSI, 2007-06-22 в 22:08:52

>Только что столкнулся с трабблой - пересобрал ядро - а он >ругается. Старое не загружается. Оказалось что в fstab >написано /dev/ad4s1b а после перекомпиляции >стало /dev/ad0s1b

>#options        ATA_STATIC_ID           #Static device numbering
>                    # статическая нумерация устройств
>                    # (я вот думал, что она всегда
>                    # статическая)

Привело к описанной ошибке

В статическом режиме контролер рассматривается как железяка соответственно мы имеем 2 канала по 2 устройства 0-1 и 2-3 соответственно PrMaster PrSlave и SecMaster SecSlave
для фрюхи ad0 ad1 ad2 ad3.
И если переставить винт с PriMaster на SecMaster то тома на нем из ad0 станут ad2.
Если выключить ATA_STATIC_ID, как советует автор, то получаем динамическую нумерацию не по каналам и устройствам а по устройствам, т. е. винтам. Проще сказать так, если у нас стоял один винт PriMaster и мы выключили эту опцию, то после запуска нового ядра номер разделов не изменится. Теперь если переключить, кабелем или перемычками, винт на место любого другого, например SecSlave, он всеравно останется ad0! Он один в машине ;)
Соответственно добавив второй винт, система будет определять их старшинство по порядку подключения
Например мы включим 2 винта на PriSlave и SecMaster
Получим PriSlave - ad0 и SecMaster - ad1.




MSI, 2007-06-22 в 22:19:24

Начиная от
# PCI Ethernet NICs.
до
# Pseudo devices - the number indicates how many units.....

необходимо внимательно просмотреть все виды сетевых карт которые перечислены ниже. И выбрать вашу! Если у вас PCI карта или интегрированная на материнку, то обязательно включить
device         miibus          # MII bus support
Если не знаете какая то включите все и после загрузки с новым ядром наберите ifconfig он покажет какие система видит сетевые, остальные закоментируйте и пересоберите ядро.

Не у всех же Aironet WiFi карты. ;)

MSI, 2007-06-22 в 22:30:28

device         psm0    at atkbdc? irq 12        # PS/2 мышь

Лучше включить и добавить
options         SC_TWOBUTTON_MOUSE
Тогда мышка в консоли может выделять, копировать и вставлять текст.


Kot_igruN, 2007-07-05 в 15:06:56

В статье почему-то не указано, как собирать ядро, если установлены исходники не всей системы, а только ядра.
cd /usr/src/sys/i386/conf
 1.

     Запустите config(8) для того, чтобы сгенерировать исходные тексты ядра.

     # /usr/sbin/config MYKERNEL

  2.

     Перейдите в каталог, в котором будет собираться ядро. Запущенный как показано выше config(8) выведет имя этого каталога.

     # cd ../compile/MYKERNEL

     Для FreeBSD версий более ранних, чем 5.0, вместо этого используйте:

     # cd ../../compile/MYKERNEL

  3.

     Соберите ядро.

     # make depend
     # make

  4.

     Установите новое ядро.

     # make install
Взято из хендбука, но сейчас они это оттуда по непонятным причинам убрали, хотя актуально. Ну неохота мне траффик тратить и из инета выкачивать все исходники, да и пятую точку от стула отрывать, чтобы с диском до серверной дойти ломает.

barsykoff, 2007-07-26 в 17:12:12

Все сделал как написано в статье, но после сборки:

# cd /boot
# ls -l | grep kern
drwxr-xr-x 2 root wheel  9728 Jul 26 16:57 kernel
drwxr-xr-x 2 root wheel  9728 Jul 26 15:54 kernel.GENERIC
drwxr-xr-x 2 root wheel  9728 Jul 26 12:32 kernel.old

Почему-то меньше не стало...

barsykoff, 2007-07-27 в 10:41:25

Ступил :)
# cd /boot/kernel
# ls -l | grep kern
-r-xr-xr-x 1 root wheel  3056704 Jul 26 16:35 kernel
# cd ../kernel.old
# ls -l | grep kern
-r-xr-xr-x 1 root wheel  7050706 Jan 12 2007 kernel

Меньше стало в 2 раза

oleg, 2007-08-09 в 8:51:55

Я не увидел строчки в разделе
#Pseudo devices
device random
ведь она очень необходима при использование sshd...без неё в системе отсутствует /dev/random и /dev/urandom, необходимые для генерации ключей для ssh. что это: намерено выкинута эта строчка из теста статьи или автор просто забыл её включить? поясните пожалуйста

1, 2007-08-31 в 18:38:02

>Я не увидел строчки в разделе
>#Pseudo devices
>device random

ПРоцедура описана для 4.х ветки
Рандомы появились позднее

Z0RG, 2007-09-03 в 4:31:05

Для 6-ой ветки посмотреть бы какие-нибудь фичи. Третий день уже конфиг пишу, поподробнее почитать хотелось бы про некоторые опции, да и может увидел бы новое что-то, что в GENERIC нет по умолчанию. :) Может кто поделиться ссылочкой?

Fktrcfylh, 2007-10-07 в 23:24:37

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

Pattern, 2007-10-08 в 11:05:15

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

zl, 2007-10-26 в 19:13:39

Респект и уважуха :)))))
Молоток лисяра ты крутой чувак, побольше бы таких сайтов и жизнь начинающего админа была бы легче...
Я только вливаюсь в ряды free и мне сайт очень помогает...
Супер только что собрал ядро...
Дерзай дальше лисяра

E-Wind, 2007-11-26 в 13:45:12

Переустнавливал систему удаленно, по SSH.

Перед тем как уйти в перезагруз, надо добавить в настройки firewall-а разрешающе правило дя себя, ну а я только учусь, поэтому для начала для 6.2 в rc.conf сделал его открытым...

firewall_enable="YES"
firewall_type="OPEN"

smilealex, 2007-11-26 в 15:11:38

firewall_enable="YES"
firewall_type="OPEN"

это если ядро пересобирается с поддержкой фаера..
ещё стоит обратить внимание на /etc/fstab
в частности, если система после установки отдетектила винты как /dev/ad4s.. то после пересборки вероятно они уже будут как /dev/ad0s..

DM, 2008-02-21 в 0:12:20

В 7ю ветку
options    TCP_DROP_SYNFIN    
уже встроена по умолчанию..

VVD, 2008-03-20 в 5:33:37

#device         atapifd                 # ATAPI floppy drives
                   # флопповоды подключаемые к ATA
                   # контроллеру (первый раз о таких
                   # узнал именно из конфига ядра)
Это магнитооптика - всякие там ZIP-ы и т.д. Сталкивался с такими и заводил их на фре (кажимь именно на четвёрке).

Кто-то о сетевухе в VMWare српшивал - во фре 7.0 (может и в 6.3) lnc уже нет. Её заменила le.

pwlad, 2008-04-23 в 12:37:04

>ядро на современных машинах пересобирается минут 5, максимум 7

на пне4 1,5ггц компилировалось ядро generic без редактирования в разы дольше указанного.
в хандбуке написано "Если вы хотите обновить ядро быстрее или построить только определённые модули, то вам нужно отредактировать файл /etc/make.conf перед началом процесса сборки ядра".
очевидно здесь копать надо.
кто из гуру объяснит новичку во фре потолковее.

lisergey, 2008-04-23 в 14:02:53

вот пример моего /etc/make.conf на ноутбуке
что закоментить для серверов, понятно из комментариев

особенности:
1) я пользую OPENSSL из портов, поэтому все порты собираю с
WITH_OPENSSL_PORT=yes
2) пользую BIND (он же named) из портов, но с опцией установки WITH_REPLACE_BASE=true
3) вместо "родного" сендмайла ставлю постфикс из портов
поэтому NO_SENDMAIL=true


# full version is /usr/share/examples/etc/make.conf
#
#
CFLAGS= -O2 -pipe
#
#MODULES_WITH_WORLD=yes
CPUTYPE?=i686
#COMPAT4X=yes
#
# Для запрещения сборки некоторых частей базовой системы:
NO_ATM=true             # do not build ATM related programs and libraries
NO_BIND=true            # не собирать BIND
#NO_BLUETOOTH=true      # do not build Bluetooth related stuff
NO_FORTRAN=true         # не собирать g77 и соответствующие библиотеки
NO_GAMES=true           # do not build games (games/ subdir)
NO_I4B=true             # не собирать пакет isdn4bsd
NO_INET6=true           # do not build IPv6 related programs and libraries
NO_IPFILTER=true        # do not build IP Filter package
NO_LPR=true             # не собирать lpr и соответствующие программы
NO_NIS=true             # do not build NIS support and related programs
NO_OPENSSL=true         # do not build OpenSSL (implies NO_KERBEROS/NO_OPENSSH)
#NO_PF=true              # do not build PF firewall package
#NO_PROFILE=true        # Не компилировать библиотеки для профайлера
NO_RCMDS=true           # do not build or install BSD r* commands (rsh, etc).
NO_SENDMAIL=true        # do not build sendmail and related programs
NO_UUCP=true            # не собирать uucp и подобные программы

# use OPENSSL from port, not from base
WITH_OPENSSL_PORT=yes

# set  wget instead of fetch
FETCH_CMD=/usr/local/bin/wget -c --tries=3 --timeout=60
#FETCH_CMD=/usr/bin/fetch -a
DISABLE_SIZE=yes

#
DOC_LANG=ru_RU.KOI8-R
#
#
WITH_SETUID_LUIT=yes
WITHOUT_LDAP=yes
#
# added by use.perl 2007-11-07 10:48:16
PERL_VER=5.8.8
PERL_VERSION=5.8.8

WhitePawn, 2008-05-20 в 15:34:36

У меня собстевнно проблема почему валиЦо эта error
Помагите кто знает! freebcd 7.0

*** Error code 1

Stop in /usr/obj/usr/src/sys/main_kernell.2008-20-05.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.

Pattern, 2008-05-20 в 18:09:48

Во первых, мало информации по ошибке.
Во-вторых, на форум.

skeletor, 2008-05-20 в 23:39:19

В 7-ке не вылазит ошибка при комментировании этой строки :
#options        INET6  
даже если указать в /etc/make.conf
NO_INET6=true          
всё равно ошибка.
Причём при раскомментировании строки всё нормально.
Может кто-то добился, как отключить поддержку ipv6?

skeletor, 2008-05-20 в 23:42:29

2Pattern
а вы попробуйте скомиллить ядро 7-ки без поддержки ipv6 и посмотрите, сколько вам выдаст информации об ошибке!

Dog, 2008-05-20 в 23:51:03

2skeletor:
А прежде чем ядро собирать /usr/src/sys/conf/NOTES и /usr/src/sys/<arch>/conf/NOTES прочитать внимательно - религия не позволяет?
options SCTP отключи - и будет тебе счастье.

И вообще, как уже сказали - на форум. Тем более что описание ошибки действительно позволяет только надеяться на телепатов: все содержательные сообщения о причинах ошибки упущены.

Dog, 2008-05-20 в 23:53:00

Э, пардон - по поводу ошибки это к WhitePawn :)

DoMeN, 2008-05-27 в 23:46:33

Если не получилась сборка ядра то
пишем
boot kernel.old

varnie, 2008-05-30 в 6:31:04

система не смогла как-то забутиться с:
#options        ATA_STATIC_ID
пришлось раскомментить.

andrew, 2008-10-25 в 22:42:12

спасиб огромное!
Респект!!
И Мега респект за ресурс в общем!!

ewgen, 2008-11-17 в 16:01:00

Вниманию публики:
тут с утреца седня пришлось ставить сервант новый с 4 гигами оперативы, так вот необходимо добавлять
options PAE
и читать внимательно файлик
/usr/src/sys/i386/conf/PAE
добавляя и выкидывая с ядра драйверы девайсов USB и Wireless. Иначе игнорилось полгектара оперативы.
http://www.freebsd.org/cgi/man.cgi?query=pae&sektion=4

gonzo111, 2008-12-04 в 11:32:24

Если не получилась сборка ядра то в меню отчета жмем 6 и там уже ядро нужно другое грузить
А если перед меню нажать esc, как вроде как написано  то load kernel приводит к зависаню и паденю в корку-
BTX halted
3 дня эти грабли ковырял

receptor, 2009-02-09 в 1:37:59

Спасибо, статья весьма полезная.
Опции другие в более новых версиях фряхи разве.

dimas, 2009-03-04 в 16:29:38

Все прекрасно собралось. Спасибо.
Разве что было несколько ошибок , но тут сам тупанул, маны читать нада.

Solar, 2009-03-04 в 21:03:12

А у лисяры нет желания обновить статью под 7-ю ветку. И где можно глядеть доп. параметры, которых нет в дженерике?

serrrega, 2009-04-30 в 14:07:25

при команде  '/root/>'make buildkernel KERNCONF=main_kernell.2009-30-04
выдаёт такое сообщение:
make: don't know how to make buildkernel. Stop

Что это может быть?

ewgen, 2009-04-30 в 14:14:58

перейди в каталог /usr/src/>  и уже оттуда свое >make buildkernel KERNCONF=main_kernell.2009-30-04

serrrega, 2009-04-30 в 16:29:11

при команде  '/root/>'make buildkernel KERNCONF=main_kernell.2009-30-04
выдаёт такое сообщение:
make: don't know how to make buildkernel. Stop

Что это может быть?

staskur, 2009-05-07 в 8:38:20

наверняка конечно все знают, но напомню...

получить ВСЕ ВОЗМОЖНЫЕ опции, которые можно включить в ядро с которым вы работаете, можно с помощью команды

make LINT
и потом поразглядывать етот файлик...

Fern, 2009-06-23 в 23:15:32

Эмм... Недопечатка - /usr/src/sys/i386/conf/>dmesg | grep CPU
А то вывалиет инфу обо всём, что есть в системе.

Mite, 2009-06-26 в 11:31:51

2starkur
в 7-й ветке (за 6-ю не скажу) этот LINT содержит только опции без комментариев
поэтому все равно нужно изучать /usr/src/sys/conf/NOTES и /usr/src/sys/<arch>/conf/NOTES

Alex_M, 2009-07-11 в 3:29:47

За пример взял статью,всё супер, только всё равно читал /usr/src/sys/conf/NOTES
и добавлял нужные, дополнительные опции. Одно не правильно сделал, что послушал совет и исправил fstab по советам, в итоге пришлось громко кричать в техподдержку))) А в общем очень полезный и нужный ресурс. Спасибо Лёха!

slatim, 2009-09-14 в 15:25:49

Все получилось!! Друзья, подскажите а какой командой можно посмотреть для надежности какое ядро загрузилось :)

LiSergey, 2009-09-14 в 15:55:24

да, посмотреть какое ядро загрузилось, можно через
<pre>less /var/run/dmesg.boot</pre>
или
<pre>uname -a</pre>

а при загрузке можно нажать 6 и попасть в режим загрузчика.
unload kernel
load /boot/другое_ядро/kernel
поможет загрузить другое ядро,  например /boot/kernel.old/kernel
так же можно подгрузить ядренный модуль, если его нет в /boot/loader.conf и получить список возможных файлов
ls /boot/

LiSergey, 2009-09-14 в 15:57:15

Уважаемый Лиссяра, пожалуйста удали этот камент и теги <pre> из предыдущего.

а возможность <code> или <pre> была бы хороша чтобы отделять код от слов.

alik, 2009-09-25 в 11:06:09

Ребята подскажите пжл, поставил как обычно FreeBSD 7.2 на новенький комп, конфиг такой P4 3GHz, RAM 1GBG.
И во время загрузки он мне пишет
SMP CPU #1 launched
начинаю копатся в инете там указывают на SMP
начинаю ковырять ядро, оно уже там есть
options        SMP                     # Symmetric MultiProcessor Kernel
#options        APIC_IO                 # Symmetric (APIC) I/O

Как же тогда решить эту проблему?????

Pattern, 2009-09-25 в 19:54:24

alik, а что тебе в этом не нравится?
ЗЫЖ А вообще для подобных вопросов есть форум

alik, 2009-09-26 в 8:03:20

Pattern

наткнулся на один совет сейчас пробую его
I disable ACPI from the boot menu


а то ошибка эта реально достала
SMP CPU #1 launched
acd0: TIMEOUT - READ_BIG retrying

Seltsam, 2009-10-08 в 19:45:34

Собирал ядро на 7.2
Мать - ASUS P5BV-M (серверная), винты - SATA, остальное не важно в принципе.
Добавлял опции для файрвола, SMP, PAE. Отключил MD_ROOT и всё для NFS. Также отключил девайсы atapifd, atapist.
При сборке ядра была куча ошибок на устройства SCSI типа aha, ahb, adv ... и RAID-ы — коментить и запускать пересборку запарился. пошёл методом тыка - раскоментил atapifd, atapist — и о чудо! - собралось дальше без проблем.
Возможно это совпало с последним закоменченым девайсом с ошибкой, но... - думаю возьмите на заметку. Пересобирать ещё раз не могу, нет времени - готовлю сервак к работе вместо умершего.

Seltsam, 2009-10-09 в 11:57:52

В добавок к моему предыдущему посту. Вчера не изложил все мысли...
Логично предположить, что девайс atapist необходим был для всяких устройств, на которые потом сыпались ошибки.
Поэтому - прежде чем чего-то отключать, надо подумать чем это будет чревато и не жаловаться потом на косяки и ошибки при компиляции =)
Это так, на заметку, если кто ещё не знает из новичков.

hanty, 2009-10-17 в 10:19:32

Если будете компилировать в 8.0 amd64 не удивляйтесь если:
1) ваш процессор определится как HAMMER - это общее обозначение всех х64 процессоров.
Не пугай тесь если ваш quad (четырёхядерник) определится как AMD K8 (собирайте всё равно как HAMMER).
Советуют прописывать в make.conf
CPUTYPE=nocona
но имейте ввиду что nocona - это одноядерник, даже не стал смотреть как он себя поведёт с SMP.
2) IPV6 отключить теперь нельзя - выдаст ошибку, может в релизе поправят
3) Promise Supertrak SX6000 коментировать обязательно - ибо выбрасывает с ошибкой.

dd, 2009-12-08 в 8:35:18

Товарищщи! Напомните как восстановить файл конфигурации ядра?!

s.romanov, 2009-12-08 в 12:05:03

без опции options INCLUDE_CONFIG_FILE в ядре - никак.
man config

vadimdenisov, 2009-12-11 в 17:30:54

s.romanov, 2009-12-08 в 12:05:03

без опции options INCLUDE_CONFIG_FILE в ядре - никак.
man config

Чё за ересь?
ненашёл у себя такой опции не в одном ядре. Отпишитесь подробнее в форум

s.romanov, 2009-12-11 в 20:48:44

make LINT; cat LINT |grep INCLUDE
config -x /boot/kernel/kernel
а еще, в 7.0 появилось
sysctl -b kern.conftxt

Dog, 2009-12-11 в 22:21:36

2 s.romanov:
А зачем так сложно-то?
grep INCLUDE /usr/scr/sys/conf/NOTES - и никаких лишних телодвижений.

Mainbrain, 2010-03-01 в 9:25:47

#options        ATA_STATIC_ID
да) сочные грабельки
жаль до сборки комменты не прочел.
система желает mountroot  
придется редактировать каким то образом fstab

receptor, 2010-03-03 в 0:49:57

Mainbrain, Ну редактировать обычным способом.
mountroot всё же выполнить нужно и загрузится без проблем.

Igor24, 2010-03-04 в 9:29:07

Попробывал пересобрать ядро по этой статье. (Мне нужно было добавить только поддержку файрвола, остальное я не трогал) Ядро вроде скомпилировалось. Установилось, но почему-то все осталось по преженему и даже /boot/kernel.old нету. FreeBSD 7.2 release

Nks, 2010-03-11 в 17:55:41

The TCP_DROP_SYNFIN kernel option is now included in the kernel by default. The net.inet.tcp.drop_synfin sysctl variable still defaults to 0.

Какбы намекаю, что TCP_DROP_SYNFIN уже давно (с 7ой версии вроде как) включен в ядро по дефолту. Для включения опции редактируем sysctl net.inet.tcp.drop_synfin=1

2Igor24, плохо пробовали. Идите на форум.

Outsider, 2010-08-31 в 13:29:47

Касательно - P1003_1B в 8 он -
options         P1003_1B_SEMAPHORES   -
Поддержка семафоров POSIX. В ветке 8.1 имеет статус very xperimental...

----------------------------------------
# p1003_1b_semaphores are very experimental,
# user should be ready to assist in debugging if problems arise.

MaxS, 2010-10-10 в 10:08:52

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

make kernel KERNCONF=kernelname

Antonio, 2011-10-30 в 14:10:44

Vasya, можно и так и так.

Lank, 2012-07-13 в 21:32:44

Добавлю полезную примочку для установки ядра (для меньших проблем с работой на удаленных серверах)
make installkernel KERNCONF=test INSTKERNNAME=kernel.test
nextboot -k /boot/kernel.test

для того чтобы ядро поставилось в /boot/kernel.test/ а не перезаписывало рабочее.

Dmitry, 2012-09-21 в 2:09:42

su
cd
fastest_cvsup -c ru
ee /root/9rel-supfile
cat ee /root/9rel-supfile
Code:
*default host=cvsup7.ru.freebsd.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_9_0
*default delete use-rel-suffix
*default compress
src-all
csup 9rel-supfile
..
ETA: 5 Hours..
ok.
uname -a
FreeBSD estaf.users.trc.local 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan 3 07:46:30 UTC 2012 root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64

cd /usr/src/sys/amd64/conf/
cp GENERIC ROUTER
ee ROUTER
ok

cd /usr/src/
pwd
/usr/src
ok

make buldkernel KERNCONF=ROUTER
make: don't know how to make buldkernel. Stop

Мфынф, 2021-03-24 в 0:30:35

АЛЕКС КЕДА ЛОХЪ


Оставьте свой комментарий:
Ваше имя:   *
e-mail:  
жирный
наклонный
подчёркнутый
ссылка
цвет
Нынешний год:   *
 


Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS

Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT

В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat

Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp

Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration

Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster

HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS

История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire

Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной

Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server

Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs

Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec

Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash

Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT

Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3

Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN

На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm

Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
2010-04-30, gonzo111
proftpd file auth&quota

Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
2010-04-22, lissyara
tw_cli

Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
2010-04-14, fox
MySQL Master+Master

MySQL (Master Master) and (Master Slave) Как настроить репликацию…
2010-03-09, terminus
DNS zones

Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
2010-03-09, aspera
Squid+AD (group access)

Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
2010-03-02, BlackCat
Шлюз: Часть 4

Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
2010-03-01, BlackCat
Шлюз: Часть 3

Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
2010-03-01, BlackCat
Шлюз: Часть 2

Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
2010-03-01, BlackCat
Шлюз: Часть 1

Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
2010-02-23, Morty
darkstat

Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
2010-01-23, gonzo111
squid+sams+sqstat

Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
2009-12-19, schizoid
mpd5 + radius + ng_car + Abills

Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
2009-11-16, lissyara
UFS->ZFS

Удалённая миграция с UFS на ZFS. Загрузка с раздела zfs. Настройка для работы с малым количеством памяти под архитектурой i386.
2009-11-13, gx_ua
fusefs-ntfs

Установка, настройка и использование fusefs-ntfs, драйвер NTFS, предназанченного для монтирования NTFS разделов под FreeBSD
2009-11-12, Morty
LiveCD

Создание собственного LiveCD с необходимыми вам изменениями, автоматизирование данного процесса, а так же вариант скоростной сборки СД.
2009-09-27, lissyara
Samba как PDC

Контроллер домена - аналог M$ NT4 домена под самбой, без использования LDAP и прочей хиромантии. Просто и быстро =)
2009-08-30, terminus
ipfw nat

Подробное руководство по ipfw nat, сложные случаи конфигурации.
2009-08-24, levantuev
HotSpot

Установка Hotspot системы в общественное заведение.
2009-08-18, lissyara
diskless

Создание бездисковых терминалов под управлением FreeBSD - с загрузкой по сети. Используются для старта rdesktop и подключения к виндовому серверу терминалов.
2009-07-29, BAV_Lug
Видеонаблюдение

Настройка бюджетного варианта видеонаблюдения на удаленном объекте
2009-07-22, Cancer
OpenLDAP адресная книга

Настройка и создание адресной книги на базе OpenLDAP + phpLDAPadmin
2009-06-30, SergeySL
AimSniff

Руководство по созданию системы мониторинга ICQ-переписки на базе AimSniff, использующей базу данных MySQL для хранения и Web-интерфейс WAS (Web Aim Sniff) для просмотра перехваченных сообщений
2009-06-25, atrium
Управление правами доступа

Полномочия пользователей и файлов, принадлежащих им, формирует концепцию ОС UNIX.
2009-06-16, DNK
Exim+PgSQL

Установка почтовой системы exim+pgsql на FreeBSD 7.1
2009-05-30, mvalery
HDD(mbr) -> HDD(gpt)

Как разбить диск размером более 2TB на разделы, сделать загрузочным, а затем перенести на него информацию с рабочей системы — донора.
2009-05-22, Cancer
SendXMPP

Отправка сообщений на Джаббер сервер по средствам SendXMPP
2009-05-11, Raven2000
Network UPS Tools

Network UPS Tools представляет собой набор программ, которые обеспечивают общий интерфейс для мониторинга и администрирование UPS оборудования.
2009-04-29, m0ps
IPSEC over GRE with RIP

Пример IPSEC over GRE и динамическим роутингом (RIP), с ADSL в качестве последней мили на оборудовании Cisco.
2009-04-24, WhiteBear777
qemu network

Появилась необходимость поставить на БСД эмулятор(qemu) и настроить в качестве гостевой ОС Windows XP, предоставив ей выход в локалку и в сеть internet...
2009-04-22, vp
freebsd + huawei 162 gsm modem

В статье описывается простой способ подключения модема huawei 162 к freebsd + первичная настройка smstools
2009-04-12, mvalery
Мониторинг RAID

Мониторинг из командной строки RAID компаний AMCC 3ware, HighPoint, Dell (Perc 5/i и PERC 6/i) и LSI (MegaRAID SAS 8408E и SAS1078)
2009-04-09, texnotronic
RAID1 via LAN

Функциональности DRBD во FreeBSD можно добиться примонтировав блочное устройство по сети при помощи GEOM Gate (ggate) и добавив его в зеркало с локальным диском средствами gmirror.
2009-04-03, Raven2000
Оптимизация хоста для CMS

В последнее время на старый и не очень быстрый ПК (Celeron 800 RAM 256) мною было навешано с десяток сайтов и некоторые были из серии тяжелых CMS. И так нам дано FreeBSD 7.1 и ~10 сайтов/CMS.
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 14 чел.
За последние 30 мин было: 43 человек
За сегодня было
6287 показов,
764 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0745 секунд
Из них PHP: 62%; SQL: 38%; Число SQL-запросов: 77 шт.
Исходный размер: 252023; Сжатая: 51295