Hệ ñiều hành UNIX-Linux
Chương 2. Thao tác với hệ thống
1
Unix operating system - Nguyen Tri Thanh
Quá trình khởi ñộng Linux
- Module tải là LiLo (LInux LOader) hoặc GRUB - Các module này ñược cài trên MBR
LILO
init
Nhân - Lilo và GRUB hiện tại có giao diện ñồ họa
- Nếu Linux ñược cài cùng một số HDH khác thì Lilo sẽ cho ta chọn HDH ñể khởi ñộng
- Quá trình init là quá trình khởi thủy, là cha của mọi tiến trình
init sẽ chạy chương trình shell
- Khi ñược khởi tạo thì /etc/inittab ñể biết ñược chế ñộ khởi ñộng
2
Unix operating system - Nguyen Tri Thanh
Thủ tục ñăng nhập
login: root
- Khi khởi ñộng xong nó sẽ hiện ra giao diện ñăng nhập (ví dụ giao diện text) Ret Hat Linux release 6.2 (Zoot) Kernel 2.2.14-5.0 on an i686 May1 login: - Khi nhập vào tên người dùng hệ thống sẽ hỏi mật khẩu: May1 login: root Password: - Nếu ñăng nhập không thành công (sai mật khẩu) hệ thống sẽ thông báo: May1 Password: Login incorrect
May1 login:
3
Unix operating system - Nguyen Tri Thanh
ðăng nhập thành công - Khi ñăng nhập thành công hệ thống sẽ hiển thị ra dấu nhắc hệ
thống ñể chờ ta ñánh lệnh
May1 login: root Password: Last login: Fri Oct 27 14:16:09 on tty2 root@may1 /root]#
Thóat khỏi hệ thống - Sau khi làm việc xong ta có thể thóat ra khỏi hệ thống bằng lệnh logout hoặc nhấn tổ hợp phím Ctrl+D (một số trường hợp có thể dùng lệnh exit)
4
Unix operating system - Nguyen Tri Thanh
Thông báo ñăng nhập Chúng ta có thể thay ñổi các dòng hiển thị bằng cách sửa ñổi file
/etc/rc.d/rc.local như sau: Thay ñoạn chương trình bằng những thông tin muốn hiển thị
echo "" > /etc/issue echo "$R" >> /etc/issue echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue cp -f /etc/issue /etc/issue.net echo >> /etc/issue
5
Unix operating system - Nguyen Tri Thanh
Tắt máy và khởi ñộng lại máy shutdown [tùy-chọn]
trên hệ thống. sau: -k : không thực sự shutdown mà chỉ cảnh báo. -r : khởi ñộng lại ngay sau khi shutdown. -h : tắt máy thực sự sau khi shutdown. -f : khởi ñộng lại nhanh và bỏ qua việc kiểm tra ñĩa. -F : khởi ñộng lại và thực hiện việc kiểm tra ñĩa.
6
Unix operating system - Nguyen Tri Thanh
Tắt máy Sử dụng lệnh halt với cú pháp như sau: halt [tùy-chọn] Lệnh này tắt hẳn máy. Các tuỳ chọn:
-f : thực hiện tắt máy ngay mà không thực hiện lần l-ợt việc
dừng các dịch vụ có trên hệ thống.
-i : chỉ thực hiện dừng tất cả các dịch vụ mạng tr-ớc khi tắt
máy.
Nếu thoát khỏi hệ thống không ñúng cách thì dẫn ñến hậu quả là
một số file hay toàn bộ hệ thống file có thể bị hư hỏng.
7
Unix operating system - Nguyen Tri Thanh
Khởi ñộng lại máy Thoát khỏi hệ thống có thể sử dụng - Tổ hợp ba phím Ctrl+Alt+Del, - Lệnh shutdown - Lệnh halt - Lệnh reboot. Cú pháp lệnh reboot: reboot [tùy-chọn] Lệnh này cho phép khởi ñộng lại hệ thống.
8
Unix operating system - Nguyen Tri Thanh
Khởi ñộng vào chế ñộ ñồ họa (file /etc/inittab) # 0 - halt (Do NOT set initdefault to this) - ðây là chế ñộ dừng hoạt ñộng của hệ thống # 1 - Single user mode - ðây là chế ñộ ñơn người dùng, ta có thể ñăng nhập vào chế ñộ
này trong trường hợp muốn khắc phục một số sự cố.
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking) - ðây là chế
ñộ ña người dùng, giao diện text, không hỗ trợ kết nối mạng.
# 3 - Full multiuser mode – Chế ñộ ña người dùng, giao diện text # 4 – unused – Không sử dụng chế ñộ này # 5 - X11 - ðây là chế ñộ ña người dùng, giao diện ñồ hoạ # 6 - reboot (Do NOT set initdefault to this) – Chế ñộ khởi ñộng lại máy tính # id:3:initdefault: - ðây là chế ñộ ngầm ñịnh hệ thống sẽ sử dụng ñể khởi ñộng
# Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now #ca::ctrlaltdel:/bin/echo "You can't do that"
9
Unix operating system - Nguyen Tri Thanh
10
Màn hình ñăng nhập Unix operating system - Nguyen Tri Thanh
Màn hình sau khi ñăng nhập
11
Unix operating system - Nguyen Tri Thanh
Màn hình trình quản lý ứng dụng
12
Unix operating system - Nguyen Tri Thanh
13
Unix operating system - Nguyen Tri Thanh
Kết nối vào hệ thống ở chế ñộ text
Unix operating system - Nguyen Tri Thanh
Kết nối vào hệ thống ở chế ñộ text
Unix operating system - Nguyen Tri Thanh
Mật khẩu
(cid:1) Mật khẩu là một xâu kí tự ñi kèm với tên người dùng ñể ñảm bảo an toàn và bí mật (cid:1) Trong quá trình ñăng nhập, người dùng phải gõ ñúng tên và mật khẩu (cid:1) Tên người dùng có thể ñược công khai song mật khẩu thì tuyệt ñối phải ñược ñảm bảo bí mật (cid:1) Việc ñăng ký tên và mật khẩu của siêu người dùng ñược tiến hành trong quá trình khởi tạo hệ ñiều hành Linux. (cid:1) Việc ñăng ký tên và mật khẩu của một người dùng thông thường ñược tiến hành khi một người dùng khi tạo tài khoản (cid:1) Thông thường siêu người dùng cung cấp tên và mật khẩu cho người dùng mới và dùng lệnh adduser (hoặc lệnh useradd) ñể ñăng ký tên và mật khẩu ñó với hệ thống.
16
Unix operating system - Nguyen Tri Thanh
Thay ñổi mật khẩu
passwd [tùy-chọn] [tên-người-dùng] Tùy chọn:
(cid:2)-f : ñặt mật khẩu mới cho người dùng song không cần tiến hành việc kiểm tra mật khẩu ñang dùng (cid:2)-l : khóa một tài khoản người dùng (cid:2)-stdin: có tham số này cho phép nhập mật khẩu cả từ thiết bị vào chuẩn hoặc từ ống dẫn (cid:2)-u : mở khóa (tháo bỏ khóa) một tài khoản (cid:2)-d : xóa bỏ mật khẩu của người dùng (cid:2)-S : hiển thị thông tin ngắn gọn về trạng thái mật khẩu của người dùng ñược ñưa ra
17
Unix operating system - Nguyen Tri Thanh
Thay ñổi mật khẩu
(cid:1) Thay ñổi mật khẩu của một người dùng (với quyền root)
(cid:1) Thay ñổi mật khẩu của chính mình (người dùng bình thường)
$ passwd user1 Changing password for user user1 New UNIX password: BAD PASSWORD: it is derived from your password entry Retype new UNIX password: (cid:2)Nếu thành công thì ta nhận ñược thông báo: Passwd: all authentication tokens updated successfully.
18
$ passwd Changing password for user thanhnt. Changing password for thanhnt (current) UNIX password:
Unix operating system - Nguyen Tri Thanh
Lệnh xem ngày giờ hệ thống
(cid:1) Xem ngày giờ hệ thống
date [tùy-chọn] [+ñịnh-dạng]
(cid:1) Thiết ñặt lại ngày giờ cho hệ thống:
date [tùy-chọn] [MMDDhhmm[ [CC]YY] [.ss]]
(cid:1) Một số ñịnh dạng ñiển hình:
%a : Hiện ra thông tin tên ngày trong tuần viết tắt %A : Hiện ra thông tin tên ngày trong tuần viết ñầy ñủ %b : Hiện ra thông tin tên tháng viết tắt theo ngôn ngữ bản ñịa. %B : Hiện ra thông tin tên tháng viết ñầy ñủ theo ngôn ngữ bản ñịa. MM: DD: hh: mm: CC: YY:
hai số chỉ tháng, hai số chỉ ngày trong tháng, hai số chỉ giờ trong ngày, hai số chỉ phút, hai số chỉ thế kỉ, hai số chỉ năm trong thế kỉ.
19
Unix operating system - Nguyen Tri Thanh
Ví dụ về lệnh date
# date
Wed Jan 3 23:58:50 ICT 2001
# date -d '01/01/2000'
Sat Jan 1 00:00:00 ICT 2000
# date -iso-8601='seconds'
2000-12-01T00:36:41-0500
# date -d='01/01/2001'
Mon Jan 1 00:00:00 ICT 2001
# date 010323502001.50
Wed Jan 3 23:50:50 ICT 2001
# date +%a%A
Wed Wednesday # date +%a%A%b%B
Wed Wednesday Jan January
# date +%D%%%j 01/05/01%005
20
Unix operating system - Nguyen Tri Thanh
Lệnh xem lịch
cal [tùy-chọn] [
# cal 1 2001
January 2001 Su
Th 4 11 18 25 Fr 5 12 19 26 Sa 6 13 20 27
21
Mo 1 8 15 22 29 Tu 2 9 16 23 30 We 3 10 17 24 31 7 14 21 28
Unix operating system - Nguyen Tri Thanh
Lệnh xem lịch
Xem lịch dưới dạng số ngày trong năm
# cal -j 3 2001
March 2001 Su Mo Tu We
22
64 71 78 85 65 72 79 86 66 73 80 87 Th 60 67 74 81 88 Fr 61 68 75 82 89 Sa 62 69 76 83 90 63 70 77 84
Unix operating system - Nguyen Tri Thanh
Lệnh xem thông tin hệ thống
uname [tùy-chọn] (cid:1) Tùy chọn là:
-a, --all: hiện tất cả các thông tin -m, --machine: kiểu kiến trúc của bộ xử lý (i386, i486, i586, i686...). -n, --nodename: hiện tên của máy -r, --release: hiện nhân của hệ ñiều hành -s, --sysname: hiện tên hệ ñiều hành -p, --processor: hiện kiểu bộ xử lý của máy chủ
(cid:1) Ví dụ:
# uname -a
Tên hệ ñiều hành: Linux Tên máy: linuxsrv.linuxvn.net Tên nhân của hệ ñiều hành: 2.2.14-5.0 Ngày sản xuất: #1 Tue Mar 7 21:07:39 EST 2000 Kiểu kiến trúc bộ xử lý: i686 Kiểu bộ xử lý của máy chủ: unknown
23
Linux linuxsrv.linuxvn.net 2.2.14-5.0 #1 Tue Mar 7 21:07:39 EST 2000 i686 unknown
Unix operating system - Nguyen Tri Thanh
Lệnh tính toán số học
bc [tùy-chọn] [file...]
(cid:1) Tuỳ chọn
-l, --mathlib : thực hiện phép tính theo chuẩn th- viện toán học (ví dụ: 5/5=1.00000000000000000000). -w, --warn : khi thực hiện phép tính không tuân theo chuẩn POSIX thì một cảnh báo xuất hiện. -s, --standard : thực hiện phép tính chính xác theo chuẩn của ngôn ngữ POSIX bc.
(cid:1) bc là một ngôn ngữ rất mạnh có nội dung hết sức phong phú (cid:1) Các phép tính
- bt: lấy ñối; ++ b, --b, b ++, b --: phép toán tăng, giảm b; các phép toán hai
ngôi cộng +, trừ -, nhân *, chia /, lấy phần dư %, lũy thừa nguyên bậc ^; gán
=; gán sau khi thao tác
24
Unix operating system - Nguyen Tri Thanh
Ví dụ về lệnh bc
# bc -l bc 1.05 Copyright 1991, 1992, 1993, 1994, 1997, 1998 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. 5^3 125 12+12+78*7-62/4 554.50000000000000000000 a=4 a^a 256 a*78 312 b=45 a*b 180 a/b .08888888888888888888
25
Unix operating system - Nguyen Tri Thanh
Thay ñổi dấu nhắc hệ thống
(cid:1) Shell dùng biến môi trường ñể lưu trữ ñịnh dạng của dấu nhắc hệ thống là PS1 và PS2 (cid:1) Ta có thể thay ñổi nội dung của dấu nhắc hệ thống bằng cách thay ñổi biến hệ thống này
PS1='
(cid:1) Ví dụ
root@may1 /hda1]# root@may1 /hda1]# PS1='[\h@\u \w : \d]\$' [may1@root /mnt/hda1 : Fri Oct 27 ]#
(cid:1) Biến thứ 2 là PS2 ñược dùng khi máy chờ ta gõ thêm tham số cũng hoàn toàn có thể thay ñổi một cách tương tự
26
Unix operating system - Nguyen Tri Thanh
Ý nghĩa
Hiển thị thứ tự của lệnh (kể cả các lệnh cũ) Hiển thị thứ tự của lệnh Hiển thị dấu $ (người dùng bình thường) Hiển thị dấu \ Hiền thị ngày hiện tại Hiển thị tên máy Thêm ký tự xuống dòng Hiển thị tên shell Hiển thị giờ hiện tại Hiển thị tên người dùng Hiển thị tên thực sự của thư mục hiện tại Hiển thị ñường dẫn ñến thư mục hiện tại
Ký tự \! \# \$ \\ \d \h \n \s \t \u \W \w
27
Unix operating system - Nguyen Tri Thanh