суббота, 23 апреля 2022 г.

ЧЕТЫРЕ СЕКУНДЫ ДЛИНОЮ В ЖИЗНЬ

...День был ясный, сухой и холодный.

Учитель начальной военной подготовки второй средней школы Юрий Лелюков посмотрел в окно и взял со стола одну из учебных гранат.

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

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

До взрыва останется четыре секунды. Тогда бросайте гранату, не мешкая. Итак, я отпускаю рычаг...

- А если задымит? - весело спросил кто-то.

Лелюков улыбнулся. И отпустил рычаг. Раздался хлопок, и пошел дымок.

Вряд ли двадцать шесть девчонок и мальчишек поняли в то первое мгновение, что случилось.
Вряд ли понял, что случилось, в то, самое первое, мгновение и сам Лелюков. Боевая граната - в классе?! Глупость, нелепость, абсурд!

Но он все же был военным человеком. Старшим лейтенантом запаса... Дым пошел. Значит, четыре секунды - и все. Значит, надо спасать детей. Что делать?! Отбросить гранату? Подальше от себя? Куда? В классе двадцать шесть пар ничего еще не понимающих глаз. Граната. Глаза. Снова граната. И снова глаза. И вдруг-окно! Ну, конечно же,- окно! До него было всего лишь полшага. «Ничего, ребята, ничего. Вы только не пугайтесь...»
Внизу, в школьном дворе, гуськом, точно утята, вышагивали на обед шестилетки.

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

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

Говорят, он был хорошим учителем. Говорят, у него не было проблем с дисциплиной в классах. Говорят, классы эти слушали его, разинув рты. И выходил он из этих классов всегда окруженный ребятами. Собирался построить в школе тир. Собирался организовать гандбольную команду. Он много чего собирался сделать к той минуте, когда, взглянув в окно, взял с преподавательского стола одну из учебных гранат и сказал: «Слушайте, смотрите и запоминайте!..»

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

Все. Двадцать шесть человек. Живые.

- Стой, ребята! Как же Юрий Николаевич?!

Трое из них вернулись и в дыму вынесли Лелюкова из класса. Сейчас, Юрий Николаевич, говорили они, сейчас, еще минутку...

К ним бежали учителя. Бежали врачи. Мчались «Скорые»...

Остались без отца восьмилетняя Алеся, годовалый Юрасик, стала вдовой жена Лариса.

Это произошло 29 ноября 1983 года. Ежегодно в этот день ученики тех двух классов приходят в Иваничевскую среднюю школу №2. Заходят в класс, где свой последний урок мужества и человечности провел их любимый учитель и где висит его портрет. Идут на кладбище.

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

* * *

29 ноября 1983 года погиб Юрий Николаевич Лелюков, старший лейтенант запаса, преподаватель начальной военной подготовки школы №2 поселка Иваничи Волынской обл. Военрук закрыл собой приведенную во время урока в действие боевую гранату, оказавшуюся среди полученного из военкомата учебного имущества, и этим спас жизнь двадцати шести ученикам.

После публикации 26 февраля 1985 года в газете “Комсомольская правда” очерка “ЧЕТЫРЕ СЕКУНДЫ ДЛИНОЮ В ЖИЗНЬ” Юрий Лелюков был награжден орденом “Знак почета”, кафедра НВП и физподготовки одного из педагогических институтов добилась присвоения его имени. После его гибели учебные гранаты стали сверлить.

суббота, 18 декабря 2021 г.

УАЗДао, про ремонт

 В УАЗе очень мало что требует замены по износу. Практически любой узел может быть починен – быстро перебран на коленке самым тупым солдатом-срочником в чистом поле под обстрелом при помощи молотка, пассатижей и известной матери. Есть расходники – резинки. Остальное – сталь и чугун, причём всё разбирается, раскручивается, вынимается и отсоединяется.

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

УАЗДао, про дом.

 Я вообще это давно для себя понял. Человек должен жить в доме. В совершенно отдельном, индивидуальном, настоящем доме, а отнюдь не в этих коробках из говна и бетона, в которых мы тут в массе своей обретаемся, и где какая-то похмельная сволочь может одним движением заскорузлой своей длани перекрыть нам нахуй воду. Разве это жизнь, когда ты в абсолютной зависимости от неведомого тебе сантехника с ржавым разводным ключом? И от телефонистов, которые запросто отрежут тебе весь твой интернет под корень, потому что у них «кабеля менять пора»? И от электриков, у которых «ноль отгнил», поэтому по розеткам привольно гуляет межфазовое, от которого с радостными хлопками перегорают дорогостоящие приборы жизнеобеспечения, навроде компьютера? И под эти дымные аплодисменты ты сидишь без воды, света и телефона и понимаешь, что так жить нельзя.

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

