6 lý do khiến hệ điều hành Linux hay gặp lỗi

Nhiều người từng sử dụng GNOME trong thời gian dài. Nhưng khi chuyển sang hệ điều hành Elementary OS, họ đã dần yêu thích hệ điều hành dựa trên Linux tối giản này, và có lẽ bạn cũng nên thử nó.

Nhưng điều đó đã thay đổi. Số lượng lỗi mà người dùng gặp phải với hệ điều hành này đã tăng dần theo thời gian. Đối với nhiều người, chẳng hạn như một nhà văn tự do, điều duy nhất họ cần là một chiếc máy tính xách tay hoạt động tốt. Nếu nó không đáng tin cậy, họ sẽ phải lãng phí thời gian để sửa một công cụ mà công việc của họ yêu cầu.

Đây không phải là lần đầu tiên điều này xảy ra. Đôi khi các bản phân phối Linux hoạt động khá trơn tru trong thời gian đầu lại bất chợt bị lỗi sau một hoặc hai tháng. Câu hỏi là, tại sao?

1. Không đủ nhân lực

Không đủ nhân lực

Nỗ lực của các nhà phát triển Elementary OS là rất đáng ghi nhận. Nhưng hiện tại chỉ có một vài người làm việc trên bản phân phối này.

Trong khi những nhà phát triển này cũng đang phải làm các công việc thiết kế trực quan khác như khắc phục các lỗi, viết code cho các ứng dụng mới, thu hút các nhà phát triển, tiếp thị và thực hiện bất kỳ công việc nào khác mà dự án cần. Rất nhiều việc phải làm. Điều đó ngăn cản một người nào đó dành tất cả thời gian mình có để hoàn thiện và duy trì một phần mềm duy nhất. Người sáng lập Daniel Foré sẽ không đi một mình, nhưng có quá nhiều thứ khác nhau cần quan tâm để dự án tiếp tục.

Thế giới Linux được xây dựng từ công sức của rất nhiều các nhóm nhỏ. Solus là một ví dụ điển hình về việc phụ thuộc nhiều vào công sức của một người duy nhất.

Các bản phân phối lớn hơn, được thiết lập nhiều hơn vẫn bị ảnh hưởng bởi vấn đề này. Ubuntu có mặt khắp nơi trên thế giới và nó có một cộng đồng lớn người sử dụng nó - nhưng Canonical sử dụng một số lượng người tương đối ít ỏi để duy trì hoạt động của hệ điều hành này. Fedora và openSUSE đã tồn tại trong nhiều thập kỷ, nhưng vẫn thiếu loại nhân lực để tạo ra các phiên bản desktop thương mại như Windows và macOS.

2. Thiếu hụt tài chính

Hầu hết các phần mềm nguồn mở đều miễn phí để sử dụng, nhưng điều đó không có nghĩa là việc tạo ra nó cũng hoàn toàn miễn phí. Cho dù ai đó đã trả tiền cho một nhà phát triển, quyên góp cho một dự án, hoặc dành thời gian tình nguyện viết code, kết quả cuối cùng vẫn là phải trả một khoản chi phí nào đó. Với các mô hình tài trợ rất đa dạng và thường không đáng tin cậy, việc thu hút người tài có thể là một vấn đề đối với các bản phân phối và ứng dụng Linux.

Duy trì một bản phân phối đi kèm với rất nhiều chi phí không thể tránh khỏi. Các nhóm phải lưu trữ trang web, cung cấp các bản download và phân phối phần mềm. Nếu những người đóng góp sống ở nhiều nơi khác nhau trên thế giới, sẽ tốn hàng nghìn đô la cho việc đi lại khi cần cộng tác trực tiếp. Nếu việc sửa chữa một lỗi đòi hỏi phải có quyền truy cập vào phần cứng nhất định, vấn đề có thể bị bỏ qua cho đến khi có một nhà phát triển sẵn sàng đứng ra nhận nhiệm vụ này. Và đôi khi điều đó không bao giờ xảy ra.

