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 chạy trong các 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.
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 điểm qua các thuật ngữ:
- Một máy chủ là một máy vật lý trên đó đượ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, vốn 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 đều 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 (VM) 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 (VM) 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 máy ảo sang máy chủ
Thư mục chia sẻ là 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 (nơi cài đặt VMware Workstation) và các máy ảo đ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 cùng 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 thông qua tương tác giữa máy chủ và hệ điều hành khách bằng VMware Tools mà không cần sử dụng mạng.
- Chọn một máy ảo mà bạn muốn cấu hình tính năng chia sẻ tệp VMware. Chúng tôi chọn một trong các máy ảo Windows của mình.
- Nhấp vào
VM > Settings(Chỉnh sửa cài đặt máy ảo) trong giao diện người dùng (GUI) của VMware Workstation. - Trong cửa sổ
Virtual Machine Settings, chọn tabOptionsvà nhấp vàoShared Folders. Trong phầnFolder sharing, chọnAlways 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. - Nhấp vào
Addđể chọn thư mục sẽ được sử dụng làm thư mục chia sẻ.
- Nhập đường dẫn đến thư mục cần chia sẻ trên máy chủ hoặc nhấp vào
Browsevà chọn thư mục cần thiết. Chúng ta chọnC:tempshare-VMNhập tên cho thư mục chia sẻ, ví dụ:
share-VMNhấp vào
Next.
- Chọn
Enable this share. Nếu bạn muốn các máy ảo (VM) truy cập thư mục chia sẻ ở chế độ chỉ đọc, hãy chọn hộp kiểmRead-only. Nhấp vàoFinish.
- 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
Optionscủ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 bên cạnh tên tệp đã được chọn.Nhấp vào
OKđể lưu cài đặt.
- 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. - Nhấp vào
Network(My Network Places) trongMy Computer(This PC) hoặc Windows Explorer để xem các máy tính có sẵn trong mạng. - Chọn
vmware-hostlàm tên máy tính trên đó 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ý (máy chủ) của bạn có chứa thư mục chia sẻ.
- Nhấp vào
Shared Foldersvà chọn thư mục chia sẻ cần thiết (share-VMtrong 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à từ máy ảo sang máy chủ. Trong ví dụ này, 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.

Đố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ư được hiển thị bên dưới:
- Trong Linux với kernel trước phiên bản 4.0:
mount -t vmhgfs .host:/ /home/user1/shares - Trên hệ điều hành 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 máy ảo (VM), hãy thêm các dòng tương ứng kèm chú thích và cấu hình tại /etc/fstab , ví dụ:
#
Thư mục chia sẻ VMware để chuyển tệp giữa máy khách VMware và máy chủ
.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 khả dụng 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 10 và Windows 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ỏ (SMB) .
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 sang máy ảo từ máy chủ
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 đồ họa (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à thao tác kéo thả. Trong ví dụ này, VMware Workstation được cài đặt trên máy chủ Windows.
- 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.
- Nhấp vào
Edit virtual machine settings(VM > Settings).
- Chọn tab
Optionsvà nhấp vàoGuest 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ổ.
Bảng tạm chia sẻ trong VMware ESXi
Đối với các máy ảo (VM) 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 và thả hoặc thông 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 và dán văn bản giữa một máy ảo chạy trên ESXi và máy tính 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 ). Chức năng sao chép và dán cũng như kéo và 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 một 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 để kích hoạt khay nhớ tạm chung nhằm sao chép và dán dữ liệu văn bản:
- 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.
- 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àoEdit VM settingsvà chọn tabVM options.Mở rộng phần
Advanced Settingsvà nhấp vàoEdit Configuration.
- 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 VMX cấu hình máy ảo). Nhấp vào
Add parameter.
- Thêm ba tham số này:
isolation.tools.copy.disable FALSEisolation.tools.paste.disable FALSEisolation.tools.setGUIOptions.enable TRUE - Nhấp vào
OKvà lưu cài đặt.
Ngoài ra, bạn có thể chỉnh sửa thủ công tệp VMX chứa cấu hình máy ảo nằm trên kho dữ liệu ESXi trong thư mục máy ảo.
- Đăng nhập vào giao diện dòng lệnh ESXi trực tiếp hoặc qua SSH.
- Truy cập vào thư mục máy ảo (thư mục chứa các tệp máy ảo 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/
- 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.vmxvi Windows-VM.vmx - Thêm ba tham số được hiển thị ở trên vào cuối tệp cấu hình này.
- Lưu các thay đổi và đóng tệp (thoát khỏi trình soạn thảo văn bản).

Giờ đây, chúng ta có thể sao chép và dán văn bản giữa máy 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 truyền qua USB, 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 ý: Phải cài đặt VMware Tools 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 (VM) trong 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 các máy chủ Windows và Linux (giao diện được thống nhất):
- Bật nguồn cho máy ảo.
- 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ủ.
- Cửa sổ
New USB Device Detectedsẽ 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.
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 chuyển tiếp USB sẽ không hiển thị tự động. Bạn có thể kết nối thiết bị USB với máy ảo (ngắt kết nối khỏi máy chủ) qua menu:
Truy cập
VM > Removable Devices > Your USB Storage Device Name > Connect (Disconnect from host).Trong ví dụ này, tên ổ đĩa flash USB là Kingston DataTraveler 2.0.

- 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 Computervà chọnManage. - Truy cập
Computer Management > Device Manager and Computer Management > Disk Managementtrong 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 chạy 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.
- Nhấp chuột phải vào
- Sau khi thiết bị lưu trữ USB đã được gắn vào máy ảo 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.

- 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).
- Hiện tại, một 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 chạy Windows có cài đặt VMware Workstation). Chúng ta có thể chuyển các tệp đã được sao chép từ máy ảo (VM) sang ổ USB flash sang máy chủ của bạn.
Chuyển tiếp USB từ VMware Workstation sang các máy ảo ESXi
Bạn có thể sử dụng một ổ USB flash được cắm vào máy chủ ESXi và cắm vào máy tính Windows hoặc Linux cục bộ của bạn (đã 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 ổ USB flash này với một máy ảo ESXi. Trong trường hợp đầu tiên, tính năng truyền qua USB kết nối từ máy chủ được sử dụng; trong trường hợp thứ hai, tính năng truyền qua USB kết nối từ 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 phiên bản 7.0 (sử dụng tính năng truyền qua USB kết nối từ 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:
- Máy ảo phải được tắt nguồn để chỉnh sửa cài đặt máy ảo.
- Đảm bảo rằng
USB controllercó 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-VMtrong trường hợp này), nhấp vàoEdit Settingsvà chọn tabVirtual Hardware.
- 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 ta. Nhấp vào
File > Connect to a servertrong VMware Workstation để kết nối với máy chủ ESXi từ xa.
- 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.
- 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ộ.
- Chọn một máy ảo đ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 (guest OS) của máy ảo đã chọn. - 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 tính 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.

- Giờ đây, chúng ta có thể thấy ổ đĩa flash 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.
- Gán ký tự ổ đĩa cho phân vùng của ổ đĩa flash USB đã kết nối nếu ký tự ổ đĩa chưa được gán. Sao chép các tệp cần thiết giữa máy ảo và ổ đĩa flash USB. Bạn có thể chuyển tệp vào và ra khỏi máy ảo.

- 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 (GUI) của 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 mà 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ế liên quan đến các hệ thống tệp được hỗ trợ có thể gắn vào ESXi. Ổ 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ó một số 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 có dung lượng lớn hơn 4 GB. Tuy nhiên, các giới hạn này vẫn đủ để 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
Trước tiên, hãy tạo một phân vùng mới trên ổ USB của chúng ta và định dạng phân vùng này bằng hệ thống tệp VFAT. Chúng ta có thể thực hiện điều này bằng cách kết nối ổ USB đã 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ủ). Ngoài ra, chúng ta có thể cắm ổ USB 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 cho ESXi. Các lệnh cho Windows Server 2008R2, Windows 10 và các phiên bản Windows mới hơn đều giống nhau.
- Để đảm bảo ổ đĩa flash USB đã được kết nối với máy tính Windows của bạn, hãy nhấp chuột phải vào
My ComputerhoặcThis PC(hoặc chạydiskmgmt.msctừ CMD) để mởDisk Management. - Mở dòng lệnh Windows:
Start > Run > cmd - Gõ
diskpartvào dòng lệnh và nhấnEnter.Bạn sẽ thấy dấu nhắc lệnh diskpart:
Diskpart - Liệt kê các đĩa được kết nối với máy tính Windows của bạn:
list diskTìm ổ đĩa flash 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 1là số của ổ đĩa flash USB (xem ảnh chụp màn hình bên dưới). - Chọn ổ đĩa flash USB của bạn bằng cách chỉ định số đĩa tương ứng mà bạn đã lấy từ kết quả lệnh trên (
disk 1trong trường hợp của chúng tôi).select disk 1 - Liệt kê các phân vùng trên ổ USB đã chọn:
list partitionỔ USB của chúng tôi có một phân vùng (
Partition 1) (xem ảnh chụp màn hình bên dưới). Việc có một phân vùng trên ổ USB là trường hợp phổ biến nhất.
Tiếp theo, chúng ta cần xóa các phân vùng trên ổ USB.
Lưu ý quan trọng: Tất cả dữ liệu trên ổ USB sẽ bị xóa. Bạn có thể sao chép dữ liệu từ ổ USB nếu cần trước khi thực hiện các bước tiếp theo.
- Chọn một phân vùng trên ổ USB sắp bị xóa:
select partition 1 - Chạy lệnh để xóa phân vùng đã chọn:
delete partition - Chọn lại ổ đĩa là ổ USB của bạn:
select disk 1
- Tạo một phân vùng mới với hệ thống tệp VFAT. Trong ví dụ này, chúng ta tạo một phân vùng 4 GB trên ổ USB. Lưu ý rằng bạn không thể lưu trữ các tệp lớn hơn 4 GB trên hệ thống tệp 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 - Định dạng phân vùng vừa tạo theo cách này để đảm bảo tương thích với ESXi:
format fs=fat quick
- 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 nén 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 sang ổ đĩ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:
- Cấu hình được thực hiện trong giao diện dòng lệnh. Do đó, bạn phải kích hoạt quyền 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 > Managevà chọn tabServices. Nhấp chuột phải vàoTSM-SSHvà nhấp vàoStartđể khởi động dịch vụ. Bạn có thể kích hoạt dịch vụ này vĩnh viễn.