Тут главное, что? Чтобы человек сосредоточиться не мог, мыслей всяких себе не думал. И если к сверлильщику ты потихоньку привыкаешь — человек вообще, такая сволочь, ко всему привыкает постепенно, даже к тому, что зубы вибрируют, — то на этот случай придуманы соседи. Только ты ночью разделся, в кровать залез, жену нацелился обнять, или книжку почитать, или просто без затей отойти ко сну, как тут же в дверь начинают стучать и орать: «Клава, блядь, открывай!» Хотя ты вовсе и не Клава и не был Клавой сроду. И пока ты, матерясь, надеваешь штаны и думаешь, чем бы таким поувесистей этого клавоискателя отоварить по еблищу, на площадке уже вопль «Пошёл нахуй, мудило пьяное, не открою!» И ты понимаешь, что это он не в твою дверь стучал, хотя слышно так, будто в твою. И начинается долгий скандал, переходящий в мордобой и полицию, который ты рад бы не слышать — но хуй там, потому что акустика тут так специально придумана, чтоб если не ты к социуму, то уж социум точно к тебе.

Или, если соседи попались некачественные и социальные функции свои исполняют без души — тихо или не каждый день, — то придёт тебе ночью во двор некий чорный человек и начнёт орать нечеловеческим голосом: «Леееха! Лееееха! Леееха!!!». Долго так, протяжно… Помолчит минут пять, чтобы ты расслабился, и взвоет: «Да Лёха же, ебтвюмать! Выдь, попиздеть надо!». И раскроются окна домов, и дружный хор ответит ему: «Да пошёл ты нахуй!», и долго будет эхо носиться по двору, повторяя на разные лады: «нахуй, нахуй, нахуй…», как бы примериваясь к звучанию, пока не взвоет сигналка чьей-то машины и не станет орать, пока аккумулятор не сядет. А аккумуляторы сейчас делают хер знает какой ёмкости, удивительно даже. Как зимой заводить — так заебет своим стартером скрежетать под окном и капотом хлопать и всё равно хуй заведётся, а как сигналка — так всю ночь будет орать, и лишь под утро начнёт подвывать уже редко, задушенно, но особенно жалобно, как бы умирая в тоске и одиночестве, аж жалко её, непутёвую.

А потом общая побудка в шесть утра — соло на мусоровозе, вместо гимна. Вернее, это и есть настоящий гимн России, а не тудум-ту-ту-дудум на слова Михалкова — когда биииип-биииип-бииипп сигнал. Это мусоровоз проехать не может, потому что какой-то мудак запарковал свою «девятку» поперёк проезда. Потом выходит мрачный с похмелья водила и орёт зычным голосом на весь тихий утренний двор: «Какое ебаное чмо тут свою телегу поставило? Быро убрал нахуй!». А потом пинки по колесу, и сигналка вау-вау-вау-вау минут десять, пока не прозвучит короткое бип-бип — вышел, значит, владелец, дай ему бог альтернативного счастья во весь анус. И гулко разносится по двору содержательный диалог: «Какого…» — «Да сам ты…» — «Да сам пошёл!» — «Да я тебя…» — «…а монтировкой?» Потом «девятка», наконец, уезжает, провожаемая обещаниями в следующий раз «вывалить весь этот ебаный мусор тебе на капот!», и аудиоспектакль переходит к финальному действию — взыыыы — бемц — взыыыы — бумбумбум — хуяк! Это раздражённый водитель мусоровоза ебошит со всей дури контейнерами об асфальт, представляя на их месте эту сраную девятку или голову её водителя…

вторник, 7 декабря 2021 г.

Convert DOS line endings to Linux line endings in Vim

 :set ff=unix

move back with 

:set ff=dos

пятница, 17 сентября 2021 г.

Remote reboot with Magic Sys Rq

Остановить останавливаемое, далее от root

# echo s > /proc/sysrq-trigger

# echo u > /proc/sysrq-trigger

# echo s > /proc/sysrq-trigger

# echo b > /proc/sysrq-trigger


где

s - sync

u - mount ro

b - immediate boot

(o - poweroff)


Magic SysRq key

пятница, 27 августа 2021 г.

Mail (MX) Server Survey


Exim приятно удивил.

http://www.securityspace.com/s_survey/data/man.202106/mxsurvey.html 


