FreeBSD fortune — цитаты при входе

При логине во фрибсд выходят 3 сообщения:
1. Версия
2. motd — статичный текстовый файл, его можно менять здесь: /etc/motd.template
3. fortune — программа, которая выводит цитаты из файла(одного или нескольких), по-умолчанию случайная строка из файла, расположенного в /usr/share/games/fortune/freebsd-tips
при замене данного файла на свой необходимо пересоздать базу данных freebsd-tips.dat командой:
strfile freebsd-tips

Возможные ошибки
При загрузке будет появляться сообщение вместо цитат: «fortune:freebsd-tips not a fortune file or directory»
Решение: пересоздать пользователя

Для объединения нескольких файлов в один, можно использовать:
cat file1 file2 > file3
тогда файл1 и файл2 будут последовательно записаны в файл3.

не входит в phpMyAdmin после обновления mariadb

Выдавал ошибку при попытке входа в phpMyAdmin, после ввода пароля:
«mysqli::real_connect(): (HY000/2002): No such file or directory»

Решение, прописать в php.ini путь для сокетов, добавив следующие строки в соответсвующий раздел:

mysql.default_socket = /var/run/mysql/mysql.sock
mysqli.default_socket = /var/run/mysql/mysql.sock

https://forums.freebsd.org/threads/cant-connect-to-mysql-database-after-upgrading-to-mariadb-10-4-13_3.76032/

FeeBSD q вместо линий псевдографики в mc

Подключаюсь с помощью PuTTY к серверу FreeBSD, запускаю Midnight Commander, но вместо символов псевдографики (которыми рисуются рамки MC) вижу лишь символы i, x, t, q и т.п.:

Читать далее «FeeBSD q вместо линий псевдографики в mc»

Собственный сервер синхронизации адресной книги телефона CardDAV и календаря CalDAV на FreeBSD и Baikal

Задача: создать собственный сервер синхронизации контактов и календарей для телефонов(Android) и почтовых клиентов(Thunderbird). На компе редактирование карточек контактов  осуществлять с помощью почтового клиента.

Решение: На сервере FreeBSD с настроенным хостингом добавляем порт Baikal. На компе почтовый клиент Thunderbird с дополнениями. На телефоне CardDav отвечает за синхронизацию контактов и календарей с сервера на телефон и обратно. Выборка происходит по наименованию Группы контактов. Читать далее «Собственный сервер синхронизации адресной книги телефона CardDAV и календаря CalDAV на FreeBSD и Baikal»

Создать трансляцию на сайте, хостинг на FreeBSD

Итак, вы хотите вещать в сеть свои видеоигры или видео с вебкамеры, но не хотите пользоваться буржуинскими и прочими сторонними службами типа ютуба. В этой записи покажу как создать онлайн вещание(стрим) на сервере FreeBSD с помощью NGINX используюя  RTMP протокол, который и предназначен для использования при передачи потокового видео и аудиопотоков с веб-камер через Интернет. Читать далее «Создать трансляцию на сайте, хостинг на FreeBSD»

FreeBSD, XigmaNAS, Vnstat — мониторим сетевой трафик

Продолжая эпопею считалок и мониторилок сетевых интерфейсов и трафика, рассмотрим утилиту vnstat. Vnstat — консольная утилита для учета сетевого трафика. Сохраяет историю сетевого трафика для выбранных интерфейсов. Трафик считается отдельно для каждого интерфейса (как входящий, так и исходящий). Доступна различная детализация отчетов: час, день, неделя, месяц… Проект свежий и живой.

Выполняем установку:

# pkg install vnstat

После установки утилита «любезно» предупредила, что необходимо внести значение основного сетевого интерфейса в конфигурацию.  Ну а если нас заинтересует информация о утилите, необходимо посетить ресурс http://humdi.net/vnstat/, либо же воспользоваться справочной системой FreeBSD.

Начинаем попытки «подружиться» с утилитой.  Для начала скопируем пример конфигурационного файла непосредственно в рабочий конфигурационный файл:

# cp /usr/local/etc/vnstat.conf.sample /usr/local/etc/vnstat.conf

 

Следующим шагом редактируем /usr/local/etc/vnstat.conf, подстраивая его под свои нужды.  Я же изменил только название интерфейса, на котором будем «слушать» трафик. Потом в конфигурационном файле находим опцию DatabaseDir, и согласно указанному значению, создаем базу данных (в моем частном случае это /var/db/vnstat, поскольку настройки по умолчанию этого параметра я не изменял) и прописываем права на эту папку.

# mkdir /var/db/vnstat
# chown vnstat /var/db/vnstat

Добавляем службу в автозапуск в rc.conf:

vnstat_enable=»YES»

