Hello hello, tôi không biết tại sao bạn nói Windows, tôi nói Linux. Cho đến gần đây, khái niệm chạy Linux trên Windows chỉ có thể qua virtualization. Nhưng bây giờ, Windows 10 cung cấp implementation native của Ubuntu. Hân hoan.
Chúng ta thấy điều này hoạt động gần đây, và chúng ta đều ngạc nhiên. Nhưng một điều chúng ta không thành công là chạy ứng dụng đồ họa. Ubuntu image đến mà không có thành phần graphical. Bạn có thể cài đặt X11 server stuff, nhưng bạn sẽ không thể launch nó. Bạn cần X server bên ngoài cho graphical apps. Hãy thử.
Cài đặt Xming
Ming là bad guy từ Flash Gordon. Xming là X Server cho Windows, sẽ cho phép chúng ta export display và chạy graphical applications. Hơi giống VNC, trừ khác. Same same but different. Sau khi bạn đã cấu hình đúng BASH trên Windows 10, bước tiếp theo là cài đặt chương trình này.
Một khi chương trình được cài đặt, hãy chạy nó. Nếu bạn bật Windows firewall, nó sẽ prompt. Đúng vậy, vì Xming cần chạy như server và chấp nhận incoming connections. Bạn nên cho phép chỉ cho địa chỉ local (private). Nếu bạn đã đọc tutorial Linux commands & configurations và review Xephyr của tôi từ trước, khái niệm nên rõ hơn.
Một hình ảnh giá trị ngàn pixel
Được. Xming nên đang chạy - nó nên hiện ở system tray. Bây giờ, chúng ta nên thử chạy ứng dụng đồ họa, như Firefox hay VLC. Nhưng bạn phải nói cho app biết display của chúng ở đâu. Có nhiều cách. Cách đơn giản nhất:
DISPLAY=:0 <software>
Một đống hình ảnh đẹp, đây chúng ta đi! Gallery nhỏ này cũng bao gồm screenshot về cách tôi truy cập ổ Windows và mở file nhạc. Mặc định, bạn chỉ có home directory, nhưng nếu bạn đi lên, vào cây Filesystem, bạn sẽ có mounts cho ổ Windows, có sẵn dưới /mnt. Hơi giống WINE.
Hoàn hảo?
Không hề. Có nhiều vấn đề liên quan đến bài tập này. Bạn sẽ không có 3D acceleration cách này. Sound card hoặc camera không hoạt động, vì Windows Subsystem for Linux (WSL) chỉ là user-mode implementation, và bạn không thể truy cập phần cứng trực tiếp ở giai đoạn này. Performance cũng sẽ là vấn đề.
Và cũng có thể có các bug với phía đồ họa, cộng với missing dependencies. Lúc đầu VLC không chạy vì tôi không có PulseAudio setup đúng. Nó thực sự crash. Sau đó nó chạy, sau khi tôi cài thêm vài dependencies, nhưng không có audio. Cũng có complain từ Firefox về namespace sandboxing, tuy nhiên nó chạy tốt.
DISPLAY=:0 vlc
VLC media player 2.1.6 Rincewind (revision 2.1.6-0-gea01d28)
[0x1217f08] pulse audio output error: PulseAudio server connection failure: Connection refused
Assertion 'pthread_mutex_unlock(&m->mutex) == 0' failed at pulsecore/mutex-posix.c:108, function pa_mutex_unlock(). Aborting.
Aborted (core dumped)
Sandbox: unexpected multithreading found; this prevents using namespace sandboxing.
Kết luận
Đây chúng ta đi. Chủ đề khác mastered. Vui nhỉ. Ai nghĩ được. Nhưng khái niệm chỉ mở ra thêm nhiều khả năng, và mới chỉ beta. Full stack có thể engaging hơn nhiều, và nếu drivers cũng somehow sneaked vào phương trình, users cũng sẽ tận hưởng performance tốt hơn và tận dụng phần cứng đầy đủ. Hiện tại, bạn có thể dùng BASH, và với giúp của Xming, cũng test graphical applications với mức độ ổn định khá, kết quả không hứa hẹn, và trải nghiệm hơi laggy.
Tôi thấy WSL là một trong những tính năng refreshing hơn của Windows 10, ngay cả khi nó chưa phục vụ mục đích lớn. Nhưng nếu bạn nghĩ về nó, hệ điều hành Microsoft này đưa bạn gần thế giới Linux hơn bất kỳ Windows release nào trước đây. Khá thanh lịch, tôi phải nói. Một điều chắc chắn, tôi sẽ test và tinh chỉnh điều này hơn nữa. Khái niệm flexibility, security và ai biết gì nữa hút tôi irresistibly. Stay tuned cho nhiều fun hơn.
Chào.