← на главную

Алексей Батищев. Заметки обо всём, что происходит со мной и окружающим миром

Позднее Ctrl + ↑

КЭНК: контролируем сроки действия сертификатов

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

Итак, проблема: в некоей системе используются сертификаты пользователей. Система (и её клиентская часть) сама по себе никаких средств контроля и мониторинга сертификатов не содержит, и задача контроля срока и необходимости заблаговременного заказа, организации установки сертификатов на устройства полностью лежит на группе поддержки. Необходимо максимально исключить человеческий фактор и заставить трудиться роботов на ниве контроля сроков.

Решение. Выгружать или как-то ещё получать доступ к сертификатам в работе система не даёт, но мы можем договориться с группой поддержки, что они будут хранить сертификаты в отдельной папке с ограниченным доступом, и работать с ней при любом обслуживании клиентов — убирать оттуда ушедшие из работы сертификаты, класть вновь выпущенные и использованные в настройке. После этого остальное дело техники — по расписанию дампим сертификаты, находим в них данные о сроке окончания, начинаем присылать предупредительные письма группе поддержки заранее. Тут кстати родилась универсальная формула, позволяющая не попасть на праздники и прочие выходные  — предупреждения высылаются за 14, 5, и 3 дня до истечения срока действия сертификата.

Главный технический ингредиент — договориться с certutil, которая в разных версиях по разному выдает дампы.
В моем конкретном случае просто парсится дата окончания через

$data = certutil -dump $file | select-string -pattern "NotAfter:"

В итоге, письма рассылаются, сроки не продалбываются, клиенты довольны, человеки не держат в голове лишней информации

Пример уведомления о скором сроке окончания действия сертификата

КЭНК!
Слава Роботам!

Cockpit в CentOS 8

Будучи Ветераном Этих Ваших Комплюктеров, всегда забивал на приветственные «знаете ли вы» различных программ и систем. Ну во-первых, камон, чему меня человека может научить какая-то там софтина. А во-вторых, мне надо будет — сам в документации посмотрю.

А сегодня вот логинясь по совершенно другим делам в свежий тестовый CentOS 8, зацепился глазом за совет сделать вкл какому-то там «cockpit.socket», загуглил обо что это всё, попробовал — и открылась мне, всезнающему, целая новая непривычная парадигма управления линукс серверами через веб консоль, да ещё и встроенная вот так вот в минимальный дистрибутив.

Век живи, век учись, и тому у кого и как учиться — тоже учись.

КЭНК: сиделка для WSUS и её приключения на планете апдейтов

Хорошо настроенный WSUS работает как часы: ходит себе в интернеты за обновлениями, раздает их клиентам, и много хлеба не просит. Есть только несколько моментов: во-первых по привычке со старых версий я обычно применяю регулярную принудительный пинок, форсирующий штатную очистку базы от устаревших и ненужных объектов (честно говоря, не знаю есть ли проблема сейчас — но готово решение есть, почему бы не запускать — хуже не будет, а времени роботов не жалко).

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

Последний важный момент, больше относящийся не к технологии, а к процессам и менеджменту — как построить систему одобрения обновлений так, чтобы не положить одним прекрасным ночером пару тысяч хостов кривым апдейтом (за который MS через несколько дней будет извиняться, но нас это уже не спасёт). И как при этом не оставлять системы не обновлёнными надолго, по забывчивости например. Здесь очень хочется исключить из процесса человека, оставив за кожаным мешком только задачу быстрого контроля ключевых параметров.

Трент Резнор сказал, что BSOD тут — часть инсталляции, но мы то Всё Понимаем. Фото -ltrandazzo

На уровне процессов последняя задача решается выделением тестовой группы хостов, потеря которых некритична (=которых не жалко), но которые при этом активно используются (=о сбое быстро станет известно). На эти хосты обновления одобряются сразу средствами WSUS, а по прошествии выбранного времени и при отсутствии выявленных проблем — обновления раскатываются на остальные. За это определенное заранее время хорошо бы ещё держать руку на пульсе с помощью комьюнити и тематических ресурсов — благо новости о очередном KB, превращающим комплюктеры в тыкву, разносится народным гневом как лесной пожар.

