JS-программист

Месяца два назад думал, что мне не хватает вывода информации об оплате интернета на рабочий стол. У меня два провайдера: Онлайм и Нетбайнет. И если первый хотя бы смс-ки шлёт, когда баланс заканчивается, то у второго это — платная услуга. А значит она не подключена 😉 Но смс-информирование тоже слабло полезно, хотя бы потому, что когда сидишь «в запаре» на работе, а к тебе приходит смс с содержанием «послезавтра интернет всё, оплатите пожалуйста», это не только не имеет положительного эффекта, но ещё и сильно раздражает. Помнится, когда был абонентом Корбины, у них была утилита, сидящая в трее и выводящая информацию об балансе. Но только для windows, конечно (пользователи не windows там страдали, пытаясь совладать с их реализацией l2tp, им было[…]

Аппаратные Андромеда-Д

Хотел я написать хорошую, годную статью об МСВС. Мысль об необходимости это сделать пришла после определённой полемики на UFO, в ходе которой оппонент апеллировал к выдержкам из интервью сотрудников РусБИТеха, где они что-то там рассказывают об причинах «провала» МСВС. Мол у них сотрудники из ВНИИНСа трудятся. И всё им, значится, ясно и понятно, так что они по тем же граблям не пойдут. Но лично я ясно осознал, что нихрена они не поняли. Но начать придётся издалека… Сегментация рынка Все знают, чем отличаются железки Desktop, Server и Enterprise чего-нибудь. Любой начинающий Одмен проходит по пути от отрицания необходимости специализированного хардвера к осознанию его неотъемлемой роли в повседневной жизни. Но у них (у железок этих классов) есть одна черта: главным мерилом стоимости[…]

Просто много аплинков

Пс, посоны, хотите немного настоящей уличной магии? Как бы мультилинком на разделённых таблицах маршрутизации никого не удивишь. Это даже в документации есть, но всё равно иногда кто-нибудь да запилит очередную статью об том, как это делать (в 2015ом, Карл, какой-то «серьёзной» компанией). А я вам покажу, как всё тоже самое сделать, если у вас адресация прилетает по dhcp от провайдеров! Короче, у меня тут зеркало debian дома есть (что? нафига? так надо!), и захотел я, чтобы оно синкалось не через основной линк. И ради этого я позвонил старому провайдеру и оживил второй линк, висевший без дела со времён семейной жизни в Ясенево. Кстати, он уже разок пригодился как основной, так как свитч основного провайдера, что находится в подвале, всплыл в[…]

Леннарт Поттеринг

Неделю назад кончился жёсткий диск в сервере. Вот в том, который отдал вам сейчас эту страничку. Приказал долго жить бэкапый диск, который не состоял в RAID’е. Проблема лишь в том, что на нём ещё были /boot и GRUB. Потеря загрузчика — не слишком большая беда, так как в этом деле главное не перезагружаться, пока не будет готов диск на замену. Вчера утром он был уже был мной подготовлен, и я собирался ехать в ДЦ, чтобы его поставить в сервер. Инструменты, документы, и надо было сделать live-флешку. Сервер, конечно, должен был штатно стартовать с тем диском, который для него был подготовлен, но мало ли что… Берём флешку, вставляем, делаем dd… и понимаем, что dd мы сделали на ту флешку, на которой[…]

xfce4-terminal и rm -Rf

Мы тут чуть-чуть ембедедом увлеклись и слабали изделие а-ля веб-камера. А работает оно под управлением Debian GNU/Linux. Всё бы ничего, но там нынче systemd, который точно будет насиловать флешку. К гадалке не ходи… По-этому было решено, что root живёт в памяти. Подумал я сначала об aufs, но её тут, оказывается, выпилили из upstream. Не безосновательно, отмечу: её автор всегда любил быдлокод и комментарии на родной японской мове (все японцы редкостные националисты, с их точки зрения тот, кто не умеет в японский язык, — не достоин их код разбирать). Похоже это наконец то надоело тем, кто отвечал за данный сегмент ядра. Тем более, что коммиты от создателя кончились давно, а поддерживать это надо было… Проще оказалось убрать нафиг. Глянул я на[…]

xfce4-terminal и rm -Rf

РусБИТех идёт всем нам известным путём, который протоптал ещё ВНИИНС. Описывать суть этого продвижения я не буду, — могу обидеть кого-нибудь. А мне тут понадобилось видео в H264 с нашего изделия на лету конвертировать и выводить. И я, конечно, обратился к GStreamer’у. Но эти ребятки Астру 1.4 слепили на кодовой базе аж Wheezy! А для того, чтобы работало так, как мне надо, нужен релиз из Jessie. Пришлось извращаться, накладывая патчи поверх пропатченных исходников пакетов (!!!). Как-то так, короче: aliech@arcturus:~$ ls -1R gstreamer1.0_from_jessie/ gstreamer1.0_from_jessie/: gstreamer-base gstreamer-core gstreamer-good gstreamer-libav libav gstreamer1.0_from_jessie/gstreamer-base: build_it_in_astra_1.4se.patch gir1.2-gst-plugins-base-1.0_1.4.4-2+deb8u1_amd64.deb gst-plugins-base1.0_1.4.4-2+deb8u1_amd64.changes gst-plugins-base1.0_1.4.4-2+deb8u1.debian.tar.xz gst-plugins-base1.0_1.4.4-2+deb8u1.dsc gst-plugins-base1.0_1.4.4.orig.tar.xz gstreamer1.0-alsa_1.4.4-2+deb8u1_amd64.deb gstreamer1.0-plugins-base_1.4.4-2+deb8u1_amd64.deb gstreamer1.0-plugins-base-apps_1.4.4-2+deb8u1_amd64.deb gstreamer1.0-plugins-base-dbg_1.4.4-2+deb8u1_amd64.deb gstreamer1.0-plugins-base-doc_1.4.4-2+deb8u1_all.deb gstreamer1.0-x_1.4.4-2+deb8u1_amd64.deb libgstreamer-plugins-base1.0-0_1.4.4-2+deb8u1_amd64.deb libgstreamer-plugins-base1.0-dev_1.4.4-2+deb8u1_amd64.deb gstreamer1.0_from_jessie/gstreamer-core: gir1.2-gstreamer-1.0_1.4.4-2+deb8u1_amd64.deb gstreamer1.0_1.4.4-2+deb8u1_amd64.changes gstreamer1.0_1.4.4-2+deb8u1.debian.tar.xz gstreamer1.0_1.4.4-2+deb8u1.dsc gstreamer1.0_1.4.4.orig.tar.xz gstreamer1.0-doc_1.4.4-2+deb8u1_all.deb gstreamer1.0-tools_1.4.4-2+deb8u1_amd64.deb libgstreamer1.0-0_1.4.4-2+deb8u1_amd64.deb libgstreamer1.0-0-dbg_1.4.4-2+deb8u1_amd64.deb libgstreamer1.0-dev_1.4.4-2+deb8u1_amd64.deb gstreamer1.0_from_jessie/gstreamer-good: build_it_in_astra_1.4se.patch gst-plugins-good1.0_1.4.4-2+deb8u3_amd64.changes gst-plugins-good1.0_1.4.4-2+deb8u3.debian.tar.xz gst-plugins-good1.0_1.4.4-2+deb8u3.dsc gst-plugins-good1.0_1.4.4.orig.tar.xz[…]

libvirt и qemu-kvm

Короче, я тут на днях беглым взглядом просматривал документацию на libvirt, на предмет того, как можно автоматизировать процесс извлечения ядра и initrd из файловой системы гостя. И оказалось, что libvirt несколько раз запускает файл с хуком, в строку запуска его отдавая параметры и xml’ку виртуальной машины. Для меня это стало, прямо скажем, открытием. Во времена появления libvirt’а, модой на системы виртуализации правила VMware, фактически предлагавшая десктопную виртуализацию, отмасштабированную до размеров сервера. Основной целевой аудиторией были виндоводы, которым было лень иметь под не прожорливые сервисы отдельные физические машины. Да, в первую очередь речь шла именно о ссаживании на одной железке того, что нельзя мешать в рамках одной ОС, а не об обеспечении быстрой миграции и не о прочих «киллер-фичах виртуализации». Конечно[…]

xfce4-terminal и rm -Rf

Всё, что будет происходить при сборке, с большой вероятностью, описано в файле debian/rules. В случае c Postgresql и 1С придётся заменить в COMMON_CONFIGURE_FLAGS флаг «—enable-integer-datetimes» на «—disable-integer-datetimes». Ну вообще я удивлён, конечно. Исходники для dpkg-source разделены на начальные исходники, патчи к ним, и, в конце, ещё накладывается патч для сборки в среде Debian. Вот они не осилили его поправить? Или малоинформативная приписка в readme Для использования PostgreSQL 9.6.3-3.1C с версиями 1С:Предприятия ниже 8.3.10 необходимо его собрать с установленным значением параметра integer_datetimes=off нужна, чтобы всякие левые люди не могли собрать корректно PG? Типа пользуйтесь бинарниками нашими или топайте в лес? Ну и, конечно, он не собрался. Спасибо вам, фирма 1С, что держите марку! debian/rules:213: recipe for target ‘override_dh_auto_test-arch’ failed make[1]: ***[…]

Урал в Севастополе

Все же знают о том, что если что-то попало в интернет, то оно оттуда никогда уже и не денется? Так вот, это очень удачная замена фотоальбомам. Например внезапно можно случайно найти посты о том, как собирал и распространял образы Debian для одного arm-лаптопа, сильно до того, как это стало мейнстримо… до того, как хипстерам дали Raspberry Pi. Сам то я тогда и вовсе на Генте сидел, а красноглазие моё не знало пределов. От слова «совсем». Иногда попадются «хаутушки» за моим авторством, например по которым можно сообразить почтарь за пять минут, ну и, что характерно, люди это повторяли, ставили себе тоже и также на боевые сервера. Некоторые на свои сайты передирали данный текст, иногда целиком, иногда частями… Тогда мне казалось это[…]

Orange Pi Plus 2E

Закалачивать гвозди микроскопом? Да! Спасать копеечные флешки от перезаписи тестировщиками внедрением в схему одноплатного компьютера? Почему бы нет?! Ну а в этом нам поможет скрипт: #!/bin/sh echo «Создаём RAM-диск» modprobe brd rd_nr=1 rd_size=1572864 max_part=0 while [ ! -b /dev/sda ]; do echo «Не найдено блочное устройство, ждём несколько секунд…» sleep 5 done echo 0 `blockdev —getsz /dev/sda` snapshot /dev/sda /dev/ram0 N 64 | dmsetup create snap modprobe g_mass_storage file=/dev/mapper/snap exit 0 Как бы это логичное продолжение поста об плате Orange Pi Plus 2E.