Với những ai đã sử dụng Windows đủ lâu, có một thực tế mà tất cả mọi người đều biết là có tiền chưa chắc đã khắc phục được hết các lỗi. Tuy nhiên, nếu thiếu tiền thì chắc chắn sẽ làm mọi thứ khó khăn hơn.

3. Không có mối quan hệ trực tiếp với các nhà sản xuất phần cứng

Không có mối quan hệ

Như vừa đề cập, lỗi ảnh hưởng đến một model máy tính xách tay cụ thể rất khó khăn để sửa chữa bởi một nhà phát triển, trừ khi ai đó cung cấp cho họ một máy tính tương tự. Nhưng đó chỉ là một phần của vấn đề. Lỗi không chỉ xuất phát từ các nhà phát triển mà là từ phần cứng. Còn các nhà sản xuất thì không quan tâm máy của họ có hoạt động tốt với Linux hay không.

Trừ khi máy tính xách tay của bạn đi kèm với hệ điều hành Linux được cài đặt sẵn, còn nếu không sẽ chẳng ai quan tâm đến việc thử nghiệm xem Linux có hoạt động tốt trên máy tính đó không đâu. Nhà sản xuất có thể đã sử dụng card Wi-Fi thiếu khả năng tương thích với Linux, khiến người dùng không thể truy cập Internet. Nhà sản xuất cũng có thể đã chọn một card đồ họa chưa có các file nhị phân của Linux, thứ mang lại cho người dùng các tính năng cơ bản và trải nghiệm đáng kinh ngạc.

Trong trường hợp đó, không phải là môi trường desktop của bạn sẽ mắc đầy lỗi sao? Giống như việc bạn đang cố gắng chạy phần mềm trên phần cứng mà ngay từ đầu đã không được thiết kế để chạy code này vậy. Đôi khi các nhà phát triển Linux có thể đưa ra một giải pháp, nhưng điều đó không phải lúc nào cũng có tác dụng.

4. Phụ thuộc vào các dự án và phần mềm khác

Hầu hết các chương trình nguồn mở phụ thuộc vào phần mềm mà người khác đã thực hiện. Linus Torvalds, tác giả của Linux, không tạo ra bất kỳ giao diện nào bạn thấy trên màn hình. Chúng xuất phát từ một nhóm cộng tác viên ở một nơi xa xôi nào đó. Các ứng dụng bạn chạy bên trong giao diện đó có thể lại đến từ một nhóm nhà phát triển khác.

Mọi người đang viết code phải tương tác với phần mềm mà họ có thể chưa hiểu cặn kẽ. Mã nguồn có thể mở, nhưng ai có thời gian để tìm hiểu cách mọi thành phần hoạt động chứ? Và nếu họ phát hiện ra vấn đề, họ phải liên hệ với người chịu trách nhiệm cho thành phần đó và hy vọng có thể tích hợp bản sửa lỗi.

5. Không tập trung

Không tập trung

Microsoft đã tạo ra Windows kernel (hạt nhân Windows), môi trường desktop và các ứng dụng mặc định. Điều này mang lại cho Microsoft một mức độ kiểm soát tương tự với tất cả các trải nghiệm mà người dùng sẽ gặp phải. Nếu trải nghiệm không được như ý, Microsoft có thể quyết định trì hoãn bản phát hành cho đến khi các nhân viên sửa xong tất cả các lỗi đó. Các bản phân phối Linux cũng đang cố gắng thực hiện như vậy, nhưng có thể các lỗi này nằm ngoài tầm tay của nhóm phát triển.

Sự thiếu tập trung này cũng dẫn đến các vấn đề khác. Trong khi Windows và MacOS đều chỉ có một định dạng gói chính, Linux lại có một số định dạng khác nhau. Các nhà phát triển có thể phải thử nghiệm qua nhiều vòng khác nhau để đảm bảo rằng phần mềm của họ hoạt động với từng bản phân phối, và lượng công việc có thể quá nhiều cho một cá nhân thực hiện. Và đây không phải là ví dụ duy nhất để thấy rằng các nhà phát triển đã phải “đầu tắt mặt tối” như thế nào. Linux có nhiều các framework âm thanh, máy chủ hiển thị và trình quản lý cửa sổ. Khá nhiều thành phần của hệ thống có thể được hoán đổi cho một thành phần khác, khiến ứng dụng bị hỏng.

