Хаогностический антирашистский ритуал на предстоящее Солнцестояние

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

Для ритуала надо:
1. Картонка, либо небольшой кусок ДСП
2. Древко (как для плакатов на демонстрации), опционально.
3. Георгиевские ленточки, две штуки, но тогда придется загибать, либо 6 штук, тогда все будет просто и удобно.
4. Гвозди сапожные, либо другие мелкие.
5. Жид. для розжига, или иная горючая жидкость.

Подготовка

Аккуратненько выкладываем на листе ДСП/картонке свастон из георгиевских ленточек. Если ленточек всего две, тогда загните края, чтобы в результате получилась свастика.

Приколачиваем все это, чтоб не распалось в вертикальном положении, мелкими гвоздями. Опционально, приколачиваем древко.

Ритуал

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

Обливаем конструкцию жидкостью для розжига (бензином, керосином, жидкостью из магазина и т.д.), читая заклинание:

Поливаю, призываю, настраиваю!
Как сгорела в огне шин государственная власть
Так пусть же она и сгорит здесь и сейчас
В моей стране!
Нечего делать оккупантам
В моей земле!
Поливаю, призываю, настаиваю!
Такова будет Воля моя,
Желание мое,
И Сила моя, в Пустоту обратить их!
Такова моя Воля, да будет так, я так хочу! Слава Хаосу!

Далее поджигаем конструкцию. Пока горит, читаем заклинание:

Гори, гори ясно
Чтобы не погасло
Как новый год близится
Как колорады горели
Так и эти ленточки горят
Так исполнится Желание мое
Сбудется Воля моя
Проснется Сила моя!
Такова моя Воля, да будет так, я так хочу! Слава Хаосу!

Неверный IMEI после прошивки Philips Xenium v 377 и его восстановление.

Принесли означенный телефон, выдающий ошибку «Неверный IMEI» и не видящий ни одной сим-карты. По *#06# также выдается сообщение о неверных IMEI. Восстановил через инженерное меню, по инструкции. Делаю заметку на случай, если вдруг еще понадобится, а оригинал инструкции сгинет.

Сначала надо попасть в инженерное меню:

*#*#3646633#*#*

Далее переходим на вкладку Connectivity и выбираем пункт CDS Information

Далее переходим в пункт Radio Information

Далее выбрать Phone (там их будет два, для первой сим-карты и второй)

Для Phone 1 надо ввести команду AT+[ПРОБЕЛ]EGMR=1,7,”ваш имей”
Нажать кнопочку SEND AT COMMAND

Вместо «ваш имей», таки да, IMEI. Они под крышкой на наклейке, приклеенной на металл корпуса.
Если забыть пробел, то чуда может не получиться, произойдет ошибка This command is not allowed in UserBuild

Перезагружаем устройство, проверяем наличие IMEI #1 по *#06#, повторяем операцию для второго слота, с той только разницей, что выбираем Phone 2 и вводим другую команду: AT+[ПРОБЕЛ]EGMR=1,10,”ваш имей”

Оригинал инструкции
Картинки утащены оттуда же, надеюсь, автор не обидится.

Установка Windows 7 с жесткого диска

Бредистория

Или сраный интеловский чипсет. В общем, вызвали меня на заказ, поставили задачу — десятку убить, семерку вкрутить. Беру верную флешку с YUMI, на которой есть образ Acronis Disk Durector, всякого рода винды и линуксы, нужные для эникейной работы, и начинаю.

Снес я Windows 10, убил б-гмерзкое GPT, переделил диск, вставляю флешку с установщиком Win 7, но не выходит каменный цветок, посылает меня установщик Windows 7 за Cdrom drivers, иначе говоря, Windows 7 просит драйверы CD-ROM.

Непорядок, подумал я, ибо CD-ROM даже в проекте не было. Легкое гугление дало ответ, Windows 7 не поддерживает USB 3.0 искаробки. Гейц с ним, включаю в BIOS режим совместимости USB. Линуксы и флешку и hdd видят, акронис тоже, а вот инсталлятор Windows 7 — хрен.

В общем думал я, думал, и таки нашел способ поставить Win7 с жесткого диска, хотя кучу времени зря потратил на добавление драйверов USB, различную греблю с перетыканием флешек и прочей фигней, есть же способ гораздо проще…

Что надо

1. Две флешки. На одну кладем любимую «форматилку», он же менеджер дисков и Hiren’s Boot CD. Вообще весь HBCD нам тут нахрен не нужен, можно обойтись вырезкой из сабжа.
2. Чуть не забыл, нужен еще какой-нибудь легковесный Linux. Я в конкретном случае использовал Puppy Linux.
3. Флешка 2, на которой или образ установочного диска Win7, или уже подготовленный для загрузки с флешки установщик. В моем случае, был вариант 2, заранее подготовленный с помощью rufus
4. Достаточное дисковое пространство. В моем распоряжении был аж терабайтный винт, хотя описываемый ход котом можно повторить даже на 50-гигабайтном IDE-HDD, буде он в такой конфигурации железа окажется.

