Các khái niệmcơ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
38 trang |
Chia sẻ: Mr Hưng | Lượt xem: 948 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Hệ điều hành Linux, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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 hoá 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
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
Giao diện
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 hoá 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 hoá về ứng dụng
Cung cấp nhiều công cụ nhỏ, chuyên 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ạ,...
V11970
V61975
BSD1.01977
BSD2.01978 V7
BSD3.01979 Unix 32 V
BSD4.01980
BSD4.11981
1982 System III
1983 System VBSD4.2
1983 System VBSD4.2
1984 System V R1
1985 System V R2
1986 System V R3BSD4.3
1989 System V R4
1988 MACH
1991 OSF 1
1992 BSD4.4 ?
Sun OS 1.0
Sun OS 4.0
...
X11
X10
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í chuyên ñề 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, ms-
dos, 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 nguyên thuỷ trên một
ñĩa cứng, trong ñó
chỉ có thể mở rộng nhiều nhất một partition nguyên
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 toà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, xoá 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
Cài ñặt các gói
Một gói chưa một tập các ứng dụng bao gồm
các tệp ñã ñược nén
Cài ñặt một gói tương ñương với việc giải nén, copy
vào máy tính và cấu hình nếu cần thiết
Lựa chọn các gói cài ñặt có thể theo một số cấu
hình ñặt sẵn từ trước
Cho máy trạm
Cho máy chủ
Chọn bằng tay
V.v.
Tạo tài khoản sử dụng
Có hai loại tài khoản
Người quản trị root : là người quản trị cao nhất trong
hệ thống, ñược phép làm mọi việc mà không bị kiểm
soát
Các tài khoản thông thường ñược tạo ra cho các mục
ñích:
Cung cấp tài khoản truy nhập cho người sử dụng hệ thống
Cung cấp tài khoản dùng bởi các dịch vụ hệ thống như http,
samba, mysql,
Chú ý: Tuyệt ñối tránh làm việc dưới tài khoản của
root cho các công việc thông thường hàng ngày
Sử dụng căn bản
ðăng nhập
Mỗi người sử dụng phải sở hữu một tên ñăng
nhập và có một mật khẩu kèm theo
Người sử dụng có thể ñăng nhập hệ thống với
tên và mật khẩu thông qua thiết bị giao tiếp
(console)
Có hai dạng console
Chế ñộ văn bản (sử dụng trình thông dịch lệnh)
Chế ñộ ñồ hoạ (sử dụng giao diện cửa sổ)
Mỗi lần ñăng nhập tạo ra một phiên làm việc.
Phiên ñược kết thúc bằng câu lệnh
exit hoặc logout
ðăng nhập ở chế ñộ văn bản
Một trình thông dịch lệnh ñược tự ñộng khởi
ñộng khi phiên làm việc bắt ñầu
Cho phép tạo tương tác với người sử dụng thông qua
câu lệnh
Nhập lệnh bằng bàn phím, kết quả in ra dạng văn bản
trên màn hình
Sử dụng rất ít tài nguyên nên phù hợp ngay cả khi
cần tương tác từ xa
Hoạt ñộng dựa trên một ngôn ngữ lập trình dạng kịch
bản (script)
Console ảo
Một phương tiện cho phép mở ñồng thời nhiều
phiên làm việc trên cùng một trạm làm việc
LINUX hỗ trợ 8 console ảo trên một máy tính.
Mỗi console quản lý tương ứng một phiên làm
việc. ðể chọn console ảo cần sử dụng tổ hợp
phím tắt Ctrl+Alt+F1 cho ñến F8
Ctrl+Alt-F1 : Console ảo 1
Ctrl+Alt-F2 : Console ảo 2
...
Ctrl+Alt-F7 : Console ảo 7 (cho chế ñộ ñồ hoạ)
Dấu nhắc câu lệnh
Trình thông dịch lệnh (còn gọi là shell) thực hiện
một cách lặp nhiều lần các công việc sau ñây
Hiển thị dấu nhắc chờ lệnh của người sử dụng
Bắt câu lệnh của người sử dụng
Phân tích lệnh
Thực hiện lệnh
[tuananh@hanoi home]$
[root@hanoi home]#
Tên máyTên login Thư mục Dấu nhắc
Ví dụ ñăng nhập
login: tuananh
password: xxxxx
[tuananh@hanoi tuananh]$ echo hello↵
hello
[tuananh@hanoi tuananh]$ exit↵
Câu lệnh Unix
command [-options] [arguments]
command là tên câu lệnh
options biểu diễn một hoặc một vài tuỳ chọn
arguments là các tham số câu lệnh
Một tuỳ chọn ñược thể hiện bởi một kí tự ñi sau dấu
gạch ngang (“-”)
Có thể nối nhiều tuỳ chọn sau một dấu gạch ngang.
Ví dụ, -asli tương ñương với -a -s -l -i
Nếu một lựa chọn cần tham số kèm theo thì chúng
ñược phân cách nhau bởi một dấu trắng
Cần phân biệt chữ hoa và thường trong câu lệnh
Giới thiệu câu lệnh căn bản
logname : hiên thị tên NSD ñang ở phiên làm việc
hostname : hiển thị tên trạm làm việc
clear : xoá màn hình
who : tên của những người ñang ñăng nhập
exit : kết thúc phiên làm việc
passwd : thay ñổi mật khẩu
date : hiển thị ngày hệ thống
mkdir : tạo thư mục
rmdir : xoá thư mục
cd : chuyển vị trí thư mục
pwd : ñường dẫn thư mục hiện tại
cp : sao chép tệp
rm : xoá tệp
ps : xem tiến trình
v.v
Các tiện ích của shell (bash)
Hoàn thành tự ñộng câu lệnh với phím
Cho tên câu lệnh
$ema ==> $emacs
Cho tham số là tên tệp
$cd /usr/inc ==> $cd /usr/include
Gọi lại các câu lệnh trong quá khứ
Sử dụng phím lên (↑) và xuống (↓) tìm các câu lệnh
ñã gõ trong quá khứ
Trợ giúp (man)
Xem trợ giúp trực tuyến bằng lệnh man ñể biết
cách sử dụng các câu lệnh, cấu trúc tệp dữ liệu
và cả các hàm thư viện Unix
$man ls : ñặc tả câu lệnh ls
$man fstab : ñặc tả tệp /etc/fstab
$man fgetc : ñặc tả hàm thư viện fgetc
Sử dụng các phím sau ñể xem trợ giúp
tiến một dòng
tiến một trang
quay lại một trang
thoát khỏi trợ giúp
Các lệnh tra cứu khác
apropos
Tìm một tên lệnh
whatis
Tìm ý nghĩa một câu lệnh
which
Tìm ñường dẫn ñầy ñủ dẫn ñến tệp chương trình của
một câu lệnh
Thư mục /usr/doc
Chứa tất cả tài liệu HOWTO
Có thế chứa tài liệu của ứng dụng cài ñặt trong hệ
thống
Các file đính kèm theo tài liệu này:
- linux_modau_2927.pdf