6. Việc sửa lỗi là một công việc nhàm chán

Tạo phần mềm thật thú vị. Đó là một phần lý do tại sao có quá nhiều dự án trùng lặp trong thế giới nguồn mở. Bắt đầu từ đầu và thực hiện đúng lúc làm gia tăng sự phấn khích hơn là dựa trên các code hiện có và đưa ra các ý tưởng kỳ cục.

Ngược lại, việc sử lỗi thật tẻ nhạt, tốn thời gian. Một nhà phát triển có thể mất hàng giờ đồng hồ để khắc phục sự cố nhưng lại “chữa lợn lành thành lợn què”. Sau đó, dù lỗi có được khắc phục thì ứng dụng cũng không có tính năng mới thú vị. Đơn giản nó chỉ ổn định hơn mà thôi. Đây là công việc quan trọng, nhưng vì nhà phát triển không được trả tiền nên rất khó có thể mong đợi họ thực hiện việc này một cách nhanh chóng và hào hứng.

Bạn có thể làm gì để tránh lỗi?

Bạn có thể làm gì?

Bỏ qua tất cả những điều trên, Linux được đánh giá ổn định hơn so với Windows. Nếu hệ điều hành nguồn mở này có khả năng cấp nguồn cho hầu hết các siêu máy tính của thế giới, thì nó cũng có thể xử lý máy tính xách tay của bạn. Bạn chỉ cần tìm bản phân phối phù hợp mà thôi.

Không có lựa chọn duy nhất nào là phù hợp cho tất cả người dùng. Điều đó phụ thuộc vào các yếu tố khác nhau, từ phần cứng bạn đang sử dụng cho đến những ứng dụng bạn định chạy. Nhưng một bản phân phối được thiết lập tốt từ một nhóm có khả năng giữ cho mọi thứ diễn ra suôn sẻ sẽ đáng tin cậy hơn.

Là một phần hệ sinh thái Linux khổng lồ của Red Hat, Fedora là một trong những bản phân phối được hỗ trợ nhiều nhất. GNOME có thể không hoàn toàn nhỏ gọn như Elementary OS, nhưng nó khá gần gũi và là một trong những môi trường desktop nguồn mở lâu đời nhất trên Linux, cộng đồng người dùng có thể phát hiện ra các lỗi lớn hơn đáng kể. Thêm vào đó, Wayland trong Fedora 25 khá nhanh.

Như đã nói ở trên, không có lựa chọn tốt nhất cho tất cả mọi người. openSUSE là một bản phân phối khác với nhiều hỗ trợ tài chính. Nếu bạn muốn sử dụng hệ điều hành Linux không có sự hậu thuẫn của bất kỳ công ty nào, bạn có thể chọn Debian. Ubuntu (dựa trên Debian) là phiên bản nổi tiếng nhất của Linux trên desktop, vì vậy khi các lỗi phát sinh, bạn thường có thể tìm thấy bản sửa lỗi sau một thời gian nhất định.

Nếu bạn thực sự muốn giải quyết vấn đề, hãy tạo file báo cáo về lỗi bạn gặp phải. Ngay cả khi bạn không thể tự khắc phục, việc viết mô tả chi tiết về các vấn đề cũng sẽ rất hữu ích.

Bạn sử dụng bản phân phối Linux nào? Bạn đã gặp phải lỗi nào? Bạn có bất kỳ lời khuyên nào cho những người dùng Linux khác không? Hãy để lại ý kiến trong phần bình luận bên dưới nhé!

Xem thêm:

Thứ Sáu, 07/12/2018 12:12
51 👨 138