Архив заметок

FreeBSD

Подписаться на эту метку по RSS

The used table type doesn't support FULLTEXT indexes.

Просмотров: 4853Комментарии: 0
FreeBSDMybboardMySQL
Обязательно сделайте резервную копию БД перед дальнейшими действиями. В частности это касается администраторов форума MyBB(MyBulletinBoard).

Случился неприятный затык. При конвертировании типа таблицы из MYISAM в INNODB, мускул стал ругаться. INNODB не поддерживает такую индексацию. Поэтому, чтобы все-таки конвертировать табличку в INNODB надо индексы эти удалить.

Изначально у меня на одном из форумов стоял fulltext поиск, изменив его на стандартный, я думал, что проблема уйдет сама собой. Ожидания мои не оправдались и решено было выпилить индексы вручную.

Делал я все действия в консоли, хотя тоже самое можно провернуть через phpmyadmin.

Итак, погнали:

$ mysql -u root -p
Enter password:

Я залез сразу под root'ом. В целях повышения безопасности, логинитесь на сервер mysql под хозяином конкретной БД.

Далее смотрим список бд. Я например, чтобы не ошибиться в выборе базы вывожу его.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| ftp                |
| mail               |
| main               |
| mybb               |
| mysql              |
| performance_schema |
| pmadb              |
| webmail            |
+--------------------+
9 rows in set (0.01 sec)

Таблица mybb. Используем ее.

mysql> use mybb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

Теперь смотрим с какими параметрами была создана база, где используется fulltext:

mysql> show create table mybb_posts;
........................
| mybb_posts | CREATE TABLE `mybb_posts` (
........................
  PRIMARY KEY (`pid`),
  KEY `tid` (`tid`,`uid`),
  KEY `uid` (`uid`),
  KEY `visible` (`visible`),
  KEY `dateline` (`dateline`),
  KEY `longipaddress` (`longipaddress`),
  FULLTEXT KEY `message` (`message`)
) ENGINE=MyISAM AUTO_INCREMENT=5477 DEFAULT CHARSET=utf8 |
1 row in set (0.00 sec)

Мне нужен FULLTEXT KEY `message` (`message`). Избавимся от него.

mysql> alter table mybb_posts drop index message;
Query OK, 5427 rows affected (0.16 sec)
Records: 5427  Duplicates: 0  Warnings: 0

После чистки, табличка конвертировалась в INNODB без проблем.

Мониторинг сервера с помощью Cacti и Spine регистратора

Просмотров: 12583Комментарии: 2
FreeBSDСтатистика

Приветствую всех.

В предыдущей статье я уже пытался написать об этой программе. По некоторым причинам ее закончить не удалось.

Сегодня написал заново статью, возможно пригодится кому-нибудь в будущем или настоящем.

Ремарка: У вас уже должно быть установлено и настроено следующее ПО:
  • apache/nginx
  • php
  • mysql

Установка и настройка этих пакетов выходят за рамки этой статьи.

В настоящее время я перешел на обновление портов через svn, cvs скоро отомрет как ненужный атавизм.

Напомню, что перед любой установкой софта, обязательно обновите порты.

После обновления, установим cacti, net-snmp, cacti-spine

# portmaster net-mgmt/cacti net-mgmt/cacti-spine net-mgmt/net-snmp

Что указал я:

net-snmp.jpg

После установки необходимо создать БД для cacti. Я делал это с помощью phpmyadmin, вы же можете создать как удобнее вам. Через консоль:

  1. Создаем БД:
  2. # mysqladmin --user=root create cacti
  3. Создаем в mysql пользователя и пароль для бд cacti:
  4. # echo "GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';
    FLUSH PRIVILEGES;" | mysql
  5. Импортуруем таблицы в нашу бд:
  6. # mysql -u cactiuser -p -D cacti < /usr/local/share/cacti/cacti.sql
    Синтаксис Mysql немного поменялся со временем. Я добавил недостающие ключи для корректного импорта, а именно:
    [ul]
  7. -u пользователь;
  8. -p пароль;
  9. -D база данных
  10. [/ul]

Читать далее...

Shared object "libGeoIP.so.5" not found

Просмотров: 2887Комментарии: 0
FreeBSDNginx

Приветствую.

На досуге как-то криво обновил порты, что после перезагрузки железки появилась такая требуха:

Performing sanity check on nginx configuration:
Shared object "libGeoIP.so.5" not found, required by "nginx"
Starting nginx.
Shared object "libGeoIP.so.5" not found, required by "nginx"
/etc/rc: WARNING: failed to start nginx

Родной нгинкс требовал библиотечку GeoIP smile решил проблему следующим образом. Сначала посмотрел какие зависимости есть у пакета nginx:

# portmaster --show-work www/nginx
===>>> Currently installed version: nginx-1.2.6,1
===>>> Port directory: /usr/ports/www/nginx
===>>> Starting check for all dependencies
===>>> Gathering dependency list for www/nginx from ports
===>>> Installed converters/libiconv
===>>> Installed devel/cmake
===>>> Installed devel/cmake-modules
===>>> Installed devel/gettext
===>>> Installed devel/gmake
===>>> Installed devel/google-perftools
===>>> Installed devel/libtool
===>>> Installed devel/pcre
===>>> Installed devel/pkgconf
===>>> Installed graphics/gd
===>>> Installed graphics/jpeg
===>>> Installed graphics/png
===>>> Installed lang/perl5.16
===>>> NOT INSTALLED net/GeoIP
===>>> Installed ports-mgmt/pkg
===>>> Installed print/freetype2
===>>> Installed textproc/expat2
===>>> Installed x11-fonts/fontconfig