Ну а в части исключения человеческого фактора из решения — нужен робот-сиделка, что будет следить за рутиной вместо людей.

Прибежали в хату дети, притащили новый скрипт

Зовём на помощь кэнк-мена, благо у актуальных версий WSUS есть API, которое можно дёргать из PowerShell. Пара вечеров — и имеем скрипт, умеющий:

  • перемещать в целевую группу компы по шаблонам в имени (ну так, для порядка)
  • отклонять по ключевым словам апдейты, которые точно не нужны
  • искать апдейты, которые были автоматически одобрены на тестовую группу больше чем заданное время назад, и аппрувить их на все машины

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

Скрипт на гитахабе https://github.com/alexbatishchev/kenk-wsus-carer

КЭНК!
Слава роботам!

КЭНК: следитор за изменениями в контактах Exchange

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

Заряжаем павершелломёт

Для целей автоматизации Exchange я часто использую Exchange Web Services (EWS) Managed API, вызывая его функции из PowerShell через библиотеку. Его применение напрашивается и тут. Можно смотреть содержимое адресной книги, дампить интересуемые данные из ящика в текстовый файл, сравнивать результаты актуального дампа и предыдущего, и формировать отчёты об изменениях. Побочный результат — раз уж мы получаем изменения, можно хранить их историю и иметь возможность ретроспективы.

Дальше — дело техники и деталей. Выгружаем поля в текстовый формат, схлопываем многоэлементные объекты в строки по формату как нам вздумается, исключаем те поля, за которыми следить не хотим. Приправляем наглядным представлением в виде HTML отчёта, выделяем цветом изменения и наносим прочую пользу клиентам сервиса. Даем возможность службе техподдержки ставить и снимать ящики с контроля добавлением в специальную доменную группу. Запускаем скрипт по планировщику с максимально возможной частотой. Роботы трудятся — а человеки пользуются результатом.

Примеры отчётов об изменении части контакта и удалении контакта из ящика

Сервис на базе этого скрипта успешно работает несколько лет. Служба техподдержки всегда может разрешить вопросы клиентов об изменениях в адресных книгах, некоторые клиенты пользуются отчётами для контроля работы в группе и оперативного отката изменений. Уникальный кастомный сервис достался заказчику в рамках общего контракта на обслуживание системы. Проблемы, для решения которых раньше требовалась работа специалиста, решаются автоматически и часто без привлечения техподдержки вообще. Чистый КЭНК!

Скрипт на гитхабе https://github.com/alexbatishchev/kenk-contacts-watcher

Слава Роботам!

КЭНК: уменьшаем диск сервера Windows через зеркалирование

Редкий, но противный кейс: есть сервер на Windows — виртуальная машина на платформе VMware, у которого нужно уменьшить размер одного из дисков (и размер соответствующего vmdk файла на хранилище). До кучи — сервер нельзя выключать надолго.

Чаще всего такие ситуации случаются из-за ошибок сайзинга при развёртывании (в том числе, при прогибании на переговорах разработчиков, которым всегда нужно мильён терабайт и триллион ядер этих ваших комплюктеров, чтобы «одинэс быстро работал»), либо когда система выводится из эксплуатации, оставаясь в дремлющем режиме, и потребности в пространстве у неё снижаются, но убивать полностью её пока нельзя.

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

Картина неизвестного художника «Админ накидал на датастор виртуалок с тонкими дисками и ушёл в отпуск»

В операционках Windows отлично работает софтверное зеркалирование, с помощью которого задачу можно решить надёжно, достаточно быстро и без существенных перерывов в работе сервиса (а чаще всего вообще без них).

Сейчас КЭНК-мэн займётся вашими дисками, ребята

