L I N U X

Mục tiêu của môn học

Kiến thức (cid:0) Biết được Linux là gì và lợi ích (cid:0) Thuật ngữ “Mã nguồn mở” (cid:0) Cấu trúc hệ điều hành Linux

Kỹ năng (cid:0) Cài đặt được 1 phiên bản của Linux (cid:0) Sử dụng và cài đặt các phần mềm trên Linux (cid:0) Phân quyền trên Linux (cid:0) Sử dụng thành thạo Open Office (cid:0) Triển khai dịch vụ mạng trên Linux

Bài 1: Tổng quan về Linux

Mục tiêu: (cid:0) Giới thiệu về hệ điều hành Linux (cid:0) Cấu trúc hệ điều hành Linux (cid:0) Thông mạng Linux và Windows

Phần I: Giới thiệu về HDH Linux

(cid:0) Linux là gì? (cid:0) Lịch sử của hệ điều hành Linux (cid:0) Các tính năng của Linux

Linux là gì?

Linux là một hệ điều hành giống như DOS, Windows XP, …

(cid:0)

Là hệ điều hành đa nhiệm 32 bit, mạnh, mềm dẻo, đáng tin

cậy và tương thích với Unix.

(cid:0)

Là hệ điều hành Unix có mã nguồn mở.

(cid:0) Có thể được cài đặt trên một máy tính cá nhân và trở thành

một trạm làm việc với đầy đủ sức mạnh.

(cid:0) Được sử dụng trên các máy chủ lớn. Có thể sử dụng với mục đích thương mại trong các môi trường tính toán và

truyền tin.

(cid:0) Được sử dụng để giảng dạy về hệ điều hành và lập trình hệ

điều hành trong các trường đại học.

(cid:0)

lịch sử của hdh Linux

(cid:0)

Unix (được khởi xướng vào năm 1969) là một trong những hđh được sử dụng rộng rãi nhất trên thế giới do tính ổn định và khả năng hỗ trợ của nó.

(cid:0)

Linux là phiên bản của Unix được cung cấp miễn phí, được phát triển năm 1991 bởi Linus Torvald (1 sinh viên đại học Helssinky Phần lan).

(cid:0)

9/1991, ra đời phiên bản 0.01. Đến tháng 11/1991 đưa ra phiên bản chính thức đầu tiên 0.02.

(cid:0) 3/1994, phát hành phiên bản 1.0, đây là phiên bản tương đối ổn định.

(cid:0)

Cho tới nay, với phiên bản 10.0 cho phép ta có thể làm việc trên một môi trường đồ hoạ với các ứng dụng cao cấp.

(cid:0)

Trong số phiên bản của Linux, thì số hiệu thường ám chỉ tính ổn định của hệ điều hành Linux. Các phiên bản mang số Seri chẵn (ví dụ 6.2, 7.2) là các phiên bản ổn định, còn các phiên bản mang số Seri lẻ (6.1, 7.3) là các phiên bản chưa ổn định và đang được nâng cấp.

torvalds@osdl.org

Các tính năng của linux

Tính ổn định: – Linux có tính ổn định cao, ít bị lỗi khi sử dụng so với các HĐH

(cid:0)

khác.

Tính bảo mật: – Linux là một HĐH đa người dùng, nó cung cấp các mức bảo mật khác nhau cho người sử dụng. Mỗi người dùng chỉ làm việc trên một không gian tài nguyên riêng và chỉ có người quản trị hệ thống mới có quyền thay đổi mọi thứ trong máy.

(cid:0)

Tính hoàn chỉnh: – Bản thân Linux chính là Unix. Tất cả các tiện ích cần thiết của Unix

(cid:0)

đều có sẵn hay ở một dạng tương đương.

Tính tương thích: – Linux tương thích hầu như hoàn toàn với một số chuẩn Unix như

(cid:0)

Unix System V, SCO Unix …, có các trình giả lập DOS và Windows. Linux cũng hỗ trợ hầu hết các phần cứng PC và nhiều hệ thống file khác nhau như FAT, NTFS, Ext3, …

Các tính năng của linux

(cid:0) Hệ điều hành 32 bit đầy đủ:

– Với Linux, một tiến trình đơn lẻ có thể truy cập hàng

Tetrabyte bộ nhớ. Ngoài ra, Linux còn có thể cài đặt cùng với các HĐH khác như Windows 95/98/XP/NT/2K hay các phiên bản khác của Unix.

(cid:0) Dễ cấu hình:

– Linux cho phép ta hầu như toàn quyền điều khiển về cách làm việc của hệ thống. Tuy nhiên nó có một nhược điểm là phải hiệu chỉnh khá nhiều tập tin.

