Các phiên bản của Hệ điều hành Linux được xác định bởi hệ thống số dạngX.YY.ZZ.. Mặt khác doLinux được một cộng đồng rất lớn những người làm phần mềm cùng phát triển trên cácmôi trường,
Trang 1Khoa công nghệ thông tin
==============
BÀI TẬP LỚN Môn học: Nguyên lý hệ điều hành
Hà Nội, năm 2015
Trang 2CHƯƠNG I TỔNG QUAN VỀ HỆ ĐIỀU HÀNH LINUX 3
I Lịch sử phát triển của Linux 3
II Ưu- Nhược điểm của hệ điều hành Linux 3
1 Ưu điểm 3
2 Nhược điểm 4
III Các bản phân phối Linux hiện nay 5
IV Một số bản phân phối được sử dụng phổ biến hiện nay 5
V Một số bản phân phối dùng cho máy chủ ở Việt Nam 6
CHƯƠNG II: CÁC DỊCH VỤ MẠNG TRONG LINUX 7
I Dịch vụ DNS 7
1 Giới thiệu về DNS : 7
2 Hệ thống tên miền DNS 7
3 Cấu trúc tên miền 8
4 Nguyên tắc làm việc của DNS 9
5 Hoạt động của DNS server 10
6 Máy chủ quản lý tên miền (Domain name server) 11
7 Các bản ghi thường có trong cơ sở dữ liệu của DNS server 11
8 Phân loại DNS server 12
9 Cài đặt và cấu hình DNS server 13
II Dịch vụ DHCP 18
1 Giới thiệu về DHCP 18
2 Nguyên tắc hoạt động 19
3 Cài đặt và cấu hình DHCP 19
Tổng Kết 23
Tài liệu tham khảo 24
Trang 3Lời Nói Đầu
iện nay hệ điều hành được mọi người sử dụng phổ biến nhất là Windows, tuy nhiên bên cạnh đó cũng có một số hệ điều hành khác dễ sử dụng với nhiều tiện ích giống như Windows Trong đó, phải kể đến hệ điều hành Linux Linux có tính “mở” nên dễ sửa lỗi bởi một cộng đồng mã nguồn
mở vì vậy nó có độ an toàn cao, ngoài ra Linux còn rất thích hợp cho việc quản trị mạng.
H
Phần bài tập lớn này nhằm cung cấp cho các bạn sinh viên và giáo viên các kiến thức tổng quan về hệ điều hành Linux và các dịch vụ mạng trong Linux.
Bài tập gồm 2 chương:
Chương 1 :Tổng quan về hệ điều hành Linux.
Chương 2 :Các dịch vụ mạng trên Linux.
Chúng em hi vọng phần bài tập lớn này sẽ cung cấp thêm phần nào kiến thức chuyên sâu về bộ môn hệ điều hành.
Tuy đã rất cố gắng trình bày chi tiết, đầy đủ và dễ hiểu nhất nhưng đâu đó vẫn không thể tránh khỏi những sai xót, nhầm lẫn không đáng có Chúng em rất mong nhận được sự góp ý, bổ sung thẳng thắn từ các thầy cô để ngày càng hoàn thiện hơn trong sự hiểu biết kiến thức chuyên sâu về máy tính.
Chúng em xin chân thành cảm ơn.
Trang 4CHƯƠNG I TỔNG QUAN VỀ HỆ ĐIỀU HÀNH
LINUX
I Lịch sử phát triển của Linux
Linux là một HĐH dạng UNIX (Unix-like Operating System) chạy trên máy PCvới bộ điều khiển trung tâm (CPU) Intel 80386 trở lên, hay các bộ vi xử lý trung tâmtương thích AMD, Cyrix Linux ngày nay còn có thể chạy trên các máy Macintosh hoặcSUN Sparc
Năm 1991 Linus Torvalds, sinh viên của đại học tổng hợp Helsinki, Phần lan, bắtđầu một dự án (sau này trở thành nhân Linux – Linux kernel) Chương trình này đượcviết trên MINIX (một HĐH tựa UNIX) bằng ngôn ngữ C và dịch bằng GNU C
Ngày 25/8/1991, Linus cho ra version 0.01 và thông báo trên comp.os.minix củaInternet về dự định của mình về Linux Linus muốn gọi tác phẩm của mình là Freax, kếthợp của “freak” (kỳ dị), "free” (tự do), and “x” (Unix) Trong quá trình làm việc anh lưuchương trình với tên “Freax” khoảng nửa năm Để việc phát triển dễ dàng, các tập tinđược upload lên một FTP server (ftp.funet.fi) của FUNET vào tháng 9 năm 1991 AriLemmke, cộng sự của Torvald tại ĐH Helsinki, nghĩ rằng tên Freax không hay lắm nênđặt lại thành “Linux” mà không hỏi ý Torvalds Sau đó Torvalds đồng ý với tên gọi mớinày Năm 1994, phiên bản chính thức 1.0 được phát hành
Các phiên bản của Hệ điều hành Linux được xác định bởi hệ thống số dạngX.YY.ZZ Nếu YY là số chẵn tức là phiên bản ổn định, YY là số lẻ tức là phiên bản thửnghiệm
II Ưu- Nhược điểm của hệ điều hành Linux
1 Ưu điểm
Kinh tế:
Đó là một đặc điểm không thể bỏ qua của Linux Tuy nhiên đối với Linux đó vẫnchưa là tất cả Hệ điều hành này còn rất nhiều ưu điểm khác mà không một hệ điều hànhnào có Chính những đặc điểm này mới là nguyên nhân khiến cho Linux ngày càng trởnên phổ biến không chỉ ở Việt Nam mà cả ở trên thế giới
Linh hoạt, uyển chuyển:
Linux là một Hệ điều hành mã nguồn mở nên chúng ta có thể tùy ý sửa chữa theonhư mình thích (tất nhiên là trong khả năng kiến thức của mỗi người) Chúng ta có thểchỉnh sửa Linux và các ứng dụng trên đó sao cho phù hợp với mình nhất Mặt khác doLinux được một cộng đồng rất lớn những người làm phần mềm cùng phát triển trên cácmôi trường, hoàn cảnh khác nhau nên tìm một phiên bản phù hợp với yêu cầu của mỗingười sẽ không phải là một vấn đề quá khó khăn.Tính linh hoạt của Linux còn được thểhiện ở chỗ nó tương thích được với rất nhiều môi trường Hiện tại, ngoài Linux dành choserver, PC…nhân Linux còn được nhúng vào các thiết bị điều khiển như máy tính palm,robot…Phạm vi ứng dụng của Linux được xem là rất rộng rãi
Trang 5 Thích hợp cho quản trị mạng:
Được thiết kế ngay từ đầu cho chế độ đa người dùng, Linux được xem là một hệđiều hành mạng rất giá trị Nếu như Windows tỏ ra là một Hệ điều hành thích hợp vớimáy tính Desktop thì Linux lại là hệ điều hành thống trị đối với các Server Đó là doLinux có rất nhiều ưu điểm thỏa mãn đòi hỏi của một hệ điều hành mạng: tính bảo mậtcao, chạy ổn định, các cơ chế chia sẻ tài nguyên tốt… Giao thức TCP/IP mà chúng ta vẫnthấy ngày nay chính là một giao thức truyền tin của Linux (sau này mới được đưa vàoWindows)
Chạy thống nhất trên các hệ thống phần cứng:
Dù cho có rất nhiều phiên bản Linux được các nhà phân phối khác nhau ban hànhnhưng nhìn chung đều chạy khá ổn định trên mọi thiết bị phần cứng, từ Intel 486 đếnnhững máy Core 2 Duo, từ những máy có dung lượng RAM chỉ 4MB đến những máy
có cấu hình cực mạnh (tất nhiên là tốc độ sẽ khác nhau nhưng về nguyên tắc vẫn có thểchạy được) Nguyên nhân là Linux được rất nhiều lập trình viên ở nhiều môi trườngkhác nhau cùng phát triển (không như Windows chỉ do Microsoft phát triển) và chúng ta
sẽ bắt gặp nhiều người có "cùng cảnh ngộ" như mình và dễ dàng tìm được các drivertương ứng với thiết bị của mình Tính chất này hoàn toàn trái ngược với Windows Mỗikhi có một phiên bản Windows mới ra đời thì bao giờ kèm theo đó cũng là một cơn khát
về phần cứng vì hệ điều hành mới thường không hỗ trợ các thiết bị quá cũ
2 Nhược điểm
Đòi hỏi người dùng phải thành thạo:
Trước kia việc sử dụng và cấu hình Linux được xem là một công việc chỉ dànhcho những kĩ thuật viên CNTT Hầu như mọi công việc đều thực hiện trên các dòng lệnh
và phải cấu hình nhờ sửa trực tiếp các file Mặc dù trong những phiên bản gần đây, các
Hệ điều hành Linux đã có những cải tiến đáng kể, nhưng so với Windows tính thân thiệncủa Linux vẫn còn là một vấn đề lớn Đây là một trong những nguyên nhân chủ yếu khiếnLinux mặc dù có rất nhiều đặc tính kỹ thuật tốt nhưng vẫn chưa đến được với ngườidùng cuối
Tính tiêu chuẩn hóa:
Linux được phát hành miễn phí nên bất cứ ai cũng có thể tự mình đóng gói, phânphối theo những cách riêng Hiện tại có khá nhiều bản Linux phát triển từ một nhân ban
Trang 6đầu cùng tồn tại như: RedHat, SuSE, Knoppix… Người dùng phải tự so sánh xem bảnnào là phù hợp với mình Điều này có thể gây khó khăn cho người dùng, nhất là nhữngngười còn có kiến thức về tin học hạn chế.
Số lượng các ứng dụng chất lượng cao trên Linux còn hạn chế:
Mặc dù Windows có sản phẩm nào thì Linux cũng gần như có phần mềm tương
tự, (VD: OpenOffice trên Linux tương tự như MSOffice, hay GIMP tương tự nhưPhotoshop ) Tuy nhiên chất lượng những sản phẩm này là chưa thể so sánh được vớicác sản phẩm viết cho Windows
Phần cứng:
Một số nhà sản xuất phần cứng không có driver hỗ trợ Linux: Do hiện nay Linuxchưa phổ biến bằng Windows nên nhiều nhà sản xuất không hỗ trợ các driver chạy trênLinux Tuy nhiên chúng ta vẫn có thể tìm thấy các driver này trên internet do cộng đồng
mã nguồn mở viết
III Các bản phân phối Linux hiện nay
Ubuntu 14.10 http://www.ubuntu.com/
Debian
GNU/Linux 7.7 http://www.debian.org/
Ultimate Edition 4.2 http://ultimateedition.info/
Red Hat 7 http://www.redhat.com/rhel/
Chrome Linux 2.4.1290 http://getchrome.eu/
Fedora 21 http://www.fedoraproject.org/
SUSE Linux 13.1 http://vi.opensuse.org/
Linux Mint 17 http://linuxmint.com/
Trang 7Không có gì phải ngạc nhiên khi Ubuntu là bản phân phối Linux phổ biến nhất.Với hơn 2.200 lượt xem mỗi ngày trên distrowatch.com, vượt xa con số 1.400 lượt củaFedora, bản phân phối được xếp ở vị trí thứ hai Ubuntu là một đứa con sinh sau đẻmuộn của họ hàng Linux, bản phát hành đầu tiên của Ubuntu là vào 20/10/2004, nhưng
sự phát triển vượt bậc đã đưa nó đến vị trí hàng đầu kể từ năm 2007
Fedora:
Fedora là một phiên bản miễn phí của Red Hat trong khi Red Hat EnterpriseLinux (RHEL) đã trở thành phiên bản thương mại kể từ năm 2003 Do quan hệ khăngkhít này, Fedora đặc biệt mạnh về các tính năng dành cho doanh nghiệp, và thường đượccung cấp trước mỗi phiên bản mới của RHEL
Linux Mint:
Đây cũng là một bản phân phối non trẻ khác của Linux, Linux Mint mới chỉ đượcphát hành từ năm 2006 Linux Mint dựa trên bản phân phối Ubuntu, thêm vào các chủ đềriêng, các bộ ứng dụng độc đáo và đặc biệt mạnh về đồ hoạ Nó sử dụng môi trườngdesktop mintDesktop, mintInstall để thuận tiện trong cài đặt ứng dụng và mintMenu giúpđiều hướng dễ dàng Mint nổi tiếng dễ dùng, thích hợp cho người mới bắt đầu sử dụngLinux
V Một số bản phân phối dùng cho máy chủ ở Việt Nam
CentOS:
CentOS là một bản phân phối hệ điều hành tự do dựa trên Linux kernel Nó cónguồn gốc hoàn toàn từ bản phân phối Red Hat Enterprise Linux (RHEL) CentOS tồntại để cung cấp một nền tảng điện toán doanh nghiệp tự do và phấn đấu để duy trì khảnăng tương thích nhị phân 100% với nguồn thượng nguồn của nó - Red Hat CentOS làviết tắt của Community Enterprise Operating System Trong tháng 7/2010 CentOS đãvượt qua Debian trở thành bản phân phối Linux phổ biến nhất cho máy chủ web, với gần30% của tất cả máy chủ web Linux sử dụng nó Tuy nhiên vào tháng 1/2012, sau mộtcuộc đua đối đầu, nó bị mất vị trí dẫn đầu vào tay Debian
Debian:
Distro này cũng nổi tiếng nhờ sự ổn định của nó, cộng đồng debian ở
Việt Nam không nhiều, cộng đồng Ubuntu hay Fedora là mạnh hơn cả Nếu muốn
xây dựng một server bảo mật theo nguyên tắc "xây dựng mọi thứ từ tờ giấy trắng"
thì nên dùng nó, khi install chọn vào mục install tối thiểu những thứ cần thiết Sau
đó thì tự setup cho hoàn chỉnh để kiểm soát được những gì có trên system, và tiết
kiệm tài nguyên
Trang 8CHƯƠNG II: CÁC DỊCH VỤ MẠNG TRONG LINUX
I Dịch vụ DNS
1 Giới thiệu về DNS :
Mỗi máy tính trên mạng muốn kết nối với nhau cần biết được địa chỉ IP của nhau Tuy nhiên mỗi máy ngoài địa chỉ IP còn có một tên (HOSTNAME) Cùng với việcđịa chỉ IPV4 ngày càng không đáp ứng được nhu cầu, thế nên chuyển sang IPV6 là điềutất yếu và để nhớ được một dãy số hexa 32 số là một điều không tưởng
Chính vì thế có một cách được nghĩ ra đó là ánh xạ địa chỉ IP thành hostname của nó
và ngược lại Ban đầu quy mô mạng ARPA NET (tiền thân của mạng internet) còn nhỏ ,chỉ có một tập tin HOST.TXT dung để lưu tông tin và ánh xạ tên máy thành địa chỉ IP.Trong đó tên máy chỉ là một chuỗi văn bản không phân cấp (plat name) Tệp tin này lưutrên một máy chủ và các máy chủ khác giữ bản sao của nó Tuy nhiên khi quy mô mạnglớn hơn thì dung HOSTNAME có một số nhược điểm:
a Lưu lượng mạng và máy chủ duy trì tập tin HOST.TXT bị quá tải
b Xung đột tên: do tên máy không phân cấp và không có cơ quan quản lý tập tinnên có nguy cơ bị xung đột tên
c Không đảm bảo sự toàn vẹn: việc duy trì tập tin trên một mạng lớn rất khókhăn Ví dụ: khi tập tin HOST.TXT vừa cập nhật chưa kịp chuyển đến máy chủ ở
xa thì đã có sự thay đổi địa chỉ trên mạng rồi
d Tóm lại, việc sử dụng tập tin HOST.TXT không phù hợp cho mạng lớn vì thiếu
cơ chế phân tán và mở rộng Do đó dịch vụ DNS ra đời nhằm khắc phục cácnhược điểm này
2 Hệ thống tên miền DNS
DNS hoạt động theo mô hình client – server Máy chủ server chứa các thông tin
Trang 9CSDL Phía client là trình phân giải tên resolver, nó chỉ là các hàm thư viện dùng để tạocác query và gửi chúng đến máy chủ DNS server.
DNS hoạt động như một giao thức tầng application trong mạng ICP/IP
DNS là một cơ sở dữ liệu phân tán Có nhiệm vụ chuyển đổi tên miền sang địa chỉ IP và ngược lại Hệ thống DNS ra đời nhằm mục đích giúp người sử dụng một tên dễnhớ, dễ sử dụng
3 Cấu trúc tên miền
a) Cách đặt tên miền
- Tên miền sẽ có dạng: Label.label…label
- Độ dài tối đa của 1 tên miền là 255 ký tự
- Mỗi label tối đa là 63 ký tự kể cả dấu “.”
- Label phải được bắt đầu bằng chữ số và chỉ được chứa chữ, số, dấu gạch ngang(-)
b) Phân loại tên miền
- Tên miền được phân chia thành các loại sau:
+) Com: Tên miền này dành cho các tổ chức thương mại
+)Edu: Tên miền này dành cho các tổ chức giáo dục, trường học
+)Net: Tên miền này dành cho các tổ chức mạng lớn
+)Gov: Tên miền này dành cho các tổ chức chính phủ
+)Org: Tên miền này dành cho các tổ chức khác
+)Int : Tên miền này dành cho các tổ chức quốc tế
+)Infor: Tên miền này dành cho việc phục vụ thông tin
+)Arpa: Tên miền ngược
+)Mil: Tên miền này dành cho các tổ chức quân sự, quốc phòng
+)Mã các nước trên thế giới tham gia vào mạng internet, các nước này được quy địnhbằng 2 chữ cái theo chuẩn ISO-3166 (VD Việt Nam là vn, Singapo là sg…)
Tổ chức ICANN đã thông qua 2 tên miền mới là:
+)Travel: Tên miền này dành cho các tổ chức du lịch
Trang 10+)Post: Tên miền này dành cho các tổ chức bưu chính.
c) Cấu trúc tên miền:
- Tên miền được phân thành nhiều cấp như:
-Gốc(Domain root): Nó là đỉnh của nhánh cây của tên miền, nó xác định kết thúc củaDomain Nó thể diễn đơn giản chỉ là dấu chấm (.)
-Tên miền cấp 1(Top-Level-Domain): Gồm vài ký tự xác định 1 nước, khu vực hoặc
tổ chức Nó được thể hiện là “.com”
-Tên miền cấp 2(Second-Level-Domain):Nó rất đa dạng có thể là tên một công ty, tổchức hay cá nhân
-Tên miền cấp nhỏ hơn(subdomain): Chia thêm ra của tên miền cấp 2 trở xuốngthường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủ thể nào đó.Như phone.haui.vn là môt phòng ban của HAUI
Ví dụ: cho địa chỉ : www.haui.edu.vn
Dịa chỉ này được đọc từ trái sang phải
+ Đầu tiên là (www) là tên máy tính
+haui là tên miền cấp 3 được đăng ký với cơ quan quản lý tên miền dưới cấp vn làtrung tâm thông tin mạng internet Việt Nam
+ edu là tên miền cấp 2 cho biết địa chỉ này thuộc mạng giáo dục
+vn cho biết toàn bộ miền này thuộc quyền quản lý của mạng Internet Việt Nam
- Một số chú ý khi đặt tên miền:
+Nên đặt tên miền từ 3-4 cấp để dễ nhớ tên và quản trị
+Sử dụng tên miền phải là duy nhất trong mạng Internet
+Nên đặt đơn giản gợi nhớ
4 Nguyên tắc làm việc của DNS
Mỗi nhà cung cấp dịch vụ vận hành và duy trì DNS server của riêng mình Khi cóyêu cầu tìm kiếm một website nào đó, thì DNS server phân giải tên website này phải làDNS server của chính tổ chức quản lý website đó
Trang 11INTERNIC – Internet Network Information Center chịu trách nhiệm quản lý cáctên miền và DNS server tương ứng.
DNS server có khả năng truy vấn các DNS server khác Ngoài việc phân giải tên miền cho các máy trong nội bộ thì nó cũng hỗ trợ các truy vấn từ các máy ngoài mạng internet vào bên trong
DNS server cũng có khả năng nhớ lại các tên vừa phân giải, để dùng cho những lần truy vấn lần sau Số lượng tên miền được lưu lại phụ thuộc vào quy mô của từng DNS server
5 Hoạt động của DNS server
Để hiểu rõ về hoạt động của DNS server chúng ta xét ví dụ và tham khảo hình vẽdưới đây:
Giả sử PC A muốn truy cập đến trang web www.yahoo.com nhưng server vnn chưa lưuthông tin về trang web này, các bước truy vấn sẽ diễn ra như sau:
Đầu tiên PC A gửi một request hỏi server quản lý tên miền vnn hỏi thông tin về
www.yahoo.com.Sever quản lý tên miền vnn gửi một truy vấn đến top-level-domain.Top-level-domain lưu trữ thông tin về mọi tên miền trên mạng Do đó nó sẽ gửi lại choserver quản lý tên miền vnn địa chỉ IP của sever quản lý miền com (gọi tắt sever com )
Trang 12Khi có địa chỉ của server quản lý miền com thì lập tức server vnn hỏi server com vềyahoo.com Server con quả lý toàn bộ những trang web có domain là com, chúng gửithông tin về địa chỉ IP của sever yahoo.com cho sever vnn.Lúc này server vnn đã có địachỉ của yahoo.com rồi Nhưng PC A yêu cẩu dịch vụ www chứ không phải dịch vụ ftphay một dịch vụ nào khác Do đó server vnn tiếp tục truy vấn tới server yahoo.com đểyêu cầu thông tin về server quản lý dịch vụ www.yahoo.com Lẽ đương nhiên khi nhậnđược truy vấn thì server yahoo.com gửi lại cho sever vnn địa chỉ IP của sever quản lý
www.yahoo.com
Cuối cùng là server vnn gửi lại địa chỉ IP của server quản lý www.yahoo.com cho PC
A và PC A kết nối trực tiếp đến nó Và bây giờ server vnn đã có thông tin về
www.yahoo.com cho nhũng lần truy vấn đến sau của các client khác
6 Máy chủ quản lý tên miền (Domain name server)
Máy chủ cấp cao nhất là Root server do tổ chức ICANN quản lý:
+)Là server quản lý toàn bộ cấu trúc của hệ thống tên miền
+)Root server không chứa dữ liệu thông tin về cấu trúc hệ thống DNS mà chỉ chuyểnquyền (delegate) quản lý xuống cho các server cấp thấp hơn và do đó root server có thểđịnh đường đến của một domain tại bất kỳ đâu trên mạng
+)Hiện nay trên thế giới có 13 root server quản lý toàn bộ mạng Internet
7 Các bản ghi thường có trong cơ sở dữ liệu của DNS server
- Bản ghi kiểu A (Address): Chỉ ra tên một máy tính trên mạng và địa chỉ IP của
nó
Cú pháp: domain IN A <địa chỉ IP máy>
VD www.haui.edu.vn IN A 172.16.234
- Bản ghi CNAME(Canonical Name): Cho phép 1 máy tính có thể có nhiều
tên(cho phép nhiều tên miền trỏ đến 1 địa chỉ IP cho trước) Để khai báo bản ghikiểu CNAME bắt buộc phải có bản ghi kiểu A để khai báo tên máy
- Bản ghi MX(Mail exchanger): Dùng để khai báo trạm chuyển tiếp thư điện tử