Что делаем

1. Делаем разделы диска, как нам угодно. Например, я сделал логический диск D: для файлов пользователя, на 700 Гб, в конце диска, и оставил область в 300 Гб в начале неразмеченной. Установщик Win 7 сам ее потом разметит, положит файлы ОС на будущий диск C: и создаст свой загрузчик на отдельном разделе 'Зарезервировано системой', размером 100 Мб

2. Делаем с помощью любимого менеджера дисков, логический раздел для установщика Windows 7, размер варьируется, от 5 до 8 Гб, но лучше сделать 8. Формат (файловая система) раздела NTFS или FAT32, последнее предпочтительнее.

3. Загружаемся в Linux, и если вы последовали совету использовать Puppy, то все будет «какввенде» — рабочий стол, ряд дисков ниже, флешка с виндой с иконкой флешки. Жаль, не могу заснять видео, машину уже унесли

4. Копируем файлы с флешки с установщиком Windows на созданный раздел. Файлы скопировать просто: открываем флешку, кликая по ней 1 раз, открываем нужный диск (аналогично), переключаемся в окно с открытой флешкой, нажимаем CTRL+A, выделяя все в окне, и мышкой перетаскиваем в соседнее окно, где открт нужный раздел

5. Осталось перезагрузиться с загрузочной флешки, и выбрать пункт меню Boot From Hard Drive (Windows Vista/7/2008 or Xp), если вы грузитесь через PXE или с установленного на YUMI HBCD, или последовательно выбрать Boot Windows (XP/2003/2008/Vista/7) From Local HDD а только потом Boot From Hard Drive (Windows Vista/7/2008 or Xp)

Если все сделано верно, то Grub4DOS найдет bootmgr, а тот запустит установщик Windows 7.

Останется установщику указать неразмеченную область диска для установки.

Потом раздел с установщиком можно снести и объединить его с диском C: или D:.

Как-то так, прошу прощения, что без скриншотов и видео, пациента уже выписали.

Утилита для PXE или загрузочной флешки, запускающая Windows с локального жесткого диска.

А нахрена он нам?

Спросит вдумчивый читатель. И будет прав.

Отвечу на это:
1. Да чтобы запустить локальную Windows, если, например, слетел к чертям собачьим MBR, оригинального диска с виндой под руками нет, а зайти смерть, как надо, и именно в локальную винду.
2. Чтобы запустить установку Windows 7 (а может быть и 8, а может быть и 10, а может быть ворона, я не проверял) с локального жесткого диска. А вот зачем это — расскажу позднее.

Как сделано

1. Использован образ DOS, взятый отсюда
2. Подправлен AUTOEXEC.BAT
3. Добавлен Grub4DOS, причем особо не заморачиваясь, утащен с мультизагрузочной флешки, созданной YUMI
4. Подправлен menu.lst также нагло спертый из Hiren’s boot CD
5. Создана ISO-версия этого безобразия, по вот этому рецепту

Скачать

Готовый образ
Готовый образ, сжатый gzip
ISO-образ

Примечание

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

Анализ древней дискеты AVP Z.E.S Linux. Скрипты на закуску.

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

Разборка оригинального bootdisk.img и подключение ramdisk’а

#!/bin/bash

RDMP="/mnt/ramzes"
LDRKRNLPATH="./ldrkrnl/"
LDRKRNLNAME="ldrkrnl.img"

echo "Making dirs"
mkdir $RDPATH
mkdir $RDMP
mkdir $LDRKRNLPATH

echo "Extracting RAMDISK..."
dd bs=1 if=$IMGPATH of=$RDPATH$RDGZNAME skip=464896

echo "Extracting loader and kernel"
dd bs=1 if=$IMGPATH of=$LDRKRNLPATH$LDRKRNLNAME count=464896

echo "Unpacking RAMDISK..."
cd $RDPATH
gzip -d $RDGZNAME
cd ..

echo "Mount RAMDISK"
mount -o loop $RDPATH$RDNAME $RDMP

Удаление AVP

#!/bin/bash

RDMP="/mnt/ramzes"

echo "Remove AVP"

cd $RDMP

cd root/.AVP
rm *
cd ..
rmdir .AVP
rm $RDMP"/usr/bin/AVPLinux"

cd $RDMP
cd opt
cd AVP
rm *
cd ..
rmdir AVP

cd $RDMP

Сборка модифицированного bootdisk.img

#!/bin/bash

IMGPATH="./mbootdisk.img"
RDPATH="./ramdisk/"
LDRKRNL="./ldrkrnl/ldrkrnl.img"
RDNAME="ramdisk"
RDMP="/mnt/ramzes"

echo "Umount RAMDISK"
umount $RDMP