- Để kích hoạt truy cập SSH từ xa trong DCUI, hãy truy cập
- 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.
- Dừng dịch vụ USB arbitrator:
/etc/init.d/usbarbitrator stopDịch vụ USB arbitrator tự động kích hoạt tính năng truyền qua USB cho các máy ảo nằm trên máy chủ ESXi (bạn chỉ cần chọn một ổ USB flash 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 startchkconfig usbarbitrator on
- Các lệnh tùy chọn để kiểm tra các thiết bị USB được kết nối với máy chủ ESXi:
lsusbesxcli storage core device list | grep -i usbesxcli storage filesystem listBạn có thể truy cập
/var/log/usb.logđể kiểm tra trạng thái của thiết bị USB. - 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.
- 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 ta là
mpx.vmhba32:C0:T0:L0:(xem ảnh chụp màn hình bên dưới).Do đó, địa chỉ/vị trí đầy đủ của đĩa là:
/dev/disks/mpx.vmhba32:C0:T0:L0:
- 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à:
/dev/disks/mpx.vmhba32:C0:T0:L0:1 - 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
Tabđể xem các mục có sẵn trong thư mục volumes. Thư mục/volumes/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.ls -al /vmfs/volumes/ [press Tab]Khối lượng trên ổ USB flash được gọi là
NO NAME
- Kiểm tra nội dung của thư mục gốc trên ổ USB flash
ls -al /vmfs/volumes/NO NAME/Tệp nén ZIP của chúng ta hiện có trên khối lượng ổ USB flash.

- Chúng ta đã tạo thư mục
installtrên kho dữ liệu ESXi (datastore10a) bằng các lệnh:cd /vmfs/volumes/datastore10amkdir installTrong ảnh chụp màn hình 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 flash sau này.

- Sao chép tệp ZIP từ ổ USB vào thư mục ` ` trong thư mục cài đặt ` ` trên máy chủ ESXi của chúng ta (tại `
datastore10a`).cp /vmfs/volumes/NO NAME/net-tulip.zip /vmfs/volumes/datastore10a/install/ - Kiểm tra xem tệp đã được sao chép chưa:
ls -al /vmfs/volumes/datastore10a/install/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 (VM) hoặc sang máy khác từ ổ USB này.
- Kiểm tra nội dung của thư mục máy ảo:
ls -al /vmfs/volumes/datastore10a/Windows-VM/ - Sao chép tệp cấu hình `
Windows-VM.vmx` từ kho dữ liệu ESXi sang ổ USB:cp /vmfs/volumes/datastore10a/Windows-VM/Windows-VM.vmx /vmfs/volumes/NO NAME/ - Kiểm tra xem tệp đã được sao chép vào ổ USB chưa:
ls -al /vmfs/volumes/NO NAME/
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ề Chức năng chuyển tiếp USB cho ESXi 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 đang chạy trên máy chủ ESXi.
Sử dụng PowerCLI để chuyển tệp sang các 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 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á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.
- Kết nối với máy chủ ESXi hoặc vCenter Server. Trong ví dụ này, chúng ta sẽ kết nối với máy chủ ESXi.
Connect-VIServer 192.168.101.201
- Để tránh cảnh báo chứng chỉ, hãy chạy lệnh:
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false
Copy-VMGuestFile (Máy ảo ESXi cục bộ > )
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.

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.

Copy-VMGuestFile (Máy ảo ESXi > Cục bộ)
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 một 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 sao chép (từ hệ điều hành khách của máy ảo ESXi sang 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

Bạn có thể xem các ví dụ về cách 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 tin đến/từ kho dữ liệu ESXi. Có 2 cách để sử dụng cmdlet này nhằm sao chép tệp vào kho dữ liệu (datastore) của 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áy ảo (VM) đang chạy 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-VMGuestFilevà sau đó sao chép các tệp này từ máy cục bộ sang máy ảo bằng lệnhCopy-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 <server_name_or_IP>
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):
- Lấy thông tin về kho dữ liệu:
Get-Datastore "datastore10a" - Lấy đối tượng kho dữ liệu ESXi:
$datastore = Get-Datastore "datastore10a" - 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 "" - Đặt kho dữ liệu của bạn làm vị trí hiện tại:
Set-Location ds: - Để 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
- Bạn có thể đặt thư mục máy ảo làm vị trí mới. Trong trường hợp của chúng ta, thư mục này là
Windows-VMSet-Location "Windows-VM" - Lệnh để sao chép tệp máy ảo (tức là tệp cấu hình VMX của máy ảo) từ kho dữ liệu ESXi đã định nghĩa sang thư mục tạm trên máy hiện tại:
Copy-DatastoreItem -Item ds:Windows-VMWindows-VM.vmx -Destination c:tempTrong đó:
ds:Windows-VMWindows-VM.vmxlà đường dẫn đến tệp cần sao chép vàds:là đường dẫn tắt đã định nghĩa đến kho dữ liệu (datstore10atrong trường hợp này).
- Nếu bạn đã kết nối với vCenter (chứ 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 đây cùng 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 vào 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ột máy chủ ESXi), hãy sử dụng lệnh:
Copy-DatastoreItem -Item c:tempdarwin.iso -Destination ds:installChúng ta sao chép
darwin.iso(đây là hình ảnh có chứa VMware Tools dành cho macOS) từ một máy tính Windows vào thư mục cài đặt trên kho dữ liệu (datastore) của ESXi.
- 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 tính 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 (VM) sang máy chủ và ngược lại.
Các lệnh để sao chép tệp từ máy ảo (VM) sang máy chủ trong VMware Workstation
Nếu bạn sử dụng VMware Workstation (một trình ảo hóa 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.
- Truy cập vào thư mục VMware Workstation:
cd "C:Program Files (x86)VMwareVMware Workstation" - Sử dụng lệnh sau để sao chép một 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 <Path to vmx file> <Path in guest> <Path on host>Trong trường hợp này, lệnh chính xác là:
vmrun copyFileFromGuestToHost d:virtualWinServer2019WinServer2019.vmx "c:temptest.txt" "c:tempcopied" - Nhập tên người dùng và mật khẩu khi được yêu cầu (người dùng phải có đủ quyền truy cập vào tệp đã định).
Trong đó:
d:virtualWinServer2019WinServer2019.vmxlà đĩa ảo của máy ảo mà từ đó chúng ta sao chép tệp.c:temptest.txtlà tệp được lưu trữ trên đĩa ảo của máy ảo; đây là tệp mà chúng ta sao chép.c:tempcopiedlà thư mục để lưu 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 – đây 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"
Để 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 <Path to vmx file> <Path on host> <Path in guest>
Lệnh cụ thể trong ví dụ này là:
vmrun copyFileFromHostToGuest d:virtualWinServer2019WinServer2019.vmx "c:temptest3.txt" "c:temptest3-copy.txt"

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 nhờ 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. Có thể kích hoạt máy chủ SCP và SSH trên các máy Linux và ESXi chỉ bằng vài bước.
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.
- Để kích hoạt máy chủ SSH trong VMware Host Client, hãy truy cập
Host > Manage > Servicesvà khởi động dịch vụTSM-SSH. - Phải cho phép SSH trong tường lửa ESXi để cho phép lưu lượng SCP nhằm 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
Networkingtrong ngănNavigator, chọn tabFirewall rulesvà chọnSSH Client. - Nhấp vào
Actions > Enableđể kích hoạt quy tắc tường lửa.

- Truy cập
- Để 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 22Trong đó:
192.168.101.202là đị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 sẽ 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/

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/

Nếu máy chủ SSH lắng nghe trên cổng khác với cổng 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ộ, đồng thời cho phép bạn chuyển tệp từ máy ảo (VM) sang máy chủ (host). Dưới đây chúng tôi sẽ giải thích cách thực thi các lệnh tương ứng trên 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 điều 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/

Sao chép tệp tin sang 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 tin máy ảo từ máy Linux từ xa sang kho dữ liệu (datastore) trên máy chủ ESXi cục bộ. Hãy sao chép tệp tin VM_file.txt từ máy Linux sang 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/

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ột 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) bằng lệnh trên. Nếu bạn muốn định tuyến lưu lượng qua máy cục bộ nơi bạn đang chạy lệnh, hãy sử dụng cờ -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 đều giống nhau.
Ví dụ về lệnh cần chạy trên máy Linux cục bộ để 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ũ của 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. Để thực hiện đ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í.
- Khởi 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.

- Chọn giao thức, ví dụ:
- 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. - 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.

Bạn có thể sao chép tệp từ kho dữ liệu (datastore) 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 thư mục chia sẻ trong Windows Explorer và ánh xạ thư mục chia sẻ này thành một ổ đĩ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.

Sử dụng chia sẻ NFS
Bạn có thể sử dụng chia sẻ NFS để chuyển tệp tin sang các 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). Hệ thống này hỗ trợ chia sẻ NFS (bản địa cho Linux) và việc 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 để truyề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 đến 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 hệ thống 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 để thực thi 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.
- Cập nhật kho lưu trữ trong Linux:
sudo apt-get update - Cài đặt gói máy chủ NFS trên Linux:
sudo apt-get install nfs-kernel-server -y - 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/ - Đặ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/nobodylà 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 shell. Mục đích của nhómnogrouptương tự như người dùngnobody.
- Cấu hình tệp exports để chia sẻ thư mục đã tạo.
sudo nano /etc/exportshoặc
sudo vim /etc/exports - 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.
- Để 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 - Áp dụng cấu hình mới bằng lệnh:
sudo exportfs -a - Đả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 nfsTrong 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 nfsTrong 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 - Bạn có thể kiểm tra trạng thái tường lửa bằng lệnh:
sudo ufw status - 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 - Chia sẻ NFS đã được cấu hình trên Linux.
- 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 ta sao chép
VM_file.txtvào thư mục chia sẻ NFS 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/
Gắn kết kho dữ liệu NFS vào 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 ta 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.

