Một số distro có thể kể đến như: Ubuntu, Fedora, LinuxMint, openSUSE, PCLinuxOS, Debian, Mandriva… Các nhà phát triển distro đều mong muốn đưa ra một GNU/Linux - được đóng gói nhân Li
Trang 1Một số Linux “distro” phổ biến
Phần mềm tự do nguồn mở cho phép người sử dụng có thể sao chép, sửa đổi, phân phối một cách tự do và không phụ thuộc vào bất kỳ nhà cung cấp công nghệ nào
Phần mềm tự do nguồn mở (PMTDNM) được phát triển từ lâu
và đến nay đã xuất hiện khá phổ biến trong các tổ chức chính phủ, doanh nghiệp PMTDNM thu hút sự chú ý của cộng đồng
do sự tự nguyện của những người đóng góp cho cộng đồng giúp phát hiện và thông báo các lỗi mà họ gặp phải khi trải nghiệm
Điểm sáng của PMTDNM chính là khái niệm distro, có thể tạm
dịch là bản phân phối phần mềm mã nguồn mở Kể từ lúc Linux
ra đời, cho đến nay đã có rất nhiều distro khác nhau, một phần là
do tính "mở" của nó Một số distro có thể kể đến như: Ubuntu, Fedora, LinuxMint, openSUSE, PCLinuxOS, Debian,
Mandriva…
Các nhà phát triển distro đều mong muốn đưa ra một
GNU/Linux - được đóng gói nhân Linux cùng với các thư viện
và công cụ GNU – riêng của họ trong đó là tập hợp số lượng lớn
Trang 2các phần mềm như máy chủ web, các ngôn ngữ lập trình, các hệ
quản trị cơ sở dữ liệu, các môi trường giao diện như GNOME
và KDE, và các ứng dụng thích hợp cho công việc văn phòng
như OpenOffice…
Bài viết này sẽ đề cập đến một số distro: Red Hat Linux và Debian GNU/Linux vì từ 2 distro này đã tạo hứng khởi cho các
nhà phát triển xây dựng nên 2 distro hiện được xem là phổ biến
trong cộng đồng PMTDNM, đó là Fedora và Ubuntu (do công
ty Canonical phát triển)
Trang 3Giao diện của Red Hat
Red Hat Linux là một trong những distro thương mại đầu tiên
của GNU/Linux và được xem là chuẩn nhất trong số các distro khác Phiên bản 1.0 đầu tiên ra mắt vào năm 1995 nhưng chỉ vài
tháng sau đó, phiên bản 2.0 bổ sung công nghệ RPM (RPM
Package Manager – Trình quản lý gói tin của Red Hat) tiếp tục được xuất bản Sự ra đời của RPM giúp việc cài đặt, cập nhật, xóa, bổ sung các gói phần mềm trở nên dễ dàng hơn trước rất
Trang 4nhiều
Vào tháng 9/2003, hãng Red Hat đã quyết định tập trung vào
công việc phát triển các phiên bản distro dành cho doanh nghiệp
Đồng thời, Red Hat cũng ủy quyền phiên bản cộng đồng cho Fedora Core – đây là dự án nguồn mở độc lập với Red Hat Hiện tại, một số sản phẩm hàng đầu của Red Hat là Fedora, Red Hat Network và một số dịch vụ cập nhật phần mềm
Internet
Các ngôn ngữ lập trình được sử dụng trong Red Hat: C chiếm vị
trí quan trọng với hơn 60% số lượng các dòng mã lệnh (hơn 30
triệu dòng mã lệnh), kế tiếp là C++ với khoảng 10 triệu dòng mã lệnh và theo sau là Shell (khoảng 3 triệu dòng mã lệnh)
Bên cạnh đó, Red Hat cũng có distro hướng doanh nghiệp là bản Red Hat Enterprise Linux (RHEL) Một điểm lưu ý, Red Hat cũng đưa ra các dịch vụ tư vấn công nghệ thông tin và
chương trình cấp chứng chỉ tương tự như Microsoft
Trang 5Giao diện của Fedora
Fedora là phiên bản miễn phí cho người dùng, đồng thời cũng
là phiên bản thử nghiệm đưa ra cộng đồng sử dụng và phản hồi,
từ đó những đặc tính nổi bật của Fedora sẽ đúc kết vào phiên
bản RHEL Thông thường, cứ 6 tháng Fedora sẽ đưa ra phiên
bản mới với các tính năng bảo mật mà các chuyên gia đánh giá khá tốt
Trang 6Fedora là distro dựa trên RPM Fedora có thể dùng cho máy
tính để bàn và máy trạm, thậm chí máy chủ; dành cho những người mới tiếp cận PMTDNM hay những người đã có nhiều kinh nghiệm Từ đĩa CD/DVD, người dùng có thể cài đặt tất cả các ứng dụng, dịch vụ, thư viện cần thiết của Fedora và sau đó chỉ việc sử dụng chúng Tuy nhiên, cách quản lý gói tin của Fedora gây không ít khó khăn cho người dùng
Debian GNU/Linux là hệ điều hành (HĐH) PMTD mà sử dụng
nhân Linux để phát triển distro riêng của nó Vào năm 2007, Debian hỗ trợ cho nhiều kiến trúc khác nhau như Intel x86,
ARM, Motorola, PowerPC, Alpha, SPARC
Trang 7Giao diện của Debian GNU/Linux
Các distro Debian GNU/Linux ra đời là do các tình nguyện
viên, thường là những chuyên gia về công nghệ thông tin đóng góp Công việc của họ là thiết lập cấu hình, biên dịch, tích hợp các phần mềm sao cho tất cả có thể tương thích với nhau Ngoài
ra, các lập trình viên còn phải có trách nhiệm duy trì hạ tầng các dịch vụ dựa trên Internet như tập tin lưu trực tuyến, hệ thống quản lý lỗi… kèm theo là các dự án về dịch thuật, quốc tế hóa
Trang 8một loạt công cụ đặc biệt cho Debian GNU/Linux
Ngoài ra, Debian GNU/Linux còn có một “hợp đồng xã hội”
(www.debian.org/social_contract.html), ở tài liệu này sẽ đề cập
đến mục tiêu chính của dự án Debian GNU/Linux với chính sách gói tin và phiên bản chặt chẽ Debian GNU/Linux có 3
dạng khác nhau: phiên bản ổn định mà người dùng được khuyến khích sử dụng, phiên bản không ổn định và phiên bản thử
nghiệm dành cho những ai mong muốn có được phần mềm mới nhất
Quay lại những năm đầu, Debian GNU/Linux 3.0 (gọi là
Woody) có phiên bản không ổn định là Sid, phiên bản thử
nghiệm là Sarge Phiên bản Debian GNU/Linux 4.0 được tung
ra vào tháng 4/ 2007 (tên gọi là Etch) cấu tạo từ hơn 10.000 gói nguồn với hơn 288 triệu dòng mã lệnh Ngôn ngữ sử dụng phổ biến nhất trong Debian GNU/Linux 4.0 là C với hơn 155 triệu dòng mã lệnh, nhưng thực tế C không còn chiếm ưu thế (trước đây C chiếm đến 80%) Ngôn ngữ lập trình phổ biến thứ 2 là C++, song song đó là sự gia tăng của các ngôn ngữ kịch bản như Perl, Python, PHP Hiện tại đang có Debian GNU/Linux phiên bản 5.0 (tên mã Lenny) sau 22 tháng phát triển liên tục và quá
Trang 9trình nâng cấp lên Debian GNU/Linux 5.0 xuất phát từ bản phát hành trước
Debian GNU/Linux cũng nổi tiếng với hệ thống quản lí gói, cụ thể APT (Advanced Packaging Tool - công cụ quản lí gói cao
cấp) Debian có chính sách nghiêm ngặt đối với chất lượng các gói và bản phát hành cũng như tiến trình phát triển và kiểm tra
mở Cách này giúp cho việc nâng cấp các bản phát hành cũng như việc đặt hay gỡ bỏ dễ dàng hơn
Lịch sử HĐH Linux và Phần mềm tự do nguồn
mở
- 1983: Richard Stallman, giáo sư của MIT thành
lập dự án GNU phát triển PMTD (Free Software)
- 1985: Richard Stallman thành lập Tổ chức
PMTD (Free Software Foundation) bảo trợ cho dự
án GNU
- 1991: Linus Torvalds viết phiên bản đầu tiên của
nhân HĐH Linux và xuất bản theo giấy phép
PMTD của Stallman là GPL (General Public
License) Do đó, Linux trở thành một HĐH tự do
Trang 10Nhờ những đặc tính của một PMTD, Linux nhanh chóng được hàng ngàn lập trình viên trên toàn thế giới tham gia phát triển Và từ đó, Linux xuất hiện nhiều distro khác nhau
- 1998: Tổ chức "Sáng kiến nguồn mở" (Open
Source Initiative) được thành lập bởi Eric
Raymond, một hacker kỳ cựu với mục đích quảng
bá cho thuật ngữ Phần mềm nguồn mở (Open
Source Software) Open Source Software được tạo
ra vì thuật ngữ Free Software trong tiếng Anh dễ gây nhầm lẫn giữa 2 khái niệm "Miễn phí" và "Tự do" Phần mềm miễn phí trong tiếng Anh là
Freeware khác hoàn toàn với PMTD
(*) Cuối cùng, cả 2 thuật ngữ Phần mềm tự do và
Phần mềm nguồn mở đều có những điểm tương đồng rất lớn Bên cạnh đó, cả 2 thuật ngữ đều có những điểm mạnh và điểm yếu riêng Do vậy,
cộng đồng quyết định sử dụng chung thành một thuật ngữ chính thức là FOSS (Free and Open
Soure Software - Phần mềm tự do nguồn mở) như
Trang 11là một tên gọi thống nhất
(*) Về tranh luận GNU/Linux hay Linux: Ban đầu,
Linux chỉ là một nhân HĐH, muốn để trở thành một HĐH hoàn
chỉnh (theo định nghĩa trong giới lập trình viên) thì nó cần được gộp chung với các công cụ do dự
án GNU phát triển Vì vậy trong cộng đồng FOSS
có 2 luồng quan điểm trái chiều bao gồm:
- Vì bản thân nhân Linux một mình KHÔNG đủ
để tạo thành một HĐH nên cần sử dụng tên gọi là GNU/Linux
- Nhân HĐH là thành phần quan trọng nhất cấu trúc tạo nên một HĐH Do vậy, chỉ cần gọi tắt là HĐH Linux là đủ
- 2007: Tổ chức Linux Foundation được thành lập
với mục đích hỗ trợ việc phát triển nhân Linux Linux Foundation có nguồn tài chính hỗ trợ khá mạnh từ các tập đoàn công nghệ thông tin lớn trên thế giới nhằm đảm bảo những người phát triển
Trang 12nhân Linux quan trọng có thể làm việc độc lập,
không bị "mua chuộc" bởi bất kì công ty nào Và
hiện tại, cộng đồng FOSS và Linux được dẫn dắt
bởi 3 tổ chức phi lợi nhuận quốc tế là Free
Software Foundation, Open Source Initiative và
Linux Foundation
Ubuntu do công ty Canonical phân phối chỉ mới xuất hiện vào
quý 3/2004 và không lâu sau đó HĐH này đã trở nên phổ biến,
uy tín về chất lượng và dễ dàng sử dụng Đặc tính cơ bản của
Ubuntu là dựa trên hệ thống quản lý gói mạnh mẽ APT của
Debian, nhắm đến đối tượng người dùng đầu cuối, nhỏ gọn chỉ với 1 đĩa cài đặt Người dùng Ubuntu có thể cảm nhận được sự
tự do, tùy biến cao trong sử dụng, quản lý hệ thống Trên thực
tế, Ubuntu không phải là trường hợp đầu tiên của một distro dựa
trên Debian mà còn có distro nổi tiếng khác là gnuLinEx
Trang 13Giao diện của Ubuntu
Canonical đã thuê một số lượng lớn các chuyên gia của Debian, điều này chứng tỏ rằng ở một mức độ nào đó thì Canonical cố gắng cải tiến những gì còn thiếu từ Debian để gần gũi với người dùng hơn
Theo thống kê của trang Distrowatch, cho đến hiện nay Ubuntu
là distro phổ biến nhất với khoảng hơn 2.000 lượt người truy
cập/ngày Cứ 6 tháng, Ubuntu sẽ ra bản phát hành mới, còn với
Trang 14các phiên bản Long Term Support (LTS) thì việc cập nhật trình bảo mật sẽ từ 3 đến 5 năm
Ubuntu sử dụng giao diện đồ họa thân thiện GNOME, hướng
đến sự đơn giản hóa trong quá trình sử dụng Ngoài ra, Ubuntu còn có bộ ứng dụng văn phòng OpenOffice, trình duyệt Firefox, trình gửi tin nhắn tức thời Pidgin, trình biên tập đồ họa GIMP… Ubuntu cũng cho phép người dùng chạy CD trực tiếp để xem phần cứng của máy tính có tương thích với HĐH hay không trước khi cài đặt lên đĩa cứng
Ngoài Ubuntu, các nhà phát triển còn sản sinh ra các distro
mang hơi hướng tương tự Ubuntu như Kubuntu, Xubuntu và Lunbuntu Các distro này chủ yếu khác biệt với Ubuntu ở môi trường màn hình
Tựu chung lại, mỗi distro sẽ có những ưu và nhược điểm riêng Ngoài ra, một distro có thể mạnh ở thị trường này nhưng chưa chắc đã chiếm ưu thế ở thị trường khác Và một điều quan trọng,
do mỗi distro đều có triết lí phát triển chuyên sâu theo một
hướng riêng nên PMTDNM sẽ mang đến cho người sử dụng nhiều sự lựa chọn; đây cũng là một điểm khác biệt với phần
mềm thương mại
Trang 15Do vậy, điểm tuyệt vời của PMTDNM là mang đến cho người
sử dụng quyền tự do lựa chọn distro yêu thích Chẳng hạn, một người chuyên trách bộ phận kĩ thuật của một công ty có thể chọn Centos để chạy các máy chủ, chọn Ubuntu để chạy trên máy tính của các nhân viên, chọn Debian trên máy tính của các lập trình viên trong công ty, nhưng chính người trong bộ phận kỹ thuật có thể dùng Arch Linux trên máy tính cá nhân của mình Dù có thể mỗi bộ phận trong công ty có thể dùng các distro khác nhau, nhưng người phụ trách bộ phận vẫn có thể quản lý tốt cả hệ
thống đó một cách nhịp nhàng và hiệu quả vì suy cho cùng tất cả đều xuất phát từ Linux và chúng đều tuân theo những tiêu chuẩn
hệ thống nhất định
Sự khác nhau giữa các distro chủ yếu dựa vào 2
yếu tố
- Thị trường mà distro muốn nhắm đến, ví dụ dành
cho máy chủ, doanh nghiệp, siêu máy tính, người
dùng đầu cuối…
- Tùy thuộc vào triết lí phần mềm của từng distro
mà những người phát triển quyết định gắn bó lâu
Trang 16dài với distro đó hay không
Các distro phổ biến và phát triển bền vững hiện nay có thể được chia thành 4 nhóm:
(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
Trang 17bở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): Nhóm các distro nhắm đến người dùng đầu 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,
Trang 18khô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
Trang 19hiệ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…