Những cách hiệu quả nhất để chuyển tệp từ máy ảo sang máy chủ

Máy ảo mang lại nhiều lợi ích, chẳng hạn như tính linh hoạt, sử dụng tài nguyên hợp lý và khả năng hoạt động trong môi trường cách ly. Một tác vụ phổ biến trong môi trường ảo là sao chép tệp giữa các máy ảo và máy chủ. Hãy đọc bài viết này để tìm hiểu cách sao chép tệp từ máy chủ sang máy ảo, cách chuyển tệp từ máy ảo sang máy chủ, cũng như cách sao chép tệp giữa các máy ảo.

NAKIVO cho sao lưu VMware vSphere

NAKIVO cho sao lưu VMware vSphere

Bảo vệ dữ liệu toàn diện cho các máy ảo VMware vSphere và các tùy chọn khôi phục tức thì. Các điểm sao lưu an toàn tại chỗ, ngoài cơ sở và trên đám mây. Các tính năng chống ransomware.

Các thành phần của môi trường của chúng ta

Hãy bắt đầu bằng việc tìm hiểu các thuật ngữ:

  • Một máy chủ là một máy vật lý có cài đặt phần mềm hypervisor.
  • Một phần mềm hypervisor là phần mềm ảo hóa dùng để chạy các máy ảo trên máy chủ. Có hai loại phần mềm hypervisor:
    • Loại 1: Sử dụng máy chủ ESXi, chính là máy chủ
    • Loại 2: Sử dụng VMware Workstation, và trong trường hợp này Windows và Linux có thể là hệ điều hành của máy chủ

Trong hướng dẫn này, môi trường được sử dụng để giải thích cách chuyển tệp từ máy ảo sang máy chủ bao gồm các thành phần sau:

  • Máy chủ ESXi 1: 192.168.101.201
  • Máy chủ ESXi 2: 192.168.101.202
  • Máy Ubuntu Linux: 192.168.101.210
  • Máy chủ Windows cài đặt VMware Workstation
  • Mạng: 192.168.101.0/24
  • Các máy ảo ESXi và VMware Workstation kết nối cùng một mạng

Chúng tôi sử dụng các công nghệ sau để sao chép tệp giữa các máy ảo và máy chủ:

  • Thư mục chia sẻ
  • Bảng tạm chia sẻ và kéo & Thả
  • Thiết bị lưu trữ USB
  • PowerCLI
  • SSH và SCP
  • Chia sẻ NFS
  • Tải xuống/Tải lên tệp trong giao diện web VMware
  • Tệp ISO

Sử dụng thư mục chia sẻ để chuyển tệp VM sang máy chủ

Thư mục chia sẻ là một tính năng tiện lợi trong VMware Workstation để chuyển tệp giữa máy chủ vật lý Windows hoặc Linux có cài đặt VMware Workstation và các máy ảo (VM) đang chạy trên VMware Workstation. Đối với macOS, VMware Fusion tương đương với VMware Workstation và hỗ trợ các tính năng tương tự.

Bây giờ chúng ta hãy xem qua các bước để chuyển tệp từ máy ảo sang máy chủ và ngược lại bằng cách sử dụng thư mục chia sẻ VMware.

Lưu ý: Để tính năng này hoạt động, VMware Tools phải được cài đặt trên máy ảo. Dữ liệu giữa máy chủ và máy ảo được chuyển qua tương tác giữa VMware Tools trên máy chủ và hệ điều hành khách mà không cần sử dụng mạng.

  1. Chọn một máy ảo mà bạn muốn cấu hình chia sẻ tệp VMware. Chúng tôi chọn một trong các máy ảo Windows của mình.
  2. Nhấp vào VM > Settings (Chỉnh sửa cài đặt máy ảo) trong giao diện người dùng VMware Workstation.
  3. Trong cửa sổ Virtual Machine Settings , chọn tab Options và nhấp vào Shared Folders. Trong phần Folder sharing , chọn Always enabled. Nếu muốn, bạn có thể ánh xạ một thư mục chia sẻ thành ổ đĩa mạng trong các hệ điều hành khách Windows để thuận tiện hơn bằng cách chọn hộp kiểm.
  4. Nhấp vào Add để chọn thư mục sẽ được sử dụng làm thư mục chia sẻ.

    VMware sharing folder – how to enable shared folders in VMware Workstation

  5. Nhập đường dẫn đến thư mục cần chia sẻ trên máy chủ hoặc nhấp vào Browse và chọn thư mục cần thiết. Chúng ta chọn C:tempshare-VM

    Nhập tên cho thư mục chia sẻ, ví dụ: share-VM

    Nhấp vào Next.

    VMware file sharing – configuring shared folders in VMware Workstation

  6. Chọn Enable this share. Nếu bạn muốn các máy ảo truy cập thư mục chia sẻ ở chế độ chỉ đọc, hãy chọn hộp kiểm Read-only . Nhấp vào Finish.

    VMware sharing folder in VMware Workstation and enabling this share

  7. Thư mục chia sẻ mới hiện được hiển thị trong danh sách các thư mục chia sẻ trong tab Options của cửa sổ Virtual machine settings . Một thư mục chia sẻ được kích hoạt nếu hộp kiểm tương ứng được chọn bên cạnh tên tệp.

    Nhấp vào OK để lưu cài đặt.

    VMware sharing folder – a shared folder is created

  8. Mở giao diện người dùng của máy ảo Windows được sử dụng để chia sẻ thư mục thông qua tính năng Shared folders .
  9. Nhấp vào Network (My Network Places) trong My Computer (This PC) hoặc Windows Explorer để xem các máy tính có sẵn trong mạng.
  10. Chọn vmware-host là tên máy tính nơi thư mục chia sẻ được cấu hình. Tên này được đặt mặc định và được ánh xạ đến máy vật lý (host) của bạn có chứa thư mục chia sẻ.

    How to access a shared folder to copy VMware virtual machine files

  11. Nhấp vào Shared Folders và chọn thư mục chia sẻ cần thiết (share-VM trong ví dụ của chúng tôi). Đường dẫn đầy đủ đến thư mục chia sẻ, trong trường hợp của chúng tôi, là

    vmware-hostShared Foldersshare-VM

Bạn có thể sao chép tệp từ máy chủ sang máy ảo và ngược lại. Trong ví dụ của chúng tôi, chúng tôi đã sao chép Test01.txt từ máy chủ Windows sang máy khách Windows bằng tính năng chia sẻ tệp của VMware trong VMware Workstation.

VMware transfer files from a VMware VM using a shared folder

Đối với máy khách Linux, bạn có thể gắn tất cả các thư mục chia sẻ của VMware bằng lệnh như sau:

  • Trong Linux với kernel trước 4.0:

    mount -t vmhgfs .host:/ /home/user1/shares

  • Trong Linux với kernel 4.0 trở lên:

    /usr/bin/vmhgfs-fuse .host:/ /home/user1/shares -o subtype=vmhgfs-fuse,allow_other

Nếu bạn muốn giữ thư mục chia sẻ được gắn sau khi khởi động lại VM, hãy thêm các dòng thích hợp với nhận xét và cấu hình trong /etc/fstab , ví dụ:

#

Thư mục chia sẻ VMware để chuyển tệp giữa máy khách và máy chủ VMWare

.host:/ /mnt/hgfs/ fuse.vmhgfs-fuse defaults,allow_other,uid=1000 0 0

Trước khi chuyển sang phần tiếp theo, lưu ý rằng tính năng thư mục chia sẻ chỉ có sẵn trong VMware Workstation (và VMware Fusion trên macOS), và không có sẵn cho các máy ảo chạy trên máy chủ ESXi. Đối với các máy chủ ESXi, bạn có thể chia sẻ thư mục theo cách thủ công và sử dụng mạng để sao chép tệp giữa các máy Windows. Để sao chép tệp từ một máy ảo (VM) sang máy chủ ESXi, bạn nên sử dụng một công cụ bổ sung hoặc kết hợp việc sao chép tệp từ thư mục được chia sẻ thủ công với một trong các phương pháp được giải thích dưới đây.

Có các phương pháp khác cho Chia sẻ thư mục trong Windows 10Windows Server 2019. Bạn cũng có thể tìm hiểu thêm về giao thức Chia sẻ tệp trong doanh nghiệp vừa và nhỏ .

Nếu bạn có tài khoản Windows có quyền quản trị và chính sách bảo mật cho phép truy cập các chia sẻ quản trị ẩn có sẵn theo mặc định, bạn có thể truy cập tệp trên đĩa cục bộ của máy tính Windows bằng đường dẫn đến chia sẻ như sau:

IP-Addressc$

