Что можно тут найти?


и еще немного всякого-разного...

URL
We rise up for the things we believe in over and over again
Свинтус вернулся на рабочее место:

- Иду себе по коридору, встретил из бухгалтерии сотрудницу. И она меня спрашивает, а чего это ты не на площадке Х? Я прям не нашелся, что ответить...
- Хых, по гарантии хрюшку вернули XD



@музыка: PYLOT, Polarity, Sleepless-Nights - Breathe

@темы: Этот веселый мир, Будни живого уголка

We rise up for the things we believe in over and over again
Обсуждаем по телефону проблемы в установке некоего софта. С того конца телефонного провода:

- Так, там есть логи. Это же безалкогольный кофе.

Как говорится, отсыпьте! Умоляю, отсыпьте мне того же! XD


@музыка: PYLOT, Polarity, Sleepless-Nights - Breathe

@темы: Этот веселый мир, Будни живого уголка

We rise up for the things we believe in over and over again
Последние несколько дней ощущаются как самый настоящий день сурка. "Проснулис-потянулис", кофе, автобус, работа, автобус, чай, спать. И по кругу. В принципе, этот сценарий не меняется уже пару-тройку лет, но проблема в том, что все, абсолютно все стадии сейчас пронизывает только одна мысль - Я ХОЧУ СПАТЬ.

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

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

... На телефоне обновилось в очередной раз приложение Яндекс.Музыки. Что тут сказать - верной дорогой идете, товарищи. Видимо, вам было мало хейта, когда вы сменили иконку приложения с приятной глазу ноты на "импульс_по_нервам". Теперь вы еще и иконки управления воспроизведением перерисовали, сделав их поистине уебищными. Браво, ребят, просто супер, молодцы!

@музыка: PYLOT, Polarity, Sleepless-Nights - Breathe

@темы: Этот безумный мир

We rise up for the things we believe in over and over again

4 года. Этот путь занял чуть больше 4 лет: c 9 января 2021 года. И без всякого преувеличения я могу сказать только одно - этот путь был прекрасен!

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

Браво, Coffee Stain Studios. Вы задрали планку качества игр очень высоко уже тогда, когда я только познакомился с этой фабрикой. Но теперь вы не только взяли эту высоту, но и поставили планку на еще более недостижимый уровень! Спасибо вам!

@музыка: Kirara Magic - Tempest

@темы: In-game

22:12

Sequence(?)

We rise up for the things we believe in over and over again
Пара треков ниже не связана ничем, за исключением принадлежности к одному и тому же жанру. Но у меня в сознании они объединились в тот момент, когда я услышал самые первые ноты второй композиции. Уж очень похожи они, словно первая - это начало приключений Нокса где-то еще в 80-90-х годах, а потом нам выкатывают продолжение уже ближе к нашему времени.




Что тут скажешь - просто прекрасно. Всё, как мы любим!

@музыка: Prelude & Subsystem

@темы: Music

We rise up for the things we believe in over and over again
А точнее - о том, в чем мы его варим.

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

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

Это вещь в сборе. Кружка, в которой все варится, выглядит вот так:

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

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

2. Кружка. Описание девайса говорит, что два носика на кружке будут "очень удобными как правшам, так и левшам". Ответственно заявляю, нихрена это не удобно. Конструкция кружки такова, что при повороте кисти руки в сторону эта самая кружка под действием силы тяжести будет стремиться выскочить из руки. Чего при обычном расположении одного носика напротив ручки не произойдет никогда.

3. Кнопка включения. О, это просто песня. В момент подключения устройства к сети кнопка загорается бело-лунным светом. И светит постоянно. В рабочем же режиме горит красным. Тут сразу две мысли. Первое - может быть, стоило сделать наоборот? В дежурном режиме оставлять красным, как менее ярким, а в рабочем светить по глазам белым? Второе - а нахрена это вообще нужно-то? Третье - для того, чтобы лампу погасить, девайс нужно отключить от розетки. И подозреваю, что найдется немало людей, которым эта белая блямба ранним утром или поздним вечером будет выжигать глаза. А кнопки выключения нет, и нужно каждый раз дергать вилку из розетки. Опять же - так делать нельзя, у вилки есть таки свой ресурс, и частые выключения-подключения его выработают (как и ресурс розетки). Но нет, производителям виднее...

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

@музыка: Timecop1983 - Tears in the rain

