
net use подключает папку сервера как диск, поэтому ScanState запускается прямо с сервера без установки ADK.%COMPUTERNAME%, поэтому у каждого компьютера своя папка./config подключает файл config.xml, /o перезаписывает старые данные, /v:13 дает максимальную подробность, а /encrypt с ключом шифрует хранилище./genconfig. В нем видно, какие компоненты переносятся./c продолжает работу при ошибках. У лектора их три, и он их пропускает.Полный текст первых минут лекции «Миграция USMT - включая UsmtUtils» из видеокурса PracticU – субтитры с временной меткой для каждого абзаца. Так можно прочитать и найти нужные темы ещё до начала обучения.
У нас есть какие-то файлы и папки на диске C, никто о них не знает вообще, пользователь что-то там сохраняет. У нас есть документы на рабочем столе и у нас есть кастомизированный Windows.
И мы хотим все это перенести на новый чистый компьютер. И для этого что нам надо сделать? Отсканировать. Мы делаем CMD Run as Administrator, открываем наш CMD.
И, конечно, в реальной жизни все команды, которые я вам буду писать, будут запускаться каким-то автоматическим скриптом, каким-то инструментом.
Так, мы хотим с чего начать? С того, что мы обратимся в наш share. Но проблема в том, что Windows, точнее DOS, CMD не умеют работать нормально с папками общего доступа, поэтому нам надо его обмануть.
И для этого мы ему сделаем папку общего доступа как дисковод, как диск, диск Q, диск X. И он будет думать, что он работает с локальным диском U или X, а за кулисами это будет идти на наш сервер.
С помощью команды NetUse мы делаем MapNetworkDrive, и теперь диск Q указывает на папку на сервере. Видите, мы видим вот на сервере наш экзешник, но CMD думает, что это диск U у него локально и дает с ним работать.
Прекрасно. Мы пробуем сейчас запустить ScanState без всяких параметров и видим, что он работает и выдает какой-то вспомогательный текст.
Прекрасно. То есть у нас получилось запустить с помощью NetUse экзешник с нашего сервера. Теперь следующее, что нам надо сделать, это тот же самый NetUse, только на диск X.
Почему на диск X? Чтобы туда поместить файлы пользователя. Возьмем команду netUse и ее тоже используем для нашего диска X.
То есть у нас есть два диска U и X. X это куда мы будем складывать все файлы, а U это наш экзешник установочный. Теперь нам осталось отсканировать этот компьютер и положить все на X.
Все настройки. И вот мы используем команду scanState, сканировать весь наш компьютер. Давайте я вам покажу, что она делает.
Мы запускаем с диска u, scanstate.exe, кладем все в xComputerName. Процент ComputerName, процент это переменная среды, в которой сохранен наш ComputerName, имя нашего компьютера.
Я вам сейчас это покажу. Если мы сделаем echo, отпечатать на экране процент ComputerName, процент, мы получим имя нашего компьютера. И эта переменная всегда сохраняет имя компьютера.
Если вы хотите посмотреть на список всех переменных среды, нажмите команду set. И в команде Set мы видим все переменные среды на Shave. И каждый процесс в Windows получает вот эти вот переменные, включая Computer Name.
У нас, кстати, есть отдельная лекция про все эти переменные среды. Так, давайте запустим теперь эту команду. И мы получаем Error. Давайте я вам объясню сначала, что она делает.
Мы берем, сканируем компьютер, кладем все вот в эту папку, используя этот XML с настройками MigApp, который перенесет настройки всех приложений.
Микдок перенесет все документы. И вот здесь проблема. Видите, мы забыли сделать конфиг XML. А, кстати, слэш ов сделает оверрайт. Перезапишет на сервере существующий файл.
Вот этот вот конфиг XML – это добавочные настройки, которые мы сейчас делаем, которые идут слой сверху существующего XML. Мы сейчас ее сделаем.
Потом есть verbos – это v13, это уровень детализации. Самый максимальный, 13 уровень детализации, чтобы все подробно писал мне на экране.
И зашифрованный ключ, тайный ключ, чтобы на сервере вся информация была зазипована с паролем, а не любой человек мог открыть этот мой zip файл. Давайте создадим этот конфиг XML и посмотрим, что в нем есть.
Этот конфиг XML это добавочный слой, какие настройки использовать, а какие нет. из нашего XML общего, то есть у нас есть общие XML, а есть для конкретного запуска, какие компоненты использовать, а какие нет.
Так, мы идем в нашу папку там, где есть вот эти все наши XML и все наши экзешники, вот эту вот папку, мы в нее заходим, вот мы в ней находимся, и теперь нам надо запустить команду, которая создаст нам config.xml, то есть она возьмет все наши общие XML и создаст из
них такой список компонентов. Видите, он взял gen-config. Вот это вот командно gen-config, ее надо один раз запустить на сервере, чтобы создать этот наш config.xml.
Давайте посмотрим, что в нем есть в этом конфиге.xml. Его, кстати, до этого не было. Вот он его создал только что, этот config.xml. Сделаем правую кнопку edit, и мы видим здесь XML, и для каждого компонента написано, его устанавливать или нет. Видите, этот компонент его переносить или нет. И тем
самым мы можем, не копаясь в тех XML, в которых все очень детализировано, на уровне общих компонентов решить для конкретного запуска, какие компоненты переносить, а какие не переносить.
Тем более, это единственный способ переносить или не переносить конкретные компоненты Windows. Windows составлен из многих маленьких таких модулев, компонентов. Я могу решить, какие настройки переносить на новый компьютер, а какие не переносить на новый компьютер. Это,
кстати, необязательный этап, если я не собираюсь менять настройки какие-то. Кстати, здесь внизу есть интересная вещь. Например, я могу поменять имя домейна, то есть переносить настройки пользователей с одного домейна на новый домейн. То есть, если я хочу передвинуть пользователей из домейна в
я тоже могу сделать это с помощью USMT, чтобы их учетные записи в новом домене получили все настройки, все документы и настройки, которые были в старом домене. Прекрасно.
Теперь у нас есть этот Config.xml, который добавочный слой сверху существующих XML, и мы можем запустить нашу команду. ScanState, положим все в папку ComputerName, будем использовать вот эти вот XML детализированные, И вот этот вот XML общий, этим ключом, все зашифруем.
И давайте перед тем, как я это запущу, я хочу вам показать, что происходит на сервере.