Как сжать системный диск

  • Сжать раздел стандартными средствами Windows Server до необходимого
  • Добавить новый виртуальный диск(и) такого размера как получившийся необходимый размер
  • На разделах старого диска (100 мб и системный вместе, остальные если надо — по отдельности) правой кнопкой — добавить зеркало, указать новый диск. Диски преобразуются в динамические и начнётся синхронизация
  • В свойствах компьютера установить опции загрузки с вторичного плекса и выбора операционной системы и возможности восстановления при запуске
  • Дождаться полной синхронизации зеркальных томов
  • Выключить виртуалку. Отключить оригинальные диски от виртуальной машины
  • Загрузить сервер, отключить (поломавшееся) зеркалирование

Как сжать несистемный диск

* Сжать раздел стандартными средствами Windows Server до необходимого

  • Добавить новый виртуальный диск(и) такого размера как получившийся необходимый размер
  • На разделе старого диска правой кнопкой — добавить зеркало, указать новый диск. Диски преобразуются в динамические и начнётся синхронизация
  • Дождаться полной синхронизации зеркальных томов
  • Отключить (можно на горячую) оригинальные диски от сервера
  • Отключить зеркалирование, указав что пропавшего диска в зеркале больше нет и не будет.

Детали и тонкости

Использующие раздел ИС переживают такие операции без проблем, в случае если диск не системный простой сервиса = 0

Иногда всё свободное пространство освободить не получается — диспетчер дисков Windows выдает ошибку «недостаточно свободного места» (There is not enough space available on the disk(s) to complete this operation). Проблема не в месте, а в неперемещаемых файлах, используемых в момент сжатия системой. Решается изучением логов Event Viewer Windows Logs\Application, где видно что именно мешает, и после соответствующих операций (типа временного отключения мешающего файла подкачки на разделе) раздел скорее всего удастся сжать.

Слава Роботам!
КЭНК!

Дмитрий Кетов, Внутреннее устройство Linux

В издательстве BHV вышло второе издание книги Дмитрия Кетова «Внутреннее устройство Linux». Лучше всего отличительную особенность книги сформулировал в предисловии сам автор:

в книге рассматриваются абстрактные концепты внутреннего устройства ОС, иллюстративно подкрепляемые примерами анализа (а иногда и синтеза) ее конкретных компонент и связей между ними.

Именно такого взгляда на Линукс, глубокого и направленного в корень истории того, что в итоге стало важнейшей технологией современности, не хватает многим спецам моего поколения, учившимся работе с системой методом проб и ошибок, ковыряясь с неведомым чудо зверем прямо in the wild.

Прекрасно помню как весной 1999 я обошёл всю Савелу в желании купить видеокарту, которая в том числе будет нормально работать с тогдашним RedHat (купленным на диске в ларьке на территории Академии). Продавцы на мои вопросы делали квадратные глаза, и в итоге карта была взята наобум, и после ночи камлания над конфигами всё-таки завелась в X Window, не очень понятно как.

Помню ещё смешную историю, хоть и не в тему линукса — когда ребята в общаге несколько часов воевали с дровами на притащенный откуда-то матричный принтер с подключением по LPT. Система его упрямо не видела — как оказалось, в тесноте переполненного стола кабель воткнули не в тот системник.

Возвращаясь в реальность 2020, я очень завидую студентам Дмитрия и вообще всем, кто погружается в тему сейчас: с такими учебными пособиями разбираться легко, продуктивно и очень полезно.

Книга на сайте издательства по ссылке https://bhv.ru/product/vnutrennee-ustrojstvo-linux-2-izd/
В Мск с доставкой в пункт СДЕК выходит в смешные $10

Москва — Воронеж — Таганрог — Ростов

В конце июля совершил автопутешествие на Азовское море, и в итоге получилось неплохо.

Дорога Москва-Ростов

Я не люблю ездить далеко на авто — обычно от размеренного движения по трассе я быстро устаю, теряю внимание, засыпаю и тому подобное. Но ковидла внесла коррективы и в планы на лето вообще, и в возможности перемещения по стране в частности, так что было решено попробовать доехать до моря на еноте.

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

