User Tools

Site Tools


chuwivi10

Введение

Настоящая статья описывает процесс установки Windows 8 на планшет Chuwi Vi10 из штатного дистрибутива с возможными модификациями.

Состав дистрибутива

Создание партиций

Создание партиций с нуля

WinPE запускает скрипт \windows\system32\Startnet.cmd, который в свою очередь запускает USB1:\Scripts\Main.cmd. Логика скриптов следующая

• Сохранение времени запуска в  x:\StartTime.txt
• Вызов wpeinit
• Вызов wpeutil UpdateBootInfo
• Вычисление буквы системного диска и занесение её в переменную %WinPESource%
reg query "HKLM\SYSTEM\CurrentControlSet\Control" /v PEBootRamdiskSourceDrive 
• Если этот способ не обнаружил путь к корню диска (переменная %WinPESource% пустая), то
	○ Команда diskpart /s x:\FindVol.txt>x:\VolumeList.txt составляет список томов
	○ Ищется том с меткой WINPE и файловой системой FAT32
	○ Полученный диск присваивается в переменную %WinPESource%
• Далее управление передается в Main.cmd: call %WinPESource%Scripts\Main.cmd
• Переключаемся в режим высокой производительности powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
• Ищем встроенный диск, игнорируя флешки с меткой WINPE
	○ Собираем список дисков командой diskpart /s %WinPESource%DiskpartFiles\listdisk.txt>x:\Disks.txt
	○ Для всех дисков из файла x:\Disks.txt делаем следующее
		§ Создаем  файл x:\Par.txt со скриптом sel disk <DiskNo>; det disk; exit 
		§ Выполняем скрипт diskpart /s x:\Par.txt>x:\ParOutput.txt
		§ Записываем в переменную %Disk номер диска, если у него буква no (???) или метка не WINPE
		§ Вообще код сильно завязан на английскую версию windows и на локализованной версии будет вести себя некорректно
	&#9675; Последний из дисков считаем искомым. Если такого диска не нашлось, то молча берем диск 0
• Сохраняем список томов diskpart /s %WinPESource%DiskpartFiles\listvol.txt>x:\Vols.txt
• Создаём файл x:\checkpart.txt с содержимым select disk %Disk%; list partition; exit
• Вызываем call diskpart /s x:\checkpart.txt>x:\outpar.txt
• Создаем x:\DelPar.txt и добавляем в него select disk %Disk% и для каждой партиции, начиная с 16 (отсчет партиций с 1)
	&#9675; Добавляем в x:\DelPar.txt select partition <partNo>;delete partition override
• В конце x:\DelPar.txt добавляем exit
• Удаляем виндовые партиции вызовом diskpart /s x:\DelPar.txt
• Создаем x:\wimpart.txt и добавляем в него select disk %Disk% и для каждой томов с 0 по 13
	&#9675; Добавляем в x:\wimpart.txt select volume "<volNo>"; attributes volume set hidden
• В конце x:\DelPar.txt добавляем
create partition msr size=128
create partition primary
shrink minimum=5400
format quick fs=ntfs label="Windows"
assign letter="W"
create partition primary
format quick fs=ntfs label="Images"
assign letter="T"
set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
gpt attributes=0x8000000000000001
exit
• Закоментировано
rem @echo create partition efi size=100>>x:\wimpart.txt
rem @echo format quick fs=fat32 label="System">>x:\wimpart.txt
rem @echo assign letter="S">>x:\wimpart.txt
• Партиционирование диска командой diskpart /s x:\wimpart.txt
	&#9675; выбираем диск %Disk%
	&#9675; 
	Партиция	Тип	Размер	Файловая	Буква	Метка	
				система
	1	MSR	128M				
	2	Primary	Оставшееся место	NTFS	W	Windows	
		основная
	3	Primary	5400M	NTFS	T	Images	
		recovery
	&#9675; Присваиваем recovery партиции тип "de94bba4-06d1-4d40-a16a-bfd50179d6ac" и атрибут 0x8000000000000001

Добавление партиций к существующему андроиду

Установка Windows с очисткой существюущих партиций

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

Копирование дистрибутива в режиме WMIBoot

• Поиск буквы диска USB2
	&#9675; Составляем список дисков вызовом diskpart /s %WinPESource%DiskpartFiles\listVol.txt>%WinPESource%Output.txt
	&#9675; Ищем диск с файлом \images\install.txt и заносим в переменную %InstallPath
	&#9675; Убеждаемся в наличии файла %InstallPath%\Install.wim
	&#9675; Убеждаемся в наличии файла %InstallPath%\Winre.wim
• Создаем каталоги на C: и M:
	&#9675; w:\recycler\scratch
	&#9675; t:\"windows images"
	&#9675; t:\recovery\windowsre
• Копируем wim на M:
	&#9675; copy %InstallPath%\install.wim m:\"windows images"
	&#9675; copy %InstallPath%\winre.wim m:\recovery\windowsre
• Copying over Office Bits for Pre-installation during Audit mode: xcopy "%WinPESource%Office 15.3 AFO bits"\*.* w:\Office_Temp\ /cherky
• Ставим Windows в режиме WIMboot. 
DISM /Apply-Image /ImageFile:"t:\windows images\install.wim" /ApplyDir:w: /Index:1 /WIMBoot /ScratchDir:w:\recycler\SCRATCH

Прочие действия

• Копируем тесты TEST_TOOL  SHOULD BE DELETED PRIOR TO SHIPPING
	%WinpeSource%Scripts\7za.exe x  %WinpeSource%TEST_TOOL.zip -oW:\
	%WinpeSource%Scripts\7za.exe x  %WinpeSource%TEST_TOOL_F.zip -oW:\
• Копируем активатор \OA3_tool  SHOULD BE DELETED PRIOR TO SHIPPING
	mkdir w:\OA3_tool
	if EXIST %WinpeSource%OA3_tool\run.cmd xcopy %WinpeSource%OA3_tool w:\OA3_tool /y /s
• Закомментировано копирование key management \KeyManagement SHOULD BE DELETED PRIOR TO SHIPPING
	mkdir w:\KeyManagement
	if EXIST %WinpeSource%KeyManagement\KeyM.cmd xcopy %WinpeSource%KeyManagement w:\KeyManagement /y /s
• Настройка записи в EFI w:\WINDOWS\SYSTEM32\BCDBOOT w:\WINDOWS
• Настройка recovery  w:\windows\system32\reagentc /SetREImage /Path T:\RECOVERY\WINDOWSRE /target w:\windows
• Копируем unattend.xml для авторазвертывания
	if EXIST %WinPESource%Images\audit\Unattend.xml copy %WinPESource%Images\audit\Unattend.xml w:\Windows\Panther /y
• Запускаем нечто
	%WinpeSource%Scripts\H2OUVE-W-Q2S.exe
	
• Чистимся
	rmdir /s /q w:\recycler
• Останавливаемся 
	Wpeutil shutdown
chuwivi10.txt · Last modified: 2015/07/20 20:05 by 127.0.0.1