Trong đó:

IP-Address là địa chỉ IP hoặc tên máy chủ của máy tính Windows từ xa.

C$ là ký tự ổ đĩa cần thiết trên máy tính Windows từ xa, đây là một chia sẻ hệ thống ẩn.

Sử dụng Clipboard chia sẻ để chuyển tệp từ máy chủ sang máy ảo

Clipboard chia sẻ là tính năng cho phép bạn sao chép và dán nội dung như văn bản và toàn bộ tệp từ máy ảo sang máy chủ có cài đặt VMware Workstation. Quy trình này tương tự như khi bạn sao chép và dán nội dung giữa các cửa sổ ứng dụng khác nhau trong Windows hoặc Linux thông qua giao diện người dùng (GUI).

Toàn bộ các tính năng có sẵn tại VMware Workstation, cho phép bạn chuyển tệp từ máy chủ sang máy ảo và ngược lại. Bạn có thể kéo và thả tệp thay vì sao chép và dán.

Bảng tạm chung trong VMware Workstation

Hãy cùng tìm hiểu cách chuyển tệp sang các máy ảo VMware Workstation bằng bảng tạm chung và kéo thả & . Trong ví dụ này, VMware Workstation được cài đặt trên máy chủ Windows.

  1. Chọn máy ảo của bạn trong khung bên trái nơi liệt kê các máy ảo.
  2. Nhấp vào Edit virtual machine settings (VM > Settings).

    Opening virtual machine settings

  3. Chọn tab Options và nhấp vào Guest Isolation.

    Chọn hai ô kiểm:

    • Enable drag and drop
    • Enable copy and paste

    Nhấp vào OK để lưu cài đặt và đóng cửa sổ.

    Enabling shared clipboard and drag & drop to transfer files to VMware VMs

Bảng tạm chia sẻ trong VMware ESXi

Đối với các máy ảo chạy trên VMware ESXi, bạn không thể sao chép bất kỳ tệp nào bằng cách kéo & thả hoặc qua bảng tạm chia sẻ giữa một máy ảo trên máy chủ ESXi và bất kỳ máy nào khác. Tùy chọn duy nhất là sao chép-dán văn bản giữa một máy ảo chạy trên ESXi và máy cục bộ của bạn (trên đó đã cài đặt VMware Workstation hoặc Bảng điều khiển từ xa VMware ). Sao chép-dán và kéo & thả tệp không được hỗ trợ vì lý do bảo mật. Tuy nhiên, nếu bạn không thể sao chép tệp cấu hình, chẳng hạn, bạn có thể sao chép nội dung văn bản của tệp bằng cách sử dụng khay nhớ tạm chung. Theo mặc định, khay nhớ tạm chung bị tắt trong cấu hình máy ảo ESXi. Thực hiện các bước sau trên máy chủ ESXi để bật khay nhớ tạm chung nhằm sao chép và dán dữ liệu văn bản:

  1. Máy ảo phải được tắt nguồn khi chỉnh sửa cấu hình máy ảo. Tắt máy ảo nếu máy ảo đang chạy.
  2. Mở VM settings. Bạn có thể sử dụng VMware Host Client và VMware vSphere Client. Chọn một máy ảo, nhấp vào Edit VM settings và chọn tab VM options .

    Mở rộng phần Advanced Settings và nhấp vào Edit Configuration.

    Advanced VM configuration to enable shared clipboard in ESXi

  3. Bạn cần thêm ba tham số cấu hình vào cấu hình máy ảo (được ghi vào tệp cấu hình VMX của máy ảo). Nhấp vào Add parameter.

    Enabling shared clipboard for a VM on VMware ESXi

  4. Thêm ba tham số này:

    isolation.tools.copy.disable FALSE

    isolation.tools.paste.disable FALSE

    isolation.tools.setGUIOptions.enable TRUE

  5. Nhấp vào OK và lưu cài đặt.

    Configuration parameters to enable shared clipboard are added

Ngoài ra, bạn có thể chỉnh sửa thủ công tệp VMX chứa cấu hình VM nằm trên kho dữ liệu ESXi trong thư mục VM.

  1. Đăng nhập vào giao diện dòng lệnh ESXi cục bộ hoặc qua SSH.
  2. Truy cập vào thư mục VM (thư mục chứa các tệp VM trên kho dữ liệu). Trong trường hợp của chúng tôi, chúng tôi truy cập vào thư mục này:

    cd /vmfs/volumes/datastore10a/Windows-VM/

    Locating a VMX configuration file of the VM to enable a shared clipboard

  3. Chỉnh sửa tệp cấu hình VMX. Trong trường hợp của chúng tôi, tệp là Windows-VM.vmx

    vi Windows-VM.vmx

  4. Thêm ba tham số được hiển thị ở trên vào cuối tệp cấu hình này.
  5. Lưu thay đổi và đóng tệp (thoát khỏi trình soạn thảo văn bản).

    Adding configuration parameters to a VMX file to enable shared clipboard for a VM on an ESXi host

Bây giờ chúng ta có thể sao chép và dán văn bản giữa máy tính cục bộ và máy ảo từ xa đang chạy trên máy chủ ESXi bằng cách sử dụng VMware Remote Console và VMware Workstation để kết nối với máy ảo.

Sử dụng thiết bị lưu trữ USB

VMware ESXi và VMware Workstation hỗ trợ tính năng USB passthrough, cho phép bạn cắm thiết bị USB vào máy chủ và kết nối thiết bị USB này với máy ảo đang chạy trên máy chủ đó. Bạn có thể kết nối thiết bị lưu trữ USB với máy chủ và máy ảo theo thứ tự để sao chép tệp giữa các máy này theo cả hai hướng.

Lưu ý: VMware Tools phải được cài đặt trên hệ điều hành khách (OS) của máy ảo để sử dụng tính năng truyền qua USB.

Sao chép tệp giữa các máy ảo VMware Workstation và máy chủ

Thực hiện các bước sau để chuyển tệp từ máy ảo sang máy chủ trong VMware Workstation được cài đặt trên máy chủ Windows và Linux (giao diện được thống nhất):

  1. Bật nguồn máy ảo.
  2. Cắm thiết bị lưu trữ USB, chẳng hạn như ổ cứng USB (HDD) hoặc ổ đĩa flash USB, vào máy tính vật lý đóng vai trò là máy chủ.
  3. Cửa sổ New USB Device Detected sẽ mở ra trong VMware Workstation. Chọn nơi bạn muốn kết nối thiết bị USB:
    • Kết nối với máy chủ
    • Kết nối với máy ảo

    Hãy chọn tùy chọn thứ hai và kết nối ổ đĩa flash USB của chúng ta với máy ảo. Trong ví dụ này, chúng ta đang chạy một máy ảo Windows. Nếu có nhiều máy ảo đang chạy trên VMware Workstation, bạn phải chọn máy ảo cần thiết trong danh sách. Một thiết bị USB chỉ có thể được kết nối với một máy ảo tại một thời điểm. Nhấp vào OK để tiếp tục.

    How to transfer files to virtual machines by using a USB storage device

    Nếu thiết bị lưu trữ USB của bạn đã được cắm vào cổng USB của máy chủ vật lý nơi cài đặt VMware Workstation, cửa sổ bật lên với các tùy chọn truyền qua USB sẽ không hiển thị tự động. Bạn có thể kết nối thiết bị USB với một máy ảo (ngắt kết nối khỏi máy chủ) trong menu:

    Truy cập VM > Removable Devices > Your USB Storage Device Name > Connect (Disconnect from host).

    Trong ví dụ của chúng tôi, tên ổ đĩa flash USB là Kingston DataTraveler 2.0.

    Connecting a USB flash drive to a VM to copy files between a host and VM

  4. Bây giờ chúng ta có thể thấy ổ đĩa flash USB được kết nối với máy ảo Windows 7 trong danh sách các ổ đĩa của My Computer (Windows Explorer). Để kiểm tra thiết bị lưu trữ USB:
    • Nhấp chuột phải vào My Computer và chọn Manage.
    • Truy cập Computer Management > Device Manager and Computer Management > Disk Management trong snap-in tương ứng sau khi nhấp chuột phải.

    Nếu ký tự ổ đĩa không được gán tự động, hãy gán ký tự đó thủ công trong snap-in Disk Management .

    Quy trình làm việc cho máy ảo Linux cũng tương tự. Trong một số bản phân phối Linux, bạn có thể cần gắn thiết bị lưu trữ USB đã kết nối (như ổ đĩa flash) thủ công trong hệ điều hành Linux.

  5. Sau khi thiết bị lưu trữ USB đã được gắn vào máy ảo (VM) và được hệ điều hành khách nhận diện, hãy sao chép các tệp cần thiết từ máy ảo sang thiết bị lưu trữ USB. Việc sao chép tệp từ thiết bị lưu trữ USB sang máy ảo hiện cũng hoạt động.

    A USB flash drive is connected to a VM

  6. Sau khi sao chép tất cả các tệp cần thiết từ máy ảo sang ổ đĩa flash USB, hãy ngắt kết nối ổ đĩa flash USB khỏi máy ảo và kết nối thiết bị USB này với máy chủ:

    Nhấp vào VM > Removable Devices > Your USB Storage Device Name > Disconnect (Connect to host).

    How to transfer files from VM to host – disconnecting a USB flash drive from a VM

  7. Hiện tại, thiết bị lưu trữ USB đã được kết nối với máy chủ (trong trường hợp này là máy tính Windows đang chạy VMware Workstation). Chúng ta có thể chuyển các tệp đã được sao chép từ máy ảo sang ổ đĩa flash USB sang máy chủ của bạn.

