Зайчатки разума

Зайчатки разума

Записная книжка айтишника

Про ценообразование, качество и сложность

2018-11-02 21:29:02 — Evgeniy Shumilov

  Порою меня просто поражает такая вещь, как ценообразование. Понятно, что мы приходя в магазин, видим только верхушку айсберга, состоящую собственно из товара и его цены, мы не учитываем логистику, налоги, оплату труда продавцов, стоимость рекламы и массу всего прочего. Но если сравнить два товара, которые имеют примерно одни функции, примерно одну сложность производства, но цена которых отличается в два - четыре раза, возникают резонные вопросы - за что мы платим?

Читать дальше...

Теги: mac, knifes, мысли-вслух

Дорабатываем bashblog напильником, часть третья - исправляем таймстемпы

2018-11-01 15:54:40 — Evgeniy Shumilov

  Не бывает бочки мёда без пары ложек дёгтя. Если привкус дёгтя вам по вкусу - можно ничего не менять и наслаждаться жизнью, в противном случае требуется какое-то вмешательство. Проблема, которую будем сегодня решать - это даты или таймстемпы, кому как привычнее. Дело в том, что когда работа с bashblog производится на одной машине, то проблем не возникает, но как только мы уносим проект в git и делаем checkout на другой машине, то все даты создания файлов на локальной файловой системе будут совпадать со временем чекаута. Например:

-rw-r--r-- 1 corpse corpse 12K ноя 1 14:17 nemnogo-ob-avtomaticheskoj-generacii-parolej.html
-rw-r--r-- 1 corpse corpse 9,0K ноя 1 14:17 o-detalyax-i-pamyati.html
-rw-r--r-- 1 corpse corpse 15K ноя 1 14:17 okna-v-okne---pro-evolyuciyu-virtualizacii.html
-rw-r--r-- 1 corpse corpse 30K ноя 1 14:17 pro-klaviatury-gryaznye-xaki-i-podgoranie-pyatoj-tochki.html
-rw-r--r-- 1 corpse corpse 13K ноя 1 14:17 pro-lyubov-k-minimalizmu-i-staticheskuyu-generaciyu-kontenta.html
 

  Bashblog устроен таким образом, что он при каждом rebuild или посте переписывает даты и время публикации поста на время создание файла. То есть, вы сделали десяток постов, потом решили добавить ещё один, находясь за другим компьютером, сделали checkout, создали новый пост и все ваши посты получили сегодняшнюю дату и время, когда вы выгрузили содержимое репозитория. Нехорошо. Есть два пути решения этой проблемы - либо вмешаться в содержимое bashblog и изменить его логику работы со временем и датой постов, либо после выгрузки изменять дату и время создания файлов на необходимые. Путь менее очевидный, но я предпочёл его, поскольку не хочу менять код bashblog без особой на то необходимости (чтобы не было мучительно больно после обновления самого bashblog при необходимости).

Читать дальше...

Теги: bashblog, shell

Про собак

2018-10-31 11:54:50 — Evgeniy Shumilov

  У нас с женой постоянные "качели" в отношении собак. И она и я хотим собаку. Периодически это желание приобретает острые формы и мы бьём друг-друга по рукам. У неё был когда-то русский спаниель, у меня - серьёзная восточноевропейская овчарка. Мы долго думали над вопросом заведения питомца, сошлись на том, что собака должна быть маленькой, иначе каждый день с ней придётся наматывать лишних +5 - +7 км (что совершенно замечательно в отношении здоровья при сидячем образе жизни, но совершенно паршиво в отношении времени, которого постоянно не хватает и на то, чтобы нормально высыпаться). Мы решили, что собака появится после того, как появятся дети и вырастут до сознательных лет 7-10, чтобы воспитывать в них ответственность, а заодно и выгул переложить на них. Ну и чтобы собан не утягивал ребёнка - опять таки он должен быть небольшой. Овчарку дитё (да и жена, которая весит меньше хорошей овчарки) в критической ситуации не удержит. Одним словом, решили, что у нас будет корги. :)

Читать дальше...

Теги: собаки

Про клавиатуры, грязные хаки и подгорание пятой точки

2018-10-29 00:58:20 — Evgeniy Shumilov

Крайне редко что-то в этом мире вызывает у меня раздражение близкое к негодованию. И то, что я изложу ниже - как раз такой случай.

  В последнее время меня очень сильно огорчает тенденция, касающаяся функциональных и некоторых других клавиш на клавиатуре. Складывается стойкое впечатление, что дизайн клавиатур разрабатывают или инопланетяне или люди, которые с клавиатурой никогда не работали, а ведь это основное устройство ввода уже на протяжении многих лет и от удобства работы с ним зависит в целом удобство работы с комьютером и то, насколько часто вы будете вспоминать чью-то маму в контексте действий сексуального характера.

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

