Показать полную графическую версию : интерфейс переноса ос на новое железо
Здравствуйте!
Вопрос из области "хорошая ли идея?".
- многие знают о существовании наборов драйверов и оболочек типа SDI (http://snappy-driver-installer.sourceforge.net/ru/index.php) и других (отдельная благодарность разработчикам за то, что они это сделали), когда оболочка по vid и pid устройства определяют какой драйвер ос (в данном случае веду речь о windows, потому что не знаю существуют ли подобные для других ос, но буду формулировать в общем, хотя вроде бы linux-ы неплохо загружаются после переноса на новое железо) должна использовать для корректного взаимодействия с этим устройством
- многие сталкивались с проблемами переноса ос на другое железо,
иногда загружается сразу без проблем, после чего можно обновить драйвера, иногда нужно поработать со сменой режима работы с диском (ide/ahci (https://ru.wikipedia.org/wiki/Advanced_Host_Controller_Interface)), иногда дело обстоит сложнее
Возникает мысль о том как организовать процесс переноса ос на другое железо, чтобы всё шло тихо и гладко и желательно интуитивно понятно.
Учитывая приведённые выше два момента, мысль такая:
- если система не смогла корректно загрузится, ставится флаг о том, что нужно использовать дополнительные варианты загрузки (эта часть реализована в windows, если windows не смогла загрузится, при следующей загрузке выводится меню альтернативных вариантов загрузки (также можно вызывать по нажатию на F8))
- среди этих вариантов должен быть вариант с вызовом некой примитивной оболочки, которая по vid и pid устройств определит необходимые драйверы и при согласии пользователя внесёт необходимые изменения в ос, вероятно есть смысл автоматизировать этот вариант загрузки, то есть ос пробует загрузится, если не получается, не падает, а сразу пытается применить приведённый выше способ загрузки с поиском подходящих драйверов по vid и pid, при необходимости выводит запрос на указание каталога, в котором эти драйвера лежат
путь к наборам драйверов заведомо задан и/или может быть задан вручную, возможна загрузка из сети (для этого, как минимум, ос должна подобрать подходящий драйвер для сетевой карты)
В общем всё то же самое, только при условии, что система вообще не смогла загрузится ни в одном из возможных режимов.
Возможно уже всё давно сделано, но я не в курсе.
Кто что думает по этому поводу?
Спасибо!
jah, Приведу пример из личного опыта. На ноутбук был установлен Windows 10. HDD использовался как проверочный и для запуска специфических утилит, связанных с операциями по замене MB на ноутбуках HP.
Так вот этот HDD уже устанавливался более чем на два десятка ноутбука с разными платформами - никаких проблем, просто жду пока система не запустится :)
jah, Приведу пример из личного опыта. На ноутбук был установлен Windows 10. HDD использовался как проверочный и для запуска специфических утилит, связанных с операциями по замене MB на ноутбуках HP.
Так вот этот HDD уже устанавливался более чем на два десятка ноутбука с разными платформами - никаких проблем, просто жду пока система не запустится »
типа всё по уму сделали :) не в курсе как там это всё реализовано?
как оцениваете саму предложенную идею?
кстати на hp у меня w7 тоже не раз хорошо поднималась с жёстких дисков с других материнских плат
jah, Ваша затея на фоне GPT, UEFI и Secure Boot - не имеет смысла. А перед переносом железа на Windows 7 в реестре включаете драйвера новой платформы и переносите.
jah, Ваша затея на фоне GPT, UEFI и Secure Boot - не имеет смысла. А перед переносом железа на Windows 7 в реестре включаете драйвера новой платформы и переносите. »
можно пример такого включения
sysprep.exe (https://support.microsoft.com/ru-ru/kb/2736980) чем не решение?
sysprep.exe чем не решение? »
также можно и акронисом сделать образ, а потом развернуть его с галочкой Acronis Universal Restore
это когда всё есть и работает, а если нет (сгорела материнская плата например) придётся восстанавливать другим способом
скорее я веду речь о простоте переносимости в духе live usb, только не с базовым набором драйверов, а уже сразу с тем, который наилучшим образом подходит под конкретную материнскую плату, в которую была вставлен этот usb накопитель
по сути для этого нужно выделить отдельное пространство на накопителе, в которую складываются все возможные драйвера, существующие на сегодняшний день, а на этапе загрузки выбрать нужные
корее я веду речь о простоте переносимости в духе live usb »На реальную машину ставить только одну программу - виртуальную машину. Всё остальное ставите внутри виртуалки.
На халяву вы получаете
1 переносимость между железом
2 легкость бекапов
3 легкость миграции Старая операционка > современная операционка
4 возможность сменить операционку хоста linux <> Windows
можно пример такого включения » Пожалуйста:
Закройте все программы Windows.
Откройте меню Пуск, в окне Начать поиск введите regedit и нажмите клавишу ВВОД.
Если откроется окно Учетные записи пользователей, нажмите кнопку Продолжить.
Найдите и выберите один из следующих подразделов реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IastorV
На правой панели щелкните правой кнопкой мыши пункт Start в столбце Имя и выберите команду Изменить.
В поле Значение введите 0 и нажмите кнопку ОК.
В меню Файл выберите команду Выход, чтобы закрыть редактор реестра.
ruslan...
21-12-2015, 15:36
В общем всё то же самое, только при условии, что система вообще не смогла загрузится ни в одном из возможных режимов. »
Как поменять материнскую плату - без переустановки Windows 7 (http://kampc-help.ru/index.php/stati/optimizatsiia/zamena-materinskoy-platy.html)
На реальную машину ставить только одну программу - виртуальную машину. Всё остальное ставите внутри виртуалки.
На халяву вы получаете
1 переносимость между железом
2 легкость бекапов
3 легкость миграции Старая операционка > современная операционка
4 возможность сменить операционку хоста linux <> Windows »
это всё круто, но заранее неизвестно будет ли на той машине установлена VM
Пожалуйста:
Закройте все программы Windows.
Откройте меню Пуск, в окне Начать поиск введите regedit и нажмите клавишу ВВОД.
Если откроется окно Учетные записи пользователей, нажмите кнопку Продолжить.
Найдите и выберите один из следующих подразделов реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IastorV
На правой панели щелкните правой кнопкой мыши пункт Start в столбце Имя и выберите команду Изменить.
В поле Значение введите 0 и нажмите кнопку ОК.
В меню Файл выберите команду Выход, чтобы закрыть редактор реестра. »
имелось в виду нечто менее известное
обычно я так и делаю в первую очередь, когда занимаюсь переносом, загружаюсь с live usb (здесь подойдёт любой вариант с правкой этого файла реестра, мне удобнее с live usb, так как там есть и другие инструменты, которые потенциально могут пригодиться), в редакторе реестра импортирую куст %windir%\system32]\config\SYSTEM и вношу эти правки
кстати в исходном посте я привёл ссылку на
https://ru.wikipedia.org/wiki/Advanced_Host_Controller_Interface
где есть официальная ссылка на то, где делается именно это
https://support.microsoft.com/ru-ru/kb/922976
там говорится, что это включает драйвер AHCI
хотелось бы соотнести это с тем, что приведено по ссылке от ruslan...,
Значение Start=0 - запуск сервиса при загрузке Windows.
Как поменять материнскую плату - без переустановки Windows 7 (http://kampc-help.ru/index.php/stati/optimizatsiia/zamena-materinskoy-platy.html)»
несколько месяцев назад, когда нужен был перенос, встречал нечто подобное, но так как тогда некогда было особо разбираться, так и не доделал эту работу, если всё что там приведено является панацеей от всех бед, то это круто
продублирую, полезная информация лишней не бывает
- удалить ветку реестра HKLM\SYSTEM\MountedDevices
- Раскрываем ветку HKLM\SYSTEM\CurrentControlSet\services в левой части редактора реестра. Теперь проверяем следующие разделы в данной ветке: amdide, amdsata, amdxata, atapi, intelide, msahci, pciide. Параметр Start у каждого обязан быть равен 0х00000000 (0). Значение Start=0 - запуск сервиса при загрузке Windows.
- если не помогло, ставим значение параметра Start равным 0 в следующих сервисах: adp94xx, adpahci, adpu320, aic78xx, amdsbs, arc, arcsas, elxstor, HpSAMD, iaStorV, iirsp, LSI_FC, LSI_SAS, LSI_SAS2, LSI_SCSI, megasas, MegaSR, nfrd960, nvraid, nvstor, ql2300, ql40xx, SiSRaid2, SiSRaid4, vhdmp, vsmraid, aliide, cmdide, nvraid, viaide.
Перезагружаем PC в нормальном режиме. ОС обязана загрузиться.
последние слова звучат как тост, нужно будет обязательно поднять тот незагрузившийся диск и проверить работает ли он разных материнках :)
теперь хотелось бы вернуться к исходному вопросу
jah, Ваша затея на фоне GPT, UEFI и Secure Boot - не имеет смысла. А перед переносом железа на Windows 7 в реестре включаете драйвера новой платформы и переносите.»
почему не имеет смысла? это задача загрузчика определить нуждается ли система в новых драйверах, иначе успешной загрузки вообще может не быть
но заранее неизвестно будет ли на той машине установлена VM »таскать с собой дистрибутив виртуальной машины.
Или ваша цель "иметь 100% гарантии, что запустится везде" ? Тогда она очевидно не выполнима.
Для таких целей нужно таскать с собой не только операционку, но и машину, то есть ноутбук.
Зачем пихать в ОС гигабайты устаревших драйверов, молясь богам, чтобы она подхватила нужные, не свалившись в бсод, когда есть sysprep и Windows Update.
Ставьте перед собой реальные цели (http://www.youtube.com/watch?v=KJfZavxk0q8) ©
таскать с собой дистрибутив виртуальной машины.
Или ваша цель "иметь 100% гарантии, что запустится везде" ? Тогда она очевидно не выполнима.
Для таких целей нужно таскать с собой не только операционку, но и машину, то есть ноутбук. »
портативный дистрибутив? иначе бы пришлось бы просить того, чей комп, установить себе виртуальную машину
да, 100% гарантии было бы совсем неплохо, и это можно было бы гарантировать настолько, насколько всеобъемлющий объём существующих на данный момент драйверов есть на носителе с этой системой
Зачем пихать в ОС гигабайты устаревших драйверов, молясь богам, чтобы она подхватила нужные, не свалившись в бсод, когда есть sysprep и Windows Update.
Ставьте перед собой реальные цели © »
про sysprep речь уже шла, в этом случае прежде чем пойти куда-нибудь нужно будет сделать sysprep и, подключив диск, пройти шаги развёртывания на новом железе - слишком долго для удобства
зачем молить богов, если будет отлаженный механизм выбора при загрузке нужных драйверов для конкретного железа?
практически всё что есть на данный момент из драйверов укладывается в ~10ГБ, на данный момент такой объём (и в несколько раз больше) под доп. нужды совсем не проблема, спокойствие пользователя стоит гораздо дороже
если всё что там приведено является панацеей от всех бед, то это круто »
опробовал сегодня на двух платах поднять ту систему, всё действительно круто, на одной упало в синий экран, на другой просто уходило на перезагрузку, до третьего пункта с дополнительными правками так и не дошёл, поднималось на втором пункте
ruslan...
22-12-2015, 18:31
про sysprep речь уже шла, в этом случае прежде чем пойти куда-нибудь нужно будет сделать sysprep и, подключив диск, пройти шаги развёртывания на новом железе - слишком долго для удобства »
Напротив. Sysprep, на мой взгляд, самый объективный способ, в данном случаи.
Но поскольку образ Sysprep восстанавливается без активации, то этот способ отпадает автоматически.
Напротив. Sysprep, на мой взгляд, самый объективный способ, в данном случаи.
Но поскольку образ Sysprep восстанавливается без активации, то этот способ отпадает автоматически. »
он объективный только потому, что так сделали, делали бы с учётом мысли о потенциальной переносимости поделки, так бы не сделали никогда
просить того, чей комп, установить себе виртуальную машину »Да.
А грузится с LiveUSB вы планируете без спроса?
на данный момент такой объём (и в несколько раз больше) под доп. нужды совсем не проблема »проблема выбрать из этого объёма нужные драйвера.
Кстати вы в курсе про Windows To Go (http://windows.microsoft.com/ru-ru/windows-8/windows-to-go-faq) ?
Да.
А грузится с LiveUSB вы планируете без спроса? »
одно дело использовать ресурсы чужой машины, не вмешиваясь в ос, которая на нём поднята, а другое предлагать пользователю установить в его систему виртуальную машину, при определённых условиях это может выглядеть как день и ночь
проблема выбрать из этого объёма нужные драйвера.
Кстати вы в курсе про Windows To Go ? »
проблема выбора практически полностью ложится на программу-оболочку, которая по vid и pid выбирает нужные
WTG это небольшой шаг навстречу от microsoft
не считая необходимости активации и ограничений в самой этой "wtg os", насколько я понимаю, она работает не с самыми лучшими драйверами, с которыми бы могла работать, её задача просто не упасть на незнакомом оборудовании, очевидно там есть возможность доустановить родные драйвера (я не пробовал), но всё же как это далеко от
"обновил набор существующих на данный момент драйверов и грузись на любой существующей на данный момент машине, всё будет работать наилучшим образом"
про sysprep речь уже шла »
И будет идти до тех пор, пока вы не озвучите задачу, а не хотелку. Вам зачем этот перенос нужен?
Обновить домашние ПК в случае обновления оборудования?
Развернуть ОС в организации на несколько ПК вручную? На сотни автоматически? Зная конфигурации или [почему-то] не зная?
Заниматься установкой винды за 500 рублей по объявлению?
Наконец, о какой версии Windows речь вообще?
Я считаю, что решение нужно выбирать в соответствии с задачей, а если она не озвучена, предлагается самое беспроблемное решение.
прежде чем пойти куда-нибудь нужно будет сделать sysprep и, подключив диск, пройти шаги развёртывания на новом железе - слишком долго для удобства »
Идти куда? Зачем проходить шаги, если есть файл ответов?
зачем молить богов, если будет отлаженный механизм выбора при загрузке нужных драйверов для конкретного железа? »
Простите, откуда этот отлаженный механизм возьмется? Из самоделок типа когда оболочка по vid и pid устройства определяют какой драйвер ос »Windows Update - это и есть отлаженный механизм доставки самых новых наиболее беспроблемных драйверов, причем отлаженный самими вендорами и Майкрософт. И вовсе необязательно выбирать нужные драйверы при загрузке, достаточно базового набора, а остальное - с WU.
[hr]WTG-то тут вообще при чем? Оно нужно, чтобы люди могли вставить флэшку и работать в настроенной ОС из дома или наоборот - на выезде . Прежде чем оспаривать, поищите целевые сценарии, озвученные изготовителем.
И будет идти до тех пор, пока вы не озвучите задачу, а не хотелку. Вам зачем этот перенос нужен?
Обновить домашние ПК в случае обновления оборудования?
Развернуть ОС в организации на несколько ПК вручную? На сотни автоматически? Зная конфигурации или [почему-то] не зная?
Заниматься установкой винды за 500 рублей по объявлению?
Наконец, о какой версии Windows речь вообще?
Я считаю, что решение нужно выбирать в соответствии с задачей, а если она не озвучена, предлагается самое беспроблемное решение. »
задача получить ос, которая за наименьшее количество телодвижений будет работать наилучшим образом везде
в исходном посте озвучено
Вопрос из области "хорошая ли идея?". »
Идти куда? Зачем проходить шаги, если есть файл ответов? »
куда угодно, где есть pc
Простите, откуда этот отлаженный механизм возьмется? Из самоделок типа »
либо самоделок, но лучше, чтобы нативно было
Windows Update - это и есть отлаженный механизм доставки самых новых наиболее беспроблемных драйверов, причем отлаженный самими вендорами и Майкрософт. И вовсе необязательно выбирать нужные драйверы при загрузке, достаточно базового набора, а остальное - с WU. »
ну круто, а оно работает, если система решила не загружаться или надо сначала реестр поправить описанными выше способами?
есть рекомендации по его оффлайн применению?
WTG-то тут вообще при чем? Оно нужно, чтобы люди могли вставить флэшку и работать в настроенной ОС из дома или наоборот - на выезде . Прежде чем оспаривать, поищите целевые сценарии, озвученные изготовителем. »
никто и не спорил, было озвучено то, чего нет, в том числе и по причине целевых сценариев, озвученных изготовителем
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.