Chuyển tiếp USB từ VMware Workstation sang máy ảo ESXi

Bạn có thể sử dụng ổ đĩa flash USB được cắm vào máy chủ ESXi và cắm vào máy Windows hoặc Linux cục bộ (đã cài đặt VMware Workstation hoặc VMware Remote Console (VMRC)) mà bạn đang sử dụng để quản lý máy chủ ESXi từ xa để kết nối ổ đĩa flash USB này với máy ảo ESXi. Trong trường hợp đầu tiên, tính năng chuyển tiếp USB kết nối với máy chủ được sử dụng và trong trường hợp thứ hai, tính năng chuyển tiếp USB kết nối với máy khách được sử dụng.

Hãy kết nối một ổ USB được cắm vào máy tính vật lý Windows 10 cục bộ của chúng ta với một máy ảo Windows XP đang chạy trên máy chủ ESXi v7.0 (sử dụng tính năng chuyển tiếp USB kết nối với máy khách). VMware Workstation được cài đặt trên máy tính vật lý Windows của chúng ta và kết nối với máy chủ ESXi qua mạng (192.168.101.0/24).

Để thực hiện điều này:

  1. Máy ảo phải được tắt nguồn để chỉnh sửa cài đặt máy ảo.
  2. Đảm bảo rằng USB controller có trong danh sách phần cứng ảo của máy ảo. Bạn có thể kiểm tra cấu hình máy ảo trong VMware Host Client. Chọn máy ảo của bạn (Windows-VM trong trường hợp của chúng tôi), nhấp vào Edit Settings và chọn tab Virtual Hardware .

    A USB controller must be present on a VM to transfer files to virtual machine with a USB flash drive

  3. Hãy quay lại VMware Workstation được cài đặt trên máy Windows 10 cục bộ (vật lý) của chúng tôi. Nhấp vào File > Connect to a server trong VMware Workstation để kết nối với máy chủ ESXi từ xa.

    Connecting to a remote ESXi server

  4. Nhập tên máy chủ ESXi hoặc địa chỉ IP, tên người dùng và mật khẩu. Nhấp vào Connect.

    Connecting to a remote ESXi host – entering credentials

  5. Mở rộng máy chủ ESXi trong khung bên trái của VMware Workstation, nơi hiển thị các máy chủ từ xa, các máy ảo (VM) từ xa trên các máy chủ này và các máy ảo VMware Workstation cục bộ.
  6. Chọn một máy ảo (VM) đang chạy trên máy chủ ESXi từ xa. Chúng ta chọn Windows-VM đang chạy trên 192.168.101.201 . Sau đó, chúng ta có thể thấy giao diện người dùng của hệ điều hành khách của máy ảo đã chọn.
  7. Nhấp vào VM > Removable Devices > Your USB Storage Device Name > Connect (Disconnect from Host).

    Lưu ý rằng chúng ta chọn một thiết bị USB được kết nối với máy Windows vật lý của chúng ta, trên đó đã cài đặt VMware Workstation. Thiết bị USB này không phải là thiết bị được kết nối trực tiếp với máy chủ ESXi vật lý mà chúng ta đã kết nối từ xa.

    Connecting a USB flash drive to a VM running on an ESXi host using client-connected USB passthrough

  8. Bây giờ chúng ta có thể thấy ổ USB của mình đã được kết nối với máy ảo Windows XP đang chạy trên máy chủ ESXi từ xa: Start > CMD > compmgmt.msc > Device Manager.

    A USB flash drive is connected to a VM running on an ESXi host and is ready to copy files

  9. Gán ký tự ổ đĩa cho phân vùng của ổ USB đã kết nối nếu chưa có ký tự ổ đĩa nào được gán. Sao chép các tệp cần thiết giữa máy ảo và ổ USB. Bạn có thể chuyển tệp vào máy ảo và từ máy ảo.

    Using a USB flash drive to transfer files from VM to host

  10. Sau khi sao chép tệp, bạn có thể ngắt kết nối thiết bị lưu trữ USB khỏi máy ảo và kết nối lại thiết bị này với máy tính vật lý Windows 10 cục bộ đang chạy VMware Workstation. Trong giao diện người dùng VMware Workstation, nhấp vào VM > Removable Devices > Your USB Storage Device Name > Disconnect (Connect to host).

Kết nối ổ USB trên ESXi

Phương pháp này cực kỳ hữu ích trong một số trường hợp, ví dụ như khi bạn cần cập nhật trình điều khiển mạng trên máy chủ ESXi và không thể sử dụng mạng. Việc kết nối ổ USB với ESXi phức tạp hơn so với việc kết nối với máy chủ chạy VMware Workstation.

Trên ESXi có những hạn chế về hệ thống tệp được hỗ trợ có thể gắn vào hệ thống. Ổ USB hoặc ổ cứng USB sử dụng hệ thống tệp FAT32 và NTFS không được hỗ trợ. Do đó, chúng ta cần tạo một phân vùng trên ổ USB và định dạng phân vùng này bằng VFAT (được Windows nhận diện là FAT12). VFAT có những hạn chế, chẳng hạn như kích thước phân vùng tối đa và kích thước tệp tối đa. Do đó, phương pháp này không áp dụng được cho các tệp lớn như đĩa ảo hoặc hình ảnh ISO lớn hơn 4 GB. Tuy nhiên, những giới hạn này là đủ để chuyển các tệp cấu hình, trình điều khiển, v.v.

Tạo phân vùng trên ổ USB flash

Trước tiên, hãy tạo một phân vùng mới trên ổ USB flash và định dạng phân vùng này bằng VFAT. Chúng ta có thể thực hiện điều này bằng cách kết nối ổ USB flash được cắm vào máy chủ ESXi với một máy ảo (sử dụng tính năng passthrough USB kết nối với máy chủ). Hoặc, chúng ta có thể cắm ổ USB flash vào một máy tính vật lý chạy Windows hoặc Linux.

Trong ví dụ này, chúng ta sử dụng máy tính Windows 7 để chuẩn bị ổ USB flash cho ESXi. Các lệnh cho Windows Server 2008R2, Windows 10 và các phiên bản Windows mới hơn là giống nhau.

  1. Để đảm bảo ổ USB đã được kết nối với máy tính Windows của bạn, nhấp chuột phải vào My Computer hoặc This PC (hoặc chạy diskmgmt.msc từ CMD) để mở Disk Management.
  2. Mở dòng lệnh Windows:

    Start > Run > cmd

  3. diskpart vào dòng lệnh và nhấn Enter.

    Bạn sẽ thấy dấu nhắc lệnh diskpart:

    Diskpart

  4. Liệt kê các đĩa được kết nối với máy tính Windows của bạn:

    list disk

    Tìm ổ USB của bạn trong danh sách kết quả và ghi nhớ số đĩa. Trong trường hợp của chúng tôi, Disk 1 là số của ổ USB (xem ảnh chụp màn hình bên dưới).

  5. Chọn ổ USB của bạn bằng cách nhập số đĩa tương ứng mà bạn đã lấy từ kết quả lệnh trên (disk 1 trong trường hợp của chúng tôi).

    select disk 1

  6. Danh sách các phân vùng trên ổ USB flash đã chọn:

    list partition

    Chúng ta có một phân vùng (Partition 1) trên ổ USB flash (xem hình ảnh bên dưới). Việc có một phân vùng trên ổ USB flash là trường hợp phổ biến nhất.

    Listing disks to identify a USB flash drive that can be used to copy files from a VM to an ESXi host

    Tiếp theo, chúng ta cần xóa các phân vùng trên ổ USB flash.

    Lưu ý quan trọng: Tất cả dữ liệu trên ổ USB flash sẽ bị xóa. Bạn có thể sao chép dữ liệu từ ổ USB flash nếu cần trước khi thực hiện các bước tiếp theo.

  7. Chọn phân vùng trên ổ USB sắp bị xóa:

    select partition 1

  8. Chạy lệnh để xóa phân vùng đã chọn:

    delete partition

  9. Chọn lại ổ đĩa là ổ USB của bạn:

    select disk 1

    Selecting the first partition on a USB flash drive in Diskpart

  10. Tạo phân vùng mới với hệ thống tệp VFAT. Trong ví dụ này, chúng ta tạo phân vùng 4 GB trên ổ USB. Lưu ý rằng bạn không thể lưu trữ tệp lớn hơn 4 GB trên VFAT. Lưu ý rằng VFAT chỉ hỗ trợ định dạng tên tệp 8.3.

    create partition primary size=4000 id=6

  11. Định dạng phân vùng đã tạo theo cách này để tương thích với ESXi:

    format fs=fat quick

    Formatting a partition in VFAT transfer files from VM to host (ESXi)

  12. Thoát khỏi công cụ diskpart (chạy lệnh exit ).