echo "Packing RAMDISK"
cd $RDPATH
gzip -9 $RDNAME
cd ..

echo "Make bootdisk"
cat $LDRKRNL $RDPATH$RDNAME".gz" >$IMGPATH
echo "Complete!"

Ссылки и файлы

Разборка оригинального диска на PasteBin
Удаление AVP из образа на PasteBin
Сборка модифицированного образа на PasteBin
Архив со скриптами
Часть I
Часть II
Все статьи (PDF, ZIP)

Препарирование AVP Z.E.S Linux Глава 2

Надо ж выдумать такое, во дурак!

Я, почему-то, не принял во внимание ясные надписи серым по черному, и попытался распаковать полученный ramdisk, думая, будто бы это стандартный initrd. А почему? Да потому что внимательнее мануалы читать надо, и гуглить лучше, если сам чего-то не знаешь.

Ramdisk, Ramdisk, only Ramdisk.

Оказывается, при создании дискеты была применена более старая технология создания диска в оперативной памяти
Полученный на прошлом этапе ramdisk.gz оказался действительно виртуальным диском в оперативной памяти, сжатым gzip’ом
Правда, при распаковке в Линуксе, gzip выдал предупреждение:
Пытаемся распаковать ранее вырезанный ramdisk.gz:

gzip -d ramdisk.gz
gzip: ramdisk.gz: decompression OK, trailing garbage ignored

Так, какой-то «мусор» после конца архива был игнорирован при распаковке. Как позже выяснится, фактически он ни на что не влияет, и на предупреждение gzip’а можно забить.

В конце образа дописано некоторое количество байт F6 (Ў) и нечто похожее на контрольную сумму и цифровую подпись.

Хотя, для чистоты эксперимента, ничто не мешает получить «чистый» архив, размером 876114 байт:
dd bs=1 count=876114 if=ramdisk.gz of=ramdiskcln.gz
И «мусорный» хвост (остаток размером 133614 байт).
dd bs=1 skip=876114 if=ramdisk.gz of=endimg

Пробую распаковать ramdiskcln.gz — никаких предупреждений, распаковка успешна:

Доступ к ramdisk’у и его модификация

Сначала создается точка монтирования:
mkdir /mnt/ramzes

Теперь монтирование распакованного образа:
mount -o loop ramdiskcln /mnt/ramzes


Доступ у ФС ramdisk’а получен

Все успешно примонтировалось, видно структуру каталогов оригинального ramdisk’а AVP Z.E.S Linux. Места, правда, маловато. Всего 3 с хвостиком Мб, а осталось свободными вообще 806 К. Но все равно, кое-что можно сделать, например, для первого раза:
— выкинуть сам AVP (директория AVP в opt, скрипт avp.run из sbin, ссылку usr/bin/AVPLinux и директорию .AVP из root)
— подправить скрипт etc/rc.d/rc.sysinit, чтоб выкинуть команды вызова AVP

Сборка модифицированного образа AVP Z.E.S Linux

1. Отмонтируем ramdisk:
umount /mnt/ramzes

2. Запакуем образ ramdisk’а:
gzip -9 ramdiskcln

3. Соберем образ диска обратно. От предыдущих экспериментов должен остаться файл ldrkrnl.img, содержащий начальный загрузчик и ядро Z.E.S. Его нужно скопировать в директорию с измененным и запакованным ramdisk’ом, и просто слить в новый образ с помощью cat:
ldrkrnl.img ramdiskcln.gz >mbootdisk.img

Но мы прошли туман!

И все-таки попытку модификации исходного образа удалось завершить, хотя бы для демонстрации того, что «а так можно было?»
Например, в образ добавлен минималистичный текстовый редактор qed, написанный на Free Pascal:

Или даже мощный консольный редактор, переделанный из примера, поставляющегося с Free Pascal:

Фейлы

Размер ramdisk’а сильно ограничен, поэтому некоторый софт, даже статически скомпилированный, туда не влез. Либо нарушалась идея «чтоб влезло на одну дискету».
-Постоянные проблемы с shared-библиотеками даже у того, что влезло. Так понимаю, что какие-то библиотеки устарели настолько, что новое не запускается, а старое, если заменить библиотеки — не работает. Или я что-то неправильно делал.

Итог

Поигрались и хватит, все равно для практического применения этот дистрибьютив не совсем подходит. Но есть и плюсы — классно поковырялся, в процессе узнал новое, в общем, удовольствие получено. Осталось даже несколько идей на будущее, например, очень понравился Free Pascal и некоторые возможности Linux, реализуемые им без геморроя, которым страдает программер на C/C++.

Источники и файлы

Начало
Использование ramdisk в Linux (ramdisk, ramfs, tmpfs)
или препарирование рамдисков

How to Create/Modify an RAM disk Image (на английском), PDF, скачать
Оригинальный образ bootdisk.img