Server TypeNumber of ServersPercent
Exim293,10461.58%
Postfix150,05631.53%
Sendmail16,8693.54%
MailEnable9,5612.01%
MDaemon2,3370.49%

понедельник, 23 августа 2021 г.

Postgresql storage alignment

 

https://www.postgresql.org/docs/current/catalog-pg-type.html


typalign char

typalign is the alignment required when storing a value of this type. It applies to storage on disk as well as most representations of the value inside PostgreSQL. When multiple values are stored consecutively, such as in the representation of a complete row on disk, padding is inserted before a datum of this type so that it begins on the specified boundary. The alignment reference is the beginning of the first datum in the sequence. Possible values are:

  • c = char alignment, i.e., no alignment needed.

  • s = short alignment (2 bytes on most machines).

  • i = int alignment (4 bytes on most machines).

  • d = double alignment (8 bytes on many machines, but by no means all).

typstorage char

typstorage tells for varlena types (those with typlen = -1) if the type is prepared for toasting and what the default strategy for attributes of this type should be. Possible values are:

  • p (plain): Values must always be stored plain (non-varlena types always use this value).

  • e (external): Values can be stored in a secondary “TOAST” relation (if relation has one, see pg_class.reltoastrelid).

  • m (main): Values can be compressed and stored inline.

  • x (extended): Values can be compressed and/or moved to a secondary relation.

x is the usual choice for toast-able types. Note that m values can also be moved out to secondary storage, but only as a last resort (e and x values are moved first).




CREATE TABLE t (
    e int2    -- 6 bytes of padding after int2
  , a int8
  , f int2    -- 6 bytes of padding after int2
  , b int8
  , g int2    -- 6 bytes of padding after int2
  , c int8
  , h int2    -- 6 bytes of padding after int2
  , d int8)


To save 24 bytes per row, use instead:

CREATE TABLE t (
    a int8
  , b int8
  , c int8
  , d int8
  , e int2
  , f int2
  , g int2
  , h int2)   -- 4 int2 occupy 8 byte (MAXALIGN), no padding at the end

As a rule of thumb, if you put 8-byte columns first, then 4-bytes, 2-bytes and 1-byte columns last you can't go wrong.

четверг, 28 марта 2019 г.

Еврофига


Роскошный боянчег.
https://amfora.livejournal.com/130436.html

------
Главная проблема украинской экономики - это еврофига.

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

Первым в эту дверцу ломанулся Ющенко.

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


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

Янукович открывал дверцу с надеждой и опаской.

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

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

Порошенко открывал дверцу с видом победителя.

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

За дверцей победителя ждала та же самая еврофига.

------

четверг, 21 марта 2019 г.

Online PV migrate (linux)


1.  rescan-scsi-bus.sh -l -w -c -r --color
2.  multipath -ll

360060160ec111f009427dc9efd49e911 dm-4 DGC     ,RAID 5
size=11T features='1 queue_if_no_path' hwhandler='1 emc' wp=rw 
|-+- policy='service-time 0' prio=4 status=active                                                                                                                                             
| |- 3:0:1:1 sdn 8:208 active ready running                                                                                                                                                   
| `- 4:0:1:1 sdp 8:240 active ready running                                                                                                                                                   
`-+- policy='service-time 0' prio=1 status=enabled                                                                                                                                            
  |- 3:0:2:1 sdo 8:224 active ready running                                                                                                                                                   
  `- 4:0:2:1 sdq 65:0  active ready running                                                                                                                                                   
36006016050221e005e32f3dca0e7e711 dm-1 DGC     ,RAID 5
size=5.4T features='1 queue_if_no_path' hwhandler='1 emc' wp=rw                                                    
|-+- policy='service-time 0' prio=4 status=active
| |- 3:0:3:1 sdg 8:96  active ready running
| `- 4:0:3:1 sdm 8:192 active ready running
`-+- policy='service-time 0' prio=1 status=enabled
  |- 3:0:0:1 sdc 8:32  active ready running
  `- 4:0:0:1 sdi 8:128 active ready running



3.  pvcreate /dev/mapper/360060160ec111f009427dc9efd49e911
4.  vgextend CX3_40A /dev/mapper/360060160ec111f009427dc9efd49e911
5.  pvmove -b /dev/mapper/36006016050221e00d42fe01ba7b5e711 /dev/mapper/360060160ec111f009427dc9efd49e911