Ổ USB đã sẵn sàng để được ESXi nhận diện và sao chép tệp. Sau một số bước cấu hình ESXi bổ sung, bạn có thể gắn ổ USB vào máy ảo (VM) và sao chép các tệp cần thiết vào ổ USB.

Giả sử chúng ta cần sao chép một tệp lưu trữ ZIP chứa các trình điều khiển. Trong ví dụ này, chúng ta đã sao chép tệp net-tulip.zip vào ổ đĩa flash USB. Tiếp theo, chúng ta cần gắn phân vùng của ổ đĩa flash USB được cắm vào máy chủ ESXi trong dòng lệnh ESXi.

Cấu hình máy chủ ESXi để sử dụng ổ đĩa flash USB

Giả sử chúng ta cần sao chép một tệp lưu trữ ZIP chứa trình điều khiển từ ổ đĩa flash USB vào kho dữ liệu ESXi, sau đó sao chép tệp cấu hình máy ảo từ kho dữ liệu ESXi vào ổ đĩa flash USB. Tên tệp trong ví dụ của chúng ta là net-tulip.zip . Thực hiện các bước sau trên máy chủ ESXi để chuyển tệp từ ổ USB sang VMware ESXi và ngược lại:

  1. Cấu hình được thực hiện trong giao diện dòng lệnh. Vì lý do này, bạn phải kích hoạt truy cập SSH trên Máy chủ ESXi.
    • Để kích hoạt truy cập SSH từ xa trong DCUI, hãy truy cập Troubleshooting options > Enable SSH.
    • Để kích hoạt truy cập SSH từ xa và máy chủ SSH trên ESXi trong VMware Host Client, hãy truy cập Host > Manage và chọn tab Services . Nhấp chuột phải vào TSM-SSH và nhấp vào Start để khởi động dịch vụ. Bạn có thể kích hoạt dịch vụ này vĩnh viễn.

    Starting the SSH server service on an ESXi host to allow remote management in the command line

  2. Kết nối với máy chủ ESXi qua SSH để sử dụng dòng lệnh. Bạn có thể sử dụng trình khách SSH ưa thích của mình.
  3. Dừng dịch vụ USB arbitrator:

    /etc/init.d/usbarbitrator stop

    Dịch vụ USB arbitrator tự động kích hoạt tính năng USB passthrough cho các máy ảo nằm trên máy chủ ESXi (bạn chỉ cần chọn một ổ USB trong cài đặt máy ảo của máy ảo tương ứng để sử dụng tính năng này).

  • Nếu bạn muốn vô hiệu hóa dịch vụ USB Arbitrator sau khi khởi động lại ESXi (vĩnh viễn), bạn có thể sử dụng lệnh:

    chkconfig usbarbitrator off

    Để kích hoạt dịch vụ USB Arbitrator, hãy sử dụng lệnh tương ứng:

    /etc/init.d/usbarbitrator start

    chkconfig usbarbitrator on

  1. Các lệnh tùy chọn để kiểm tra các thiết bị USB kết nối với máy chủ ESXi:

    lsusb

    esxcli storage core device list | grep -i usb

    esxcli storage filesystem list

    Bạn có thể xem /var/log/usb.log để kiểm tra trạng thái của thiết bị USB.

  2. Bạn có thể cần ngắt kết nối và kết nối lại thiết bị lưu trữ USB sau khi dừng dịch vụ USB Arbitrator.
  3. Liệt kê các thiết bị đĩa khối để tìm/xác định ổ đĩa flash USB (hoặc ổ cứng USB) đã kết nối.

    ls -ltrh /vmfs/devices/disks/

    Ổ đĩa flash USB của chúng tôi là mpx.vmhba32:C0:T0:L0: (xem ảnh chụp màn hình bên dưới).

    Do đó, địa chỉ/vị trí đĩa đầy đủ là:

    /dev/disks/mpx.vmhba32:C0:T0:L0:

    Viewing disk devices connected to an ESXi host to identify a USB flash drive

  4. Kiểm tra số phân vùng của thiết bị USB để đảm bảo rằng bạn đã xác định đúng thiết bị đĩa:

    ls /dev/disks/mpx.vmhba32:C0:T0:L0:*

    Theo kết quả hiển thị, ID thiết bị đầy đủ, bao gồm cả số phân vùng trong trường hợp của chúng ta, là: Xác định thư mục gốc của ổ USB để xác định đường dẫn nguồn/đích để sao chép tệp. Chạy lệnh sau và nhấn để xem các mục có sẵn trong thư mục volumes. Thư mục của hệ thống tệp ESXi là thư mục mà các phân vùng có hệ thống tệp được gắn vào. Thể tích trên ổ USB được gọi là Kiểm tra nội dung của thư mục gốc trên ổ USB Tệp ZIP của chúng ta hiện có trên thể tích ổ USB. Chúng ta đã tạo thư mục trên kho dữ liệu ESXi ( ) bằng các lệnh: Trong hình ảnh minh họa bên dưới, bạn cũng có thể thấy thư mục của máy ảo (VM) mà tệp cấu hình của nó sẽ được sao chép từ kho dữ liệu ESXi sang ổ USB sau này. Sao chép tệp ZIP từ ổ USB vào thư mục cài đặt trên máy chủ ESXi của chúng ta (tại ). Kiểm tra xem tệp đã được sao chép chưa: Tệp đã được sao chép thành công. Tương tự, bạn có thể sao chép tệp theo hướng ngược lại – sao chép tệp từ ESXi sang ổ USB, sau đó sao chép tệp cần thiết vào máy ảo hoặc máy khác từ ổ USB này. Kiểm tra nội dung của thư mục VM: Sao chép tệp cấu hình từ kho dữ liệu ESXi sang ổ USB: Kiểm tra xem tệp đã được sao chép vào ổ USB chưa: Sau khi hoàn tất việc sao chép tệp trên máy chủ ESXi, bạn có thể tháo ổ USB và khởi động dịch vụ USB arbitrator trên máy chủ ESXi. Sau đó, bạn có thể cắm lại ổ USB và sử dụng tính năng truyền qua USB kết nối với máy chủ để gắn ổ USB vào máy ảo. Tìm hiểu thêm về và cách kết nối thiết bị lưu trữ USB được cắm vào máy chủ ESXi với máy ảo (VM) đang chạy trên máy chủ ESXi. Sử dụng PowerCLI để chuyển tệp sang máy ảo VMware Một phương pháp khác để chuyển tệp từ máy ảo sang máy chủ là sử dụng các lệnh (cmdlets) tại

    /dev/disks/mpx.vmhba32:C0:T0:L0:1

  5. Tab/volumes/

    ls -al /vmfs/volumes/ [press Tab]

    NO NAME

    A USB flash drive connected to an ESXi host has the NO NAME volume label

  6. ls -al /vmfs/volumes/NO NAME/

    How to transfer files from VM to host using a USB flash drive connected to ESXi

  7. installdatastore10a

    cd /vmfs/volumes/datastore10a

    mkdir install

    Selecting a VM file that can be copied to a USB flash drive from an ESXi datastore

  8. datastore10a

    cp /vmfs/volumes/NO NAME/net-tulip.zip /vmfs/volumes/datastore10a/install/

  9. ls -al /vmfs/volumes/datastore10a/install/

    How to copy file from VM to host in the ESXi command line interface

  1. ls -al /vmfs/volumes/datastore10a/Windows-VM/

  2. Windows-VM.vmx

    cp /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmx /vmfs/volumes/NO NAME/

  3. ls -al /vmfs/volumes/NO NAME/

    Copying a VM file from an ESXi host to a USB flash drive

