11
Ноя

Pkg — ошибка «pkg: PACKAGESITE in pkg.conf is deprecated. Please create a repository configuration file»

Автор: admin | Рубрика: FreeBSD

На одном из серверов после перехода на использование pkgng как-то отловил такую ошибку:
pkg: PACKAGESITE in pkg.conf is deprecated. Please create a repository configuration file
Решил это дело просто так не оставлять… Согласно информации на wiki.freebsd.org, в этом случае необходимо выполнить следующие шаги.

Прежде всего, с помощью pkg -v, убеждаемся, что версия pkg 1.1.4 или выше (желательно 1.2.x).
Удаляем старый конфигурационный файл pkg.conf и создаем новый из предложеного примера:
# rm /usr/local/etc/pkg.conf
# cp /usr/local/etc/pkg.conf.sample /usr/local/etc/pkg.conf

Создадим каталог репозитория и конфигурационный файл репозитория:
# mkdir -p /usr/local/etc/pkg/repos
# touch /usr/local/etc/pkg/repos/FreeBSD.conf

Файл /usr/local/etc/pkg/repos/FreeBSD.conf редактируем до следующего состояния:
FreeBSD: {
url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
mirror_type: "srv",
enabled: yes
}

Запускаем процедуру обновления пакетов:
# pkg update
Updating repository catalogue
digests.txz 100% 1067KB 1.0MB/s 1.0MB/s 00:01
packagesite.txz 100% 4946KB 1.6MB/s 286.4KB/s 00:03
Incremental update completed, 22859 packages processed:
0 packages updated, 0 removed and 22859 added.

Проверяем работоспособность конфигурации. Например, использованием функции поиска:
# pkg search wget
gwget-1.0.4_6
wget-1.15
wgetpaste-2.23

21
Фев

Как создать .htpasswd?

Автор: admin | Рубрика: FreeBSD

.htpasswd — файл, содержащий пароли для доступа к ресурсу у веб-сервера Apache. Метод авторизации с использованием такого файла носит название базового. Некоторые другие веб-серверы, например, nginx, также могут работать с этим файлом.

Для создания нового файла .htpasswd
В командной строке набираем команду:

htpasswd -mbc /Dir/.htpasswd username PassWord
Для изменения существующего файла .htpasswd

В командной строке набираем команду:

htpasswd -mb /Dir/.htpasswd username PassWord
Dir — каталог где будет лежать файл

username — имя с которым будем заходить в закрытую .htaccess область

PassWord — пароль с которым будем заходить в закрытую .htaccess область

Полный список ключей :

-c Create a new file.
-n Don’t update file; display results on stdout.
-m Force MD5 encryption of the password.
-d Force CRYPT encryption of the password (default).
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.

13
Фев

Limiting closed port RST response

Автор: admin | Рубрика: FreeBSD

Если в /var/log/messages встречаются сообщения типа

kernel: Limiting closed port RST response from 211 to 200 packets/sec
rkrhkr kernel: Limiting closed port RST response from203 to 200 packets/sec

То скорее всего ваши порты сканируют
Против это поможет следующее, в /etc/sysctl

net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1

Ну и зададим эти параметры сразу (предыдущее действие применяет их после reboot)

#sysctl net.inet.tcp.blackhole=2
#sysctl net.inet.udp.blackhole=1

также еще можно добавить:

# sysctl -a | grep net.inet.icmp.icmplim
net.inet.icmp.icmplim: 2000
net.inet.icmp.icmplim_output: 1

10
Фев

Быстрое тестирование производительности дисков во FreeBSD

Автор: admin | Рубрика: FreeBSD

В FreeBSD есть своя собственная утилита для теста производительности жестких дисков, имеет она название diskinfo. Утилита имеет несколько ключей, можно получить сведения о следующих характеристиках диска: скорость передачи данных, время позиционирования головок.
Пример использования:

#diskinfo -c /dev/ad14
/dev/ad14

512 # sectorsize
750156374016 # mediasize in bytes (699G)
1465149168 # mediasize in sectors
1453521 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.
ad:S13UJ1BQ908897 # Disk ident.

I/O command overhead:
time to read 10MB block 0.111087 sec = 0.005 msec/sector
time to read 20480 sectors 2.361939 sec = 0.115 msec/sector
calculated command overhead = 0.110 msec/sector

23
Янв

nginx socket() failed (55 no buffer space available)

Автор: admin | Рубрика: FreeBSD

В логах nginx очень много ошибок

socket() failed (55: No buffer space available) while connecting to upstream

Поискав немного в интернете нашел немного решений!!! Для это го нам нужно проверить некоторые параметры.

vmstat -z | egrep 'socket|tcpcb'
vmstat -z | egrep 'mbuf_cluster|mbuf|socket|tcp_inpcb|tcpcb|tcptw|tcpreass'
netstat -m

Во FreeBSD есть такой параметр который рекомендуется увеличить!

kern.ipc.maxsockets="32768"

21
Июн

Как посмотреть использование памяти во FreeBSD

Автор: admin | Рубрика: FreeBSD

Встроенной утилиты во FreeBSD нет, не считая утилиту TOP, по этому пришлось чуть покопаться и найти в портах такую утилиту как FreeColor.

Итак, ставим:

# cd /usr/ports/sysutils/freecolor
# make install clean

После чего утилиту можно запускать:

# freecolor
Physical  : [###################................] 56%   (438848/773600)
Swap      : [###################################] 100%  (444452/444452)

Можно посмотреть ключи:

# freecolor -h

В кратце:

-h    : Помощь
-b    : Отображать память в байтах
-k    : Отображать память в КБ
-m   : Обображать память в МБ
-o    : Текстовый вывод (не шкалами, как выше, а как в Linux):
-t     : Показывать общую память (физическую+виртуальную) как дополнительную строку
-s     : Основлять показание через N секунд
-V    : Показать версию

Далее запускаем программу с нужным Вам ключем.

25
Апр

Отключение MySQL binary logging

Автор: admin | Рубрика: FreeBSD

Начиная с версии 4.1.3 MySQL записывает все запросы, которые приводят к изменению данных, в бинарный журнал обновлений (binary log). Но эта опция может оказаться и отключенной по умолчанию. Включается поддержка бинарных логов строкой log-bin=mysql-bin в конфигурационном файле (my.cnf). Ведутся логи и в том случае, если MySQL запущен с ключом —log-bin[=file_name].

Журнал обновлений обычно хранится в файлах вида mysql-bin. циферки. Пример: mysql-bin.000171. Если в настройках не задан полный путь, эти файлы будут размещены в директории, в которой MySQL хранит базы данных. По умолчанию размер каждого файла — 1 ГБ.

Для работы с бинарными логами понадобится утилита mysqlbinlog. Она идёт в комплекте с MySQL сервером. Утилита обрабатывает файлы журнала и выводит пригодный к использованию SQL код прямо в консоль. Вывод можно перенаправить в файл (mysqlbinlog [параметры] [лог_файлы] > файл .sql), непосредственно в MySQL (mysqlbinlog [параметры] / mysql [параметры] ) или указать файл для вывода в параметрах утилиты. Например:

# mysqlbinlog -s -d db_name -r out.sql mysql-bin.000038

В данном случае будет обработан файл mysql-bin.000038 (из текущей директории), вывод оправится в out.sql, будут выведены только команды, относящиеся к изменению базы с именем db_name. Параметром -s мы запретили вывод дополнительной служебной информации.

19
Мар

Первоначальная установка FreeBSD 9.0

Автор: admin | Рубрика: FreeBSD

Установка FreeBSD возможна тремя способами:

  1. с помощью заранее приготовленного установочного CD/DVD;
  2. с помощью установочной USB Flash;
  3. по сети…

Все эти три метода достаточно хороши. Первый из них многое время использовался для компьютеров, которые не поддерживали загрузку через USB-порт. А третий выручает в том случае, если подключен интернет. Вам придется решить какой из них предпочтительнее для Вас.

Установка с CD/DVD или загрузочной флешки

Для начала получим с официального сайта дистрибутив, соответствующий Вашим системным требованиям (В нашем случае подойдет ISO-образ диска для платформы i386). Теперь запишем образ на CD/DVD или создадим установочную flash…
Теперь все подготовлено. Выставляем в BIOS приоритет загрузки с CD/DVD-привода (или с USB флешкарты) и и перезагружаемся. Первым, что мы увидим станет Меню Загрузки (Boot Loader Menu):

Хочется обратить внимание на одну опцию — загрузку в однопользовательском режиме (Boot Single User), — которая используется в случае, если Вы только что пересобрали «мир» полностью или частично. Но так как сейчас она нам не потребуется просто нажимаем клавишу Enter и продолжаем установку.
Будет проведен поиск устройств, которые смогло найти и распознать основное ядро FreeBSD (GENERIC kernel). Советуем просмотреть весь список, перелистывая страницы с помощью Page UP и Page Down (прокрутка включается с помощью клавиши Scroll Lock), чтобы выявить недостающие модули ядра.
После процедуры идентификации имеющихся устройств появится окно, которое предоставит выбор одного из трех режимов загрузки (мы выберем Install):

24
Янв

Как распаковать RAR архив в FreeBSD

Автор: admin | Рубрика: FreeBSD

Устанавливаем unrar

cd /usr/ports/archivers/unrar && make install clean

и пробуем

unrar x file.rar

Вместо file.rar имя вашего архива и путь к нему, я эту команду выполняю уже находясь в нужно каталоге. Получаю:

unrar: Команда не найдена.

Набираем команду:

rehash

Пробуем еще раз

unrar x file.rar

Вот на это и все! Просто и легко!

21
Янв

Мониторинг состояния hdd с помощью утилиты S.M.A.R.T. HDD на FreeBSD

Автор: admin | Рубрика: FreeBSD

В логах начала сыпаться ругань на жесткий. Первое, что нужно сделать  — заменить шлейф. Дальше решено поставить мониторинг SMART.

SMART очень полезная вещь, и несмотря на то, что некоторые люди утверждают, что порой HDD вылетают с нормальными показаниями SMART.

S.M.A.R.T. (англ. Self Monitoring Analysing and Reporting Technology) — технология оценки состояния жёсткого диска встроенной аппаратурой самодиагностики, а также механизм предсказания времени выхода его из строя. Т.е. ваш HDD умеет сообщать наиболее критичные показатели своей работы, а вы соответственно можете их оценивать и принимать решение – делать ли срочный внеплановый Backup или у вас и вашего жесткого диска итак все хорошо.

Устанавливаем с портов FreeBSD:

Обновляем порты:

# portsnap fetch update

Далее… Находим следующий порт:

# cd /usr/ports/sysutils/
# make search name='smart'
Port: smartmontools-5.39.1
Path: /usr/ports/sysutils/smartmontools
Info: S.M.A.R.T. disk monitoring tools
Maint: samm@os2.kiev.ua
B-deps: gettext-0.17_1 gmake-3.81_3 libiconv-1.13.1_1
R-deps:
WWW: http://smartmontools.sourceforge.net

Устанавливаем порт:

# cd /usr/ports/sysutils/smartmontools
# make install clean;rehash

Проверяем включен ли SMART на жестком