Теперь проинициализируем интерфейсы, для которых будем собирать статистику:

# vnstat -u -i tun0
Error: Unable to read database «/var/db/vnstat/tun0».
Info: -> A new database has been created.
# >vnstat -u -i re0
Error: Unable to read database «/var/db/vnstat/vlan8».
Info: -> A new database has been created.

 

Также, есть возможность воспользоваться vnStat PHP Frontend — написанный на PHP web-интерфейс для vnStat. Переходим в каталог /usr/local/www и скачиваем архив web-интерфейса:

https://github.com/bjd/vnstat-php-frontend

Скачиваем, распаковываем скачанный архив:

https://github.com/bjd/vnstat-php-frontend/archive/refs/heads/master.zip

Потом переименовываем каталог с vnStat PHP Frontend в более «дружелюбное» название: vnstat

Правим конфигурационный файл web-интерфейса /usr/local/www/vnstat/config.php до следующего состояния:

# cat /usr/local/www/vnstat/config.php

<?php
error_reporting(E_ALL | E_NOTICE);
$locale = ‘en_EN.UTF-8’;
$language = ‘ru‘;
$iface_list = array(‘re0‘, ‘tun0‘);
$iface_title[‘re0‘] = ‘Internal’;
$iface_title[‘tun0‘] = ‘OpenVPN‘;
$vnstat_bin = ‘/usr/local/bin/vnstat’;
$data_dir = ‘./dumps’;
$graph_format=’svg’;
define(‘GRAPH_FONT’,dirname(__FILE__).’/VeraBd.ttf’);
define(‘SVG_FONT’, ‘Verdana’);
define(‘DEFAULT_COLORSCHEME’, ‘dark’);
?>

Создадим каталог для дампа:

# mkdir /usr/local/www/vnstat/dumps

Потом добавлем в cron следующие строки:

*/5 * * * * root /usr/local/bin/vnstat --dumpdb -i vlan8 > /usr/local/www/vnstat/dumps/vnstat_dump_vlan8
*/5 * * * * root /usr/local/bin/vnstat --dumpdb -i tun0 > /usr/local/www/vnstat/dumps/vnstat_dump_tun0

После измнений перестартовываем cron:

# killall -1 cron

Далее добавляем в конфигурационный блок Apache следующий блок:

Alias /vnstat/ "/usr/local/www/vnstat/"
    <Directory "/usr/local/www/vnstat/">
         Options none
         AllowOverride All
         Order Allow,Deny
         Allow from all
    </Directory>

После внесения изменений, необходимо перезапустить Apache:

# apachectl graceful

Несколько скриншотов:

Vnstat

Vnstat

https://github.com/redding/dumpdb

vnStat в FreeBSD

Смотрим вывод команды vnstatd и запускаем vnstat в режиме служб

root@ws1:/ # vnstatd
vnStat daemon 2.6 by Teemu Toivola <tst at iki dot fi>


-d, --daemon fork process to background
-n, --nodaemon stay in foreground attached to the terminal


-s, --sync sync interface counters on first update
-D, --debug show additional debug and disable daemon
-?, --help show this help
-v, --version show version
-p, --pidfile <file> select used pid file
-u, --user <user> set daemon process user
-g, --group <group> set daemon process group
--config <config file> select used config file
--noadd don't add found interfaces if no dbs are found
--alwaysadd always add new interfaces even when some dbs exist


See also "man vnstatd".
root@ws1:/ # vnstatd -d --config /usr/local/etc/vnstat.conf
No interfaces found in database, adding available interfaces...
Interface "vtnet0" added with 1000 Mbit bandwidth limit.
Interface "pflog0" added with 1000 Mbit bandwidth limit.
-> 2 new interfaces found.
Limits can be modified using the configuration file. See "man vnstat.conf".
Unwanted interfaces can be removed from monitoring with "vnstat --remove".
root@ws1:/ #

 

При попытке посмотреть вывод vnstat, получаем ошибку о недостаточности данных

root@ws1:/ # vnstat


rx / tx / total / estimated
pflog0: Not enough data available yet.
vtnet0: Not enough data available yet.
root@ws1:/ #

 

Проверяем работает ли vnstat

root@ws1:/ # ps auxww | grep vnstat
root 24666 0.0 0.2 13880 4128 — Ss 17:39 0:00.07 vnstatd -d —config /usr/local/etc/vnstat.conf
root 24754 0.0 0.1 11288 2148 0 S+ 17:58 0:00.00 grep vnstat
root@ws1:/ #

Смотрим вывод спустя минут 10

