Tải bản đầy đủ (.pdf) (38 trang)

Bài giảng Hệ điều hành Linux

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (136.22 KB, 38 trang )

Hệ điều hành Linux
Chương trình đào tạo Việt Nhật &
Khoa Công nghệ Thông tin


Giới thiệu chung
Các khái niệm cơ bản
Lịch sử phát triển Unix
Hệ ñiều hành Linux
Hạt nhân Linux
Khái niệm mã nguồn mở
Các bản phân phối
Cài ñặt hệ ñiều hành


UNIX
là một hệ điều hành
đa nhiệm
đa người sử dụng
có tính mơ đun hố cao
khơng phụ thuộc vào phần cứng
hỗ trợ môi trường phát triển ứng dụng


Kiến trúc hệ thống
Giao diện

Người sử dụng
Ứng dụng
(shells, trình biên dịch, các tiện ích,…)


Thư viện lập trình
(open, close,read, write, ...)
Hạt nhân hệ ñiều hành
(quản lý tệp, bộ nhớ, thiết bị phần cứng,…)
Phần cứng máy tính


Tính đa nhiệm
Một chương trình khi chạy trong máy tính là một
tiến trình
đa nhiệm có nghĩa là nhiều tiến trình có thể chạy
cùng một thời điểm
tiến trình khơng phải là chương trình
có thể chạy nhiều tiến trình cho cùng một chương
trình tại một thời điểm
Hệ điều hành nào là đa nhiệm: DOS, NT, Windows
9x, Windows 2000, Windows XP ?


Tính đa người sử dụng
Nhiều người sử dụng có thể cùng truy xuất vào
hệ thống tại một thời điểm
cần có khái niệm tài khoản sử dụng nhưng có nhiều
tài khoản khơng đồng nghĩa với đa người sử dụng
một tiến trình tạo ra thuộc quyền sở hữu người đã tạo
ra nó
do đó các tiến trình có thể thuộc quyền sở hữu của
nhiều người khác nhau
Hệ ñiều hành nào là ña người sử dụng: DOS, NT,
Windows 9x, Windows 2000, Windows XP ?



Tính mơ đun
Mơ đun hố về kiến trúc
Hạt nhân quản lý các nhiệm vụ ở mức thấp
Tầng ứng dụng cung cấp các tiện ích sử dụng đối với
người sử dụng

Mơ đun hố về ứng dụng
Cung cấp nhiều cơng cụ nhỏ, chun dụng nhưng đa
dạng để hỗ trợ cơng việc người sử dụng
Khơng cung cấp các cơng cụ có tính đa năng nhưng
người sử dụng làm ñược rất nhiều việc phức tạp
bằng cách kết hợp các công cụ nhỏ với nhau


Các cơng cụ cơ bản
Các trình thơng dịch lệnh (shell) : sh, csh, bash
Các câu lệnh quản lý hệ thống tệp
Các câu lệnh quản lý tiến trình
Các câu lệnh xử lý dữ liệu
Các trình soạn thảo: vi, emacs, …
Các trình quản lý gói dữ liệu: tar, gzip,…
Các trình biên dịch : C, C++, Fortran, Perl
Các bộ xử lý văn bản (latex), hình ảnh (xv)
v.v.


Lịch sử phát triển Unix
1969: Thiết kế phiên bản ñầu tiên bởi Ken Thompson

trong phong thí nghiệm Bell Lab của AT&T
1973: Viết lại bằng ngơn ngữ C để cho phép cài ñặt
UNIX trên nhiều hệ thống khác nhau
1975: Phân phối sản phẩm V6 trong các trường ñại học
1977: Xuất hiện phiên bản Unix ñầu tiên dùng trong các
trường ñại học, BSD (Berkeley Software Distribution)
1978 : Phân phối V7 trong lĩnh vực cơng nghiệp
1984 : Ra đời X-Window (X11) trong Unix
1990 : Ra ñời chuẩn POSIX cho thư viện của UNIX
Ngày nay UNIX là hệ thống mở phát triển xung quanh
một hạt nhân POSIX, các tiện ích, các mơi trường hệ
thống, giao diện ñồ hoạ,...