@темы: Random Thoughts

We rise up for the things we believe in over and over again
Сегодняшнее утро задало тон всему дню, и от этого тона я до сих пор отойти не могу. Вспоминаю диалог и натурально ржу в голос.

Преамбула. Понабодилось позвонить в аварийку. Холодный стояк таки потребовал замену, три дырки, из которых вода идет по каплям, но она таки идет.

Амбула :) Хватаю мобилку, набираю аварийку, там берут трубку и... и я нарываюсь на бота: "а подскажите это, а поясните это, а что передать абоненту..."

Бл@, я в аварийку звоню или куда? Ну да ладно, глядишь, это поможет раскидать очередь звонков (в аварийке она есть всегда). Но тут бот задает мне вопрос, от которого я сначала похолодел, а уже потом заржал на весь офис:

- Скажите, а я сейчас разговариваю с человеком или роботом?

СУКА ТЫ ЭЛЕКТРИЧЕСКАЯ!!! XD Ок, с человеком, давай уже соединяй с оператором, трубу-то как-то надо менять. Что делает этот болван? Правильно, он по-новой начинает задавать весь список вопросов вместе с уточнением, кто сейчас на проводе, и уходит в цикл без условия выхода. Ну твою ж налево.

Бросаю трубку, делаю вдох-выдох, снова набираю аварийку, и, о, чудо, попадаю сразу к оператору, которому и обрисовываю проблему. Дальнейшее уже не существенно.

И вот весь день я пытаюсь найти ответ на вопрос - а что за херня это была? XD

@музыка: Koto - Time (Стефано, ты всегда будешь одним из моих любимчиков)

@темы: Этот безумный мир, Этот веселый мир

We rise up for the things we believe in over and over again
... для разнообразия. А заодно посмотрим, чем в итоге закончим. Как уже было выяснено опытным путем еще на прошлый новый год - виноградный сок + набор для глинтвейна = напиток богов. Жаль, что в этот раз чистый виноградный сок найти не удалось, продавали только виноград + яблоко, но даже такое сочетание весьма и весьма неплохо.

Думаю, что пора мазать лыжи в сторону винного магазина, чтобы прикупить бутылку безалкогольного, и попробовать сварганить то же самое на его основе...

@музыка: TGC - Norwegian Dream (офигеть, вокальная версия классики бородатых годов!)

00:19

End of 2024

We rise up for the things we believe in over and over again
Итоги... не то, чтобы утешительные.

Diary.ru продан, если не врут появляющиеся то тут, то там, заметки в сети. Кому - неизвестно, сумма - чуть больше 1.6кк. Целесообразность ведения здесь блога и далее - под вопросом, да и писать, если честно, пока что нечего.

Личные планы в силу некоторых обстоятельств переносятся на следующий год. Особо распространяться нет желания, отмечу лишь, что теперь их исполнение потребует бОльших усилий. В том числе и ментальных.

zHz00, пожалуй, я все же сломаю давешнюю традицию. Единственный проект, в котором я вышел на New Game +++ и выше - это дилогия Nioh. И, несмотря на то, что во второй части я на самой высокой сложности (NG+4) натурально кайфовал, Dream of Wise, которая соответвует трем плюсам, была настоящей пыткой. И нет абсолютно ни малейшего желания превращать жизнь IRL в этот кошмар. Так что...

New Game +++
>New Game<

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

@музыка: Lightning Returns: Final Fantasy XIII OST - Touzokudan Monoculus

@темы: Этот безумный мир

10:50

On games...

We rise up for the things we believe in over and over again
Читаю новость про то, что новую Драгонягу номинировали на TGA24 на "инновации в доступности". Малость офигеваю, после чего обращаюсь к Свинтусу:

- Вот ты играл в драгонягу... Ты видел там какие-то инновации в доступности?
- Хм... ну, играть стало проще, я помню в первой части меня гоняли...
- Не, ты не путай сложность и доступность. Доступность - это про возможность играть людям с ограничениями.
- Ааа... Ну, учитывая, что в эту игру играла даже свинья...

===

- Эй, сорка, там выложили первый эпизод проекта по Бене Гессерит. Пора качать!
- Да пусть респятся, потом оптом сфармим :)


@темы: Этот веселый мир, Будни живого уголка

We rise up for the things we believe in over and over again
Уважаемые жители и гости нашего города!

