SlideShare a Scribd company logo
1 of 214
Download to read offline
www.nhipsongcongnghe.net
I H C QU C GIA HÀ N I
TRƯ NG I H C CÔNG NGH
=====================================
HÀ QUANG TH Y
NGUY N TRÍ THÀNH
Giáo trình:
H I U HÀNH UNIX - LINUX
Dành cho sinh viên ngành Công ngh thông tin,
i n t - Vi n thông, Toán tin ng d ng
HÀ N I - 2004
2
M C L C
L I GI I THI U ..................................................................................................... 9
CHƯƠNG 1. GI I THI U CHUNG V LINUX...................................................... 10
1.1. Gi i thi u v UNIX và Linux...................................................................................... 10
1.1.1. Xu t x , quá trình ti n hóa và m t s c trưng c a h i u hành UNIX ......... 10
1.1.2. Gi i thi u sơ b v Linux................................................................................... 13
1.2. Sơ b v các thành ph n c a Linux ........................................................................... 17
1.2.1. Sơ b v nhân ..................................................................................................... 18
1.2.2. Sơ b v shell ..................................................................................................... 18
1.3. Gi i thi u v s d ng l nh trong Linux..................................................................... 20
1.3.1. Các quy ư c khi vi t l nh................................................................................... 22
1.3.3. Làm ơn gi n thao tác gõ l nh ........................................................................... 25
1.3.4. Ti p n i dòng l nh.............................................................................................. 29
1.4. Trang Man ................................................................................................................... 29
CHƯƠNG 2. THAO TÁC V I H TH NG........................................................... 32
2.1. Quá trình kh i ng Linux......................................................................................... 32
2.2. Th t c ăng nh p và các l nh thoát kh i h th ng ................................................ 33
2.2.1. ăng nh p........................................................................................................... 33
2.2.2. Ra kh i h th ng................................................................................................. 36
2.2.3. Kh i ng l i h th ng ....................................................................................... 38
2.2.4. Kh i ng vào ch ho ............................................................................. 38
2.3. L nh thay i m t kh u.............................................................................................. 42
2.4. L nh xem, thi t t ngày, gi hi n t i và xem l ch trên h th ng ........................... 45
2.4.1 L nh xem, thi t t ngày, gi .............................................................................. 45
2.4.2. L nh xem l ch .................................................................................................... 47
2.5. Xem thông tin h th ng .............................................................................................. 48
2.6. Thay i n i dung d u nh c shell .............................................................................. 49
2.7. L nh g i ngôn ng tính toán s h c .......................................................................... 50
CHƯƠNG 3. H TH NG FILE ............................................................................. 53
3.1 T ng quan v h th ng file........................................................................................... 53
3.1.1. M t s khái ni m................................................................................................ 53
3.1.2. Sơ b ki n trúc n i t i c a h th ng file............................................................. 57
3.1.3. M t s thu t toán làm vi c v i inode ................................................................. 63
3.1.4. H tr nhi u h th ng File.................................................................................. 66
3.1.5. Liên k t tư ng trưng (l nh ln) ............................................................................ 71
3
3.2 Quy n truy nh p thư m c và file ................................................................................ 72
3.2.1 Quy n truy nh p .................................................................................................. 72
3.2.2. Các l nh cơ b n .................................................................................................. 75
3.3 Thao tác v i thư m c.................................................................................................... 80
3.3.1 M t s thư m c c bi t ...................................................................................... 80
3.3.2 Các l nh cơ b n v thư m c ................................................................................ 83
3.4. Các l nh làm vi c v i file ............................................................................................ 87
3.4.1 Các ki u file có trong Linux................................................................................ 87
3.4.2. Các l nh t o file.................................................................................................. 88
3.4.3 Các l nh thao tác trên file.................................................................................... 90
3.4.4 Các l nh thao tác theo n i dung file .................................................................... 98
3.4.5 Các l nh tìm file ................................................................................................ 106
3.5 Nén và sao lưu các file................................................................................................ 115
3.5.1 Sao lưu các file (l nh tar) .................................................................................. 115
3.5.2 Nén d li u ....................................................................................................... 118
CHƯƠNG 4. QU N TR QUÁ TRÌNH................................................................. 122
4.1 Quá trình trong UNIX................................................................................................ 122
4.1.1. Sơ b v quá trình............................................................................................. 122
4.1.2. Sơ b c u trúc i u khi n c a UNIX................................................................ 123
4.1.3. Các h th ng con trong nhân............................................................................ 125
4.1.4. Sơ b v i u khi n quá trình........................................................................... 129
4.1.5. Tr ng thái và chuy n d ch tr ng thái ................................................................ 130
4.1.6. S ngưng ho t ng và ho t ng tr l i c a quá trình.................................... 132
4.1.7. Sơ b v l nh i v i quá trình ........................................................................ 132
4.2. Các l nh cơ b n.......................................................................................................... 133
4.2.1. L nh fg và l nh bg............................................................................................ 133
4.2.2. Hi n th các quá trình ang ch y v i l nh ps ................................................... 135
4.2.3. H y quá trình v i l nh kill ............................................................................... 137
4.2.4. Cho máy ng ng ho t ng m t th i gian v i l nh sleep.................................. 139
4.2.5. Xem cây quá trình v i l nh pstree.................................................................... 139
4.2.6. L nh thi t t l i ưu tiên c a quá trình nice và l nh renice......................... 141
CHƯƠNG 5. QU N LÝ TÀI KHO N NGƯ I DÙNG......................................... 142
5.1 Tài kho n ngư i dùng................................................................................................ 142
5.2 Các l nh cơ b n qu n lý ngư i dùng ........................................................................ 142
5.2.1 File /etc/passwd ................................................................................................ 143
5.2.2 Thêm ngư i dùng v i l nh useradd................................................................... 143
5.2.3 Thay i thu c tính ngư i dùng ........................................................................ 146
5.2.4 Xóa b m t ngư i dùng (l nh userdel).............................................................. 147
4
5.3 Các l nh cơ b n liên quan n nhóm ngư i dùng ................................................... 148
5.3.1 Nhóm ngư i dùng và file /etc/group ................................................................. 148
5.3.2 Thêm nhóm ngư i dùng .................................................................................... 149
5.3.3 S a i các thu c tính c a m t nhóm ngư i dùng (l nh groupmod) ................ 149
5.3.4 Xóa m t nhóm ngư i dùng (l nh groupdel)...................................................... 150
5.4 Các l nh cơ b n khác có liên quan n ngư i dùng................................................ 150
5.4.1 ăng nh p v i tư cách m t ngư i dùng khác khi dùng l nh su ....................... 150
5.4.2 Xác nh ngư i dùng ang ăng nh p (l nh who) ............................................ 151
5.4.3 Xác nh các quá trình ang ư c ti n hành (l nh w)....................................... 153
CHƯƠNG 6. TRUY N THÔNG VÀ M NG UNIX-LINUX................................... 154
6.1. L nh truy n thông ..................................................................................................... 154
6.1.1. L nh write......................................................................................................... 154
6.1.2. L nh mail.......................................................................................................... 155
6.1.3. L nh talk........................................................................................................... 156
6.2 C u hình Card giao ti p m ng .................................................................................. 156
6.3. Các d ch v m ng ...................................................................................................... 159
6.3.1 H thông tin m ng NIS...................................................................................... 159
6.4 H th ng file trên m ng ............................................................................................. 164
6.4.1 Cài t NFS ....................................................................................................... 165
6.4.2 Kh i ng và d ng NFS.................................................................................... 166
6.4.3 C u hình NFS server và Client.......................................................................... 167
6.4.4 S d ng mount................................................................................................... 167
6.4.5 Unmount............................................................................................................ 168
6.4.6 Mount t ng qua t p c u hình........................................................................ 168
CHƯƠNG 7. L P TRÌNH SHELL VÀ L P TRÌNH C TRÊN LINUX ................... 170
7.1. Cách th c pipes và các y u t cơ b n l p trình trên shell ..................................... 170
7.1.1. Cách th c pipes ................................................................................................ 170
7.1.2. Các y u t cơ b n l p trình trong shell ........................................................ 171
7.2. M t s l nh l p trình trên shell ................................................................................ 175
7.2.1. S d ng các toán t bash.................................................................................. 175
7.2.2. i u khi n lu ng .............................................................................................. 179
7.2.3 Các toán t nh hư ng vào ra........................................................................... 193
7.2.4. Hi n dòng văn b n............................................................................................ 194
7.2.5. L nh read c d li u cho bi n ngư i dùng..................................................... 194
7.2.6. L nh set ............................................................................................................ 195
7.2.7. Tính toán trên các bi n ..................................................................................... 196
7.2.8. Chương trình ví d ............................................................................................ 196
5
7.3. L p trình C trên UNIX ............................................................................................. 197
7.3.1. Trình biên d ch gcc........................................................................................... 197
7.3.2. Công c GNU make ......................................................................................... 201
7.3.3. Làm vi c v i file............................................................................................... 203
7.3.4. Thư vi n liên k t............................................................................................... 211
7.3.5 Các công c cho thư vi n ................................................................................. 220
TÀI LI U THAM KH O ...................................................................................... 223
CHÚ THÍCH M T S THU T NG ................................................................... 224
PH L C A. QUÁ TRÌNH CÀI T REDHAT-LINUX ........................................ 227
AA. Cài t phiên b n RedHat 6.2 ................................................................................. 228
AA.1. T o ĩa m m kh i ng................................................................................... 228
AA.2. Phân vùng l i ĩa DOS/Windows hi n th i.................................................. 228
AA.3. Các bư c cài t (b n RedHat 6.2 và kh i ng t CD-ROM)....................... 229
AA.4. Các h n ch v ph n c ng i v i Linux ........................................................ 239
PH L C B. TRÌNH SO N TH O VIM .............................................................. 242
B.1 Kh i ng vim............................................................................................................ 244
B.1.1 M chương trình so n th o vim........................................................................ 244
B.1.2. Tính năng m nhi u c a s .............................................................................. 245
B.1.3. Ghi và thoát trong vim..................................................................................... 246
B.2. Di chuy n tr so n th o trong Vim ......................................................................... 247
B.2.1. Di chuy n trong văn b n.................................................................................. 247
B.2.2. Di chuy n theo các i tư ng văn b n............................................................. 248
B.2.3. Cu n màn hình................................................................................................. 248
B.3. Các thao tác trong văn b n ...................................................................................... 249
B.3.1. Các l nh chèn văn b n trong vim..................................................................... 249
B.3.2. Các l nh xoá văn b n trong vim ...................................................................... 250
B.3.3. Các l nh khôi ph c văn b n trong vim ............................................................ 250
6.3.4. Các l nh thay th văn b n trong vim................................................................ 250
B.3.5. Sao chép và di chuy n văn b n trong vim ....................................................... 252
B.3.6. Tìm ki m và thay th văn b n trong vim......................................................... 253
B.3.7. ánh d u trong vim ......................................................................................... 254
B.3.8. Các phím s d ng trong ch chèn............................................................... 255
B.3.9. M t s l nh trong ch o............................................................................. 256
B.3.10. Các l nh l p ................................................................................................... 256
B.4. Các l nh khác ............................................................................................................ 257
B.4.1. Cách th c hi n các l nh bên trong Vim........................................................... 257
B.4.2. Các l nh liên quan n file............................................................................... 257
6
PH L C C. MIDNIGHT COMMANDER ............................................................ 259
C.1. Gi i thi u v Midnight Commander (MC) ............................................................ 259
C.2. Kh i ng MC .......................................................................................................... 259
C.3. Giao di n c a MC..................................................................................................... 259
C.4. Dùng chu t trong MC .............................................................................................. 260
C.5. Các thao tác bàn phím.............................................................................................. 261
C.6. Th c ơn thanh ngang (menu bar)......................................................................... 263
C.7. Các phím ch c năng................................................................................................. 266
C.8. B so n th o c a Midnight Commander................................................................ 267
PH L C D. SAMBA.......................................................................................... 270
D.1 Cài t Samba............................................................................................................ 270
D.2 Các thành ph n c a Samba ...................................................................................... 271
D.3 File c u hình Samba .................................................................................................. 272
D.4 Các ph n c bi t c a file c u hình Samba............................................................. 275
D.5 Qu n lý ngư i dùng trong Samba............................................................................ 282
D.6 Cách s d ng Samba t các máy tr m.................................................................... 284
D.6.1 Cách s d ng t các máy tr m là Linux........................................................... 284
D.6.2 Cách s d ng t các máy tr m là Windows ..................................................... 287
7
L I GI I THI U
Trong hơn mư i năm tr l i ây h i u hành Linux ã
8
CHƯƠNG 1. GI I THI U CHUNG V LINUX
1.1. Gi i thi u v UNIX và Linux
1.1.1. Xu t x , quá trình ti n hóa và m t s c trưng c a h i u hành UNIX
Năm 1965, Vi n công ngh Massachusetts (MIT: Massachusetts Institute of
Technology) và Phòng thí nghi m Bell c a hãng AT&T th c hi n d án xây d ng m t h
i u hành có tên g i là Multics (MULTiplexed Information and Computing Service) v i
m c tiêu: t o l p ư c m t h i u hành ph trên vùng lãnh th r ng (ho t ng trên t p
các máy tính ư c k t n i), a ngư i dùng, có năng l c cao v tính toán và lưu tr . D án
nói trên thành công m c h t s c khiêm t n và ngư i ta ã bi t n m t s khi m
khuy t khó kh c ph c c a Multics.
Năm1969, Ken Thompson, m t chuyên viên t i phòng thí nghi m Bell, ngư i ã tham
gia d án Multics, cùng Dennics Richie vi t l i h i u hành a-bài toán trên máy PDP-7
v i tên là UNICS (UNiplexed Information and Computing Service) t m t câu g i ùa c a
m t ng nghi p. Trong h i u hành UNICS, m t s kh i th o u tiên v H th ng file
ã ư c Ken Thompson và Dennis Ritchie th c hi n. n năm 1970 h i u hành ư c vi t
trên assembler cho máy PDP-11/20 và mang tên là UNIX.
Năm 1973, Riche và Thompson vi t l i nhân c a h i u hành UNIX trên ngôn ng C,
và h i u hành ã tr nên d dàng cài t t i các lo i máy tính khác nhau; tính ch t như
th ư c g i là tính kh chuy n (portable) c a UNIX. Trư c ó, kho ng năm 1971, h i u
hành ư c th hi n trên ngôn ng B (mà d a trên ngôn ng B, Ritche ã phát tri n thành
ngôn ng C).
Hãng AT&T ph bi n chương trình ngu n UNIX t i các trư ng i h c, các công ty
thương m i và chính ph v i giá không áng k .
Năm 1982, h th ng UNIX-3 là b n UNIX thương m i u tiên c a AT&T.
Năm 1983, AT&T gi i thi u H th ng UNIX-4 phiên b n th nh t trong ó ã có trình
so n th o vi, thư vi n qu n lý màn hình ư c phát tri n t i h c T ng h p California,
Berkley.
Giai o n 1985-1987, UNIX-5 phiên b n 2 và 3 tương ng ư c ưa ra vào các năm
1985 và 1987. Trong giai o n này, có kho ng 100000 b n UNIX ã ư c ph bi n trên th
gi i, cài t t máy vi tính n các h th ng l n.
u th p k 1990. UNIX-5 phiên b n 4 ư c ưa ra như là m t chu n c a UNIX. ây
là s k t h p c a các b n sau:
AT&T UNIX-5 phiên b n 3,
Berkley Software Distribution (BSD),
XENIX c a MicroSoft
SUN OS
Có th tìm th y các n i dung liên quan t i m t s phiên b n m i c a UNIX t i a ch
website http://problem.rice.edu/.
Các nhóm nhà cung c p khác nhau v UNIX ang ho t ng trong th i gian hi n nay
ư c k n như sau:
Unix International (vi t t t là UI). UI là m t t ch c g m các nhà cung c p
th c hi n vi c chuy n như ng h th ng UNIX-5 và cung c p b n AT&T theo các
9
nhu c u và thông báo phát hành m i, ch ng h n như i u ch nh b n quy n. Giao
di n h a ngư i dùng là Open Look.
Open Software Foundation (OSF). OSF ư c h tr b i IBM, DEC, HP ...
theo hư ng phát tri n m t phiên b n c a Unix nh m tranh ua v i h th ng UNIX-5
phiên b n 4. Phiên b n này có tên là OSF/1 v i giao di n h a ngư i dùng ư c
g i là MOTIF.
Free SoftWare Foundation (FSF): m t c ng ng do Richard Stallman kh i
xư ng năm 1984 ch trương phát hành các ph n m m s d ng t do, trên cơ s m t
h i u hành thu c lo i UNIX.
B ng sau ây li t kê m t s cài t UNIX khá ph bi n (thư ng th y có ch X cu i
tên g i c a H i u hành):
Tên h Nhà cung c p N n phát tri n
AIX International Business Machines AT&T System V
A/UX Apple Computer AT&T System V
Dynix Sequent BSD (Berkeley SoftWare Distribution)
HP-UX Hewlett-Packard BSD
Irix Silicon Graphics AT&T System V
Linux Free SoftWare Foundation
NextStep Next BSD
OSF/1 Digital Equipment Corporation BSD
SCO UNIX Santa Cruz Operation AT&T System V
Solaris Sun Microsystems AT&T System V
SunOS Sun Microsystems BSD UNIX
Ultrix Digital Equipment Corporation BSD UNIX
Unicos Cray AT&T System V
UnixWare Novell AT&T System V
XENIX MicroSoft AT&T System III-MS
Dư i ây li t kê m t s c trưng c a h i u hành UNIX:
H i u hành ư c vi t trên ngôn ng b c cao; b i v y, r t d c, d hi u,
d thay i cài t trên lo i máy m i (tính d mang chuy n, như ã nói),
Có giao di n ngư i dùng ơn gi n năng l c cung c p các d ch v mà
ngư i dùng mong mu n (so sánh v i các h i u hành có t trư c ó thì giao di n
c a UNIX là m t ti n b vư t b c),
Th a mãn nguyên t c xây d ng các chương trình ph c t p t nh ng chương
trình ơn gi n hơn: trư c h t có các mô un cơ b n nh t c a nhân sau ó phát tri n
có toàn b h i u hành,
S d ng duy nh t m t h th ng File có c u trúc cho phép d dàng b o qu n
và s d ng hi u qu ,
1
0
S d ng ph bi n m t d ng ơn gi n trình bày n i t i c a File như m t dòng
các byte cho phép d dàng khi vi t các chương trình ng d ng truy nh p, thao tác
v i các d li u trong File,
Có k t n i ơn gi n v i thi t b ngo i vi: các file thi t b ã ư c t s n
trong H th ng File t o ra m t k t n i ơn gi n gi a chương trình ngư i dùng v i
các thi t b ngo i vi,
Là h i u hành a ngư i dùng, a quá trình, trong ó m i ngư i dùng có
th th c hi n các quá trình c a mình m t cách c l p.
M i thao tác vào - ra c a h i u hành ư c th c hi n trên h th ng File:
m i thi t b vào ra tương ng v i m t file. Chương trình ngư i dùng làm vi c v i
file ó mà không c n quan tâm c th tên file ó ư c t cho thi t b nào trong h
th ng.
Che khu t c u trúc máy i v i ngư i dùng, m b o tính c l p tương i
c a chương trình i v i d li u và ph n c ng, t o i u ki n thu n l i hơn cho
ngư i l p trình khi vi t các chương trình ch y UNIX v i các i u ki n ph n c ng
hoàn toàn khác bi t nhau.
1.1.2. Gi i thi u sơ b v Linux
Linus Tovalds (m t sinh viên Ph n lan) ưa ra nhân (phiên b n u tiên) cho h i u hành
Linux vào tháng 8 năm 1991 trên cơ s c i ti n m t phiên b n UNIX có tên Minix do Giáo
sư Andrew S. Tanenbaum xây d ng và ph bi n. Nhân Linux tuy nh song là t óng gói.
K t h p v i các thành ph n trong h th ng GNU, h i u hành Linux ã ư c hình thành.
Và cũng t th i i m ó, theo tư tư ng GNU, hàng nghìn, hàng v n chuyên gia trên toàn
th gi i (nh ng ngư i này hình thành nên c ng ng Linux) ã tham gia vào quá trình phát
tri n Linux và vì v y Linux ngày càng áp ng nhu c u c a ngư i dùng.
Dư i ây là m t s m c th i gian quan tr ng trong quá trình hình thành và phát tri n h
i u hành Linux.
Sau ba năm nhân Linux ra i, n ngày 14-3-1994, h i u hành Linux phiên b n
1.0 ư c ph bi n. Thành công l n nh t c a Linux 1.0 là nó ã h tr giao th c m ng
TCP/IP chu n UNIX, sánh v i giao th c socket BSD- tương thích cho l p trình m ng.
Trình i u khi n thi t b ã ư c b sung ch y IP trên m t m ng Ethernet ho c trên
tuy n ơn ho c qua modem. H th ng file trong Linux 1.0 ã vư t xa h th ng file c a
Minix thông thư ng, ngoài ra ã h tr i u khi n SCSI truy nh p ĩa t c cao. i u
khi n b nh o ã ư c m r ng h tr i u khi n trang cho các file swap và ánh x
b nh c a file c quy n (ch có m t ánh x b nh ch c ư c thi hành trong Linux
1.0).
Vào tháng 3-1995, nhân 1.2 ư c ph bi n. i u áng k c a Linux 1.2 so v i
Linux 1.0 ch nó h tr m t ph m vi r ng và phong phú ph n c ng, bao g m c ki n
trúc tuy n ph n c ng PCI m i. Nhân Linux 1.2 là nhân k t thúc dòng nhân Linux ch h
tr PC.
M t i u c n lưu ý v các ánh ch s các dòng nhân (h i u hành) Linux. H th ng
ch s ư c chia thành m t s m c, ch ng h n hai m c như 2.4 ho c ba m c như 2.2.5.
Trong cách ánh ch s như v y, quy ư c r ng v i các ch s t m c th hai tr i, n u
là s ch n thì dòng nhân ó ã khá n nh và tương i hoàn thi n, còn n u là s l thì
dòng nhân ó v n ang ư c phát tri n ti p.
1
1
Tháng 6-1996, nhân Linux 2.0 ư c ph bi n. Có hai c trưng n i b t c a Linux
2.0 là h tr ki n trúc ph c h p, bao g m c c ng Alpha 64-bit y , và h tr ki n
trúc a b x lý. Phân ph i nhân Linux 2.0 cũng thi hành ư c trên b x lý Motorola
68000 và ki n trúc SPARC c a SUN. Các thi hành c a Linux d a trên vi nhân GNU
Mach cũng ch y trên PC và PowerMac.
T i năm 2000, nhân Linux 2.4 ư c ph bi n. M t trong c i m ư c quan tâm
c a nhân này là nó h tr mã ký t Unicode 32 bít, r t thu n l i cho vi c xây d ng các
gi i pháp toàn di n và tri t i v i v n ngôn ng t nhiên trên ph m vi toàn th
gi i.
V n phân ph i và gi y phép Linux
V lý thuy t, m i ngư i có th kh i t o m t h th ng Linux b ng cách ti p nh n b n m i
nh t các thành ph n c n thi t t các site ftp và biên d ch chúng. Trong th i kỳ u tiên,
ngư i dùng Linux ph i ti n hành toàn b các thao tác này và vì v y công vi c là khá v t v .
Tuy nhiên, do có s tham gia ông o c a các cá nhân và nhóm phát tri n Linux, ã ti n
hành th c hi n nhi u gi i pháp nh m làm cho công vi c kh i t o h th ng v t v . M t
trong nh ng gi i pháp i n hình nh t là cung c p t p các gói chương trình ã ti n d ch,
chu n hóa.
Nh ng t p h p như v y hay nh ng b n phân ph i là l n hơn nhi u so v i h th ng Linux
cơ s . Chúng thư ng bao g m các ti n ích b sung cho kh i t o h th ng, các thư vi n
qu n lý, cũng như nhi u gói ã ư c ti n d ch, s n sàng kh i t o c a nhi u b công c
UNIX dùng chung, ch ng h n như ph c v tin, trình duy t web, công c x lý, so n th o
văn b n và th m chí các trò chơi.
Cách th c phân ph i ban u r t ơn gi n song ngày càng ư c nâng c p và hoàn thi n
b ng phương ti n qu n lý gói tiên ti n. Các b n phân ph i ngày nay bao g m các cơ s d
li u ti n hóa gói, cho phép các gói d dàng ư c kh i t o, nâng c p và lo i b .
Nhà phân ph i u tiên th c hi n theo phương châm này là Slakware, và chính h là nh ng
chuy n bi n m nh m trong c ng ng Linux i v i công vi c qu n lý gói kh i t o Linux.
Ti n ích qu n lý gói RPM (RedHat Package Manager) c a công ty RedHat là m t trong
nh ng phương ti n i n hình.
Nhân Linux là ph n m m t do ư c phân ph i theo Gi y phép s h u công c ng ph n
m m GNU GPL.
Các thành ph n tích h p H i u hành Linux
Linux s d ng r t nhi u thành ph n t D án ph n m m t do GNU, t h i u hành BSD
c a i h c Berkeley và t h th ng X-Window c a MIT.
Thư vi n h th ng chính c a Linux ư c b t ngu n t D án GNU, sau ó ư c r t nhi u
ngư i trong c ng ng Linux phát tri n ti p, nh ng phát tri n ti p theo như v y ch y u
liên quan t i vi c gi i quy t các v n như thi u v ng a ch (l i trang), thi u hi u qu và
g r i. M t s thành ph n khác c a D án GNU, ch ng h n như trình biên d ch GNU C
(gcc), v n là ch t lư ng cao nên ư c s d ng nguyên xy trong Linux.
Các tool qu n lý m ng ư c b t ngu n t mã 4.3BSD song sau ó ã ư c c ng ng
Linux phát tri n, ch ng h n như thư vi n toán h c ng x lý d u ch m ng Intel và các
trình i u khi n thi t b ph n c ng âm thanh PC. Các tool qu n lý m ng này sau ó l i
ư c b sung vào h th ng BSD.
1
2
H th ng Linux ư c duy trì g n như b i m t m ng lư i không ch t ch các nhà phát tri n
ph n m m c ng tác v i nhau qua Internet, m ng lư i này g m các nhóm nh và cá nhân
ch u trách nhi m duy trì tính toàn v n c a t ng thành ph n. M t lư ng nh các site phân
c p ftp Internat công c ng ã óng vai trò nhà kho theo chu n de facto ch a các thành
ph n này. Tài li u Chu n phân c p h th ng file (File System Hierarchy Standard) ư c
c ng ng Linux duy trì nh m gi tính tương thích xuyên qua s khác bi t r t l n gi a các
thành ph n h th ng.
M t s c i m chính c a Linux
Dư i ây trình bày m t s c i m chính c a c a h i u hành Linux hi n t i:
Linux tương thích v i nhi u h i u hành như DOS, MicroSoft Windows ...:
Cho phép cài t Linux cùng v i các h i u hành khác trên cùng m t c ng. Linux
có th truy nh p n các file c a các h i u hành cùng m t ĩa. Linux cho phép ch y
mô ph ng các chương trình thu c các h i u hành khác.
Do gi ư c chu n c a UNIX nên s chuy n i gi a Linux và các h UNIX khác
là d dàng.
Linux là m t h i u hành UNIX tiêu bi u v i các c trưng là a ngư i dùng, a
chương trình và a x lý.
Linux có giao di n ho (GUI) th a hư ng t h th ng X-Window. Linux h tr
nhi u giao th c m ng, b t ngu n và phát tri n t dòng BSD. Thêm vào ó, Linux còn h
tr tính toán th i gian th c.
Linux khá m nh và ch y r t nhanh ngay c khi nhi u quá trình ho c nhi u c a s .
Linux ư c cài t trên nhi u ch ng lo i máy tính khác nhau như PC, Mini và vi c
cài t khá thu n l i. Tuy nhiên, hi n nay chưa xu t hi n Linux trên máy tính l n
(mainframe).
Linux ngày càng ư c h tr b i các ph n m m ng d ng b sung như so n th o,
qu n lý m ng, qu n tr cơ s d li u, b ng tính ...
Linux h tr t t cho tính toán song song và máy tính c m (PC-cluster) là m t hư ng
nghiên c u tri n khai ng d ng nhi u tri n v ng hi n nay.
Là m t h i u hành v i mã ngu n m , ư c phát tri n qua c ng ng ngu n m
(bao g m c Free Software Foundation) nên Linux phát tri n nhanh. Linux là m t trong
m t s ít các h i u hành ư c quan tâm nhi u nh t trên th gi i hi n nay.
Linux là m t h i u hành h tr a ngôn ng m t cách toàn di n nh t. Do Linux
cho phép h tr các b mã chu n t 16 bit tr lên (trong ó có các b mã ISO10646,
Unicode) cho nên vi c b n a hóa trên Linux là tri t nh t trong các h i u hành.
Tuy nhiên cũng t n t i m t s khó khăn làm cho Linux chưa th c s tr thành m t h i u
hành ph d ng, dư i ây là m t s khó khăn i n hình:
Tuy ã có công c h tr cài t, tuy nhiên, vi c cài t Linux còn tương i ph c
t p và khó khăn. Kh năng tương thích c a Linux v i m t s lo i thi t b ph n c ng còn
th p do chưa có các trình i u khi n cho nhi u thi t b ,
1
3
Ph n m m ng d ng ch y trên n n Linux tuy ã phong phú song so v i m t s h
i u hành khác, c bi t là khi so sánh v i MS Windows, thì v n còn có kho ng cách.
V i s h tr c a nhi u công ty tin h c hàng u th gi i (IBM, SUN, HP ...) và s tham
gia phát tri n c a hàng v n chuyên gia trên toàn th gi i thu c c ng ng Linux, các khó
khăn c a Linux ch c ch n s nhanh chóng ư c kh c ph c.
Chính vì l ó ã hình thành m t s nhà cung c p Linux trên th gi i. B ng dư i ây là
tên c a m t s nhà cung c p Linux có ti ng nh t và a ch website c a h .
áng chú ý nh t là Red Hat Linux (t i M ) và Red Flag Linux (t i Trung Qu c). Red
Hat ư c coi là lâu i và tin c y, còn Red Flag là m t công ty Linux c a Trung qu c, có
quan h v i c ng ng Linux Vi t nam và chúng ta có th h c h i m t cách tr c ti p kinh
nghi m cho quá trình ưa Linux vào Vi t nam.
Tên công ty a ch website
Caldera OpenLinux www.caldera.com
Corel Linux www.corel.com
Debian GNU/Linux www.debian.com
Linux Mandrake www.mandrake.com
Red Hat Linux www.redhat.com
Red Flag Linux www.redflag-linux.com
Slackware Linux www.slackware.com
SuSE Linux www.suse.com
TurboLinux www.turbolinux.com
1.2. Sơ b v các thành ph n c a Linux
H th ng Linux, ư c thi hành như m t h i u hành UNIX truy n th ng, g m shell và ba
thành ph n ( ã d ng mã chương trình) sau ây:
- Nhân h i u hành ch u trách nhi m duy trì các i tư ng tr u tư ng quan tr ng c a h
i u hành, bao g m b nh o và quá trình. Các mô un chương trình trong nhân ư c
c quy n trong h th ng, bao g m c quy n thư ng tr c b nh trong.
- Thư vi n h th ng xác nh m t t p chu n các hàm các ng d ng tương tác v i
nhân, và thi hành nhi u ch c năng c a h th ng nhưng không c n có các c quy n c a
mô un thu c nhân. M t h th ng con i n hình ư c thi hành d a trên thư viên h
th ng là h th ng file Linux.
- Ti n ích h th ng là các chương trình thi hành các nhi m v qu n lý riêng r , chuyên
bi t. M t s ti n ích h th ng ư c g i ra ch m t l n kh i ng và c u hình phương
ti n h th ng, m t s ti n ích khác, theo thu t ng UNIX ư c g i là trình ch y ng m
(daemon), có th ch y m t cách thư ng xuyên (thư ng theo chu kỳ), i u khi n các bài
toán như hư ng ng các k t n i m ng m i n, ti p nh n yêu c u logon, ho c c p nh t
các file log.
Ti n ích (hay l nh) có s n trong h i u hành (dư i ây ti n ích ư c coi là l nh thư ng
tr c). N i dung chính y u c a tài li u này gi i thi u chi ti t v m t s l nh thông d ng nh t
c a Linux. H th ng file s ư c gi i thi u trong chương 3. Trong các chương sau có
c p t i nhi u n i dung liên quan n nhân và shell, song dư i ây là m t s nét sơ b v
chúng.
1
4
1.2.1. Sơ b v nhân
Nhân (còn ư c g i là h lõi) c a Linux, là m t b các môdun chương trình có vai trò
i u khi n các thành ph n c a máy tính, phân ph i các tài nguyên cho ngư i dùng (các quá
trình ngư i dùng). Nhân chính là c u n i gi a chương trình ng d ng v i ph n c ng.
Ngư i dùng s d ng bàn phím gõ n i dung yêu c u c a mình và yêu c u ó ư c nhân g i
t i shell: Shell phân tích l nh và g i các chương trình tương ng v i l nh th c hi n.
M t trong nh ng ch c năng quan tr ng nh t c a nhân là gi i quy t bài toán l p l ch, t c
là h th ng c n phân chia CPU cho nhi u quá trình hi n th i cùng t n t i. i v i Linux, s
lư ng quá trình có th lên t i con s hàng nghìn. V i s lư ng quá trình ng th i nhi u
như v y, các thu t toán l p l ch c n ph i hi u qu : Linux thư ng l p l ch theo ch
Round Robin (RR) th c hi n vi c luân chuy n CPU theo lư ng t th i gian.
Thành ph n quan tr ng th hai trong nhân là h th ng các mô un chương trình ( ư c
g i là l i g i h th ng) làm vi c v i h th ng file. Linux có hai cách th c làm vi c v i các
file: làm vi c theo byte (kí t ) và làm vi c theo kh i. M t c i m áng chú ý là file trong
Linux có th ư c nhi u ngư i cùng truy nh p t i nên các l i g i h th ng làm vi c v i file
c n m b o vi c file ư c truy nh p theo quy n và ư c chia x cho ngư i dùng.
1.2.2. Sơ b v shell
M t s n i dung chi ti t v shell (còn ư c g i là h v ) trong Linux ư c trình bày
trong chương "L p trình trên shell". Nh ng n i dung trình bày dư i ây cung c p m t cách
nhìn sơ b v shell và vai trò c a nó trong ho t ng chung c a h i u hành.
Ngư i dùng mong mu n máy tính th c hi n m t công vi c nào ó thì c n gõ l nh th
hi n yêu c u c a mình h th ng áp ng yêu c u ó. Shell là b d ch l nh và ho t ng
như m t k t n i trung gian gi a nhân v i ngư i dùng: Shell nh n dòng l nh do ngư i dùng
ưa vào; và t dòng l nh nói trên, nhân tách ra các b ph n nh n ư c m t hay m t s
l nh tương ng v i các o n văn b n có trong dòng l nh. M t l nh bao g m tên l nh và
tham s : t u tiên là tên l nh, các t ti p theo (n u có) là các tham s . Ti p theo, shell s
d ng nhân kh i sinh m t quá trình m i (kh i t o quá trình) và sau ó, shell ch i quá
trình con này ti n hành, hoàn thi n và k t thúc. Khi shell s n sàng ti p nh n dòng l nh c a
ngư i dùng, m t d u nh c shell (còn g i là d u nh c nh p l nh) xu t hi n trên màn hình.
Linux có hai lo i shell ph bi n là: C-shell (d u nh c %), Bourne-shell (d u nh c $) và
m t s shell phát tri n t các shell nói trên (ch ng h n, TCshell - tcsh v i d u nh c ng m
nh > phát tri n t C-shell và GNU Bourne - bash v i d u nh c bash # phát tri n t
Bourne-shell). D u m i phân bi t shell nói trên không ph i hoàn toàn rõ ràng do Linux cho
phép ngư i dùng thay i l i d u nh c shell nh vi c thay giá tr các bi n môi trư ng PS1
và PS2. Trong tài li u này, chúng ta s d ng kí hi u "hàng rào #" bi u th d u nh c
shell.
C-shell có tên g i như v y là do cách vi t l nh và chương trình l nh Linux t a như
ngôn ng C. Bourne-shell mang tên tác gi c a nó là Steven Bourne. M t s l nh trong C-
shell (ch ng h n l nh alias) không còn có trong Bourne-shell và vì v y nh n bi t h
th ng ang làm vi c v i shell nào, chúng ta gõ l nh:
# alias
N u m t danh sách xu t hi n thì shell ang s d ng là C-shell; ngư c l i, n u xu t hi n
thông báo "Command not found" thì shell ó là Bourne-shell.
L nh ư c chia thành 3 lo i l nh:
1
5
L nh thư ng tr c (có s n c a Linux). Tuy t i a s l nh ư c gi i thi u
trong tài li u này là l nh thư ng tr c. Chúng bao g m các l nh ư c ch a s n trong
shell và các l nh thư ng tr c khác.
File chương trình ngôn ng máy: ch ng h n, ngư i dùng vi t trình trên ngôn
ng C qua b d ch gcc (bao g m c trình k t n i link) t o ra m t chương trình
trên ngôn ng máy.
File chương trình shell (Shell Scrip).
Khi k t thúc m t dòng l nh c n gõ phím ENTER shell phân tích và th c hi n l nh.
1.3. Gi i thi u v s d ng l nh trong Linux
Như ã gi i thi u ph n trên, Linux là m t h i u hành a ngư i dùng, a nhi m,
ư c phát tri n b i hàng nghìn chuyên gia Tin h c trên toàn th gi i nên h th ng l nh
cũng ngày càng phong phú; n th i i m hi n nay Linux có kho ng hơn m t nghìn l nh.
Tuy nhiên ch có kho ng vài ch c l nh là thông d ng nh t i v i ngư i dùng. Tài li u
này cũng h n ch gi i thi u kho ng vài ch c l nh ó. Chúng ta ng e ng i v s lư ng
l nh ư c gi i thi u ch chi m m t ph n nh trong t p h p l nh b i vì ây là nh ng l nh
thông d ng nh t và chúng cung c p m t ph m vi ng d ng r ng l n, th a mãn yêu c u
c a chúng ta.
Cũng như ã nói trên, ngư i dùng làm vi c v i máy tính thông qua vi c s d ng tr m
cu i: ngư i dùng ưa yêu c u c a mình b ng cách gõ "l nh" t bàn phím và giao cho h
i u hành x lý.
Khi cài t Linux lên máy tính cá nhân thì máy tính cá nhân v a óng vai trò tr m cu i,
v a óng vai trò máy tính x lý.
D ng t ng quát c a l nh Linux có th ư c vi t như sau:
# <Tên l nh> [<các tham s >] ¿
trong ó:
Tên l nh là m t dãy ký t , không có d u cách, bi u th cho m t l nh c a
Linux hay m t chương trình. Ngư i dùng c n h i u hành áp ng yêu c u gì c a
mình thì ph i ch n úng tên l nh. Tên l nh là b t bu c ph i có khi gõ l nh.
Các tham s có th có ho c không có, ư c vi t theo quy nh c a l nh mà
chúng ta s d ng, nh m cung c p thông tin v các i tư ng mà l nh tác ng t i. Ý
nghĩa c a các d u [, <, >, ] ư c gi i thích ph n quy t c vi t l nh.
Các tham s ư c phân ra thành hai lo i: tham s khóa (sau ây thư ng dùng là "tùy ch n")
và tham s v trí. Tham s v trí thư ng là tên file, thư m c và thư ng là các i tư ng ch u
s tác ng c a l nh. Khi gõ l nh, tham s v trí ư c thay b ng nh ng i tư ng mà ngư i
dùng c n hư ng tác ng t i. Tham s khóa chính là nh ng tham s i u khi n ho t ng
c a l nh theo các trư ng h p riêng. Trong Linux, tham s khóa thư ng b t u b i d u tr
"-" ho c hai d u tr liên ti p "--". Khi gõ l nh, cũng gi ng như tên l nh, tham s khóa ph i
ư c vi t chính xác như trình bày trong mô t l nh. M t l nh có th có m t s ho c r t
nhi u tham s khóa. Ph thu c vào yêu c u c th c a mình, ngư i dùng có th ch n m t
ho c m t s các tham s khóa khi gõ l nh. Trong mô t l nh, thư ng xu t hi n thu t ng
tùy-ch n. Tùy ch n l nh (th c ch t là tham s khóa) cho phép i u ch nh ho t ng c a
l nh trong Linux, làm cho l nh có tính ph d ng cao. Tuỳ ch n l nh cho phép l nh có th
áp ng ý mu n c a ngư i dùng i v i h u h t (tuy không ph i lúc nào cũng v y) các tình
hu ng t ra cho thao tác ng v i l nh.
1
6
Ký hi u "↵" bi u th vi c gõ phím h t dòng <Enter>. k t thúc m t yêu
c u, ngư i dùng nh t thi t ph i gõ phím "↵".
Ví d , khi ngư i dùng gõ l nh xem thông tin v các file:
# ls -l g↵↵↵↵¿
trong l nh này:
ls là tên l nh th c hi n vi c ưa danh sách các tên file/ thư m c con trong
m t thư m c,
-l là tham s khóa, cho bi t yêu c u xem y thông tin v các i tư ng
hi n ra. Chú ý, trong tham s khóa ch cái (ch "l") ph i i ngay sau d u tr "-".
Tương ng v i l nh ls còn có các tham s khóa -a, -L, ... và chúng cũng là các tùy
ch n l nh. Trong m t s tham s khóa có nhi u ch cái thay cho m t d u "-" là hai
d u "--" u tham s . Ví d , như trư ng h p tham s --file c a l nh date.
g* là tham s v trí ch rõ ngư i dùng c n xem thông tin v các file có tên
g i b t u là ch cái "g".
Trong tài li u này, quy ư c r ng khi vi t m t l nh (trong mô t l nh và gõ l nh) thì
không c n ph i vi t d u "↵" cu i dòng l nh ó, song luôn ghi nh r ng phím ENTER
("↵") là b t bu c khi gõ l nh.
Lưu ý:
Linux (và UNIX nói chung) ư c xây d ng trên ngôn ng l p trình C, vì v y
khi gõ l nh ph i phân bi t ch thư ng v i ch hoa. Ngo i tr m t s ngo i l , trong
Linux chúng ta th y ph bi n là:
Các tên l nh là ch thư ng,
M t s tham s có th là ch thư ng ho c ch hoa (ví d , trong l nh date
v th i gian h th ng thì hai tham s -r và -R có ý nghĩa hoàn toàn khác
nhau). Tên các bi n môi trư ng cũng thư ng dùng ch hoa.
Trong tài li u này, t i nh ng dòng văn b n di n gi i, s d ng cách vi t tên
l nh, các tham s khóa b ng ki u ch không chân, m như date, -R, -r ...
Linux phân bi t siêu ngư i dùng (ti ng Anh là superuser ho c root, còn
ư c g i là ngư i qu n tr hay ngư i dùng t i cao ho c siêu ngư i dùng) v i
ngư i dùng thông thư ng. Trong t p h p l nh c a Linux, có m t s l nh mà ch siêu
ngư i dùng m i ư c phép s d ng còn ngư i dùng thông thư ng thì không ư c
phép (ví d như l nh adduser th c hi n vi c b sung thêm ngư i dùng). M t khác
trong m t s l nh, v i m t s tham s khóa thì ch siêu ngư i dùng ư c phép dùng,
còn v i m t s tham s khác thì m i ngư i dùng u ư c phép (ví d như l nh
passwd thay i m t kh u ngư i dùng).
M t dòng l nh có th có nhi u hơn m t l nh, trong ó l nh sau ư c ngăn
cách b i v i l nh i ngay trư c b ng d u ";" ho c d u "|". Ví d v m t s dòng l nh
d ng này:
# ls -l; date
# head Filetext | sort >temp
Sau khi ngư i dùng gõ xong dòng l nh, shell ti p nh n dòng l nh này và
phân tích n i dung văn b n c a l nh. N u l nh ư c gõ úng thì nó ư c th c hi n;
ngư c l i, trong trư ng h p có sai sót khi gõ l nh thì shell thông báo v sai sót và
1
7
d u nh c shell l i hi n ra ch l nh ti p theo c a ngư i dùng. V ph bi n, n u
như sau khi ngư i dùng gõ l nh, không th y thông báo sai sót hi n ra thì có nghĩa
l nh ã ư c th c hi n m t cách bình thư ng.
Trư c khi i vào n i dung chi ti t các l nh thông d ng, chúng ta xem xét v m t s quy
nh dùng trong mô t l nh ư c trình bày trong tài li u này.
1.3.1. Các quy ư c khi vi t l nh
Trong tài li u này, các l nh ư c trình bày theo m t b quy t c cú pháp nh t quán. B
quy t c này cho phép phân bi t trong m i l nh các thành ph n nào là b t bu c ph i có, các
thành ph n nào có th có ho c không ... Dư i ây là n i dung c a các quy t c trong b quy
t c ó.
Tên l nh là b t bu c, ph i là t u tiên trong b t kỳ l nh nào, ph i ư c gõ
úng như khi mô t l nh.
Tên khái ni m ư c n m trong c p d u ngo c quan h (< và >) bi u th cho
m t l p i tư ng và là tham s b t bu c ph i có. Khi gõ l nh thì tên khái ni m (có
th ư c coi là "tham s hình th c") ph i ư c thay th b ng m t t (thư ng là tên
file, tên thư m c ... và có th ư c coi là "tham s th c s ") ch i tư ng liên
quan n thao tác c a l nh.
Ví d , mô t cú pháp c a l nh more xem n i dung file là
# more <file>
thì t more là tên l nh, còn <file> là tham s trong ó file là tên khái ni m và là tham s
b t bu c ph i có. L nh này có tác ng là hi n lên màn hình theo cách th c cu n n i dung
c a file v i tên ã ch trong l nh.
xem n i dung file có tên là temp, ngư i dùng gõ l nh:
# more temp
Như v y, tên l nh more ư c gõ úng như mô t cú pháp (c n i dung và v trí) còn
"file" ã ư c thay th b ng t "temp" là tên file mà ngư i dùng mu n xem n i dung.
Các b ph n n m gi a c p d u ngo c vuông [ và ] là có th gõ ho c không
gõ cũng ư c.
Ví d , cú pháp c a l nh halt là
# halt [tùy-ch n]
V i các tùy ch n là -w, -n, -d, -f, -i mã m i tùy ch n cho m t cách th c ho t ng
khác nhau c a l nh halt. L nh halt có tác ng chính là làm ng ng ho t ng c a h i u
hành, tuy nhiên khi ngư i dùng mu n có m t cách ho t ng nào ó c a l nh này thì s
ch n m t (ho c m t s ) tuỳ ch n l nh tương ng. M t s cách gõ l nh halt c a ngư i dùng
như sau ây là úng cú pháp:
# halt
# halt -w
# halt -n
# halt -f
Các giá tr có trong c p | và | trong ó các b ph n cách nhau b ng d u s
ng "|" cho bi t c n ch n m t và ch m t trong các giá tr n m gi a hai d u ngo c
ó.
1
8
Ví d , khi gi i thi u v tùy ch n l nh c a l nh tail xem ph n cu i n i dung c a file,
chúng ta th y:
-f, --follow[={tên | c t }]
Như v y, sau tham s khóa --follow, n u xu t hi n thêm d u b ng "="
thì ph i có ho c tên ho c c t . ây là trư ng h p các ch n l a "lo i tr nhau".
D u ba ch m ... th hi n vi c l p l i thành ph n cú pháp i ngay trư c d u
này, vi c l p l i ó có th t không n nhi u l n (không k chính thành ph n cú
pháp ó). Cách th c này thư ng ư c dùng v i các tham s như tên file.
Ví d , mô t l nh chown như sau:
chown [tùy-ch n] <ch >[,[nhóm]]<file>...
Như v y trong l nh chown có th không có ho c có m t s tùy ch n l nh và có t m t
n nhi u tên file.
Các b ph n trong mô t l nh, n u không n m trong các c p d u [ ], <>, { }
thì khi gõ l nh th c s ph i gõ y úng như khi mô t (chú ý, quy t c vi t tên l nh là
m t trư ng h p riêng c a quy t c này).
Vi c k t h p các d u ngo c v i nhau cho phép t o ra cách th c s d ng quy
t c t h p các tham s trong l nh. Ví d , l nh more bình thư ng có cú pháp là:
# more <file>
có nghĩa là thay <file> b ng tên file c n xem n i dung, n u k t h p thêm d u ngo c vuông [
và ], t c là có d ng sau (chính là d ng t ng quát c a l nh more):
# more [<file>]
thì <file> nói chung ph i có trong l nh more, tuy nhiên trong m t s trư ng h p có th b
qua tham s file.
Lưu ý:
i v i nhi u l nh, cho phép ngư i dùng gõ tham s khóa k t h p tương
ng v i tùy_ch n trong mô t l nh. Tham s khóa k t h p ư c vi t theo cách -
<xâu-kí-t >, trong ó xâu-kí-t g m các ch cái trong tham s khóa. Ví d ,
trong mô t l nh in l ch cal:
cal [tùy-ch n] [tháng [năm] ]
có ba tham s khóa là -m, -j, -y. Khi gõ l nh có th gõ m t t h p nào ó t ba
tham s khóa này ư c tình hu ng s d ng l nh theo ý mu n. Ch ng h n,
n u gõ l nh
cal -mj 3
thì l nh cal th c hi n theo i u khi n c a hai tham s khóa -m (ch n Th Hai
là ngày u tu n, thay vì cho ng m nh là Ch Nh t) và -j (hi n th ngày trong
tháng dư i d ng s ngày trong năm k t u năm). Vì v y, khi vi t [tùy-ch n]
trong mô t l nh bi u th c vi c s d ng t ng tùy ch n, nhi u tùy ch n ho c k t
h p các tuỳ ch n.
Trong m t s l nh, có hai tham s khóa cùng tương ng v i m t tình hu ng
th c hi n l nh, trong ó m t tham s g m m t kí t còn tham s kia l i là m t t .
Tham s dài m t t là tham s chu n c a l nh, còn tham s m t kí t là cách vi t
ng n g n. Tham s chu n dùng ư c trong m i Linux và khi gõ ph i có kí t
trong t .
1
9
Ví d , khi mô t l nh date có tùy ch n:
-d, --date=STRING
như v y hai tham s -d và --date=STRING có cùng ý nghĩa.
Ngoài nh ng quy ư c trên ây, ngư i dùng ng quên m t quy nh cơ b n là c n phân
bi t ch hoa v i ch thư ng khi gõ l nh.
1.3.3. Làm ơn gi n thao tác gõ l nh
Vi c s d ng bàn phím nh p l nh tuy không ph i là m t công vi c n ng n , song
Linux còn cho phép ngư i dùng s d ng m t s cách th c thu n ti n hơn khi gõ l nh.
M t s trong nh ng cách th c ó là:
S d ng vi c khôi ph c dòng l nh,
S d ng các phím c bi t,
S d ng các kí hi u thay th và phím <Tab>,
S d ng thay th alias,
S d ng chương trình l nh.
Cách th c s d ng chương trình l nh (shell script) s ư c gi i thi u chi ti t trong các
chương sau. Dư i ây, chúng ta xem xét cách th c s d ng vi c khôi ph c dòng l nh, phím
c bi t và kí hi u thay th .
Cơ ch khôi ph c dòng l nh
Linux cung c p m t cách th c c bi t là kh năng khôi ph c l nh. T i d u nh c shell:
Ngư i dùng s d ng các phím mũi tên lên/xu ng (↑/↓) trên bàn phím nh n l i các dòng
l nh ã ư c ưa vào trư c ây t i d u nh c shell, ch n m t trong các dòng l nh ó và biên
t p l i n i dung dòng l nh theo úng yêu c u m i c a mình.
Ví d , ngư i dùng v a gõ xong dòng l nh:
# ls -l tenfile*
sau ó mu n gõ l nh ls -l tentaptin thì t i d u nh c c a shell, ngư i dùng s d ng các
phím di chuy n lên (↑) ho c xu ng (↓) nh n ư c:
# ls -l tenfile*
dùng các phím t t di chuy n, xoá kí t (xem ph n sau) có ư c:
# ls -l ten
và gõ ti p các kí t "taptin" nh n ư c:
# ls -l tentaptin
chính là k t qu mong mu n.
Trong trư ng h p s lư ng kí t thay th là r t ít so v i s lư ng kí t c a toàn dòng
l nh thì hi u qu c a cách th c này r t cao.
Lưu ý:
Vi c nh n liên ti p các phím di chuy n lên (↑) ho c xu ng (↓) cho phép
ngư i dùng nh n ư c các dòng l nh ã gõ t trư c mà không ch dòng l nh m i
ư c gõ. Cách th c này tương t v i cách th c s d ng ti n ích DOSKEY trong h
i u hành MS-DOS.
2
0
M t s phím c bi t khi gõ l nh
Khi ngư i dùng gõ l nh có th x y ra m t s tình hu ng như sau:
Dòng l nh ang gõ có ch sai sót, không úng theo yêu c u c a ngư i dùng
vì v y c n ph i s a l i ôi chút n i dung trên dòng l nh ó. Trong trư ng h p ó
c n s d ng các phím c bi t (còn g i là phím vi t t t hay phím t t) di chuy n,
xoá b , b sung vào n i dung dòng l nh.
Sau khi s d ng cách th c khôi ph c dòng l nh, chúng ta nh n ư c dòng
l nh tương t v i l nh c n gõ và sau ó s d ng các phím t t hoàn thi n l nh.
Dư i ây gi i thi u các phím t t và ý nghĩa c a vi c s d ng chúng:
• Nh n phím → di chuy n con tr sang bên ph i m t v trí
• Nh n phím ← di chuy n con tr sang bên trái m t v trí
• Nh n phím <ESC-BACKSPACE> xoá m t t bên trái con tr
• Nh n phím <ESC-D> xoá m t t bên ph i con tr
• Nh n phím <ESC-F> di chuy n con tr sang bên ph i m t t
• Nh n phím <ESC-B> di chuy n con tr sang bên trái m t t
• Nh n phím <CTRL-A> di chuy n con tr v u dòng l nh
• Nh n phím <CTRL-E> di chuy n con tr v cu i dòng
• Nh n phím <CTRL-U> xóa dòng l nh
Có th dùng phím <ALT> thay cho phím <ESC>.
Các kí hi u mô t nhóm file và phím <Tab>
Khi gõ l nh th c s nhi u trư ng h p ngư i dùng mong mu n m t tham s trong l nh
không ch xác nh m t file mà l i liên quan n m t nhóm các file mà tên g i c a các file
trong nhóm có chung m t tính ch t nào ó. Trong nh ng trư ng h p như v y, ngư i dùng
c n s d ng các kí hi u mô t nhóm file (wildcards), chúng ta g i là kí hi u mô t nhóm
(còn ư c g i là kí hi u thay th ). Ngư i ta s d ng các kí t *, ? và c p hai d u [ và ]
mô t nhóm file. Các kí t này mang ý nghĩa như sau khi vi t vào tham s tên file th c s :
• "*" : là ký t mô t nhóm g m m i xâu kí t (thay th m i xâu). Mô t này
cho m t nhóm l n nh t trong ba mô t .
• "?" : mô t nhóm g m m i xâu v i dài không quá 1 (thay th m t kí t ).
Nhóm này là t p con c a nhóm u tiên (theo kí t "*").
• [xâu-kí-t ] : mô t nhóm g m m i xâu có dài 1 là m i kí t thu c xâu nói
trên. Mô t này cho m t nhóm có l c lư ng bé nh t trong ba mô t . Nhóm này là t p
con c a nhóm th hai (theo kí t "?"). Khi gõ l nh ph i gõ c hai d u [ và ]. M t
d ng khác c a mô t nhóm này là [<kí_t _1>-<kí_t _2>] nghĩa là gi a c p d u
ngo c có ba kí t trong ó kí t gi a là d u n i (d u -) thì cách vi t này tương
ương v i vi c li t kê m i kí t t <kí_t _1> n <kí_t _2>. Ch ng h n, cách vi t
[a-d] tương ương v i cách vi t [abcd].
Ví d , gi s khi mu n làm vi c v i t t c các file trong m t thư m c nào ó, ngư i
dùng gõ * thay th tham s file thì xác nh ư c các tên file sau (chúng ta vi t b n tên file
trên m t dòng):
2
1
info-dir initlog.conf inittab lynx.cfg
mail.rc mailcap minicom.users motd
mtab mtools.conf services shadow
shadow- shells smb.conf sysctl.conf
syslog.conf temp termcap up2date.conf
temp termcap
N u ngư i dùng gõ s* ( ch các tên có ch cái u là s) thay th tham s file thì xác
nh ư c các tên file sau:
shadow shadow- shells sysctl.conf
syslog.conf
N u ngư i dùng gõ [si]* ( ch các tên có ch cái u là s ho c i, chú ý dùng c hai kí
t [ và ]) thay th tham s file thì xác nh các tên file sau:
info-dir initlog.conf inittab services
shadow shadow- shells smb.conf
sysctl.conf syslog.conf
Lưu ý:
Như v y, Linux (và UNIX nói chung) không ch s d ng hai kí t mô t
nhóm * và ? mà còn có cách th c s d ng c p kí t [ và ].
C n phân bi t c p d u [ và ] ư c s d ng khi ngư i dùng gõ l nh có ý
nghĩa hoàn toàn khác v i ý nghĩa c a chúng khi ư c s d ng trong mô t l nh.
Hơn th n a, Linux còn cung c p cho ngư i dùng cách th c s d ng phím <TAB>
hoàn thành n t tên file (tên thư m c) trong l nh. Ví d , khi chúng ta gõ dòng l nh
# ls /u<TAB>local<TAB>b<TAB>
thì nó cũng tương ương như gõ dòng l nh (và ây chính là n i dung xu t hi n t i d u nh c
shell):
# ls /usr/local/bin
v i i u ki n trong thư m c /usr ch có thư m c local ư c b t u b i ch "l" và trong thư
m c local cũng ch có thư m c bin ư c b t u b i ch "b".
Trong trư ng h p n u như m t kí t chưa xác nh, ngư i dùng c n gõ thêm kí t ti p
theo trong tên file (tên thư m c) và nh n phím <TAB> hoàn thành dòng l nh.
1.3.4. Ti p n i dòng l nh
Như ã lưu ý trên ây, m t dòng l nh có th g m m t ho c m t s l nh, m t khác tham
s c a l nh có th là r t dài không th trong khuôn kh c a m t dòng văn b n ư c. Khi gõ
l nh, n u dòng l nh quá dài, Linux cho phép ng t dòng l nh xu ng dòng dư i b ng cách
thêm kí t báo hi u chuy n dòng "" t i cu i dòng; trong trư ng h p ó, kí t "" ph i là ký
t cu i cùng thu c dòng l nh trư c.
Ví d ,
# cd vsd
thumuc
thì dòng th hai là ph n ti p theo c a dòng th nh t và k t h p c hai dòng này th c ch t là
m t dòng l nh Linux.
2
2
1.4. Trang Man
Chúng ta có th nói r ng Linux là m t h i u hành r t ph c t p v i hàng nghìn l nh và
m i l nh l i có th có t i vài ho c vài ch c tình hu ng s d ng do chúng cho phép có nhi u
tùy ch n l nh. thu c h t ư c n i dung t t c các l nh c a Linux là m t i u h t s c
khó khăn, có th nói là không th . Linux cho phép ngư i dùng s d ng cách th c g i trang
Man có ư c các thông tin y gi i thi u n i dung các l nh. Dư i ây là m t s n i
dung v cách th c s d ng trang Man.
"Man" là t vi t t t c a "manual", ư c coi là tài li u tr c tuy n trong Linux ã lưu tr
toàn b các l nh có s n v i các thông tin tham kh o khá y cho phép ngư i dùng có th
m ra nh n ư c tr giúp.
m trang Man c a m t l nh, chúng ta s d ng l nh man c a Linux và gõ:
# man <tên-l nh>
N i dung c a trang Man tuy không ph i là quá khó hi u, song hi u h t ư c nó cũng
òi h i không ít th i gian. Tuy v y, n u quên n i dung m t l nh nào ó thì cách t t nh t là
hãy s d ng trang Man.
C u trúc chung c a m t trang Man như sau:
COMMAND(1) Linux Programmer's Manual COMMAND(1)
NAME
tên l nh - khái quát tác d ng c a l nh
SYNOPSIS
cú pháp c a l nh
DESCRIPTION
mô t c th hơn v tác d ng c a l nh
OPTIONS
li t kê các tùy ch n l nh và tác d ng c a chúng
FILES
li t kê các file mà l nh s d ng ho c tham chi u n
SEE ALSO
li t kê các l nh, các tài li u, ..., có liên quan n l nh
REPORTING BUGS
a ch liên h n u g p l i khi s d ng l nh
AUTHOR
tên tác gi c a l nh
Ngư i dùng th m chí không nh chính xác tên l nh. Linux còn có m t cách th c h tr
ngư i dùng có th nhanh chóng tìm ư c l nh c n s d ng trong trư ng h p ch nh nh ng
ch cái u c a tên l nh, ó là cách th c s d ng phím TAB. Trong cách th c này, ngư i
dùng ch c n nh m t s ch cái u tiên c a tên l nh.
Có th trình bày cách th c ó theo cú pháp sau ây:
# <dãy-ch -cái><TAB><TAB>
Trong ó dãy-ch -cái có t m t n m t vài ch cái thu c ph n u c a tên l nh. Chú ý
r ng, các ch cái và hai phím <TAB> ph i ư c gõ liên ti p nhau.
K t h p cách th c này v i cách th c s d ng l nh man (v i s phong phú v tùy ch n
c a l nh man) nh n ư c m t cách th c khá tuy t v i tr giúp ngư i dùng.
2
3
Ví d , mu n s d ng l nh history nhưng l i không nh chính xác tên l nh ư c vi t ra
như th nào mà ch nh nó ư c b t u b i ch h, hãy gõ ch h ó t i d u nh c shell và
nh n phím TAB hai l n, s th y m t danh sách các l nh có ch cái u tiên là h ư c hi n
ra trên màn hình:
# h<TAB><TAB>
h2ph hboot help hexdump history
hostname htdigest h2xs hcc helpme hf77
hltest hoststat htpasswd halt hcp
helptool hinotes host hpcdtoppm hash
head hexbin hipstopgm hostid hpftodit
Như v y, t t c các l nh có tên b t u v i ch h ư c hi n th trên màn hình và cho
phép ngư i dùng có th xác nh ư c l nh c n quan tâm.
Trư ng h p t n t i m t s lư ng l n các l nh có cùng ch cái u tiên mà ngư i dùng
ã gõ, thay vì hi n h t m i tên l nh, h i u hành cho ra m t thông báo h i ngư i dùng có
mu n xem toàn b các l nh ó hay không. Ngư i dùng áp ng thông báo ó tuỳ theo ý
mu n c a mình.
Ví d , khi ngư i dùng gõ n i dung như sau:
# p<TAB><TAB>
thì h th ng áp l i là:
There are 289 possibilities. Do you really wish to see them all? (y or n)
Ngư i dùng gõ phím "y" n u mu n xem, ho c gõ "n" n u b qua.
Ngư i dùng có th gõ nhi u hơn m t ch cái u tên l nh và i u ó cho phép gi m
b t s tên l nh mà h th ng tìm ư c và hi n th . Ch ng h n, khi bi t hai ch cái u là
"pw" và ngư i dùng gõ:
# pw<TAB><TAB>
thì h th ng s hi n ra danh sách các tên l nh b t u b i "pw":
pwck pwconv pwd pwdb_chkpwd pwunconv
Trong trư ng h p này, ngư i dùng s nh n bi t ư c tên l nh ang c n tìm thu n ti n
hơn.
2
4
CHƯƠNG 2. THAO TÁC V I H TH NG
2.1. Quá trình kh i ng Linux
Trong ph n này, chúng ta xem xét sơ b quá trình kh i ng h i u hành Linux.
M t trong nh ng cách th c kh i ng Linux ph bi n nh t là cách th c do chương trình
LILO (LInux LOader) th c hi n. Chương trình LILO ư c n p lên ĩa c a máy tính khi cài
t h i u hành Linux. LILO ư c n p vào Master Boot Record c a ĩa c ng ho c vào
Boot Sector t i phân vùng kh i ng (trên ĩa c ng ho c ĩa m m). Gi s máy tính c a
chúng ta ã cài t Linux và s d ng LILO kh i ng h i u hành. LILO thích h p v i
vi c trên máy tính ư c cài t m t s h i u hành khác nhau và theo ó, LILO còn cho
phép ngư i dùng ch n l a h i u hành kh i ng.
Giai o n kh i ng Linux tùy thu c vào c u hình LILO ã ư c l a ch n trong quá
trình cài t Linux. Trong tình hu ng ơn gi n nh t, Linux ư c kh i ng t ĩa c ng hay
ĩa m m kh i ng.
Quá trình kh i ng Linux có th ư c mô t theo sơ sau:
T
heo
sơ này, LILO ư c t i vào máy th c hi n mà vi c u tiên là ưa nhân vào b nh
trong và sau ó t i chương trình init th c hi n vi c kh i ng Linux.
N u cài t nhi u phiên b n Linux hay cài Linux cùng các h i u hành khác (trong các
trư ng h p như th , m i phiên b n Linux ho c h i u hành khác ư c gán nhãn - label
phân bi t), thì thông báo sau ây ư c LILO ưa ra:
LILO boot:
cho phép nh p xâu là nhãn c a m t trong nh ng h i u hành hi n có trên máy kh i
ng nó. T i th i i m ó, ngư i dùng c n gõ nhãn c a h i u hành c n kh i ng vào, ví
d , gõ
LILO boot: linux
n u ch n kh i ng làm vi c trong Linux, ho c gõ
LILO boot: dos
n u ch n kh i ng làm vi c trong MS-DOS, Windows.
Lưu ý:
N u chúng ta không nh ư c nhãn c a h i u hành có trong máy ch n,
hãy gõ phím <TAB> ư c LILO cho bi t nhãn c a các h i u hành.
LILO boot: <TAB>
s hi n ra danh sách các nhãn (ví d như): linux dos ...
và hi n l i thông báo nói trên ta gõ nhãn c a h i u hành.
LILO cũng cho phép t ch ch n ng m nh h i u hành kh i ng
mà theo ó n u chúng ta không có tác ng gì sau thông báo ch n h i u hành thì
LILO s t ng ch n h i u hành ng m nh ra kh i ng. N u chúng ta
không can thi p vào các file tương ng c a trình LILO thì h i u hành Linux là h
i u hành ng m nh.
Gi s Linux ã ư c ch n kh i ng. Khi init th c hi n, chúng ta s th y m t chu i
(kho ng vài ch c) dòng thông báo cho bi t h th ng ph n c ng ư c Linux nh n di n và
LILO Nhân init
2
5
thi t l p c u hình cùng v i t t c trình i u khi n ph n m m ư c n p khi kh i ng. Quá
trình init là quá trình kh i th y, là cha c a m i quá trình. T i th i i m kh i ng h th ng
init th c hi n vai trò u tiên c a mình là ch y chương trình shell trong file /etc/inittab và
các dòng thông báo trên ây chính là k t qu c a vi c ch y chương trình shell ó. Sau khi
chương trình shell trên ư c th c hi n xong, b t u quá trình ngư i dùng ăng nh p
(login) vào h th ng.
2.2. Th t c ăng nh p và các l nh thoát kh i h th ng
2.2.1. ăng nh p
Sau khi h th ng Linux (l y Red Hat 6.2 làm ví d ) kh i ng xong, trên màn hình xu t
hi n nh ng dòng sau:
Ret Hat Linux release 6.2 (Zoot)
Kernel 2.2.14-5.0 on an i686
May1 login:
Dòng th nh t và dòng th hai cho bi t lo i phiên b n Linux, phiên b n c a nhân và
ki n trúc ph n c ng có trên máy, dòng th ba là d u nh c ăng nh p ngư i dùng th c
hi n vi c ăng nh p. Chú ý là các dòng trên ây có th thay i chút ít tùy thu c vào phiên
b n Linux.
T i d u nh c ăng nh p, hãy nh p tên ngư i dùng (còn g i là tên ăng nh p): ây là tên
kí hi u ã cung c p cho Linux nh m nh n di n m t ngư i dùng c th . Tên ăng nh p ng
v i m i ngư i dùng trên h th ng là duy nh t, kèm theo m t m t kh u ăng nh p.
May1 login: root
Password:
Chúng ta có th thay i các dòng hi n th như trình bày trên ây b ng cách s a
i file /etc/rc.d/rc.local như sau:
Thay o n chương trình
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
thành
echo "" > /etc/issue
echo "Thông báo mu n hi n th " >> /etc/issue
ví d s a thành:
echo "" > /etc/issue
echo "This is my computer" >> /etc/issue
thì trên màn hình ăng nh p s có d ng sau:
This is my computer
hostname login:
2
6
Khi nh p xong tên ăng nh p, h th ng s hi n ra thông báo h i m t kh u và di chuy n
con tr xu ng dòng ti p theo ngư i dùng nh p m t kh u. M t kh u khi ư c nh p s
không hi n th trên màn hình và chính i u ó giúp tránh kh i s "nhòm ngó" c a ngư i
khác.
N u nh p sai tên ăng nh p ho c m t kh u, h th ng s ưa ra m t thông báo l i:
May1 login: root
Password:
Login incorrect
Máy1 login:
N u ăng nh p thành công, ngư i dùng s nhìn th y m t s thông tin v h th ng, m t
vài tin t c cho ngư i dùng... Lúc ó, d u nh c shell xu t hi n ngư i dùng b t u phiên
làm vi c c a mình.
May1 login: root
Password:
Last login: Fri Oct 27 14:16:09 on tty2
Root[may1 /root]#
Dãy kí t trong dòng cu i cùng chính là d u nh c shell. Trong d u nh c này, root là
tên ngư i dùng ăng nh p, may1 là tên máy và /root tên thư m c hi n th i (vì ây là ngư i
dùng root). Khi d u nh c shell xu t hi n trên màn hình thì i u ó có nghĩa là h i u hành
ã s n sàng ti p nh n m t yêu c u m i c a ngư i dùng.
D u nh c shell có th khác v i trình bày trên ây (M c 2.7 cung c p cách thay i d u
nh c shell), nhưng có th hi u nó là chu i kí t b t u m t dòng có ch a tr chu t và luôn
xu t hi n m i khi h i u hành hoàn thành m t công vi c nào ó.
2.2.2. Ra kh i h th ng
k t thúc phiên làm vi c ngư i dùng c n th c hi n th t c ra kh i h th ng. Có r t
nhi u cách cho phép thoát kh i h th ng, ây chúng ta xem xét m t s cách thông d ng
nh t.
Cách ơn gi n nh t m b o thoát kh i h th ng úng n là nh n t h p
phím CTRL+ALT+DEL. Khi ó, trên màn hình s hi n th m t s thông báo c a h
th ng và cu i cùng là thông báo thoát trư c khi t t máy. C n chú ý là: N u ang làm
vi c trong môi trư ng X Window System, hãy nh n t h p phím
CTRL+ALT+BACKSPACE trư c r i sau ó hãy nh n CTRL+ALT+DEL.
Cách th hai là s d ng l nh shutdown v i cú pháp như sau:
shutdown [tùy-ch n] <time> [c nh-báo]
L nh này cho phép d ng t t c các d ch v ang ch y trên h th ng.
Các tùy-ch n c a l nh này như 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.
2
7
-F : kh i ng l i và th c hi n vi c ki m tra ĩa.
-c : b qua không ch y l nh shutdown. Trong tùy ch n này không th ưa ra tham s th i gian
nhưng có th ưa ra thông báo gi i thích trên dòng l nh g i cho t t c các ngư i dùng.
-t s -giây : qui nh init(8) ch kho ng th i gian s -giây t m d ng gi a quá trình g i c nh
báo và tín hi u kill, trư c khi chuy n sang m t m c ch y khác.
và hai tham s v trí còn l i:
time : t th i i m shutdown. Tham s time có hai d ng. D ng tuy t i là gg:pp (gg: gi
trong ngày, pp: phút) thì h th ng s shutdown khi ng h máy trùng v i giá tr tham s . D ng
tương i là +<s > là h n sau th i kho ng <s > phút s shutdown; coi shutdown l p t c tương
ương v i +0.
c nh-báo : thông báo g i n t t c ngư i dùng trên h th ng. Khi l nh th c hi n t t c các
máy ngư i dùng u nh n ư c c nh báo.
Ví d , khi ngư i dùng gõ l nh:
shutdown +1 Sau mot phut nua he thong se shutdown!
trên màn hình c a t t c ngư i dùng xu t hi n thông báo "Sau mot phut nua he thong se
shutdown! " và sau m t phút thì h th ng shutdown th c s .
Cách th ba là 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 c a l nh halt:
-w : không th c s t t máy nhưng v n ghi các thông tin lên file /var/log/wtmp ( ây là file lưu
tr danh sách các ngư i dùng ăng nh p thành công vào h th ng).
-d : không ghi thông tin lên file /var/log/wtmp. Tùy ch n -n có ý nghĩa tương t song không
ti n hành vi c ng b hóa.
-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.
Chúng ta c n nh r ng, 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.
Lưu ý:
Có th s d ng l nh exit tr v d u nh c ăng nh p ho c k t thúc phiên
làm vi c b ng l nh logout.
2.2.3. Kh i ng l i h th ng
Ngoài vi c thoát kh i h th ng nh các cách th c trên ây ( n t h p ba phím
Ctrl+Alt+Del, dùng l nh shutdown ho c l nh halt), khi c n thi t (ch ng h n, g p ph i
tình hu ng m t trình ng d ng ch y qu n) có th kh i ng l i h th ng nh 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. Nói chung thì ch siêu ngư i dùng m i ư c
phép s d ng l nh reboot, tuy nhiên, n u h th ng ch có duy nh t m t ngư i dùng ang
2
8
làm vi c thì l nh reboot v n ư c th c hi n song h th ng òi h i vi c xác nh n m t
kh u.
Các tùy ch n c a l nh reboot như sau là -w, -d, -n, -f, -i có ý nghĩa tương t như trong
l nh halt.
2.2.4. Kh i ng vào ch ho
Linux cho phép nhi u ch kh i ng, nh ng ch này ư c li t kê trong file
/etc/inittab. Dư i ây là n i dung c a file này:
# inittab This file describes how the INIT process should set up
# the system in a certain run-level.
#
# Author: Miquel van Smoorenburg, <miquels drinkel.nl.mugnet.org>
# Modified for RHS Linux by Marc Ewing and Donnie Barnes
#
# Default runlevel. The runlevels used by RHS are:
# 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
# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
# Things to run in every runlevel.
ud::once:/sbin/update
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
#ca::ctrlaltdel:/bin/echo "You can't do that"
# When our UPS tells us power has failed, assume we have a few minutes
2
9
# of power left. Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly.
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
#3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6
# Run xdm in runlevel 5
# xdm is now a separate service
x:5:respawn:/etc/X11/prefdm –nodaemon
Trong ó ch kh i ng s 3 là ch kh i ng vào ch Text, và ch 5 là
kh ng vào ch ho . Như v y cho máy tính kh i ng vào ch ho ta s a
l i dòng c u hình
id:3:initdefault:
thành
id:5:initdefault:
Trong Linux có m t s lo i giao di n ho do m t s t ch c vi t ra. Hai t ch c n i
ti ng là GNOME (http://www.gnome.org) và KDE (http://www.kde.org) ã vi t ra các giao
di n ho mang tên trùng v i t ch c ó là GNOME và KDE.
Cũng tuỳ vào vi c ư c cài giao di n GNOME hay KDE mà khi kh i ng vào ch
ho , máy tính có các giao di n tương ng. Trên hình trên là giao di n GNOME mà khi
kh i ng vào ch ho . M t khác, các giao di n này liên t c ư c phát tri n, do ó
3
0
m i phiên b n s có s khác nhau. Trong giao di n ăng nh p h a, h th ng hi n th h p
tho i cho phép ngư i dùng nh p vào tên tài kho n; sau khi ngư i dùng nh p tên tài kho n
c a mình, h th ng h i ti p m t kh u. N u c tên tài kho n và m t kh u u chính xác thì
ngư i dùng ư c phép vào h th ng và m t giao di n làm vi c m i s hi n ra như hình
dư i.
2.3. L nh thay i m t kh u
M t kh u là v n r t quan tr ng trong các h th ng a ngư i dùng và m b o tính
b o m t t i a, c n thi t ph i chú ý t i vi c thay i m t kh u. Th m chí trong trư ng h p
h th ng ch có m t ngư i s d ng thì vi c thay i m t kh u v n là r t c n thi t.
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 cho phép m t ngư i vào
làm vi c trong h th ng v i quy n h n ã ư c quy nh. Trong quá trình ăng nh p, ngư i
dùng ph i gõ úng tên và m t kh u, trong ó gõ m t kh u là công vi c b t bu c ph i th c
hi n. 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.
· 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.
· 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 m i ăng ký tham gia s d ng h th ng. 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 (có th do ngư i dùng ngh )
và dùng l nh adduser (ho c l nh useradd) ăng ký tên và m t kh u ó v i h
3
1
th ng. Sau ó, ngư i dùng m i nh t thi t c n thay i m t kh u b o m vi c gi
bí m t cá nhân tuy t i.
L nh passwd cho phép thay i m t kh u ng v i tên ăng nh p ngư i dùng. Cú pháp
l nh passwd:
passwd [tùy-ch n] [tên-ngư i-dùng]
v i các tùy ch n như sau:
-k : thay i m t kh u ngư i dùng. L nh òi h i ph i xác nh n quy n b ng vi c gõ m t kh u
ang dùng trư c khi thay i m t kh u. Cho phép ngư i dùng thay i m t kh u c a mình c
l p v i siêu ngư i dùng.
-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. Ch siêu ngư i dùng m i có quy n s d ng tham s này.
-l : khóa m t tài kho n ngư i dùng. Vi c khóa tài kho n th c ch t là vi c d ch b n mã hóa m t
kh u thành m t xâu ký t vô nghĩa b t u b i kí hi u "!". Ch siêu ngư i dùng m i có quy n
s d ng tham s này.
-stdin : vi c nh p m t kh u ngư i dùng ch ư c ti n hành t thi t b vào chu n không th ti n
hành t ư ng d n (pipe). N u không 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.
-u : m khóa (tháo b khóa) m t tài kho n ( i ng u v i tham s -l). Ch siêu ngư i dùng m i
có quy n s d ng tham s này.
-d : xóa b m t kh u c a ngư i dùng. Ch siêu ngư i dùng m i có quy n s d ng tham s này.
-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. Ch siêu
ngư i dùng m i có quy n s d ng tham s này.
N u tên-ngư i-dùng không có trong l nh thì ng m nh là chính ngư i dùng ã gõ l nh
này.
Ví d khi ngư i dùng user1 gõ l nh:
# passwd user1
h th ng thông báo:
Changing password for user user1
New UNIX password:
ngư i dùng nh p m t kh u m i c a mình vào. Sau khi ngư i dùng gõ xong m t kh u
m i, h th ng cho ra thông báo:
BAD PASSWORD: it is derived from your password entry
Retype new UNIX password:
ngư i dùng kh ng nh m t l n n a m t kh u v a gõ dòng trên (nh ph i gõ l i úng h t
như l n trư c). Ch nên quá phân vân vì thông báo dòng phía trên vì h u h t khi gõ m t
kh u m i luôn g p nh ng thông báo ki u i lo i như v y, ch ng h n như:
BAD PASSWORD: it is too simplistic/systematic
Và sau khi chúng ta kh ng nh l i m t kh u m i, h th ng cho ra thông báo:
Passwd: all authentication tokens updated successfully.
cho bi t vi c thay i m t kh u thành công và d u nh c shell l i hi n ra.
Khi siêu ngư i dùng gõ l nh:
3
2
# passwd -S root
s hi n ra thông báo
Changing password for user root
Password set, MD5 encryption
cho bi t thu t toán mã hóa m t kh u mà Linux s d ng là m t thu t toán hàm băm có tên là
MD5.
Lưu ý:
Có m t l i khuyên i v i ngư i dùng là nên ch n m t kh u không quá ơn
gi n quá (nh m tránh ngư i khác d dò tìm ra) ho c không quá ph c t p (tránh khó
khăn cho chính ngư i dùng khi ph i ghi nh và gõ m t kh u). c bi t không nên s
d ng h tên, ngày sinh, s i n tho i ... c a b n thân ho c ngư i thân làm m t kh u
vì ây là m t trong nh ng trư ng h p m t kh u ơn gi n nh t.
N u thông báo m t kh u quá ơn gi n ư c l p i l p l i m t vài l n và
không có thông báo m t kh u m i thành công ã quay v d u nh c shell thì nên gõ
l i l nh và ch n m t m t kh u m i ph c t p hơn ôi chút.
2.4. L nh xem, thi t t ngày, gi hi n t i và xem l ch trên h th ng
2.4.1 L nh xem, thi t t ngày, gi
L nh date cho phép có th xem ho c thi t t l i ngày gi trên h th ng.
Cú pháp c a l nh g m hai d ng, d ng xem thông tin v ngày, gi :
date [tùy-ch n] [+ nh-d ng]
và d ng thi t t l i ngày gi cho h th ng:
date [tùy-ch n] [MMDDhhmm[ [CC[YY] ]-ss]]
Các tùy-ch n như sau:
-d, --date=xâu-văn-b n : hi n th th i gian dư i d ng xâu-văn-b n, mà không l y "th i
gian hi n t i c a h th ng” như theo ng m nh; xâu-văn-b n ư c t trong hai d u nháy ơn
ho c hai d u nháy kép.
-f, --file=file-văn-b n : gi ng như m t tham s --date nhưng ng v i nhi u ngày c n xem:
m i dòng c a file-văn-b n có vai trò như m t xâu-văn-b n trong trư ng h p tham s --date.
-I, --iso-8601[=mô-t ] : hi n th ngày gi theo chu n ISO-8601 (ví d : 2000-11-8).
-I tương ương v i tham s --iso-8601='date'
V i --iso-8601: n u mô-t là 'date' (ho c không có) thì hi n th ngày, n u mô-t là
'hours' hi n th ngày+gi , n u mô-t là 'minutes': ngày+gi +phút; n u mô-t là
'seconds': ngày + gi + phút + giây.
-r, --reference= file : hi n th th i gian s a i file l n g n ây nh t.
-R, --rfc-822 : hi n th ngày theo RFC-822 (ví d : Wed, 8 Nov 2000 09:21:46 -0500).
-s, --set=xâu-văn-b n : thi t t l i th i gian theo ki u xâu-văn-b n.
-u, --utc, --universal : hi n th ho c thi t t th i gian theo UTC (ví d : Wed Nov 8 14:29:12
UTC 2000).
--help : hi n th thông tin tr giúp và thoát.
3
3
Trong d ng l nh date cho xem thông tin ngày, gi thì tham s nh-d ng i u khi n
cách hi n th thông tin k t qu . nh-d ng là dãy có t m t n nhi u c p g m hai kí t ,
trong m i c p kí t u tiên là % còn kí t th hai mô t nh d ng.
Do s lư ng nh d ng là r t nhi u vì v y chúng ta ch xem xét m t s nh d ng i n
hình ( xem y các nh d ng, s d ng l nh man date).
Dư i ây là m t s nh d ng i n hình:
%% : Hi n ra chính kí t %.
%a : Hi n ra thông tin tên ngày trong tu n vi t t t theo ngôn ng b n a.
%A : Hi n ra thông tin tên ngày trong tu n vi t y theo ngôn ng b n a.
%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.
Trong d ng l nh date cho phép thi t t l i ngày gi cho h th ng thì tham s
[MMDDhhmm[ [CC[YY] [.ss]] mô t ngày, gi m i c n thi t t, trong ó:
MM: hai s ch tháng,
DD: hai s ch ngày trong tháng,
hh: hai s ch gi trong ngày,
mm: hai s ch phút,
CC: hai s ch th k ,
YY: hai s ch năm trong th k .
Các dòng ngay dư i ây trình bày m t s ví d s d ng l nh date, m i ví d ư c cho
tương ng v i m t c p hai dòng, trong ó dòng trên mô t l nh ư c gõ còn dòng dư i là
thông báo c a Linux.
# 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
2.4.2. L nh xem l ch
L nh cal cho phép xem l ch trên h th ng v i cú pháp như sau:
cal [tùy-ch n] [<tháng> [<năm>]]
3
4
n u không có tham s , l ch c a tháng hi n th i s ư c hi n th .
Các tuỳ-ch n là:
-m : ch n ngày Th hai là ngày u tiên trong tu n (m c nh là ngày Ch nh t).
-j : hi n th s ngày trong tháng dư i d ng s ngày trong năm (ví d : ngày 1/11/2000 s ư c
hi n th dư i d ng là ngày th 306 trong năm 2000, s ngày b t u ư c tính t ngày 1/1).
-y : hi n th l ch c a năm hi n th i.
Ví d :
# cal 1 2001
January 2001
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Khi nh p dòng l nh trên, trên màn hình s hi n th l ch c a tháng 1 năm 2001, m c nh
ch n ngày ch nh t là ngày b t u c a tu n. Dư i ây là ví d hi n th s ngày trong tháng
3 dư i d ng s ngày trong năm 2001.
# cal -j 3 2001
March 2001
Su Mo Tu We Th Fr Sa
60 61 62
63 64 65 66 67 68 69
70 71 72 73 74 75 76
77 78 79 80 81 82 83
84 85 86 87 88 89 90
2.5. Xem thông tin h th ng
L nh uname cho phép xem thông tin h th ng v i cú pháp là:
uname [tùy-ch n]
N u không có tuỳ ch n thì hi n tên h i u hành.
L nh có các 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 .
Ví d , n u gõ l nh
# uname -a
3
5
thì màn hình s hi n ra như sau:
Linux linuxsrv.linuxvn.net 2.2.14-5.0 #1 Tue Mar 7 21:07:39 EST 2000 i686 unknown
#
Thông tin hi n ra có t t c 6 trư ng là:
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
Ví d n u gõ l nh:
# uname -spr
thì màn hình s hi n ra như sau:
Linux 2.2.14-5.0 unknown
là tên h i u hành, tên nhân và ki u b x lý c a máy ch .
Lưu ý:
Chúng ta làm rõ thêm n i dung lưu ý trong m c 1.3.1 v tham s khóa k t
h p: Trong ví d trên ây khi vi t tham s -spr là yêu c u th c hi n l nh usame
v i nghĩa k t h p tình hu ng theo c ba tham s khóa -s, -p, -r. Chú ý r ng, không
th vi t -s -p -r thay cho -spr ư c. Như ã lưu ý m c 1.3.1 trong nhi u l nh c a
Linux cho phép vi t k t h p các tham s khóa theo cách th c như trên mi n là các
tham s ó không xung kh c v i nhau.
2.6. Thay i n i dung d u nh c shell
Trong Linux có hai lo i d u nh c: d u nh c c p m t (d u nh c shell) xu t hi n khi nh p
l nh và d u nh c c p hai (d u nh c nh p li u) xu t hi n khi l nh c n có d li u ư c nh p
t bàn phím và tương ng v i hai bi n nh c tên là PS1 và PS2.
PS1 là bi n h th ng tương ng v i d u nh c c p 1: Giá tr c a PS1 chính là n i dung hi n
th c a d u nh c shell. nh n bi t thông tin h th ng hi n t i, m t nhu c u t ra là c n
thay i giá tr c a các bi n h th ng PS1 và PS2.
Linux cho phép thay i giá tr c a bi n h th ng PS1 b ng l nh gán tr m i cho nó. L nh
này có d ng:
# PS1='<dãy kí t >'
Năm (5) kí t u tiên c a l nh gán trên ây (PS1=') ph i ư c vi t liên ti p nhau. Dãy
kí t n m gi a c p hai d u nháy ơn (có th s d ng c p hai d u kép ") và không ư c
phép ch a d u nháy. Dãy kí t này bao g m các c p kí t i u khi n và các kí t khác, cho
phép có th có d u cách. C p kí t i u khi n g m hai kí t , kí t u tiên là d u s xuôi ""
còn kí t th hai nh n m t trong các trư ng h p li t kê trong b ng dư i ây. B ng dư i ây
gi i thi u m t s c p ký t i u khi n có th ư c s d ng khi mu n thay i d u nh c
l nh:
C p ký t i u khi n Ý nghĩa
3
6
! Hi n th th t c a l nh trong l ch s
# Hi n th th t c a l nh
$ Hi n th d u ô-la ($). i v i siêu ngư i dùng
(super user), thì hi n th d u s hi u (#)
 Hi n th d u s ()
d Hi n th ngày hi n t i
h Hi n th tên máy (hostname)
n Ký hi u xu ng dòng
s Hi n th tên h shell
t Hi n th gi hi n t i
u Hi n th tên ngư i dùng
W Hi n th tên th c s c a thư m c hi n th i (ví d thư
m c hi n th i là /mnt/hda1 thì tên th c s c a nó là
/hda1)
w Hi n th tên y c a thư m c hi n th i (ví d
/mnt/hda1)
Ví d , hi n th i d u nh c shell có d ng:
root[may1 /hda1]#
Sau khi gõ l nh
root@may1 /hda1]# PS1='[h@u w : d]$'
thì d u nh c shell ư c thay i là:
[may1@root /mnt/hda1 : Fri Oct 27 ]#
ngoài vi c i th t gi a tên ngư i dùng và máy còn cho chúng ta bi t thêm v ngày h
th ng qu n lý và tên y c a thư m c hi n th i.
Linux cung c p cách th c hoàn toàn tương t như i v i bi n PS1 thay i giá tr bi n
h th ng PS2 tương ng v i d u nh c c p hai.
2.7. L nh g i ngôn ng tính toán s h c
Linux cung c p m t ngôn ng tính toán v i chính xác tùy ý thông qua l nh bc. Khi
yêu c u l nh này, ngư i dùng ư c cung c p m t ngôn ng tính toán (và cho phép l p trình
tính toán có d ng ngôn ng l p trình C) ho t ng theo thông d ch. Trong ngôn ng l p
trình ư c cung c p (t m th i g i là ngôn ng bc), t n t i r t nhi u công c h tr tính toán
và l p trình tính toán: ki u phép toán s h c phong phú, phép toán so sánh, m t s hàm
chu n, bi n chu n, c u trúc i u khi n, cách th c nh nghĩa hàm, cách th c thay i
chính xác, t l i chú thích ... Ch c n s d ng m t ph n nh tác ng c a l nh bc, chúng
ta ã có m t "máy tính s b m tay" hi u qu .
Cú pháp l nh bc:
bc [tùy-ch n] [file...]
v i các tuỳ ch n sau ây:
-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 (POSIX là m t chu n
trong Linux) thì m t c nh báo xu t hi n.
3
7
-s, --standard : th c hi n phép tính chính xác theo chu n c a ngôn ng POSIX bc.
-q, --quiet : không hi n ra l i gi i thi u v ph n m m GNU khi dùng bc.
Tham s file là tên file ch a chương trình vi t trên ngôn ng bc, khi l nh bc th c hi n
s t ng ch y các file chương trình này (N u có nhi u tham s thì có nghĩa s ch y nhi u
chương trình liên ti p nhau).
Dư i ây là m t ví d s d ng l nh bc d ng ơn gi n nh t.
Khi gõ l nh t i d u nh c:
# bc -l
màn hình xu t hi n l i gi i thi u v GNU khi dùng bc và ngôn ng bc ư c kích ho t
ph c v ngư i dùng.
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
a%b
.00000000000000000040
ây * là phép nhân, ^ là phép tính lu th a, / là phép chia l y thương, % là chia l y ph n
dư.
Lưu ý:
Ngôn ng l p trình tính toán bc là m t ngôn ng r t m nh có n i dung h t
s c phong phú cho nên trong khuôn kh c a tài li u này không th mô t h t các n i
dung c a ngôn ng ó ư c. Chúng ta c n s d ng l nh man bc nh n ư c
thông tin y v l nh bc và ngôn ng tính toán bc.
ây trình bày sơ b m t s y u t cơ b n nh t c a ngôn ng ó (bt là vi t
t t c a bi u th c, b là vi t t t c a bi n):
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
3
8
b c ^; gán =; gán sau khi thao tác <thao tác>=; các phép toán so sánh <, <=, >,
>=, b ng ==, khác != ...
Phép so sánh cho 1 n u úng, cho 0 n u sai.
B n bi n chu n là scale s lư ng ch s ph n th p phân; last giá tr tính toán
cu i cùng; ibase cơ s h m i v i input và obase là cơ s h m v i output
(ng m nh hai bi n này có giá tr 10).
Các hàm chu n sin s (bt); cosin c (bt); arctg a (bt); lôgarit t nhiên l (bt); mũ cơ
s t nhiên e (bt); hàm Bessel b c nguyên n c a bt là j (n, bt).
3
9
CHƯƠNG 3. H TH NG FILE
3.1 T ng quan v h th ng file
3.1.1. M t s khái ni m
Ngư i dùng ã t ng làm vi c v i h i u hành DOS/Windows thì r t quen bi t v i các
khái ni m: file (t p tin), thư m c, thư m c hi n th i ... m b o tính h th ng và thu n
ti n cho ngư i dùng chưa t ng làm vi c thành th o v i m t h i u hành nào khác, chương
này v n gi i thi u v các khái ni m này m t cách sơ b .
M t i tư ng i n hình trong các h i u hành ó là file. File là m t t p h p d li u có
t ch c ư c h i u hành qu n lý theo yêu c u c a ngư i dùng. Cách t ch c d li u trong
file thu c v ch c a nó là ngư i ã t o ra file. File có th là m t văn b n (trư ng h p c
bi t là chương trình ngu n trên C, PASCAL, shell script ...), m t chương trình ngôn ng
máy, m t t p h p d li u ... H i u hành t ch c vi c lưu tr n i dung file trên các thi t b
nh lâu dài (ch ng h n ĩa t ) và m b o các thao tác lên file. Chính vì có h i u hành
m b o các ch c năng liên quan n file nên ngư i dùng không c n bi t file c a mình lưu
vùng nào trên ĩa t , b ng cách nào c/ghi lên các vùng c a ĩa t mà v n th c hi n
ư c yêu c u tìm ki m, x lý lên các file.
H i u hành qu n lý file theo tên g i c a file (tên file) và m t s thu c tính liên quan
n file. Trư c khi gi i thi u m t s n i dung liên quan n tên file và tên thư m c, chúng
ta gi i thi u sơ b v khái ni m thư m c.
làm vi c ư c v i các file, h i u hành không ch qu n lý n i dung file mà còn
ph i qu n lý các thông tin liên quan n các file. Thư m c (directory) là i tư ng ư c
dùng ch a thông tin v các file, hay nói theo m t cách khác, thư m c ch a các file. Các
thư m c cũng ư c h i u hành qu n lý trên v t d n ngoài và vì v y, theo nghĩa này, thư
m c cũng ư c coi là file song trong m t s trư ng h p phân bi t v i "file" thư m c,
chúng ta dùng thu t ng file thông thư ng. Khác v i file thông thư ng, h i u hành l i
quan tâm n n i dung c a thư m c.
M t s n i dung sau ây liên quan n tên file (bao g m c tên thư m c):
Tên file trong Linux có th dài t i 256 ký t , bao g m các ch cái, ch s , d u
g ch n i, g ch chân, d u ch m. Tên thư m c/file trong Linux có th có nhi u hơn m t
d u ch m, ví d : This_is.a.VERY_long.filename. N u trong tên file có d u ch m
"." thì xâu con c a tên file t d u ch m cu i cùng ư c g i là ph n m r ng c a tên
file (ho c file). Ví d , tên file trên ây có ph n m r ng là .filename. Chú ý r ng khái
ni m ph n m r ng ây không mang ý nghĩa như m t s h i u hành khác (ch ng
h n như MS-DOS).
Lưu ý:
Chúng ta nên lưu ý r ng, không ph i ký t nào cũng có nghĩa. N u có hai
file ch khác nhau ký t cu i cùng, thì i v i Linux, ó là hai file có th trùng tên.
B i l , Linux ch l y 32 hay 64 ký t u tiên trong tên file mà thôi (tùy theo phiên
b n Linux), ph n tên file còn l i dành cho ch c a file, Linux theo dõi thông tin,
nhưng thư ng không xem các ký t ng sau ký t th 33 hay 65 là quan tr ng i
v i nó.
Xin nh c l i lưu ý v phân bi t ch hoa và ch thư ng i v i tên thư m c/file,
ví d hai file FILENAME.tar.gz và filename.tar.gz là hai file khác nhau.
4
0
N u trong tên thư m c/file có ch a kho ng tr ng, s ph i t tên thư m c/file
vào trong c p d u nháy kép s d ng thư m c/file ó. Ví d , t o thư m c có tên là
“My document” ch ng h n, hãy ánh dòng l nh sau:
# mkdir "My document"
M t s ký t sau không ư c s d ng trong tên thư m c/file: !, *, $, &, # ...
Khi s d ng chương trình mc (Midnight Commander), vi c hi n th tên file s
b sung m t kí t theo nghĩa: d u "*" cho file kh thi trong Linux, d u "~" cho file sao
lưu, d u "." cho file n, d u "@" cho file liên k t...
T p h p t t c các file có trong h i u hành ư c g i là h th ng file là m t h th ng
th ng nh t. B i chính t cách th c s d ng thư m c, h th ng file ư c t ch c lôgic theo
d ng hình cây: H th ng file ư c xu t phát t m t thư m c g c ( ư c kí hi u là "/") và
cho phép t o ra thư m c con trong m t thư m c b t kỳ. Thông thư ng, khi kh i t o Linux
ã có ngay h th ng file c a nó. Hình 3.1. cho minh h a m t ph n trong cây lôgic c a h
th ng file.
ch m t file hay m t thư m c, chúng ta c n ưa ra m t ư ng d n, ví d ư ng
d n xác nh file Xclients trong hình 3.1. chúng ta vi t như sau:
/etc/X11/xinit/Xclients
ư ng d n này cho bi t Xclients n m trong xinit, xinit n m trong X11, X11
n m trong etc và etc n m trong g c /.
/
root bin etc usr home dev
peng office52 sh date who X11 src bin user1 user2 tty00 tty01
xinit
Xclients Xmodmap
Hình 3.1. M t ph n c u trúc lôgic d ng cây c a h th ng File
4
1
Tên file thư ng là tham s th c s khi gõ l nh và công vi c gõ l nh tr nên r t n ng n
i v i ngư i dùng n u như trong l nh ph i gõ m t ư ng d n dài theo d ng trên ( ư c
bi t v i tên g i là ư ng d n tuy t i). Vì v y, Linux (cũng như nhi u h i u hành khác)
s d ng khái ni m thư m c hi n th i c a m i ngư i dùng làm vi c trong h th ng. Thư
m c hi n th i là m t thư m c trong h th ng file mà hi n th i "ngư i dùng ang ó".
Qua thư m c hi n th i, Linux cho phép ngư i dùng ch m t file trong l nh ng n g n
hơn nhi u. Ví d , n u thư m c hi n th i là thư m c xinit thì ch file ã nói, ngư i dùng
ch c n vi t Xclients ho c ./Xclients trong ó kí hi u "." ch thư m c hi n th i.
ư ng d n ư c xác nh qua thư m c hi n th i ư c g i là ư ng d n tương i.
Khi m t ngư i dùng ăng nh p vào h th ng, Linux luôn chuy n ngư i dùng vào thư
m c riêng, và t i th i i m ó thư m c riêng là thư m c hi n th i c a ngư i dùng. Thư
m c riêng c a siêu ngư i dùng là /root, thư m c riêng c a ngư i dùng có tên là user1 là
/home/user1 ... Linux cho phép dùng l nh cd chuy n sang thư m c khác (l y thư
m c khác làm thư m c hi n th i). Hai d u ch m ".." ư c dùng ch thư m c ngay trên
thư m c hi n th i (cha c a thư m c hi n th i).
Linux còn cho phép ghép m t h th ng file trên m t thi t b nh ( ĩa m m, vùng ĩa
c ng chưa ư c ưa vào h th ng file) thành m t thư m c con trong h th ng file c a h
th ng b ng l nh mount. Các h th ng file ư c ghép thu c vào các ki u khác nhau.
Hai m c ti p theo (3.1.2 và 3.1.3.) gi i thi u nh ng n i dung sâu hơn v h th ng file
Linux.
3.1.2. Sơ b ki n trúc n i t i c a h th ng file
Trên ĩa t , h th ng file ư c coi là dãy tu n t các kh i lôgic m i kh i ch a ho c
512B ho c 1024B ho c b i c a 512B là c nh trong m t h th ng file. Trong h th ng
file, các kh i d li u ư c a ch hóa b ng cách ánh ch s liên ti p, m i a ch ư c
ch a trong 4 byte (32 bit).
C u trúc n i t i c a h th ng file bao g m 4 thành ph n k ti p nhau: Boot block (dùng
kh i ng h th ng), Siêu kh i (Super block), Danh sách inode và Vùng d li u.
Dư i ây, chúng ta xem xét sơ lư c n i dung các thành ph n c u trúc n i t i m t h
th ng file.
Siêu kh i
Siêu kh i ch a nhi u thông tin liên quan n tr ng thái c a h th ng file. Trong siêu
kh i có các trư ng sau ây:
Kích thư c c a danh sách inode (khái ni m inode s ư c gi i thích trong
m c sau): nh kích c vùng không gian trên H th ng file qu n lý các inode.
Kích thư c c a h th ng file.
Hai kích thư c trên ây tính theo ơn v dung lư ng b nh ngoài,
M t danh sách ch s các kh i r i (thư ng tr c trên siêu kh i) trong h
th ng file.
4
2
Ch s các kh i r i thư ng tr c trên siêu kh i ư c dùng áp ng nhu c u phân ph i
m i. Chú ý r ng, danh sách ch s các kh i r i có trên siêu kh i ch là m t b ph n c a t p
t t c các kh i r i có trên h th ng file.
Ch s c a kh i r i ti p theo trong danh sách các kh i r i.
Ch s kh i r i ti p theo dùng h tr vi c tìm ki m ti p các kh i r i: b t u tìm t
kh i có ch s này tr i. i u ó có nghĩa là m i kh i có ch s không l n hơn ch s này
ho c có trong danh sách các kh i r i thư ng tr c ho c ã ư c c p phát cho m t file nào
ó.
Nhi u thao tác t o file m i, xoá file, thay i n i dung file v.v. c p nh t các thông tin này.
M t danh sách các inode r i (thư ng tr c trên siêu kh i) trong h th ng file.
Danh sách này ch a ch s các inode r i ư c dùng phân ph i ngay ư c cho m t
file m i ư c kh i t o. Thông thư ng, danh sách này ch ch a m t b ph n các inode r i
trên h th ng file.
Ch s inode r i ti p theo trong danh sách các inode r i.
Ch s inode r i ti p theo nh v vi c tìm ki m ti p thêm inode r i: b t u tìm t
inode có ch s này tr i. i u ó có nghĩa là m i inode có ch s không l n hơn ch s
này ho c có trong danh sách các inode r i thư ng tr c ho c ã ư c tương ng v i m t file
nào ó.
Hai tham s trên ây t o thành c p xác nh ư c danh sách các inode r i trên h th ng
file các thao tác t o file m i, xoá file c p nh t thông tin này.
Các trư ng khóa (lock) danh sách các kh i r i và danh sách inode r i: Trong
m t s trư ng h p, ch ng h n khi h th ng ang làm vi c th c s v i ĩa t c p
nh t các danh sách này, h th ng không cho phép c p nh t t i hai danh sách nói
trên.
C ch d n v vi c siêu kh i ã ư c bi n i: nh kỳ th i gian siêu kh i
b nh trong ư c c p nh t l i vào siêu kh i ĩa t và vì v y c n có thông tin v
vi c siêu kh i b nh trong khác v i n i dung b nh ngoài: n u hai b n không
gi ng nhau thì c n ph i bi n i chúng ư c ng nh t.
C ch d n r ng h th ng file ch có th c (c m ghi): Trong m t s trư ng
h p, h th ng ang c p nh t thông tin t b nh ngoài thì ch cho phép c i v i
h th ng file,
S lư ng t ng c ng các kh i r i trong h th ng file,
S lư ng t ng c ng các inode r i trong h th ng file,
Thông tin v thi t b ,
Kích thư c kh i ( ơn v phân ph i d li u) c a h th ng file. Hi n t i kích
thư c ph bi n c a kh i là 1KB.
Trong th i gian máy ho t ng, theo t ng giai o n, nhân s ưa siêu kh i lên ĩa n u
nó ã ư c bi n i phù h p v i d li u trên h th ng file.
M t trong khái ni m c t lõi xu t hi n trong h th ng file ó là inode. Các i tư ng liên
quan n khái ni m này s ư c trình bày trong các m c ti p theo.
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2
Giao trinh he dieu hanh linux va unix 2

More Related Content

What's hot

Giáo trình đào tạo visual basic 6.0 fpt software solution[bookbooming.com]
Giáo trình đào tạo visual basic 6.0   fpt software solution[bookbooming.com]Giáo trình đào tạo visual basic 6.0   fpt software solution[bookbooming.com]
Giáo trình đào tạo visual basic 6.0 fpt software solution[bookbooming.com]bookbooming1
 
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]bookbooming1
 
Excel 2010-training-book
Excel 2010-training-bookExcel 2010-training-book
Excel 2010-training-bookHien Nguyen
 
Nhập môn công nghệ thông tin
Nhập môn công nghệ thông tinNhập môn công nghệ thông tin
Nhập môn công nghệ thông tinThanh Lee
 
Giao trinh thdc
Giao trinh thdcGiao trinh thdc
Giao trinh thdcPhi Phi
 
800 mẹo vặt trong cuộc sống
800 mẹo vặt trong cuộc sống800 mẹo vặt trong cuộc sống
800 mẹo vặt trong cuộc sốngnguoitinhmenyeu
 
Giao trinh ly_thuyet_do_hoa
Giao trinh ly_thuyet_do_hoaGiao trinh ly_thuyet_do_hoa
Giao trinh ly_thuyet_do_hoaHoàng Đức
 
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...Dịch vụ viết thuê Khóa Luận - ZALO 0932091562
 
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vn
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vnLập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vn
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vntailieumienphi
 
Thiet+lap+quan+tri+thu+dien+tu MDEAMON
Thiet+lap+quan+tri+thu+dien+tu MDEAMONThiet+lap+quan+tri+thu+dien+tu MDEAMON
Thiet+lap+quan+tri+thu+dien+tu MDEAMONlaonap166
 
huong_dan_su_dung_sach_dien_tu_classbook
huong_dan_su_dung_sach_dien_tu_classbookhuong_dan_su_dung_sach_dien_tu_classbook
huong_dan_su_dung_sach_dien_tu_classbookTrần Minh Đức
 
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự Nhiên
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự NhiênLập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự Nhiên
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự NhiênMasterCode.vn
 
Bai giang asp.net full
Bai giang asp.net fullBai giang asp.net full
Bai giang asp.net fullLy hai
 
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...nataliej4
 

What's hot (14)

Giáo trình đào tạo visual basic 6.0 fpt software solution[bookbooming.com]
Giáo trình đào tạo visual basic 6.0   fpt software solution[bookbooming.com]Giáo trình đào tạo visual basic 6.0   fpt software solution[bookbooming.com]
Giáo trình đào tạo visual basic 6.0 fpt software solution[bookbooming.com]
 
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
 
Excel 2010-training-book
Excel 2010-training-bookExcel 2010-training-book
Excel 2010-training-book
 
Nhập môn công nghệ thông tin
Nhập môn công nghệ thông tinNhập môn công nghệ thông tin
Nhập môn công nghệ thông tin
 
Giao trinh thdc
Giao trinh thdcGiao trinh thdc
Giao trinh thdc
 
800 mẹo vặt trong cuộc sống
800 mẹo vặt trong cuộc sống800 mẹo vặt trong cuộc sống
800 mẹo vặt trong cuộc sống
 
Giao trinh ly_thuyet_do_hoa
Giao trinh ly_thuyet_do_hoaGiao trinh ly_thuyet_do_hoa
Giao trinh ly_thuyet_do_hoa
 
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...
Luận án: Đánh giá ảnh hưởng của các yếu tố bất định đối với sự làm việc an to...
 
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vn
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vnLập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vn
Lập trình ứng dụng web asp.net với C# - tailieumienphi.edu.vn
 
Thiet+lap+quan+tri+thu+dien+tu MDEAMON
Thiet+lap+quan+tri+thu+dien+tu MDEAMONThiet+lap+quan+tri+thu+dien+tu MDEAMON
Thiet+lap+quan+tri+thu+dien+tu MDEAMON
 
huong_dan_su_dung_sach_dien_tu_classbook
huong_dan_su_dung_sach_dien_tu_classbookhuong_dan_su_dung_sach_dien_tu_classbook
huong_dan_su_dung_sach_dien_tu_classbook
 
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự Nhiên
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự NhiênLập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự Nhiên
Lập trình ứng dụng web asp.net Trung Tâm Tin Học Khoa Học Tự Nhiên
 
Bai giang asp.net full
Bai giang asp.net fullBai giang asp.net full
Bai giang asp.net full
 
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...
KHẢO SÁT CHUẨN BỊ DỰ ÁN XÂY DỰNG BỆNH VIỆN CHỢ RẪY CƠ SỞ 2 TÓM TẮT BÁO CÁ...
 

Viewers also liked

Viewers also liked (17)

Hd thu dong 01
Hd thu dong 01Hd thu dong 01
Hd thu dong 01
 
Giaydenghi hd
Giaydenghi hdGiaydenghi hd
Giaydenghi hd
 
Co ban ve linuxshellscript
Co ban ve linuxshellscriptCo ban ve linuxshellscript
Co ban ve linuxshellscript
 
Hop dong uy quyen
Hop dong uy quyenHop dong uy quyen
Hop dong uy quyen
 
Cac bai thuc hanh linux
Cac bai thuc hanh linuxCac bai thuc hanh linux
Cac bai thuc hanh linux
 
Hop dong-mua-ban-dien
Hop dong-mua-ban-dienHop dong-mua-ban-dien
Hop dong-mua-ban-dien
 
Hop dong-huy-bo-hop-dong-mua-ban
Hop dong-huy-bo-hop-dong-mua-banHop dong-huy-bo-hop-dong-mua-ban
Hop dong-huy-bo-hop-dong-mua-ban
 
Dieu le-mau-hop-tac-xa-thuong-maii
Dieu le-mau-hop-tac-xa-thuong-maiiDieu le-mau-hop-tac-xa-thuong-maii
Dieu le-mau-hop-tac-xa-thuong-maii
 
Hd thu dong 04 tp
Hd thu dong 04 tpHd thu dong 04 tp
Hd thu dong 04 tp
 
Bien dich nhan linux
Bien dich nhan linuxBien dich nhan linux
Bien dich nhan linux
 
Giấy khám sức khỏe
Giấy khám sức khỏeGiấy khám sức khỏe
Giấy khám sức khỏe
 
Hop dong-mua-ban-xe
Hop dong-mua-ban-xeHop dong-mua-ban-xe
Hop dong-mua-ban-xe
 
đơN yêu cầu sửa chữa sai sót
đơN yêu cầu sửa chữa sai sótđơN yêu cầu sửa chữa sai sót
đơN yêu cầu sửa chữa sai sót
 
Mau hop-dong-viec-lam
Mau hop-dong-viec-lamMau hop-dong-viec-lam
Mau hop-dong-viec-lam
 
Step by-step installation of a secure linux web dns- and mail server
Step by-step installation of a secure linux web  dns- and mail serverStep by-step installation of a secure linux web  dns- and mail server
Step by-step installation of a secure linux web dns- and mail server
 
270 mau hop dong
270 mau hop dong270 mau hop dong
270 mau hop dong
 
Tu hoc su dung linux 2
Tu hoc su dung linux 2Tu hoc su dung linux 2
Tu hoc su dung linux 2
 

Similar to Giao trinh he dieu hanh linux va unix 2

Bai-giang_An-ninh-mang-thong-tin.pdf
Bai-giang_An-ninh-mang-thong-tin.pdfBai-giang_An-ninh-mang-thong-tin.pdf
Bai-giang_An-ninh-mang-thong-tin.pdfLVitTn1
 
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]bookbooming1
 
Lap trinh pocket_pc_1711
Lap trinh pocket_pc_1711Lap trinh pocket_pc_1711
Lap trinh pocket_pc_1711hongocvinh
 
50315210 baigiangkythuatphanmem
50315210 baigiangkythuatphanmem50315210 baigiangkythuatphanmem
50315210 baigiangkythuatphanmemNga Khổng
 
Giáo trình an toàn thông tin ths.nguyễn công nhật[bookbooming.com]
Giáo trình an toàn thông tin   ths.nguyễn công nhật[bookbooming.com]Giáo trình an toàn thông tin   ths.nguyễn công nhật[bookbooming.com]
Giáo trình an toàn thông tin ths.nguyễn công nhật[bookbooming.com]bookbooming1
 
Ngon ngu sql
Ngon ngu sqlNgon ngu sql
Ngon ngu sqlIvetong
 
Phan tich-thiet-ke-he-thong-tin
Phan tich-thiet-ke-he-thong-tinPhan tich-thiet-ke-he-thong-tin
Phan tich-thiet-ke-he-thong-tinxxxabcyyy
 
2516102 phan-tich-thiet-ke-he-thong-thong-tin
2516102 phan-tich-thiet-ke-he-thong-thong-tin2516102 phan-tich-thiet-ke-he-thong-thong-tin
2516102 phan-tich-thiet-ke-he-thong-thong-tinTruong Tuyen
 
Baigiangsql 100418222632-phpapp02
Baigiangsql 100418222632-phpapp02Baigiangsql 100418222632-phpapp02
Baigiangsql 100418222632-phpapp02Ta Hormon
 
Giáo trình kế toán máy kế toán doanh nghiệp data4u
Giáo trình kế toán máy kế toán doanh nghiệp data4uGiáo trình kế toán máy kế toán doanh nghiệp data4u
Giáo trình kế toán máy kế toán doanh nghiệp data4uXephang Daihoc
 
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370nataliej4
 
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...Nguyễn Thế Anh Giaxaydung.vn
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàngAn Nguyen
 
Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Cao Toa
 
Nova3 m operatormanual
Nova3 m operatormanualNova3 m operatormanual
Nova3 m operatormanualthaianmedical
 

Similar to Giao trinh he dieu hanh linux va unix 2 (20)

Bai-giang_An-ninh-mang-thong-tin.pdf
Bai-giang_An-ninh-mang-thong-tin.pdfBai-giang_An-ninh-mang-thong-tin.pdf
Bai-giang_An-ninh-mang-thong-tin.pdf
 
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]Giáo trình tin học đại cương   đỗ thị mơ[bookbooming.com]
Giáo trình tin học đại cương đỗ thị mơ[bookbooming.com]
 
Lap trinh pocket_pc_1711
Lap trinh pocket_pc_1711Lap trinh pocket_pc_1711
Lap trinh pocket_pc_1711
 
50315210 baigiangkythuatphanmem
50315210 baigiangkythuatphanmem50315210 baigiangkythuatphanmem
50315210 baigiangkythuatphanmem
 
Giáo trình an toàn thông tin ths.nguyễn công nhật[bookbooming.com]
Giáo trình an toàn thông tin   ths.nguyễn công nhật[bookbooming.com]Giáo trình an toàn thông tin   ths.nguyễn công nhật[bookbooming.com]
Giáo trình an toàn thông tin ths.nguyễn công nhật[bookbooming.com]
 
Ngon ngu sql
Ngon ngu sqlNgon ngu sql
Ngon ngu sql
 
Nghiên Cứu Chống Sạt Lở Bờ Sông Đồng Tháp, Dùng Phương Pháp Phân Tích Trực Ti...
Nghiên Cứu Chống Sạt Lở Bờ Sông Đồng Tháp, Dùng Phương Pháp Phân Tích Trực Ti...Nghiên Cứu Chống Sạt Lở Bờ Sông Đồng Tháp, Dùng Phương Pháp Phân Tích Trực Ti...
Nghiên Cứu Chống Sạt Lở Bờ Sông Đồng Tháp, Dùng Phương Pháp Phân Tích Trực Ti...
 
Phan tich-thiet-ke-he-thong-tin
Phan tich-thiet-ke-he-thong-tinPhan tich-thiet-ke-he-thong-tin
Phan tich-thiet-ke-he-thong-tin
 
2516102 phan-tich-thiet-ke-he-thong-thong-tin
2516102 phan-tich-thiet-ke-he-thong-thong-tin2516102 phan-tich-thiet-ke-he-thong-thong-tin
2516102 phan-tich-thiet-ke-he-thong-thong-tin
 
Pttkhttt
PttkhtttPttkhttt
Pttkhttt
 
Baigiangsql 100418222632-phpapp02
Baigiangsql 100418222632-phpapp02Baigiangsql 100418222632-phpapp02
Baigiangsql 100418222632-phpapp02
 
SQL DdaHKH Huế
SQL DdaHKH HuếSQL DdaHKH Huế
SQL DdaHKH Huế
 
Giáo trình kế toán máy kế toán doanh nghiệp data4u
Giáo trình kế toán máy kế toán doanh nghiệp data4uGiáo trình kế toán máy kế toán doanh nghiệp data4u
Giáo trình kế toán máy kế toán doanh nghiệp data4u
 
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370
Xác định các clophenol trong nước bằng phương pháp sắc ký khí 6734370
 
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...
Giáo trình hướng dẫn sử dụng phần mềm lập hồ sơ chất lượng công trình phần mề...
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàng
 
Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Bai giang he thong nhung 2010
Bai giang he thong nhung 2010
 
Php
PhpPhp
Php
 
Bài giảng excel 2010
Bài giảng excel 2010Bài giảng excel 2010
Bài giảng excel 2010
 
Nova3 m operatormanual
Nova3 m operatormanualNova3 m operatormanual
Nova3 m operatormanual
 

More from Integrated Circuit Design Research & Education Center (ICDREC)

More from Integrated Circuit Design Research & Education Center (ICDREC) (20)

SLIDE-NHÂN-TƯỚNG-Buổi-1-FPT.pptx.pdf
SLIDE-NHÂN-TƯỚNG-Buổi-1-FPT.pptx.pdfSLIDE-NHÂN-TƯỚNG-Buổi-1-FPT.pptx.pdf
SLIDE-NHÂN-TƯỚNG-Buổi-1-FPT.pptx.pdf
 
Xoa mu linux
Xoa mu linuxXoa mu linux
Xoa mu linux
 
Tu hoc su_dung_linux
Tu hoc su_dung_linuxTu hoc su_dung_linux
Tu hoc su_dung_linux
 
Su dung linux shell
Su dung linux shellSu dung linux shell
Su dung linux shell
 
So tay nho lenh linux
So tay nho lenh linuxSo tay nho lenh linux
So tay nho lenh linux
 
Quan tri he dieu hanh linux
Quan tri he dieu hanh linuxQuan tri he dieu hanh linux
Quan tri he dieu hanh linux
 
Programming guide for linux usb device drivers
Programming guide for linux usb device driversProgramming guide for linux usb device drivers
Programming guide for linux usb device drivers
 
Nguyen lyhedieuhanh 14-15_hedieuhanhlinux
Nguyen lyhedieuhanh 14-15_hedieuhanhlinuxNguyen lyhedieuhanh 14-15_hedieuhanhlinux
Nguyen lyhedieuhanh 14-15_hedieuhanhlinux
 
Linux giaotrinh
Linux giaotrinhLinux giaotrinh
Linux giaotrinh
 
Linux security
Linux securityLinux security
Linux security
 
Linux cho nguoi_moi_dung
Linux cho nguoi_moi_dungLinux cho nguoi_moi_dung
Linux cho nguoi_moi_dung
 
Linux tieng viet
Linux tieng vietLinux tieng viet
Linux tieng viet
 
Liên kết động trong linux và windows (phần 2)
Liên kết động trong linux và windows (phần 2)Liên kết động trong linux và windows (phần 2)
Liên kết động trong linux và windows (phần 2)
 
Liên kết động trong linux và windows (phần 1)
Liên kết động trong linux và windows (phần 1)Liên kết động trong linux và windows (phần 1)
Liên kết động trong linux và windows (phần 1)
 
Kien.truc.unix.linux 2
Kien.truc.unix.linux 2Kien.truc.unix.linux 2
Kien.truc.unix.linux 2
 
Kien.truc.unix.linux
Kien.truc.unix.linuxKien.truc.unix.linux
Kien.truc.unix.linux
 
Huong dan cai_redhat_linux_fedora_core_4
Huong dan cai_redhat_linux_fedora_core_4Huong dan cai_redhat_linux_fedora_core_4
Huong dan cai_redhat_linux_fedora_core_4
 
Htc.kien.truc.unix.linux
Htc.kien.truc.unix.linuxHtc.kien.truc.unix.linux
Htc.kien.truc.unix.linux
 
Giao trinh he dieu hanh linux va unix 3
Giao trinh he dieu hanh linux va unix 3Giao trinh he dieu hanh linux va unix 3
Giao trinh he dieu hanh linux va unix 3
 
Giao trinh he dieu hanh linux va unix
Giao trinh he dieu hanh linux va unixGiao trinh he dieu hanh linux va unix
Giao trinh he dieu hanh linux va unix
 

Recently uploaded

ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...Nguyen Thanh Tu Collection
 
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptx
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptxGame-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptx
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptxxaxanhuxaxoi
 
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...Nguyen Thanh Tu Collection
 
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdf
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdfGieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdf
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdfXem Số Mệnh
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...Xem Số Mệnh
 
đồ án thương mại quốc tế- hutech - KDQTK21
đồ án thương mại quốc tế- hutech - KDQTK21đồ án thương mại quốc tế- hutech - KDQTK21
đồ án thương mại quốc tế- hutech - KDQTK21nguyenthao2003bd
 
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...Nguyen Thanh Tu Collection
 
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docxNỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx7E26NguynThThyLinh
 
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...Nguyen Thanh Tu Collection
 
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...Nguyen Thanh Tu Collection
 
vat li 10 Chuyen de bai 4 Xac dinh phuong huong.pptx
vat li 10  Chuyen de bai 4 Xac dinh phuong huong.pptxvat li 10  Chuyen de bai 4 Xac dinh phuong huong.pptx
vat li 10 Chuyen de bai 4 Xac dinh phuong huong.pptxlephuongvu2019
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...Nguyen Thanh Tu Collection
 
.................KHTN 9....................................Viet Nam.......
.................KHTN 9....................................Viet Nam........................KHTN 9....................................Viet Nam.......
.................KHTN 9....................................Viet Nam.......thoa051989
 
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ haoBookoTime
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"syllabus for the book "Tiếng Anh 6 i-Learn Smart World"
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"LaiHoang6
 
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdf
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdfXem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdf
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdfXem Số Mệnh
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
 
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptx
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptxGame-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptx
Game-Plants-vs-Zombies để ôn tập môn kinh tế chính trị.pptx
 
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
GIÁO TRÌNH BỒI DƯỠNG HỌC SINH GIỎI THCS VÀ THI VÀO 10 THPT CHUYÊN MÔN TIẾNG A...
 
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdf
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdfGieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdf
Gieo quẻ kinh dịch, xin xăm,Xin lộc thánh.pdf
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...
Luận giải tử vi của 12 con giáp năm 2024 chi tiết và chính xác -...
 
đồ án thương mại quốc tế- hutech - KDQTK21
đồ án thương mại quốc tế- hutech - KDQTK21đồ án thương mại quốc tế- hutech - KDQTK21
đồ án thương mại quốc tế- hutech - KDQTK21
 
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
ĐỀ CƯƠNG + TEST ÔN TẬP CUỐI KÌ 2 TIẾNG ANH 11 - GLOBAL SUCCESS (THEO CHUẨN MI...
 
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docxNỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
NỘI DUNG HỌC THI ôn thi môn LỊCH SỬ ĐẢNG.docx
 
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
BỘ ĐỀ CHÍNH THỨC + TÁCH ĐỀ + ĐỀ LUYỆN THI VÀO LỚP 10 CHUYÊN TOÁN CÁC TỈNH NĂM...
 
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
50 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...
TỔNG HỢP 30 ĐỀ THI CHỌN HSG CÁC TRƯỜNG THPT CHUYÊN VÙNG DUYÊN HẢI & ĐỒNG BẰNG...
 
vat li 10 Chuyen de bai 4 Xac dinh phuong huong.pptx
vat li 10  Chuyen de bai 4 Xac dinh phuong huong.pptxvat li 10  Chuyen de bai 4 Xac dinh phuong huong.pptx
vat li 10 Chuyen de bai 4 Xac dinh phuong huong.pptx
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA CUỐI HỌC KÌ 2 NĂM HỌC 2023-202...
 
.................KHTN 9....................................Viet Nam.......
.................KHTN 9....................................Viet Nam........................KHTN 9....................................Viet Nam.......
.................KHTN 9....................................Viet Nam.......
 
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao
1第一课:你好.pptx. Chinese lesson 1: Hello.Nỉ hao
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"syllabus for the book "Tiếng Anh 6 i-Learn Smart World"
syllabus for the book "Tiếng Anh 6 i-Learn Smart World"
 
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdf
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdfXem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdf
Xem sim phong thủy luận Hung - Cát số điện thoại chính xác nhất.pdf
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
 

Giao trinh he dieu hanh linux va unix 2

  • 1.
  • 2. www.nhipsongcongnghe.net I H C QU C GIA HÀ N I TRƯ NG I H C CÔNG NGH ===================================== HÀ QUANG TH Y NGUY N TRÍ THÀNH Giáo trình: H I U HÀNH UNIX - LINUX Dành cho sinh viên ngành Công ngh thông tin, i n t - Vi n thông, Toán tin ng d ng HÀ N I - 2004
  • 3. 2 M C L C L I GI I THI U ..................................................................................................... 9 CHƯƠNG 1. GI I THI U CHUNG V LINUX...................................................... 10 1.1. Gi i thi u v UNIX và Linux...................................................................................... 10 1.1.1. Xu t x , quá trình ti n hóa và m t s c trưng c a h i u hành UNIX ......... 10 1.1.2. Gi i thi u sơ b v Linux................................................................................... 13 1.2. Sơ b v các thành ph n c a Linux ........................................................................... 17 1.2.1. Sơ b v nhân ..................................................................................................... 18 1.2.2. Sơ b v shell ..................................................................................................... 18 1.3. Gi i thi u v s d ng l nh trong Linux..................................................................... 20 1.3.1. Các quy ư c khi vi t l nh................................................................................... 22 1.3.3. Làm ơn gi n thao tác gõ l nh ........................................................................... 25 1.3.4. Ti p n i dòng l nh.............................................................................................. 29 1.4. Trang Man ................................................................................................................... 29 CHƯƠNG 2. THAO TÁC V I H TH NG........................................................... 32 2.1. Quá trình kh i ng Linux......................................................................................... 32 2.2. Th t c ăng nh p và các l nh thoát kh i h th ng ................................................ 33 2.2.1. ăng nh p........................................................................................................... 33 2.2.2. Ra kh i h th ng................................................................................................. 36 2.2.3. Kh i ng l i h th ng ....................................................................................... 38 2.2.4. Kh i ng vào ch ho ............................................................................. 38 2.3. L nh thay i m t kh u.............................................................................................. 42 2.4. L nh xem, thi t t ngày, gi hi n t i và xem l ch trên h th ng ........................... 45 2.4.1 L nh xem, thi t t ngày, gi .............................................................................. 45 2.4.2. L nh xem l ch .................................................................................................... 47 2.5. Xem thông tin h th ng .............................................................................................. 48 2.6. Thay i n i dung d u nh c shell .............................................................................. 49 2.7. L nh g i ngôn ng tính toán s h c .......................................................................... 50 CHƯƠNG 3. H TH NG FILE ............................................................................. 53 3.1 T ng quan v h th ng file........................................................................................... 53 3.1.1. M t s khái ni m................................................................................................ 53 3.1.2. Sơ b ki n trúc n i t i c a h th ng file............................................................. 57 3.1.3. M t s thu t toán làm vi c v i inode ................................................................. 63 3.1.4. H tr nhi u h th ng File.................................................................................. 66 3.1.5. Liên k t tư ng trưng (l nh ln) ............................................................................ 71
  • 4. 3 3.2 Quy n truy nh p thư m c và file ................................................................................ 72 3.2.1 Quy n truy nh p .................................................................................................. 72 3.2.2. Các l nh cơ b n .................................................................................................. 75 3.3 Thao tác v i thư m c.................................................................................................... 80 3.3.1 M t s thư m c c bi t ...................................................................................... 80 3.3.2 Các l nh cơ b n v thư m c ................................................................................ 83 3.4. Các l nh làm vi c v i file ............................................................................................ 87 3.4.1 Các ki u file có trong Linux................................................................................ 87 3.4.2. Các l nh t o file.................................................................................................. 88 3.4.3 Các l nh thao tác trên file.................................................................................... 90 3.4.4 Các l nh thao tác theo n i dung file .................................................................... 98 3.4.5 Các l nh tìm file ................................................................................................ 106 3.5 Nén và sao lưu các file................................................................................................ 115 3.5.1 Sao lưu các file (l nh tar) .................................................................................. 115 3.5.2 Nén d li u ....................................................................................................... 118 CHƯƠNG 4. QU N TR QUÁ TRÌNH................................................................. 122 4.1 Quá trình trong UNIX................................................................................................ 122 4.1.1. Sơ b v quá trình............................................................................................. 122 4.1.2. Sơ b c u trúc i u khi n c a UNIX................................................................ 123 4.1.3. Các h th ng con trong nhân............................................................................ 125 4.1.4. Sơ b v i u khi n quá trình........................................................................... 129 4.1.5. Tr ng thái và chuy n d ch tr ng thái ................................................................ 130 4.1.6. S ngưng ho t ng và ho t ng tr l i c a quá trình.................................... 132 4.1.7. Sơ b v l nh i v i quá trình ........................................................................ 132 4.2. Các l nh cơ b n.......................................................................................................... 133 4.2.1. L nh fg và l nh bg............................................................................................ 133 4.2.2. Hi n th các quá trình ang ch y v i l nh ps ................................................... 135 4.2.3. H y quá trình v i l nh kill ............................................................................... 137 4.2.4. Cho máy ng ng ho t ng m t th i gian v i l nh sleep.................................. 139 4.2.5. Xem cây quá trình v i l nh pstree.................................................................... 139 4.2.6. L nh thi t t l i ưu tiên c a quá trình nice và l nh renice......................... 141 CHƯƠNG 5. QU N LÝ TÀI KHO N NGƯ I DÙNG......................................... 142 5.1 Tài kho n ngư i dùng................................................................................................ 142 5.2 Các l nh cơ b n qu n lý ngư i dùng ........................................................................ 142 5.2.1 File /etc/passwd ................................................................................................ 143 5.2.2 Thêm ngư i dùng v i l nh useradd................................................................... 143 5.2.3 Thay i thu c tính ngư i dùng ........................................................................ 146 5.2.4 Xóa b m t ngư i dùng (l nh userdel).............................................................. 147
  • 5. 4 5.3 Các l nh cơ b n liên quan n nhóm ngư i dùng ................................................... 148 5.3.1 Nhóm ngư i dùng và file /etc/group ................................................................. 148 5.3.2 Thêm nhóm ngư i dùng .................................................................................... 149 5.3.3 S a i các thu c tính c a m t nhóm ngư i dùng (l nh groupmod) ................ 149 5.3.4 Xóa m t nhóm ngư i dùng (l nh groupdel)...................................................... 150 5.4 Các l nh cơ b n khác có liên quan n ngư i dùng................................................ 150 5.4.1 ăng nh p v i tư cách m t ngư i dùng khác khi dùng l nh su ....................... 150 5.4.2 Xác nh ngư i dùng ang ăng nh p (l nh who) ............................................ 151 5.4.3 Xác nh các quá trình ang ư c ti n hành (l nh w)....................................... 153 CHƯƠNG 6. TRUY N THÔNG VÀ M NG UNIX-LINUX................................... 154 6.1. L nh truy n thông ..................................................................................................... 154 6.1.1. L nh write......................................................................................................... 154 6.1.2. L nh mail.......................................................................................................... 155 6.1.3. L nh talk........................................................................................................... 156 6.2 C u hình Card giao ti p m ng .................................................................................. 156 6.3. Các d ch v m ng ...................................................................................................... 159 6.3.1 H thông tin m ng NIS...................................................................................... 159 6.4 H th ng file trên m ng ............................................................................................. 164 6.4.1 Cài t NFS ....................................................................................................... 165 6.4.2 Kh i ng và d ng NFS.................................................................................... 166 6.4.3 C u hình NFS server và Client.......................................................................... 167 6.4.4 S d ng mount................................................................................................... 167 6.4.5 Unmount............................................................................................................ 168 6.4.6 Mount t ng qua t p c u hình........................................................................ 168 CHƯƠNG 7. L P TRÌNH SHELL VÀ L P TRÌNH C TRÊN LINUX ................... 170 7.1. Cách th c pipes và các y u t cơ b n l p trình trên shell ..................................... 170 7.1.1. Cách th c pipes ................................................................................................ 170 7.1.2. Các y u t cơ b n l p trình trong shell ........................................................ 171 7.2. M t s l nh l p trình trên shell ................................................................................ 175 7.2.1. S d ng các toán t bash.................................................................................. 175 7.2.2. i u khi n lu ng .............................................................................................. 179 7.2.3 Các toán t nh hư ng vào ra........................................................................... 193 7.2.4. Hi n dòng văn b n............................................................................................ 194 7.2.5. L nh read c d li u cho bi n ngư i dùng..................................................... 194 7.2.6. L nh set ............................................................................................................ 195 7.2.7. Tính toán trên các bi n ..................................................................................... 196 7.2.8. Chương trình ví d ............................................................................................ 196
  • 6. 5 7.3. L p trình C trên UNIX ............................................................................................. 197 7.3.1. Trình biên d ch gcc........................................................................................... 197 7.3.2. Công c GNU make ......................................................................................... 201 7.3.3. Làm vi c v i file............................................................................................... 203 7.3.4. Thư vi n liên k t............................................................................................... 211 7.3.5 Các công c cho thư vi n ................................................................................. 220 TÀI LI U THAM KH O ...................................................................................... 223 CHÚ THÍCH M T S THU T NG ................................................................... 224 PH L C A. QUÁ TRÌNH CÀI T REDHAT-LINUX ........................................ 227 AA. Cài t phiên b n RedHat 6.2 ................................................................................. 228 AA.1. T o ĩa m m kh i ng................................................................................... 228 AA.2. Phân vùng l i ĩa DOS/Windows hi n th i.................................................. 228 AA.3. Các bư c cài t (b n RedHat 6.2 và kh i ng t CD-ROM)....................... 229 AA.4. Các h n ch v ph n c ng i v i Linux ........................................................ 239 PH L C B. TRÌNH SO N TH O VIM .............................................................. 242 B.1 Kh i ng vim............................................................................................................ 244 B.1.1 M chương trình so n th o vim........................................................................ 244 B.1.2. Tính năng m nhi u c a s .............................................................................. 245 B.1.3. Ghi và thoát trong vim..................................................................................... 246 B.2. Di chuy n tr so n th o trong Vim ......................................................................... 247 B.2.1. Di chuy n trong văn b n.................................................................................. 247 B.2.2. Di chuy n theo các i tư ng văn b n............................................................. 248 B.2.3. Cu n màn hình................................................................................................. 248 B.3. Các thao tác trong văn b n ...................................................................................... 249 B.3.1. Các l nh chèn văn b n trong vim..................................................................... 249 B.3.2. Các l nh xoá văn b n trong vim ...................................................................... 250 B.3.3. Các l nh khôi ph c văn b n trong vim ............................................................ 250 6.3.4. Các l nh thay th văn b n trong vim................................................................ 250 B.3.5. Sao chép và di chuy n văn b n trong vim ....................................................... 252 B.3.6. Tìm ki m và thay th văn b n trong vim......................................................... 253 B.3.7. ánh d u trong vim ......................................................................................... 254 B.3.8. Các phím s d ng trong ch chèn............................................................... 255 B.3.9. M t s l nh trong ch o............................................................................. 256 B.3.10. Các l nh l p ................................................................................................... 256 B.4. Các l nh khác ............................................................................................................ 257 B.4.1. Cách th c hi n các l nh bên trong Vim........................................................... 257 B.4.2. Các l nh liên quan n file............................................................................... 257
  • 7. 6 PH L C C. MIDNIGHT COMMANDER ............................................................ 259 C.1. Gi i thi u v Midnight Commander (MC) ............................................................ 259 C.2. Kh i ng MC .......................................................................................................... 259 C.3. Giao di n c a MC..................................................................................................... 259 C.4. Dùng chu t trong MC .............................................................................................. 260 C.5. Các thao tác bàn phím.............................................................................................. 261 C.6. Th c ơn thanh ngang (menu bar)......................................................................... 263 C.7. Các phím ch c năng................................................................................................. 266 C.8. B so n th o c a Midnight Commander................................................................ 267 PH L C D. SAMBA.......................................................................................... 270 D.1 Cài t Samba............................................................................................................ 270 D.2 Các thành ph n c a Samba ...................................................................................... 271 D.3 File c u hình Samba .................................................................................................. 272 D.4 Các ph n c bi t c a file c u hình Samba............................................................. 275 D.5 Qu n lý ngư i dùng trong Samba............................................................................ 282 D.6 Cách s d ng Samba t các máy tr m.................................................................... 284 D.6.1 Cách s d ng t các máy tr m là Linux........................................................... 284 D.6.2 Cách s d ng t các máy tr m là Windows ..................................................... 287
  • 8. 7 L I GI I THI U Trong hơn mư i năm tr l i ây h i u hành Linux ã
  • 9. 8 CHƯƠNG 1. GI I THI U CHUNG V LINUX 1.1. Gi i thi u v UNIX và Linux 1.1.1. Xu t x , quá trình ti n hóa và m t s c trưng c a h i u hành UNIX Năm 1965, Vi n công ngh Massachusetts (MIT: Massachusetts Institute of Technology) và Phòng thí nghi m Bell c a hãng AT&T th c hi n d án xây d ng m t h i u hành có tên g i là Multics (MULTiplexed Information and Computing Service) v i m c tiêu: t o l p ư c m t h i u hành ph trên vùng lãnh th r ng (ho t ng trên t p các máy tính ư c k t n i), a ngư i dùng, có năng l c cao v tính toán và lưu tr . D án nói trên thành công m c h t s c khiêm t n và ngư i ta ã bi t n m t s khi m khuy t khó kh c ph c c a Multics. Năm1969, Ken Thompson, m t chuyên viên t i phòng thí nghi m Bell, ngư i ã tham gia d án Multics, cùng Dennics Richie vi t l i h i u hành a-bài toán trên máy PDP-7 v i tên là UNICS (UNiplexed Information and Computing Service) t m t câu g i ùa c a m t ng nghi p. Trong h i u hành UNICS, m t s kh i th o u tiên v H th ng file ã ư c Ken Thompson và Dennis Ritchie th c hi n. n năm 1970 h i u hành ư c vi t trên assembler cho máy PDP-11/20 và mang tên là UNIX. Năm 1973, Riche và Thompson vi t l i nhân c a h i u hành UNIX trên ngôn ng C, và h i u hành ã tr nên d dàng cài t t i các lo i máy tính khác nhau; tính ch t như th ư c g i là tính kh chuy n (portable) c a UNIX. Trư c ó, kho ng năm 1971, h i u hành ư c th hi n trên ngôn ng B (mà d a trên ngôn ng B, Ritche ã phát tri n thành ngôn ng C). Hãng AT&T ph bi n chương trình ngu n UNIX t i các trư ng i h c, các công ty thương m i và chính ph v i giá không áng k . Năm 1982, h th ng UNIX-3 là b n UNIX thương m i u tiên c a AT&T. Năm 1983, AT&T gi i thi u H th ng UNIX-4 phiên b n th nh t trong ó ã có trình so n th o vi, thư vi n qu n lý màn hình ư c phát tri n t i h c T ng h p California, Berkley. Giai o n 1985-1987, UNIX-5 phiên b n 2 và 3 tương ng ư c ưa ra vào các năm 1985 và 1987. Trong giai o n này, có kho ng 100000 b n UNIX ã ư c ph bi n trên th gi i, cài t t máy vi tính n các h th ng l n. u th p k 1990. UNIX-5 phiên b n 4 ư c ưa ra như là m t chu n c a UNIX. ây là s k t h p c a các b n sau: AT&T UNIX-5 phiên b n 3, Berkley Software Distribution (BSD), XENIX c a MicroSoft SUN OS Có th tìm th y các n i dung liên quan t i m t s phiên b n m i c a UNIX t i a ch website http://problem.rice.edu/. Các nhóm nhà cung c p khác nhau v UNIX ang ho t ng trong th i gian hi n nay ư c k n như sau: Unix International (vi t t t là UI). UI là m t t ch c g m các nhà cung c p th c hi n vi c chuy n như ng h th ng UNIX-5 và cung c p b n AT&T theo các
  • 10. 9 nhu c u và thông báo phát hành m i, ch ng h n như i u ch nh b n quy n. Giao di n h a ngư i dùng là Open Look. Open Software Foundation (OSF). OSF ư c h tr b i IBM, DEC, HP ... theo hư ng phát tri n m t phiên b n c a Unix nh m tranh ua v i h th ng UNIX-5 phiên b n 4. Phiên b n này có tên là OSF/1 v i giao di n h a ngư i dùng ư c g i là MOTIF. Free SoftWare Foundation (FSF): m t c ng ng do Richard Stallman kh i xư ng năm 1984 ch trương phát hành các ph n m m s d ng t do, trên cơ s m t h i u hành thu c lo i UNIX. B ng sau ây li t kê m t s cài t UNIX khá ph bi n (thư ng th y có ch X cu i tên g i c a H i u hành): Tên h Nhà cung c p N n phát tri n AIX International Business Machines AT&T System V A/UX Apple Computer AT&T System V Dynix Sequent BSD (Berkeley SoftWare Distribution) HP-UX Hewlett-Packard BSD Irix Silicon Graphics AT&T System V Linux Free SoftWare Foundation NextStep Next BSD OSF/1 Digital Equipment Corporation BSD SCO UNIX Santa Cruz Operation AT&T System V Solaris Sun Microsystems AT&T System V SunOS Sun Microsystems BSD UNIX Ultrix Digital Equipment Corporation BSD UNIX Unicos Cray AT&T System V UnixWare Novell AT&T System V XENIX MicroSoft AT&T System III-MS Dư i ây li t kê m t s c trưng c a h i u hành UNIX: H i u hành ư c vi t trên ngôn ng b c cao; b i v y, r t d c, d hi u, d thay i cài t trên lo i máy m i (tính d mang chuy n, như ã nói), Có giao di n ngư i dùng ơn gi n năng l c cung c p các d ch v mà ngư i dùng mong mu n (so sánh v i các h i u hành có t trư c ó thì giao di n c a UNIX là m t ti n b vư t b c), Th a mãn nguyên t c xây d ng các chương trình ph c t p t nh ng chương trình ơn gi n hơn: trư c h t có các mô un cơ b n nh t c a nhân sau ó phát tri n có toàn b h i u hành, S d ng duy nh t m t h th ng File có c u trúc cho phép d dàng b o qu n và s d ng hi u qu ,
  • 11. 1 0 S d ng ph bi n m t d ng ơn gi n trình bày n i t i c a File như m t dòng các byte cho phép d dàng khi vi t các chương trình ng d ng truy nh p, thao tác v i các d li u trong File, Có k t n i ơn gi n v i thi t b ngo i vi: các file thi t b ã ư c t s n trong H th ng File t o ra m t k t n i ơn gi n gi a chương trình ngư i dùng v i các thi t b ngo i vi, Là h i u hành a ngư i dùng, a quá trình, trong ó m i ngư i dùng có th th c hi n các quá trình c a mình m t cách c l p. M i thao tác vào - ra c a h i u hành ư c th c hi n trên h th ng File: m i thi t b vào ra tương ng v i m t file. Chương trình ngư i dùng làm vi c v i file ó mà không c n quan tâm c th tên file ó ư c t cho thi t b nào trong h th ng. Che khu t c u trúc máy i v i ngư i dùng, m b o tính c l p tương i c a chương trình i v i d li u và ph n c ng, t o i u ki n thu n l i hơn cho ngư i l p trình khi vi t các chương trình ch y UNIX v i các i u ki n ph n c ng hoàn toàn khác bi t nhau. 1.1.2. Gi i thi u sơ b v Linux Linus Tovalds (m t sinh viên Ph n lan) ưa ra nhân (phiên b n u tiên) cho h i u hành Linux vào tháng 8 năm 1991 trên cơ s c i ti n m t phiên b n UNIX có tên Minix do Giáo sư Andrew S. Tanenbaum xây d ng và ph bi n. Nhân Linux tuy nh song là t óng gói. K t h p v i các thành ph n trong h th ng GNU, h i u hành Linux ã ư c hình thành. Và cũng t th i i m ó, theo tư tư ng GNU, hàng nghìn, hàng v n chuyên gia trên toàn th gi i (nh ng ngư i này hình thành nên c ng ng Linux) ã tham gia vào quá trình phát tri n Linux và vì v y Linux ngày càng áp ng nhu c u c a ngư i dùng. Dư i ây là m t s m c th i gian quan tr ng trong quá trình hình thành và phát tri n h i u hành Linux. Sau ba năm nhân Linux ra i, n ngày 14-3-1994, h i u hành Linux phiên b n 1.0 ư c ph bi n. Thành công l n nh t c a Linux 1.0 là nó ã h tr giao th c m ng TCP/IP chu n UNIX, sánh v i giao th c socket BSD- tương thích cho l p trình m ng. Trình i u khi n thi t b ã ư c b sung ch y IP trên m t m ng Ethernet ho c trên tuy n ơn ho c qua modem. H th ng file trong Linux 1.0 ã vư t xa h th ng file c a Minix thông thư ng, ngoài ra ã h tr i u khi n SCSI truy nh p ĩa t c cao. i u khi n b nh o ã ư c m r ng h tr i u khi n trang cho các file swap và ánh x b nh c a file c quy n (ch có m t ánh x b nh ch c ư c thi hành trong Linux 1.0). Vào tháng 3-1995, nhân 1.2 ư c ph bi n. i u áng k c a Linux 1.2 so v i Linux 1.0 ch nó h tr m t ph m vi r ng và phong phú ph n c ng, bao g m c ki n trúc tuy n ph n c ng PCI m i. Nhân Linux 1.2 là nhân k t thúc dòng nhân Linux ch h tr PC. M t i u c n lưu ý v các ánh ch s các dòng nhân (h i u hành) Linux. H th ng ch s ư c chia thành m t s m c, ch ng h n hai m c như 2.4 ho c ba m c như 2.2.5. Trong cách ánh ch s như v y, quy ư c r ng v i các ch s t m c th hai tr i, n u là s ch n thì dòng nhân ó ã khá n nh và tương i hoàn thi n, còn n u là s l thì dòng nhân ó v n ang ư c phát tri n ti p.
  • 12. 1 1 Tháng 6-1996, nhân Linux 2.0 ư c ph bi n. Có hai c trưng n i b t c a Linux 2.0 là h tr ki n trúc ph c h p, bao g m c c ng Alpha 64-bit y , và h tr ki n trúc a b x lý. Phân ph i nhân Linux 2.0 cũng thi hành ư c trên b x lý Motorola 68000 và ki n trúc SPARC c a SUN. Các thi hành c a Linux d a trên vi nhân GNU Mach cũng ch y trên PC và PowerMac. T i năm 2000, nhân Linux 2.4 ư c ph bi n. M t trong c i m ư c quan tâm c a nhân này là nó h tr mã ký t Unicode 32 bít, r t thu n l i cho vi c xây d ng các gi i pháp toàn di n và tri t i v i v n ngôn ng t nhiên trên ph m vi toàn th gi i. V n phân ph i và gi y phép Linux V lý thuy t, m i ngư i có th kh i t o m t h th ng Linux b ng cách ti p nh n b n m i nh t các thành ph n c n thi t t các site ftp và biên d ch chúng. Trong th i kỳ u tiên, ngư i dùng Linux ph i ti n hành toàn b các thao tác này và vì v y công vi c là khá v t v . Tuy nhiên, do có s tham gia ông o c a các cá nhân và nhóm phát tri n Linux, ã ti n hành th c hi n nhi u gi i pháp nh m làm cho công vi c kh i t o h th ng v t v . M t trong nh ng gi i pháp i n hình nh t là cung c p t p các gói chương trình ã ti n d ch, chu n hóa. Nh ng t p h p như v y hay nh ng b n phân ph i là l n hơn nhi u so v i h th ng Linux cơ s . Chúng thư ng bao g m các ti n ích b sung cho kh i t o h th ng, các thư vi n qu n lý, cũng như nhi u gói ã ư c ti n d ch, s n sàng kh i t o c a nhi u b công c UNIX dùng chung, ch ng h n như ph c v tin, trình duy t web, công c x lý, so n th o văn b n và th m chí các trò chơi. Cách th c phân ph i ban u r t ơn gi n song ngày càng ư c nâng c p và hoàn thi n b ng phương ti n qu n lý gói tiên ti n. Các b n phân ph i ngày nay bao g m các cơ s d li u ti n hóa gói, cho phép các gói d dàng ư c kh i t o, nâng c p và lo i b . Nhà phân ph i u tiên th c hi n theo phương châm này là Slakware, và chính h là nh ng chuy n bi n m nh m trong c ng ng Linux i v i công vi c qu n lý gói kh i t o Linux. Ti n ích qu n lý gói RPM (RedHat Package Manager) c a công ty RedHat là m t trong nh ng phương ti n i n hình. Nhân Linux là ph n m m t do ư c phân ph i theo Gi y phép s h u công c ng ph n m m GNU GPL. Các thành ph n tích h p H i u hành Linux Linux s d ng r t nhi u thành ph n t D án ph n m m t do GNU, t h i u hành BSD c a i h c Berkeley và t h th ng X-Window c a MIT. Thư vi n h th ng chính c a Linux ư c b t ngu n t D án GNU, sau ó ư c r t nhi u ngư i trong c ng ng Linux phát tri n ti p, nh ng phát tri n ti p theo như v y ch y u liên quan t i vi c gi i quy t các v n như thi u v ng a ch (l i trang), thi u hi u qu và g r i. M t s thành ph n khác c a D án GNU, ch ng h n như trình biên d ch GNU C (gcc), v n là ch t lư ng cao nên ư c s d ng nguyên xy trong Linux. Các tool qu n lý m ng ư c b t ngu n t mã 4.3BSD song sau ó ã ư c c ng ng Linux phát tri n, ch ng h n như thư vi n toán h c ng x lý d u ch m ng Intel và các trình i u khi n thi t b ph n c ng âm thanh PC. Các tool qu n lý m ng này sau ó l i ư c b sung vào h th ng BSD.
  • 13. 1 2 H th ng Linux ư c duy trì g n như b i m t m ng lư i không ch t ch các nhà phát tri n ph n m m c ng tác v i nhau qua Internet, m ng lư i này g m các nhóm nh và cá nhân ch u trách nhi m duy trì tính toàn v n c a t ng thành ph n. M t lư ng nh các site phân c p ftp Internat công c ng ã óng vai trò nhà kho theo chu n de facto ch a các thành ph n này. Tài li u Chu n phân c p h th ng file (File System Hierarchy Standard) ư c c ng ng Linux duy trì nh m gi tính tương thích xuyên qua s khác bi t r t l n gi a các thành ph n h th ng. M t s c i m chính c a Linux Dư i ây trình bày m t s c i m chính c a c a h i u hành Linux hi n t i: Linux tương thích v i nhi u h i u hành như DOS, MicroSoft Windows ...: Cho phép cài t Linux cùng v i các h i u hành khác trên cùng m t c ng. Linux có th truy nh p n các file c a các h i u hành cùng m t ĩa. Linux cho phép ch y mô ph ng các chương trình thu c các h i u hành khác. Do gi ư c chu n c a UNIX nên s chuy n i gi a Linux và các h UNIX khác là d dàng. Linux là m t h i u hành UNIX tiêu bi u v i các c trưng là a ngư i dùng, a chương trình và a x lý. Linux có giao di n ho (GUI) th a hư ng t h th ng X-Window. Linux h tr nhi u giao th c m ng, b t ngu n và phát tri n t dòng BSD. Thêm vào ó, Linux còn h tr tính toán th i gian th c. Linux khá m nh và ch y r t nhanh ngay c khi nhi u quá trình ho c nhi u c a s . Linux ư c cài t trên nhi u ch ng lo i máy tính khác nhau như PC, Mini và vi c cài t khá thu n l i. Tuy nhiên, hi n nay chưa xu t hi n Linux trên máy tính l n (mainframe). Linux ngày càng ư c h tr b i các ph n m m ng d ng b sung như so n th o, qu n lý m ng, qu n tr cơ s d li u, b ng tính ... Linux h tr t t cho tính toán song song và máy tính c m (PC-cluster) là m t hư ng nghiên c u tri n khai ng d ng nhi u tri n v ng hi n nay. Là m t h i u hành v i mã ngu n m , ư c phát tri n qua c ng ng ngu n m (bao g m c Free Software Foundation) nên Linux phát tri n nhanh. Linux là m t trong m t s ít các h i u hành ư c quan tâm nhi u nh t trên th gi i hi n nay. Linux là m t h i u hành h tr a ngôn ng m t cách toàn di n nh t. Do Linux cho phép h tr các b mã chu n t 16 bit tr lên (trong ó có các b mã ISO10646, Unicode) cho nên vi c b n a hóa trên Linux là tri t nh t trong các h i u hành. Tuy nhiên cũng t n t i m t s khó khăn làm cho Linux chưa th c s tr thành m t h i u hành ph d ng, dư i ây là m t s khó khăn i n hình: Tuy ã có công c h tr cài t, tuy nhiên, vi c cài t Linux còn tương i ph c t p và khó khăn. Kh năng tương thích c a Linux v i m t s lo i thi t b ph n c ng còn th p do chưa có các trình i u khi n cho nhi u thi t b ,
  • 14. 1 3 Ph n m m ng d ng ch y trên n n Linux tuy ã phong phú song so v i m t s h i u hành khác, c bi t là khi so sánh v i MS Windows, thì v n còn có kho ng cách. V i s h tr c a nhi u công ty tin h c hàng u th gi i (IBM, SUN, HP ...) và s tham gia phát tri n c a hàng v n chuyên gia trên toàn th gi i thu c c ng ng Linux, các khó khăn c a Linux ch c ch n s nhanh chóng ư c kh c ph c. Chính vì l ó ã hình thành m t s nhà cung c p Linux trên th gi i. B ng dư i ây là tên c a m t s nhà cung c p Linux có ti ng nh t và a ch website c a h . áng chú ý nh t là Red Hat Linux (t i M ) và Red Flag Linux (t i Trung Qu c). Red Hat ư c coi là lâu i và tin c y, còn Red Flag là m t công ty Linux c a Trung qu c, có quan h v i c ng ng Linux Vi t nam và chúng ta có th h c h i m t cách tr c ti p kinh nghi m cho quá trình ưa Linux vào Vi t nam. Tên công ty a ch website Caldera OpenLinux www.caldera.com Corel Linux www.corel.com Debian GNU/Linux www.debian.com Linux Mandrake www.mandrake.com Red Hat Linux www.redhat.com Red Flag Linux www.redflag-linux.com Slackware Linux www.slackware.com SuSE Linux www.suse.com TurboLinux www.turbolinux.com 1.2. Sơ b v các thành ph n c a Linux H th ng Linux, ư c thi hành như m t h i u hành UNIX truy n th ng, g m shell và ba thành ph n ( ã d ng mã chương trình) sau ây: - Nhân h i u hành ch u trách nhi m duy trì các i tư ng tr u tư ng quan tr ng c a h i u hành, bao g m b nh o và quá trình. Các mô un chương trình trong nhân ư c c quy n trong h th ng, bao g m c quy n thư ng tr c b nh trong. - Thư vi n h th ng xác nh m t t p chu n các hàm các ng d ng tương tác v i nhân, và thi hành nhi u ch c năng c a h th ng nhưng không c n có các c quy n c a mô un thu c nhân. M t h th ng con i n hình ư c thi hành d a trên thư viên h th ng là h th ng file Linux. - Ti n ích h th ng là các chương trình thi hành các nhi m v qu n lý riêng r , chuyên bi t. M t s ti n ích h th ng ư c g i ra ch m t l n kh i ng và c u hình phương ti n h th ng, m t s ti n ích khác, theo thu t ng UNIX ư c g i là trình ch y ng m (daemon), có th ch y m t cách thư ng xuyên (thư ng theo chu kỳ), i u khi n các bài toán như hư ng ng các k t n i m ng m i n, ti p nh n yêu c u logon, ho c c p nh t các file log. Ti n ích (hay l nh) có s n trong h i u hành (dư i ây ti n ích ư c coi là l nh thư ng tr c). N i dung chính y u c a tài li u này gi i thi u chi ti t v m t s l nh thông d ng nh t c a Linux. H th ng file s ư c gi i thi u trong chương 3. Trong các chương sau có c p t i nhi u n i dung liên quan n nhân và shell, song dư i ây là m t s nét sơ b v chúng.
  • 15. 1 4 1.2.1. Sơ b v nhân Nhân (còn ư c g i là h lõi) c a Linux, là m t b các môdun chương trình có vai trò i u khi n các thành ph n c a máy tính, phân ph i các tài nguyên cho ngư i dùng (các quá trình ngư i dùng). Nhân chính là c u n i gi a chương trình ng d ng v i ph n c ng. Ngư i dùng s d ng bàn phím gõ n i dung yêu c u c a mình và yêu c u ó ư c nhân g i t i shell: Shell phân tích l nh và g i các chương trình tương ng v i l nh th c hi n. M t trong nh ng ch c năng quan tr ng nh t c a nhân là gi i quy t bài toán l p l ch, t c là h th ng c n phân chia CPU cho nhi u quá trình hi n th i cùng t n t i. i v i Linux, s lư ng quá trình có th lên t i con s hàng nghìn. V i s lư ng quá trình ng th i nhi u như v y, các thu t toán l p l ch c n ph i hi u qu : Linux thư ng l p l ch theo ch Round Robin (RR) th c hi n vi c luân chuy n CPU theo lư ng t th i gian. Thành ph n quan tr ng th hai trong nhân là h th ng các mô un chương trình ( ư c g i là l i g i h th ng) làm vi c v i h th ng file. Linux có hai cách th c làm vi c v i các file: làm vi c theo byte (kí t ) và làm vi c theo kh i. M t c i m áng chú ý là file trong Linux có th ư c nhi u ngư i cùng truy nh p t i nên các l i g i h th ng làm vi c v i file c n m b o vi c file ư c truy nh p theo quy n và ư c chia x cho ngư i dùng. 1.2.2. Sơ b v shell M t s n i dung chi ti t v shell (còn ư c g i là h v ) trong Linux ư c trình bày trong chương "L p trình trên shell". Nh ng n i dung trình bày dư i ây cung c p m t cách nhìn sơ b v shell và vai trò c a nó trong ho t ng chung c a h i u hành. Ngư i dùng mong mu n máy tính th c hi n m t công vi c nào ó thì c n gõ l nh th hi n yêu c u c a mình h th ng áp ng yêu c u ó. Shell là b d ch l nh và ho t ng như m t k t n i trung gian gi a nhân v i ngư i dùng: Shell nh n dòng l nh do ngư i dùng ưa vào; và t dòng l nh nói trên, nhân tách ra các b ph n nh n ư c m t hay m t s l nh tương ng v i các o n văn b n có trong dòng l nh. M t l nh bao g m tên l nh và tham s : t u tiên là tên l nh, các t ti p theo (n u có) là các tham s . Ti p theo, shell s d ng nhân kh i sinh m t quá trình m i (kh i t o quá trình) và sau ó, shell ch i quá trình con này ti n hành, hoàn thi n và k t thúc. Khi shell s n sàng ti p nh n dòng l nh c a ngư i dùng, m t d u nh c shell (còn g i là d u nh c nh p l nh) xu t hi n trên màn hình. Linux có hai lo i shell ph bi n là: C-shell (d u nh c %), Bourne-shell (d u nh c $) và m t s shell phát tri n t các shell nói trên (ch ng h n, TCshell - tcsh v i d u nh c ng m nh > phát tri n t C-shell và GNU Bourne - bash v i d u nh c bash # phát tri n t Bourne-shell). D u m i phân bi t shell nói trên không ph i hoàn toàn rõ ràng do Linux cho phép ngư i dùng thay i l i d u nh c shell nh vi c thay giá tr các bi n môi trư ng PS1 và PS2. Trong tài li u này, chúng ta s d ng kí hi u "hàng rào #" bi u th d u nh c shell. C-shell có tên g i như v y là do cách vi t l nh và chương trình l nh Linux t a như ngôn ng C. Bourne-shell mang tên tác gi c a nó là Steven Bourne. M t s l nh trong C- shell (ch ng h n l nh alias) không còn có trong Bourne-shell và vì v y nh n bi t h th ng ang làm vi c v i shell nào, chúng ta gõ l nh: # alias N u m t danh sách xu t hi n thì shell ang s d ng là C-shell; ngư c l i, n u xu t hi n thông báo "Command not found" thì shell ó là Bourne-shell. L nh ư c chia thành 3 lo i l nh:
  • 16. 1 5 L nh thư ng tr c (có s n c a Linux). Tuy t i a s l nh ư c gi i thi u trong tài li u này là l nh thư ng tr c. Chúng bao g m các l nh ư c ch a s n trong shell và các l nh thư ng tr c khác. File chương trình ngôn ng máy: ch ng h n, ngư i dùng vi t trình trên ngôn ng C qua b d ch gcc (bao g m c trình k t n i link) t o ra m t chương trình trên ngôn ng máy. File chương trình shell (Shell Scrip). Khi k t thúc m t dòng l nh c n gõ phím ENTER shell phân tích và th c hi n l nh. 1.3. Gi i thi u v s d ng l nh trong Linux Như ã gi i thi u ph n trên, Linux là m t h i u hành a ngư i dùng, a nhi m, ư c phát tri n b i hàng nghìn chuyên gia Tin h c trên toàn th gi i nên h th ng l nh cũng ngày càng phong phú; n th i i m hi n nay Linux có kho ng hơn m t nghìn l nh. Tuy nhiên ch có kho ng vài ch c l nh là thông d ng nh t i v i ngư i dùng. Tài li u này cũng h n ch gi i thi u kho ng vài ch c l nh ó. Chúng ta ng e ng i v s lư ng l nh ư c gi i thi u ch chi m m t ph n nh trong t p h p l nh b i vì ây là nh ng l nh thông d ng nh t và chúng cung c p m t ph m vi ng d ng r ng l n, th a mãn yêu c u c a chúng ta. Cũng như ã nói trên, ngư i dùng làm vi c v i máy tính thông qua vi c s d ng tr m cu i: ngư i dùng ưa yêu c u c a mình b ng cách gõ "l nh" t bàn phím và giao cho h i u hành x lý. Khi cài t Linux lên máy tính cá nhân thì máy tính cá nhân v a óng vai trò tr m cu i, v a óng vai trò máy tính x lý. D ng t ng quát c a l nh Linux có th ư c vi t như sau: # <Tên l nh> [<các tham s >] ¿ trong ó: Tên l nh là m t dãy ký t , không có d u cách, bi u th cho m t l nh c a Linux hay m t chương trình. Ngư i dùng c n h i u hành áp ng yêu c u gì c a mình thì ph i ch n úng tên l nh. Tên l nh là b t bu c ph i có khi gõ l nh. Các tham s có th có ho c không có, ư c vi t theo quy nh c a l nh mà chúng ta s d ng, nh m cung c p thông tin v các i tư ng mà l nh tác ng t i. Ý nghĩa c a các d u [, <, >, ] ư c gi i thích ph n quy t c vi t l nh. Các tham s ư c phân ra thành hai lo i: tham s khóa (sau ây thư ng dùng là "tùy ch n") và tham s v trí. Tham s v trí thư ng là tên file, thư m c và thư ng là các i tư ng ch u s tác ng c a l nh. Khi gõ l nh, tham s v trí ư c thay b ng nh ng i tư ng mà ngư i dùng c n hư ng tác ng t i. Tham s khóa chính là nh ng tham s i u khi n ho t ng c a l nh theo các trư ng h p riêng. Trong Linux, tham s khóa thư ng b t u b i d u tr "-" ho c hai d u tr liên ti p "--". Khi gõ l nh, cũng gi ng như tên l nh, tham s khóa ph i ư c vi t chính xác như trình bày trong mô t l nh. M t l nh có th có m t s ho c r t nhi u tham s khóa. Ph thu c vào yêu c u c th c a mình, ngư i dùng có th ch n m t ho c m t s các tham s khóa khi gõ l nh. Trong mô t l nh, thư ng xu t hi n thu t ng tùy-ch n. Tùy ch n l nh (th c ch t là tham s khóa) cho phép i u ch nh ho t ng c a l nh trong Linux, làm cho l nh có tính ph d ng cao. Tuỳ ch n l nh cho phép l nh có th áp ng ý mu n c a ngư i dùng i v i h u h t (tuy không ph i lúc nào cũng v y) các tình hu ng t ra cho thao tác ng v i l nh.
  • 17. 1 6 Ký hi u "↵" bi u th vi c gõ phím h t dòng <Enter>. k t thúc m t yêu c u, ngư i dùng nh t thi t ph i gõ phím "↵". Ví d , khi ngư i dùng gõ l nh xem thông tin v các file: # ls -l g↵↵↵↵¿ trong l nh này: ls là tên l nh th c hi n vi c ưa danh sách các tên file/ thư m c con trong m t thư m c, -l là tham s khóa, cho bi t yêu c u xem y thông tin v các i tư ng hi n ra. Chú ý, trong tham s khóa ch cái (ch "l") ph i i ngay sau d u tr "-". Tương ng v i l nh ls còn có các tham s khóa -a, -L, ... và chúng cũng là các tùy ch n l nh. Trong m t s tham s khóa có nhi u ch cái thay cho m t d u "-" là hai d u "--" u tham s . Ví d , như trư ng h p tham s --file c a l nh date. g* là tham s v trí ch rõ ngư i dùng c n xem thông tin v các file có tên g i b t u là ch cái "g". Trong tài li u này, quy ư c r ng khi vi t m t l nh (trong mô t l nh và gõ l nh) thì không c n ph i vi t d u "↵" cu i dòng l nh ó, song luôn ghi nh r ng phím ENTER ("↵") là b t bu c khi gõ l nh. Lưu ý: Linux (và UNIX nói chung) ư c xây d ng trên ngôn ng l p trình C, vì v y khi gõ l nh ph i phân bi t ch thư ng v i ch hoa. Ngo i tr m t s ngo i l , trong Linux chúng ta th y ph bi n là: Các tên l nh là ch thư ng, M t s tham s có th là ch thư ng ho c ch hoa (ví d , trong l nh date v th i gian h th ng thì hai tham s -r và -R có ý nghĩa hoàn toàn khác nhau). Tên các bi n môi trư ng cũng thư ng dùng ch hoa. Trong tài li u này, t i nh ng dòng văn b n di n gi i, s d ng cách vi t tên l nh, các tham s khóa b ng ki u ch không chân, m như date, -R, -r ... Linux phân bi t siêu ngư i dùng (ti ng Anh là superuser ho c root, còn ư c g i là ngư i qu n tr hay ngư i dùng t i cao ho c siêu ngư i dùng) v i ngư i dùng thông thư ng. Trong t p h p l nh c a Linux, có m t s l nh mà ch siêu ngư i dùng m i ư c phép s d ng còn ngư i dùng thông thư ng thì không ư c phép (ví d như l nh adduser th c hi n vi c b sung thêm ngư i dùng). M t khác trong m t s l nh, v i m t s tham s khóa thì ch siêu ngư i dùng ư c phép dùng, còn v i m t s tham s khác thì m i ngư i dùng u ư c phép (ví d như l nh passwd thay i m t kh u ngư i dùng). M t dòng l nh có th có nhi u hơn m t l nh, trong ó l nh sau ư c ngăn cách b i v i l nh i ngay trư c b ng d u ";" ho c d u "|". Ví d v m t s dòng l nh d ng này: # ls -l; date # head Filetext | sort >temp Sau khi ngư i dùng gõ xong dòng l nh, shell ti p nh n dòng l nh này và phân tích n i dung văn b n c a l nh. N u l nh ư c gõ úng thì nó ư c th c hi n; ngư c l i, trong trư ng h p có sai sót khi gõ l nh thì shell thông báo v sai sót và
  • 18. 1 7 d u nh c shell l i hi n ra ch l nh ti p theo c a ngư i dùng. V ph bi n, n u như sau khi ngư i dùng gõ l nh, không th y thông báo sai sót hi n ra thì có nghĩa l nh ã ư c th c hi n m t cách bình thư ng. Trư c khi i vào n i dung chi ti t các l nh thông d ng, chúng ta xem xét v m t s quy nh dùng trong mô t l nh ư c trình bày trong tài li u này. 1.3.1. Các quy ư c khi vi t l nh Trong tài li u này, các l nh ư c trình bày theo m t b quy t c cú pháp nh t quán. B quy t c này cho phép phân bi t trong m i l nh các thành ph n nào là b t bu c ph i có, các thành ph n nào có th có ho c không ... Dư i ây là n i dung c a các quy t c trong b quy t c ó. Tên l nh là b t bu c, ph i là t u tiên trong b t kỳ l nh nào, ph i ư c gõ úng như khi mô t l nh. Tên khái ni m ư c n m trong c p d u ngo c quan h (< và >) bi u th cho m t l p i tư ng và là tham s b t bu c ph i có. Khi gõ l nh thì tên khái ni m (có th ư c coi là "tham s hình th c") ph i ư c thay th b ng m t t (thư ng là tên file, tên thư m c ... và có th ư c coi là "tham s th c s ") ch i tư ng liên quan n thao tác c a l nh. Ví d , mô t cú pháp c a l nh more xem n i dung file là # more <file> thì t more là tên l nh, còn <file> là tham s trong ó file là tên khái ni m và là tham s b t bu c ph i có. L nh này có tác ng là hi n lên màn hình theo cách th c cu n n i dung c a file v i tên ã ch trong l nh. xem n i dung file có tên là temp, ngư i dùng gõ l nh: # more temp Như v y, tên l nh more ư c gõ úng như mô t cú pháp (c n i dung và v trí) còn "file" ã ư c thay th b ng t "temp" là tên file mà ngư i dùng mu n xem n i dung. Các b ph n n m gi a c p d u ngo c vuông [ và ] là có th gõ ho c không gõ cũng ư c. Ví d , cú pháp c a l nh halt là # halt [tùy-ch n] V i các tùy ch n là -w, -n, -d, -f, -i mã m i tùy ch n cho m t cách th c ho t ng khác nhau c a l nh halt. L nh halt có tác ng chính là làm ng ng ho t ng c a h i u hành, tuy nhiên khi ngư i dùng mu n có m t cách ho t ng nào ó c a l nh này thì s ch n m t (ho c m t s ) tuỳ ch n l nh tương ng. M t s cách gõ l nh halt c a ngư i dùng như sau ây là úng cú pháp: # halt # halt -w # halt -n # halt -f Các giá tr có trong c p | và | trong ó các b ph n cách nhau b ng d u s ng "|" cho bi t c n ch n m t và ch m t trong các giá tr n m gi a hai d u ngo c ó.
  • 19. 1 8 Ví d , khi gi i thi u v tùy ch n l nh c a l nh tail xem ph n cu i n i dung c a file, chúng ta th y: -f, --follow[={tên | c t }] Như v y, sau tham s khóa --follow, n u xu t hi n thêm d u b ng "=" thì ph i có ho c tên ho c c t . ây là trư ng h p các ch n l a "lo i tr nhau". D u ba ch m ... th hi n vi c l p l i thành ph n cú pháp i ngay trư c d u này, vi c l p l i ó có th t không n nhi u l n (không k chính thành ph n cú pháp ó). Cách th c này thư ng ư c dùng v i các tham s như tên file. Ví d , mô t l nh chown như sau: chown [tùy-ch n] <ch >[,[nhóm]]<file>... Như v y trong l nh chown có th không có ho c có m t s tùy ch n l nh và có t m t n nhi u tên file. Các b ph n trong mô t l nh, n u không n m trong các c p d u [ ], <>, { } thì khi gõ l nh th c s ph i gõ y úng như khi mô t (chú ý, quy t c vi t tên l nh là m t trư ng h p riêng c a quy t c này). Vi c k t h p các d u ngo c v i nhau cho phép t o ra cách th c s d ng quy t c t h p các tham s trong l nh. Ví d , l nh more bình thư ng có cú pháp là: # more <file> có nghĩa là thay <file> b ng tên file c n xem n i dung, n u k t h p thêm d u ngo c vuông [ và ], t c là có d ng sau (chính là d ng t ng quát c a l nh more): # more [<file>] thì <file> nói chung ph i có trong l nh more, tuy nhiên trong m t s trư ng h p có th b qua tham s file. Lưu ý: i v i nhi u l nh, cho phép ngư i dùng gõ tham s khóa k t h p tương ng v i tùy_ch n trong mô t l nh. Tham s khóa k t h p ư c vi t theo cách - <xâu-kí-t >, trong ó xâu-kí-t g m các ch cái trong tham s khóa. Ví d , trong mô t l nh in l ch cal: cal [tùy-ch n] [tháng [năm] ] có ba tham s khóa là -m, -j, -y. Khi gõ l nh có th gõ m t t h p nào ó t ba tham s khóa này ư c tình hu ng s d ng l nh theo ý mu n. Ch ng h n, n u gõ l nh cal -mj 3 thì l nh cal th c hi n theo i u khi n c a hai tham s khóa -m (ch n Th Hai là ngày u tu n, thay vì cho ng m nh là Ch Nh t) và -j (hi n th ngày trong tháng dư i d ng s ngày trong năm k t u năm). Vì v y, khi vi t [tùy-ch n] trong mô t l nh bi u th c vi c s d ng t ng tùy ch n, nhi u tùy ch n ho c k t h p các tuỳ ch n. Trong m t s l nh, có hai tham s khóa cùng tương ng v i m t tình hu ng th c hi n l nh, trong ó m t tham s g m m t kí t còn tham s kia l i là m t t . Tham s dài m t t là tham s chu n c a l nh, còn tham s m t kí t là cách vi t ng n g n. Tham s chu n dùng ư c trong m i Linux và khi gõ ph i có kí t trong t .
  • 20. 1 9 Ví d , khi mô t l nh date có tùy ch n: -d, --date=STRING như v y hai tham s -d và --date=STRING có cùng ý nghĩa. Ngoài nh ng quy ư c trên ây, ngư i dùng ng quên m t quy nh cơ b n là c n phân bi t ch hoa v i ch thư ng khi gõ l nh. 1.3.3. Làm ơn gi n thao tác gõ l nh Vi c s d ng bàn phím nh p l nh tuy không ph i là m t công vi c n ng n , song Linux còn cho phép ngư i dùng s d ng m t s cách th c thu n ti n hơn khi gõ l nh. M t s trong nh ng cách th c ó là: S d ng vi c khôi ph c dòng l nh, S d ng các phím c bi t, S d ng các kí hi u thay th và phím <Tab>, S d ng thay th alias, S d ng chương trình l nh. Cách th c s d ng chương trình l nh (shell script) s ư c gi i thi u chi ti t trong các chương sau. Dư i ây, chúng ta xem xét cách th c s d ng vi c khôi ph c dòng l nh, phím c bi t và kí hi u thay th . Cơ ch khôi ph c dòng l nh Linux cung c p m t cách th c c bi t là kh năng khôi ph c l nh. T i d u nh c shell: Ngư i dùng s d ng các phím mũi tên lên/xu ng (↑/↓) trên bàn phím nh n l i các dòng l nh ã ư c ưa vào trư c ây t i d u nh c shell, ch n m t trong các dòng l nh ó và biên t p l i n i dung dòng l nh theo úng yêu c u m i c a mình. Ví d , ngư i dùng v a gõ xong dòng l nh: # ls -l tenfile* sau ó mu n gõ l nh ls -l tentaptin thì t i d u nh c c a shell, ngư i dùng s d ng các phím di chuy n lên (↑) ho c xu ng (↓) nh n ư c: # ls -l tenfile* dùng các phím t t di chuy n, xoá kí t (xem ph n sau) có ư c: # ls -l ten và gõ ti p các kí t "taptin" nh n ư c: # ls -l tentaptin chính là k t qu mong mu n. Trong trư ng h p s lư ng kí t thay th là r t ít so v i s lư ng kí t c a toàn dòng l nh thì hi u qu c a cách th c này r t cao. Lưu ý: Vi c nh n liên ti p các phím di chuy n lên (↑) ho c xu ng (↓) cho phép ngư i dùng nh n ư c các dòng l nh ã gõ t trư c mà không ch dòng l nh m i ư c gõ. Cách th c này tương t v i cách th c s d ng ti n ích DOSKEY trong h i u hành MS-DOS.
  • 21. 2 0 M t s phím c bi t khi gõ l nh Khi ngư i dùng gõ l nh có th x y ra m t s tình hu ng như sau: Dòng l nh ang gõ có ch sai sót, không úng theo yêu c u c a ngư i dùng vì v y c n ph i s a l i ôi chút n i dung trên dòng l nh ó. Trong trư ng h p ó c n s d ng các phím c bi t (còn g i là phím vi t t t hay phím t t) di chuy n, xoá b , b sung vào n i dung dòng l nh. Sau khi s d ng cách th c khôi ph c dòng l nh, chúng ta nh n ư c dòng l nh tương t v i l nh c n gõ và sau ó s d ng các phím t t hoàn thi n l nh. Dư i ây gi i thi u các phím t t và ý nghĩa c a vi c s d ng chúng: • Nh n phím → di chuy n con tr sang bên ph i m t v trí • Nh n phím ← di chuy n con tr sang bên trái m t v trí • Nh n phím <ESC-BACKSPACE> xoá m t t bên trái con tr • Nh n phím <ESC-D> xoá m t t bên ph i con tr • Nh n phím <ESC-F> di chuy n con tr sang bên ph i m t t • Nh n phím <ESC-B> di chuy n con tr sang bên trái m t t • Nh n phím <CTRL-A> di chuy n con tr v u dòng l nh • Nh n phím <CTRL-E> di chuy n con tr v cu i dòng • Nh n phím <CTRL-U> xóa dòng l nh Có th dùng phím <ALT> thay cho phím <ESC>. Các kí hi u mô t nhóm file và phím <Tab> Khi gõ l nh th c s nhi u trư ng h p ngư i dùng mong mu n m t tham s trong l nh không ch xác nh m t file mà l i liên quan n m t nhóm các file mà tên g i c a các file trong nhóm có chung m t tính ch t nào ó. Trong nh ng trư ng h p như v y, ngư i dùng c n s d ng các kí hi u mô t nhóm file (wildcards), chúng ta g i là kí hi u mô t nhóm (còn ư c g i là kí hi u thay th ). Ngư i ta s d ng các kí t *, ? và c p hai d u [ và ] mô t nhóm file. Các kí t này mang ý nghĩa như sau khi vi t vào tham s tên file th c s : • "*" : là ký t mô t nhóm g m m i xâu kí t (thay th m i xâu). Mô t này cho m t nhóm l n nh t trong ba mô t . • "?" : mô t nhóm g m m i xâu v i dài không quá 1 (thay th m t kí t ). Nhóm này là t p con c a nhóm u tiên (theo kí t "*"). • [xâu-kí-t ] : mô t nhóm g m m i xâu có dài 1 là m i kí t thu c xâu nói trên. Mô t này cho m t nhóm có l c lư ng bé nh t trong ba mô t . Nhóm này là t p con c a nhóm th hai (theo kí t "?"). Khi gõ l nh ph i gõ c hai d u [ và ]. M t d ng khác c a mô t nhóm này là [<kí_t _1>-<kí_t _2>] nghĩa là gi a c p d u ngo c có ba kí t trong ó kí t gi a là d u n i (d u -) thì cách vi t này tương ương v i vi c li t kê m i kí t t <kí_t _1> n <kí_t _2>. Ch ng h n, cách vi t [a-d] tương ương v i cách vi t [abcd]. Ví d , gi s khi mu n làm vi c v i t t c các file trong m t thư m c nào ó, ngư i dùng gõ * thay th tham s file thì xác nh ư c các tên file sau (chúng ta vi t b n tên file trên m t dòng):
  • 22. 2 1 info-dir initlog.conf inittab lynx.cfg mail.rc mailcap minicom.users motd mtab mtools.conf services shadow shadow- shells smb.conf sysctl.conf syslog.conf temp termcap up2date.conf temp termcap N u ngư i dùng gõ s* ( ch các tên có ch cái u là s) thay th tham s file thì xác nh ư c các tên file sau: shadow shadow- shells sysctl.conf syslog.conf N u ngư i dùng gõ [si]* ( ch các tên có ch cái u là s ho c i, chú ý dùng c hai kí t [ và ]) thay th tham s file thì xác nh các tên file sau: info-dir initlog.conf inittab services shadow shadow- shells smb.conf sysctl.conf syslog.conf Lưu ý: Như v y, Linux (và UNIX nói chung) không ch s d ng hai kí t mô t nhóm * và ? mà còn có cách th c s d ng c p kí t [ và ]. C n phân bi t c p d u [ và ] ư c s d ng khi ngư i dùng gõ l nh có ý nghĩa hoàn toàn khác v i ý nghĩa c a chúng khi ư c s d ng trong mô t l nh. Hơn th n a, Linux còn cung c p cho ngư i dùng cách th c s d ng phím <TAB> hoàn thành n t tên file (tên thư m c) trong l nh. Ví d , khi chúng ta gõ dòng l nh # ls /u<TAB>local<TAB>b<TAB> thì nó cũng tương ương như gõ dòng l nh (và ây chính là n i dung xu t hi n t i d u nh c shell): # ls /usr/local/bin v i i u ki n trong thư m c /usr ch có thư m c local ư c b t u b i ch "l" và trong thư m c local cũng ch có thư m c bin ư c b t u b i ch "b". Trong trư ng h p n u như m t kí t chưa xác nh, ngư i dùng c n gõ thêm kí t ti p theo trong tên file (tên thư m c) và nh n phím <TAB> hoàn thành dòng l nh. 1.3.4. Ti p n i dòng l nh Như ã lưu ý trên ây, m t dòng l nh có th g m m t ho c m t s l nh, m t khác tham s c a l nh có th là r t dài không th trong khuôn kh c a m t dòng văn b n ư c. Khi gõ l nh, n u dòng l nh quá dài, Linux cho phép ng t dòng l nh xu ng dòng dư i b ng cách thêm kí t báo hi u chuy n dòng "" t i cu i dòng; trong trư ng h p ó, kí t "" ph i là ký t cu i cùng thu c dòng l nh trư c. Ví d , # cd vsd thumuc thì dòng th hai là ph n ti p theo c a dòng th nh t và k t h p c hai dòng này th c ch t là m t dòng l nh Linux.
  • 23. 2 2 1.4. Trang Man Chúng ta có th nói r ng Linux là m t h i u hành r t ph c t p v i hàng nghìn l nh và m i l nh l i có th có t i vài ho c vài ch c tình hu ng s d ng do chúng cho phép có nhi u tùy ch n l nh. thu c h t ư c n i dung t t c các l nh c a Linux là m t i u h t s c khó khăn, có th nói là không th . Linux cho phép ngư i dùng s d ng cách th c g i trang Man có ư c các thông tin y gi i thi u n i dung các l nh. Dư i ây là m t s n i dung v cách th c s d ng trang Man. "Man" là t vi t t t c a "manual", ư c coi là tài li u tr c tuy n trong Linux ã lưu tr toàn b các l nh có s n v i các thông tin tham kh o khá y cho phép ngư i dùng có th m ra nh n ư c tr giúp. m trang Man c a m t l nh, chúng ta s d ng l nh man c a Linux và gõ: # man <tên-l nh> N i dung c a trang Man tuy không ph i là quá khó hi u, song hi u h t ư c nó cũng òi h i không ít th i gian. Tuy v y, n u quên n i dung m t l nh nào ó thì cách t t nh t là hãy s d ng trang Man. C u trúc chung c a m t trang Man như sau: COMMAND(1) Linux Programmer's Manual COMMAND(1) NAME tên l nh - khái quát tác d ng c a l nh SYNOPSIS cú pháp c a l nh DESCRIPTION mô t c th hơn v tác d ng c a l nh OPTIONS li t kê các tùy ch n l nh và tác d ng c a chúng FILES li t kê các file mà l nh s d ng ho c tham chi u n SEE ALSO li t kê các l nh, các tài li u, ..., có liên quan n l nh REPORTING BUGS a ch liên h n u g p l i khi s d ng l nh AUTHOR tên tác gi c a l nh Ngư i dùng th m chí không nh chính xác tên l nh. Linux còn có m t cách th c h tr ngư i dùng có th nhanh chóng tìm ư c l nh c n s d ng trong trư ng h p ch nh nh ng ch cái u c a tên l nh, ó là cách th c s d ng phím TAB. Trong cách th c này, ngư i dùng ch c n nh m t s ch cái u tiên c a tên l nh. Có th trình bày cách th c ó theo cú pháp sau ây: # <dãy-ch -cái><TAB><TAB> Trong ó dãy-ch -cái có t m t n m t vài ch cái thu c ph n u c a tên l nh. Chú ý r ng, các ch cái và hai phím <TAB> ph i ư c gõ liên ti p nhau. K t h p cách th c này v i cách th c s d ng l nh man (v i s phong phú v tùy ch n c a l nh man) nh n ư c m t cách th c khá tuy t v i tr giúp ngư i dùng.
  • 24. 2 3 Ví d , mu n s d ng l nh history nhưng l i không nh chính xác tên l nh ư c vi t ra như th nào mà ch nh nó ư c b t u b i ch h, hãy gõ ch h ó t i d u nh c shell và nh n phím TAB hai l n, s th y m t danh sách các l nh có ch cái u tiên là h ư c hi n ra trên màn hình: # h<TAB><TAB> h2ph hboot help hexdump history hostname htdigest h2xs hcc helpme hf77 hltest hoststat htpasswd halt hcp helptool hinotes host hpcdtoppm hash head hexbin hipstopgm hostid hpftodit Như v y, t t c các l nh có tên b t u v i ch h ư c hi n th trên màn hình và cho phép ngư i dùng có th xác nh ư c l nh c n quan tâm. Trư ng h p t n t i m t s lư ng l n các l nh có cùng ch cái u tiên mà ngư i dùng ã gõ, thay vì hi n h t m i tên l nh, h i u hành cho ra m t thông báo h i ngư i dùng có mu n xem toàn b các l nh ó hay không. Ngư i dùng áp ng thông báo ó tuỳ theo ý mu n c a mình. Ví d , khi ngư i dùng gõ n i dung như sau: # p<TAB><TAB> thì h th ng áp l i là: There are 289 possibilities. Do you really wish to see them all? (y or n) Ngư i dùng gõ phím "y" n u mu n xem, ho c gõ "n" n u b qua. Ngư i dùng có th gõ nhi u hơn m t ch cái u tên l nh và i u ó cho phép gi m b t s tên l nh mà h th ng tìm ư c và hi n th . Ch ng h n, khi bi t hai ch cái u là "pw" và ngư i dùng gõ: # pw<TAB><TAB> thì h th ng s hi n ra danh sách các tên l nh b t u b i "pw": pwck pwconv pwd pwdb_chkpwd pwunconv Trong trư ng h p này, ngư i dùng s nh n bi t ư c tên l nh ang c n tìm thu n ti n hơn.
  • 25. 2 4 CHƯƠNG 2. THAO TÁC V I H TH NG 2.1. Quá trình kh i ng Linux Trong ph n này, chúng ta xem xét sơ b quá trình kh i ng h i u hành Linux. M t trong nh ng cách th c kh i ng Linux ph bi n nh t là cách th c do chương trình LILO (LInux LOader) th c hi n. Chương trình LILO ư c n p lên ĩa c a máy tính khi cài t h i u hành Linux. LILO ư c n p vào Master Boot Record c a ĩa c ng ho c vào Boot Sector t i phân vùng kh i ng (trên ĩa c ng ho c ĩa m m). Gi s máy tính c a chúng ta ã cài t Linux và s d ng LILO kh i ng h i u hành. LILO thích h p v i vi c trên máy tính ư c cài t m t s h i u hành khác nhau và theo ó, LILO còn cho phép ngư i dùng ch n l a h i u hành kh i ng. Giai o n kh i ng Linux tùy thu c vào c u hình LILO ã ư c l a ch n trong quá trình cài t Linux. Trong tình hu ng ơn gi n nh t, Linux ư c kh i ng t ĩa c ng hay ĩa m m kh i ng. Quá trình kh i ng Linux có th ư c mô t theo sơ sau: T heo sơ này, LILO ư c t i vào máy th c hi n mà vi c u tiên là ưa nhân vào b nh trong và sau ó t i chương trình init th c hi n vi c kh i ng Linux. N u cài t nhi u phiên b n Linux hay cài Linux cùng các h i u hành khác (trong các trư ng h p như th , m i phiên b n Linux ho c h i u hành khác ư c gán nhãn - label phân bi t), thì thông báo sau ây ư c LILO ưa ra: LILO boot: cho phép nh p xâu là nhãn c a m t trong nh ng h i u hành hi n có trên máy kh i ng nó. T i th i i m ó, ngư i dùng c n gõ nhãn c a h i u hành c n kh i ng vào, ví d , gõ LILO boot: linux n u ch n kh i ng làm vi c trong Linux, ho c gõ LILO boot: dos n u ch n kh i ng làm vi c trong MS-DOS, Windows. Lưu ý: N u chúng ta không nh ư c nhãn c a h i u hành có trong máy ch n, hãy gõ phím <TAB> ư c LILO cho bi t nhãn c a các h i u hành. LILO boot: <TAB> s hi n ra danh sách các nhãn (ví d như): linux dos ... và hi n l i thông báo nói trên ta gõ nhãn c a h i u hành. LILO cũng cho phép t ch ch n ng m nh h i u hành kh i ng mà theo ó n u chúng ta không có tác ng gì sau thông báo ch n h i u hành thì LILO s t ng ch n h i u hành ng m nh ra kh i ng. N u chúng ta không can thi p vào các file tương ng c a trình LILO thì h i u hành Linux là h i u hành ng m nh. Gi s Linux ã ư c ch n kh i ng. Khi init th c hi n, chúng ta s th y m t chu i (kho ng vài ch c) dòng thông báo cho bi t h th ng ph n c ng ư c Linux nh n di n và LILO Nhân init
  • 26. 2 5 thi t l p c u hình cùng v i t t c trình i u khi n ph n m m ư c n p khi kh i ng. Quá trình init là quá trình kh i th y, là cha c a m i quá trình. T i th i i m kh i ng h th ng init th c hi n vai trò u tiên c a mình là ch y chương trình shell trong file /etc/inittab và các dòng thông báo trên ây chính là k t qu c a vi c ch y chương trình shell ó. Sau khi chương trình shell trên ư c th c hi n xong, b t u quá trình ngư i dùng ăng nh p (login) vào h th ng. 2.2. Th t c ăng nh p và các l nh thoát kh i h th ng 2.2.1. ăng nh p Sau khi h th ng Linux (l y Red Hat 6.2 làm ví d ) kh i ng xong, trên màn hình xu t hi n nh ng dòng sau: Ret Hat Linux release 6.2 (Zoot) Kernel 2.2.14-5.0 on an i686 May1 login: Dòng th nh t và dòng th hai cho bi t lo i phiên b n Linux, phiên b n c a nhân và ki n trúc ph n c ng có trên máy, dòng th ba là d u nh c ăng nh p ngư i dùng th c hi n vi c ăng nh p. Chú ý là các dòng trên ây có th thay i chút ít tùy thu c vào phiên b n Linux. T i d u nh c ăng nh p, hãy nh p tên ngư i dùng (còn g i là tên ăng nh p): ây là tên kí hi u ã cung c p cho Linux nh m nh n di n m t ngư i dùng c th . Tên ăng nh p ng v i m i ngư i dùng trên h th ng là duy nh t, kèm theo m t m t kh u ăng nh p. May1 login: root Password: Chúng ta có th thay i các dòng hi n th như trình bày trên ây b ng cách s a i file /etc/rc.d/rc.local như sau: Thay o n chương trình 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 thành echo "" > /etc/issue echo "Thông báo mu n hi n th " >> /etc/issue ví d s a thành: echo "" > /etc/issue echo "This is my computer" >> /etc/issue thì trên màn hình ăng nh p s có d ng sau: This is my computer hostname login:
  • 27. 2 6 Khi nh p xong tên ăng nh p, h th ng s hi n ra thông báo h i m t kh u và di chuy n con tr xu ng dòng ti p theo ngư i dùng nh p m t kh u. M t kh u khi ư c nh p s không hi n th trên màn hình và chính i u ó giúp tránh kh i s "nhòm ngó" c a ngư i khác. N u nh p sai tên ăng nh p ho c m t kh u, h th ng s ưa ra m t thông báo l i: May1 login: root Password: Login incorrect Máy1 login: N u ăng nh p thành công, ngư i dùng s nhìn th y m t s thông tin v h th ng, m t vài tin t c cho ngư i dùng... Lúc ó, d u nh c shell xu t hi n ngư i dùng b t u phiên làm vi c c a mình. May1 login: root Password: Last login: Fri Oct 27 14:16:09 on tty2 Root[may1 /root]# Dãy kí t trong dòng cu i cùng chính là d u nh c shell. Trong d u nh c này, root là tên ngư i dùng ăng nh p, may1 là tên máy và /root tên thư m c hi n th i (vì ây là ngư i dùng root). Khi d u nh c shell xu t hi n trên màn hình thì i u ó có nghĩa là h i u hành ã s n sàng ti p nh n m t yêu c u m i c a ngư i dùng. D u nh c shell có th khác v i trình bày trên ây (M c 2.7 cung c p cách thay i d u nh c shell), nhưng có th hi u nó là chu i kí t b t u m t dòng có ch a tr chu t và luôn xu t hi n m i khi h i u hành hoàn thành m t công vi c nào ó. 2.2.2. Ra kh i h th ng k t thúc phiên làm vi c ngư i dùng c n th c hi n th t c ra kh i h th ng. Có r t nhi u cách cho phép thoát kh i h th ng, ây chúng ta xem xét m t s cách thông d ng nh t. Cách ơn gi n nh t m b o thoát kh i h th ng úng n là nh n t h p phím CTRL+ALT+DEL. Khi ó, trên màn hình s hi n th m t s thông báo c a h th ng và cu i cùng là thông báo thoát trư c khi t t máy. C n chú ý là: N u ang làm vi c trong môi trư ng X Window System, hãy nh n t h p phím CTRL+ALT+BACKSPACE trư c r i sau ó hãy nh n CTRL+ALT+DEL. Cách th hai là s d ng l nh shutdown v i cú pháp như sau: shutdown [tùy-ch n] <time> [c nh-báo] L nh này cho phép d ng t t c các d ch v ang ch y trên h th ng. Các tùy-ch n c a l nh này như 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.
  • 28. 2 7 -F : kh i ng l i và th c hi n vi c ki m tra ĩa. -c : b qua không ch y l nh shutdown. Trong tùy ch n này không th ưa ra tham s th i gian nhưng có th ưa ra thông báo gi i thích trên dòng l nh g i cho t t c các ngư i dùng. -t s -giây : qui nh init(8) ch kho ng th i gian s -giây t m d ng gi a quá trình g i c nh báo và tín hi u kill, trư c khi chuy n sang m t m c ch y khác. và hai tham s v trí còn l i: time : t th i i m shutdown. Tham s time có hai d ng. D ng tuy t i là gg:pp (gg: gi trong ngày, pp: phút) thì h th ng s shutdown khi ng h máy trùng v i giá tr tham s . D ng tương i là +<s > là h n sau th i kho ng <s > phút s shutdown; coi shutdown l p t c tương ương v i +0. c nh-báo : thông báo g i n t t c ngư i dùng trên h th ng. Khi l nh th c hi n t t c các máy ngư i dùng u nh n ư c c nh báo. Ví d , khi ngư i dùng gõ l nh: shutdown +1 Sau mot phut nua he thong se shutdown! trên màn hình c a t t c ngư i dùng xu t hi n thông báo "Sau mot phut nua he thong se shutdown! " và sau m t phút thì h th ng shutdown th c s . Cách th ba là 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 c a l nh halt: -w : không th c s t t máy nhưng v n ghi các thông tin lên file /var/log/wtmp ( ây là file lưu tr danh sách các ngư i dùng ăng nh p thành công vào h th ng). -d : không ghi thông tin lên file /var/log/wtmp. Tùy ch n -n có ý nghĩa tương t song không ti n hành vi c ng b hóa. -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. Chúng ta c n nh r ng, 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. Lưu ý: Có th s d ng l nh exit tr v d u nh c ăng nh p ho c k t thúc phiên làm vi c b ng l nh logout. 2.2.3. Kh i ng l i h th ng Ngoài vi c thoát kh i h th ng nh các cách th c trên ây ( n t h p ba phím Ctrl+Alt+Del, dùng l nh shutdown ho c l nh halt), khi c n thi t (ch ng h n, g p ph i tình hu ng m t trình ng d ng ch y qu n) có th kh i ng l i h th ng nh 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. Nói chung thì ch siêu ngư i dùng m i ư c phép s d ng l nh reboot, tuy nhiên, n u h th ng ch có duy nh t m t ngư i dùng ang
  • 29. 2 8 làm vi c thì l nh reboot v n ư c th c hi n song h th ng òi h i vi c xác nh n m t kh u. Các tùy ch n c a l nh reboot như sau là -w, -d, -n, -f, -i có ý nghĩa tương t như trong l nh halt. 2.2.4. Kh i ng vào ch ho Linux cho phép nhi u ch kh i ng, nh ng ch này ư c li t kê trong file /etc/inittab. Dư i ây là n i dung c a file này: # inittab This file describes how the INIT process should set up # the system in a certain run-level. # # Author: Miquel van Smoorenburg, <miquels drinkel.nl.mugnet.org> # Modified for RHS Linux by Marc Ewing and Donnie Barnes # # Default runlevel. The runlevels used by RHS are: # 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 # System initialization. si::sysinit:/etc/rc.d/rc.sysinit l0:0:wait:/etc/rc.d/rc 0 l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 # Things to run in every runlevel. ud::once:/sbin/update # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now #ca::ctrlaltdel:/bin/echo "You can't do that" # When our UPS tells us power has failed, assume we have a few minutes
  • 30. 2 9 # of power left. Schedule a shutdown for 2 minutes from now. # This does, of course, assume you have powerd installed and your # UPS connected and working correctly. pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down" # If power was restored before the shutdown kicked in, cancel it. pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled" # Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 #3:2345:respawn:/sbin/mingetty tty3 #4:2345:respawn:/sbin/mingetty tty4 #5:2345:respawn:/sbin/mingetty tty5 #6:2345:respawn:/sbin/mingetty tty6 # Run xdm in runlevel 5 # xdm is now a separate service x:5:respawn:/etc/X11/prefdm –nodaemon Trong ó ch kh i ng s 3 là ch kh i ng vào ch Text, và ch 5 là kh ng vào ch ho . Như v y cho máy tính kh i ng vào ch ho ta s a l i dòng c u hình id:3:initdefault: thành id:5:initdefault: Trong Linux có m t s lo i giao di n ho do m t s t ch c vi t ra. Hai t ch c n i ti ng là GNOME (http://www.gnome.org) và KDE (http://www.kde.org) ã vi t ra các giao di n ho mang tên trùng v i t ch c ó là GNOME và KDE. Cũng tuỳ vào vi c ư c cài giao di n GNOME hay KDE mà khi kh i ng vào ch ho , máy tính có các giao di n tương ng. Trên hình trên là giao di n GNOME mà khi kh i ng vào ch ho . M t khác, các giao di n này liên t c ư c phát tri n, do ó
  • 31. 3 0 m i phiên b n s có s khác nhau. Trong giao di n ăng nh p h a, h th ng hi n th h p tho i cho phép ngư i dùng nh p vào tên tài kho n; sau khi ngư i dùng nh p tên tài kho n c a mình, h th ng h i ti p m t kh u. N u c tên tài kho n và m t kh u u chính xác thì ngư i dùng ư c phép vào h th ng và m t giao di n làm vi c m i s hi n ra như hình dư i. 2.3. L nh thay i m t kh u M t kh u là v n r t quan tr ng trong các h th ng a ngư i dùng và m b o tính b o m t t i a, c n thi t ph i chú ý t i vi c thay i m t kh u. Th m chí trong trư ng h p h th ng ch có m t ngư i s d ng thì vi c thay i m t kh u v n là r t c n thi t. 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 cho phép m t ngư i vào làm vi c trong h th ng v i quy n h n ã ư c quy nh. Trong quá trình ăng nh p, ngư i dùng ph i gõ úng tên và m t kh u, trong ó gõ m t kh u là công vi c b t bu c ph i th c hi n. 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. · 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. · 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 m i ăng ký tham gia s d ng h th ng. 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 (có th do ngư i dùng ngh ) và dùng l nh adduser (ho c l nh useradd) ăng ký tên và m t kh u ó v i h
  • 32. 3 1 th ng. Sau ó, ngư i dùng m i nh t thi t c n thay i m t kh u b o m vi c gi bí m t cá nhân tuy t i. L nh passwd cho phép thay i m t kh u ng v i tên ăng nh p ngư i dùng. Cú pháp l nh passwd: passwd [tùy-ch n] [tên-ngư i-dùng] v i các tùy ch n như sau: -k : thay i m t kh u ngư i dùng. L nh òi h i ph i xác nh n quy n b ng vi c gõ m t kh u ang dùng trư c khi thay i m t kh u. Cho phép ngư i dùng thay i m t kh u c a mình c l p v i siêu ngư i dùng. -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. Ch siêu ngư i dùng m i có quy n s d ng tham s này. -l : khóa m t tài kho n ngư i dùng. Vi c khóa tài kho n th c ch t là vi c d ch b n mã hóa m t kh u thành m t xâu ký t vô nghĩa b t u b i kí hi u "!". Ch siêu ngư i dùng m i có quy n s d ng tham s này. -stdin : vi c nh p m t kh u ngư i dùng ch ư c ti n hành t thi t b vào chu n không th ti n hành t ư ng d n (pipe). N u không 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. -u : m khóa (tháo b khóa) m t tài kho n ( i ng u v i tham s -l). Ch siêu ngư i dùng m i có quy n s d ng tham s này. -d : xóa b m t kh u c a ngư i dùng. Ch siêu ngư i dùng m i có quy n s d ng tham s này. -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. Ch siêu ngư i dùng m i có quy n s d ng tham s này. N u tên-ngư i-dùng không có trong l nh thì ng m nh là chính ngư i dùng ã gõ l nh này. Ví d khi ngư i dùng user1 gõ l nh: # passwd user1 h th ng thông báo: Changing password for user user1 New UNIX password: ngư i dùng nh p m t kh u m i c a mình vào. Sau khi ngư i dùng gõ xong m t kh u m i, h th ng cho ra thông báo: BAD PASSWORD: it is derived from your password entry Retype new UNIX password: ngư i dùng kh ng nh m t l n n a m t kh u v a gõ dòng trên (nh ph i gõ l i úng h t như l n trư c). Ch nên quá phân vân vì thông báo dòng phía trên vì h u h t khi gõ m t kh u m i luôn g p nh ng thông báo ki u i lo i như v y, ch ng h n như: BAD PASSWORD: it is too simplistic/systematic Và sau khi chúng ta kh ng nh l i m t kh u m i, h th ng cho ra thông báo: Passwd: all authentication tokens updated successfully. cho bi t vi c thay i m t kh u thành công và d u nh c shell l i hi n ra. Khi siêu ngư i dùng gõ l nh:
  • 33. 3 2 # passwd -S root s hi n ra thông báo Changing password for user root Password set, MD5 encryption cho bi t thu t toán mã hóa m t kh u mà Linux s d ng là m t thu t toán hàm băm có tên là MD5. Lưu ý: Có m t l i khuyên i v i ngư i dùng là nên ch n m t kh u không quá ơn gi n quá (nh m tránh ngư i khác d dò tìm ra) ho c không quá ph c t p (tránh khó khăn cho chính ngư i dùng khi ph i ghi nh và gõ m t kh u). c bi t không nên s d ng h tên, ngày sinh, s i n tho i ... c a b n thân ho c ngư i thân làm m t kh u vì ây là m t trong nh ng trư ng h p m t kh u ơn gi n nh t. N u thông báo m t kh u quá ơn gi n ư c l p i l p l i m t vài l n và không có thông báo m t kh u m i thành công ã quay v d u nh c shell thì nên gõ l i l nh và ch n m t m t kh u m i ph c t p hơn ôi chút. 2.4. L nh xem, thi t t ngày, gi hi n t i và xem l ch trên h th ng 2.4.1 L nh xem, thi t t ngày, gi L nh date cho phép có th xem ho c thi t t l i ngày gi trên h th ng. Cú pháp c a l nh g m hai d ng, d ng xem thông tin v ngày, gi : date [tùy-ch n] [+ nh-d ng] và d ng thi t t l i ngày gi cho h th ng: date [tùy-ch n] [MMDDhhmm[ [CC[YY] ]-ss]] Các tùy-ch n như sau: -d, --date=xâu-văn-b n : hi n th th i gian dư i d ng xâu-văn-b n, mà không l y "th i gian hi n t i c a h th ng” như theo ng m nh; xâu-văn-b n ư c t trong hai d u nháy ơn ho c hai d u nháy kép. -f, --file=file-văn-b n : gi ng như m t tham s --date nhưng ng v i nhi u ngày c n xem: m i dòng c a file-văn-b n có vai trò như m t xâu-văn-b n trong trư ng h p tham s --date. -I, --iso-8601[=mô-t ] : hi n th ngày gi theo chu n ISO-8601 (ví d : 2000-11-8). -I tương ương v i tham s --iso-8601='date' V i --iso-8601: n u mô-t là 'date' (ho c không có) thì hi n th ngày, n u mô-t là 'hours' hi n th ngày+gi , n u mô-t là 'minutes': ngày+gi +phút; n u mô-t là 'seconds': ngày + gi + phút + giây. -r, --reference= file : hi n th th i gian s a i file l n g n ây nh t. -R, --rfc-822 : hi n th ngày theo RFC-822 (ví d : Wed, 8 Nov 2000 09:21:46 -0500). -s, --set=xâu-văn-b n : thi t t l i th i gian theo ki u xâu-văn-b n. -u, --utc, --universal : hi n th ho c thi t t th i gian theo UTC (ví d : Wed Nov 8 14:29:12 UTC 2000). --help : hi n th thông tin tr giúp và thoát.
  • 34. 3 3 Trong d ng l nh date cho xem thông tin ngày, gi thì tham s nh-d ng i u khi n cách hi n th thông tin k t qu . nh-d ng là dãy có t m t n nhi u c p g m hai kí t , trong m i c p kí t u tiên là % còn kí t th hai mô t nh d ng. Do s lư ng nh d ng là r t nhi u vì v y chúng ta ch xem xét m t s nh d ng i n hình ( xem y các nh d ng, s d ng l nh man date). Dư i ây là m t s nh d ng i n hình: %% : Hi n ra chính kí t %. %a : Hi n ra thông tin tên ngày trong tu n vi t t t theo ngôn ng b n a. %A : Hi n ra thông tin tên ngày trong tu n vi t y theo ngôn ng b n a. %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. Trong d ng l nh date cho phép thi t t l i ngày gi cho h th ng thì tham s [MMDDhhmm[ [CC[YY] [.ss]] mô t ngày, gi m i c n thi t t, trong ó: MM: hai s ch tháng, DD: hai s ch ngày trong tháng, hh: hai s ch gi trong ngày, mm: hai s ch phút, CC: hai s ch th k , YY: hai s ch năm trong th k . Các dòng ngay dư i ây trình bày m t s ví d s d ng l nh date, m i ví d ư c cho tương ng v i m t c p hai dòng, trong ó dòng trên mô t l nh ư c gõ còn dòng dư i là thông báo c a Linux. # 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 2.4.2. L nh xem l ch L nh cal cho phép xem l ch trên h th ng v i cú pháp như sau: cal [tùy-ch n] [<tháng> [<năm>]]
  • 35. 3 4 n u không có tham s , l ch c a tháng hi n th i s ư c hi n th . Các tuỳ-ch n là: -m : ch n ngày Th hai là ngày u tiên trong tu n (m c nh là ngày Ch nh t). -j : hi n th s ngày trong tháng dư i d ng s ngày trong năm (ví d : ngày 1/11/2000 s ư c hi n th dư i d ng là ngày th 306 trong năm 2000, s ngày b t u ư c tính t ngày 1/1). -y : hi n th l ch c a năm hi n th i. Ví d : # cal 1 2001 January 2001 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Khi nh p dòng l nh trên, trên màn hình s hi n th l ch c a tháng 1 năm 2001, m c nh ch n ngày ch nh t là ngày b t u c a tu n. Dư i ây là ví d hi n th s ngày trong tháng 3 dư i d ng s ngày trong năm 2001. # cal -j 3 2001 March 2001 Su Mo Tu We Th Fr Sa 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 2.5. Xem thông tin h th ng L nh uname cho phép xem thông tin h th ng v i cú pháp là: uname [tùy-ch n] N u không có tuỳ ch n thì hi n tên h i u hành. L nh có các 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 . Ví d , n u gõ l nh # uname -a
  • 36. 3 5 thì màn hình s hi n ra như sau: Linux linuxsrv.linuxvn.net 2.2.14-5.0 #1 Tue Mar 7 21:07:39 EST 2000 i686 unknown # Thông tin hi n ra có t t c 6 trư ng là: 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 Ví d n u gõ l nh: # uname -spr thì màn hình s hi n ra như sau: Linux 2.2.14-5.0 unknown là tên h i u hành, tên nhân và ki u b x lý c a máy ch . Lưu ý: Chúng ta làm rõ thêm n i dung lưu ý trong m c 1.3.1 v tham s khóa k t h p: Trong ví d trên ây khi vi t tham s -spr là yêu c u th c hi n l nh usame v i nghĩa k t h p tình hu ng theo c ba tham s khóa -s, -p, -r. Chú ý r ng, không th vi t -s -p -r thay cho -spr ư c. Như ã lưu ý m c 1.3.1 trong nhi u l nh c a Linux cho phép vi t k t h p các tham s khóa theo cách th c như trên mi n là các tham s ó không xung kh c v i nhau. 2.6. Thay i n i dung d u nh c shell Trong Linux có hai lo i d u nh c: d u nh c c p m t (d u nh c shell) xu t hi n khi nh p l nh và d u nh c c p hai (d u nh c nh p li u) xu t hi n khi l nh c n có d li u ư c nh p t bàn phím và tương ng v i hai bi n nh c tên là PS1 và PS2. PS1 là bi n h th ng tương ng v i d u nh c c p 1: Giá tr c a PS1 chính là n i dung hi n th c a d u nh c shell. nh n bi t thông tin h th ng hi n t i, m t nhu c u t ra là c n thay i giá tr c a các bi n h th ng PS1 và PS2. Linux cho phép thay i giá tr c a bi n h th ng PS1 b ng l nh gán tr m i cho nó. L nh này có d ng: # PS1='<dãy kí t >' Năm (5) kí t u tiên c a l nh gán trên ây (PS1=') ph i ư c vi t liên ti p nhau. Dãy kí t n m gi a c p hai d u nháy ơn (có th s d ng c p hai d u kép ") và không ư c phép ch a d u nháy. Dãy kí t này bao g m các c p kí t i u khi n và các kí t khác, cho phép có th có d u cách. C p kí t i u khi n g m hai kí t , kí t u tiên là d u s xuôi "" còn kí t th hai nh n m t trong các trư ng h p li t kê trong b ng dư i ây. B ng dư i ây gi i thi u m t s c p ký t i u khi n có th ư c s d ng khi mu n thay i d u nh c l nh: C p ký t i u khi n Ý nghĩa
  • 37. 3 6 ! Hi n th th t c a l nh trong l ch s # Hi n th th t c a l nh $ Hi n th d u ô-la ($). i v i siêu ngư i dùng (super user), thì hi n th d u s hi u (#) Hi n th d u s () d Hi n th ngày hi n t i h Hi n th tên máy (hostname) n Ký hi u xu ng dòng s Hi n th tên h shell t Hi n th gi hi n t i u Hi n th tên ngư i dùng W Hi n th tên th c s c a thư m c hi n th i (ví d thư m c hi n th i là /mnt/hda1 thì tên th c s c a nó là /hda1) w Hi n th tên y c a thư m c hi n th i (ví d /mnt/hda1) Ví d , hi n th i d u nh c shell có d ng: root[may1 /hda1]# Sau khi gõ l nh root@may1 /hda1]# PS1='[h@u w : d]$' thì d u nh c shell ư c thay i là: [may1@root /mnt/hda1 : Fri Oct 27 ]# ngoài vi c i th t gi a tên ngư i dùng và máy còn cho chúng ta bi t thêm v ngày h th ng qu n lý và tên y c a thư m c hi n th i. Linux cung c p cách th c hoàn toàn tương t như i v i bi n PS1 thay i giá tr bi n h th ng PS2 tương ng v i d u nh c c p hai. 2.7. L nh g i ngôn ng tính toán s h c Linux cung c p m t ngôn ng tính toán v i chính xác tùy ý thông qua l nh bc. Khi yêu c u l nh này, ngư i dùng ư c cung c p m t ngôn ng tính toán (và cho phép l p trình tính toán có d ng ngôn ng l p trình C) ho t ng theo thông d ch. Trong ngôn ng l p trình ư c cung c p (t m th i g i là ngôn ng bc), t n t i r t nhi u công c h tr tính toán và l p trình tính toán: ki u phép toán s h c phong phú, phép toán so sánh, m t s hàm chu n, bi n chu n, c u trúc i u khi n, cách th c nh nghĩa hàm, cách th c thay i chính xác, t l i chú thích ... Ch c n s d ng m t ph n nh tác ng c a l nh bc, chúng ta ã có m t "máy tính s b m tay" hi u qu . Cú pháp l nh bc: bc [tùy-ch n] [file...] v i các tuỳ ch n sau ây: -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 (POSIX là m t chu n trong Linux) thì m t c nh báo xu t hi n.
  • 38. 3 7 -s, --standard : th c hi n phép tính chính xác theo chu n c a ngôn ng POSIX bc. -q, --quiet : không hi n ra l i gi i thi u v ph n m m GNU khi dùng bc. Tham s file là tên file ch a chương trình vi t trên ngôn ng bc, khi l nh bc th c hi n s t ng ch y các file chương trình này (N u có nhi u tham s thì có nghĩa s ch y nhi u chương trình liên ti p nhau). Dư i ây là m t ví d s d ng l nh bc d ng ơn gi n nh t. Khi gõ l nh t i d u nh c: # bc -l màn hình xu t hi n l i gi i thi u v GNU khi dùng bc và ngôn ng bc ư c kích ho t ph c v ngư i dùng. 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 a%b .00000000000000000040 ây * là phép nhân, ^ là phép tính lu th a, / là phép chia l y thương, % là chia l y ph n dư. Lưu ý: Ngôn ng l p trình tính toán bc là m t ngôn ng r t m nh có n i dung h t s c phong phú cho nên trong khuôn kh c a tài li u này không th mô t h t các n i dung c a ngôn ng ó ư c. Chúng ta c n s d ng l nh man bc nh n ư c thông tin y v l nh bc và ngôn ng tính toán bc. ây trình bày sơ b m t s y u t cơ b n nh t c a ngôn ng ó (bt là vi t t t c a bi u th c, b là vi t t t c a bi n): 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
  • 39. 3 8 b c ^; gán =; gán sau khi thao tác <thao tác>=; các phép toán so sánh <, <=, >, >=, b ng ==, khác != ... Phép so sánh cho 1 n u úng, cho 0 n u sai. B n bi n chu n là scale s lư ng ch s ph n th p phân; last giá tr tính toán cu i cùng; ibase cơ s h m i v i input và obase là cơ s h m v i output (ng m nh hai bi n này có giá tr 10). Các hàm chu n sin s (bt); cosin c (bt); arctg a (bt); lôgarit t nhiên l (bt); mũ cơ s t nhiên e (bt); hàm Bessel b c nguyên n c a bt là j (n, bt).
  • 40. 3 9 CHƯƠNG 3. H TH NG FILE 3.1 T ng quan v h th ng file 3.1.1. M t s khái ni m Ngư i dùng ã t ng làm vi c v i h i u hành DOS/Windows thì r t quen bi t v i các khái ni m: file (t p tin), thư m c, thư m c hi n th i ... m b o tính h th ng và thu n ti n cho ngư i dùng chưa t ng làm vi c thành th o v i m t h i u hành nào khác, chương này v n gi i thi u v các khái ni m này m t cách sơ b . M t i tư ng i n hình trong các h i u hành ó là file. File là m t t p h p d li u có t ch c ư c h i u hành qu n lý theo yêu c u c a ngư i dùng. Cách t ch c d li u trong file thu c v ch c a nó là ngư i ã t o ra file. File có th là m t văn b n (trư ng h p c bi t là chương trình ngu n trên C, PASCAL, shell script ...), m t chương trình ngôn ng máy, m t t p h p d li u ... H i u hành t ch c vi c lưu tr n i dung file trên các thi t b nh lâu dài (ch ng h n ĩa t ) và m b o các thao tác lên file. Chính vì có h i u hành m b o các ch c năng liên quan n file nên ngư i dùng không c n bi t file c a mình lưu vùng nào trên ĩa t , b ng cách nào c/ghi lên các vùng c a ĩa t mà v n th c hi n ư c yêu c u tìm ki m, x lý lên các file. H i u hành qu n lý file theo tên g i c a file (tên file) và m t s thu c tính liên quan n file. Trư c khi gi i thi u m t s n i dung liên quan n tên file và tên thư m c, chúng ta gi i thi u sơ b v khái ni m thư m c. làm vi c ư c v i các file, h i u hành không ch qu n lý n i dung file mà còn ph i qu n lý các thông tin liên quan n các file. Thư m c (directory) là i tư ng ư c dùng ch a thông tin v các file, hay nói theo m t cách khác, thư m c ch a các file. Các thư m c cũng ư c h i u hành qu n lý trên v t d n ngoài và vì v y, theo nghĩa này, thư m c cũng ư c coi là file song trong m t s trư ng h p phân bi t v i "file" thư m c, chúng ta dùng thu t ng file thông thư ng. Khác v i file thông thư ng, h i u hành l i quan tâm n n i dung c a thư m c. M t s n i dung sau ây liên quan n tên file (bao g m c tên thư m c): Tên file trong Linux có th dài t i 256 ký t , bao g m các ch cái, ch s , d u g ch n i, g ch chân, d u ch m. Tên thư m c/file trong Linux có th có nhi u hơn m t d u ch m, ví d : This_is.a.VERY_long.filename. N u trong tên file có d u ch m "." thì xâu con c a tên file t d u ch m cu i cùng ư c g i là ph n m r ng c a tên file (ho c file). Ví d , tên file trên ây có ph n m r ng là .filename. Chú ý r ng khái ni m ph n m r ng ây không mang ý nghĩa như m t s h i u hành khác (ch ng h n như MS-DOS). Lưu ý: Chúng ta nên lưu ý r ng, không ph i ký t nào cũng có nghĩa. N u có hai file ch khác nhau ký t cu i cùng, thì i v i Linux, ó là hai file có th trùng tên. B i l , Linux ch l y 32 hay 64 ký t u tiên trong tên file mà thôi (tùy theo phiên b n Linux), ph n tên file còn l i dành cho ch c a file, Linux theo dõi thông tin, nhưng thư ng không xem các ký t ng sau ký t th 33 hay 65 là quan tr ng i v i nó. Xin nh c l i lưu ý v phân bi t ch hoa và ch thư ng i v i tên thư m c/file, ví d hai file FILENAME.tar.gz và filename.tar.gz là hai file khác nhau.
  • 41. 4 0 N u trong tên thư m c/file có ch a kho ng tr ng, s ph i t tên thư m c/file vào trong c p d u nháy kép s d ng thư m c/file ó. Ví d , t o thư m c có tên là “My document” ch ng h n, hãy ánh dòng l nh sau: # mkdir "My document" M t s ký t sau không ư c s d ng trong tên thư m c/file: !, *, $, &, # ... Khi s d ng chương trình mc (Midnight Commander), vi c hi n th tên file s b sung m t kí t theo nghĩa: d u "*" cho file kh thi trong Linux, d u "~" cho file sao lưu, d u "." cho file n, d u "@" cho file liên k t... T p h p t t c các file có trong h i u hành ư c g i là h th ng file là m t h th ng th ng nh t. B i chính t cách th c s d ng thư m c, h th ng file ư c t ch c lôgic theo d ng hình cây: H th ng file ư c xu t phát t m t thư m c g c ( ư c kí hi u là "/") và cho phép t o ra thư m c con trong m t thư m c b t kỳ. Thông thư ng, khi kh i t o Linux ã có ngay h th ng file c a nó. Hình 3.1. cho minh h a m t ph n trong cây lôgic c a h th ng file. ch m t file hay m t thư m c, chúng ta c n ưa ra m t ư ng d n, ví d ư ng d n xác nh file Xclients trong hình 3.1. chúng ta vi t như sau: /etc/X11/xinit/Xclients ư ng d n này cho bi t Xclients n m trong xinit, xinit n m trong X11, X11 n m trong etc và etc n m trong g c /. / root bin etc usr home dev peng office52 sh date who X11 src bin user1 user2 tty00 tty01 xinit Xclients Xmodmap Hình 3.1. M t ph n c u trúc lôgic d ng cây c a h th ng File
  • 42. 4 1 Tên file thư ng là tham s th c s khi gõ l nh và công vi c gõ l nh tr nên r t n ng n i v i ngư i dùng n u như trong l nh ph i gõ m t ư ng d n dài theo d ng trên ( ư c bi t v i tên g i là ư ng d n tuy t i). Vì v y, Linux (cũng như nhi u h i u hành khác) s d ng khái ni m thư m c hi n th i c a m i ngư i dùng làm vi c trong h th ng. Thư m c hi n th i là m t thư m c trong h th ng file mà hi n th i "ngư i dùng ang ó". Qua thư m c hi n th i, Linux cho phép ngư i dùng ch m t file trong l nh ng n g n hơn nhi u. Ví d , n u thư m c hi n th i là thư m c xinit thì ch file ã nói, ngư i dùng ch c n vi t Xclients ho c ./Xclients trong ó kí hi u "." ch thư m c hi n th i. ư ng d n ư c xác nh qua thư m c hi n th i ư c g i là ư ng d n tương i. Khi m t ngư i dùng ăng nh p vào h th ng, Linux luôn chuy n ngư i dùng vào thư m c riêng, và t i th i i m ó thư m c riêng là thư m c hi n th i c a ngư i dùng. Thư m c riêng c a siêu ngư i dùng là /root, thư m c riêng c a ngư i dùng có tên là user1 là /home/user1 ... Linux cho phép dùng l nh cd chuy n sang thư m c khác (l y thư m c khác làm thư m c hi n th i). Hai d u ch m ".." ư c dùng ch thư m c ngay trên thư m c hi n th i (cha c a thư m c hi n th i). Linux còn cho phép ghép m t h th ng file trên m t thi t b nh ( ĩa m m, vùng ĩa c ng chưa ư c ưa vào h th ng file) thành m t thư m c con trong h th ng file c a h th ng b ng l nh mount. Các h th ng file ư c ghép thu c vào các ki u khác nhau. Hai m c ti p theo (3.1.2 và 3.1.3.) gi i thi u nh ng n i dung sâu hơn v h th ng file Linux. 3.1.2. Sơ b ki n trúc n i t i c a h th ng file Trên ĩa t , h th ng file ư c coi là dãy tu n t các kh i lôgic m i kh i ch a ho c 512B ho c 1024B ho c b i c a 512B là c nh trong m t h th ng file. Trong h th ng file, các kh i d li u ư c a ch hóa b ng cách ánh ch s liên ti p, m i a ch ư c ch a trong 4 byte (32 bit). C u trúc n i t i c a h th ng file bao g m 4 thành ph n k ti p nhau: Boot block (dùng kh i ng h th ng), Siêu kh i (Super block), Danh sách inode và Vùng d li u. Dư i ây, chúng ta xem xét sơ lư c n i dung các thành ph n c u trúc n i t i m t h th ng file. Siêu kh i Siêu kh i ch a nhi u thông tin liên quan n tr ng thái c a h th ng file. Trong siêu kh i có các trư ng sau ây: Kích thư c c a danh sách inode (khái ni m inode s ư c gi i thích trong m c sau): nh kích c vùng không gian trên H th ng file qu n lý các inode. Kích thư c c a h th ng file. Hai kích thư c trên ây tính theo ơn v dung lư ng b nh ngoài, M t danh sách ch s các kh i r i (thư ng tr c trên siêu kh i) trong h th ng file.
  • 43. 4 2 Ch s các kh i r i thư ng tr c trên siêu kh i ư c dùng áp ng nhu c u phân ph i m i. Chú ý r ng, danh sách ch s các kh i r i có trên siêu kh i ch là m t b ph n c a t p t t c các kh i r i có trên h th ng file. Ch s c a kh i r i ti p theo trong danh sách các kh i r i. Ch s kh i r i ti p theo dùng h tr vi c tìm ki m ti p các kh i r i: b t u tìm t kh i có ch s này tr i. i u ó có nghĩa là m i kh i có ch s không l n hơn ch s này ho c có trong danh sách các kh i r i thư ng tr c ho c ã ư c c p phát cho m t file nào ó. Nhi u thao tác t o file m i, xoá file, thay i n i dung file v.v. c p nh t các thông tin này. M t danh sách các inode r i (thư ng tr c trên siêu kh i) trong h th ng file. Danh sách này ch a ch s các inode r i ư c dùng phân ph i ngay ư c cho m t file m i ư c kh i t o. Thông thư ng, danh sách này ch ch a m t b ph n các inode r i trên h th ng file. Ch s inode r i ti p theo trong danh sách các inode r i. Ch s inode r i ti p theo nh v vi c tìm ki m ti p thêm inode r i: b t u tìm t inode có ch s này tr i. i u ó có nghĩa là m i inode có ch s không l n hơn ch s này ho c có trong danh sách các inode r i thư ng tr c ho c ã ư c tương ng v i m t file nào ó. Hai tham s trên ây t o thành c p xác nh ư c danh sách các inode r i trên h th ng file các thao tác t o file m i, xoá file c p nh t thông tin này. Các trư ng khóa (lock) danh sách các kh i r i và danh sách inode r i: Trong m t s trư ng h p, ch ng h n khi h th ng ang làm vi c th c s v i ĩa t c p nh t các danh sách này, h th ng không cho phép c p nh t t i hai danh sách nói trên. C ch d n v vi c siêu kh i ã ư c bi n i: nh kỳ th i gian siêu kh i b nh trong ư c c p nh t l i vào siêu kh i ĩa t và vì v y c n có thông tin v vi c siêu kh i b nh trong khác v i n i dung b nh ngoài: n u hai b n không gi ng nhau thì c n ph i bi n i chúng ư c ng nh t. C ch d n r ng h th ng file ch có th c (c m ghi): Trong m t s trư ng h p, h th ng ang c p nh t thông tin t b nh ngoài thì ch cho phép c i v i h th ng file, S lư ng t ng c ng các kh i r i trong h th ng file, S lư ng t ng c ng các inode r i trong h th ng file, Thông tin v thi t b , Kích thư c kh i ( ơn v phân ph i d li u) c a h th ng file. Hi n t i kích thư c ph bi n c a kh i là 1KB. Trong th i gian máy ho t ng, theo t ng giai o n, nhân s ưa siêu kh i lên ĩa n u nó ã ư c bi n i phù h p v i d li u trên h th ng file. M t trong khái ni m c t lõi xu t hi n trong h th ng file ó là inode. Các i tư ng liên quan n khái ni m này s ư c trình bày trong các m c ti p theo.