Новости
Привіт, дорогий читачу! Якщо ти коли-небудь задавався питанням - як перенести файл з хостовой машини на віртуальну в Hyper-V, то ця стаття для тебе! Справа в тому, що не завжди представляється можливим організувати мережеву зв'язність між хостом і віртуальною машиною, а іноді це і зовсім не потрібно. На щастя, в Hyper-V передбачена проста можливість перенесення файлів прямо на віртуальні машини (як Windows так і Linux та інші) за допомогою PowerShell і зараз ми про неї розповімо.
Важливо відзначити, що дана функціонал став доступний тільки в 3 версії PowerShell. Тому перевірте встановлену у себе версію. Для цього в консолі PowerShell введіть команду $ PSVersionTable
процес
Отже, відразу розкриємо всі карти. Для перенесення файлів на гостьові (віртуальні) машини потрібно використовувати команду з наступним синтаксисом:
Copy-VMFile -Name "Ім'я віртуальної машини" -SourcePath? Шлях до \ файлу \ який \ хочемо перенести? -DestinationPath? Шлях до \ папці на віртуальній машині \ куди хочемо \ покласти файл? -CreateFullPath -FileSource Host
Основою команди є частина Copy-VMFile, яка, в термінології PowerShell, називається Командлети (Cmdlet) далі йдуть ключі командлет, що визначають параметри і правила виконання команди. Наприклад, в прикладі вище, c допомогою ключа -Name ми вказуємо ім'я віртуальної машини, на яку хочемо скопіювати файл, шлях до якого вказуємо в ключі -SoucePath. Директорія, в яку ми хочемо помістити файл на віртуальній машині вказується в ключі -DestinationPath. Ключ -CreateFullPath створить директорію, якщо її ще немає. Ну і -FileSource Host означає, що джерелом, з якого ми переносимо файл є хостової сервер.
Однак, якщо ви виконаєте команду на поточному етапі без попередньої підготовки віртуальної машини, то отримаєте наступну помилку:
Щоб цього уникнути, необхідно попередньо включити в параметрах віртуальної машини підтримку гостьових сервісів (Guest Services). Для цього треба зайти в параметри віртуальної машини, далі виберіть Сервіси Інтеграції (Integration Services) і поставте галочку навпроти Гостьові сервіси (Guest Services).
Або просто введіть команду Enable-VMIntegrationService -Name? Guest Service Interface? -VMName "Ім'я віртуальної машини"
Після цього слід ввести команду Copy-VMFiles ще раз, після чого почнеться копіювання файлів з хоста в зазначену директорію на віртуальній машині. Даний спосіб підходить для файлів будь-яких розмірів, обмеженням є тільки використовується віртуальною машиною дисковий простір.
Ці статті можуть бути вам цікаві:
Шлях до \ файлу \ який \ хочемо перенести?
DestinationPath?
Шлях до \ папці на віртуальній машині \ куди хочемо \ покласти файл?
Або просто введіть команду Enable-VMIntegrationService -Name?
Guest Service Interface?