С FreeBSD знаком неделю. :(
Нужно: добавить IPDIVERT.
Что сделал.
1. поставил сорцы.
2. в /usr/src/sys/i386/conf скопировал GENERIC в OPTIMAL
3. добавил options IPDIVERT
4. убрал не нужные устройства (SCSI/USB...)
5. cd /usr/src/
6. make buildkernel KERNCONF=OPTIMAL
7. минут 20 работало, выдало "Kernel build for OPTIMAL completed on Thu Mar 17 16:26:10 EET 2005"
8. make installkernel KERNCONF=OPTIMAL
9. выдает
-----------------------
cd /usr/src; MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=i386 MACHINE=i386 CPUTYPE= GROFF_BIN_PATH=/usr/obj/usr/src/i386/legacy/usr/bin GROFF_FONT_PATH=/usr/obj/usr/src/i386/legacy/usr/share/groff_font GROFF_TMAC_PATH=/usr/obj/usr/src/i386/legacy/usr/share/tmac PATH=/usr/obj/usr/src/i386/legacy/usr/sbin:/usr/obj/usr/src/i386/legacy/usr/bin:/usr/obj/usr/src/i386/legacy/usr/games:/usr/obj/usr/src/i386/usr/sbin:/usr/obj/usr/src/i386/usr/bin:/usr/obj/usr/src/i386/usr/games:/sbin:/bin:/usr/sbin:/usr/bin make -f Makefile.inc1 hierarchy
cd /usr/src/etc; make distrib-dirs
cd: can't cd to /usr/src/etc
*** Error code 2Что я делаю не так? Помогите, только по подробнее, если можно. Слабо я еще понимаю в FreeBSD.
Все правильно ты делаешь, единственное что приходит в голову, что не под root-ом.
>Все правильно ты делаешь, единственное что приходит в голову, что не под
>root-ом.Под root. :( Может места нужно много?
сейчас на usr 460M
сейчас на var 230M
сейчас на tmp 230M
сейчас на \ 189MПоможите, кто чем может :(
> cd /usr/src/etc; make distrib-dirs
> cd: can't cd to /usr/src/etc
> *** Error code 2На мысли не наводит? Проверьте, все ли исходники установили? Существует ли /usr/src/etc?
> сейчас на usr 460M
Этого мало! Для полного дерева исходников нужно около 450 Мб + /usr/obj отожрет при сборке довольно много (около 75 Мб только при сборке ядра).
>> cd /usr/src/etc; make distrib-dirs
>> cd: can't cd to /usr/src/etc
>> *** Error code 2
>
>На мысли не наводит?
наводит, но идей нет :(
>Проверьте, все ли исходники установили?
как это сделать?
>Существует ли /usr/src/etc?
не существует>> сейчас на usr 460M
>
>Этого мало! Для полного дерева исходников нужно около 450 Мб + /usr/obj
>отожрет при сборке довольно много (около 75 Мб только при сборке
>ядра).а сборка это buildkernel или installkernel?
460М это после buildkernel
>Все правильно ты делаешь, единственное что приходит в голову, что не под
>root-ом.Вот он говорит
cd /usr/src/etc; make distrib-dirs
cd: can't cd to /usr/src/etcа /usr/src/etc действительно нет
>>Все правильно ты делаешь, единственное что приходит в голову, что не под
>>root-ом.Попробуй воспользоваться старым методом,
# cd /sys/i386/conf
# config OPTIMAL
# cd /sys/compile/OPTIMAL
# make depend && make all installЕсли места мало, и исходники от тойже версии, просто ты повыкидывал из ядра лишнее, то модули можно не пересобирать, тогда добавь к make'ам опцию -DNO_MODULES
т.е.:
# make -DNO_MODULES depend all install
>Попробуй воспользоваться старым методом,
># cd /sys/i386/conf
># config OPTIMAL
># cd /sys/compile/OPTIMAL
># make depend && make all installПохоже что получилось. А как проверить что в текущем загруженном ядре включена опция IPDIVERT?
>Похоже что получилось. А как проверить что в текущем загруженном ядре включена
>опция IPDIVERT?При загрузке, насколько я помню, в 5-ке пишется что-то типа: divert enabled..
В конце концов правило с divert'ом добавь попробуй.
>>Похоже что получилось. А как проверить что в текущем загруженном ядре включена
>>опция IPDIVERT?
>
>При загрузке, насколько я помню, в 5-ке пишется что-то типа: divert enabled..
>
>
>В конце концов правило с divert'ом добавь попробуй.Странно divert отключен, ядро грузится OPTIMAL но явно видно что не то-что я настраивал, я отключал usb а видно что оно есть. Не подскажете в чем не прав?
>>При загрузке, насколько я помню, в 5-ке пишется что-то типа: divert enabled..Файрвол-то включили?..
>>>При загрузке, насколько я помню, в 5-ке пишется что-то типа: divert enabled..
>
>Файрвол-то включили?..
rc.conf
nfs_client_enable="YES"
sshd_enable="YES"
usbd_enable="YES"
natd_enable="YES"
natd_interface="xl0"
firewall_enable="YES"
firewall_type="/usr/local/etc/firewall.conf"kern_securelevel="1"
kern_securelevel_enable="YES"
nfs_reserved_port_only="YES"usb/scsiпочему может грузится если закоментировал эти устройства :(
Что пишет:
# ipfw add 10 divert natd ip from any to anyВ конфиге ядра присутсвуют опции IPFWIREWALL* ?
Покажите:
# grep IPFIREWALL /sys/i386/conf/OPTIMALКомпилировали с модулями или указали -DNO_MODULES ?
>Что пишет:
># ipfw add 10 divert natd ip from any to any
>
>В конфиге ядра присутсвуют опции IPFWIREWALL* ?
нет, добавлять это
options IPFWIREWALL
options IPFWIREWALL_VERBOSE
options IPFWIREWALL_VERBOSE_LIMIT=10
просто в книге сказано что это можно просто включить через rc.conf и я не добавлял>Покажите:
># grep IPFIREWALL /sys/i386/conf/OPTIMAL
пусто>Компилировали с модулями или указали -DNO_MODULES ?
не указывал
Третий раз спрашиваю, что пишет:
# ipfw add 10 divert natd ip from any to anyесли ошибок нет - значит работает.
>Третий раз спрашиваю, что пишет:
Извинте, не заметил
># ipfw add 10 divert natd ip from any to anyipfw: getsockopt(IP_FW_ADD): Invalid argument
>>Третий раз спрашиваю, что пишет:
>Извинте, не заметил
>># ipfw add 10 divert natd ip from any to any
>
>ipfw: getsockopt(IP_FW_ADD): Invalid argumentдобавляйте файрвол в ядро, и вперёд, в смысле к началу топика ;)
>>>Третий раз спрашиваю, что пишет:
>>Извинте, не заметил
>>># ipfw add 10 divert natd ip from any to any
>>
>>ipfw: getsockopt(IP_FW_ADD): Invalid argument
>
>добавляйте файрвол в ядро, и вперёд, в смысле к началу топика ;)
>Спасибо! Получилось :) :)
#!/bin/sh
cd /sys/i386/conf
config OPTIMAL
cd /sys/i386/compile/OPTIMAL
make depend && make all install -DNO_MODULESтаким скриптом отключил все не нужное. Не ошибся?