Запомните, несчастные вы мои! Вы можете приложить карту оплаты проезда в метро к считывателю СРАЗУ после того, как через турникет прошел пассажир перед вами. Не нужно ждать, когда система выведет сообщение "Приложите карту", она это сделает СРАЗУ, как только вы карту приложите.

!!! ПРЕКРАЩАЙТЕ ТУПИТЬ В МЕТРОПОЛИТЕНЕ !!!


@темы: Этот безумный мир

We rise up for the things we believe in over and over again
Иду себе до дому, никого не трогаю, наслаждаюсь музыкой Kirara Magic в наушниках...

... - А смотри, какая у меня дубина!

Навстречу мне идет девчушка ну лет пяти-шести, в руках полуметровая ветка формата "палка пиздить крапиву". Останавливаюсь:

- А точно дубина?
- Да! Хотя на самом деле это так себе...
- Смотри, поаккуратнее с этой "дубиной", не зацепи кого-нибудь ненароком.
- Да это я свою подругу тут жду...

Поржали, но отходил от нее с опаской...

@музыка: Kirara Magic - Tempest

@темы: Этот веселый мир

We rise up for the things we believe in over and over again
Интереса ради решил зайти на свой рутубовский профиль, чтобы оценить, насколько сервис с моего последнего посещения уже больше года назад успел измениться. Что ж, это было эпично.
Нажмите сюда, чтобы зайти в профиль. Нажимаем, вбиваем электромыло.
Выводится капча. Хм... ну ладно, решаем.
Выводится форма, где нужно ввести код, отосланный в электромыле. И сразу поверх нее - еще капча! Ну блядство! Ладно, решаем. Вбиваем цифры из письма. После второй цифры форма ввода зависает наглухо.
...
Твою ж мать!
По новой. Вбиваем адрес, капча, появляется форма ввода кода из письма, капча. Решили капчу, вбиваем все цифры (обошлось без зависаний). КАПЧА!!!

Еще раз - ТРИ КАПЧИ ПОДРЯД!

Одменестрация рутуба, вы там ебанулись в корень? Нет, вы совсем что ли поехали кукухами в ебеня???

Больше никаких изменений при беглом осмотре сайта не заметил, но уже увиденного хватило, чтобы закрыть сайт еще на год. А то и больше.

@темы: Этот безумный мир

We rise up for the things we believe in over and over again
- У меня сейчас своя трава - The Crust.
- Судя по скринам - опять ебучая фабрика.
- Ога. Напополам с sims, блять. Сука, как ни инженер - обязательно бухло подавай ему на базе. А бар еще изучить надо, а это далеко не приоритетная вещь.
- ТЫ ЧО, ЭТО ВАЖНЕЕ ДАЖЕ МЕДОТСЕКА!
- И это я слышу от врача, блеать!

Все действующие лица себя узнают тут же по прочтении :)


@темы: Этот веселый мир

We rise up for the things we believe in over and over again
- Завтра в Петербурге дожди.
- А можно эти дожди после 9 вечера, когда все по домам разбегутся?
- Можно, но ты знаешь, с кем договариваться надо.
- А с кем?
- Ну... там, повыше.
- Эх, в воображаемых друзей не верю...
- А он тебе и не друг XD


@настроение: XD

@темы: Будни живого уголка

We rise up for the things we believe in over and over again

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

Polkit. Инструмент, который позволяет обычному юзеру исполнять команды и запускать программы с повышенными правами. Вроде как пишут, что в отличие от sudo, эта приблуда предлагает более гибкую настройку работы. Ок, читаем всякое, просвещаемся:

Тег defaults — это место, в котором указаны разрешения или их отсутствие. Он содержит три параметра: allow_any, allow_inactive и allow_active. Неактивные сеансы — это, как правило, удалённые сеансы (SSH, VNC и т.д.), в то время как активные — это вход, выполненный непосредственно на машине через TTY или X.

Это Арч так трактует. Я-то по наивности своей всегда считал, что понятия active/inactive - несколько про другое, ну да ладно.

Но дальше в дело вступает база знаний от RedOS!

Политики polkit
Все политики находятся в /usr/share/polkit-1/actions/ в формате *.policy. Каждая политика представляет собой xml-файл, в котором описываются запросы к polkit. Каждый запрос имеет три условия, прописанных в секции defaults:
Запрос от любого пользователя. Тег allow_any;
Запрос от неактивного (заблокированного при создании) пользователя. Тег allow_inactive;
Запрос от активного пользователя - allow_active.