Trình hướng dẫn New datastore đã được mở.
- Chọn
Mount NFS datastore. Nhấp vàoNextđể tiếp tục.
- Cung cấp thông tin gắn kết NFS:
- Tên:
NFS-share(tên sẽ được 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 đối với NFS4. Chúng tôi để trống hai trường này.

- Tên:
- Sẵn sàng hoàn tất. Kiểm tra cấu hình của bạn và nhấp vào
Finishnế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 các 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ủ).
- Nhấp vào
Datastore Browser.
- Chọn kho dữ liệu NFS của bạn trong trình duyệt kho dữ liệu (
NFS-sharetrong trường hợp của chúng ta). Duyệt tìm tệp cần thiết trong kho dữ liệu NFS. Chọn tệp cần thiết và nhấp vàoCopy.
- 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 tệp đã sao chép (trong trường hợp của chúng tôi là
datastore10b). Nhấp vàoCopy.
. 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 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 máy ảo nào có cài đặt trình duyệt web và có 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 (VM) nếu hệ điều hành khách (guest OS) 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.

Có một phương pháp thay thế nhưng phức tạp hơn để chuyển tệp tin từ máy ảo sang VMware ESXi:
- Tải xuống đĩa ảo của máy ảo về máy cục bộ hoặc một máy khác.
- Giải nén các tệp tin cần thiết từ đĩa ảo này (
.vmdkvà-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. - Tải lên các tệp đã giải nén hoặc các tệp từ đĩa ảo đã gắn vào kho dữ liệu (datastore) 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.).

Đọc bài viết chi tiết trên blog 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 cách sử dụng tệp hình ảnh ISO:
- Tạo tệp hình ảnh ISO bằng phần mềm như Ultra ISO cho Windows.
- 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ộ của bạn hoặc trên một 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 nêu trên và ghi chúng vào tệp hình ảnh ISO.
- Gắn tệp hình ảnh ISO vào máy ảo (VM) 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 thao tá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ể sử dụng 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 của mình trong VMware vSphere và khôi phục từng tệp riêng lẻ trực tiếp từ bản sao lưu máy ảo.