root@ws1:/ # vnstat
Database updated: 20201129 18:35:00
vtnet0 since 20201129
rx: 596.07 KiB tx: 670.25 KiB total: 1.24 MiB
monthly
rx | tx | total | avg. rate
————————+————-+————-+—————
202011 596.07 KiB | 670.25 KiB | 1.24 MiB | 4 bit/s
————————+————-+————-+—————
estimated — |||
daily
rx | tx | total | avg. rate
————————+————-+————-+—————
today 596.07 KiB | 670.25 KiB | 1.24 MiB | 155 bit/s
————————+————-+————-+—————
estimated 769 KiB | 865 KiB | 1.60 MiB |
root@ws1:/ #

Добавляем задание в планировщик CRON на запуск каждые 5 минут.

root@ws1:/ # crontab -e

Проверяем изменения в cron

root@ws1: # crontab -l
0 0,12 * * * /usr/local/bin/certbot renew
* * * * * cd /data/osbsd_com; php wp-cron.php doing_wp_cron > /dev/null 2>&1
*/5 * * * * /usr/local/bin/vnstat -u
root@ws1: #

Вывод справки vnStat

root@ws1:/ # vnstat —help
vnStat 2.6 by Teemu Toivola <tst at iki dot fi>
-5, —fiveminutes [limit] show 5 minutes
-h, —hours [limit] show hours
-hg, —hoursgraph show hours graph
-d, —days [limit] show days
-m, —months [limit] show months
-y, —years [limit] show years
-t, —top [limit] show top days
-b, —begin <date> set list begin date
-e, —end <date> set list end date
—oneline [mode] show simple parsable format
—json [mode] [limit] show database in json format
—xml [mode] [limit] show database in xml format
-tr, —traffic [time] calculate traffic
-l, —live [mode] show transfer rate in real time
-i, —iface <interface> select interface
Use «—longhelp» or «man vnstat» for complete list of options.
root@ws1:/ # vnstat —longhelp
vnStat 2.6 by Teemu Toivola <tst at iki dot fi>
Query:
-q, —query query database
-s, —short use short output
-5, —fiveminutes [limit] show 5 minutes
-h, —hours [limit] show hours
-hg, —hoursgraph show hours graph
-d, —days [limit] show days
-m, —months [limit] show months
-y, —years [limit] show years
-t, —top [limit] show top days
-b, —begin <date> set list begin date
-e, —end <date> set list end date
—oneline [mode] show simple parsable format
—json [mode] [limit] show database in json format
—xml [mode] [limit] show database in xml format
Modify:
—add add interface to database
—remove remove interface from database
—rename <name> rename interface in database
—setalias <alias> set alias for interface
Misc:
-i, —iface <interface> select interface
-?, —help show short help
-D, —debug show some additional debug information
-v, —version show version
-tr, —traffic [time] calculate traffic
-l, —live [mode] show transfer rate in real time
-ru, —rateunit [mode] swap configured rate unit
—limit <limit> set output entry limit
—style <mode> select output style (04)
—iflist show list of available interfaces
—dbdir <directory> select database directory
—locale <locale> set locale
—config <config file> select config file
—showconfig dump config file with current settings
—longhelp show this help
See also «man vnstat» for longer descriptions of each option.
root@ws1:/ #

Несколько примеров вывода vnstat:

Вывод статистики vnStat по часам в графическом виде

