Монтируем samba-ресурсы на Linux
Да, блин, каждый раз, как сажусь за этот ваш линукс, приходится маны читать, ибо забываю. надо записать.
В общем, чтобы подключить виндовую шару samba ресурс, говорим в консоль:
$sudo mount.cifs //ots/share /mnt -o username=ИмяПользователяВсамбе,password=ЕгоПароль,domain=Домен(ЕслиЕсть),ip=IpАдресСервера,uid=`id -u`
ots — это имя моего домена. Если домена нет, пишем вместо него netbios имя сервера
Опции после -o разделяются запятыми без пробелов!!!
Можно сделать файлик с этими опциями с названием, например, megafile.txt такого вида:
username=ИмяПользователяВсамбе
password=ЕгоПароль
domain=Домен(ЕслиЕсть)
ip=IpАдресСервера
и подключаться командой
$sudo mount.cifs //ots/share /mnt -o credentials=/ПутьДоФайла/megafile.txt
Asterisk и DAHDI — разные звуки звонков
Попала тут мне в руки китайческая TDM-410 с одним FXO и тремя FXS портами. Завелась на ура и работает на радость. Захотелось прикрутить к ней фичу, чтобы телефоны, посаженные на FXS порты звонили разными звонками в зависимости от того, пришел звонок с одной городской линии, с другой, или вообще из Волжского офиса. У sip за это отвечает alert-info, если его поддерживает конечное устройство, а у dahdi за разные тональности звонка отвечает cadence. Посмотреть, какие модуляции доступны можно в консоли Asterisk:
Прочитать остальную часть записи »
serviio: Could not lock User prefs. Unix error code 2.
Пришлось тут поставить dlna-сервер serviio. Из коробки странно глючит, то работает, то нет. В лог пишет
[PluginCompilerThread] Plugins folder '/var/db/serviio/home/plugins' does not exist. No plugins will be compiled.
и
[prefs] Could not lock User prefs. Unix error code 2.
[prefs] Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.
Все дело в том, что порт при установке хотя и создает пользователя dlna, под которым все это дело крутится, но создает его без домашней папки, отсюда грабли. На wiki проекта есть howto, как установить его под FreeBSD, но к реальности оно имеет примерно то же отношение, что и Минские соглашения, так что берем в руки напильних, к счастью, небольшой, и подпиливаем:
# mkdir /var/db/serviio/home/plugins
# chown dlna:wheel /var/db/serviio/home/plugins
# pw usermod dlna -m -d /var/db/serviio/home
# /usr/local/etc/rc.d/serviio restart
Радуемся жизни.
graphics/opennurbs ошибка сборки
Обновил систему до 11, стал пересобирать порты, graphics/opennurbs вылетает с ошибкой, не находит у себя в рабочей директории порта что-то, связанное с zlib. Гугление дает результат:
http://freebsd-ports-bugs.freebsd.narkive.com/5wc6l4TD/bug-216212-graphics-opennurbs
В двух словах, находим в /usr/ports/graphics/opennurbs/Makefile следующее:
${MV} ${WRKSRC}/opennurbs_version.h.tmp ${WRKSRC}/opennurbs_version.h
${MV} ${WRKSRC}/zlib ${WRKSRC}/zlib_
${CP} -R ${SRC_BASE}/lib/libz ${WRKSRC}/zlib
и последнюю строчку меняем на
${CP} -R ${SRC_BASE}/contrib/zlib ${WRKSRC}/zlib
После этой процедуры все собирается и устанавливается.
Записываю, чтобы потом о5 не гуглить.
Обновление Samba 3.x до Samba 4.3
Долгое время для доступа к дискам freebsd из сети я пользовался samba третьей ветки (начиная с samba 3.3 и заканчивая samba 3.6 на сегодняшний день). Однако, время идет, и с выходом samba4.2 третья ветка samba была оставлена без поддержки, авторы самбы всем рекомендуют быстренько переходить на четвертую ветку. Что ж, статья об установке samba 3 устарела, возьмемся обновить нашу самбу до последней в портах, а это samba 4.3. Кратенькое руководство по обновлению, кстати, есть в /usr/local/share/doc/samba43/README.FreeBSD, им и будем руководствоваться. Прочитать остальную часть записи »
VirtualBox без Xorg: нововведения
Вот в этой статье я описывал, как использовать VirtualBox под FreeBSD без графики. В общем и целом статья актуальна, однако, появились изменения, в том числе в использовании VNC сервера. Теперь сервер не включается ключом -n при запуске виртуальной машины, а указывается в свойствах самой виртуалки:
VBoxmanage --modifyvm "TestBSD" --vrde on --vrdeport 3028 --vrdeproperty VNCPassword=password --vrdeauthlibrary null
Тут все понятно: —vrdeport — порт, на котором висит VNC сервер, —vrdeproperty VNCPassword — пароль на вход.
до кучи еще полезности:
VBoxmanage --modifyvm "TestBSD" --chipset ich9
выбирает для виртуальной машины более современный чипсет, по умолчанию выбирает pII3
VBoxmanage --modifyvm "TestBSD" --clipboard bidirectional
включает двунаправленный буфер обмена (от вируалки к хосту и обратно, в принципе, без иксов не сильно нужная вещь, но на всякий случай…)
Какие пакеты зависят от бибилиотеки; sed: /usr/local/lib/libffi.la: No such file or directory
Обновил себе систему с 9.2 до 10.1.
Решил пересобрать порты. В первой десятке пересобирается graphics/cairo, пересборка падает с ошибкой:
sed: /usr/local/lib/libffi.la: No such file or directory
libtool: link: `/usr/local/lib/libffi.la' is not a valid libtool archive
*** [libcairo-gobject.la] Error code
Гугление приводит к битью головой об стенку, ибо совершенно не находилось ничего нужного. В общем-то, ясно, что какой-то порт старенький просит этой библиотеки, которой уже нет из идеологическх соображений. В итоге все решилось портмастером, который я попросил пересобрать cairo рекурсивно с пересборкой всего, от чего оно зависит, вот так:
Прочитать остальную часть записи »
buildkernel config: illegal option — I при сборке ядра FreeBSD
Решил тут обновить в очередной раз систему до FreeBSD 10-stable. При сборке ядра получил ошибку buildkernel config: illegal option — I
Для исправления надо находясь в /usr/src сделать
# make kernel-toolchain
а уже потом
# make buildkernel
PHP 5.4 (и старше) и модуль APACHE
Жить стало веселее.
Собирая очередной раз связку apache 2.4 и php 5 был озадачен отсутствием в конфиге php модуля для apache.
Чтение /usr/ports/UPDATING пролило свет на это дело . Оказывается, модуль для apache у нас теперь лежит в www/mod_php. Для нормально работы он требует, чтобы php была собрана с опцией zts. Если PHP уже была установлена, то для обновления следует обновить опции для lang/php* (сделать make config), переустановить lang/php* и установить www/mod_php* (вместо * ставим свою версию php).