Chức năng chuyển tiếp USB cho ESXi

PowerCLI VMware Tools phải được cài đặt trong hệ điều hành khách bên trong một máy ảo (VM). Các lệnh PowerShell này sử dụng VMware Tools để sao chép tệp tin đến/từ các máy ảo nằm trên một máy chủ ESXi. Do đó, bạn không cần kết nối mạng nếu thực thi các lệnh bên trong một máy ảo nằm trên chính máy chủ ESXi nguồn hoặc đích.

Để sao chép tệp tin giữa các máy ảo, bạn có thể sử dụng lệnh ` Copy-VMGuestFile ` và các lệnh khác trong vSphere PowerCLI.

  1. Kết nối với máy chủ ESXi hoặc vCenter Server. Trong ví dụ này, chúng ta kết nối với máy chủ ESXi.

    Connect-VIServer 192.168.101.201

    Connecting to an ESXi host in VMware PowerCLI

  • Để tránh cảnh báo chứng chỉ, hãy chạy lệnh:

    Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false

    How to disable a certificate warning in VMware vSphere PowerCLI

Copy-VMGuestFile (Local > ESXi VM)

Sử dụng lệnh sau để sao chép tệp từ máy cục bộ (máy đang chạy PowerCLI) sang máy ảo từ xa trên máy chủ ESXi:

Copy-VMGuestFile -Source "c:temptest.txt" -LocalToGuest -VM Windows-VM -Destination "c:temp-VM" -GuestUser user1 -GuestPassword Password

Trong đó:

c:temptest.txt là tệp nguồn mà chúng ta muốn sao chép từ máy cục bộ

-LocalToGuest là hướng sao chép (từ máy cục bộ sang hệ điều hành khách trên máy ảo đích chạy trên ESXi)

-VM Windows-VM là tên máy ảo đích

c:temp-VM là thư mục đích trên máy ảo đích (nơi chúng ta muốn lưu bản sao tệp)

user1 là tên người dùng trong hệ điều hành khách (OS) trên máy ảo đích. Người dùng này phải có quyền truy cập vào thư mục đích đã định nghĩa.

Password là mật khẩu của người dùng này.

Chúng ta bỏ qua cảnh báo về phiên bản VMware Tools và kiểm tra xem tệp text.txt của chúng ta đã được sao chép hay chưa.

How to copy file to virtual machine in PowerCLI

Chúng ta có thể thấy rằng tệp test.txt của chúng ta, có kích thước 29 byte, đã được sao chép thành công vào máy ảo Windows XP đang chạy trên máy chủ ESXi.

A file has been copied to a VMware VM

Copy-VMGuestFile (ESXi VM > Local)

Bây giờ, hãy sao chép một tệp từ hệ điều hành khách của máy ảo sang thư mục cục bộ của máy nơi lệnh được thực thi:

Copy-VMGuestFile -Source "c:temp-VMtest2.txt" -GuestToLocal -Destination "c:temp" -VM Windows-VM -GuestUser user1 -GuestPassword Password

Trong đó:

-Source "c:temp-VMtest2.txt" là đường dẫn đến tệp nguồn trên máy ảo chạy trên ESXi

-GuestToLocal là hướng (từ hệ điều hành khách của máy ảo ESXi đến máy cục bộ nơi lệnh được thực thi)

"c:temp" là đường dẫn đến thư mục đích trên máy cục bộ

user1 là tên người dùng trong hệ điều hành khách trên máy ảo đích. Người dùng này phải có quyền truy cập vào thư mục đích đã định.

Password là mật khẩu của người dùng này trong hệ điều hành khách

How to copy a file from a virtual machine in PowerCLI

Bạn có thể xem các ví dụ về việc sử dụng cmdlet Copy-VMGuestFile với lệnh:

get-help Copy-VMGuestFile -examples

Sử dụng Copy-DatastoreItem

Cmdlet PowerShell Copy-DatastoreItem được sử dụng để sao chép tệp đến/từ kho dữ liệu ESXi. Có 2 cách để sử dụng cmdlet này để sao chép tệp vào kho dữ liệu VMware ESXi:

  • Nếu PowerCLI đã được cài đặt trên hệ điều hành khách Windows bên trong máy ảo, bạn có thể chạy lệnh để sao chép tệp trực tiếp từ kho dữ liệu ESXi sang máy ảo và ngược lại.
  • Nếu bạn không thể cài đặt PowerCLI trên một máy ảo nằm trên máy chủ ESXi, bạn có thể chạy các lệnh PowerCLI từ máy Windows cục bộ của mình, sao chép tệp từ kho dữ liệu ESXi sang máy cục bộ bằng lệnh Copy-VMGuestFile , sau đó sao chép các tệp này từ máy cục bộ sang máy ảo bằng lệnh Copy-VMGuestFile.

Bạn phải kết nối với máy chủ ESXi hoặc vCenter Server. Bạn có thể thực hiện điều này bằng lệnh:

ViConnect

Chúng ta đang kết nối trực tiếp với máy chủ ESXi.

Hãy sao chép tệp cấu hình máy ảo từ kho dữ liệu sang máy Windows hiện tại (máy mà chúng ta đang chạy các lệnh này – cũng có thể là một máy ảo trên máy chủ ESXi):

  1. Lấy thông tin về kho dữ liệu:

    Get-Datastore "datastore10a"

  2. Lấy đối tượng kho dữ liệu ESXi:

    $datastore = Get-Datastore "datastore10a"

  3. Tạo một ổ đĩa PowerShell mới, đặt tên là ds: và ánh xạ đến $datastore:

    New-PSDrive -Location $datastore -Name ds -PSProvider VimDatastore -Root ""

  4. Đặt kho dữ liệu của bạn làm vị trí hiện tại:

    Set-Location ds:

  5. Để liệt kê các tệp và thư mục trong thư mục đã chọn, hãy sử dụng lệnh:

    Get-ChildItem

    Preparing to copy files from an ESXi host

  6. Bạn có thể đặt thư mục VM làm vị trí mới. Trong trường hợp của chúng ta, thư mục này là Windows-VM

    Set-Location "Windows-VM"

  7. Lệnh để sao chép tệp VM, tức là tệp cấu hình VMX của VM, từ kho dữ liệu ESXi đã định nghĩa sang thư mục tạm thời trên máy hiện tại:

    Copy-DatastoreItem -Item ds:Windows-VMWindows-VM.vmx -Destination c:temp

    Trong đó:

    ds:Windows-VMWindows-VM.vmx là đường dẫn đến tệp cần sao chép và ds: là đường dẫn đã định nghĩa đến kho dữ liệu (datstore10a trong trường hợp này).

    Copying a file from an ESXi datastore in PowerCLI

  • Nếu bạn đã kết nối với vCenter (không phải với một máy chủ ESXi cụ thể như trong ví dụ này), bạn có thể sử dụng lệnh sau với việc định nghĩa một kho dữ liệu trong trung tâm dữ liệu vCenter để sao chép tệp từ kho dữ liệu ESXi sang một thư mục trên máy cục bộ:

    Copy-DatastoreItem vmstore:Datacenter1datastore10aWindows-VMWindows-VM.vmx c:temp

  • Để sao chép tệp theo hướng ngược lại (bằng cách kết nối với máy chủ ESXi), hãy sử dụng lệnh:

    Copy-DatastoreItem -Item c:tempdarwin.iso -Destination ds:install

    Chúng ta sao chép darwin.iso (đây là hình ảnh có VMware Tools dành cho macOS) từ một máy Windows sang thư mục cài đặt trên kho dữ liệu ESXi.

    Copy file to VMware ESXi datastore in PowerCLI

  • Nếu bạn đã kết nối với vCenter, bạn có thể sử dụng lệnh này để sao chép tệp từ máy Windows cục bộ sang kho dữ liệu trên máy chủ ESXi từ xa:

    Copy-DatastoreItem c:tempdarwin.iso -Destination vmstore:Datacenter1datastore10ainstall

Bạn có thể sử dụng các cmdlet PowerCLI này và tạo các tập lệnh PowerShell để chuyển tệp từ máy ảo sang máy chủ và ngược lại.

Các lệnh để sao chép tệp từ máy ảo sang máy chủ trong VMware Workstation

