Khi lần đầu tiếp xúc với Linux, ai cũng tưởng Linux là tên gọi duy nhất của hệ điều hành nguồn mở này. Nhưng khi tìm kiếm file cài đặt hệ điều hành, chúng ta lại choáng váng với hàng loạt cái tên như Ubuntu, Debian, Fedora, CentOS, OpenSUSE… Tại sao Linux lại có nhiều bản phân phối đến vậy?
Centos là gì? Ubuntu là gì? Chúng có phải là Linux không?
CentOS, Ubuntu là một Distribution.
Vậy Distribution là gì? Distribution hay Distro có thể dịch là “bản phân phối” là khái niệm trong hệ điều hành GNU/Linux, nó không giống với các “phiên bản” kiểu như XP, 7, 8 trong Windows.
Vậy có tất cả bao nhiêu Distro, xem ở đây http://futurist.se/gldt/wp-content/uploads/12.02/gldt1202.png .
Bảng xếp hạng các Distro tại đây http://distrowatch.com/
Về cơ bản dù nhiều nhưng ta sẽ thấy có 3 nhánh lớn chính đó là Debian, Red Hat và Slackware. Các Distro khác hầu hết là “base”trên 3 Distro này.
Vậy tại sao lại có nhiều Distro đến như vậy? Lí do là do Linux “mở” nên bất cứ ai nếu thích đều có thể tạo một Distro và đặt tên nó theo ý thích của mình, miễn là tuân theo “luật”. Tất nhiên sẽ có những Distro sẽ không có ai sử dụng và chết theo thời gian. Những Distro nào kiếm được tiền, cộng đồng mạnh, có uy tín thì sẽ sống.
Vậy sự khác nhau giữa các Distro đó là gì? Về cơ bản thì chúng giống nhau do đều có kernel là “Linux”?
Sự khác nhau đó dựa vào 2 yếu tố chính đó là:
- Thị trường mà Distro đó muốn nhắm tới.
- Triết lý phần mềm của từng Distro (philosophy)
Các distro phổ biến và phát triển bền vững hiện nay
Có thể chia thành 4 nhóm như sau:
- (1) Arch (archlinux.org), Gentoo (gentoo.org), Slackware (slackware.com): Các distro nhắm vào người dùng am hiểu về hệ thống Linux. Hầu hết phương thức xây dựng và cấu hình hệ thống đều phải thực hiện qua môi trường dòng lệnh.
- (2) Debian (debian.org), Fedora (fedoraproject.org): Các distro cũng nhắm vào những người dùng am hiểu hệ thống, tuy nhiên cung cấp nhiều công cụ hơn cho những người chưa thật sự hiểu rõ hoàn toàn về Linux. Nhóm này tương đối thân thiện với người dùng mới bắt đầu hơn nhóm (1). Tuy nhiên, các distro nhóm này lại có một quy trình phát triển và kiểm tra chất lượng các gói phần mềm cực kì khắt khe so với các distro còn lại. Để trở thành một lập trình viên chính thức của Debian hay Fedora cần phải có thời gian đóng góp khá dài, và phải được chứng nhận bởi các lập trình viên khác. Do vậy, môi trường để lập trình và nghiên cứu ở 2 distro này khá tốt.
- (3) Centos (centos.org), RHEL (redhat.com/rhel), SUSE EL (novell.com/linux): Các distro này chủ yếu nhắm vào thị trường doanh nghiệp, cơ quan, thị trường máy chủ… Các dòng distro này có nhiều đặc tính phù hợp cho mảng thị trường đòi hỏi sự ổn định cao như: thời gian ra phiên bản mới thường khá lâu (3 – 5 năm tùy distro); dịch vụ hỗ trợ thương mại cho các công ty, tổ chức sử dụng sản phẩm; ít sử dụng các công nghệ mới nhất (thường kém ổn định) mà tập trung phát triển trên các công nghệ lâu đời và đáng tin cậy hơn.
- (4) Ubuntu (ubuntu.com), Open SUSE (opensuse.org) Linux Mint (linuxmint.com): Nhóm các distro nhắm đến người dùng cuối và người mới bắt đầu sử dụng Linux. Đặc tính của các distro này là thời gian phát hành ngắn, ứng dụng liên tục các công nghệ mới với nhiều công cụ đồ họa để cấu hình hệ thống, thiết kế với mục đích dễ dùng, dễ làm quen, không cần đọc tài liệu đối với người mới.
Xét về triết lí phần mềm (software philosophy), nó chỉ đơn giản là bộ các quy tắc, định hướng, mục tiêu mà những người phát triển một phần mềm đặt ra hay đi theo triết lí do người khác đặt ra để phát triển sản phẩm của mình nhưng phải tuân thủ theo các triết lí đó. Ví dụ triết lí của Microsoft Windows là dễ sử dụng, ít cấu hình thì triết lí của Mac OS X lại là bóng bẩy, thanh lịch… Các distro Linux cũng có những triết lí riêng ví dụ:
- Nhóm (1) là cấu trúc gọn nhẹ, uyển chuyển để có thể xây dựng một hệ thống hoàn toàn tuân theo ý của mình.
- Nhóm (2) lại nhắm đến việc chuẩn hóa, chuyên môn hóa quá trình phát triển phần mềm nhằm tạo ra một hệ thống hoạt động nhịp nhàng, ăn khớp và hạn chế lổ hỗng bảo mật.
- Nhóm (3) phát triển theo hướng bền vững, chuyên nghiệp, cung cấp dịch vụ hỗ trợ dài hạn, cung cấp sản phẩm có vòng đời kéo dài (lên tới 7 năm).
- Nhóm (4) cung cấp những công nghệ mới nhất, những hiệu ứng đồ họa bắt mắt ngay sau khi cài đặt, không cần phải cấu hình nhiều…
Ngoài 2 yếu tố trên thì còn một số điểm khác nữa ví dụ như các gói phần mềm xung quanh, công cụ quản lý gói, Desktop Environment….
Ví dụ:
- Debian thì thường xài Desktop Environment là GNOME, công cụ quản lý gói là apt-get, dpkg..
- Red Hat xài DE là GNOME, công cụ quản lý gói là rpm, yum ..
- ArchLinux thì DE có thể là bất cứ thứ gì, công cụ quản lý gói là pacman, yaourt
- OpenSuse thì có DE là KDE, công cụ quản lý gói là YaST Software Management, Zypper..
Tất nhiên người dùng cũng có thể tùy chỉnh những điều này theo ý muốn.
Xem thêm loạt bài tổng hợp câu lệnh trên Linux.
Nguồn: The Long Road