What the fuck is this shit? Заблокированный пользователь может что-то сделать в системе? С каких пор?

Ну и для полноты картины - что же нам скажет мануал самого polkit:

defaults
This element is used to specify implicit authorizations for clients.

Elements that can be used inside defaults includes:

allow_any - Implicit authorizations that apply to any client. Optional.

allow_inactive - Implicit authorizations that apply to clients in inactive sessions on local consoles. Optional.

allow_active - Implicit authorizations that apply to clients in active sessions on local consoles. Optional.

Все таки сеансы, не пользователи. Но тут тоже не шибко понятно, какой сеанс считается актвивным, а какой - нет.

Печаль. Боль. Уныние.



@музыка: Zayaz - Control the Night

@темы: Этот безумный мир, Linux

08:38

We rise up for the things we believe in over and over again
Свинтус ковыряется в сети и, видимо, пока что безуспешно:

- Слушай, а ты не знаешь магазинов, где можно куклу вуду купить?
- Кхм... не, не интересовался как-то. Кого ты там уже заколдовать хочешь?
- Да есть тут...

Через пару минут клацания кнопками:

- О, куклы вуду, дешево...

И еще через минуту:

- Женский вариант, отлично!


@музыка: Kirara Magic - Melt

@темы: Этот веселый мир, Будни живого уголка

We rise up for the things we believe in over and over again
Таких как ты не было, нет,
И НЕ НАДО! (с)

Вынесенное в эпиграф отражает мои мысли по поводу вышедшего дополнения наиболее точно, если попытаться обойтись только цензурной лексикой. Хотя тут я вынужден, просто вынужден сделать отсылку к своей же записи, посвященной еще аж God of War. Потому что с Тенью древа Эрд вышла ровно та же история, что и с богом войны. А именно - следует разделить работу двух команд, тех, кто рисовал, и тех, кто просчитывал.

Первые отработали не на 146, и не на 200 процентов. Готов подписаться под словами тех, кто говорит, что Земли Теней красивы настолько, что там и пожить было бы здорово. Нет, кроме шуток, визуал - безупречен. Детализация - мое почтение. Производительность, конечно, подкачала, примерно на том же уровне, что и основная игра в день выхода. Но повторюсь - то, что я вижу, приводит меня в восторг.

И какова же была моя боль от того, что вся эта красота рассыпалась под ударами клинических идиотов, прописавших поединки. Потому что если уж я в Боге Войны на луну выл... тут пришлось натурально орать. Из-за собственной криворукости, но далеко не всегда. Очень часто выл от полного бессилия. Ну просто потому что если ты огреб, ты огреб еще раз, а частенько и третий, а третий удар уже фатален. И это без малейшей возможности выхода из клинча. Попал - значит на все деньги. Яркий пример такого попадалова - Реллана. Рыцарь-двулезвийница, чтоб ей. Ее ульта - это три подряд магических удара на всю арену, и самое главное в попытке этим ударом противостоять - уклониться от самого первого. Напоминю, ударов три. Каждый из них по отдельности всю полоску здоровья не снесет, но попадание под любой из них - это станлок. Ты не выйдешь из анимации восстновления до следующей зуботычины. Таким образом, если тебе по голове прилетела первая плюха, лети назад к костру. БЕЗ ШАНСОВ.

В одном из своих обзоров Они на вышедшую тогда Nioh выдал примерно следующее: "попадание под один удар - это гарантия получения второго, а два пропущенных удара - это смерть". Похоже, что хитрый японец Миядзака наконец-то посмотрел в сторону немного более других людей и того, как эти другие люди делают соулслайки. И до него дошло - а что если повернуть правила игры наоборот? Не у меня будут идеи тырить, а я у них? И он стырил. Только не те, какие нужно бы. И возвел это дело в абсолют.

Хрен с ней, с Релланой. Я выл на ней (паскудно звучит, но уж как есть), но прошел. Но тогда я еще не знал, что приготовлено на десерт. И вот когда я этот десерт распробовал...