Не установлено, конечно, забавно получилось. Я даже этот пакет и не удалял. Ну да бог с ним, установим.

# portmaster net/GeoIP
............
............
# /usr/local/etc/rc.d/nginx start
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.
# ps -aux | grep nginx
root 31716 0,0 0,1 65940 9464 ?? Ss 23:11 0:00,00 nginx: master process /usr/local/sbin/nginx
www 31717 0,0 0,1 65940 11132 ?? S 23:11 0:00,00 nginx: worker process (nginx)
www 31718 0,0 0,1 65940 11132 ?? S 23:11 0:00,00 nginx: worker process (nginx)
root 31720 0,0 0,0 16280 2120 0 S+ 23:11 0:00,00 grep nginx

SVN обновление портов и исходных текстов

Просмотров: 4303Комментарии: 6
FreeBSD

Всем привет. Пока не забыл, напишу маленькую заметку на память про SVN. Что это за шляпа?

Subversion[1] (также известная как «SVN»[2]) — свободная централизованная система управления версиями, официально выпущенная в 2004 году компанией CollabNet Inc.

Итак SVN это будущее, а CVS это прошлое smile Конечно, если бы не это сообщение на офф. сайте Фряхи:

Warning: As of late 2012, the FreeBSD Ports Project is in the process of migrating revision control systems from CVS to Subversion. As a result, these instructions are in a state of change. The preferred mechanism for general ports use is Portsnap. Users requiring local customization of ports (that is, maintaining additional local patches) will probably prefer to use Subversion directly. The CVSup service is being phased out as of February 28, 2013, and further use is discouraged.

я бы и дальше использовал CVSup или его аналог в поставке с Фрей - csup. Но, времена меняются, а динозавром быть не хочется. В общем, все это лирика. Мне надо было обновить порты с помощью SVN и, что я сделал для этого?

Правильно, установил сначала клиент svn. Читать далее...

Отключение ipfw

Просмотров: 7883Комментарии: 0
FreeBSD

Понадобилось мне отключить файерволл(который зашит в ядро) ipfw на тазике. Поменял в /etc/rc.conf:

firewall_enable="NO"

Перезагрузился и в итоге машинка перестала отвечать на запросы. Порыл интернеты и обнаружил, что для полного отключения необходимо добавить еще строки в /etc/sysctl.conf:

net.inet.ip.fw.enable=0
net.inet6.ip.fw.enable=0

Перегружаем настройки:

# /etc/rc.d/sysctl restart

Файер отключен более, чем полностью.

FreeBSD. Температура HDD. SMART

Просмотров: 5566Комментарии: 0
FreeBSDСтатистика

На балконе стоит ацкий тазик, используемый под файлопомойку и dlna сервер. Понадобилось тут следить за температурой жесткого диска и его состоянием, дабы быть в курсе работы девайса. Естессно для фряхи описаны кучи руководств по мониторингу системы. Эта статья на память, чтоб не копаться в гуглах и интернетах в поисках команд smile

beast# pkg_info | grep smart
smartmontools-5.43 S.M.A.R.T. disk monitoring tools
beast#

Это я поставил тулзу для мониторинга жестких дисков.

Теперь посмотрим включена ли поддержка smart:

beast# smartctl -i /dev/ada0
smartctl 5.43 2012-06-30 r3573 (local build)
Copyright (C) 2002-12 by Bruce Allen, https://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Model Family: SAMSUNG SpinPoint P80 SD
Device Model: SAMSUNG HD160JJ
Serial Number: S08HJ1MP207824
Firmware Version: ZM100-47
User Capacity: 160 041 885 696 bytes
Sector Size: 512 bytes logical/physical
Device is: In smartctl database
ATA Version is: 7
ATA Standard is: ATA/ATAPI-7 T13 1532D revision 4a
Local Time is: Mon Sep 17 15:01:57 2012 MSK
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Включен. Если нет, то включить smart можно в биосе. В этом веке все диски должны поддерживать эту фичу. Далее, в конфиге я расскомментил только одну строчку:

beast# cat smartd.conf | grep ada0
/dev/ada0 -a -m mail@mail -o on -S on -s (S/../.././02|L/../../6/03)
beast#

Вместо mail@mail указываете свой ящик, туда будут сыпаться уведомления о проблемах и ошибках, если таковые возникнут.

Чтобы узнать текущую температуру жесткого, пишите команду:

beast# smartctl -a /dev/ada0 | grep 194
194 Temperature_Celsius 0x0022 142 064 000 Old_age Always - 32
beast#

Если указать просто:

beast# smartctl -a /dev/ada0

То программка выведет всю инфу по жесткому диску.

Бэкап и восстановление FreeBSD

Просмотров: 4316Комментарии: 2
FreeBSD

Накопал видео на youtube от startnetworkings c подробным описанием бэкапа и восстановления ОС FreeBSD по сети. В видео для хранения бэкапа используется ОС Windows 2008, но это не суть важно smile

P.S. Видео на русском с разжевыванием каждого шага.