Việc không thể dễ dàng chạy các ứng dụng Windows phổ biến trên Linux từ lâu đã là một rào cản đối với việc áp dụng rộng rãi Linux. Mặc dù hầu hết các ứng dụng sẽ chạy với Wine hoặc trong máy ảo VirtualBox, nhưng các giải pháp này rất tẻ nhạt và có thể yêu cầu rất nhiều thao tác cấu hình.
Với WinApps, bạn có thể dễ dàng quản lý và chạy phần mềm Windows trên Linux, thậm chí tích hợp nó vào hệ thống và menu ngữ cảnh.
Thiết lập máy ảo trước khi cài đặt WinApps
Trước khi cài đặt WinApps cho Linux, bạn cần có một máy ảo KVM chạy Windows. Cách dễ nhất để làm điều này là cài đặt Virtual Machine Manager.
sudo apt-get install virt-manager
...và thêm người dùng của bạn vào nhóm libvirt:
sudo usermod -aG libvirt username
Tải xuống driver KVM VirtIO ISO bằng cách sử dụng:
wget https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso
Khởi động Virtual Machine Manager, sau đó từ menu, chọn Edit > Preferences. Chọn hộp Enable XML editing.
Đóng hộp thoại, sau đó nhấp vào biểu tượng Create a new virtual machine.
Chọn Local media install, sau đó chọn ISO của bạn và xem qua trình hướng dẫn. Giá trị duy nhất bạn cần thay đổi là tên máy, cần được gọi là "RDPWindows" để WinApps có thể phát hiện ra nó và đảm bảo bạn chọn hộp Customise configuration before install.
Sau khi nhấp vào Finish, bạn sẽ cần thực hiện cấu hình bổ sung trước khi cài đặt Windows:
- Trong phần CPU, đánh dấu vào ô Copy host CPU configuration
- Vẫn trong phần CPU, chuyển sang tab XML và đảm bảo rằng phần clock có nội dung:
<clock offset='localtime'> <timer name='hpet' present='yes'/> <timer name='hypervclock' present='yes'/> </clock>
- Trong Memory, giảm mức cấp phát hiện tại xuống 1024MB
- Trong Boot Options, chọn hộp Start virtual machine on host boot up
- Trong SATA Disk 1, chọn "VirtIO" làm disk bus
- Trong phần NIC, đặt Device model thành "virtio"
- Nhấp vào nút Add Hardware ở dưới cùng bên trái của màn hình, sau đó chọn "CDROM" làm loại thiết bị
- Nhấp vào Manage, sau đó chọn file "virtio-win.iso" mà bạn đã tải xuống trước đó
Bây giờ, bạn đã sẵn sàng để bắt đầu cài đặt Windows, vì vậy hãy nhấn nút Begin Installation.
Quá trình cài đặt sẽ diễn ra như trên bất kỳ thiết bị nào khác cho đến khi bạn được hỏi: "Where do you want to install Windows?". Không có vị trí nào vì Windows không có driver cho máy ảo của bạn.
Nhấp vào Load Driver > Browse. File ISO virtio-win sẽ được mount dưới dạng ổ, vì vậy hãy chọn file đó, điều hướng đến AMD64 > w10, sau đó chọn driver w10.
Driver sẽ cài đặt và bạn có thể tiếp tục quá trình thiết lập Windows như bình thường.
Cuối cùng, mở File Explorer và tìm ISO virtio-win, sẽ được mount dưới dạng ổ. Mở nó, sau đó nhấp đúp vào virt-win-gt-64.exe và nhấp qua trình hướng dẫn. Windows sẽ muốn "hoàn tất thiết lập thiết bị của bạn". Nhấp vào Remind me later để bỏ qua các quảng cáo, sau đó nhấp vào Finish trên trình hướng dẫn virtio-win.
Mở Microsoft Edge lần đầu tiên và lần cuối cùng, rồi dán https://github.com/Fmstrat/winapps/blob/main/install/RDPApps.reg vào thanh địa chỉ để xem một số mục registry bạn cần thêm.
Nhấp chuột phải vào Raw phía trên code snippet, sau đó chọn Save target as. Tải nó xuống vị trí bạn chọn, nhấp chuột phải vào file trong File Explorer và chọn Merge.
Bạn đã đặt tên cho VM trước đó và bây giờ, bạn cần thay đổi tên mà Windows biết.
Nhấp vào hộp tìm kiếm và nhập Device Specifications. Trong cửa sổ mới, cuộn cho đến khi bạn thấy Rename this PC. Nhấp vào nút này, sau đó đổi tên máy thành "RDPWindows". Nhấp vào Next > Restart Later.
Cuối cùng, tìm Remote Desktop trong thanh bên và chuyển nút sang trạng thái On.
Giờ đây, bạn có thể cài đặt các ứng dụng Windows như Microsoft Office, Adobe Photoshop, v.v...
Khi bạn hài lòng với bộ công cụ của mình trên Windows, hãy khởi động lại máy nhưng không đăng nhập. Đóng trình xem và Virtual Machine Manager.
Cách cài đặt WinApps cho Linux
Để kết nối với máy ảo của bạn, bạn cần cài đặt FreeRDP và WinApps cho Linux.
sudo apt-get install -y freerdp2-x11
git clone https://github.com/Fmstrat/winapps.git
Tạo một thư mục mới cho cấu hình WinApps của bạn trong thư mục .config:
mkdir ~/.config/winapps
... và sử dụng nano để tự tạo file cấu hình:
nano ~/.config/winapps/winapps.conf
Trong file mới, thêm tên người dùng và mật khẩu Windows của bạn:
RDP_USER="David"
RDP_PASS="SuperSecretPassword"
Lưu và thoát nano bằng Ctrl + O rồi nhấn Ctrl + X.
Di chuyển vào thư mục WinApps và kiểm tra xem kết nối với máy ảo Windows của bạn có hoạt động không:
bin/winapps check
Bạn sẽ nhận được cảnh báo chứng chỉ không khớp. Nhập Y để chấp nhận chứng chỉ. Desktop Windows sẽ xuất hiện dưới dạng ứng dụng toàn màn hình. Quay trở lại terminal và hủy quá trình bằng Ctrl + C.
Bây giờ, bạn có thể chạy trình cài đặt WinApps:
./installer.sh
Trình cài đặt sẽ hỏi bạn muốn cài đặt nó cho người dùng hiện tại hay toàn bộ hệ thống, sau đó sẽ kiểm tra các ứng dụng được cài đặt trong máy ảo Windows của bạn. Quá trình này mất vài phút để hoàn thành.
Tiếp theo, chọn cách bạn muốn xử lý các ứng dụng được cấu hình sẵn của WinApps và những ứng dụng khác.
Giờ đây, bạn có thể truy cập các ứng dụng Windows của mình từ màn hình Linux và menu ngữ cảnh mà không cần phải khởi động một desktop Windows hoàn chỉnh hoặc xử lý Wine.