10 мая 2017, 4:26
Если возникает ошибка на centos 5 вида:
|
Loaded plugins: changelog, fastestmirror Determining fastest mirrors YumRepo Error: All mirror URLs are not using ftp, http[s] or file. Eg. Invalid release/ removing mirrorlist with no valid mirrors: /var/cache/yum/base/mirrorlist.txt Error: Cannot find a valid baseurl for repo: base |
Исправляется следующим образом:
|
echo "http://vault.centos.org/5.11/os/x86_64/" > /var/cache/yum/base/mirrorlist.txt echo "http://vault.centos.org/5.11/extras/x86_64/" > /var/cache/yum/extras/mirrorlist.txt echo "http://vault.centos.org/5.11/updates/x86_64/" > /var/cache/yum/updates/mirrorlist.txt |
1 ноября 2016, 21:05
Если нет возможности использовать аппаратные ключи для CryptoPro, то есть утилита genkpim.exe которая позволяет создать необходимые файлы. Ниже скрипт для autoit который при нажатии F10 запускает автоматическое движение мышкой в окне этой утилиты, по F11 – завершает его.
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
|
#include <MsgBoxConstants.au3> HotKeySet("{F10}", "_mousemove") HotKeySet("{F11}","_stop") Func _mousemove() Local $winpos = WinGetPos("КриптоПро CSP") Local $winactive = WinActivate("КриптоПро CSP") If @error or ($winactive = 0) Then MsgBox($MB_SYSTEMMODAL, "ERROR", "Cant find CryptoPro window, please run genkpim.exe. This message will be close in 5 sec.", 5) Exit EndIf WinWaitActive("КриптоПро CSP") While 1 $x = Random(0,$winpos[2]) $y = Random(0,$winpos[3]) MouseMove($winpos[0]+$x, $winpos[1]+$y, 0) WEnd EndFunc Func _stop() While 1 Sleep(100) WEnd EndFunc While 1 sleep(1) WEnd |
5 июля 2016, 23:32
Наткнулся на интересную статью по диагностике высокого потребления CPU запросами в СУБД Oracle. Рекомендую к прочтению.
Скачать (PDF, 277KB)
16 апреля 2016, 20:09
После обновления до последней версии vagrant и образа для ОС Debian 8 столкнулся с проблемой:
|
There was an error when attempting to rsync a synced folder. Please inspect the error message below for more info. Host path: /cygdrive/e/Work/vagrant/deb8/ Guest path: /vagrant Command: rsync --verbose --archive --delete -z --copy-links --chmod=ugo=rwX --no-perms --no-owner --no-group --rsync-path sudo rsync -e ssh -p 2222 -o StrictHostKeyChecking=no -o IdentitiesOnly=true -o UserKnownHostsFile=/dev/null -i 'E:/Work/vagrant/deb8/.vagrant/machines/default/virtualbox/private_key' --exclude .vagrant/ /cygdrive/e/Work/vagrant/deb8/ vagrant@127.0.0.1:/vagrant Error: Warning: Permanently added '[127.0.0.1]:2222' (ECDSA) to the list of known hosts. dup() in/out/err failed rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.2] |
Проблема была в том, что у меня установлены cygwin64 и mingw64, но для первого не был установлен пакет openssh. В итоге при запуске виртуальной машины rsync из cygwin64 пытался использовать ssh из mingw64, а это не работает из-за не совместимости окружений. После установки пакета openssh для cygwin64 проблема ушла.
Отдельно есть проблема в самом vagrant 1.8, точнее используются не поддерживаемые ключи для ssh, необходимо обновить файл helpers.rb, подробнее в описании ошибки.
9 января 2016, 0:18
Пример конфигурационного файла для nginx + passenger 5 для работы puppet master сервера.
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
|
server { listen 8140 ssl; server_name puppet; passenger_enabled on; passenger_env_var PATH /usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin; passenger_set_header X-Client-DN $ssl_client_s_dn; passenger_set_header X-Client-Verify $ssl_client_verify; passenger_set_header X-SSL-SUBJECT $ssl_client_s_dn; passenger_set_header X-SSL-CLIENT-CERT $ssl_client_cert; root /etc/puppet/rack/public; access_log /var/log/nginx/puppet_access.log; error_log /var/log/nginx/puppet_error.log; ssl_certificate /var/lib/puppet/ssl/certs/puppet.pem; ssl_certificate_key /var/lib/puppet/ssl/private_keys/puppet.pem; ssl_crl /var/lib/puppet/ssl/ca/ca_crl.pem; ssl_client_certificate /var/lib/puppet/ssl/ca/ca_crt.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_verify_client optional; ssl_verify_depth 1; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; } |
16 ноября 2015, 1:07
Возможно кому-то пригодится, шпаргалка по командам PDB.
Скачать (PDF, 171KB)
Источник файла по ссылке.
9 ноября 2015, 22:12
Появился канал ansible_ru в мессенджере slack, попасть в него можно пройдя регистрацию по ссылке (если у вас еще нет учетной записи в slack) – http://signup.hangops.com/
Далее в списке каналов выбрать канал ansible_ru, или можно перейти по ссылке.
9 ноября 2015, 21:42
Данной заметкой начну цикл по системе Ansible.
Сегодня выяснилась прелюбопытная особенность, а именно:
|
ansible-playbook -e ansible_ssh_port=2200 mysql.yml |
Если выполнить команду указанную выше без файла инвентаря (или если он будет пустой), то ansible просто проигнорирует все параметры переданные при помощи ключа -e.
В итоге может сложиться ситуация, когда у вас какой-то docker контейнер работает на порту 2200, вы думаете что playbook отрабатывает на нем, но по факту это не так. Все изменения происходят на host машине, что может привести к совсем неожиданным последствиям.
Данное поведение всплыло при разборе ошибки по ссылке.
8 ноября 2015, 22:48
Вопросом вынесенным в заголовок я занимался давно, но может кому-то поможет для общего развития. По ссылкам ниже можно подробно и наглядно прочитать про архитектуру web сервера Nginx, его логику обработки запросов, чем она отличается от логики работы стандартных модулей для Apache prefork и worker.
Почему данная модель позволяет ему обрабатывать многие сотни тысяч запросов в секунду и т.д.
Ссылка 1
Ссылка 2
На память себе оставлю пару картинок, позволяют просто запомнить что происходит в запросом внутри Nginx. Помещу их внутрь записи.
Далее ‘Архитектура Nginx’ »
15 октября 2015, 4:33
Для реализации резервного копирования СУБД MySQL при помощи LVM есть отличный инструмент – mylvmbackup. Но в нем есть один недостаток – это “из коробки” не реализован механизм автоудаления старых архивов, решил это поправить, в связи с чем в 2012 году родился hook который отрабатывает после успешного создания резервной копии и удаляет все старые архивы, но оставляет, указанное в настройках, количество недавно созданных.
Для ОС Ubuntu или Debian копируем файл в папку /usr/share/mylvmbackup и даем ему права на исполнение.
Код ниже:
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
|
#!/bin/bash # Old backup remove script for mylvmbackup # v 1.0 # # BPATH - path where backup files stored # RTNF - retention files, how many backup files will NOT be removed BPATH="/var/cache/mylvmbackup/backup/" RTNF=3 function delete_old_files { find $1 -type f -name "backup-*_mysql.tar.gz" \ | sort | head -n -$2 \ | xargs --no-run-if-empty rm -f if [ $? -ne 0 ];then echo "Something wrong..." exit 1 fi } if [ -d "$BPATH" ]; then delete_old_files $BPATH $RTNF else echo "Cant access backup directory." exit 1 fi exit 0 |