Nếu bạn sử dụng VMware Workstation (một loại hypervisor loại 2) trên máy chủ Windows hoặc Linux (hoặc VMware Fusion trên macOS), bạn cũng có thể sử dụng giao diện dòng lệnh để sao chép tệp từ máy ảo sang máy chủ và ngược lại. Bạn có thể sử dụng công cụ dòng lệnh ` vmrun ` để thao tác với các máy ảo. Cú pháp lệnh giống nhau trên Windows, Linux và macOS (VMware Fusion). Trong hướng dẫn này, chúng tôi sử dụng VMware Workstation 15 trên Windows 10.

  1. Truy cập vào thư mục VMware Workstation:

    cd "C:Program Files (x86)VMwareVMware Workstation"

  2. Sử dụng lệnh sau để sao chép tệp từ hệ điều hành khách bên trong máy ảo sang máy chủ Windows cục bộ:

    CopyFileFromHostToGuest

    Trong trường hợp của chúng tôi, lệnh chính xác là:

    vmrun copyFileFromGuestToHost d:virtualWinServer2019WinServer2019.vmx "c:temptest.txt" "c:tempcopied"

  3. Nhập tên người dùng và mật khẩu cho người dùng này khi được yêu cầu (người dùng phải có đủ quyền truy cập vào tệp đã định nghĩa).

    Trong đó:

    d:virtualWinServer2019WinServer2019.vmx là đĩa ảo của máy ảo mà từ đó chúng tôi sao chép tệp.

    c:temptest.txt là tệp được lưu trữ trên đĩa ảo của máy ảo; đây là tệp mà chúng tôi sao chép.

    c:tempcopied là thư mục để lưu trữ bản sao tệp trên máy chủ.

    Hãy đảm bảo bạn sử dụng ký tự gạch chéo ngược khi thiết lập đường dẫn. Chúng ta đã sao chép test.txt là một tệp văn bản từ máy ảo sang máy chủ.

    Ngoài ra, bạn có thể chạy lệnh bằng cách định nghĩa thông tin đăng nhập trong lệnh:

    vmrun -T ws -gu Administrator -gp Password000 copyFileFromGuestToHost d:virtualWinServer2019WinServer2019.vmx "c:temptest.txt" "c:tempcopied"

    How to transfer files from VM to host by using the vmrun command

Để sao chép tệp theo hướng ngược lại (từ máy chủ sang máy ảo), hãy sử dụng lệnh như sau:

CopyFileFromHostToGuest

Lệnh cụ thể trong ví dụ này là:

vmrun copyFileFromHostToGuest d:virtualWinServer2019WinServer2019.vmx "c:temptest3.txt" "c:temptest3-copy.txt"

How to copy files to virtual machine by using vmrun

Cách chuyển tệp bằng SSH và SCP

SSH (Secure Shell) là giao thức phổ biến để quản lý máy chủ từ xa một cách an toàn dựa trên mã hóa. SCP là giao thức dựa trên SSH để sao chép tệp qua mạng một cách an toàn. Bạn có thể sử dụng SCP để chuyển tệp từ máy ảo sang máy chủ, đặc biệt nếu máy ảo chạy hệ điều hành Linux. Bạn có thể kích hoạt máy chủ SCP và SSH trên các máy Linux và ESXi chỉ với vài bước đơn giản.

Cách kích hoạt máy chủ SSH trong ESXi

Phải kích hoạt dịch vụ máy chủ SSH trên máy chủ ESXi để sử dụng phương pháp này và truyền tệp đến cũng như từ VMware ESXi.

  1. Để kích hoạt máy chủ SSH trong VMware Host Client, hãy truy cập Host > Manage > Services và khởi động dịch vụ TSM-SSH .
  2. SSH phải được phép trong tường lửa ESXi để cho phép lưu lượng SCP khi chuyển tệp từ máy chủ ESXi cũng như kết nối với các máy khác bằng SCP từ máy chủ ESXi này:
    • Truy cập Networking trong bảng điều khiển Navigator , chọn tab Firewall rules và chọn SSH Client.
    • Nhấp vào Actions > Enable để kích hoạt quy tắc tường lửa.

    Enabling SSH access in the ESXi firewall

  3. Để kiểm tra kết nối SSH giữa các máy chủ, bạn có thể chạy lệnh này trên máy chủ ESXi:

    nc -z 192.168.101.202 22

    Trong đó:

    192.168.101.202 là địa chỉ IP của máy chủ từ xa.

    22 là số cổng cho kết nối SSH (22 là số cổng mặc định).

Cú pháp chung của lệnh scp để sao chép tệp qua SCP trên mạng:

scp [OPTION] [user]@[SRC_HOST]:path_to_file1 [user]@[DEST_HOST]:path_to_file2

[user]@[SRC_HOST]:path_to_file1 – tệp nguồn

[user]@[DEST_HOST]:path_to_file2 – tệp đích

-P chỉ định số cổng cho kết nối SSH (sử dụng tùy chọn này nếu số cổng không phải là 22).

Dưới đây, chúng tôi giải thích các ví dụ cụ thể trong thực tế.

Cách sao chép tệp cục bộ sang máy từ xa qua SCP

Để sao chép tệp cục bộ sang máy từ xa qua SCP, hãy sử dụng lệnh như sau:

scp file.txt remote_username@remote_host_ip:/remote/directory

Từ Linux

Hãy sao chép tệp LinuxDir.txt từ máy Ubuntu Linux cục bộ (cũng có thể là một máy ảo) sang máy chủ ESXi qua mạng bằng SCP. Vị trí đích trên máy chủ ESXi từ xa là thư mục install trên kho dữ liệu datastore10a . Địa chỉ IP của máy chủ ESXi từ xa là 192.168.101.201 .

Lệnh để sao chép tệp từ máy Linux cục bộ sang máy chủ ESXi từ xa trong trường hợp của chúng ta là:

scp LinuxDir.txt root@192.168.101.201:/vmfs/volumes/datastore10a/install/

How to copy a file to a remote ESXi host via SCP

Bạn có thể lưu tệp đã sao chép trên máy đích với tên tệp mới:

scp LinuxDir.txt root@192.168.101.201:/vmfs/volumes/datastore10a/install/LinuxDir-copy.txt

Sử dụng tùy chọn -r để sao chép một thư mục cùng với tất cả các tệp bên trong:

scp -r /local/directory remote_username@192.168.101.201:/remote/directory

Từ ESXi

Bạn có thể sử dụng các lệnh scp trên máy chủ ESXi. Cú pháp scp trong dòng lệnh là giống nhau cho cả Linux và ESXi. Máy chủ SSH phải được cấu hình trên máy từ xa. Hãy đăng nhập vào máy chủ ESXi ( 192.168.101.201 ) và sao chép thư mục install cùng tất cả các tệp bên trong vào thư mục home của user1 trên máy Linux từ xa ( 192.168.101.210 ).

scp -r /vmfs/volumes/datastore10a/install/ user1@192.168.101.210:/home/user1/

How to copy a file from an ESXi host to a remote machine via SCP

Nếu máy chủ SSH lắng nghe cổng khác với 22, hãy sử dụng tham số -P ; ví dụ, nếu số cổng SSH là 8022, lệnh sẽ là:

scp -P 8022 -r /vmfs/volumes/datastore10a/install/ user1@192.168.101.210:/home/user1/

Cách sao chép tệp từ máy từ xa sang máy cục bộ qua SCP

SCP rất tiện lợi để sao chép tệp từ máy từ xa sang máy cục bộ, cho phép bạn chuyển tệp từ VM sang máy chủ. Dưới đây chúng tôi giải thích cách chạy các lệnh thích hợp trong Linux và ESXi.

Sao chép tệp tin sang máy Linux cục bộ

Chúng ta sẽ sao chép một tệp tin từ máy chủ ESXi từ xa sang máy Linux hiện tại bằng SCP. Để thực hiện việc này, hãy sử dụng lệnh như sau:

scp remote_username@remote_ip_address:/remote/file.txt /local/directory

Hãy sao chép tệp tin darwin.iso từ máy chủ ESXi từ xa sang thư mục home đã định nghĩa trên máy Linux:

scp root@192.168.101.201:/vmfs/volumes/datastore10a/install/winPreVista.iso /home/user1/

How to copy a file from a remote ESXi datastore to the current Linux machine via SCP

Sao chép tệp vào máy chủ ESXi cục bộ

Nếu đăng nhập vào máy chủ ESXi, chúng ta có thể chạy lệnh để sao chép tệp VM từ máy Linux từ xa vào kho dữ liệu trên máy chủ ESXi cục bộ. Hãy sao chép VM_file.txt từ máy Linux vào thư mục của kho dữ liệu ESXi qua mạng bằng SCP:

scp user1@192.168.101.210:/home/user1/VM_file.txt /vmfs/volumes/datastore10a/install/

How to copy a file from a remote Linux machine to the ESXi host via SCP