Linux làm việc trên nhiều loại máy: – Linux không yêu cầu cao về cấu hình phần cứng. Hiện tại, Linux có khả năng chạy trên nhiều dòng máy khác nhau như Apple Macintosh, Sun, Power PC …

(cid:0)

What is GNU?

(cid:0) GNU Project: Richard Stallman on September 27th

1983.

(cid:0) The GNU Project was launched in 1984 to develop a complete Unix-like operating system which is free software: the GNU system.

(cid:0) GNU's kernel isn't finished, so GNU is used with the kernel Linux. The combination of GNU and Linux is the GNU/Linux operating system, now used by millions.

www.gnu.org

Richard Stallman, father of the GNU Project

Nội dung chính của GNU - GPL

(cid:0) Tác giả vẫn giữ bản quyền đối với với phần mềm gốc.

(cid:0) Người sử dụng có thể sao chép và phân phối chương trình dưới bất cứ

hình thức nào và giá cả tùy ý.

(cid:0) Người sử dụng có thể thay đổi một phần của chương trình và phân

phối thay đổi của mình cùng toàn bộ phần mềm cho người khác, với

điều kiện nói rõ phần mình thay đổi.

(cid:0) Nếu những thay đổi không thể tách rời toàn bộ phần mềm thì GNU

GPL sẽ mở rộng sang những thay đổi đó.

(cid:0) Người sử dụng không được thông báo bản quyền.

(cid:0) Phải đảm bảo cung cấp mã nguồn khi bán một sản phẩm theo GNU

GPL để người khác có thể sử dụng và/hoặc bán tiếp. Người dùng kế

tiếp có đầy đủ quyền lợi như của người trước.

Cấu trúc của hệ thống linux

(cid:0) Nhìn từ góc độ kỹ thuật, Linux chỉ là một nhân HĐH, nó hỗ trợ đầy đủ

các phục vụ cơ bản về quản lý tiến trình, bộ nhớ ảo, quản lý file và các

thiết bị vào/ra. Hay nói cách khác, bản thân Linux là phần thấp nhất

của hệ điều hành. Tuy nhiên, phần lớn người dùng đều coi Linux như

một hệ thống hoàn chỉnh gồm nhân HĐH kèm theo các trình ứng dụng

khác.

(cid:0) Về kiến trúc, HĐH Linux được tổ chức như sau:

User Program (Chương trình ứng dụng)

Shell (Hệ vỏ)

Kernel (Nhân HĐH)

Hardware (Phần cứng)

1. Nhân (Kernel)

Là thành phần chính của HĐH, là trái tim của hệ điều hành (giống như tập tin DOS.SYS trong DOS hoặc KRNL386.EXE trong Windows) thực hiện:

(cid:0)

– Giao tiếp trực tiếp với CPU.

– Giao tiếp trực tiếp với phần cứng của máy tính.

– Điều khiển giao diện giữa chương trình người dùng với thiết bị

phần cứng.

– Xếp lịch các tiến trình để có thể thực hiện đa nhiệm và các nhiệm

vụ khác của hệ thống.

– Cung cấp các dịch vụ cho các chương trình và cách ly các chương

trình này với phần cứng.

– Quản lý bộ nhớ, điều khiển truy nhập, quản lý hệ thống file, quản lý các ngắt, các lỗi và các dịch vụ vào/ra và cấp phát tài nguyên của máy tính cho người dùng.

– Ngoài ra, nhân cũng chứa các trình điều khiển thiết bị khác nhau

giống như tập tin Config.sys của DOS

2. Hệ vỏ (Shell)

(cid:0)

– Cung cấp các chức năng giao tiếp giữa người dùng và hệ thống, giúp

người dùng thi hành các lệnh dễ dàng. Shell cho phép đọc và thực hiện các lệnh của người dùng ngay sau khi vào hệ thống, Shell coi từ đầu tiên của dòng lệnh như là tên lệnh, coi các từ còn lại trên dòng lệnh như là các tham số của dòng lệnh.

Là giao diện tương tác giữa chương trình người dùng và nhân HĐH, nó thực hiện:

(cid:0)

Shell trong Linux giống như chương trình Command.com trong DOS nhưng nó mạnh hơn Command.com rất nhiều, nó cung cấp nhiều khả năng khác mà DOS không có. Trong Shell người ta có thể viết các kịch bản Shell (Shell Script) tương tự như các file .BAT trong DOS.

(cid:0) Các loại Shell: Bash Shell (sh), C-Shell, Korn Shell (Ksh) hay Zsh.

(cid:0)

Trong đó hệ vỏ mặc định của Linux là sh. Cũng giống như trong Command.com có thể thay đổi bằng một vài chương trình khác, hệ vỏ của Linux cũng có thể thay đổi được.