6. мониторить миграцию командой:  lvs -a -o+devices
  LV        VG      Attr      LSize  Pool Origin Data%  Move                                          Log Copy%  Convert Devices                                                                                          
  nbu_vol1  CX3_40A -wI-ao--- 14.29t                                                                                     /dev/mapper/360060160ec111f00e8a503161c47e911(0)                                                 
  nbu_vol1  CX3_40A -wI-ao--- 14.29t                                                                                     pvmove0(0)                                                                                       
  [pvmove0] CX3_40A p-C-aom--  5.37t                    /dev/mapper/360060160ec111f00e8a503161c47e911      76.25         /dev/mapper/36006016050221e005e32f3dca0e7e711(0),/dev/mapper/360060160ec111f009427dc9efd49e911(0)


7. vgreduce CX3_40A /dev/mapper/36006016050221e00d42fe01ba7b5e711
8. pvremove /dev/mapper/36006016050221e005e32f3dca0e7e711


PS
move LV to another PV

1.  lvresize -size 50G --resizefs /dev/mapper/CX3_40A-U0LV

2.  pvmove -n /dev/mapper/CX3_40A-U0LV /dev/mapper/36006016050221e01d42fe01ba7b5e711 /dev/mapper/360060160ec111e009427dc9efd49e911

понедельник, 10 декабря 2018 г.

backups


Страшилка++

Тощая Смерть в чёрном балахоне и с косой на плече достала из кармана бумажку, ещё раз сверилась с адресом и костяным пальцем нажала кнопку звонка. Глазок был предусмотрительно заклеен бумажкой (первое правило из руководства Смерти - не раскрывать инкогнито слишком рано).
— Кто там? - спросил женский голос из за двери.
— Горгаз, проверка счетчиков.
— А мы не вызывали!
— У нас жалобы на утечку, проверяем все возможные источники. По всему подъезду газом пахнет.
— Да, конечно, проверьте, - изнутри защелкали открываемыми замками.
Женщина распахнула дверь, увидела гостью, побледнела и попыталась закрыть дверь обратно. Но Смерть уже сделала шаг вперед.
— Сюрприз!
— Нет, нет! Пожалуйста!
— Это Лесная, двадцать восемь, корпус три, строение один, квартира пятнадцать? - Смерть оттарабанила вопрос, подглядывая в бумажку.
— Нет! Это не тут. Это квартира двадцать, и дом не двадцать восемь, и улица не Лесная, а Горная и…
Смерть погрозила пальцем.
— Не хорошо врать. Это плохо сказывается на загробной жизни. Ну, и неуважение ко мне - я же не совсем дура, чтобы улицы перепутать.
Женщина стала ещё бледней, заставив устыдиться в белизне побелку на стене за спиной.
— Ну, приступим?
— А… может чаю?
— А можно, - костлявая гостья лукаво подмигнула зелёным огоньком в глазнице.
Они долго пили чай с баранками на кухне. Хозяйка всё подливала и подливала кипяток. А Смерть только ухмылялась и просила дать еще мёда, печенья, сгущёнки...
— Всё, пора. Пойдём.
Женщина понуро побрела за Костлявой. Но та, против ожидания, направилась не к выходу, а в соседнюю комнату. Осмотрелась и подошла к столу.
— Ну, вот и пришёл твой срок, дружок.
Костяные пальцы погладили клавиатуру включённого ноутбука.
— Что? - хозяйка квартиры непонимающе захлопала глазами.
А Смерть взмахнула косой и со всей силой рубанула по несчастному компьютеру.
Вспышка! Искры! Облачко дыма поднимается к потолку.
— Отжил своё бедняга, - Смерть протёрла тряпочкой лезвие косы, - не бери больше этих китайцев, очень недолговечные.
— Но, как же, как так? Там у меня фоточки, письма… - женщина, держась за сердце, прислонилась к стене.
— Регулярное резервное копирование - вот гарантия стабильности в жизни, - Смерть похлопала хозяйку по плечу. - Ну, бывай.
Напевая что-то романтичное, Смерть вышла из квартиры и вприпрыжку спустилась по лестнице.
На выходе из подъезда Костлявая остановилась и принялась читать рекламный листок, приклеенный рядом с дверью. “Компьютерный мастер. Дешевые цены. Живу рядом, приду быстро. Ремонт и лечение вирусов.”
В гневе Смерть сорвала бумажку и долго топтала костяной пяткой.
— Ненавижу некромантов! - стукнув косой об пол, выкрикнула Костлявая. - Вот всех бы вас да на костёр, еретики! Тьфу!
И, хлопнув дверью, выскочила из подъезда.