1970

V1

1975

V6

1977

BSD1.0

1978

BSD2.0


V7

1979

BSD3.0

Unix 32 V

1980

BSD4.0

1981

BSD4.1

1982
1983

System III
BSD4.2

System V


...
1983

BSD4.2


System V

1984

System V R1
Sun OS 1.0

1985

System V R2
X10

1986
1988

BSD4.3
Sun OS 4.0

MACH

System V R4

1989

1991
1992

System V R3

X11


OSF 1

BSD4.4 ?


GNU/LINUX (1)
1984 : khởi sướng dự án GNU bởi Richard
Stallman với mục đích phát triển một hệ điều
hành đầy đủ, tựa Unix nhưng có mã nguồn mở
GNU cho ra đời nhiều tiện ích UNIX được sử dụng
ngày nay : emacs, gcc,…
Vẫn cần phải phát triển một hạt nhân để có một hệ
điều hành đầy đủ

1991 : Linus Torvald đã cơng bố phiên bản
LINUX ñầu tiên, một hạt nhân UNIX, ñồng thời
yêu cầu hỗ trợ phát triển của cộng ñồng lập trình
viên


GNU/LINUX (2)
Sự kết hợp giữa hạt nhân LINUX và các tiện ích
GNU đã cho ra đời một hệ điều hành GNU/
LINUX đầy đủ, có sức mạnh và miễn phí cho rất
nhiều dịng máy tính khác nhau
Intel x86, Alpha, ARM, Power PC (Macintosh), PDA

Chú ý
Tên LINUX vẫn thường ñược dùng cho cả hệ ñiều

hành bao gồm hạt nhân Linux và các tiện ích kèm
theo


Hạt nhân Linux (1)
1991 : Phiên bản ñầu tiên (version 0.01).
1992 : Phiên bản 0.96 có rất nhiều chức năng và sở hữu
một giao diện ñồ hoạ X Window (Xfree86)
1993 : Có hơn 100 lập trình viên tham gia phát triển
Linux (version 0.99)
1994 : Ra ñời phiên bản 1.0. Cách ñánh số các phiên
bản tuân thủ theo nguyên tắc:
..
Các phiên bản có số phụ giống nhau thì khơng có chức năng
mới
Tất cả các phiên bản ổn định đều có số phụ là chẵn
Các phiên bản "bêta" khi thêm chức năng đều có số phụ là lẻ


Hạt nhân Linux (2)
1996: Ra ñời Linux 2.0 và ñược sự dụng trong cơng
nghiệp
1997: Xuất hiện các tạp chí chun ñề về Linux ở nhiều
nước trên thế giới
2001: Ra ñời phiên bản 2.4. ðây là hạt nhân có tính ổn
định và ñược sử dụng trong hầu hết các bản phân phối
Linux
Ngày nay: Hạt nhân Linux ñang ñi vào giai ñoạn cuối.
Người lập trình khơng đưa thêm vào các chức năng mới
nữa mà tập trung vào gỡ lỗi và tạo ra phiên bản ổn ñịnh

nhất


Khái niệm mã nguồn mở
LINUX ñược bảo vệ bản quyền dưới giấy phép GPL
(General Public Licence)
Chủ sở hữu thuộc về tác giả, phân phối tự do và sử dụng miễn
phí
Có thể sử dụng để thu lợi nhuận, nhưng khơng được phép thay
ñổi các ñiều lệ trong bản quyền
Cho phép thay ñổi mã nguồn nhưng sau ñó phải phân phối dưới
cùng giấy phép GPL

GPL <> GNU
Một chương trình GNU thuộc sở hữu của tất cả mọi người

PMMNM <> PM Chia sẻ (shareware)
Mã nguồn phải ñược mở cho tất cả mọi người
Chú ý : một phần mềm mã nguồn mở không nhất thiết phải dùng
giấy phép GPL


Các bản phân phối Linux
Một bản phân phối là tập hợp đầy đủ các
chương trình của HðH bao gồm
Các cơng cụ cấu hình và cài đặt hệ thống
Các ứng dụng của người sử dụng
Phiên bản của bản phân phối <> phiên bản của hạt
nhân


