Profile cover photo
Profile photo
Сергей Величко
42 followers
42 followers
About
Communities and Collections
View all
Posts

Post has attachment
Подъём лодок. Для нас навигация закончилась :(

С нетерпением ждём следующего сезона, а пока надо готовить лодку.
PhotoPhotoPhotoPhotoPhoto
2015.09.08 Подъем лодок
16 Photos - View album
Add a comment...

Post has attachment
Регата в день города Сенгилея "Спасы земли Сенгилеевской"
PhotoPhotoPhotoPhotoPhoto
2015.08.21-23 Регата "Спасы земли Сенгилеевской"
61 Photos - View album
Add a comment...

Post has attachment
Ходил в регату "Огни Венца" (17.07.2015-19.07.2015) на яхте "Кондор".
Add a comment...

Post has attachment
PhotoPhotoPhotoPhotoPhoto
2015.01.28 Концерт группы "Брандмейстер" в "Records Music Pub"
12 Photos - View album
Add a comment...

Post has attachment
В первый раз ходил в регату, впечатлений хоть отбавляй. Ни одно фото и видео не передаст всего: свежий ветер, брызги вод, команды капитана, гик, грот, стаксель, спинакер....
PhotoPhotoPhotoPhotoPhoto
2014.09.06 Регата на Волге
67 Photos - View album
Add a comment...

Post has attachment
Собираем Windows Preinstall Environment(WinPE)
В сети много сборок WinPE с разным набором инструментов, но они как правило не полностью удовлетворяют потребностям по разным причинам, к тому же лицензионная чистота таких сборок под большим сомнением.
Сборкой собственной системы, для своих нужд, я уже занимаюсь более 5 лет, ранее мне нужна была система способная загружаться максимально быстро, да ещё и на машинах с доступным объёмом памяти в 224MB и содержать в себе некоторые специфичные приложения (требования и сейчас актуальные, есть ещё машины с планками в 256MB, но к счастью, они уходят в забвение). Когда-то пробовал использовать разные готовые сборки, но поиск необходимой системы не принёс успеха, поэтому я вооружившись интернетом решил собрать WinPE под свои потребности.
Недавно освежил знания и собирал очередную версию, обновил некоторые приложения, заодно решил поделится с остальными информацией и инструментами для сборки.

Подготовка
Для сборки Windows Preinstall Environment нам понадобится Windows Automated Installation Kit (AIK) (набор инструментов для автоматизации развёртывания Windows). Скачиваем его с официального сайта Microsoft (http://www.microsoft.com/ru-ru/download/details.aspx?id=5753). Распаковываем скачанный iso образ в любой каталог при помощи 7-zip. Запускаем StartCD.exe и устанавливаем инструмент в каталог по умолчанию.
После установки, в каталоге "%ProgramFiles%\Windows AIK\Tools\PETools\" будет находиться каркас для сборки, в каталоге "%ProgramFiles%\Windows AIK\Tools\" необходимые инструменты для работы с образами "wim", а в каталоге "%ProgramFiles%\Windows AIK\Docs\CHMs\" подробная документация (с которой рекомендую ознакомиться).
Далее создаём в любом месте каталог, например "D:\Work\winpe", в котором будем работать с нашим образом и создавать CMD скрипты для удобства.

Копирование WinPE в рабочий каталог
Для начала нам необходимо скопировать рабочие файлы в наш каталог. Для этого в AIK имеется специальный скрипт, который в качестве первого параметра принимает платформу под которую будем собирать (amd64, ia64, x86), вторым параметром - каталог, в который необходимо скопировать файлы. Для упрощения процесса, в нашей рабочей папке создадим cmd файл следующего содержания:
---01-CopyPE.cmd---
@ECHO OFF
"%ProgramFiles%\Windows AIK\Tools\PETools\copype.cmd" x86 "PE"
------
Данный скрипт создаст каталог "PE" в нашей рабочей папке и скопирует необходимые файлы в него. Структура данной папки будет вида:
- PE\ISO - Каталог с файлами для сборки в iso образ,
- PE\mount - Каталог для монтирования образа wim,
- PE\etfsboot.com - Загрузчик для iso образа,
- PE\winpe.iso - Iso образ,
- PE\winpe.wim - Wim образ,

Монтирование образа wim
Для того, что бы внести изменения в образ wim, который и содержит систему для загрузки, нам необходимо его подключить (смонтировать) в любой каталог. Для работы с wim файлами имеется утилита DISM, она принимает много параметров, с ними можете ознакомится в документации, я приведу только то, что нам может понадобиться.
Для автоматизации монтирования напишем скрипт:
---02-Mount.cmd---
@ECHO OFF
Dism /Mount-Wim /WimFile:PE\winpe.wim /index:1 /MountDir:PE\mount
PAUSE
------
Где,
- PE\winpe.wim - образ с которым будем работать,
- PE\mount - каталог в который будем монтировать образ
После монтирования в каталоге "PE\mount" будут папки и файлы загрузочного диска, с которыми мы можем работать любым удобным файловым менеджером.
ВНИМАНИЕ: DISM необходимо запускать с правами администратора!

Сохранение изменений
В процессе работы нам понадобится сохранять изменения произведённые в каталоге "PE\mount" в образ wim. Напишем скрипт и будем использовать его по мере необходимости:
---03-Commit.cmd---
@ECHO OFF
Dism /Commit-Wim /MountDir:PE\mount
PAUSE
------

Добавление драйверов
Нам может понадобится добавить в WinPE драйвера, например для сетевой карты или SATA контроллера. Напишем скрипт, который добавит драйвера в смонтированный образ wim:
---03-AddDriver.cmd---
@ECHO OFF
Dism /image:PE\mount /Add-Driver /driver:drivers\driver.inf
PAUSE
------
Где,
- drivers\driver.inf - путь к inf файлу драйвера, или каталогу с нужными драйверами, если необходимо добавить все драйвера из каталога.

Создание ISO образа
После того, как мы внесли изменения и сохранили их в wim файл, необходимо скопировать полученный образ "PE\winpe.wim" в "PE\ISO\sources\boot.wim", но на этом этапе возникла небольшая неприятность: в процессе работы над образом wim его размер непрерывно возрастает, т.к. утилита DISM по сути не изменяет файлы и каталоги в образе, а дописывает информацию о том, что мы изменили. Выход из этой ситуации (который я нашёл), использовать IMAGEX для экспорта образа. Вторая неприятность, с которой я столкнулся - загрузчик в iso упорно ищет "BOOTMGR", вместо "bootmgr". Пишем скрипт, который избавит нас от этих "болячек" и создаст образ диска:
---04-CreateIso.cmd---
@ECHO OFF
DEL /F /Q "PE\ISO\sources\boot.wim"
"%ProgramFiles%\Windows AIK\Tools\x86\imagex.exe" /export "PE\winpe.wim" 1 "PE\ISO\sources\boot.wim"
RENAME "PE\ISO\bootmgr" "BOOTMGR"
"%ProgramFiles%\Windows AIK\Tools\x86\oscdimg.exe" -n -d -b"PE\etfsboot.com" "PE\ISO" "PE\winpe.iso"
PAUSE
------
Где,
- PE\winpe.wim - рабочий образ,
- PE\ISO\sources\boot.wim - образ без лишней информации для включения в iso,
- PE\etfsboot.com - загрузчик для образа iso,
- PE\ISO - каталог, который необходимо упаковать в iso образ,
- PE\winpe.iso - итоговый iso образ.

Размонтирование образа
По окончании работы с wim файлом, его необходимо отключить (размонтировать). Напишем 2 скрипта, которые будут отмонтировать образ:
Размонтирование с сохранением изменений:
---04-Unmount-Commit.cmd---
@ECHO OFF
Dism /Unmount-Wim /MountDir:PE\mount /Commit
pause
------
Размонтирование без сохранения изменений:
---04-Unmount-Discard.cmd---
@ECHO OFF
Dism /Unmount-Wim /MountDir:PE\mount /Discard
pause
------

Тестирование
Проверить созданный образ WinPE, можно несколькими способами:
1. Записать на диск и загрузить свой ПК с него, но этот способ не совсем хороший, дисков нужно много ;).
2. Изготовить загрузочную флешку и грузиться с неё (https://plus.google.com/100354596699910230679/posts/54EG4tcJV4A).
3. Скачать и установить VirtualBox (https://www.virtualbox.org), создать в нём виртуальную машину, подключить наш образ и тестировать, наиболее предпочтительный способ.

Пользовательская оболочка
По умолчанию в WinPE в качестве оболочки используется коммандная строка, что не совсем удобно. Но есть способ указать любое приложение для запуска. Для этого необходимо:
1. Смонтировать образ wim.
2. Скопировать в папку куда смонтировали образ нужную нам программу, например в "<точка монтирования>\Program Files\".
3. Прописать программу в "<точка монтирования>\Windows\System32\winpeshl.ini".
---winpeshl.ini---
[LaunchApp]
AppPath = %PROGRAMFILES%\<путь к исполняемому файлу>
------
3. Сохранить изменения в образ wim.

В своей системе я использую оболочку bbLean (http://bb4win.sourceforge.net/bblean/), кушает мало памяти, удобная в настройке. Качаем, распаковываем, настраиваем, удаляем лишнее, и интегрирууем в WinPE.

Полезные утилиты
Ссылки и описание на полезные утилиты для включения в образ WinPE.
- PE Network Manager (http://holger.winbuilder.net/) - Утилита настройки сети.
- Registry Editor PE (http://regeditpe.sourceforge.net/) - Утилита для редактирования реестра установленной системы.
- Far Manager (http://www.farmanager.com/) - Файловый менеджер.
- HDDScan (http://www.ihdd.ru/hddscan) - Утилита для проверки диска на BAD блоки.

Стандартные утилиты
Утилиты и программы уже присутствующие в WinPE по умолчанию.
- Диспетчер задач (%windir%\system32\taskmgr.exe).
- Редактор реестра (%windir%\regedit.exe).
- Блокнот (%windir%\system32\notepad.exe).
- Консоль (%windir%\system32\cmd.exe).
- Утилита настройки WinPE (%windir%\system32\wpeutil.exe), подробности по ключам запуска можно прочитать в документации AIK. Приведу основные: инициализировать сеть (wpeutil.exe InitializeNetwork), отключить брандмауэр (wpeutil.exe DisableFirewall), включить брандмауэр (wpeutil.exe EnableFirewall), перезагрузить ПК (wpeutil.exe Reboot), выключить ПК (wpeutil.exe Shutdown), подключить файл подкачки (wpeutil.exe CreatePageFile /path=<путь к файлу подкачки> /size=<размер>). Для удобного подключения файла подкачки можно создать скрипт и разместить его в образе wim:
---pagefile.cmd---
@echo off
SET /P DRIVE=Введите букву диска где расположить файл подкачки:
SET /P SIZE=Введите размер файла подкачки (MB):

DEL /F /Q %DRIVE%:\pagefile.sys
"%windir%\system32\wpeutil.exe" CreatePageFile /path=%DRIVE%:\pagefile.sys /size=%SIZE%M

pause
------

Заключение
Надеюсь данная информация будет полезна админам для создания своего удобного инструмента для повседневной работы.
Для тех, кому лень писать скрипты и подчищать bbLean от лишнего - https://bitbucket.org/snvelichko/winpe
Photo

Изготавливаем универсальную мультизагрузочную флешку
В сети полно статей по изготовлению загрузочных флешек с применением разного рода утилит, но такие утилиты не универсальны, а в статьях не описываются сами принципы загрузки.
Мне, системному администратору, по роду занятия часто требуется большое количество загрузочных инструментов: дистрибутивов операционных систем, утилит, Live систем, но содержать для этого большое количество флешек не эффективно, поэтому для этих целей я использую USB-HDD с двумя разделами (загрузочный раздел и раздел с данными) и собираю нужное мне самостоятельно.
Здесь я опишу как создать универсальное загрузочное устройство на USB-Flash, SD/MMC, USB-HDD, HDD, опишу на простом техническом языке принцип и инструменты для создания любых по составу загрузочных устройств, попробую понятно и без лишних технических подробностей описать этапы загрузки на примере создания мультизагрузочного устройства с использованием GRUB4DOS на разделе NTFS.
Этапы загрузки
В общем случае (достаточном для создания своей мультизагрузочной системы) в BIOS системах загрузка происходить в 3-5 этапов:
1. Инициализация BIOS.
2. Выполнение кода из MBR.
3. Выполнение кода из загрузочного сектора раздела.
4. Передача управления загрузчику ОС.
5. Загрузка ядра ОС, инициализация драйверов, инициализация пользовательского окружения.
Далее рассмотрим каждый этап отдельно в минимально необходимом контексте, для более полного понимания рекомендую ознакомиться с непонятными терминами в вики и на просторах интернета.
1. Инициализация BIOS
При включении ПК управление переходит коду BIOS, который загружает код расположенный в MBR.
2. Выполнение кода из MBR
MBR (Master Boot Record) - самый первый сектор на носителе информации, содержит в себе описание структуры разделов на носителе и загрузочный код, который выполняется на втором этапе. MBR присутствует на флешках, картах памяти, жёстком диске (На флешках и на картах памяти есть возможность создания более одного раздела, аналогично жёсткому диску, но из-за ограничений в винде не имеет смысла, т.к. она видит только первый раздел).
В таблице разделов MBR есть признак, который обозначает, что данный раздел является загрузочным (активным). Для того, что бы код из MBR смог определить с какого раздела необходимо загрузиться, нужно пометить раздел как загрузочный, сделать можно любой утилитой для редактирования разделов, например: fdisk, GParted, Acronis Disk Director, Parted Magic, MiniTool Partition Wizard Home Edition.
По умолчанию (если вы не устанавливали загрузчики GRUB, LILO и т.п. на носитель в загрузочные сектора) загрузочный код расположенный в MBR ищет активный раздел, считывает загрузочный сектор в оперативную память и передаёт ему управление.
3. Выполнение кода из загрузочного сектора раздела
В общем случае, в самом первом секторе раздела содержится информация о разделе (тип файловой системы, размер и т.п.) и загрузочный код, в задачи которого входит поиск следующего кода, который необходимо загрузить и передать ему управление.
Не будем рассматривать разные файловые системы, остановимся на NTFS (именно на ней будем делать наше устройство). При форматировании раздела диска в NTFS (при форматировании флешки) в загрузочный сектор раздела записывается код, который ищет специальный файл в корне диска (для отформатированных в Windows XP, ищется файл "ntldr", для отформатированных в Windows Vista и выше - "bootmgr").
Таким образом нам необходимо отформатировать раздел в NTFS, пометить его как активный и поместить в корень диска файл с необходимым именем.
3.1 Форматирование флешки
Отформатировать раздел можно разными способами, приведу универсальный, подходящий для всех версий выше Windows XP:
3.1.1 Запускаем консоль - Нажимаем Win+R (Пуск->Выполнить). Набираем комманду "cmd", нажимаем "OK" или Enter.
3.1.2 В консоли набираем "format <буква диска>: /q /fs:ntfs", нажимаем Enter. Читаем сообщения и выполняем всё что от нас требуют.
Если у вас Linux, то в консоли набираем "mkfs.ntfs -Q /dev/<имя устройства>", нажимаем Enter.
3.2 Ntldr, bootmgr
Далее необходимо найти то, что можно положить в специальный файл. В теории в качестве этого файла можно использовать много программ не использующих ресурсы операционной системы (она ведь ещё не загружена) и работающих в реальном режиме процессора. Не буду в даваться в подробности, приведу несколько вариантов:
3.2.1 На диске с дистрибутивом Windows 7 или на диске с WinPE 2+ (основанном на Windows Vista+) уже присутствует файл "bootmgr", поэтому, что бы сделать из такого CD диска загрузочную флешку, достаточно содежимое диска скопировать в корень нашего раздела и создать копию файла "bootmgr" с именем "ntldr" (для того, что бы не заморачиваться с тем в какой ОС был отформатирован наш раздел). После этого с нашего устройства можно будет загрузиться.
3.2.2 Но мы не будем ограничиваться одной системой, нам нужно сделать мультизагрузочную.
Для этого будем использовать GRUB4DOS, который умеет грузить практически любую ОС. Качаем архив например от сюда (http://code.google.com/p/grub4dos-chenall/downloads/list), в нём много файлов, но все они нам не нужны. Из архива берём "grldr" - это собственно сам загрузчик, который нам нужен, переименовываем его в "ntldr" и копируем на наш раздел (так же делаем копию с именем "bootmgr"). Так же из архива берём файл "menu.lst" (конфигурационный файл Grub), копируем его на флешку и используем как каркас для нашей дальнейшей мультизагрузочной системы.
4. Настраиваем Grub
Для настройки Grub необходимо подредактировать файл "menu.lst". Подробную информацию по формату файла и опциям можно нати на http://greenflash.su/Grub4Dos/Grub4dos.htm. Тут я только приведу некоторые используемые мной способы загрузки и краткое описание, чтоб вы в дальнейшем могли сделать своё по аналогии.
4.1 WinPE и то что сможет успешно грузиться из ISO образа.
WinPE начиная с версии 2+ (основанные на версии Windows Vista и выше) прекрасно грузятся через эмуляцию в grub.
---menu.lst---
title Windows Preinstall Enviroupment 3.0 - Заголовок, так будет выглядить пункт меню при загрузке
find --set-root /winpe.iso - Найдёт файл "winpe.iso" и установит раздел с этим файлом в качестве корневого (поиск будет проведён на всех доступных разделах, поэтому не обязательно файл располагать на нашем разделе, можно и на другой раздел положить)
map /winpe.iso (0xff) || map --mem /winpe.iso (0xff) - Загрузит наш образ в оперативную память
map --hook
chainloader (0xff) - Передаст дальнейшую загрузку нашему iso образу.
------
4.2 Инсталятор Windows 7, 2008, 8, 2012 (что нужно грузить напрямую)
С инсталяторами Windows немного по сложнее, т.к. из iso образа они загрузиться смогут, но установить систему не получится из-за особенностей эмуляции (есть способ заставить, но нужно проводить дефрагментацию и интегрировать специальный драйвер  в инсталятор), опишу способ который меня удовлетворил. С DVD диска Windows 7 необходимо в корень нашего раздела скопировать папки: "boot", "sources", а файл "bootmgr" с DVD диска необходимо переименовать например в "bootwin7".
---menu.lst---
title Windows 7 installer - Заголовок
find --set-root /bootwin7
chainloader /bootwin7 - Передаст дальнейшую загрузку нашему файлу.
------
4.3 Загрузка из образа дискеты (floppy)
Для загрузки утилит из образа дискеты, например: MSDOS, Memtest необходимо положить образ floppy диска на наш раздел и прописать
---menu.lst---
title Memory Test
find --set-root /Memtest.img
map --mem /Memtest.img (fd0) - Загрузит наш образ дискеты в оперативную память
map --hook
chainloader (fd0)+1
------
4.4 Загрузка LiveCD Linux
В общем случае загрузка разных LiveCD Linux сводится к поиску на CD ядра, образа initrd и указания необходимых опций, как правило на CD присутствует файл с необходимой информацией, его только нужно найти. Приведу на примере загрузки LiveCD Arch Linux
---menu.lst---
title Boot Arch Linux (x86_64)
kernel /arch/boot/x86_64/vmlinuz archisobasedir=arch archisolabel=Bootable - Указываем файл с ядром и опции загрузки
initrd /arch/boot/x86_64/archiso.img - Указываем файл с образом initrd
boot
------
Пример загрузки ntpasswd (утилита основанная на Linux для сброса пароля в Windows системах)
---menu.lst---
kernel /ntpasswd/vmlinuz
initrd /ntpasswd/scsi.cgz
initrd /ntpasswd/initrd.cgz
------
4.5 И на последок:
---menu.lst---
title Boot from CD
cdrom --init
map --hook
chainloader (cd0)

title Command Line
commandline

title Reboot PC
reboot

title ShutDown PC
halt
------

Ну вот и с моего "огорода украли капусту".
Пользуюсь дома симкой МТС для выхода в инет (жене в социалке полазить, себе новости почитать, да и ребёнку мультики посмотреть). На днях отвалился инет, проверяю баланс: -0.02руб. Хотя точно помню, что с полтинник точно на счёте было. Звоню в саппорт, девушка рассказывает, что я якобы посещал какой-то платный ресурс с контентом 18+, посоветовала писать жалобу в письменном виде в офисе МТС, авось вернут. На мое предложение расторгнуть договор, ответила что-то вроде: "Расторгайте." Через билайн на трубе, через мобильный банк закинул 10 рублей на счёт, чтоб инет заработал (на билайне помегобайтная оплата, да и симку использую только для разговоров). Когда инет заработал, через личный кабинет запросил детализацию.
Выдержка из детализации:
08.01.2014  13:20:27    +04:00  Traffic_Category_908_017.002_G hsdpa       4Kb 0,1655
25.01.2014  11:54:41    +04:00  Traffic_Category_908_017.002_G hsdpa       4Kb 0,1655
26.01.2014  14:22:03    +04:00  Traffic_Category_908_017.002_G hsdpa       2Kb 0,0828
26.01.2014  15:38:37    +04:00  Traffic_Category_908_017.002_G hsdpa       2Kb 0,0828
26.01.2014  17:46:57    +04:00  Traffic_Category_908_017.002_G hsdpa       2Kb 0,0828
27.01.2014  21:22:38    +04:00  Traffic_Category_908_017.002_G hsdpa       2Kb 0,0828
28.01.2014  22:04:19    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:04:21    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:04:56    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:04:58    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:04:58    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:00    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:02    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:04    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:05    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:05    +04:00  Traffic_Category_908_017.002_G hsdpa       100Kb   4,1377
28.01.2014  22:05:09    +04:00  Traffic_Category_908_017.002_G hsdpa       24Kb    0,9930
28.01.2014  22:05:10    +04:00  Traffic_Category_908_017.002_G hsdpa       1Kb 0,0414
Написал по мылу им жалобу, жду ответа, пока отмалчиваются. Подождём пару дней, не проявят реакцию, отправлю жалобу в роскомнадзор. Деньги может и не вернут, зато нервы им немного потреплют. Одно радует, скоро будет возможность выкинуть это 3Г и подключить нормальный проводной интернет у адекватных провайдеров.

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

Есть предложения как можно сделать "дойку" не выгодной? Как сделать так, что бы такое воровство обходилось опсосам дороже, в финансовом плане, в человекочасах, в имидже, при этом, что бы затрачиваемые усилия от обманутых клиентов были существенно меньше ушерба опсосам? Устроить так сказать DDOS. И конечно, всё должно быть в рамках закона.

Post has attachment
Фотоотчёт о рыбалке.
PhotoPhotoPhotoPhotoPhoto
2013.08.24 Фотоотчёт о рыбалке.
7 Photos - View album
Add a comment...

Post has attachment
Результат моей первой рыбалки спинингом на щучку.
PhotoPhotoPhotoPhotoPhoto
2013.05.10 Улов щучки
9 Photos - View album
Add a comment...
Wait while more posts are being loaded