Месячный Архив: Август 2012

bash linux

Настраиваем apcupsd

На всякий случай были написаны скрипты для автоматического старта и корректного завершения работы виртуальных машин(в случае потери питания, выполняется демоном apcupsd)
Из интересных(по крайней мере для меня) моментов я бы хотел отметить способ запуска команды от имени определённого пользователя, даже если скрипт запущен от root’а. Это необходимо потому, что VirtualBox привязывает виртуалки к пользователю, и если запустить от root’а vboxmanage list runningvms при запущенных виртуалках, он ничего о них не скажет. По этому был на коленке быстренько написан следующий код:
startvm.sh

stopvm.sh

А заключения не будет. Могу только сказать, что при добавлении /home/firefish/stopvm.sh в /etc/apcupsd/onbattery, оно таки заработало:

Интервал ONBATTERYDELAY увеличен до 30 секунд для игнорирования отключений электричества на короткое время. Хотя первый проваленный этой логикой тэсткейз — несколько подряд отключений на 29 секунд. Будем надеятся, что фикс будет написан раньше, чем это случится.

drivers network virtualization

AMD IOMMU

Any problems?

Читать далее »

bugs programming

Выбор багтрекера

Какую систему учёта ошибок использовать для своего проекта?

Я за свою недолгую (молодой ещё) карьеру успел попробовать многое: FlySpray, Mantis, Trac, JIRA, BugGenie. Много видел хороших идей и подходов, но всё как-то не было привязанности к чему-то одному. Недавно вопрос о выборе багтрекера встал вновь. Ну так давайте разбираться, а что ж использовать.

Читать далее »

CPU hardware performance

Тесты производительности нескольких отдельно взятых процессоров

Собрал ядрышко линукса на 2х своих машинках(и ещё на одной товарища artamonov). Конфигурация — которая генерируется при запуске и выходе make menuconfig. Это около 2500 модулей и ещё много всего ненужного.
Читал как-то что потоков нужно больше чем ядер, т.к. что-то полезное они начинают делать не сразу. Оказывается это не особо то и нужно, и даже, скорее, вредно. Ниже есть тесты с разным количеством потоков.
Intel(R) Core(TM) i5 CPU 760:

AMD FX(tm)-8120 Eight-Core Processor:

AMD FX(tm)-8120 Eight-Core Processor:

Intel(R) Core(TM) i7 CPU 2600K:

Intel(R) Core(TM) i7 CPU 2600K:

Читать далее »

network

Первый взгляд на «bonding»

Говорят что сетевые интерфейсы можно пачками объединять для повышения пропускной способности или отказоустоичивости. Попробуем объединить интегрированную(на rtl8111) и TG-3468(на rtl8168).
HOWTO для gentoo
На дебине/убунте всё то же самое:

вывод последней команды

хорошо. теперь то же самое с другой стороны(ну ip и интерфейсы по вкусу)

Где мои 0,4 Gbps?! 😉

На NAT’е/файлопомойке загрузка процессора упёрлась в 100% на оба ядра… Видимо на большее расчитывать не стоит.
Да. Пока нечем утилизировать такой канал. SAMBA видимо тоже в процессор упирается да и в диск — 60МБ/с — одного линка вполне бы хватило.

hardware linux SSD

Эксперименты с TRIM

Вступление.
Дабы не искать перемещённые блоки по всему диску запишем на бОльшую его часть что-нибудь бесполезное, но с узнаваемым паттерном.
Хотя если контроллер умеет делать перестановки:
«после trim» <- «редко записываемые данные» <- «часто записываемые данные»
или
«редко записываемые данные» <-> «часто записываемые данные»
то мы не сможем это увидеть или это будет довольно трудно.
Ладно. Будем надеяться и верить. Читать далее »

linux

Эпопея установки Linux

*Написано с целью зафиксировать возможные, не всем очевидные, неприятные момент и предложить решение некоторых из них.

Началось всё с SSD(а точнее желания поиграться с TRIM).
В итоге я приобрёл OCZ Vertex II
И началось…
Поддержка TRIM добавлена с linux-2.6.33 (patch) у меня естественно 2.6.32 🙂 ибо Ubuntu 10.04 LTS
Читать далее »

GPS navigation systems

Здравствуй, GPS

Приобрёл я недавно на пробу GPS приёмник EB-500.
Примерно так он выглядит:

Извиняюсь за какой-то хлам на макетке. Антена — валявшийся под рукой кусок проволоки — внезапно как-то заработало даже с ним.
Для питания требуются 3.3 В. Подключается оно через UART с 3.3 В уровнями. Я использовал переходник на CP2102.
Приступим к деанонимазации 🙂

Что примерно соответствует реальности. Ну подумаешь метров на 50 промахнулся 🙂

CPLD/FPGA electronic

Здравствуй, ПЛИС

Собрал схему из одного логического НЕ и загрузил в ПЛИС(EPM3064).
Работает ^_^
Спасибо статьям на EasyElectronics

Да вы шутите!

hosting

VPS. Part 0

Хочу собрать здесь некоторые заметки про VPS.
Первый опыт — firstvds.ru
Довольно удобный билинг — куча вариантов оплаты. Мне подошла оплата через QIWI кошелёк. Все переводы денег возможны без комиссии — автомат-кошелёк-firstvds.
В момент написания этих строк, за 250р можно получить 768MB памяти OpenVZ или за 300 — 256MB KVM.
Из минусов — настройка ДНС через одно место — если не пользоваться ISPManager’ом, то хостингом ДНС должен заниматься ты лично сам. С панелью админки можно настроить ДНС хостера как slave ДНС, и всё равно ДНС хостишь сам, хоть и вероятность захлебнуться от запросов гораздо меньше.

clodo.ru — есть классические VPS, а также Scale Server — сколько ресурсов потребляешь, столько и платишь(DDoS и прощай денюжки :D). XEN. ДНС как у нормальных людей — запись второго уровня — на виртуалку, третьего — указываются вручную.
Память сильно дороже OpenVZ но дешевле чем KVM на firstvds.
И да! Есть API. Пока не знаю на сколько удобное, но выглядит вполне логично. Ответы в JSON и XML. Есть лимиты на использование API.

т.к. на хосте пока ничего не размещено, решил переползти на clodo.

Первое что попробовал потюнить — добавить очистку кэша файловой системы — просадка производительности, но экономия памяти. В Кроне каждую минуту.
* * * * * echo «3» > /proc/sys/vm/drop_caches

upd1: наконец то я понял зачем нужен exim4. Установил. Отправил себе письмо. Пришло. Доволен как слон.