Как и ожидалось, дорожная тревога не дала выспаться, а московские пробки на выезде из города изрядно измотали нас еще до выхода на трассу, так что первый день дороги вышел непростым. Вечерний Воронеж тоже совершенно не зашёл — вечером в пятницу все популярные заведения оказались битком, мы с трудом нашли где перекусить (но в итоге открыли для себя классный бар ПонесЛось), город показался неуютным и неинтересным. Главным впечатлением первого дня стали поля подсолнухов вдоль трассы — буквально на первом мы вышли и обфотографировались, но и все последующие проплывали за окном как что-то невероятно яркое и непривычное.

Трасса в отличном состоянии (мы ехали по всем платным участкам от Москвы до Воронежа), енот бодро пёр 100-110 — быстрее начинала сказываться парусность и его сильно сдувало с дороги. Впервые за все годы владения машиной я поймал грань мощности двигателя — если с четырьмя пассажирами, багажом и половиной бака он еще резво тянул, то заполнив на заправке бак до горловины, я совершенно неожиданно почувствовал как машина перестала ехать.

Второй день пути принёс пробку на час перед Ростовом и небывало отстойный участок дороги после новенького аэропорта, примерно посередине пути мы пообедали на настоящей стоянке грузовиков «У Армана». Лишь затемно мы добрались до места назначения — встретили друзей, заселились, смотались в магазин за вкусняшками и легли спать.

Следующие 12 дней мы провели в Таганроге, выбираясь иногда на небольшие путешествия в округе.

Ростов-на-Дону

В один из дней посетили Ростов-на-Дону (около 2 часов на машине от дома до места). Город понравился чистотой и уютом, много следов приведения в порядок к ЧМ-2018, типа свежих автобусов, но и в целом сама по себе центральная часть милая и аккуратная. Прошлись пешком от церкви Сурб Арутюн до Соборной площади, заглянули в Макдак и на центральный рынок, прокатились на корабле по Дону (самая лаконичная экскурсия в истории), поужинали в отличном ресторане Раки И Гады, постояли в пробках на выезде, попали в жуткую грозу на обратной дороге, и вернулись домой.

Танаис

В другой из дней прокатились недалеко от Таганрога в Археологический музей-заповедник Танаис — поглазели на раскопки (совершенно непонятные кучи камней, туда так и просится развлектально-познавательная программа с применением AR), побродили по павильонам-музеям, заехали на обратной пути на рукав дельты Дона Мёртвый Донец.

Кооператив Шторм и супер-комары

Основное время отпуска мы провели в Таганроге. Мы жили в просторном трёхэтажном коттедже — 4 большие спальни с санузлами, две из них с балконами на море, на первом этаже санузел большая кухня-гостиная и терраса с выходом в море. Коттедж по сути вертикальный типовой отсек в ряду таких же домиков на территории лодочного кооператива «Шторм», и это совершенно уникальная (и насколько я понимаю малозаконная) история с домами, стоящими прямо на море. Фото арендодателей в объявлениях рисуют красивую перспективу балконов на море и купаний прямо с персональных пирсов и веранд. В реальности крутость выхода в море сильно разнится от хозяина к хозяину (рядом с нами например у людей был мега-пирс с подъёмником для гидроциклов, террасой с мангалищем, креслами-качалками, и прочими пирогами). У нашего коттеджа была веранда с довольно неудобной стальной лестницей в море, но возможность так вот выйти в море, весьма неглубокое к тому же (что подходит для детей) — ценно.

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

Третий аспект расположения — и он оказался самым неожиданным — Азовский комар-звонец. Комары эти не кусают, но прилетают огроменными стаями, висят в воздухе инфернальными тучами, лезут на свет в любую щель, покрывают поверхности живым шевелящимся слоем (и засирают мелкими зелёными точками-какашками), с приходом утреннего солнца высыхают и опадают, покрывая полы ковром. Количество комаров зависит от погоды: были вечера, когда их не было вовсе, но однажды утром я смёл веником на террасе два больших пакета из Дикси сушёной комарятины. Комаров обожают ловить пауки, поэтому за ночь всё затягивается паутиной — зато день на пятый большого пришествия комаров мы бросили пылесосить высохшие тела с потолка, позволяя собрать их роскошным крестовикам.