Мои поздравления, Миядзака-сан. Тебе удалось обновить рейтинг самых конченых злодеев, вышедших из-под твоей руки. Если до этого момента общепризнаным лидером хит-парада самых мразотных противников было Ложе Хаоса, то в моих глазах спойлер это ложе обошел, как Gallardo под нитро стоящий на месте Запорожец. Потому что ласт в дополнении вобрал в себя самые мразотные черты, какие можно прописать боссу компьютерной игры. Считаем!
1. Тварь огромна. Не настолько, как дракон, но тем не менее в экран не влезает, следовательно очень часто не видно, что будет делать. Магам пофиг, они все равно будут бить с дистанции, а вот милишникам приготовиться СТРАДАТЬ.
2. Удары с задержкой. Хоть это и отличительная черта Elden Ring в целом, но в аддоне она проявила себя наиболее ярко. И не только на ласте, да на той же Реллане, на том же льве-танцоре, Мессмере, гниющем рыцаре, короче - на всех значимых противниках.
3. Спам одной и той же атаки. И этой атакой будет мразотнейшее притягивание к себе с огромной дистанцией поражения.
4. Скрытие действий за спец.эффектами. Вот за этот пункт что Мияздаку, что людей, проектировавших данный бой, нужно просто повесить на столбе. Желательно живыми, чтобы они осознали всю глубину своей неправоты. Что тут имеется в виду? Да ровно то, что вы прочитали - за обилием творящегося на экране спецэффектного месива игрок просто не видит, что собирается сделать (а то и совсем хуже - уже делает) противник. Какую атаку он готовит? Сколько ударов? С какой стороны? С каким таймингом? На какой дистанции противник? Ни на один из этих вопросов ответ дать нельзя, потому что экран просто залит вспышками от магии.
5. Комбо: серии атак + радиус поражения + сдвоенные удары. И работает это с конца:
- ты уклоняешься от первого удара, но пока еще находишься в анимации кувырка, тебе прилетает удар второй рукой. Удары таковы, что если тебе прилетело, ты уходишь в стан. А то и в major stun, когда тебя валят с ног.
- радиус поражения таков, что за один кувырок из него не выйти, нужно изначально находиться на отдалении. А если ты в рукопашную ушел - см. выше - страдай. И...
- срабатывает пункт "серия атак". То есть огреб раз - огреби и сейчас. И так по кругу.
6. Сверхагрессия. Времени на лечение, если ты пропустил зуботычину, просто нет.

Вот такой списочек. Обмазать этот пирог просто немерянным дамагом в сторону игрока и мизерным дамагом в сторону босса, и блюдо готово. Кушайте, не обляпайтесь. За исключением пунка 4 каждый из остальных по-отдельности не фатален, но когда они работают все вместе, да еще и под прикрытием того, четвертого... Есть хороший термин - синергия. Ласт Тени древа Эрд - это воплощение синергии.

В сети уже вовсю гуляет видео, как незадачливый игрок за 600 попыток валил ласта в присутствии то ли психолога, то ли психотерапевта. Увязнув в этом бою вынужден признать - я понимаю этого чувака. Очень понимаю. Психолог мне не потребовался (нечего лечить XD), но бой поджег изрядно.

Еще до выхода дополнения на новостных порталах писали нечто подобное: боссы вроде Малении прилагаются. Что ж, они все врали. В Тени древа Эрд нет ни одного противника, который бы хоть попытался сравниться с этой рыжей стервой. А уж по сравнению с ластом Маления - образец честного противника, которого именно что просчитывали и вылизывали до идеального состояния.

Я решительно не могу понять одной вещи. Что за проклятие тяготеет на Элденом в целом? С финальными боссами у Миядзаки не задалось ни в оснвной игре, ни в дополнении. Бой что там, что сям - не выдерживает никакой критики, хотя и по совершенно разным причинам. С другой стороны, если от вида Зверя Элдена хотелось плеваться и мыть глаза, то ласт дополнения поистине эпичен! Но... как и было сказано в самом начале записи - стоит разделять работу художников, и работу проектировщиков. И вот художникам - мой поклон земной.

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

Ну и уже традиционно - могу ли я кому-то порекомендовать ЭТО? Ответ прост:
!!! НИКОМУ И НИКОГДА. У вас нет столько нервов !!!


@музыка: Zayaz - Control the Night

@темы: Этот безумный мир, In-game

13:18

On Fuel...

We rise up for the things we believe in over and over again
Gimme fuel
Gimme fire
Gimme that which I desire!
(c) Metallica

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

- ... Слушай, ты что, экстази хапанул перед рабочим днем? Тебя не остановить!
- Зарплата!



