Ноя 21
Сегодня наконец-то решился обновить Апач на сервере. Обновлялся как обычно – через portupgrade. Но столкнулся с проблемой – компиляция прошла вроде бы успешно, старая версия удалилась, а вот новая не встала выдав такое сообщение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
| —> Installing the new version via the port
===> Installing for apache-2.2.17_1
===> apache-2.2.17_1 depends on file: /usr/local/bin/perl5.8.9 – found
===> apache-2.2.17_1 depends on shared library: expat.6 – found
===> apache-2.2.17_1 depends on shared library: apr-1 – found
===> apache-2.2.17_1 depends on shared library: pcre.0 – found
===> apache-2.2.17_1 depends on shared library: iconv.3 – found
===> apache-2.2.17_1 depends on shared library: mysqlclient.16 – found
===> Generating temporary packing list
===> Checking if www/apache22 already installed
Making install in srclib
Making install in os
Making install in unix
Making install in server
Making install in mpm
Making install in prefork
find: /usr/local/include/apr-1/apr.h: No such file or directory
find: /usr/local/include/apr-1/apr_allocator.h: No such file or directory
find: /usr/local/include/apr-1/apr_anylock.h: No such file or directory
find: /usr/local/include/apr-1/apr_atomic.h: No such file or directory
find: /usr/local/include/apr-1/apr_base64.h: No such file or directory
find: /usr/local/include/apr-1/apr_buckets.h: No such file or directory
find: /usr/local/include/apr-1/apr_date.h: No such file or directory
find: /usr/local/include/apr-1/apr_dbd.h: No such file or directory
find: /usr/local/include/apr-1/apr_dbm.h: No such file or directory
find: /usr/local/include/apr-1/apr_dso.h: No such file or directory
find: /usr/local/include/apr-1/apr_env.h: No such file or directory
find: /usr/local/include/apr-1/apr_errno.h: No such file or directory
find: /usr/local/include/apr-1/apr_file_info.h: No such file or directory
find: /usr/local/include/apr-1/apr_file_io.h: No such file or directory
find: /usr/local/include/apr-1/apr_fnmatch.h: No such file or directory
find: /usr/local/include/apr-1/apr_general.h: No such file or directory
find: /usr/local/include/apr-1/apr_getopt.h: No such file or directory
find: /usr/local/include/apr-1/apr_global_mutex.h: No such file or directory
find: /usr/local/include/apr-1/apr_hash.h: No such file or directory
find: /usr/local/include/apr-1/apr_hooks.h: No such file or directory
find: /usr/local/include/apr-1/apr_inherit.h: No such file or directory
find: /usr/local/include/apr-1/apr_ldap.h: No such file or directory
find: /usr/local/include/apr-1/apr_ldap_init.h: No such file or directory
find: /usr/local/include/apr-1/apr_ldap_option.h: No such file or directory
find: /usr/local/include/apr-1/apr_ldap_rebind.h: No such file or directory
find: /usr/local/include/apr-1/apr_ldap_url.h: No such file or directory
find: /usr/local/include/apr-1/apr_lib.h: No such file or directory
find: /usr/local/include/apr-1/apr_md4.h: No such file or directory
find: /usr/local/include/apr-1/apr_md5.h: No such file or directory
find: /usr/local/include/apr-1/apr_memcache.h: No such file or directory
find: /usr/local/include/apr-1/apr_mmap.h: No such file or directory
find: /usr/local/include/apr-1/apr_network_io.h: No such file or directory
find: /usr/local/include/apr-1/apr_optional.h: No such file or directory
find: /usr/local/include/apr-1/apr_optional_hooks.h: No such file or directory
find: /usr/local/include/apr-1/apr_poll.h: No such file or directory
find: /usr/local/include/apr-1/apr_pools.h: No such file or directory
find: /usr/local/include/apr-1/apr_portable.h: No such file or directory
find: /usr/local/include/apr-1/apr_proc_mutex.h: No such file or directory
find: /usr/local/include/apr-1/apr_queue.h: No such file or directory
find: /usr/local/include/apr-1/apr_random.h: No such file or directory
find: /usr/local/include/apr-1/apr_reslist.h: No such file or directory
find: /usr/local/include/apr-1/apr_ring.h: No such file or directory
find: /usr/local/include/apr-1/apr_rmm.h: No such file or directory
find: /usr/local/include/apr-1/apr_sdbm.h: No such file or directory
find: /usr/local/include/apr-1/apr_sha1.h: No such file or directory
find: /usr/local/include/apr-1/apr_shm.h: No such file or directory
find: /usr/local/include/apr-1/apr_signal.h: No such file or directory
find: /usr/local/include/apr-1/apr_strings.h: No such file or directory
find: /usr/local/include/apr-1/apr_strmatch.h: No such file or directory
find: /usr/local/include/apr-1/apr_support.h: No such file or directory
find: /usr/local/include/apr-1/apr_tables.h: No such file or directory
find: /usr/local/include/apr-1/apr_thread_cond.h: No such file or directory
find: /usr/local/include/apr-1/apr_thread_mutex.h: No such file or directory
find: /usr/local/include/apr-1/apr_thread_pool.h: No such file or directory
find: /usr/local/include/apr-1/apr_thread_proc.h: No such file or directory
find: /usr/local/include/apr-1/apr_thread_rwlock.h: No such file or directory
find: /usr/local/include/apr-1/apr_time.h: No such file or directory
find: /usr/local/include/apr-1/apr_uri.h: No such file or directory
find: /usr/local/include/apr-1/apr_user.h: No such file or directory
find: /usr/local/include/apr-1/apr_uuid.h: No such file or directory
find: /usr/local/include/apr-1/apr_version.h: No such file or directory
find: /usr/local/include/apr-1/apr_want.h: No such file or directory
find: /usr/local/include/apr-1/apr_xlate.h: No such file or directory
find: /usr/local/include/apr-1/apr_xml.h: No such file or directory
find: /usr/local/include/apr-1/apu.h: No such file or directory
find: /usr/local/include/apr-1/apu_version.h: No such file or directory
find: /usr/local/include/apr-1/apu_want.h: No such file or directory
*** Error code 1
Stop in /usr/ports/www/apache22/work/httpd-2.2.17/server.
*** Error code 1
Stop in /usr/ports/www/apache22/work/httpd-2.2.17/server.
*** Error code 1
Stop in /usr/ports/www/apache22/work/httpd-2.2.17.
*** Error code 1
Stop in /usr/ports/www/apache22.
*** Error code 1
Stop in /usr/ports/www/apache22.
*** Error code 1
Stop in /usr/ports/www/apache22.
===> Cleaning for apache-2.2.17_1
—> Cleaning out obsolete shared libraries
s2# |
На помощь пришел Гугл и Логи начинающего сисадмина. Вот подсказанное решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| pkgdb -aF
portsclean -CDD
portsnap fetch update
cd
/usr/ports/www/apache22
make deinstall clean
portupgrade -f
-o devel/apr1 devel/apr
cd
/usr/ports/devel/apr1
make deinstall clean
cd
/usr/ports/www/apache22
make
install clean |
Приведенное решение опробовано на боевом серваке. Все встало и корректно работает.
Автор: Кирилл Павлюков
мая 14
Сегодня обнаружил замечатальную на мой взгляд вещь - Zend Framework появился в коллекции портов FreeBSD. Вернее сказать, он и раньше такм был, но присутствовал лишь в виде самой первой редакции - Zend Framework 1.0. А теперь имеется возможность установить самый последний продакшн-релиз: 1.8.
Надеюсь, так будет и в будущем, и что следующие релизы можно будет устанавливать с помощью portupgrade.
Установка порта предельно проста:
1 2
| s1# cd /usr/ports/www/zend-framework
s1# make install clean |
Автор: Кирилл Павлюков
\\ Метки: FreeBSD, portupgrade, Zend Framework
мая 14
Есть у меня книга «FreeBSD. Подробное руководство». Покупалась она довольно давно, примерно в 2004 году, когда жесткий диск размером в 80 гигабайт считался роскошью. Книга хорошая, но на сегодняшний день морально устаревшая (Хотя, возможно, вышли ее дополненные переиздания). Одна из ее глав посвящена вопросу разбивки жесткого диска во время установки FreeBSD, а в частности – размеру создаваемых слайсов.
В 2006 году, когда я впервые устанавливал Фрю на сервер, который планировалось пустить в продакшн, по совету автора книги я оставил под корневой раздел аж 256 Мб диска… И вчера имел из-за этого проблему.
Как известно, хорошим тоном считается оставлять успешно работающие ядра системы, чтобы в случае проблем можно было загрузить машину со старого ядра. Но GENERIC-конфигурации ядер FreeBSD 7.x стали собираться с флагом отладки. А следовательно, ядро с модулями стало прибавлять раза в 3 в весе.
До вчерашнего дня наш сервер крутился на ядре 7.0, которое было собрано с отладкой и весило около 115 Мб. При попытке установить GENERIC-ядро релиза 7.2 я столкнулся с нехваткой места в корневом разделе. То есть, получается, что 2 GENERIC-ядра забивают почти все место в разделе.
Поэтому хочу предостеречь вас от подобной проблемы: отводите под корневой раздел FreeBSD не меньше 1-2 Гб. Благо, жесткие диски сейчас недорогие.
Автор: Кирилл Павлюков
\\ Метки: FreeBSD
Сен 30
На днях столкнулся с необходимостью донастроить работающий Postfix. Но так как предполагалось внести изменения лишь в одну строку, то бекап конфига делать я поленился.
Потом, как всегда бывает, оказалось, что одной строчкой я не отделаюсь… В общем, слегка запутавшись, я отключил проверку на вирусы и антиспам. Потом долго пытался найти, что именно я упустил из виду… Почта все это время работала, но антиспам – нет. Из-за этого в мой ящик (он настроен как catch-all для домена) свалилось около тысячи писем весьма сомнительной потребности.
Так что, товарищи, как выяснилось, напоминать о необходимости тщательного дублирования рабочих конфигурационных файлов, нужно повторять всем и всегда.
Делайте бекапы! Так проще жить… )))
Автор: Кирилл Павлюков
\\ Метки: FreeBSD, Postfix
Мар 17
В моем недавнем посте про Squid под FreeBSD. Я рассказывал о том, как произвести NCSA-авторизацию. Serge, попросил рассказать о том, как авторизировать пользователя в Active Directory. Я уж принялся было выполнять его просьбу, но природная лень заставила меня поискать статьи по этой теме в интернете.
И нужная статья была найдена по адресу http://www.sys-adm.org.ua/www/squid-ad.php
Считаю, что, как говорится, тема сисек раскрыта, и мне не зачем загаживать сеть лишними килобайтами.
Автор: Кирилл Павлюков
\\ Метки: Active Directory, FreeBSD, Squid
Мар 13
В одном из прошлых постов я написал, как установить и запустить прокси-сервер Squid под FreeBSD. В той заметке была указана лишь минимальная настройка, которая никак не затрагивала вопрос об авторизации. Пришло время «донастроить» прокси.
Итак, Squid предоставляет различные механизмы авторизации пользователей. Какой из них выбрать – зависит от ваших потребностей. Меня вполне устроила NCSA-авторизация, о ней и расскажу.
Для использования этого механизма, нужно добавить в конфиг-файл следующие строки:
1 2 3 4
| auth_param basic program /usr/local/libexec/squid/ncsa_auth /usr/local/etc/squid/users<br/>
auth_param basic children 5<br/>
auth_param basic realm Squid proxy-caching web server<br/>
auth_param basic credentialsttl 2 hours |
А также заменить строку
на
1 2 3
| acl users proxy_auth REQUIRED<br/>
http_access allow users<br/>
http_access deny all |
Теперь нужно создать файл /usr/local/etc/squid/internet_users и добавить в него пользователей. Делается это с помощью утилиты htpasswd. Если файл с паролями еще не существует, выполните htpasswd с ключом -с:
1 2 3 4
| s1# htpasswd -c /usr/local/etc/squid/users kirill<br/>
New password: *****<br/>
Re-type new password: *****<br/>
Adding password for user kirill |
Если же вам нужно добавить пользователя в уже существующий файл, выполните
1 2 3 4
| s1# htpasswd /usr/local/etc/squid/users kirill<br/>
New password: *****<br/>
Re-type new password: *****<br/>
Adding password for user kirill |
Посмотрите теперь на файл паролей. В нем должна появиться строка, содержащая введенное вами имя ползователя и хэш его пароля, разделенные двоеточием.
1 2
| s1# cat /usr/local/etc/squid/users<br/>
kirill:0Q2rNA.AEfZOk |
В общем, настройка завершена. Осталось заставить Squid перечитать настройки, чтобы внесенные изменения вступили в силу.
Автор: Кирилл Павлюков
\\ Метки: FreeBSD, Squid, настройка
Мар 12
Недавно на сайте FreeBSD я наткнулся на упоминание о выходе релиза DesktopBSD. (Для точности стоит отметить, что новость об этом была опубликована еще в январе
) Честно говоря, до этого я ни разу не слышал об этом звере, поэтому с удовольствием потратил немного времени на изучение его возможностей. Официальный сайт системы – http://desktopbsd.net/
Как сказано на офсайте – это коллекция приложений, разработанная для того, чтобы сделать жизнь проще и продуктивнее. Но это слишком высокопарно. Если говорить земным языком, то DesktopBSD – это базирующаяся на FreeBSD система с «предустановленным» графическим интерфейсом, и некоторыми другими утилитами для конфигурирования системы и установки программ.
Конечно, ничего особенного – линуксоидов с такими «предестями» хоть отбавляй. Но мне нравится, что альтернатива «окошкам» (WMD – Windows Must Die!) теперь доступна и на основе ИМХО самой стабильной и надежной системы.
Что ж, будем экспериментировать! Попытаюсь на этой неделе поставить DesktopBSD на свой домашний компьютер. Что-нибудь из этого да получится.
Обо всех моих успехах и неудачах, буду писать в блоге.
Велкам, так сказать.
Автор: Кирилл Павлюков
\\ Метки: DesktopBSD, FreeBSD
Мар 03
Днями обновил на сервере ОС. Связано это было с глюком в расходовании ресурсов, который я надеялся перебороть, перейдя на 7 ветку.
До этого на сервере стояла FreeBSD 6.1-RELEASE. При сборке мира компилятор несколько раз ругался на то, что не может что-то там собрать (просто уже забыл, что именно
) Трехчасовые танцы с бубном, правка make.conf и пр. привинтивные методы результата не дали.
Клиент был излечен методом обновления до 6.3-STABLE, а затем уж до 7.0-RELEASE.
ПС. При обновлении ни один порт не пострадал, все заработало без дополнительных действий.
Автор: Кирилл Павлюков
\\ Метки: FreeBSD
Мар 03
В этом посте я расскажу, как быстро установить прокси-сервер Squid 3.0.STABLE. Сразу оговорюсь, что данное руководство не может и не претендует на статус полного или совершенного, так как не затрагивает всех вопросов конфигурирования этого порта. Тем не менее, оно должно устроить ленивцев, которым «влом» читать маны, а прокси нужно поставить сегодня и сейчас. Читать запись полностью »
Автор: Кирилл Павлюков
\\ Метки: FreeBSD, ICQ, Squid
Свежие комментарии