А ещё ночью внутри стаи этих комаров можно погулять как Городецкий в Сумраке, и если прислушаться, они звенят в точности как синтезаторы в The Chemical Brothers — Hey Boy Hey Girl.

Таганрог

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

Отдельная печальная песня — дороги. Яндекс навигатор считает дорогами всё, что есть Таганроге, и регулярно предлагает маршруты через труднопроезжаемые, какие-то сельские улицы, по щебню, между кур, спящих собак и играющей детворы. На второй-третий день основные дороги в окрестностях нашего жилья я изучил, и на предложения Алисы повернуть в очередную гравийно-ямную ловушку не реагировал. Дороги же асфальтовые в городе в ужасном состоянии, машины летают в режиме постоянного слалома, а когда мне пришлось ехать по городу во время ливня, капканы под лужами удавалось заметить только по резким перестроениям местных.

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

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

Дорога Таганрог-Москва и Воронеж

По опыту дороги туда, домой решили возвращаться также с ночевкой. Стартовали в 8 утра, объехали кривой участок у аэропорта и полетели по трассе. По дороге узнали от друзей, что в утренних сборах оставили целую сумку — хорошо что ребята смогли пронести её в самолет как ручную кладь. Засветло прибыли в Воронеж, заселились в классный сетевой отель, поужинали в ПонесЛосе, отправили подростков отлёживаться в номера и пошли гулять по Воронежу. Удивительно, но в этот раз город открылся с другой стороны — просторный, расцвеченный иллюминацией, с музыкой и танцующими фонтанами, с аллеями и гуляющими горожанами, с бесящимися в струях цветной воды детьми — совершенно непохожий на тот первый Воронеж 12 дней назад. Было очень уютно и хорошо.

Утром следующего дня позавтракали в отеле, заскочили к Котёнку на улицу Лизюкова, после стартовали в Москву, заехали по дороге искупаться на Оку, забрали у друзей забытую сумку и к вечеру были дома.

Итоги и выводы

В целом поездка на машине вышла даже дороже варианта с самолётом (в первую очередь из-за потраченных на ТО автомобиля денег). Также тут можно было бы сэкономить на двух ночевках в Воронеже, но проехать за раз мне было не под силу.

Машина дала классную свободу на месте (хоть и временами задалбывался кататься в магазин-на рынок-на вечернюю прогулку). Всего за время отпуска накатал почти 3000 км.

Таганрог как морской курорт — 3/10.
Путешествовать по М4-Дон — удобно.
Жить — хорошо.

 Нет комментариев    25   2 мес  

КЭНК: запуск диалога смены пароля во вложенных сессиях RDP

В сессии RDP (внутри сессии RDP (внутри сессии RDP (...))) очень неудобно вызывать с клавиатуры диалог смены пароля пользователя Windows (кто пробовал — поймёт).

Вот магическая строчка, решающая все проблемы:

C:\Windows\explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}

Строчку также можно легко превратить в ярлык, раскладываемый на рабочий стол групповой политикой (ну а тут как водится и до скайнета недалеко).

Файл ярлыка (с прибинденой иконкой из стандартного набора Windows):
https://github.com/alexbatishchev/kenk-stuff/blob/main/changepassword.zip

Слава Роботам!
КЭНК!

КЭНК: перенос файлов в архив 7zip через контекстное меню

У архиватора 7zip под Windows не хватает супер-удобной функции — нельзя легко из Проводника переместить папку или файл в архив. Более того, судя по многочисленным запросам в интернетах, внедрение её создателями не предполагается по какой-то принципиальной причине. Все варианты команд стандартного контекстного меню позволяют сделать архив, но оставляют оригиналы файлов. Даже в GUI самой программы галку «удалять файлы после сжатия» требуется каждый раз устанавливать вручную, и нельзя настройками включить её по умолчанию. Между тем, для меня в работе и быту это довольно частая операция (да и привычка от WinRAR осталась), и хотелось бы её максимально упростить.

