Virtualization

Hướng dẫn cài đặt VMware Tools trên Ubuntu và CentOS

Bạn vừa thuê VPS Linux chạy trên nền tảng VMware, SSH vào và thấy mọi thứ chậm chạp, copy-paste không được, không thể resize màn hình console? Rất có thể bạn đang thiếu VMware Tools. Đây là bộ driver và service quan trọng giúp hệ điều hành khách (guest OS) giao tiếp hiệu quả với hypervisor VMware. Bài viết này sẽ hướng dẫn bạn chi tiết cách cài đặt VMware Tools trên Ubuntu 24.04 LTS và CentOS Stream 9 (tương thích AlmaLinux 9 / Rocky Linux 9), hai dòng OS phổ biến trên các gói VPS và máy chủ riêng hiện nay.

Yêu cầu trước khi bắt đầu

  • Một máy chủ hoặc VPS chạy Ubuntu 24.04 LTS / CentOS Stream 9 / AlmaLinux 9 / Rocky Linux 9, đã cài đặt hệ điều hành.
  • Quyền root hoặc người dùng sudo (không dùng root trực tiếp là thói quen tốt).
  • Kết nối Internet ổn định để tải gói từ kho lưu trữ hoặc từ VMware.
  • Truy cập VMware vSphere / vCenter / Workstation để mount ISO Tools nếu cần cài thủ công.

Vì sao cần VMware Tools?

VMware Tools không phải một tiện ích xa xỉ, nó là lớp driver nền tảng. Nếu thiếu, bạn sẽ gặp hàng loạt vấn đề: hiệu năng I/O đĩa và mạng kém, không thể tắt/mở máy đúng cách từ vSphere, không có timestamps chính xác trong log, và màn hình console không thể tự động resize. Về bản chất, VMware Tools cung cấpdriver đồ họa SVGA, driver mạng vmxnet3, driver SCSI, và công cụ đồng bộ thời gian. Trên các VPS chạy workload sản xuất (web server, database, CI/CD), việc thiếu VMware Tools có thể gây ra hiện tượng "stall" ngẫu nhiên trên đĩa, một lỗi khó lần nhưng dễ khắc phục.

Hiện tại, VMware khuyến nghị dùng open-vm-tools (gói mã nguồn mở) thay vì bộ Tools đóng gói cũ. Dòng lệnh cài đặt đơn giản hơn nhiều so với 10 năm trước, không cần mount CD-ROM, không cần biên dịch kernel module bằng tay.

Bước 1, Cài đặt open-vm-tools trên Ubuntu 24.04

Trên Ubuntu, cài đặt rất nhanh với apt. Đầu tiên, cập nhật danh sách gói:

sudo apt update
sudo apt install open-vm-tools -y

Gói open-vm-tools sẽ kéo theo các module kernel cần thiết (nếu kernel mới, chúng thường đã có sẵn). Nếu bạn chạy giao diện đồ họa (rất hiếm trên VPS), hãy cài thêm gói desktop:

sudo apt install open-vm-tools-desktop -y

Nhưng với hầu hết máy chủ dòng lệnh, chỉ cần gói core là đủ.

Kiểm tra:

systemctl status open-vm-tools

Bạn sẽ thấy trạng thái active (running). Nếu chưa chạy, kích hoạt thủ công:

sudo systemctl enable --now open-vm-tools

Xác nhận driver đã được load bằng lệnh:

lsmod | grep vmw

Kết quả nên có các module như vmw_vmci, vmxnet3, vmw_balloon.

Bước 2, Cài đặt open-vm-tools trên CentOS Stream 9 / AlmaLinux 9

Trên CentOS Stream 9 (và các dẫn xuất RHEL 9), EPEL là kho cần thiết, nhưng open-vm-tools đã có trong AppStream, chỉ cần dùng dnf:

sudo dnf install open-vm-tools -y

Không cần cài EPEL riêng cho gói này. Nếu bạn dùng giao diện đồ họa, thêm gói Desktop:

sudo dnf install open-vm-tools-desktop -y

Kích hoạt và khởi động service:

sudo systemctl enable --now vmtoolsd

Kiểm tra trạng thái và các module:

systemctl status vmtoolsd
lsmod | grep vmw

Output mong đợi: vmtoolsd.service active, và các module kernel xuất hiện.

Bước 3, Xác minh VMware Tools hoạt động

Sau khi cài xong, bạn cần kiểm tra từ phía VMware. Dùng lệnh sau trên guest OS để đọc thông tin tools:

vmware-toolbox-cmd stat

Lệnh này trả về trạng thái "enabled" và version tools. Bạn cũng có thể kiểm tra từ vSphere Client: chọn máy ảo, tab Summary, mục VMware Tools sẽ hiển thị "Running", version tương ứng. Nếu còn hiển thị "Not running" hoặc "Not installed" sau khi đã cài, hãy kiểm tra lại service và reboot.

sudo reboot

Sau reboot, kiểm tra lại lần nữa, nhiều module yêu cầu khởi động lại mới được kích hoạt đầy đủ.

Bảng thông số và module chính

Module / DriverChức năngLệnh kiểm tra
vmw_vmciGiao tiếp giữa host và guest (VMCI)lsmod | grep vmw_vmci
vmxnet3Driver mạng ảo hóa hiệu năng caolsmod | grep vmxnet3
vmw_balloonQuản lý bộ nhớ động (balloon driver)lsmod | grep vmw_balloon
vmw_pvscsiDriver SCSI paravirtualizedlsmod | grep vmw_pvscsi

Xử lý lỗi thường gặp

1. Service không chạy sau cài đặt.

Nguyên nhân: Có thể do xung đột với Tools cũ hoặc kernel chưa nhận module. Kiểm tra log:

journalctl -u open-vm-tools -n 50

Trên CentOS: journalctl -u vmtoolsd -n 50. Nếu lỗi "kernel module not found", hãy đảm bảo kernel-devel và gcc được cài (thường có sẵn trên Ubuntu, nhưng trên CentOS có thể thiếu):

sudo dnf install kernel-devel gcc make -y
sudo systemctl restart vmtoolsd

2. Lỗi "VMware Tools is not running" trên vSphere dù đã cài.

Kiểm tra firewall trên guest: các port dùng cho VMCI (thường là 902, 903) có bị chặn không? Trên CentOS, tạm thời tắt firewalld để thử:

sudo systemctl stop firewalld
systemctl restart vmtoolsd

Nếu chạy, hãy mở port 902 cho giao tiếp host-guest.

3. Copy-paste giữa host và guest không hoạt động.

Trên Ubuntu, nếu bạn cài open-vm-tools-desktop và đã reboot nhưng vẫn không copy-paste được, kiểm tra xem biến môi trường XDG_SESSION_TYPE có phải "x11" hay "wayland". Hiện tại, open-vm-tools hỗ trợ copy-paste tốt hơn trên X11. Chuyển sang X11 nếu cần.

Câu hỏi thường gặp

Có cần cài VMware Tools bản đóng gói từ VMware (bản .tar) thay vì open-vm-tools không?

Không. VMware khuyến nghị dùng open-vm-tools từ năm 2018. Bản đóng gói (.tar) vẫn tồn tại nhưng chỉ dùng trong trường hợp đặc biệt (guest OS quá cũ không hỗ trợ open-vm-tools). Với Ubuntu 24.04 và CentOS Stream 9, hãy dùng open-vm-tools.

Khi nào cần cài open-vm-tools-desktop?

Chỉ khi bạn có giao diện đồ họa (desktop environment) trên guest OS, ví dụ Ubuntu Desktop, CentOS với GNOME. Trên VPS dòng lệnh (99% trường hợp), chỉ cần gói core là đủ.

Sau khi cài xong, có cần reboot không?

Có, nên reboot để đảm bảo các module kernel được load đầy đủ. Nếu không reboot, một số driver (như vmxnet3) có thể không active ngay.

Làm sao để biết VPS của mình có đang chạy trên VMware không?

Dùng lệnh: sudo dmidecode -s system-product-name. Nếu trả về "VMware Virtual Platform", bạn đang ở trên VMware. Bạn cũng có thể kiểm tra bằng lshw hoặc dmesg | grep -i vmware.

Có cần uninstall VMware Tools cũ trước khi cài open-vm-tools không?

Nếu bạn đang dùng bản .tar cũ, hãy gỡ bằng script vmware-uninstall-tools.pl trước. Nếu dùng gói open-vm-tools cũ từ apt/dnf, chỉ cần nâng cấp lên bản mới: sudo apt upgrade open-vm-tools hoặc sudo dnf update open-vm-tools là đủ.

Bài viết liên quan

Lưu ý: Bài viết mang tính tham khảo, tổng hợp kiến thức chung. Mỗi hệ thống, hạ tầng và nhu cầu có đặc thù riêng, nên kiểm thử trong môi trường an toàn và tham vấn kỹ sư trước khi triển khai thực tế.