You are on page 1of 4

Phần I: Các Khái Niệm Căn Bản

I. Giới thiệu hệ điều hành Linux:


1. Linux là gì?
Linux là hệ điều hành. Về mặt nguyên tắc hệ điều hành cũng là một software;
nhưng đây là một software đặc biệt – được dùng để quản lý, điều phối các tài
nguyên (resource) của hệ thống (bao gồm cả hardware và các software khác).
Linux còn được gọi là Open Source Unix (OSU), Unix-like Kernel, clone of the
UNIX operating system.
Linux do Linus Torvalds, một sinh viên tại trường Đại Học ở Helsinki (Phần Lan)
phát triển dựa trên hệ điều hành Minix, một hệ điều hành có cấu trúc tương tự
Unix với các chức năng tối thiểu được dùng trong dạy học.
Hiện nay, Linux là một hệ điều hành với mã nguồn mở (Open Source) và miễn phí
(free) dưới bản quyền của tổ chức GNU (Gnu’s Not Unix).
Khởi đầu, Linux được thiết kế để hoạt động trên nền tảng của kiến trúc i386
Intel với khả năng đa tác vụ (multitasking). Tuy nhiên ngày nay, Linux đã có các
phiên bản trên các họ chip khác chẳng hạn như chip Alpha.
Linux có nguyên lý hoạt động tương tự hệ điều hành Unix (Unix-like). Mặc dù
Linux không phải là Unix nhưng người ta vẫn xem Linux như là phiên bản Unix trên
PC (PC version of Unix OS).
Do là Unix-like; Linux có đầy đủ tất cả các đặc tính của Unix (fully
functional). Ngoài ra nó còn hỗ trợ thêm một số tính năng mà trên Unix không có,
như long file name (tên file có ký tự space “ ”).
Hiện tại có nhiều hãng, nhiều tổ chức, nhiều nhóm khác nhau cùng phát triển
Linux. Tất cả các phiên bản (release) Linux đều có chung phần kernel (phần nhân
của hệ điều hành) và hầu hết các tính năng đặc trưng, tuy nhiên các tool (công
cụ) và utility (tiện ích) có đôi chút dị biệt.
Có rất nhiều các ứng dụng cho Linux, tuy nhiên hầu hết các ứng dụng cho Linux
hiện có đều là các ứng dụng mang tính chuyên dụng. Để đưa Linux vào từng gia
đình, các tổ chức, các hãng đang cố gắng phát triển các ứng dụng mang tính phổ
cập trên Linux chẳng hạn hãng SUN đưa ra phiên bản Star Office tương tự như MS
Office – và cũng tương thích với MS Office - cho những người sử dụng Linux ở gia
đình, văn phòng.
Hãng Borland (nay là hãng Inprise) đang phát triển một dự án có tên là KyLix,
nhằm đưa ra một môi trường lập trình cấp cao trên Linux, đồng thời các ứng dụng
trên Windows được viết bằng Delphi/C++Builder sẽ dễ dàng compile (biên dịch) lại
dưới Linux bằng KyLix. Hiện tại Kylix đã có phiên bản thử nghiệm (beta).
Dự án này hứa hẹn một loạt các ứng dụng thông thường đã có trên MS Windows sẽ
mau chóng được chuyển sang Linux, và điều này sẽ giúp cho hệ điều hành Linux dễ
dàng thâm nhập vào thị trường PC nhanh chóng hơn.
Các ứng dụng được viết trên Linux đều có thể hoạt động trên các hệ thống UNIX
(có thể cần phải compile lại).
Các release hiện nay gồm có:
RedHat Linux:
Hiện đã có version (ấn bản) 7.0; là phiên bản khá phổ biến. Cung cấp khá nhiều
tool và utility để hỗ trợ user (người sử dụng) từ các thao tác setup (cài đặt)
đến config (cấu hình) hệ thống.
Mandrake Linux:
Một dòng khác thoát thai từ RedHat Linux, tương thích hoàn toàn với RedHat. Hiện
có tới version 7.1
Slackware Linux:
Đây là một trong phiên bản Linux lâu đời. Hỗ trợ các dịch vụ mạng rất mạnh, tuy
nhiên việc setup và config đòi hỏi user có kiến thức tốt về hệ điều hành này.
Hiện có version 7.0
S.u.S.E. Linux:
Do hãng S.u.S.E (Đức) phát hành, khá phổ biến tại Âu châu, nhưng không được phổ
biến tại các nước khác. Có các công cụ riêng để hỗ trợ setup và config tương đối
dễ sử dụng. Hiện đang có đến version 6.3
Free BSD Linux:
Được phát triển bởi Đại Học Berkeley, đây không phải là phiên bản thương mại, do
vậy ít được phổ biến. Có rất nhiều tiện ích dành cho việc phát triển hệ thống và
lập trình. Hỗ trợ đầy đủ các shell trên Unix. Hiện có version 2.2
Corel Linux:
Phát triển bởi hãng Corel, dễ setup, có graphic interface (giao diện đồ họa) khá
giống Windows NT kể các tool và utility. Tuy nhiên các config tool chưa hoạt
động tốt. Hiện có đến version 1.0
Open Linux:
Do hãng Caldera phát triển, dễ cài đặt cũng như sử dụng. Giao diện KDE. Thích
hợp cho người sử dụng tại gia đình. Hiện đang có version 2.3
X Linux:
Hỗ trợ đa ngôn ngữ. Tương thích với RedHat. Bộ công cụ không lấy gì làm đặc sắc.
Tuy nhiên kèm theo nó có khá nhiều ứng dụng. Hiện có version 1.0
Và còn rất nhiều release khác như Turbo Linux, Linux PPC, Debian Linux,
Infomagic Linux, Softlanding Linux System Release (SLS) v.v....
Các thông tin và tài nguyên (resource) của Linux có thể tìm thấy ở khắp nơi trên
Internet và hầu hết đều free. Thêm vào đó có khá nhiều các trình ứng dụng cũng
như tiện ích dành cho Linux dễ dàng được tìm thấy trên Internet.
2. Các tính năng & service cơ bản của Linux:
Như đã trình bày, Linux là một hệ điều hành với đầy đủ các tính năng của Unix.
Vì thế nó có khả năng đóng vai trò của một Internet/Intranet Server (Web Server,
Ftp Server, Mail Server, DNS Server, v.v....), Database Server, File Server
v.v... hoặc làm việc như một Unix workstation (máy trạm Unix).
Như vậy, Linux là một hệ điều hành mạng với đầy đủ các tính năng của nó.
Cũng như Unix, Linux cũng tuân theo chuẩn POSIX (Portable Operating System
Interface for Computer Enviroment) mặc dù nó vẫn chưa được tổ chức này công
nhận.
Các service được cung cấp bởi Linux bao gồm hầu hết các service của Unix như:
UUCP (Unix to Unix Copy Protocol): Giao thức hỗ trợ service truyền thông giữa
các host Unix.
TCP/IP IP (Transmission Control Protocol/Internet Protocol): Giao thức cung cấp
service truyền thông trên mạng Internet.
X Protocol: Giao thức để xử lý GUI (Graphics User Interface) trên X Window.
PPP: (Point to Point Protocol): Giao thức dùng để truyền thông trực tiếp giữa
hai máy.
Samba: Giao thức cung cấp File service tương tự File Service của Windows NT cho
phép các windows client truy xuất hệ thống file trên Linux Server.
DNS (Domain Name Service): Dịch vụ quản lý tên host trên mạng Internet/Intranet.
v.v....
TCP/IP là hệ thống dịch vụ mạng chính của Linux.
Tuy nhiên các service trên chỉ là các service tùy chọn, nghĩa là hệ thống có thể
có hay không có các service trên vẫn hoạt động tốt. Các service này chỉ làm cho
Unix/Linux tăng thêm khả năng và sức mạnh của mình mà thôi.
Chúng ta sẽ xem xét chi tiết từng service trên ở trong các phần sau.
Còn các service được mô tả sau đây là các service quan trọng của Unix/Linux.
Điều đó có nghĩa là nếu không có các service này, hệ thống có thể không hoạt
động được.
Do vậy, một số trong chúng sẽ được cài đặt một cách tự động khi chúng ta thiết
lập một hệ thống Unix/Linux.
a. Init:
Dịch vụ đơn lẻ quan trọng nhất trong hệ thống Unix/Linux là init. Nó được khởi
động như là tiến trình đầu tiên trong mọi hệ thống Unix/Linux. Đây là tiến
trình dùng để khởi động (boot) hệ thống. Nó sẽ kiểm tra và mount filesystems vào
hệ thống, khởi động các daemon.
Nó cung cấp các khái niệm như single user mode (chế độ hoạt động như hệ người
dùng đơn lẻ), multiuser mode (chế độ đa người dùng). Một số tài liệu còn gọi là
run level (cấp độ hoạt động).
Khi hệ thống kết thúc hoạt động (shutdown), init sẽ dọn dẹp (dừng mọi triến
trình đang hoạt động, umount filesystems, v.v...).
* init 0: Shutdown hệ thống (halt).
* init 1: Admin single user mode: chỉ có root account có thể login ở mode này.
* init 2: Multi user mode, không có hỗ trợ NFS.
* init 3: Multi user, có hỗ trợ NFS: cho phép chia sẻ hệ thống file với các hệ
thống khác trong mạng.
* int 4: Không dùng.
* int 5: Multi user, hỗ trợ graphic mode (X11)
* init 6: reboot (tái khởi động) hệ thống.
Lưu ý: không được thiết lập mặc định (default) ở chế độ này.
* s (hoặc S): Single user, sử dụng hệ thống như hệ thống cá nhân riêng biệt.
(Tại một thời điểm chỉ có một và chỉ một user có quyền đăng nhập hệ thống).
b. Login:
Dịch vụ này cho phép user login (đăng nhập) vào hệ thống và khai thác các tài
nguyên của hệ thống – trong quyền hạn mà user này được cấp.
c. Graphic User Interface (GUI):
Đây chính là X Window service. Nó cung cấp khả năng giao tiếp đồ họa với người
sử dụng.
Nếu không cài đặt X service, một số các chương trình ứng dụng có xử lý đồ họa sẽ
không thể chạy.
d. Network:
Dịch vụ này cho phép user có thể login vào hệ thống từ xa.
e. Network File System (NFS):
Đây là dịch vụ được hãng SUN phát triển. Nó cho phép các tác vụ về file trong
một hệ thống mạng là trong suốt (transparency) đối với user.
Nghĩa là, các user thao tác với các tập tin trên máy khác nhau trong cùng hệ
thống mạng như đang thao tác trên máy đơn duy nhất.
Tóm lại:
Cũng như Unix, Linux là một hệ điều hành với các khả năng multiproccessing (đa
nhiệm), multitasking (đa tác vụ), multiuser (đa người dùng) sau hơn mười năm
phát triển và hiệu chỉnh bởi hàng nghìn lập trình viên trên thế giới đã chứng tỏ
được là một hệ điều hành uyển chuyển (có thể hoạt động trên nhiều platform),
đáng tin cậy và ổn định.

You might also like