Читать дальше...

Теги: keyboards

Сам себе хостинг или о недооценённых утилитах

2018-10-21 00:49:04 — Evgeniy Shumilov
- Та-ак, а вы что, ещё и права на файлы за меня выдавать будете?
- Ага-а-а!

  О чём вы думаете, когда слышите аббревиатуру FTP? На меня накатывает ностальгия. Сразу вспоминаются всякие уютные ламповые локалочки, сетевые карты rtl8139, серенькие восьмипортовые коммутаторы D-Link в пластиковых корпусах, папки Public и Private, полные варезом - фильмы, музыка, софт, игры... Одним словом, машинка времени в моей голове телепортирует меня куда-то лет на 15 назад. Много воды утекло с тех пор, но когда кто-то просит совета, как построить себе миниатюрный хостинг, часто в числе прочего я в том или ином виде получаю вопрос: "как поднять FTP"? И каждый раз меня это удивляет. А чем sftp не угодил? Да, это медленнее, но во-первых, скорость интернет соединения сейчас уже не та, что была 15 лет тому, во-вторых, у sftp на борту шифрование и в-третьих, sftp практически всегда уже есть там, где присутствует openssh.

  Да, sftp, реализованный средствами OpenSSH не лишён ряда недостатков. Хотелось найти некое решение, которое бы позволило быстро и просто реализовать доступ к машине для разных пользователей, для каждого в свою папку, желательно с chroot. Всё заканчивалось длинными ролями на ансибле, которые переписывали конфиги openssh, добавляли пользователей в нужные гргуппы, ставили пакет управления расширенными правами доступа, дёргали всякие setfacl и прочее. И тут меня попросил мой хороший друг (Иван, спасибо тебе!) помочь ему настроить сервер, а пользователям в качестве шелла поставить MySecureShell. Ранее я с таким зверем не сталкивался, да и ни от кого из моих знакомых за те почти 15 лет, что я общаюсь с linux, не слышал. Судя по всему, это не особо популярное решение. Я бы сказал, незаслуженно обойдённое вниманием. Да вы только посмотрите на их логотип! Похоже, это пингвин, прямо поверх которого начали разводить печатную плату (что похоже, сказалось на его настроении), при этом он ещё кому-то угражает двумя логотипами OpenBSD! Интересно, на каких веществах сидел автор? Ладно, этот вопрос оставим наркологам. Лучше посмотрим в конфигурационный файл. Почитав, что там написано, я понял, что эта штука умеет всё, о чём я мечтал и многое из того, о чём я мечтать не смел.

Читать дальше...

Теги: ssh, shell, sftp, админское

Немного об автоматической генерации паролей

2018-10-19 15:05:32 — Evgeniy Shumilov

  Зачастую возникает необходимость сгенерировать для какой-то цели пароль. Преимущественно это пароль, состоящий из некоторого количества цифр и букв разного регистра.Иногда требуется сгенерировать несколько паролей сразу. Например, для обновления паролей для целой группы пользователей в скрипте или просто хочется выбрать наиболее удобный для набора. Пересмотрев несколько решений, я решил снова ездить на своих велосипедах, так как они имеют минимум зависимостей.

Читать дальше...

Теги: shell, automatization, админское

В ротейт мне логи! Про минимализм, busybox и логирование.

2018-10-17 15:09:07 — Evgeniy Shumilov

  Так как я довольно много пишу на шелле, передо мной уже довольно давно встала проблема логирования в скриптах. После просмотра километровых логов начинает рябить в глазах, сложно выделить важные моменты при быстром скроллинге, например, какой-нибудь warning или внезапный error. Одним словом, терпение закончилось и я решил написать свой велосипед, по возможности функциональный, лёгкий и с минимумом зависимостей - всё, как я люблю.


Традиционный список хотелок:

  • Минимальные зависимостии размер
  • Уровни логирования (debug/info/warinig)
  • Отключаемая подсветка разными цветами разных типов событий
  • Работоспособность под OpenWRT, Android, Alpine и т.п.
  • Возможность переопределять параметры переменными в основном скрипте
  • Возможность передать в FATAL сразу код завершения
  • Настраиваемый формат даты
  • Разделитель (очень полезно для отделения частей лога)
  • Краткий синтаксис вызова (не люблю длинные имена модулей)

Читать дальше...

Теги: logging, shell, busybox, minimalism

АСПЕКТЫ НАСТРОЙКИ СЕТИ В QEMU. ОБЪЕДИНЕНИЕ ИНТЕРФЕЙСОВ НА КАНАЛЬНОМ УРОВНЕ.

2018-10-16 21:50:30 — Evgeniy Shumilov