Короткая НИР Отдела Малой Автоматизации показала, что никакими штатными средствами сделать это невозможно, зато возможно модифицировать реестр, вписав в контекст файлов и папок нужные команды (тут вообще поле напаханное для творчества, на самом деле).

Контекстное меню курильщика 7zip и контекстное меню 7zip здорового человека

Будим гуглочёта, затачиваем Notepad++

Собственно составляющие задачи:

  • сочинить команду для 7zip с флагом удаления оригиналов (-sdel),
  • понять как передать команде каталог или файл, на котором запущено контекстное меню (ожидаемо, %1)
  • понять где в реестре прописывается команда (см путь ниже, там Directory для каталогов и * для «вообще всего», в данном случае для файлов это работает).

Код ниже, строчка «Move To 7z archive with maximum (7) level compression» понятно может быть любой какой вам удобно, равно как и параметры компрессии (я выбрал mx7, времени роботов не жалко)

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\Move To 7z archive with maximum (7) level compression]
[HKEY_CLASSES_ROOT\Directory\shell\Move To 7z archive with maximum (7) level compression\command]
@="\"c:\\Program Files\\7-Zip\\7z.exe\" a \"%1\".7z \"%1\\\" -sdel -mx7"
[HKEY_CLASSES_ROOT\*\shell\Move To 7z archive with maximum (7) level compression]
[HKEY_CLASSES_ROOT\*\shell\Move To 7z archive with maximum (7) level compression\command]
@="\"c:\\Program Files\\7-Zip\\7z.exe\" a \"%1\".7z \"%1\" -sdel -mx7"

Не очень кайфово, что команда вызывает Чорный Экран С Буквами и показывает его, пока архив не сожмётся, но мне это не мешает

Страница с готовым .reg файлом на гитхабе https://github.com/alexbatishchev/kenk-7zip-contextmenu

КЭНК!
Слава Роботам!

 1 комментарий    22   3 мес   КЭНК

Электросамокат: опыт использования и выводы

После трех сезонов владения продал свой Xiaomi MiJia Electric Scooter M365, и покупать другой не планирую.

Опыт использования и выводы:

  • я поставил отдельную ручку механического тормоза и продвинутые колодки, апгрейд сделал поведение самоката более предсказуемым, но в целом для человека моего формата железка хилая, тщедушная и малоненадёжная.
  • мне совершенно не подошла травмоопасность — несколько раз я бился на нём, было долго и неприятно заживать. Возможно есть люди крепче или с турбо-регенерацией организьмы, но мне каждый инцидент выходил дороговато. В итоге начинаешь делать выбор поехать или пройтись без риска пешком сравнимое расстояние — и выбор делается не в пользу самоката.
  • как универсальный городской транспорт сяоми себя также не оправдал. Оказалось что он всё же слишком громоздкий чтобы ехать на нём только часть пути, а часть толкаться в транспорте (даже не сильно заполненном), и при этом слишком слабый чтобы ехать на нём всю дорогу в 10-15 км. С самокатом также неудобно в магазинах (даже просторных супермаркетах), и вообще мысли «буду ездить туда куда сейчас хожу» — это очень и очень далекие от реальности фантазии. В целом, я допускаю сценарии его повседневного использования, типа поездок от дома до офиса на 3-7 км, но в моей жизни в последнее время таких нет, хотя по началу я несколько раз ездил на нём из Павлино на Китай-город (через электричку), ставя рекорды времени.
  • как средство для прогулок самокат неожиданно оказался слишком капризен и требователен к вниманию: на велосипеде или пешком можно передвигаться, глазея по сторонам или думая о своём. На самокате требуется постоянно концентрироваться на дороге, так как маленькие колеса слишком остро реагируют на качество покрытия. Однажды я полетел с него кувырком на, казалось бы, ровном месте во дворе дома и минимальной скорости, просто отвлёкшись на граффити на стене.

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

Новый хозяин ускакал с горящими глазами и оставил отличный отзыв, надеюсь ему аппарат принесёт только радость.

 Нет комментариев    27   3 мес  
Ранее Ctrl + ↓