@музыка: Morgan Willis - Into the Night

@темы: Этот веселый мир, Будни живого уголка

We rise up for the things we believe in over and over again

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

Я уже не помню, чем меня взбесил стандартный инструмент под названием ipmitool, но тогда я пришел к выводу, что это совершенно неюзабельная шляпа. И пришлось колхозить связку Powershell + Rest API. Этот подход работал, пока вендор был один. Когда их число начало увеличиваться, начало увеличиваться и количество скриптов, потому что каждый вендор ваяет свою версию OpenBMC, перекраивая форматы запросов и ответов под себя. В итоге текущий подход меня перестал удовлетворять от слова совсем, и я снова пришел к изначальному вопросу - как это автоматизировать. И снова таки вернулся к ipmitool.

В этой итерации в общем и целом все получилось. Алгоритм набросал, осталось только выбрать, на чем его реализовывать. И вариантов, как ни странно, аж целых несколько, и продиктовано их наличие некоторыми вводными.
1. Можем взять... bash. Внезапно, да. В целом это даже полезно, но загвоздка в том, что не всюду есть возможность дотянуться со своей станции управления под никсами. А туда, куда можно дотянуться, сделать это можно только из под виндов. Да, постепенно отмирает и винда, но пока еще живет. И ускорить этот процесс не в моих силах.
2. Можем взять... cmd. Тоже внезапно. Этот курилка есть гарантировано везде, где мне приходится работать.
3. Можем взять... да-да, название записи говорит обо всем - старую добрую "мощную ракушку".

И на этот раз я решил пойти немного более заковыристым путем - реализовать алгоритм смены пароля через ipmitool во всех перечисленных оболочках. Что тут сказать, результаты меня удивили. ОЧЕНЬ удивили.

Начнем с того, что нужный скрипт на баше, который я не перевариваю, был написан где-то минут за 20. Повторю - я ненавижу баш. Ну да ладно, написал, и написал, нужно идти дальше. Берем в руки cmd и блонот, и... мама мия. Я баш не любил, да? Как вам такое, Илоны вы наши Маски:

- блджад. В зависимости от того, где была объявлена переменная, вызывается в скрипте она ТРЕМЯ разными способами... Это ж просто азаза...
- ?
­ если объявлена просто в плоском скрипте:
set var=byaka
echo %var%
byaka
­- Угу.
­- если объявлена в FOR как переменная цикла:
FOR /F "tokens=1" %%I... (
echo I
)
- echo %%I ?
- да, забыл проценты набрать. Если же переменная объявлена внутри FOR:
set c=ipmitool -H %%I...
echo !c!

И да, в этом случае еще и специальную инструкцию не забудь про SETLOCAL EnableDelayedExpansion, про который я, к своему стыду, вообще только сегодня узнал. Твою ж налево, а... Но ладно, с грехом пополам, незнамо сколько кружками зеленого чая (кофемашина сломалась, живо напомнив мне 4-ю книгу цикла Экспансия, кто знает, тот знает) и огромного количества матов в голове и эту реализацию удалось допилить до логического конца.

Осталась ракушка. И черт побери, тут я могу лишь вспомнить слова, подсмотренные в сети, используемые в достаточно пикантной ситуации: Light has failed me. В том плане, что чертова ракушка, служившая мне верой и правдой, столько лет, и дававшая приют и защиту от всякого скриптописательного, разлетелась вдребезги.

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

Иии... это не работает. Переменная с паролем все равно раскрывается черт знает во что. Несмотря на использовании нужных кавычек во время ее определения. Но где тогда идет раскрытие? Да, как оказалось, прямо в строке Invoke-expression и идет, там ведь как раз стоят двойные, и без них никуда.

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

Такой вариант вполне себе прокатывает, но поскольку скриптом буду пользоваться не я один, кто-нибудь определенно забудет про эти экраны. Будет плохо.
Второй вариант - вывести все переменные, которые касаются паролей (а их будет две - старый и новый пароли) из кавычек вообще. Пришлось нагородить примерно такое:

И вот этот вариант уже не требует никакой доработки напильником.

Что ж, в итоге все равно остановился на Powershell-варианте, но реализации на cmd и баше лежат под рукой. На всякий случай.

@музыка: L'Avenue - Sundown

@темы: Этот безумный мир, PowerShell, Scripting