sysmerge IT

27 мар. 2017 г.

ERROR 1018 (HY000): Can't read dir of '.' (errno: 24)

При попытке использовать команду 'SHOW DATABASES;' в консоли mysql получаем ошибку вида "ERROR 1018 (HY000): Can't read dir of '.' (errno: 24) ". В первую очередь проверяем, хватает ли места и инод ( df -h и df -i соответственно). Если все в порядке с местом, то очевидно, что проблема с лимитом открытых файлов, решение которой было описано ранее с помощью open-files-limit.
22 мар. 2017 г.

openbsd: процесс обновления снепшота от А до Я

Процесс обновления OpenBSD со снепшотов довольно прост. Итак, по шагам:
  1. Сделайте бекапы нужных данных. Да, всегда нужно иметь бекап. Тут вам помогут встроенные в систему dump/restore
  2. Читаем страницу https://www.openbsd.org/faq/current.html. Тут описываются основные изменения при обновлении снепшота а так же действия, необходимые к выполнению после обновления
  3. Скачиваем файлы снепшота. Я это описывал тут. 
  4. Копируем bsd.rd в корень.
  5. Ребутимся  - reboot
  6. Вместо обычной загрузки при старте системы вводим bsd.rd, это загрузит скачанный ранее ramdisk.
  7.  Дальнейший процесс очень похож на установку системы. Инсталлятор предлагает выбор процедуры  "(I)nstall, (U)pgrade, (A)utointall or (S)hell?", выбираем Upgrade.
  8. Источником обновления в нашем случае будет Disk. Устройство по идее должно быть автоматически смонтировано. В моем случае файлы снепшота лежали тут /mnt/home/USER/update/
  9. После окончания процесса установки опять ребутаемся.
  10. Загружаемся обычным способом. Выполняем sysmerge.
  11. Далее обновленияем пакеты - pkg_add -u
  12. Делаем еще один ребут.
  13. Готово, система обновлена. 
Я провожу данную процедуру 1-2 раза в месяц, занимает минут 20, большая часть времени из которых - скачивание и установка файлов.
16 мар. 2017 г.

certificate routines:X509_check_private_key:key values mismatch - проверяем соответствие ключа сертификату

Если nginx после подключения сертификата выдает "certificate routines:X509_check_private_key:key values mismatch", то, вероятно, ключ и сертификат не соответствуют друг-другу. Как же в этом убедиться и проверить  соответствие ключа сертификату? Просто. Для этого можно воспользоваться утилитой openssl, позволяющей нам просмотреть все подробности сертификатов и ключей. Выполняем следующие 2 команды:

 # openssl x509 -noout -modulus -in ./сертификат.crt | openssl md5   
 # openssl rsa -noout -modulus -in ./ключ.key | openssl md5  

Полученные значения должны быть идентичны.

Разберем некоторые ключи:
  • -modulus вывод модуля ключа
  • -noout - не выводить сам ключ
  • x509 - стандарт сертификата
  • rsa - стандарт кодирования ключа
  • -in использовать файл входных данных
8 мар. 2017 г.

OpenBSD новости: xdm сменен на xenodm, machdep.lidsuspend - на machdep.lidaction

С последнего обновления OpenBSD 6.0 на 6.1 current можно было заметить, что XDM внезапно перестал работать. Все оказалось довольно просто - https://www.openbsd.org/faq/current.html. XDM был заменен на XENODM, что выглядит вполне оправданно, учитывая использование в опенке Xenocara. С обновлением Xenodm автоматически устанавливается, все что нужно сделать это переключиться на него и удалить XDM. Делаем так:

 # rcctl disable xdm  
 # rcctl enable xenodm  

Теперь избавимся от остатков xdm

 # rm -rf /etc/X11/xdm  
 # rm /usr/X11R6/bin/xdm /usr/X11R6/man/man1/xdm.1 /etc/rc.d/xdm  

Все. Внешних признаков замены обнаружить не удалось, просто Тео хочется КРАСИВЫХ НАЗВАНИЙ.

Так же старый добрый machdep.lidsuspend, значения 0 и 1 которого, указанные в sysctl.conf устанавливали поведение системы при закрытии крышки ноутбука, был изменен на  machdep.lidaction. Изменение имени было связано со сменой названия этой переменной - теперь она не только устанавливается в значения 0 или 1, но и 2, которая отправляет систему в гибернацию, а не саспенд. Выглядит все так:

 machdep.lidaction=0   # ничего не делаем 
 machdep.lidaction=1   # сон
 machdep.lidaction=2   # гибернация

Старый вариант с lidsuspend  пока тоже работает, но в будущем будет удален полностью.
5 мар. 2017 г.

OpenBSD: Dokuwiki httpd config

Dokuwiki - крайне удобный инструмент для домашний википедии. Быстро устанавливается, легок в использовании и довольно функционален. Не говоря уже о том, что, в принципе, не требует баз данных.
Для настройки и установки Dokuwiki на OpenBSD 6 придется выполнить всего пару шагов.

 # pkg_add install dokuwiki  

Устанавливаем файлы dokuwiki. Да, мы делаем это с помощью пакетного менеджера, это просто и удобно. Файлы будут установлены сюда /var/www/dokuwiki/. Теперь дело за httpd сервером. Конфиг для нашей вики будет выглядеть так:

 server "wiki.local" {  
     listen on $ext_addr port 80  
     root "/dokuwiki/"  
     directory index index.php  
     location "*.php*" {  
         fastcgi socket "/run/php-fpm.sock"  
     }  
 }  

Почему "root /dokuwiki/" ? Все просто, в OpenBSD по-умолчанию httpd чрутится в /var/www/,а  потому пути в конфигах прописываются из корня в /var/www/. Сохраняем, рестартим httpd:

 # rcctl httpd restart  

В /etv/hosts не помешает указать, что wiki.local - это 127.0.0.1. После чего по адресу http://wiki.local/ вы попадете в установщик Dokuwiki.
1 мар. 2017 г.

debian 8 jessie mysql 5.7

"Искаропки" в Debian 8 идет mysql 5.5. Обновление mysql до 5.7/5.6 выполняется крайне быстро. Тут https://dev.mysql.com/downloads/repo/apt/ качаем актуальную версию mysql-apt-config, в моем случае mysql-apt-config_0.8.2-1_all.deb

 # wget https://dev.mysql.com/get/mysql-apt-config_0.8.2-1_all.deb  

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

 # dpkg -i mysql-apt-config_0.8.2-1_all.deb 

Обновляем списки пакетов и обновляем mysql-server

 # apt-get update  
 # apt-get upgrade mysql-server  

PS: не забываем про mysql_upgrade !