root@ws1:/ # vnstat -hg
vtnet0 18:25
^ t
| t
| t
| t
| t t
| t t
| t t
| t t
| t t
| t t
-+—————————————————————————>
| 19 20 21 22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18
h rx (KiB) tx (KiB) ][ h rx (KiB) tx (KiB) ][ h rx (KiB) tx (KiB)
19 0.0 0.0 ][ 03 0.0 0.0 ][ 11 0.0 0.0
20 0.0 0.0 ][ 04 0.0 0.0 ][ 12 0.0 0.0
21 0.0 0.0 ][ 05 0.0 0.0 ][ 13 0.0 0.0
22 0.0 0.0 ][ 06 0.0 0.0 ][ 14 0.0 0.0
23 0.0 0.0 ][ 07 0.0 0.0 ][ 15 0.0 0.0
00 0.0 0.0 ][ 08 0.0 0.0 ][ 16 0.0 0.0
01 0.0 0.0 ][ 09 0.0 0.0 ][ 17 823.3 7444.3
02 0.0 0.0 ][ 10 0.0 0.0 ][ 18 1058.3 11342.7
root@ws1:/ #

Вывод статистики в реальном времени

root@ws1:/ # vnstat -l
Monitoring vtnet0… (press CTRL-C to stop)
rx: 216 bit/s 0 p/s tx: 1.02 kbit/s 1 p/s

Вывод статистики vnStat за последние 5 минут

root@ws1:/ # vnstat -5
vtnet0 / 5 minute
time rx | tx | total | avg. rate
————————+————-+————-+—————
20201129
17:35 217 B | 250 B | 467 B | 12 bit/s
17:40 197.77 KiB | 1.42 MiB | 1.61 MiB | 44.99 kbit/s
17:45 204.09 KiB | 2.43 MiB | 2.63 MiB | 73.53 kbit/s
17:50 203.15 KiB | 1.71 MiB | 1.91 MiB | 53.36 kbit/s
17:55 218.09 KiB | 1.71 MiB | 1.93 MiB | 53.86 kbit/s
18:00 144.80 KiB | 291.47 KiB | 436.27 KiB | 11.91 kbit/s
18:05 169.99 KiB | 557.05 KiB | 727.05 KiB | 19.85 kbit/s
18:10 336.20 KiB | 4.86 MiB | 5.19 MiB | 145.12 kbit/s
18:15 99.94 KiB | 276.70 KiB | 376.64 KiB | 10.28 kbit/s
18:20 307.41 KiB | 5.12 MiB | 5.42 MiB | 151.46 kbit/s
————————+————-+————-+—————
root@ws1:/ #

Просмотр статистики на интерфейсе vtnet0 за день

root@ws1:/ # vnstat -i vtnet0 -d
vtnet0 / daily
day rx | tx | total | avg. rate
————————+————-+————-+—————
20201129 1.11 MiB | 8.10 MiB | 9.21 MiB | 1.18 kbit/s
————————+————-+————-+—————
estimated 1.47 MiB | 10.70 MiB | 12.17 MiB |
root@ws1:/ #

 

FreeBSD 11: обновление ОС FreeBSD

  1. Проверим какая версия ОС у Вас сейчас установлена:
    #uname -v

    В нашем случаем вывод такой

    FreeBSD 11.0-RELEASE-p1 #0 r306420: Thu Sep 29 01:43:23 UTC 2016

    Это значит у нас FreeBSD 11 с набором патчей 1.

  2. Далее необходимо проверить наличие обновлений:
    #freebsd-update fetch

    На этом этапе происходит проверка наличия обновлений, их загрузка и вывод списка компонентов, которые нуждаются в обновлении. Процесс может занять длительное время! Не прерывайте его!
    В выводе увидим, что нам доступно обновление с набором патчей 3 FreeBSD 11.0-RELEASE-p3.

  3. Чтобы установить все обновления, воспользуемся командой
    #freebsd-update install
  4. Для применения обновлений необходимо перезагрузить Ваш сервер.

Переход на следующий релиз

#freebsd-update -r 11.4-RELEASE upgrade

Looking up update.FreeBSD.org mirrors… 5 mirrors found…

Does this look reasonable (y/n)? y — Соглашаемся с требуемыми изменениями в файлахFetching 1 metadata files…<здесь_очень_много_диагностической_информации я_ее_опустил_нажимаем_клавишу_End_для_перехода в конец>/var/yp/Makefile.distTo install the downloaded upgrades, run «/usr/sbin/freebsd-update install».Делаем, как уведомляет нас инсталлятор введя команду:

#/usr/sbin/freebsd-update install
#reboot
#/usr/sbin/freebsd-update install

Источники: https://www.ekzorchik.ru/2013/09/how-to-upgrade-to-the-latest-release-of-freebsd/

https://try2fixkb.ru/linux/freebsd-11-update-os

 

Установка окружения рабочего стола FreeBSD, на рабочий комп

Шаг 1. Выбираем между портами и пакетами:

FreeBSD предоставляет два основных метода скачивания приложений и системных инструментов: пакеты и порты. Пользователи выбирают между этими двумя возможностями, когда устанавливают их. Packages are pre-compiled binary packages, typically smaller in size than full port installations and they do not require compilation time. Ports are a much more customizable option, allowing experienced users to adjust how the tool is compiled. Packages are created for less inexperienced users and should be used unless the user has specific changes they need to make. In general, ports should only be used if the user understands how the packages are compiled and would like to customize this process. Читать далее «Установка окружения рабочего стола FreeBSD, на рабочий комп»

Установка нескольких независимых версий PHP на одном веб-сервере Apache на FreeBSD

(не доработано) Речь в заметке пойдёт о модуле PHP7, покдлюченном как модуль апача на всём сервере, и PHP5.6, подключенном как PHP-CGI у нужных сайтов.

И речь пойдёт не о быстрой смене версии php на всём сервере, а именно о том, чтобы, например, все сайты на сервере работали с PHP7, а один или несколько, например с PHP5. Читать далее «Установка нескольких независимых версий PHP на одном веб-сервере Apache на FreeBSD»