Cách sao chép tệp giữa hai máy từ xa

Có các lệnh SCP để sao chép tệp từ một máy từ xa sang máy từ xa khác, có hoặc không sao chép dữ liệu qua máy cục bộ hiện tại. Cú pháp lệnh như sau:

scp user1@remote-host1.com://directory/file.txt user2@remote-host2.com://directory/

Dữ liệu được truyền trực tiếp từ một máy chủ từ xa sang máy chủ từ xa khác (không sao chép qua máy cục bộ hiện tại) với lệnh trên. Nếu bạn muốn định tuyến lưu lượng qua máy cục bộ đang chạy lệnh, hãy sử dụng flag -3 .

Lưu ý: Sử dụng lệnh này nếu thông tin đăng nhập trên cả hai máy chủ từ xa là giống nhau.

Ví dụ về lệnh để chạy trên máy Linux cục bộ nhằm sao chép tệp (vim.v00) từ máy chủ ESXi từ xa (192.168.101.202) sang máy chủ ESXi cục bộ (192.168.101.201):

scp root@192.168.101.202://vmfs/volumes/BOOTBANK1/vim.v00 root@192.168.101.201://vmfs/volumes/datastore10a/install/

Nếu bạn thấy lỗi Host key verification failed , điều đó có nghĩa là khóa máy chủ không được lưu trữ trên một trong các máy chủ. Nếu lỗi này do việc thay đổi khóa máy chủ trên máy chủ từ xa gây ra, hãy xóa khóa máy chủ cũ cho máy chủ từ xa hiện tại được lưu trữ trong ~/.ssh/known_hosts

Lệnh để xóa khóa máy chủ cũ là: ssh-keygen -R hostname_or_IP_address

Ví dụ: chạy lệnh trên địa chỉ 192.168.101.202 để xóa khóa máy chủ cũ của máy chủ từ xa 192.168.101.201:

ssh-keygen -R 192.168.101.201

Ví dụ về việc sử dụng -3 trong lệnh để sao chép tệp qua máy cục bộ:

scp -3 root@192.168.101.202://vmfs/volumes/BOOTBANK1/vim.v00 root@192.168.101.201://vmfs/volumes/datastore10a/install/

Lệnh thay thế cho mục đích này là:

scp -o "ForwardAgent yes" root@192.168.101.202://vmfs/volumes/BOOTBANK1/vim.v00 root@192.168.101.201://vmfs/volumes/datastore10a/install/

Cách sao chép tệp qua SCP từ Windows

Bạn cũng có thể sao chép tệp sang máy ảo hoặc máy chủ ESXi trong Windows. Để làm điều này, bạn cần sử dụng một trình khách SCP như WinSCP, đây là giao diện đồ họa thân thiện và tiện lợi. Bạn có thể Tải xuống WinSCP miễn phí.

  1. Chạy WinSCP.
    • Chọn giao thức, ví dụ: SFTP.
    • Nhập tên máy chủ và số cổng của máy chủ từ xa, chẳng hạn như máy chủ ESXi hoặc máy tính Linux.
    • Nhập tên người dùng và mật khẩu của máy tính từ xa.
    • Nhấp vào Login.

    Trong ví dụ này, chúng ta đang kết nối với một máy chủ ESXi từ xa.

    Connecting to an ESXi host in WinSCP to copy files

  2. Một thông báo sẽ hiển thị:

    Continue connecting to unknown server and add its host key to a cache?

    Nhấp vào Yes để tiếp tục.

  3. Sau khi kết nối, bạn sẽ thấy cửa sổ kiểu dòng lệnh với hai bảng. Một bảng đại diện cho thư mục trên máy cục bộ và bảng còn lại đại diện cho thư mục trên máy từ xa. Bạn có thể sao chép tệp giữa máy chủ cục bộ và máy chủ từ xa bằng cách sao chép tệp giữa hai bảng này.

    Using WinSCP to copy a VM file from and to an ESXi host

Bạn có thể sao chép tệp từ kho dữ liệu của một máy chủ ESXi từ xa mà bạn đã kết nối trong WinSCP sang một máy ảo Windows hoặc máy vật lý từ xa bằng cách sử dụng chia sẻ SMB trên máy Windows đó.

Tuy nhiên, bạn không thể nhập đường dẫn chia sẻ trực tiếp vào bảng điều khiển WinSCP (ví dụ: 192.168.101.117c$). Bạn chỉ có thể chọn ký tự ổ đĩa. Để vượt qua hạn chế này, hãy kết nối với chia sẻ tệp trong Windows Explorer và ánh xạ chia sẻ tệp này thành ổ đĩa mạng. Gán một ký tự ổ đĩa, ví dụ: S: như chúng ta đã làm trong ví dụ này, để kết nối thư mục chia sẻ trên 192.168.101.211 .

Bây giờ chúng ta có thể chọn S: làm ổ đĩa mạng trong menu thả xuống ở khung bên trái của WinSCP, chọn các tệp hoặc thư mục cần thiết trên kho dữ liệu của máy chủ ESXi từ xa và sao chép tệp theo cả hai hướng.

Copying files between a remote ESXi host and remote SMB share by using WinSCP in Windows

Sử dụng chia sẻ NFS

Bạn có thể sử dụng chia sẻ NFS để chuyển tệp sang máy ảo từ kho dữ liệu ESXi và ngược lại. ESXi không hỗ trợ chia sẻ SMB (bản địa cho Windows). Nó hỗ trợ chia sẻ NFS (bản địa cho Linux) và gắn chia sẻ NFS làm kho dữ liệu. Sử dụng tính năng này, bạn có thể áp dụng một trong các phương pháp sau để chuyển tệp giữa các máy ESXi và Linux:

Phương pháp 1 :

  • Cấu hình máy chủ NFS và chia sẻ NFS trên máy ảo Linux
  • Gắn chia sẻ NFS làm kho dữ liệu trên ESXi
  • Sao chép tệp từ máy ảo sang kho dữ liệu ESXi và ngược lại

Phương pháp 2 :

  • Cấu hình máy chủ NFS trên máy Linux vật lý hoặc NAS
  • Kết nối chia sẻ NFS làm kho dữ liệu trên ESXi
  • Kết nối với chia sẻ NFS trên máy ảo Linux
  • Sao chép tệp từ máy ảo Linux sang chia sẻ NFS, sau đó sao chép các tệp này sang máy chủ ESXi. Sao chép tệp từ máy chủ ESXi sang chia sẻ NFS và sao chép các tệp này từ chia sẻ NFS sang máy ảo Linux.

Đọc bài so sánh tại NFS so với SMB để tìm hiểu thêm về các giao thức chia sẻ tệp này.

Cấu hình chia sẻ NFS trên Linux

Trong hướng dẫn này, chúng tôi sử dụng Linux Ubuntu 20.04. Chúng tôi đăng nhập vào Linux với tư cách người dùng thông thường và sử dụng sudo khi cần quyền root để chạy lệnh. Thực hiện các bước sau để cài đặt máy chủ NFS và cấu hình chia sẻ NFS.

  1. Cập nhật cây kho lưu trữ trong Linux:

    sudo apt-get update

  2. Cài đặt gói máy chủ NFS trên Linux:

    sudo apt-get install nfs-kernel-server -y

  3. Tạo một thư mục (thư mục xuất) sẽ được chia sẻ trên máy chủ NFS:

    sudo mkdir -p /srv/nfs/share1/

  4. Đặt chủ sở hữu và quyền truy cập cho thư mục đã tạo:

    sudo chown -R nobody:nogroup /srv/nfs/share1/

    sudo chmod 0777 /srv/nfs/share1/

    Người dùng nobody là một người dùng ảo đại diện cho người dùng có quyền truy cập thấp nhất và không có quyền truy cập vào shell. Nhóm nogroup có mục đích tương tự như người dùng nobody .

    Creating a directory for an NFS share

  5. Cấu hình tệp exports để chia sẻ thư mục đã tạo.

    sudo nano /etc/exports

    hoặc

    sudo vim /etc/exports

  6. Thêm dòng sau vào cuối tệp cấu hình:

    /srv/nfs/share1/ CLIENT_IP(rw,sync,no_subtree_check)

    Trong trường hợp của chúng ta, dòng chứa địa chỉ IP được phép của máy chủ ESXi là:

    /srv/nfs/share1/ 192.168.101.201(rw,sync,no_subtree_check)

    Bạn có thể cho phép truy cập cho tất cả các máy chủ trong mạng con bằng cách thêm dòng:

    /srv/nfs/share1/ 192.168.101.0/24(rw,sync,no_subtree_check)

    Bạn có thể thêm dòng tiếp theo để cho phép truy cập cho một máy chủ khác (địa chỉ IP).

    Lưu các thay đổi vào tệp cấu hình và thoát khỏi trình soạn thảo văn bản.

  7. Để kiểm tra xem dữ liệu đã được ghi vào tệp hay chưa, bạn có thể sử dụng lệnh:

    cat /etc/exports

  8. Áp dụng cấu hình mới bằng lệnh: `

    sudo exportfs -a

  9. ` Đảm bảo rằng tường lửa trên máy Linux chạy máy chủ NFS cho phép truy cập. Bạn có thể cấp quyền truy cập cho một địa chỉ IP cụ thể bằng lệnh như sau: `

    sudo ufw allow from IP to any port nfs

    ` Trong trường hợp của chúng ta: `

    sudo ufw allow from 192.168.101.201 to any port nfs

    ` Để cho phép truy cập từ tất cả các máy chủ trong cùng một mạng con: `

    sudo ufw allow from SUBNET to any port nfs

    ` Trong trường hợp của chúng ta, lệnh sẽ là: `

    sudo ufw allow from 192.168.101.0/24 to any port nfs

  10. ` Bạn có thể kiểm tra trạng thái tường lửa bằng lệnh: `

    sudo ufw status

  11. ` Khởi động lại máy chủ NFS để các thay đổi cấu hình có hiệu lực: `

    sudo systemctl restart nfs-kernel-server

  12. ` Chia sẻ NFS đã được cấu hình trên Linux.
  13. Sao chép một tệp từ bất kỳ thư mục nào trên máy Linux vào thư mục được chia sẻ qua NFS. Chúng tôi sao chép VM_file.txt vào chia sẻ NFS của mình và kiểm tra nội dung của thư mục sau đó:

    cp VM_file.txt /srv/nfs/share1/

    ls -al /srv/nfs/share1/

    Copying a file to a directory configured as an NFS share