Các bản phân phối
Redhat (Fedora Core)
Mandrake
Debian
VietKey (HðH Việt nam??? ☺)



ðặc điểm của HðH LINUX
Tương thích với chuẩn POSIX, System V và BSD
Hỗ trợ giả lập thiết bị ñầu cuối
Hỗ trợ các console ảo
Có thể cài đặt với các HðH khác (dùng LILO, GNUB)
ðọc ñược dữ liệu trên nhiều ñịnh dạng lưu trữ: etx2fs, msdos, vfat, iso 9660,…
Cài ñặt ñầy ñủ các chuẩn giao thức mạng: TCP/IP, SLIP,
PPP, NFS,…
Giao diện ñồ hoạ: X Window KDE & Gnome
Hỗ trợ rất nhiều dịch vụ ứng dụng: CSDL, ƯD văn phòng,
dịch vụ internet, …
Hỗ trợ tích hợp mạng với các HðH khác như Windows


Linux vs. Window
Tại sao dùng LINUX?
ñủ tin cậy ñể ñảm bảo HðH có thể thực nhiều cơng
việc nặng
Tốt hơn nhiều Windows trong khía cạnh quản lý cơng
việc và quản lý mạng
Ít lỗi hệ thống và chạy ổn đinh hơn nhiều so với
Windows

Miễn phí nhưng rất đầy đủ
Là lựa chọn tuyệt vời trong giảng dạy và nghiên cứu


Cài ñặt HðH Linux
Sử dụng bộ ñĩa cài ñặt
Thực hiện các bước
Boot hệ thống
Phân chia ổ ñĩa
Giải nén và sao chép tệp
Cấu hình hệ thống
Tạo các tài khoản sử dụng


Boot hệ thống
Kiểm tra khơng gian đĩa đủ để cài HðH
mới
Có thể cài đặt Linux cùng với Windows trên
một máy
Dọn dẹp đĩa trước khi cài đặt

Boot bằng CD-ROM
Cũng có thể boot bằng ñĩa mềm


Phân chương đĩa cứng
Một đĩa cứng có thể được phân chia thành
nhiều partition
Dưới Windows, một partition tương ñương với một ổ
lơgic


Chỉ có thể cài một HðH cho một partition
Có nhiều nhất 4 partition ngun thuỷ trên một
đĩa cứng, trong đó
chỉ có thể mở rộng nhiều nhất một partition ngun
thuỷ để chứa nhiều bảng partition logic (ñược gọi là
partition mở rộng)


Phân chương đĩa cho Linux
LINUX cần ít nhất 2 bảng partition
Một dành cho các tệp của HðH
Bảng còn lại dùng cho vùng nhớ swap (/swap)

Nên xem xét việc tạo ra các bảng partition
chuyên dùng chứa dữ liệu
Làm tăng tính an tồn và độ tin cậy của hệ thống
Ví dụ tạo một partition ñể làm ổ chưa dữ liệu người
sử dụng (/home)

Kích thước các bảng
swap: 2 lần kích thước của RAM
Kích thước các bảng khác phụ thuộc dữ liệu cần lưu
trữ


Phân chương lại đĩa
Giả thiết
ðã có một HðH được cài ñặt dùng toàn bộ ñĩa
Phân chương lại ñĩa ñể cài thêm Linux vào vùng đĩa

cịn trống

Phương pháp
(tồi nhất) sao lưu, phân chương, format lại đĩa rồi
khơi phục HðH cũ
(tốt hơn) dùng trình soạn thảo chương đĩa cứng để
giảm kích thước các bảng phân chương đã có rồi tạo
thêm partition mới cho Linux (QMagic)


Phân chương trong cài đặt Linux
fdisk
Tạo, xố và hiển thị các bảng phân chương

mkswap
Format bảng phân chương swap của Linux

swapon
ðưa bảng phân chương swap vào sử dụng như bộ
nhớ ảo máy tính

mkfs.ext2/3
Format một mảng phân chương theo định dạng hệ
thống tệp của Linux


×