Это репост статьи от новогодней ночи 31 декабря 2008г. - 1 января 2009г.

  Доброго времени суток. Вечер. 31 декабря 2008 года. Чем заняться человеку в такое время? Правильно! Начать писать статью на permlug, чтобы поделиться опытом. :)

Читать дальше...

Теги: virtualization, qemu, networking, админское

Окна в окне - про эволюцию виртуализации

2018-10-16 16:35:23 — Evgeniy Shumilov

  Как гласит старая айтишная шутка - "чтобы понять, что такое рекурсия, сначала нужно понять, что такое рекурсия". Куча открытых окон одной операционной системы в окне другой уже очень давно перестали выглядеть фантастикой. Про виртуализацию сейчас знают все, кто так или иначе связан с IT. Но вот виртуализация чего-либо в окне браузера всё ещё выглядит как нечто особенное. Когда-то давно я наткнулся на один интересный ресурс, который позволял запускать через эмулятор x86 различные некогда популярные и не очень операционные системы прямо в окне браузера. С этим можно развлекаться, но не долго. Есть возможность управлять размером выделяемой основной и видео памяти, возможность самому подгрузить образы CD/FDD/HDD или выбрать один из уже предустановленных. В том числе есть обрезанные версии Windows 1.01, 95, 98, Linux, пара BSD систем, ReactOS конечно же и несколько версий старых линуксов. Но так же присутствует и несколько более редких вещей. Самое интересное - всё это распространяется по одной из версий лицензии BSD, лежит на гитхабе и доступно для скачивания и установки. Конечно, такие комбаины как VirtualBox оно никогда не заменит в силу скорости и количества настроек, но как нечто, созданное в рамках proof of concept - вполне имеет право на жизнь, не более того. К сожалению, в силу неторопливости, практического применения оно не имеет.

  Недавно из телеграм рассылки Xakep я узнал, что один товарищ ко всему вышеописанному добавил образ Windows 95, заботливо завернул это в электрон и выложил в виде приложения. Я не особо надеялся, что это даст какой-то прирост в производительности, но ради эксперимента попробовал поставить на debian. Вообще, я достаточно предвзято отношусь ко всему, что заворачивают в электрон - зачастую веб приложение ест на порядок меньше ресурсов, чем его обёртка. Подобные решения вызывают у меня аллергию. Тем не менее, приложение я поставил и попробовал. На удивление всё работает ощутимо быстрее, но всё-же недостаточно. На рабочем столе с момента запуска открыто окно блокнота с приветствием и солитёр. Конечно, зачем же ещё вы могли запустить Windows 95, если не собираетесь играть в солитёр? Ну и столкнулся с рядом глюков. В числе прочего при попытке запустить консоль ms dos, обнаружил, что видимая область в электроне сжалась до размера пары кнопок пуск в центре окна, всё остальное - чёрное поле. Одним словом - неюзабельно.

  На том же ресурсе натолкнулся на статью о эмуляции в вебинтерфейсе других платформ. Лично для меня особый интерес представляет разве что эмуляция MESS (Multi Emulator Super System) - JS версия эмулятора множества старых игровых консолей и не только. Обязательно посмотрю, когда будет на то время, правда в текущий момент домен archive.org у меня недоступен, видимо, в связи с аллергией нашего государства на telegram (кого это останавливет?). Но вообще, MAME (Multiple Arcade Machine Emulator), MESS, как её часть, RetroArch и сборки вроде RetroPie в моих глазах являются вершиной эволюции в области эмуляции старых игровых платформ - за каких-нибудь 25$ можно получить всё и намного больше, об этом как-нибудь потом и отдельно.

  Но это всё развлечения, а что, если вам нужно иметь доступ к какой-то запущенной операционной системе, отличной от linux через браузер без установки дополнительных плагинов, приложений и всего прочего и чтобы при этом оно ещё и работало с приемлимой скоростью? Или вам нужен аналог облака на вашем железе для более рационального использования ресурсов и возможность управлять объединением вируальных машин в сети и прочее?

Читать дальше...

Теги: virtualization, containers, qemu, kvm, lxc, proxmox

О деталях и памяти

2018-10-12 01:59:48 — Evgeniy Shumilov

Это репост от 27 мая 2008 г. 17:54

  Интересно, оказывается, в жизни бывают такие моменты, когда детали какого-то события оказываются важнее для тебя, чем само это событие. Но редко когда детали самой жизни оказываются ценны. Ан нет, получается, что и такое тоже может быть.

  Когда-то, я вёл дневник. И обычно я записывал туда не какие-то события, которые происходили в моей жизни, а именно мелкие и незначительные её детали, которые ни для кого кроме меня не представляли никакого интереса. И как ни странно, эти детали помогают вернуться в прошлое лучше любой машины времени.

Читать дальше...

Теги: ностальгия, старое, мысли-вслух