Gắn kết kho dữ liệu NFS trong ESXi

Bạn cần thêm kho dữ liệu NFS vào ESXi sau khi cấu hình chia sẻ NFS. Trong ví dụ này, chúng tôi sử dụng VMware Host Client để thực hiện việc này.

Truy cập Storage > Datastores và nhấp vào New datastore.

Creating a new datastore to mount the NFS as a datastore

Trình hướng dẫn New datastore đã mở.

  1. Chọn Mount NFS datastore. Nhấp vào Next để tiếp tục.

    How to mount an NFS datastore in ESXi

  2. Cung cấp chi tiết kết nối NFS:
    • Tên: NFS-share (tên sẽ hiển thị làm tên kho dữ liệu)
    • Máy chủ NFS: 192.168.101.210
    • Chia sẻ NFS: /srv/nfs/share1/
    • Phiên bản NFS: NFS4

    Tên người dùng và mật khẩu là tùy chọn cho NFS4. Chúng tôi để trống hai trường này.

    Entering the details to mount an NFS datastore in ESXi

  3. Sẵn sàng hoàn tất. Kiểm tra cấu hình của bạn và nhấp vào Finish nếu mọi thứ đều chính xác.

Sao chép tệp từ máy ảo sang máy chủ

Kho dữ liệu NFS đã được gắn thành công. Bạn có thể kiểm tra điều này tại Storage > Datastores.

Bây giờ chúng ta có thể sao chép tệp từ máy ảo được lưu trữ trên chia sẻ NFS sang kho dữ liệu ESXi cục bộ (chuyển tệp từ máy ảo sang máy chủ).

  1. Nhấp vào Datastore Browser.

    Browsing the NFS datastore to copy a VM file

  2. Chọn kho dữ liệu NFS của bạn trong trình duyệt kho dữ liệu (NFS-share trong trường hợp của chúng tôi). Duyệt tệp cần thiết trong kho dữ liệu NFS. Chọn tệp cần thiết và nhấp vào Copy.

    How to copy a VM file from a virtual machine to an ESXi datastore using an NFS share

  3. Chọn đích đến. Chọn vị trí cần thiết trong kho dữ liệu đích nơi bạn muốn lưu trữ tệp đã sao chép (trong trường hợp của chúng tôi là `datastore10b `). Nhấp vào ` Copy`.

    Copying a VM file to an ESXi datastore in VMware Host Client

    Ngoài ra, bạn có thể sao chép tệp cần thiết qua dòng lệnh trên máy chủ ESXi:

    cp /vmfs/volumes/NFS-share/VM_file.txt /vmfs/volumes/datastore10b/VM_file-copy.txt

Sử dụng Giao diện Web VMware để Tải lên/Tải xuống Tệp

Bạn có thể sử dụng giao diện web của VMware Host Client hoặc Ứng dụng VMware vSphere Client để tải lên/tải xuống tệp từ/đến kho dữ liệu ESXi. Giao diện web có sẵn trên bất kỳ máy vật lý hoặc ảo nào có cài đặt trình duyệt web và kết nối mạng với máy chủ ESXi. Do đó, bạn có thể mở giao diện web này trực tiếp từ một máy ảo nếu hệ điều hành khách có giao diện đồ họa (GUI) hoặc sử dụng bất kỳ máy cục bộ nào làm máy trung gian để chuyển tệp từ máy ảo sang máy chủ và ngược lại.

How to copy a VM file - downloading a virtual disk file from an ESXi datastore in VMware Host Client

Có một cách thay thế nhưng phức tạp hơn để chuyển tệp từ máy ảo (VM) sang VMware ESXi:

  1. Tải xuống đĩa ảo của máy ảo (VM) về máy cục bộ hoặc máy khác.
  2. Trích xuất các tệp cần thiết từ đĩa ảo của máy ảo (.vmdk-flat.vmdk) sang máy cục bộ. Ngoài ra, bạn có thể gắn đĩa ảo vào ổ đĩa ảo nếu đã cài đặt VMware Workstation.
  3. Tải lên các tệp đã trích xuất hoặc các tệp từ đĩa ảo đã gắn vào kho dữ liệu của máy chủ ESXi bằng một trong các phương pháp được giải thích ở trên (trong VMware Host Client, vSphere Client hoặc SCP client, v.v.).

    How to map a VMDK file as a virtual disk drive in Windows

Đọc bài viết chi tiết về Cách trích xuất tệp từ đĩa ảo VMDK.

Sử dụng tệp ISO để chuyển dữ liệu sang máy ảo (VM)

Nếu kết nối mạng không khả dụng cho máy ảo (VM), bạn có thể chuyển tệp sang các máy ảo VMware bằng tệp hình ảnh ISO:

  1. Tạo tệp hình ảnh ISO bằng phần mềm như Ultra ISO cho Windows.
  2. Ghi các tệp cần thiết vào tệp hình ảnh ISO trên máy tính cục bộ hoặc máy tính khác. Bạn có thể sao chép tệp từ ESXi bằng một trong các phương pháp trên và ghi chúng vào tệp hình ảnh ISO.
  3. Gắn tệp hình ảnh ISO vào máy ảo bằng ổ đĩa CD/DVD ảo của máy ảo (bạn có thể gắn tệp ISO trực tiếp từ máy tính cục bộ hoặc tải tệp ISO lên kho dữ liệu ESXi trước khi thực hiện việc này). Sử dụng VMware Host Client, VMware vSphere Client, VMware Workstation hoặc VMware Remote Console để gắn tệp ISO vào máy ảo ESXi.

Phương pháp này không thể được sử dụng để chuyển tệp từ máy ảo sang máy chủ vì máy ảo hoạt động với đĩa CD/DVD ảo ở chế độ chỉ đọc.

Kết luận

Có nhiều phương pháp để sao chép tệp từ máy chủ sang máy ảo và ngược lại. Một số phương pháp yêu cầu kết nối mạng, trong khi một số khác vẫn hoạt động ngay cả khi không có kết nối mạng. Bạn có thể chọn phương pháp phù hợp với tình huống cụ thể của mình và kết hợp các phương pháp này. Hãy nhớ sao lưu các máy ảo của bạn để tránh mất dữ liệu. Với NAKIVO Backup and Replication, bạn có thể bảo vệ các máy ảo trong VMware vSphere và khôi phục các tệp riêng lẻ trực tiếp từ bản sao lưu máy ảo.

Hãy thử NAKIVO Backup & Replication

Hãy thử NAKIVO Backup & Replication

Đăng ký dùng thử miễn phí để khám phá toàn bộ các tính năng bảo vệ dữ liệu của giải pháp. 15 ngày miễn phí. Không có bất kỳ giới hạn nào về tính năng hay dung lượng. Không cần thẻ tín dụng.

People also read