BerserkIQ
18:27 02-02-2011 /etc/src.conf под микрокопом
FreeBSD 8.1

Начиная с FreeBSD 7.0 из файла /etc/make.conf вынесли все параметры влияющие на сборку мира. Так как в самом ближайшем будущем придется резать/пилить ось в целях уменьшения размера системы (для установки FreeBSD на флешку, а также для расшаренного по NFS образа бездисковой рабочей станции), имеет смысл разобраться с ключами доступными в src.conf.

Комметарии в man src.conf весьма кратки, далеко не всегда очевидно какой механизм запускает отдельный ключ и на что повлияет его включение/выключение. Посему этот топ будет своего рода расширенными комментариями по каждому из ключей.
Комментарии:
BerserkIQ
18:27 02-02-2011
Начнем с файла-заготовки валяющегося на флешке, для типовых проектов, подходящего для большинства систем. В нем полный перечень всех доступных ключей для FreeBSD 8.1

WITHOUT_ACCT=yes
# WITHOUT_ACPI
WITHOUT_AMD=yes
WITHOUT_APM=yes
WITHOUT_ASSERT_DEBUG=yes
# WITHOUT_AT
WITHOUT_ATM=yes
WITHOUT_AUDIT=yes
WITHOUT_AUTHPF=yes
# WITHOUT_BIND
# WITHOUT_BIND_DNSSEC
# WITHOUT_BIND_ETC
# WITH_BIND_IDN
# WITH_BIND_LARGE_FILE
# WITH_BIND_LIBS
# WITHOUT_BIND_LIBS_LWRES
# WITHOUT_BIND_MTREE
# WITHOUT_BIND_NAMED
# WITH_BIND_SIGCHASE
# WITHOUT_BIND_UTILS
# WITH_BIND_XML
WITHOUT_BLUETOOTH=yes
# WITHOUT_BOOT
# WITHOUT_BSD_CPIO
WITHOUT_BSNMP=yes
# WITHOUT_BZIP2
# WITHOUT_BZIP2_SUPPORT
WITHOUT_CALENDAR=yes
WITHOUT_CDDL=yes
# WITHOUT_CPP
# WITHOUT_CRYPT
WITHOUT_CTM=yes
# WITHOUT_CVS
# WITHOUT_CXX
WITHOUT_DICT=yes
# WITHOUT_DYNAMICROOT
# WITHOUT_EXAMPLES
# WITHOUT_FLOPPY
# WITHOUT_FORTH
# WITHOUT_FP_LIBC
# WITHOUT_FREEBSD_UPDATE
WITHOUT_GAMES=yes
WITHOUT_GCOV=yes
WITHOUT_GDB=yes
# WITHOUT_GNU
# WITHOUT_GNU_GREP
# WITHOUT_GNU_SUPPORT
# WITHOUT_GPIB
# WITHOUT_GROFF
# WITHOUT_GSSAPI
# WITH_HESIOD
WITHOUT_HTML=yes
WITH_IDEA=yes
WITHOUT_INET6=yes
WITHOUT_INET6_SUPPORT=yes
# WITHOUT_INFO
# WITHOUT_INSTALLLIB
WITHOUT_IPFILTER=yes
# WITHOUT_IPFW
WITHOUT_IPX=yes
# WITHOUT_IPX_SUPPORT
WITHOUT_JAIL=yes
WITHOUT_KERBEROS=yes
# WITHOUT_KERBEROS_SUPPORT
# WITHOUT_KVM
# WITHOUT_KVM_SUPPORT
# WITHOUT_LEGACY_CONSOLE
# WITHOUT_LIB32
# WITHOUT_LIBPTHREAD
# WITHOUT_LIBTHR
# WITHOUT_LOCALES
# WITHOUT_LOCATE
WITHOUT_LPR=yes
# WITHOUT_MAIL
# WITHOUT_MAILWRAPPER
# WITHOUT_MAKE
# WITHOUT_MAN
# WITHOUT_MAN_UTILS
WITHOUT_NCP=yes
WITHOUT_NDIS=yes
# WITHOUT_NETCAT
# WITHOUT_NETGRAPH
# WITHOUT_NETGRAPH_SUPPORT
# WITHOUT_NIS
# WITHOUT_NLS
# WITHOUT_NLS_CATALOGS
# WITHOUT_NS_CACHING
# WITHOUT_NTP
# WITHOUT_OBJC
# WITHOUT_OPENSSH
# WITHOUT_OPENSSL
# WITHOUT_PAM
# WITHOUT_PAM_SUPPORT
WITHOUT_PF=yes
# WITHOUT_PKGTOOLS
# WITHOUT_PMC
# WITHOUT_PORTSNAP
# WITHOUT_PPP
WITHOUT_PROFILE=yes
WITHOUT_QUOTAS=yes
WITHOUT_RCMDS=yes
WITHOUT_RCS=yes
WITHOUT_RESCUE=yes
# WITHOUT_ROUTED
WITHOUT_SENDMAIL=yes
# WITHOUT_SETUID_LOGIN
# WITHOUT_SHAREDOCS
# WITHOUT_SSP
# WITHOUT_SYMVER
# WITHOUT_SYSCONS
# WITHOUT_SYSINSTALL
# WITHOUT_TCSH
# WITHOUT_TELNET
# WITHOUT_TEXTPROC
# WITHOUT_TOOLCHAIN
# WITHOUT_USB
WITHOUT_WIRELESS=yes
# WITHOUT_WIRELESS_SUPPORT
WITHOUT_WPA_SUPPLICANT_EAPOL=yes
WITHOUT_ZFS=yes
# WITHOUT_ZONEINFO

отредактировано: 03-02-2011 19:15 - BerserkIQ

BerserkIQ
19:09 03-02-2011
WITHOUT_FORTH # Собирать bootloaders без поддержки FORTH

Крайне не рекомендую ставить этот ключ в "YES"
За исключением случаев конечно, когда вы точно знаете, чего хотите от этой опции добиться. Дело в том, что интерпретатор экзотического языка Forth входит в загрузчик FreeBSD. У меня на FreeBSD 8.1 влючение этой опции приводило к тому, что исчезало меню Boot Loader с выбором режимов загрузки, в начале загрузки система выдавала сообщение Unknown command, задумывалась и спустя какое-то время продолжала загрузку с дефолтным значением. Причем при желании попасть в систему в однопользовательском режиме, хотя бы с помощью команды:

nextboot -o "-s" -k kernel & reboot

Успеха это не возымело - система все равно грузилась в многопользовательском режиме.