 | | |
FreeBSD специфика
Как включить поддержку ACL в UFS2 FreeBSD 5 [есть мнение]
В single mode: "/sbin/tunefs -a enable /fs"
Пересобираем ядро с "options UFS_ACL"
getfacl - просмотр ACL
setfacl - установка ACL
Например: setfacl -m user:nobody:rw-,group:wheel:rw- acl-test
Как в FreeBSD добавить/убрать алиас для сетевого интерфейса [есть мнение]
Добавить: ifconfig fxp0 inet 192.168.1.1 netmask 255.255.255.255 alias
Убрать: ifconfig fxp0 inet 192.168.1.1 netmask 255.255.255.255 -alias
Как подключить USB Flash накопитель в FreeBSD [есть мнение]
man umass
Конфигурация ядра (FreeBSD 4.8 можно не пересобирать):
device usb
device ohci (OR device uhci)
device umass
device scbus
device da
device pass
В логе смотрим подобное сообщение "da0 at umass-sim0 bus 0 target 0 lun 0"
Монтируем:
mount -t msdos /dev/da0s1 /mnt
Установка дисковых квот в FreeBSD Автор: Igor [обсудить]
- в конфигурации ядра включаем "options QUOTA" и пересобираем ядро.
- в /etc/rc.conf прописываем enable_quotas="YES" и check_quotas="YES"
- указываем в fstab файловые системы, для которых будет включаться
поддержка квот, например:
/dev/da0s1e /home ufs rw,userquota 2 2
/dev/ad0s1h /new_home ufs rw,groupquota 2 2
- устанавливаем квоты для пользователей при помощи edquota, напр. "edquota user1"
- если нужно установить одинаковые квоты для нескольких пользователей как у user1:
edquota -p user1 user2 user3 user4 user5
Использование в FreeBSD IEEE 802.1Q VLAN'ов совместно с Cisco Catalyst Switch [обсудить]
В конфигурации FreeBSD ядра:
pseudo-device vlan 20 # VLAN support (для динамической генерации в новых версиях - 20 можно не писать)
Поднимаем VLAN вручную (где 28 - vlan id на свиче, fxp0 - интерфейс воткнутый в свитч):
ifconfig vlan0 inet 192.168.1.3 netmask 255.255.255.0 vlan 28 vlandev fxp0
Прописываем в /etc/rc.conf:
cloned_interfaces="vlan0"
ifconfig_vlan0="inet 192.168.1.3 netmask 255.255.255.0 vlan 28 vlandev fxp0"
На коммутаторе Cisco Catalyst:
interface FastEthernet0/1 # линк к FreeBSD
switchport mode trunk
interface FastEthernet0/2
switchport access vlan 28
Как примонтировать iso-образ CD диска в FreeBSD [есть мнение]
В /boot/loader.conf добавляем vn_load="YES" или подгружаем руками kldload vn.ko
Монтируем:
vnconfig /dev/vn0c /home/user/cdrom.iso
mount -t cd9660 /dev/vn0c /mnt
Размонтируем:
umount /mnt
vnconfig -u /dev/vn0c
Как разрешить в FreeBSD монтировать CD-ROM обычным пользователям [обсудить]
/etc/sysctl.conf:
vfs.usermount=1
vfs.generic.usermount=1
mount -t cd9660 /dev/acd0c /home/user/cdrom
chmod 644 /dev/acd0c
Как примонтировать в FreeBSD CD-ROM с русифицированной FS, чтобы русские буквы не выглядели как вопросительные знаки. Автор: lavr [есть мнение]
cd /usr/ports/sysutils/cd9660_unicode
make && make install
грузить модуль через
kldload /lib/cd9660_unicode/cd9660_[unicode|koi8-r|iso-8859-5|cp866].ko
Как включить поддержку SMBFS в FreeBSD и примонтировать удаленный windows ресурс. [есть мнение]
пересобираем ядро:
options NETSMB #SMB/CIFS requester
options NETSMBCRYPTO #encrypted password support for SMB
options LIBMCHAIN #mbuf management library
options LIBICONV
options SMBFS
Коннектимся к удаленному SMB серверу:
smbutil login //jwarner@smbserver1
Монтируем русурс:
mount_smbfs -N //jwarner@smbserver1/sharename /backup
Отсоединяемся от SMB сервера:
smbutil logout //jwarner@smbserver1
Как завести нового пользователя в FreeBSD в автономном режиме ? [обсудить]
Нужно использовать не команду adduser, а команду pw (man pw, pw useradd help). Например:
pw useradd -n логин -c 'комментарий, фио' -d /home/логин -m -s /bin/true
Что иногда следует избыточно создать в '/dev' для FreeBSD Автор: lavr [обсудить]
MAKEDEV - ad0 ad1 ad2 ad3 ... - default=0,...,3 остальное+slices руками
MAKEDEV ptyN - псевдо-терминалы, default==32
MAKEDEV vtyN - виртуальные терминалы через syscons, defaul==12
MAKEDEV iic - создание устройств для I2C
MAKEDEV smb - создание устройств для SMBus шины
MAKEDEV snd - создание устройств для SoundBlaster
Как в FreeBSD при загрузке в single read-olny переключится в RW режим. [обсудить]
mount -u -w /
Какие программы в FreeBSD занимаются переиндексацией системных баз [обсудить]
/bin/sh MAKEDEV all (dev_mkdb)
/usr/bin/newaliases
/usr/bin/cap_mkdb /etc/login.conf
/usr/sbin/pwd_mkdb -p /etc/master.passwd
Как на сервере обеспечить подключение PS/2 клавиатуры, без перезагрузки [есть мнение]
Для того чтобы на загруженный без PS/2 клавиатуры сервер, можно было в любой момент подключить клавиатуру
без перезагрузки, нужно в конфигурации ядра заменить строку:
device atkbd0 at atkbdc? irq 1 flags 0x1
на
device atkbd0 at atkbdc? irq 1
Т.е. убрать 'flags 0x1' и тем самым разрешить загружать драйвер клавиатуры
при отключенной в момент загрузки клавиатуре.
Как в FreeBSD более подробно ознакомится с поддержкой аппаратного устройства [обсудить]
man 4 имя_устройства.
примеры: man 4 fxp; man 4 rl; man 4 ed; man 4 amr; man 4 pcm; man 4 cd; man 4 tty; man 4 sio;
Как переключить сетевую карту в FreeBSD из full-duplex в half-duplex [есть мнение]
Текущий режим работы сетевой карты можно посмотреть выполнив:
# ifconfig fxp0
Перевести сетевую карту в режим работы 10baseT/UTP half-duplex:
# ifconfig fxp0 media 10baseT/UTP mediaopt half-duplex
Автоматически выбрать режим:
# ifconfig fxp0 media autoselect
Подробнее: man 4 ed, man 4 rl, man 4 fxp
Как правильно прописать сменные накопители в /etc/fstab для FreeBSD. Автор: Insane [обсудить]
/dev/acd0c /mnt/cdrom cd9660 ro,noauto,-W=koi2dos,
-L=ru_RU.KOI8-R 0 0
/dev/fd0 /mnt/flop msdos rw,noauto,-W=koi2dos,
-L=ru_RU.KOI8-R 0 0
/dev/ad0s2 /mnt/store msdos rw,-W=koi2dos,
-L=ru_RU.KOI8-R,noexec,nosuid,nosymfollow,
-u0,-g0,-m 660 0 0
Еще для удобства можно создать симлинки типа:
ln -sf /dev/acd0c /dev/cdrom
ln -sf /dev/acd1c /dev/cdrom1 (если есть второй cdrom)
ln -sf /dev/fd0 /dev/flop
прописать изменения в fstab,
и монтировать диски командой mount /dev/cdrom а не
mount /dev/acd0c =).
Сис. информация, оптимизация и тюнинг FreeBSD
Как под FreeBSD создать файловую систему в памяти (ramdisk) [обсудить]
man mount_mfs
mount_mfs -s 614400 /dev/amrd0s1b /usr/obj
где /dev/amrd0s1b - swap раздел, 614400 - размер MFS диска N*1024*2 (614400 == 300mb).
Что изменить в настройках конфигурации ядра FreeBSD для нагруженного сервера. [есть мнение]
maxusers 512
options NMBCLUSTERS=16786
options NBUF=2048
options CHILD_MAX=512
options OPEN_MAX=512
options "MAXDSIZ=(512*1024*1024)"
options "DFLDSIZ=(128*1024*1024)"
options IPFIREWALL
options IPFIREWALL_FORWARD
options IPFIREWALL_DEFAULT_TO_ACCEPT
options SOFTUPDATES
Как в FreeBSD посмотреть состояние системных буферов [обсудить]
sysctl vm.zone
Как включить Soft-updates в FreeBSD для увеличения производительности [обсудить]
1. Перейти в single режим
2. Убедится, что раздел диска размонтирован.
3. tunefs -n enable раздел (например, tunefs -n enable /usr )
Как в FreeBSD узнать значения LoadAverage, объем свободного ОЗУ и т.д. [обсудить]
sysctl vm.stats.vm.v_active_count
sysctl vm.stats.vm.v_inactive_count
sysctl vm.stats.vm.v_wire_count
sysctl vm.stats.vm.v_cache_count
sysctl vm.stats.vm.v_free_count
sysctl vm.stats.vm.v_page_count
более подробно:
sysctl -a|grep vm
sysctl| less
Как узнать аппаратную конфигурацию (ОЗУ, CPU и т.д.) машины под FreeBSD [есть мнение]
sysctl -a | grep hw
Как увеличить производительность дисковой подсистемы FreeBSD. [есть мнение]
По умолчанию запись на диски в FreeBSD производится в синхронном режиме, значительно увеличить скорость записи
можно активировав асинхронный режим: В /etc/fstab в поле Options добавить async (например rw,async).
Или для примонтированного раздела: mount -u -o async /home
Для увеличения производительности IDE дисков, в файле конфигурации ядра можно указать для wdc устройств
flags 0xa0ffa0ff или 0x80ff80ff (подробнее man wd, man ad).
Для ad: sysctl hw.atamodes; sysctl hw.ata
Например: sysctl hw.atamodes=pio,pio,---,dma,pio,---,dma,---,
См. также man atacontrol
Третий вариант - активировать в настройках ядра SOFTUPDATES и запустить
tunefs -n enable /usr в single-user на размонтированном разделе.
Как увеличить количество shared memory для работы высоконагруженного PostgreSQL [обсудить]
В linux:
echo 134217728 >/proc/sys/kernel/shmall
echo 134217728 >/proc/sys/kernel/shmmax
В конфиге ядра FreeBSD:
options SYSVSHM
options SHMMAXPGS=4096
options SHMMAX="(SHMMAXPGS*PAGE_SIZE+1)"
options SHMMIN=2
options SHMMNI=256
options SHMSEG=256
options SYSVSEM
options SEMMAP=512
options SEMMNI=512
options SEMMNS=1024
options SEMMNU=512
options SEMMSL=256
options SEMOPM=256
options SEMUME=64
options SYSVMSG
options MSGMNB=8192
options MSGMNI=256
options MSGSEG=8192
options MSGSSZ=16
options MSGTQL=128
options NMBCLUSTERS=16786
options NBUF=2048
maxusers 512
Что имеет смысл поменять через sysctl в FreeBSD [есть мнение]
/sbin/sysctl -w net.inet.ip.forwarding=0
/sbin/sysctl -w net.inet.tcp.always_keepalive=1
/sbin/sysctl -w kern.ipc.somaxconn=1024
/sbin/sysctl -w net.inet.tcp.delayed_ack=0
/sbin/sysctl -w net.inet.ip.portrange.last=30000
/sbin/sysctl -w net.inet.tcp.sendspace=131072
/sbin/sysctl -w net.inet.tcp.recvspace=131072
#/sbin/sysctl -w net.inet.tcp.rfc1644=1
#/sbin/sysctl -w net.inet.tcp.rfc1323=0
#/sbin/sysctl -w net.inet.icmp.drop_redirect=1
#/sbin/sysctl -w net.inet.icmp.log_redirect=1
#/sbin/sysctl -w net.inet.ip.redirect=0
#/sbin/sysctl -w net.inet6.ip6.redirect=0
/sbin/sysctl -w net.link.ether.inet.max_age=1200
/sbin/sysctl -w net.inet.ip.sourceroute=0
/sbin/sysctl -w net.inet.ip.accept_sourceroute=0
/sbin/sysctl -w net.inet.icmp.bmcastecho=0
/sbin/sysctl -w net.inet.icmp.maskrepl=0
Увеличение безопасности FreeBSD
Как в FreeBSD включить Blowfish шифрование паролей вместо DES и MD5 [обсудить]
В /etc/login.conf:
:passwd_format=blf:
cap_mkdb /etc/login.conf
Как в FreeBSD запретить свободный вход как root с консоли через boot -s [обсудить]
В /etc/ttys поменяйте secure на insecure в строке:
console none unknown off secure
Установка и апгрейд FreeBSD и приложений.
Почему после обновления FreeBSD 4.x некоторые программы перестали запускаться [обсудить]
Например для устранения ошибки:
/usr/libexec/ld-elf.so.1: /usr/lib/libm.so.2: Undefined symbol: "__stderrp"
В /etc/make.conf добавьте
COMPAT3X=YES
COMPAT4X=YES
cd /usr/src/lib/compat
make && make install
Очистка /usr/ports/distfiles от файлов со старыми версиями Автор: awk [есть мнение]
По ссылке можно найти скрипт, который просматривает список установленных портов
и их зависимостей, очищает distfiles от старых версий, оставшихся после обновления портов и запуска portupgrade.
Комментарий к заметке: В portupgrade есть специальная утилита для чистки мусора - portsclean.
Как определить порядок запуска rc.d скриптов в FreeeBSD Автор: uldus [обсудить]
/usr/local/etc/rc.d скрипты запускаются в алфавитном порядке:
010.postgres.sh
020.postfix.sh
030.apache.sh
Как оптимизировать сборку ядра и системы в FreeBSD [есть мнение]
Правим /etc/make.conf пользуясь /etc/defaults/make.conf
CPUTYPE=i686
CFLAGS=-O2 -pipe
COPTFLAGS=-O -pipe
На SMP системах собираем через make -j2 buildworld
Можно ли обойтись в FreeBSD GENERIC ядром или как изменить параметры ядра без его пересборки. [есть мнение]
man sysctl.conf; man sysctl
man loader.conf; man loader
На основе параметров в /boot/defaults/loader.conf, формируем /boot/loader.conf,
где можем указать какие модули подгружать и какие значения системных констант использовать.
Например, безе пересборки можно использовать GENERIC с /boot/loader.conf:
kern.maxusers="512"
kern.ipc.nmbclusters="16384"
null_load="YES" # Грузим модуль для Null filesystem
vinum_load="YES"
accf_http_load="YES" # HTTP request accept filter
/etc/sysctl.conf
kern.maxfiles=32000
kern.ipc.somaxconn=1024
net.inet.ip.portrange.last=30000
net.inet.tcp.sendspace=32768
net.inet.tcp.recvspace=32768
Какие tag'и можно ставить при апгрейде FreeBSD через cvsup lavr [обсудить]
Например для 4.6.1: tag=RELENG_4_6_1_RELEASE
для всех RELEASE, к RELENG_X_Y добавляется _RELEASE - это чистый RELEASE
для каждого РЕЛИЗА, после установки или upgrade via CVS/CTM, впоследствии можно использовать
tag=RELENG_X_Y - который будет вытягивать только security patches для
заданного в теге RELEASE
для STABLE всегда tag=RELENG_4 , stable всегда изменяется
для CURRENT tag=.
Как русифицировать шелл в FreeBSD ? Автор: lavr [обсудить]
Bash: $HOME/.inputrc
set convert-meta off
set input-meta on
set output-meta on
$HOME/.bash_profile
export CHARSET=KOI8-R
export MM_CHARSET=KOI8-R
export LANG=ru_RU.KOI8-R
Tcsh[Csh] $HOME/.login
setenv CHARSET KOI8-R
setenv MM_CHARSET KOI8-R
setenv LANG ru_RU.KOI8-R
Установка программ через Ports в FreeBSD. [есть мнение]
Апргейд коллекции портов:
Редактируем /usr/share/examples/cvsup/ports-supfile и запускаем:
cvsup -g -L 2 ports-supfile
Поиск:
make search key="строка" - поиск пакета по ключевому слову.
make search name="строка" - поиск пакета по названию пакета.
Установка портов:
cd /usr/ports/порт; make; make install
Другие команды:
make deinstall - деинсталлировать приложение.
make fetch - скачать приложение из сети.
make checksum - проверить контрольные суммы.
make depends - перестроить зависимости.
make extract - разархивировать исходные тексты в work директорию.
make patch - применить патчи к приложению.
make build - собрать приложение из исходных тестов.
make clean - "почистить" исходники после сборки.
make reinstall - переустановить приложение после удаления.
make package - построить из порта package.
Где скачать последнюю FreeBSD STABLE в бинарном виде ? [обсудить]
ftp://stable.freebsd.org/pub/FreeBSD/snapshots/i386/
Как правильно проабгрейдить установленные FreeBSD ports [есть мнение]
pkg_version -c >/tmp/uplist.sh
sh -x /tmp/uplist.sh > /tmp/upgrade.output
cd /usr/ports/devel/ctags; portupgrade ctags
Как автоматизировать процесс установки FreeBSD на несколько машин. [обсудить]
Для автоматической установки достаточно создать профайл инсталляции
install.cfg, скопировать его на дискету, а в sysinstall при установке
выбрать пункт меню "Load Config".
Пример install.cfg можно найти в /usr/src/release/sysinstall/install.cfg
Как проабгрейдить FreeBSD с помощью cvsup [обсудить]
1. cd /usr/src/; cvsup -g -L2 /etc/cvsupfile # cvsupfile составляем опираясь на /usr/share/examples/cvsup/stable-supfile
2. make buildworld
3. make buildkernel KERNCONF=имя_конфига_ядра
4. make installkernel KERNCONF=имя_конфига_ядра
5. make installworld
6. mergemaster
Для пересборки ядра после make installworld: config MYKERNEL; make depend; make; make install
Если возникла проблема с FreeBSD или нет драйвера для устройства. [обсудить]
Неофициальные драйвера устройств и решение некоторых проблем приводятся на www.freebsd.org/cgi/query-pr-summary.cgi
Как создать необходимые для проигрывания звука устройства в FreeBSD [есть мнение]
cd /dev;./MAKEDEV snd0
будут созданы все необходимые устройства (/dev/dsp, /dev/mixer и т.д.) для pcm0.
Как обновить код загрузчика в FreeBSD [есть мнение]
Ставим boot-менеджер:
boot0cfg /dev/ad0
Обновляем boot-loader:
disklabel -B ad0s1
Почему не работает отладчик kbdg в FreeBSD 4.7 Автор: anonym [обсудить]
Я столкнулся с тем, что при установке FreeBSD 4.7 перестал работать отладчик kdbg.
Проблема решилась заменой отладчика dbg из дистрибутива на GNU dbg 5.2 (есть в пакаджах)
 |