Mariadb: швидкодія «з коробки» (Fedora)

Mariadb «з коробки» має досить консервативні налаштування, не орієнтовані на швидкодію. Наприклад, вимкнутий кеш запитів. Також для таблиць InnoDB сервер буде після кожного INSERT/UPDATE-запиту вимагати від ядра записати зміни на диск (вилити їх з кешу файлової системи), що може бути дуууже повільно для більшої кількости запитів. Тому я змінив деякі типові налаштування, щоб пришвидшити роботу (тут не йдеться про якийсь production-сервер, а суто оптимальне середовище для розробки).

Отже вміст файлу /etc/my.cnf.d/performance.cnf:

[server]
# Увімкнути кеш запитів і збільшити до 50M
query_cache_size = 52428800 

# Зливати дисковий кеш кожні 30 с. замість після кожного
# INSERT/UPDATE
innodb_flush_log_at_trx_commit = 2
innodb_flush_log_at_timeout = 30

Tor для людей: ssh-доступ до машини за шлюзом

Окрім можливости виходити в мережу на обмежених з’єднаннях і захисту від стеження, Tor має ще одну дуже корисну функцію: можливість створювати публічнодоступну адресу для будь-якої машини, незалежно від того, чи у неї змінна IP і чи вона за шлюзами (NAT-ами). Де б ця машина не була (а якщо це ноутбук, то він може постійно переміщуватися з місця на місце), ця адреса буде незмінною. Вона завжди закінчується доменом .onion, і має вигляд, подібний до: sejnfjrq6szgca7v.onion (якщо відкрити цю адресу в Tor Browser, ви потрапите на Tor-версію сайту debian.org).

Продовжити читання «Tor для людей: ssh-доступ до машини за шлюзом»

Веб-сайти на localhost — автоматичне налаштування virtual hosts і dns (fedora)

TLDR: Правда, було б зручно, якби просто створивши теку в ~/public_html/, ми могли відразу і автоматично бачити її за адресою http://назва-теки.self/ як повноцінний віртуальний сервер апача? Ось один зі способів це зробити (я користуюся Fedora, але, можливо, на инших дистрибутивах процедура буде подібною).
Продовжити читання «Веб-сайти на localhost — автоматичне налаштування virtual hosts і dns (fedora)»

10 прикладів використання командного рядка Gnu/Linux та инших

До командного рядка часто ставляться як до якоїсь таємничої «шаманської магії». Насправді ж це дуже практична річ, яка кожному може стати в пригоді, особливо коли треба виконати якусь однакову дію над великою кількістю файлів. Багато моїх близьких і друзів перейшли на Gnu/Linux, але не всі з них знають про можливості, «заховані» в командному рядку на цих системах.

Продовжити читання «10 прикладів використання командного рядка Gnu/Linux та инших»

Gmail, IMAP та «мітки» кирилицею

Gmail дає змогу чіпляти до листа різні мітки, які з точки зору протоколів витягування пошти (POP3 та IMAP4) є скриньками. В принципі, інтерфейс Gmail також їх показує як скриньки з листами.

Іноді у різних рецептах (згодувати spamassassin’у теку «Спам» із гуглопошти, наприклад) окремим пунктом програми передбачено витягування вмісту такої скриньки (за допомогою fetchmail, скажімо).

Рішення просте:

poll imap.gmail.com protocol IMAP 
   user "nouser@gmail.com" is localuser here
   password 'superpassword',
   folder "[Gmail]/Spam",
   # folder 'from Smith',
   # fetchlimit 1, keep,
   ssl

Але проблема виникає тоді, коли мітки українською (не латинкою, взагалі кажучи). І ніде, чомусь, я рішення не знайшов, саме тому це й пишу.

Справа в тому, що кодування назв скриньок має бути у «модифікованому UTF-7»; це зазначено у RFC 3501 (5.1.3. Mailbox International Naming Convention).

При цьому «службові» скриньки зазначаються як «[Gmail]/Скринька»:

poll imap.gmail.com protocol IMAP 
   user "nouser@gmail.com" is localuser here
   password 'superpassword',
   folder "[Gmail]/&BCEEPwQwBDw-",         # «Спам» — обов’язково "[Gmail]/"
   # folder '&BDIEVgQ0- &BCEEMARIBDoEMA-', # «від Сашка» —  *без* "[Gmail]/"
   # fetchlimit 1, keep,
   ssl

Час із різних часових поясів з допомогою GNU date

Сьогодні о 2-й годині дня за Новим Йорком NASA розпочнуть трансляцію, присвячену польоту астероїда 2012 DA14 біля нашої планети. На сайті NASA подано час «2 p.m. EST». Як дізнатись, яка це буде година в тому місці планети, де перебуваєте ви?

У кожній системі GNU/Linux (а також инших системах, якщо додатково заінсталювати) є команда date. Якщо просто відкрити термінал і запустити її, вона видасть вам поточну дату, день тижня, час і часовий пояс. Але це далеко не все, що вона вміє робити.

Продовжити читання «Час із різних часових поясів з допомогою GNU date»

Чому слід використовувати ogg (vorbis) замість mp3

В тому, щоб попрощатись з mp3, є дві потреби, одна етична, друга — практична.

Почнемо з другої.

Один пан зробив гарний експеримент: він закодував звуковий файл різними форматами на кількох щаблях якости так, щоб на кожному зі щаблів отримати найбільш подібні розміри файлу в різних форматах. Ми підемо трохи далі й спробуємо з допомогою програми Audacity порівняти результати, які він отримав для mp3 та ogg. Критерієм слугуватиме аналіз звукових частот, наявних у файлі. Для цього ми скористаємось функцією «Побудувати графік спектру». Хоча такий аналіз показує далеко не все, він може бути гарною підказкою, якщо ви хочете перевірити, наскільки сильно змінився ваш файл після збереження з тим чи иншим параметром стиснення (майте на увазі: після закодування Audacity продовжує працювати з нестисненим оригіналом, тому для порівняння якости ви мусите окремо відкрити ваш закодований файл).

Продовжити читання «Чому слід використовувати ogg (vorbis) замість mp3»

Пошук українською

Задача — хочу шукати у мережі українською мовою. Пошуковики, як на мене, видають забагато результатів російською, це не відповідає моїй внутрішній політиці пріоритетів щодо рейтингів сайтів blah-blah-blah. Хочу — і все.

Для мене — користуюся Firefox’ом та шукаю в Google — вирішення виявилося досить простим: почитав про параметри пошуку Google, почитав по створення модуля пошуку для Firefox і зробив.

Сподіваюся, для тих, хто користується іншими переглядачами/пошуковиками, також щось таке знайдеться. Трохи згодом спробую розширити свої знання з цього приводу і поділитися.

Виявилося, це чудово працює і для Google Chrome — треба лише у віконечку, що вигулькне, змінити «ключове слово» з google.com на щось інше, та у налаштуваннях пошуку Chrome знайти MyGoogle серед «Інших пошукових систем» та встановити його «за умовчанням». І все чудово працює .)

Також замість пошуковика Google можна вписати (у XML файл, див. нижче) будь-який інший, треба лише знати параметри запиту (їх назви) для здійснення пошуку.

Не знаю, чи працюватиме це як треба скрізь :О) Бо використовується ie=uft-8&oe=utf-8. Цікаво, що буде, якщо їх не вказувати зовсім; спробую пізніше.

Релізація і сам модуль (встановіть і собі) »»

git та українські назви файлів

Якщо git status показує українські назви файлів як «"\320\277\321..."», спробуйте запустити комадну git config --global core.quotepath off. (Запозичено з http://stackoverflow.com/a/5855213/1142039).

bc як конвертор основи

Утиліту bc (an arbitrary precision calculator language) можна досить зручно використовувати для конвертування чисел між основами, в тому числі у скриптах:

$ echo "ibase=16; obase=2; 5F" | bc
1011111
 
$ echo "ibase=16; obase=8; 32" | bc 
62
 
$ echo "ibase=10; obase=4; 12" | bc 
30

Може, комусь і згодиться.