3. Các chương trình ứng dụng

(cid:0) Chương trình ứng dụng là lớp ngoài cùng của hệ

điều hành, nó cung cấp các công cụ cho phép người

dùng giao tiếp với hệ điều hành đó

(cid:0) Hệ điều hành Linux chứa hàng trăm lệnh, các lệnh

được sử dụng với nhau như các tiện ích mà chúng ta

có thể dùng riêng rẽ hoặc kết hợp với nhau theo một

cách nào đó. Người dùng có thể thực hiện các lệnh

bằng cách gọi chúng thông qua Shell. Chúng bao

gồm các tiện ích để soạn thảo, thao tác với file và thư

mục, truyền thông, tính toán, quản trị hệ thống …

Phần II: Ra-vào mạng Linux

(cid:0) Khái niệm về Super user (Siêu người dùng)

(cid:0) Thao tác trên máy Linux

– Khởi động Linux

– Vào mạng với tư cách Super user

– Làm việc trên các Console ảo

– Đóng Linux

(cid:0) Thao tác trên máy trạm Windows

– Truy nhập mạng từ trạm làm việc

1. Khái niệm về siêu người dùng

(cid:0) Siêu người dùng trong Linux chính là người quản trị hệ thống, là người có các đặc quyền

đặc biệt cao nhất trong hệ thống để thực hiện

tất cả các tác vụ liên quan đến hệ thống.

(cid:0) Trong Linux, người quản trị hệ thống truy

nhập với tên là root với mật khẩu được tạo ra

trong quá trình cài đặt.

2. Khởi động Linux

(cid:0) Bật công tắc nguồn

(cid:0) Chương trình khởi động sẽ tải hệ điều hành và hiện các thông tin về hệ điều hành. Cuối cùng sẽ hiện dấu mời để

cho phép người dùng truy nhập hệ thống như sau:

Tên nhân hệ điều hành Login: gõ tên đăng nhập (cid:0) Password: Mật khẩu (cid:0)

(cid:0) Sau khi vào đúng tên người dùng và mật khẩu sẽ xuất hiện dấu nhắc lệnh cho phép người dùng thực hiện các

lệnh trên hệ thống như sau:

[root@Linux_Server2 root]# (cid:0)

3. Làm việc với các console ảo

(cid:0) Linux là hệ điều hành đa nhiệm, đa người dùng, nó cho phép nhiều

người dùng cùng truy nhập hệ thống và làm nhiều việc khác nhau tại

một thời điểm. Để thực hiện điều đó, Linux sử dụng các Console ảo.

(cid:0) Linux cho phép sử dụng tối đa là 7 Console ảo. Để làm việc với các

Console ảo, ta giữ phím ALT và ấn 1 trong 7 phím chức năng từ F1

đến F7. Khi đó mỗi Console ảo sẽ cho ta một màn hình mới với một

Login:

dấu mời truy nhập hệ thống:

(cid:0) Theo mặc định, khi khởi động Linux, sẽ xuất hiện Console ảo đầu tiên

tương ứng với ALT+F1, còn Console ảo thứ 7 (ứng với ALT+F7) là

màn hình giao diện đồ hoạ của Linux.

4. Đóng linux

Vào mạng với tư cách người dùng root (là người có đặc quyền Shut down hệ thống). (cid:0) Gõ lệnh với cú pháp sau:

# shutdown [Option] [Time] [Message] (cid:0)

(cid:0)

Trong đó: – [Option]: Là các tuỳ chọn chỉ ra yêu cầu đối với lệnh Shutdown.

(cid:0)

Tuỳ chọn này có thể là: h- Tắt máy, r- Khởi động lại máy

– [Time]: Chỉ ra khoảng thời gian (tính theo phút) trước khi thực hiện lệnh shutdown. Nếu dùng tham số now thì sẽ đóng hệ thống ngay lập tức.

– [Message]: Thông báo được gửi cho mọi người đang truy nhập hệ

thống, thông báo này được đặt trong dấu “ ”

Ví dụ:

# shutdown -r 3 “Hay tat may!” (cid:0) Hay tat may! The System is going DOWN for reboot in 3 minutes

(cid:0)

Đóng linux

(cid:0) Ngoài ra ta có thể thực hiện các lệnh sau để

thay cho lệnh shutdown:

– init 6 hoặc reboot: Khởi động lại hệ thống ngay lập tức. – init 0 hoặc halt: Tắt hệ thống ngay lập tức

(cid:0) Ví dụ:

– $ init 6 hoặc – $ init 0 hoặc

$ reboot $ halt

Putty

Windows XP

Fedora