background image

 

ÑAÏI HOÏC QUOÁC GIA THAØNH PHOÁ HOÀ CHÍ MINH 

 

 

 
 

NHAÄP MOÂN  

HEÄ ÑIEÀU HAØNH LINUX 

 

Taøi lieäu khoùa taäp huaán quaûn trò maïng theo taøi trôï cuûa döï 

aùn “Naâng cao chaát löôïng giaùo duïc vaø ñaøo taïo” töø voán vay 

cuûa Ngaân haøng theá giôùi

 

--- Tieåu döï aùn “A” --- 

 

 
 
 
 

Thaønh phoá Hoà chí Minh 10/2001 

(Löu haønh noäi boä) 

background image

 

-1- 

MÔÛ ÑAÀU 

 

 Vôùi söï phaùt trieån ngaøy caøng maïnh meõ cuûa maïng tin hoïc toaøn caàu Internet xuaát hieän 

ngaøy caøng nhieàu nhu caàu veà nguoàn nhaân löïc chuyeân nghieäp ñeå quaûn trò heä thoáng maïng 
duøng rieâng phöùc hôïp vôùi giao tieáp ra Internet.  

Laø moät ñôn vò chòu traùch nhieäm quaûn trò maïng tin hoïc cuûa Ñaïi hoïc quoác gia Tp HCM, 

chuùng toâi ñaõ coù nhieàu kinh nghieäm trong coâng taùc quaûn trò moät maïng Intranet roäng lôùn vôùi 
haøng ngaøn maùy tính keát noái vaø truy caäp Internet qua ñöôøng duøng rieâng (leased-line). Qua 
giaùo trình naøy, chuùng toâi muoán ñöa ñeán baïn ñoïc nhöõng kieán thöùc cô baûn nhaát, cho pheùp caøi 
ñaët vaø quaûn trò moät heä thoáng server Unix cuøng vôùi caùc dòch vuï Internet cô baûn. Caùc ví duï 
thöôøng ñöôïc döïa treân heä ñieàu haønh (HDH) Linux hay Sun OS, laø hai HDH ñang ñöôïc söû 
duïng roäng raõi trong maïng ÑHQG-HCM. Chuùng toâi cuõng seõ ñeà caäp ñeán giao thöùc TCP/IP 
vaø caùch trieån khai TCP/IP treân moät maùy chuû Unix. 

Vôùi phöông chaâm ‚chæ noùi veà nhöõng gì chuùng toâi ñaõ söû duïng trong thöïc teá‛ chuùng 

toâi hy voïng raèng giaùo trình raát ngaén goïn naøy seõ coù ích moät caùch thieát thöïc cho nhöõng baïn 
ñoïc muoán hoïc veà heä ñieàu haønh Unix vaø coâng ngheä maïng Internet, cuõng nhö caùc quaûn trò 
vieân maïng Internet treân cô sôû maùy chuû Unix. 

Do thôøi gian raát eo heïp cho coâng taùc chuaån bò, chuùng toâi chaéc raèng seõ coù nhöõng thieáu 

soùt, mong baïn ñoïc goùp yù vaø xin caûm ôn tröôùc caùc nhaän xeùt cuûa baïn ñoïc. Moïi yù kieán xin göûi 
veà : 

Trònh Ngoïc Minh 
3 Coâng tröôøng Quoác teá,  Q.3 Thaønh phoá Hoà chí minh 
 tnminh@vnuhcm.edu.vn 

 
 
 

background image

 

-2- 

I.  Giôùi thieäu lòch söû phaùt trieån cuûa Unix vaø Linux:

 

 

a.  Vaøi doøng veà lòch söû UNIX: 
Giöõa naêm 1960, AT&T Bell Laboratories vaø moät soá trung taâm khaùc tham gia vaøo 

moät coá gaéng taïo ra moät heä ñieàu haønh môùi ñöôïc ñaët teân laø Multics (Multiplexed Information 
and Computing Service). Ñeán naêm 1969, chöông trình Multics bò baõi boû vì ñoù laø moät döï aùn 
quaù nhieàu tham voïng. Thaäm trí nhieàu yeâu caàu ñoái vôùi Multics thôøi ñoù ñeán nay vaãn chöùa coù 
ñöôïc  treân  caùc  Unix  môùi  nhaát.  Nhöng  Ken  Thompson,  Dennis  Ritchie,  vaø  moät  soá  ñoàng 
nghieäp cuûa Bell Labs ñaõ khoâng boû cuoäc. Thay vì xaây döïng moät HÑH laøm nhieàu vieäc moät 
luùc, hoï quyeát ñònh phaùt trieån moät HÑH ñôn giaûn chæ laøm toát moät vieäc laø chaïy chöông trình 
(run program). HÑH seõ coù raát nhieàu caùc coâng cuï (tool) nhoû, ñôn giaûn, goïn nheï (compact) 
vaø chæ laøm toát moät coâng vieäc. Baèng caùch keát hôïp nhieàu coâng cuï laïi vôùi nhau, hoï seõ coù moät 
chöông trình thöïc hieän moät  coâng vieäc phöùc taïp. Ñoù cuõng laø caùch thöùc ngöôøi laäp trình vieát 
ra chöông trình. Peter Neumann ñaët teân Unix cho HÑH ñôn giaûn naøy. tieáp tuïc phaùt trieån 
theo moâ hình ban ñaàu vaø  ñaët ra moät heä thoáng taäp tin maø sau naøy ñöôïc phaùt trieån thaønh heä 
thoáng taäp tin cuûa UNIX. Vaøo naêm 1973, söû duïng ngoân ngöõ C cuûa Ritchie, Thompson ñaõ 
vieát laïi toaøn boä HÑH Unix vaø ñaây laø moät thay ñoåi quan troïng cuûa Unix, vì nhôø ñoù Unix töø 
choã laø HÑH cho moät maùy PDP-xx trôû thaønh HÑH cuûa caùc maùy khaùc vôùi moät coá gaéng toái 
thieåu ñeå chuyeån ñoåi. Khoaûng 1977 baûn quyeàn cuûa UNIX ñöôïc giaûi phoùng vaø HDH UNIX 
trôû thaønh moät thöông phaåm. 

 
b.  Hai doøng UNIX : System V cuûa AT&T , Novell vaø Berkeley Software Distribution 

(BSD) cuûa Ñaïi hoïc Berkeley. 

 

System V :  

Caùc phieân baûn UNIX cuoái cuøng do  AT&T xuaát baûn laø  System III vaø moät vaøi phaùt 

haønh  (releases)  cuûa  System  V.  Hai  baûn  phaùt  haønh  gaàn  ñaây  cuûa  System  V  laø  Release  3 
(SVR3.2) vaø Release 4.2 (SVR4.2). Phieân baûn SYR 4.2 laø phoå bieán nhaát cho töø maùy PC 
cho tôùi maùy tính lôùn.  

 

BSD :  

Töø  1970  Computer  Science  Research  Group  cuûa  University  of  California  taïi 

Berkeley  (UCB)  xuaát  baûn  nhieàu  phieân  baûn  UNIX,  ñöôïc  bieát  ñeán  döôùi  teân  Berkeley 
Software Distribution, hay BSD. Caûi bieán cuûa  PDP-11 ñöôïc goïi laø 1BSD vaø 2BSD. Trôï 
giuùp cho caùc maùy tính cuûa Digital Equipment Corporation VAX ñöôïc ñöa vaøo trong 3BSD. 
Phaùt trieån cuûa VAX ñöôïc tieáp tuïc vôùi  4.0BSD, 4.1BSD, 4.2BSD, vaø 4.3BSD 
Tröôùc 1992, UNIX laø teân thuoäc sôû höõu cuûa AT&T. Töø 1992, khi AT&T baùn boä phaän Unix 
cho Novell, teân Unix thuoäc sôû höõu cuûa X/Open foundation. Taát caû caùc heä ñieàu haønh thoûa 
maõn moät soá yeâu caàu ñeàu coù theå goïi laø Unix. Ngoaøi ra, Institute of Electrical and Electronic 
Engineers    (IEEE)  ñaõ  thieát  laäp  chuaån  "An  Industry-Recognized  Operating  Systems 
Interface Standard based on the UNIX Operating System." Keát quaû cho ra ñôøi  POSIX.1 
(cho giao dieän  C ) vaø  POSIX.2 (cho heä thoáng leänh treân Unix) 

background image

 

-3- 

Keát laïi, vaán ñeà chuaån hoùa UNIX vaãn coøn raát xa keát quaû cuoái cuøng. Nhöng ñaây laø quaù trình 
caàn thieát coù lôïi cho söï phaùt trieån cuûa ngaønh tin hoïc noùi chung vaø söï soáng coøn cuûa HDH 
UNIX noùi rieâng. 
Caùc phieân baûn cuûa Unix 
 

 

 
c.     Lòch söû phaùt trieån cuûa Linux vaø giôùi thieäu caùc phaân phoái (distribution) Linux 
ngaøy nay 
Linux laø moät HDH daïng UNIX (Unix-like Operating System) chaïy treân maùy PC vôùi 

boä ñieàu khieån trung taâm (CPU)  Intel 80386 hoaëc caùc theá heä sau ñoù, hay caùc boä vi xöû lyù 
trung  taâm  töông  thích  nhö  AMD,  Cyrix.  Linux  ngaøy  nay  coøn  coù  theå  chaïy  treân  caùc  maùy 
Macintosh hoaëc SUN Sparc . Linux thoûa maõn chuaån POSIX.1. 
Linux ñöôïc vieát laïi toaøn boä töø con soá khoâng, töùc laø khoâng söû duïng moät doøng leänh naøo cuûa 
Unix, ñeå traùnh vaán ñeà baûn quyeàn cuûa Unix, tuy nhieân hoaït ñoäng cuûa Linux hoaøn toaøn döïa 
treân nguyeân taéc cuûa heä ñieàu haønh Unix. Vì vaäy neáu moät ngöôøi naém ñöôïc Linux, thì seõ naém 
ñöôïc UNIX. Neân chuù yù raèng giöõa caùc Unix söï khaùc nhau cuõng khoâng keùm gì giöõa Unix vaø 
Linux. 

Naêm  1991  Linus  Torvalds,  sinh  vieân  cuûa  ñaïi  hoïc  toång  hôïp  Helsinki, Phaàn  lan,  baét 

ñaàu xem xeùt Minix, moät phieân baûn cuûa Unix, laøm ra vôùi muïc ñích nghieân cöùu caùch taïo ra 
moät heä ñieàu haønh Unix chaïy treân maùy PC vôùi boä vi xöû lyù Intel 80386.  

Ngaøy 25/8/1991, Linus cho ra version 0.01 vaø thoâng baùo treân comp.os.minix cuûa 

Internet veà chöông trình cuûa mình.  

1/1992, Linus cho ra version 0.12 vôùi shell vaø C compiler. Linus khoâng caàn Minix 

nöõa ñeå recompile HDH cuûa mình. Linus ñaët teân HDH cuûa mình laø Linux. 

1994, phieân baûn chính thöùc 1.0 ñöôïc phaùt haønh. 

background image

 

-4- 

Quaù trình phaùt trieån cuûa Linux ñöôïc taêng toác bôûi söï giuùp ñôõ cuûa chöông trình GNU (GNU’s 
Not Unix), ñoù laø chöông trình phaùt trieån caùc Unix coù khaû naêng chaïy treân nhieàu platform. 
Ñeán hoâm nay, cuoái 2001, phieân baûn môùi nhaát  cuûa Linux kernel laø 2.4.2-2, coù khaû naêng 
ñieàu khieån caùc maùy ña boä vi xöû  lyù vaø raát nhieàu caùc tính naêng khaùc. 
 

d.   Vaán ñeà baûn quyeàn cuûa GNU project  

Caùc chöông trình tuaân theo GNU Copyleft or GPL (General Public License) coù baûn 

quyeàn nhö sau : 

1.  Taùc giaû vaãn laø sôû höõu cuûa chöông trình cuûa mình. 
2.  Ai cuõng ñöôïc quyeàn baùn copy cuûa chöông trình vôùi giaù baát kyø maø khoâng phaûi traû 

cho taùc giaû ban ñaàu. 

3.  Ngöôøi  sôû  höõu  chöông  trình  taïo  ñieàu  kieän  cho  ngöôøi  khaùc  sao  cheùp  chöông  trình 

nguoàn ñeå phaùt trieån tieáp chöông trình.  
 
e.  Taïi sao laïi söû duïng Linux ?  
Linux  laø  mieãn  phí  (free).  Ñoái  vôùi  chuùng  ta  hoâm  nay  khoâng  quan  troïng  vì  ngay 

WindowsNT server cuõng ‚free‛. Nhöng trong töông lai, khi chuùng ta muoán hoøa nhaäp vaøo 
theá giôùi, khi chuùng ta muoán coù moät thu nhaäp chính ñaùng cho ngöôøi laäp trình, hieän töôïng sao 
cheùp troäm phaàn meàm caàn phaûi chaám döùt. Khi ñoù, ‚free‛ laø moät thoâng soá raát quan troïng ñeå 
choïn Linux.  

Linux raát oån ñònh. Traùi vôùi suy nghó truyeàn thoáng ‚cuûa  reû laø cuûa oâi ‚, Linux töø 

nhöõng phieân baûn ñaàu tieân caùch ñaây 5-6 naêm ñaõ raát oån ñònh. Ngay caû server Linux phuïc vuï 
nhöõng maïng lôùn (haøng traêm maùy traïm) cuõng hoaït ñoäng raát oån ñònh. 

Linux ñaày ñuû. Taát caû nhöõng gì baïn thaáy ôû IBM, SCO, Sun … ñeàu coù ôû Linux. C 

compiler, perl interpeter, shell , TCP/IP, proxy, firewall, taøi lieäu höôùng daãn ... ñeàu raát ñaày 
ñuû vaø coù chaát löôïng. Heä thoáng caùc chöông trình tieän  ích cuõng raát ñaày ñuû . 

Linux laø HDH hoaøn toaøn 32-bit.  Nhö caùc Unix khaùc, ngay töø ñaàu, Linux ñaõ laø moät 

HDH 32 bits. Hieän nay ñaõ coù nhöõng phieân baûn Linux 64 bits chaïy treân maùy Alpha Digital 
hay Ultra Sparc. 

Linux  raát meàm  deûo  trong  caáu  hình.  Linux  cho  ngöôøi  söû  duïng  caáu  hình  raát  linh 

ñoäng, ví duï nhö ñoä phaân daûi maøn hình Xwindow tuøy yù, deã daøng söûa ñoåi ngay caû kernel … 

Linux  chaïy  treân  nhieàu  maùy  khaùc  nhau  töø  PC  386,  486  töï  laép  cho  ñeán  SUN 

Sparc. 

Linux ñöôïc trôï giuùp. Ngaøy nay, vôùi caùc server Linux söû duïng döõ lieäu quan troïng, 

ngöôøi söû duïng hoaøn toaøn coù theå tìm ñöôïc söï trôï giuùp cho Linux töø caùc coâng ty lôùn. IBM ñaõ 
chính  thöùc  chaøo  baùn  IBM  server  chaïy  treân  Linux.  Taøi  lieäu  giôùi  thieäu  Linux  ngaøy  caøng 
nhieàu, khoâng thua keùm baát cöù moät HDH naøo khaùc.  

Vôùi nguoàn taøi lieäu phong phuù, chöông trình töø kernel cho ñeán caùc tieän ích mieãn phí 

vaø boä maõ nguoàn môû, Linux laø ngöôøi baïn ñoàng haønh lyù töôûng cho nhöõng ai muoán ñi vaøo 

background image

 

-5- 

HDH  chuyeân  nghieäp  UNIX  vaø  coâng  cuï  toát  nhaát  cho  coâng  taùc  ñaøo  taïo  CNTT  trong  caùc 
tröôøng ñaïi hoïc. 

Caùc phieân baûn cuûa Linux. Caùc phieân baûn cuûa HDH Linux ñöôïc xaùc ñònh bôûi heä 

thoáng soá daïng X.YY.ZZ.  Neáu YY laø soá chaün => phieân baûn oån ñònh. YY laø soá leû => phieân 
baûn thöû nghieäm .  

Caùc  phaân  phoái  (distribution)  cuûa  Linux  quen  bieát  laø  RedHat,  Debian,  SUSE, 

Slakware, Caldera …  

Chuù yù phaân bieät soá phieân baûn cuûa heä ñieàu haønh (Linux kernel) vôùi phieân baûn cuûa 

caùc phaân phoái (ví duï RedHat 6.0  vôùi kernel Linux 2.2.5-15). 

 

II. 

Heä thoáng tieán trình (process) cuûa Linux. Ñieàu khieån caùc tieán trình.

Linux laø moät HDH ña ngöôøi söû duïng, ña tieán trình. Linux thöïc hieän taát caû caùc coâng 

vieäc cuûa ngöôøi söû duïng cuõng nhö cuûa heä thoáng baèng caùc tieán trình (process). Do ñoù, hieåu 
ñöôïc caùch ñieàu khieån caùc tieán trình ñang hoaït ñoäng treân HDH Linux raát quan troïng, nhieàu 
khi coù tính chaát quyeát ñònh, cho vieäc quaûn trò heä thoáng. 

 Ñònh nghóa : Tieán trình (process) laø moät chöông trình ñôn chaïy treân khoâng gian 

ñòa chæ aûo cuûa noù . Caàn phaân bieät tieán trình vôùi leänh vì moät doøng leänh treân shell coù theå sinh 
ra nhieàu tieán trình. 

  Doøng leänh : 

nroff -man ps.1 | grep kill | more

 

seõ sinh ra 3 tieán trình khaùc nhau. 
Coù 3 loaïi tieán trình chính treân Linux : 

 

Tieán trình vôùi ñoái thoaïi (Interactive processes) : laø tieán trình khôûi ñoäng vaø quaûn lyù 
bôûi shell, keå caû  tieán trình forthground hoaëc background.  

 

Tieán trình batch (Batch processes) : Tieán trình khoâng gaén lieàn ñeán baøn ñieàu khieån 
(terminal) vaø ñöôïc naèm trong haøng ñôïi ñeå laàn löôït thöïc hieän.  

 

Tieán  trình  aån  treân  boä  nhôù  (Daemon  processes)  :  Laø  caùc  tieán  trình  chaïy  döôùi  neàn 
(background). Caùc tieán trình naøy thöôøng ñöôïc khôûi ñoäng töø ñaàu. Ña soá caùc chöông 
trình server cho caùc dòch vuï chaïy theo phöông thöùc naøy. Ñaây laø caùc chöông trình 
sau khi ñöôïc goïi leân boä nhôù, ñôïi thuï ñoäng caùc yeâu caàu chöông trình khaùch (client) 
ñeå traû lôøi sau caùc coång xaùc ñònh (coång laø khaùi nieäm gaén lieàn vôùi giao thöùc TCP/IP 
BSD socket. Chuùng ta seõ giaûi thích roõ trong phaàn TCP/IP). Haàu heát caùc dòch vuï treân 
Internet nhö mail, Web,  Domain Name Service … chaïy theo nguyeân taéc naøy. Caùc 
chöông trình ñöôïc goïi laø caùc chöông trình daemon vaø teân cuûa noù thöôøng keát thuùc 
baèng kyù töï ‚d‛ nhö named, inetd … Kyù töï ‚d‛ cuoái ñöôïc phaùt aâm rôøi ra nhö  ‚ñeâ ‚ 
trong tieáng vieät. Ví duï named ñöôïc phaùt aâm laø ‚neâm ñeâ‛. 

background image

 

-6- 

Caùch  ñôn  giaûn  nhaát  ñeå  kieåm  tra  heä  thoáng  tieán  trình  ñang  chaïy  laø  söû duïng  leänh  ps 

(process status). Leänh ps coù nhieàu tuøy choïn (option) vaø phuï thuoäc moät caùch maëc ñònh vaøo 
ngöôøi login vaøo heä thoáng. Ví duï : 

$ ps 

PID TTY STAT TIME COMMAND 

41 v01 S 0:00 -bash 

134 v01 R 0:00 ps

 

cho pheùp hieån thò caùc tieán trình lieân quan tôùi moät ngöôøi söû duïng heä thoáng. 

Coät ñaàu tieân laø PID (Process IDentification). Moãi tieán trình cuûa Linux ñeàu mang  moät 

soá ID vaø caùc thao taùc lieân quan ñeán tieán trình ñeàu thoâng qua soá PID naøy. Gaïch noái – tröôùc 
bash ñeå thoâng baùo ñoù laø shell khôûi ñoäng khi ngöôøi söû duïng login. 

Ñeå hieån thò taát caû caùc process, ta coù theå söû duïng leänh ps –a. Moät ngöôøi söû duïng heä 

thoáng bình thöôøng coù theå thaáy taát caû caùc tieán trình, nhöng chæ coù theå ñieàu khieån döôïc caùc 
tieán trình cuûa mình taïo ra. Chæ coù super-user môùi coù quyeàn ñieàu khieån taát caû caùc tieán trình 
cuûa heä thoáng Linux vaø cuûa ngöôøi khaùc. Leänh ps –ax cho pheùp hieån thò taát caû caùc tieán trình, 
ngay caû nhöõng tieán trình khoâng gaén lieàn ñeán coù baøn ñieàu khieån (tty). Chuùng ta coù theå coi 
caùc tieán trình ñang chaïy cuøng vôùi doøng leänh ñaày  ñuû  ñeå  khôûi ñ oäng  tieán trình  naøy baèng ps 
–axl.  
Leänh man ps cho pheùp coi caùc tham soá töï choïn khaùc cuûa leänh ps .  

 

 Döøng moät tieán trình, leänh kill :  Trong nhieàu tröôøng hôïp, moät tieán trình coù theå bò 

treo, moät baøn phím ñieàu khieån khoâng traû lôøi caùc leänh töø baøn phím, moät chöông trình server 
caàn nhaän caáu hình môùi, card maïng caàn thay ñoåi ñòa chæ IP …, khi ñoù chuùng ta phaûi döøng 
(kill) tieán trình ñang coù vaán ñeà . Linux coù leänh kill ñeå thöïc hieän caùc coâng taùc naøy. Tröôùc 
tieân baïn caàn phaûi bieát PID cuûa tieán trình caàn döøng thoâng qua leänh ps. Xin nhaéc laïi chæ coù 
super-user môùi coù quyeàn döøng taát caû caùc tieán trình, coøn ngöôøi söû duïng chæ ñöôïc döøng caùc 
tieán trình cuûa mình. Sau ñoù, ta söû duïng leänh  

kill  -9  PID_cuûa_ tieán_trình  
Tham soá –9 laø göûi tín hieäu döøng khoâng ñieàu kieän chöông trình. Chuù yù neáu baïn logged 

vaøo heä thoáng nhö root, nhaäp soá PID chính xaùc neáu khoâng baïn coù theå döøng moät tieán trình 
khaùc. Khoâng neân döøng caùc tieán trình maø mình khoâng bieát vì coù theå laøm treo maùy hoaëc dòch 
vuï. 

Moät tieán trình coù theå sinh ra caùc tieán trình con trong quaù trình hoaït ñoäng cuûa mình. 

Neáu baïn döøng tieán trình cha, caùc tieán trình con cuõng seõ döøng theo, nhöng khoâng töùc thì . Vì 
vaäy phaûi ñôïi moät khoaûng thôøi gian vaø sau ñoù kieåm tra laïi xem taát caû caùc tieán trình con coù 
döøng ñuùng hay khoâng. Trong moät soá haõn höõu caùc tröôøng hôïp, tieán trình coù loãi naëng khoâng 
döøng ñöôïc, phöông phaùp cuoái cuøng laø khôûi ñoäng laïi maùy. 

Khi doù tieán trình sau leänh nohup seõ khoâng bò döøng laïi khi baïn logout. 
 

background image

 

-7- 

  Leänh at : Beân caïnh ñoù, Linux coù caùc leänh cho pheùp thöïc hieän caùc tieán trình ôû caùc 

thôøi ñieåm mong muoán. Leänh at cho pheùp thöïc hieän moät tieán trình vaøo thôøi ñieåm nhaäp trong 
doøng leänh. 

$ at 1:23<Return> 
lp /usr/sales/reports/*<Return> 
echo ‚Files  printed, BossÆ| mail boss@company.com<Return>
 
<^D> 
Daáu ^D coù nghóa laø caàn giöõ  phím <Ctrl>, sau ñoù nhaán phím D vaø boû caû 2 phím cuøng 

moät luùc.  

Sau khi baïn keát thuùc leänh at, doøng thoâng baùo gioáng nhö sau seõ hieän ra maøn hình 
 

job 756001.a at Sat Dec 21 01:23:00 2000 

 
Soá 756001.a cho pheùp tham chieáu tôùi coâng taùc (job) ñoù, ñeå duøng neáu baïn muoán xoùa 

job ñoù bôûi leänh  

at –r job_number 
Leänh naøy coù theå khaùc vôùi caùc phieân baûn khaùc nhau. Ví duï ñoái vôùi RedHat 6.2 leänh 

xoùa moät job laø atrm job_number . Trong moïi tröôøng hôïp coi manpage ñeå bieát caùc leänh vaø 
tham soá cuï theå. 

Baïn  coù  theå  duøng  quy  taéc  chuyeån  höôùng  (redirect)  ñeå  laäp  lòch  trình  cho  nhieàu  laänh 

cuøng moät luùc  

at 10:59 < taäp_leänh 
trong ñoù, taäp_leänh laø moät taäp tin daïng text coù caùc leänh. Ñeå kieåm tra caùc tieán trình maø 

baïn ñaõ nhaäp vaøo, duøng leänh at –l   

 

 Leänh batch :  Khaùc vôùi leänh at laø tieán trình ñöôïc thöïc hieän vaøo caùc thôøi ñieåm do 

ngöôøi söû duïng choïn, leänh batch ñeå cho heä thoáng töï quyeát ñònh khi naøo tieán trình ñöôïc thöïc 
hieän döïa treân möùc ñoä taûi cuûa heä thoáng. Thöôøng laø caùc tieán trình batch ñöôïc thi haønh khi 
maùy baän döôùi 20%. Caùc tieán trình in aán, caäp nhaät döõ lieäu lôùn … raát thích hôïp vôùi kieåu leänh 
naøy. Cuù phaùp cuûa batch nhö sau : 

$ batch<Return> 
lp /usr/sales/reports/*<Return> 
echo ‚Files  printed, BossÆ| mail boss@company.com<Return>
 
<^D> 
Caùc leänh at vaø batch cho pheùp laäp keá hoaïch thöïc hieän tieán trình moät laàn. Linux coøn 

cho pheùp laäp keá hoaïch coù tính chaát chu kyø thoâng qua leänh cron (vieát taét cuûa chronograph) 
vaø caùc taäp tin crontabs. Chöông trình cron ñöôïc khôûi ñoäng ngay töø ñaàu vôùi khôûi ñoäng cuûa 

background image

 

-8- 

heä thoáng. Khi khôûi ñoäng, cron xem coù caùc tieán trình trong haøng ñôïi nhaäp vaøo bôûi leänh at
sau ñoù xem xeùt caùc caùc taäp tin crontabs xem coù tieán trình caàn phaûi thöïc hieän hay khoâng roài 
‚ñi nguû ‚:-) . Cron seõ ‚thöùc daäy‛ moãi phuùt ñeå kieåm tra xem coù phaûi thöïc hieän tieán trình 
naøo khoâng. Super-user vaø user ñeàu coù theå ñaët haøng caùc tieán trình seõ ñöôïc cho pheùp thöïc 
hieän bôûi cron. Ñeå  laøm ñieàu naøy, baïn caàn taïo moät taäp tin text theo cuù phaùp cuûa cron nhö 
sau. 

Phuùt   giôø   ngaøy_cuûa_thaùng  thaùng_cuûa_naêm ngaøy_cuûa_tuaàn  leänh 
0          8     *       

   *                          1                         /u/sartin/bin/status_report 

cho pheùp /u/sartin/bin/status_report ñöôïc thöïc hieän vaøo 8giôø 00 phuùt caùc thöù hai. 
Moãi haøng chöùa thôøi gian vaø leänh. Leänh seõ ñöôïc cron thöïc hieän taïi thôøi ñieåm ghi ôû 

tröôùc treân cuøng doøng ñoù. Naêm coät ñaàu lieân quan tôùi thôøi gian coù theå thay theá baèng daáu sao 
‚*‛ vôùi yù nghóa laø ‚vôùi moïi‛. Caùc giaù trò coù theå cho caùc tröôøng laø :  

minute (0-59) 

hour (0-23) 

day of month (1-31) 

month of year (1-12) 

day of week (0-6, 0 is Sunday) 

Command (rest of line) 
Sau  ñoù  duøng  leänh  crontab  ñeå  caøi  ñaët  taäp  tin  leänh  vaøo  thö  muïc 

/usr/spool/cron/crontabs. Moãi ngöôøi söû duïng seõ coù moät taäp tin crontab truøng teân mình (user 
name) ñeå löu taát caû caùc leänh caàn thöïc hieän theo chu kyø trong thö muïc naøy. Cuù phaùp söû 
duïng crontab

crontab teân_taäp_tin_leänh 
Sau khi hieåu roõ caáu truùc caùc taäp tin, ngöôøi söû duïng coù theå töï taïo caùc taäp tin crontab vaø 

ñaët vaøo thö muïc theo ñuùng quy ñònh cuûa cron maø khoâng caàn phaûi duøng crontab.  Ñieàu naøy 
coøn ñuùng cho ñaïi ña soá caùc dòch vuï khaùc. Caùc chöông trình cuûa Unix thöôøng tuaân theo moät 
quy taéc laø coù caùc taäp tin caáu hình daïng text. Caùc taäp tin naøy hoaøn toaøn coù theå ñöôïc taïo ra 
baèng caùc phaàn meàm soaïn thaûo vaên baûn. Caùc chöông trình tieän ích chæ laø coâng cuï trôï giuùp 
neáu ngöôøi söû duïng muoán vaø khoâng mang tính chaát baét buoäc. Ñeå coù theå trôû thaønh moät ngöôøi 
quaûn trò Unix thöïc thuï, baïn ñoïc neân taäp daàn cung caùch caáu hình tröïc tieáp khoâng thoâng qua 
caùc tieän ích. 

Leänh top. Leänh top cho pheùp hieån thò söï hoaït ñoäng cuûa caùc tieán trình, ñaëc bieät laø caùc 

thoâng tin veà taøi nguyeân heä thoáng cuõng nhö vieäc söû duïng taøi nguyeân ñoù cuûa töøng tieán trình. 
Vôùi leänh ñôn giaûn top, ta seõ coù  

 

11:09am  up 46 days, 17:44,  2 users,  load average: 0.08, 0.03, 0.01 

63 processes: 61 sleeping, 2 running, 0 zombie, 0 stopped 

CPU states:  0.1% user,  0.0% system,  0.0% nice, 99.8% idle 

Mem:   126644K av,  121568K used, 5076K free,  0K shrd,   25404K buff 

Swap:  136544K av, 9836K used,  126708K free  36040K cached 

background image

 

-9- 

 

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME COMMAND 

27568 tnminh    11   0  1052 1052   836 R     0.1  0.8   0:00 top 

    1 root       0   0   124   72    68 S     0.0  0.0   0:25 init 

    2 root       8   0     0    0     0 SW    0.0  0.0   0:00 kevent 

Soá % maùy raûnh (idle) in ñaäm treân laø raát quan troïng. Moät maùy raûnh döôùi 50% laø moät 

maùy quaù taûi vaø caàn ñöôïc xem xeùt. Leänh top coøn cho pheùp theo doõi xem coù tieán trình naøo 
chieám duïng quaù nhieàu thôøi gian CPU cuõng nhö truy caäp ñóa khoâng. 

Ngoaøi ra, moät soá leänh khaùc nhö vmstat. Mpstat, sar, iostat ... cuõng cho pheùp xem xeùt 

vôùi caùc muïc ñích khaùc nhau hoaït ñoäng cuûa maùy chuû. 

 

Inetd vaø caùc dòch vuï maïng : 
Unix coù hai caùch ñeå toå chöùc caùc dòch vuï maïng: hoaëc laø khôûi ñoäng ngay töø ñaàu chöông 

trình server döôùi daïng daemon, hoaëc laø ñeå coâng taùc khôûi ñoäng chöông trình dòch vuï theo 
yeâu caàu (khi coù yeâu caàu keát noái) vôùi söï trôï giuùp cuûa moät tieán trình daemon khaùc laø inetd 
(ñoïc laø ineùt ñeâ). Trong tröôøng hôïp ñaàu, ta caàn cho moãi dòch vuï ít nhaát moät daemon vaø taøi 
nguyeân cuûa heä thoáng bò söû duïng ngay caû khi khoâng coù yeâu caàu keát noái. Coøn trong tröôøng 
hôïp sau ta caàn moät daemon cho taát caû caùc dòch vuï. Taøi nguyeân heä thoáng chæ thöïc söï bò 
chieám duïng khi coù yeâu caàu keát noái. Vì vaäy, chöông trình server daïng daemon thöôøng tröïc 
ñöôïc duøng cho caùc dòch vuï coù yeâu caàu keát noái thöôøng xuyeân nhö DNS, mail, Web ; coøn sô 
ñoà qua inetd daønh cho caùc dòch vuï vôùi taàn soá thöa nhö ftp, telnet, secure shell … 

Chöông trình inetd, coøn goïi laø super-server, ñöôïc söû duïng ñeå khôûi ñoäng caùc daemon 

phuïc vuï caùc dòch vuï maïng. inetd ñôïi caùc noái maïng sau moät soá coång ñöôïc quy ñònh bôûi taäp 
tion caáu hình /etc/inetd.conf. RedHat Linux 7.1 söû duïng taäp tin /etc/xinetd.conf vaø caùc taäp 
tin  trong  thö  muïc  /etc/xinet.d.  Khi  coù  yeâu  caàu  keát  noái,  inetd  seõ  goïi  chöông  trình  server 
töông öùng ñeå thieát laäp caùc keát noái vaø phuïc vuï khaùch haøng. Thoâng thöôøng, inetd ñöôïc khôûi 
ñoäng  ngay  töø  ñaàu  bôûi  caùc  script  duøng  cho  khôûi  ñoäng  maùy.  inetd  seõ  ñoïc  file  caáu  hình 
/etc/inetd.conf khi ñöôïc goïi leân boä nhôù . Sau ñaây laø moät vaøi doøng cuûa taäp tin /etc/inetd.conf 

 

#  <service_name>  <sock_type>  <proto>  <flags>  <user>  <server_path> 

<args> 

# Echo, discard, daytime, and chargen are used primarily for testing. 

# To re-read this file after changes, just do a 'killall -HUP inetd' 

#time   stream  tcp     nowait  root    internal 

#time   dgram   udp     wait    root    internal 

# These are standard services. 

ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  in.ftpd -l -a 

telnet  stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd 

 

background image

 

-10- 

Beân caïnh taäp tin caáu hình /etc/inetd.conf, taäp tin /etc/services cuõng ñöôïc inetd söû 

duïng  ñeå  bieát  caùc  coång  (port)  cuûa  caùc  chöông  trình  server.  Ví  duï  moät  ñoaïn  cuûa  taäp  tin 
/etc/services 

 

ftp-data        20/tcp 

ftp             21/tcp 

fsp             21/udp        fspd 

ssh             22/tcp 

 

# SSH Remote Login Protocol 

ssh             22/udp        # SSH Remote Login Protocol 

telnet          23/tcp 

# 24 - private 

smtp            25/tcp        mail 

# 26 - unassigned 

time            37/tcp        timserver 

time            37/udp        timserver 

rlp            39/udp  

 

resource    # resource location 

nameserver    42/tcp          name            # IEN 116 

whois         43/tcp          nicname 

re-mail-ck    50/tcp         # Remote Mail Checking Protocol 

re-mail-ck      50/udp       # Remote Mail Checking Protocol 

domain          53/tcp          nameserver      # name-domain server 

domain          53/udp          nameserver                                   

 
Hai taäp tin /etc/inetd.conf vaø /etc/services quan heä maät thieát vôùi nhau. Coät ñaàu tieân 

bao goàm teân caùc dòch vuï maïng vaø caàn phaûi gioáng nhau. Moät dòch vuï muoán  ñöôïc  hoaït 
ñoäng nhôø inetd phaûi khai baùo coång maø noù ñôïi khaùch haøng thoâng qua /etc/services vaø doøng 
leänh khôûi ñoäng noù trong /etc/inetd.conf. Muoán taét moät dòch vuï, ta chæ caàn ñaët daáu chuù thích 
# tröôùc doøng mieâu taû dòch vuï vaø khi ñoù, inetd seõ khoâng bieát vaø khoâng goïi dòch vuï ñoù nöõa. 
Nhö caùc baïn ñoïc nhaän thaáy noäi dung cuûa coät  <server_path> <args> cho caùc dòch vuï laø 
/usr/sbin/tcpd  in.telnetd. 
Chöông trình tcpd ñöôïc inetd  goïi leân tröôùc ñeå laøm moät soá coâng 
taùc kieåm tra vaø ghi log tröôùc khi chöông trình dòch vuï thöïc ñöôïc goïi leân. Cuï theå laø tcpd seõ 
söû duïng  

Coät <flags> cho bieát chöông trình inetd coù phaûi ñôïi (wait) hay khoâng (nowait) keát noái 

keát thuùc tröôùc khi ‚tieáp‛ moät keát noái khaùc. Ví duï treân vôùi telnet cho thaáy nhieàu chöông 
trình khaùch coù theå ñöôïc phuïc vuï moät luùc qua cuøng moät coång telnet 23. Taát nhieân chöông 
trình server telnet cuõng phaûi ñöôïc thieát keá thích hôïp vôùi kieåu laøm vieäc ña khaùch haøng naøy. 

Coät  <user>  quy  ñònh  quyeàn  cuûa  tieán  trình  khi  noù  ñöôïc  chaïy  treân  boä  nhôù.  Trong 

tröôøng hôïp coù nghi ngôø veà tính baûo maät cuûa moät dòch vuï, ta coù theå giaûm quyeàn cuûa noù 
baèng caùch thay ñoåi noäi dung cuûa coät naøy. 

background image

 

-11- 

Qua  ví  duï  treân  ta  thaáy  dòch  vuï  ftp  seõ  ñöôïc  inetd  goïi  leân  thoâng  qua  doøng  leänh 

/usr/sbin/tcpd  in.ftpd -l –a 

khi coù moät chöông trình khaùch haøng duøng giao 

thöùc TCP goïi qua coång 21. 

Ñoïc theâm. Tieán trình ñöôïc sinh ra nhö theá naøo?  Treân moät maùy chuû Unix, thöôøng 
coù haøng chuïc tieán trình ñang ñoàng thôøi hoaït ñoäng. Treân nhöõng maùy chuû lôùn vaø baän 
bòu, coù theå coù haøng ngaøn tieán trình cuøng luùc. Vaäy tieán trình ñöôïc hình thaønh nhö theá 
naøo ?  
Neáu con ngöôøi ñöôïc sinh ra bôûi con ngöôøi thì tieán trình cuõng sinh ra bôûi tieán trình. 
Chæ coù moät ñieàu khaùc laø phaûi caàn 2 ngöôøi laøm cha meï môùi coù treû em (tröø nhöõng döï 
ñònh clone ngöôøi hieän nay), coøn tieán trình thì chæ coù moät tieán trình cha. Khi heä thoáng 
khôûi ñoäng, tieán trình ñaàu tieân laø init. Sau ñoù, init seõ sinh ra caùc tieán trình khaùc caàn 
thieát  cho  söï  hoaït  ñoäng cuûa  heä  thoáng.  Ví  duï  moãi  khi  ta  ñaêng  nhaäp  heä  thoáng,  tieán  
trình login sau khi kieåm tra maät khaåu seõ sinh ra moät  tieán trình  shell ñeå ngöôøi söû 
duïng coù theå laøm vieäc thoâng qua caùc doøng leänh cuûa shell. Coù 2 leänh lieân quan tôùi 
vieäc  hình  thaønh  caùc  tieán  trình  laø  leänh  fork  vaø  execve.  Leänh  fork  cho  pheùp  hình 
thaønh moät tieán trình con gioáng heät tieán trình cha vaø caû hai sau ñoù cuøng ñöôïc song 
song hoaït ñoäng vaø ñöôïc HÑH ñoái xöû nhö nhau. Hai tieán trình naøy chæ khaùc nhau veà 
PID vaø ngöôøi ta coù theå bieát raèng hieän ñang ôû tieán trình baèng caùch xem giaù trò trôû veà 
cuûa leänh fork: neáu baèng 0, ta ñang ôû tieán trình cha, neáu khaùc 0 thì ñoù laø PID cuûa 
tieán trình con.  Leänh execve thì thay theá moät tieán trình baèng moät tieán trình khaùc. 
Nhö vaäy, neáu ta ñang coù moät tieán trình A, tieán trình B coù theå sinh ra töø A baèng caùch 
A fork ra A’ roài trong A’ ta duøng leänh execve ñeå thay theá A’ baèng B.  
Ñoaïn chöông trình sau cho pheùp hieåu roõ hôn caùc mieâu taû treân 

 

if (fork() == 0) { 

 

/* I am the child, I will become ls /usr/bin */ 

 

execl(―/bin/ls‖,‖ls‖,‖/usr/bin‖, (char *) 0); 

 

else { 

 

 

/* I’m parent, do whatever perent’s sopposed to do*/ 

 

 

Caùc bieán taáu cuûa execve taïo thaønh moät hoï caùc haøm exec (exec family). Linux coù 
theâm clone  ñeå taïo caùc threads (tieåu tieán trình). Trong tröôøng hôïp heä thoáng quaù taûi, 
leänh fork seõ khoâng thaønh coâng do taøi nguyeân ñaõ bò veùt caïn. Khi ñoù ta seõ coù thoâng 
baùo loãi treân maøn hình gaén tröïc tieáp vôùi maùy chuû vaø maùy chuû caàn ñöôïc xem xeùt söûa 
chöõa hoaëc naâng caáp. 
 

background image

 

-12- 

III.   Heä thoáng taäp tin cuûa Linux : 

III.1 Caây thö muïc cuûa Linux. Ñoái vôùi heä ñieàu haønh Linux, khoâng coù khaùi nieäm caùc oå 

ñóa khaùc nhau. Sau quaù trình khôûi ñoäng, toaøn boä caùc thö muïc vaø taäp tin ñöôïc ‚gaén‛ leân 
(mount) vaø taïo thaønh moät heä thoáng taäp tin thoáng nhaát, baét ñaàu töø goác ‘/’  

 

/-----+ 

 

!-------/bin 

 

!-------/sbin 

 

!-------/usr------/usr/bin 

 

     !------/usr/sbin 

 

 

 

     !------/usr/local 

 

     !------/usr/doc 

      ! 

 

!-------/etc 

 

!-------/lib 

 

!-------/var-------/var/adm 

 

 

     !-------/var/log 

 

 

 

     !-------/var/spool 

 

Hình treân laø caây thö muïc cuûa ña soá caùc Unix. Vôùi caây thö muïc treân ta khoâng theå naøo 

bieát ñöôïc soá löôïng oå ñóa cöùng, caùc phaân maûnh (partition) cuûa moãi ñóa vaø söï töông öùng giöõa 
caùc phaân maûnh vaø thö muïc nhö theá naøo. 

Chuùng ta coù theå chia ñóa cöùng thaønh nhieàu phaân maûnh (partition).  Moãi partition laø 

moät heä thoáng taäp tin (file system) ñoäc laäp. Sau ñoù, caùc heä thoáng taäp tin naøy ñöôïc ‘gaén ‘ 
(mount) vaøo heä thoáng taäp tin thoáng nhaát cuûa toaøn heä thoáng. Chuùng ta hoaøn toaøn coù theå gaén 
theâm moät ñóa cöùng môùi, format roài mount vaøo heä thoáng taäp tin döôùi teân moät thö muïc naøo 
ñoù vaø taïi moät ñieåm (mount point) naøo ñoù. Ñoái vôùi caùc chöông trình chaïy treân Unix, khoâng 
heà coù khaùi nieäm moät thö muïc naèm ôû ñóa naøo hay partition naøo. 

background image

 

-13- 

Hình sau ñaây cho thaáy söï töông quan giöõa vò trí vaät lyù treân ñóa vaø vò trí logic trong caây 

taäp tin. 
 

!-----------------------------------! 

!           / 

 

 

 

 

 

 

 

 

 

 

------------------! 

 

 

      ------------- 

 

 

 

 

 

!  < == > 

 

 

 

 

 

 

 

 

 

 

 

/usr   

 

 

 

 

/usr   

/squid 

 !-

----------------------------------!  

 

 

 

 

 

 

/usr/home 

!         /usr/home 

 

 

!-----------------------------------!  

!         /squid   

 

 

!-----------------------------------!  

 

Thö muïc /usr/home laø thö muïc con cuûa /usr trong caây thö muïc, nhöng treân ñóa vaät lyù, 

ñaây laø hai phaân maûnh (partition) caïnh nhau. 

Heä thoáng taäp tin ñöôïc OS Linux mount trong quaù trình khôûi ñoäng tuaân theo caùc thoâng 

soá ghi trong taäp tin /etc/fstab (moät laàn nöõa, neáu baïn naém vöõng cuù phaùp cuûa taäp tin naøy, 
baïn coù theå thay ñoåi noù thoâng qua moät chöông trình soaïn thaûo vaên baûn text baát kyø vaø coù moät 
kieåu khôûi ñoäng heä thoáng taäp tin nhö baïn muoán) 

[tnminh@pasteur tnminh]$ more /etc/fstab 

/dev/hda2 

 

ext2   

defaults 

1 1 

/dev/hda3 

swap   

swap   

defaults    0 0 

/dev/fd0 

/mnt/floppy ext2   

noauto      0 0 

/dev/cdrom 

/mnt/cdrom  iso9660 

noauto,ro   0 0 

none         /proc        proc     

defaults    0 0 

none          /dev/pts    devpts   

mode=0622   0 0 

 
Coät 1  (fs_spec) : caùc trang thieát bò (device) caàn mount 

2 (fs_file) : ñieåm treo (mount point) 

3 (fs_vfstype) : Kieåu cuûa heä thoáng taäp tin, 

4 (fs_mntops) : caùc options. Default = mount khi khôûi ñoäng, ro = read only, 

user neáu cho pheùp user mount heä thoáng taäp tin naøy  ... 

5 (fs_freq) : hieän thò (dumped ) hay khoâng heä thoáng taäp tin 

6 (fs_passno) : coù caàn kieåm tra hay khoâng bôûi fsck  

 

background image

 

-14- 

Taäp tin /etc/fstab ñöôïc söû duïng bôûi chöông  trình mount trong quaù trình khôûi ñoäng 

cuûa Linux. Doøng  

/dev/cdrom    /mnt/cdrom  iso9660  

noauto,ro      0 0 

cho  pheùp  oå  CDROM  coù  theå  mount  theo  yù  muoán  cuûa  ngöôøi  duøng  (khoâng  mount 

automatic) vaø gaén vaøo /mnt/crdom vôùi kieåu heä thoáng taäp tin iso9660 vôùi muïc ñích chæ ñoïc. 
Neáu khoâng coù töø khoùa user thì chæ coù root môùi ñöôïc quyeàn mount oå CDROM. Vôùi taäp tin 
/etc/fstab nhö treân thì leänh mount/unmount oå CDROM seõ laø : 

mount /dev/cdrom hay umount /dev/cdrom 
 
Mount khoâng coù thoâng soá cho pheùp hieån noäi dung taäp tin /etc/mtab = nhöõng heä thoáng 

taäp tin ñaõ ñöôïc mounted. 

[root@pasteur tnminh]# mount 

/dev/hda2 on / type ext2 (rw) 

none on /proc type proc (rw) 

none on /dev/pts type devpts (rw,mode=0622) 

/dev/hda1 on /home/tnminh/minh type vfat (rw) 

So saùnh vôùi  

[root@pasteur tnminh]# more /etc/mtab 

/dev/hda2 / ext2 rw 0 0 

none /proc proc rw 0 0 

none /dev/pts devpts rw,mode=0622 0 0 

/dev/hda1 

/home/tnminh/minh 

vfat 

rw 

 

ÔÛ ñaây chuùng ta thaáy 2 doøng ñaëc bieät :  

 

none /proc proc rw 0 0 

none /dev/pts devpts rw,mode=0622 0 0 

 
/dev chöùa nhöõng taäp tin ñaëc bieät : taäp tin thieát bò ngoaïi vi. Heä thoáng Linux söû duïng 

caùc taäp tin naøy ñeå truy xuaát döõ lieäu ñeán caùc thieát bò ngoaïi vi. Nhö vaäy, Linux giao tieáp ñeán 
caùc thieát bò ngoaïi vi gioáng nhö vôùi caùc taäp tin. Ví duï /dev/psaux ñöôïc duøng ñeå giao tieáp vôùi 
chuoät, /dev/hda1 ñeå giao tieáp vôùi phaân maûnh 1 cuûa ñóa cöùng master cuûa controler soá 0...  

 

brw-rw----   1 root     disk       3,   1 May  6  1998 hda1    

crw-rw-r--   1 root     root      10,   1 May  6  1998 psaux  

crw-------   1 root     tty        4,  64 Oct  3 15:55 ttyS0 

crw-------   1 root     tty        4,  65 May  6  1998 ttyS1 

crw-------   1 root     tty        4,  66 May  6  1998 ttyS2 

crw-------   1 root     tty        4,  67 May  6  1998 ttyS3 

background image

 

-15- 

Kyù töï  coät ñaàu tieân ‘b’ ñeå thoâng baùo kieåu giao tieáp block (cho thieát bò nhö oå ñóa), ‘c’ 

– giao tieáp kieåu kyù töï  (cho thieát bò nhö  baøn phím, chuoät …). 

Toùm laïi, ta nhaän thaáy caây thö muïc cuûa Unix cuõng gioáng nhö caây thö muïc cuûa MS 

DOS hay Windows. 
/proc laø heä thoáng taäp tin aûo cho pheùp ñoïc caùc thoâng tin cuûa caùc process treân boä nhôù. Ñeå 
thöïc taäp , ta coù theå duøng ps ñeå coi caùc tieán trình vaø thaáy caùc taäp tin töông öùng trong /proc 
nhö ví duï sau : 

 

[oracle@appserv]$ ps ax|grep 582 

  582 ?        S      0:17 nmbd -D 

 8724 pts/5    S      0:00 grep 582 

[oracle@appserv]$ cd /proc/582 

[oracle@appserv 582]$ ls -l 

ls: exe: Permission denied 

ls: root: Permission denied 

ls: cwd: Permission denied 

total 0 

-r--r--r--    1 root     root            0 Oct 12 17:39 cmdline 

lrwx------    1 root     root            0 Oct 12 17:39 cwd 

-r--------    1 root     root            0 Oct 12 17:39 environ 

lrwx------    1 root     root            0 Oct 12 17:39 exe 

dr-x------    2 root     root            0 Oct 12 17:39 fd 

pr--r--r--    1 root     root            0 Oct 12 17:39 maps 

-rw-------    1 root     root            0 Oct 12 17:39 mem 

lrwx------    1 root     root            0 Oct 12 17:39 root 

-r--r--r--    1 root     root            0 Oct 12 17:39 stat 

-r--r--r--    1 root     root            0 Oct 12 17:39 statm 

-r--r--r--    1 root     root            0 Oct 12 17:39 status 

[oracle@appserv 582]$ more cmdline 

nmbd-D 

[oracle@appserv 582]$ 

 
Caùc kyù töï in ñaäm trong ví duï treân cho pheùp thaáy ñöôïc moái lieân heä giöõa /proc vaø tieán 

trình ñang chaïy. Caùc thao taùc treân coù theå thöïc hieän bôûi moät user baát kyø. 

 
III.2  Quyeàn  truy  caäp,  sôû  höõu  taäp  tin  vaø  thö  muïc  cuûa  Linux  (directory  and  file 

permission and ownership) :  

Do Linux laø moät heä ñieàu haønh multitasking vaø multiuser, nhieàu ngöôøi cuøng coù theå söû 

duïng moät maùy Linux vaø moät ngöôøi coù theå cho chaïy nhieàu chöông trình khaùc nhau. Coù hai 
vaán ñeà lôùn ñöôïc ñaët  ra : quyeàn sôû höõu caùc döõ  lieäu treân ñóa vaø phaân chia taøi nguyeân heä 

background image

 

-16- 

thoáng nhö  CPU, RAM ... giöõa caùc process. Chuùng ta seõ baøn veà sôû höõu caùc taäp tin vaø caùc 
quyeàn truy xuaát taäp tin. 

Taát caû caùc taäp tin vaø thö muïc cuûa Linux ñeàu coù ngöôøi sôû höõu vaø quyeàn truy nhaäp. 

Baïn coù theå ñoåi caùc tính chaát naøy cho pheùp nhieàu hay ít quyeàn truy nhaäp hôn ñoái vôùi moät 
taäp tin hay thö muïc. Quyeàn cuûa taäp tin coøn cho pheùp xaùc ñònh taäp tin coù laø moät chöông 
trình  (application)  hay  khoâng  (khaùc  vôùi  MSDOS  vaø  MSWindows  xaùc  ñònh  tính  chaát  naøy 
qua phaàn môû roäng cuûa teân taäp tin) .Ví duï vôùi leänh ls –l chuùng ta coù theå thaáy   

 

-rw-r—r— 1 fido users 163 Dec 7 14:31 myfile 

 
Coät ñaàu chæ ra quyeàn truy caäp taäp tin 
Coät 2 chæ soá lieân keát (link) ñoái vôùi taäp tin hay thö muïc 
Coät 3, 4 chæ chuû sôû höõu vaø nhoùm sôû höõu 
Coät 5 chæ ñoä daøi cuûa taäp tin 
Coät 6 chæ thôøi gian thay ñoåi cuoái cuøng 
Coät 7 laø teân taäp tin hay thö muïc 
Trong ví duï treân, caùc kyù töï -rw-r—r— bieåu thò quyeàn truy caäp cuûa taäp tin myfile. Sôû 

höõu cuûa myfile laø fido vaø nhoùm sôû höõu myfile laø  users . Fido  ñöôïc quyeàn ñoïc vaø ghi vaøo 
myfile, coøn nhöõng ngöôøi söû duïng cuûa nhoùm  users vaø nhöõng ngöôøi khaùc chæ ñöôïc quyeàn 
ñoïc myfile. 

Linux cho pheùp ngöôøi söû duïng xaùc ñònh caùc quyeàn ñoïc (read), vieát (write) vaø thöïc 

hieän (execute)  cho töøng ñoái töôïng trong nhoùm sau : sôû höõu (the owner), nhoùm (the group), 
vaø nhöõng ngöôøi coøn laïi ("others" (everyone else)).  

Quyeàn ñoïc cho pheùp baïn ñoïc noäi dung cuûa taäp tin. Ñoái thö muïc quyeàn ñoïc cho pheùp 

baïn söû duïng leänh ls ñeå xem noäi dung cuûa thö muïc. 

Quyeàn vieát cho pheùp baïn thay ñoåi noäi dung hay xoùa taäp tin. Ñoái vôùi thö muïc, quyeàn 

vieát cho pheùp baïn taïo ra, xoùa hay thay ñoåi teân trong thö muïc.  

Quyeàn thöïc hieän cho pheùp baïn goïi chöông trình leân boä nhôù baèng caùch nhaäp töø baøn 

phím teân cuûa taäp tin. Ñoái vôùi thö muïc, baïn chæ coù theå vaøo thö muïc bôûi leänh cd neáu baïn coù 
quyeàn thöïc hieän vôùi thö muïc . 

Xem xeùt laïi ví duï treân : 
 

-rw-r—r— 1 fido users 163 Dec 7 14:31 myfile

 

 
Kyù töï ñaàu tieân cuûa quyeàn laø kyù töï ‚–‚ aùm chæ raèng ñoù laø moät taäp tin bìnht thöôøng. 

Neáu myfile laø moät thö muïc, ta seõ thaáy vaøo dàoù kyù töï d. Ngoaøi ra coøn coù c  cho thieát bò ngoaïi 
vi daïng kyù töï (nhö baøn phím), cho thieát bò ngoaïi vi daïng block (nhö oå ñóa cöùng). 

background image

 

-17- 

Chín kyù töï tieáp theo chia thaønh 3 nhoùm, cho pheùp xaùc ñònh quyeàn cuûa ba nhoùm sôû 

höõu (owner), nhoùm (group) vaø coøn laïi (other). Moãi caëp ba naøy cho pheùp xaùc ñònh quyeàn 
ñoïc, vieát vaø thöïc hieän theo thöù töï keå treân. Quyeàn ñoïc vieát taét laø ‚r‛ ôû vò trí ñaàu tieân, quyeàn 
vieát vieát taét baèng ‚w‛ ôû vò trí thöù hai vaø vò trí thöù ba laø quyeàn thöïc hieän kyù hieäu baèng chöõ 
x‛ . Neáu moät quyeàn khoâng ñöôïc cho, taïi vò trí ñoù seõ coù kyù töï ‚-‚ . 

Trong tröôøng hôïp cuûa taäp tin myfile, sôû höõu coù quyeàn rw töùc laø ñoïc vaø vieát. Myfile 

khoâng phaûi laø moät chöông trình. Nhoùm cuøng vôùi coøn laïi chæ coù quyeàn ñoïc taäp tin (read-
only). Hình sau cho ta thaáy roõ hôn caùch ‚ñoïc‛ quyeàn truy caäp ñoái vôùi taäp tin. 

Quyeàn truy caäp cô baûn cuûa taäp tin 
 

 

 
Song song vôùi caùch kyù hieäu mieâu taû baèng kyù töï nhö ôû treân, quyeàn thao taùc taäp tin coøn 

coù theå cho döôùi daïng 3 soá . Ñoái vôùi myfile, quyeàn ñoù laø 644. Ñieàu quan troïng laø phaûi hieåu 
caùch kyù hieäu baèng soá vì noù lieân quan ñeán vieäc thay ñoåi caùc quyeàn sau naøy. Caùc soá coù theå 
nhaän taát caû caùc giaù trò töø  0 ñeán 7. Soá ñaàu tieân mieâu taû quyeàn cuûa sôû höõu, soá thöù hai cho 
nhoùm vaø soá thöù ba cho coøn laïi.  

Moãi soá laø toång cuûa caùc quyeàn theo quy taéc sau :  

read permission 

 

4

  

Write permission 

 

2

  

Execute permission 

 

1

  

 

Vì  vaäy,  moät  taäp  tin  vôùi  quyeàn  751  coù  nghóa  laø  sôû  höõu  coù  quyeàn  read,  write,  vaø 

execute baèng 4+2+1=7, Nhoùm coù quyeàn  read vaø execute baèng 4+1=5, vaø coøn laïi coù quyeàn 
execute baèng 1.  

Neáu chuùng ta xem kyõ, chuùng ta seõ thaáy moïi soá töø 0 ñeán 7 ñeàu töông öùng vôùi moät toå 

hôïp duy nhaát caùc quyeàn truy nhaäp taäp tin.  

 

0 or —-: No permissions at all  
4 or r—: read-only  
2 or -w-: write-only (rare)  
1 or —x: execute  

background image

 

-18- 

6 or rw-: read and write  
5 or r-x: read and execute  
3 or -wx: write and execute (rare)  
7 or rwx: read, write, and execute  

 

Neáu baïn quen vôùi heä nhò phaân, haõy suy nghó baèng heä thoáng nhò phaân. Khi ñoù,  rwx 
seõ nhö soá nhò phaân 3 bits. Neáu quyeàn ñöôïc cho, soá nhò phaân töông öùng seõ baèng 1, 
ngöôïc laïi, noù seõ baèng 0. Ví duï  r-x seõ laø soá nhò phaân 101, vaø theo heä thaäp phaân seõ laø 
4+0+1, hay 5. —x seõ töông öùng 001, hay 0+0+1 = 1 …  

Chuù yù: Ngöôøi söû duïng coù quyeàn ñoïc thì coù quyeàn copy taäp tin vaø taäp tin sao 

cheùp seõ thuoäc sôû höõu ngöôøi laøm copy nhö minh hoïa sau  

 [tnminh@backup tnminh]$ ls -l /etc/passwd 

-rw-r--r--    1 root     root    1113 Oct 13 12:30 /etc/passwd 

[tnminh@backup tnminh]$  cp /etc/passwd ./ 

[tnminh@backup tnminh]$ ls -l passwd  

-rw-r--r--    1 tnminh   admin        1113 Oct 15 10:37 passwd 

Caùc quyeàn d9ònh khi taïo taäp tin. Khi moät taäp tin hay thö muïc ñöôïc taïo ra, permission 

maëc ñònh seõ ñöôïc xaùc ñònh bôûi caùc quyeàn tröø bôùt bôûi caùc quyeàn hieån thò baèng umask 

[tnminh@pasteur tnminh]$ umask 

002 

[tnminh@pasteur tnminh]$ echo tao mot file > tmp 

[tnminh@pasteur tnminh]$ ls -l 

total 5472 

-rw-rw-r--   1 tnminh   tnminh         13 Oct  3 21:55 tmp 

 [tnminh@pasteur /etc]$ umask 022 

[tnminh@pasteur tnminh]$ echo tao mot file khac >tmp1 

[tnminh@pasteur tnminh]$ ls -l 

-rw-rw-r--   1 tnminh   tnminh         13 Oct  3 21:55 tmp 

-rw-r--r--   1 tnminh   tnminh         18 Oct  3 21:59 tmp1 

 
Trong ví duï treân, quyeàn maëc ñònh luùc ñaàu xaùc ñònh bôûi umask=002. Khi ñoù, taäp tin 

tmp taïo ra seõ coù quyeàn laø 664 vaø ñoù chính laø buø ñeán 6 cuûa umask. Quyeàn thöïc hieän chöông 
trình caàn ñöôïc gaùn coá yù bôûi ngöôøi söû duïng hay caùc chöông trình bieân dòch. Sau ñoù ta ñoåi 
giaù trò cuûa umask thaønh 022 vaø taäp tin taïo ra coù quyeàn 644. Giaù trò maëc ñònh cuûa caùc quyeàn 
thöôøng ñöôïc gaùn moãi khi ngöôøi söû duïng login vaøo heä thoáng thoâng qua caùc taäp tin khôûi taïo 
bieán moâi tröôøng nhö .profile, .bashrc. Ñöùng treân quan ñieåm baûo maät heä thoáng, giaù trò 024 
laø  toát  nhaát,  noù  cho  ngöôøi  cuøng  nhoùm  coù  quyeàn  ñoïc  vaø  khoâng  cho  quyeàn  naøo  vôùi  nhöõng 
ngöôøi khaùc. 

- Leänh chown, chgrp vaø chmod : 
Ñaây laø nhoùm leänh ñöôïc söû duïng raát phoå bieán, cho pheùp thay quyeàn truy caäp cuûa taäp 

tin hay thö muïc. Chæ coù chuû sôû höõu vaø superuser môùi coù quyeàn thöïc hieän caùc leänh naøy. 

background image

 

-19- 

 
Caùch duøng leänh : chmod   quyeàn_truy_caäp_môùi    teân_file.  
 
darkstar:~$ ls -l myfile  
-rw-r—r— 1 fido users 114 Dec 7 14:31 myfile  
darkstar:~$ chmod 345 myfile  
darkstar:~$ ls -l myfile  
—wxr—r-x 1 fido users 114 Dec 7 14:31 myfile  
darkstar:~$ chmod 701 myfile  
darkstar:~$ ls -l myfile  
-rwx——x 1 root users 114 Dec 7 14:31 myfile 
 
Ví duï thay ñoåi vaø hieän thò cho thaáy söï thgay ñoåi quyeàn truy caäp taäp tin myfile . Chuù yù 

laø ta coù quyeàn caáp phaùt quyeàn thöïc hieän (execute) maø khoâng caàn bieát laø taäp tin coù phaûi laø 
moät chöông trình hay khoâng. 

Phöông  phaùp  thay  ñoåi  tuyeät  ñoái  naøy  coù  moät  soá  öu  ñieåm  vì  noù  laø  caùch  ñònh  quyeàn 

tuyeät  ñoái,  keát  quaû  cuoái  cuøng  khoâng  phuï  thuoäc  vaøo  quyeàn  truy  caäp  tröôùc  ñoù  cuûa  taäp  tin. 
Ñoàng thôøi, deã noùi ‚thay quyeàn taäp tin thaønh baûy-naêm-naêm‛ thì deã hôn laø ‚thay quyeàn taäp 
tin thaønh ñoïc-vieát-thöïc hieän, ñoïc-thöïc hieän, ñoïc-thöïc hieän‛  

Baïn cuõng coù theå thay ñoåi quyeàn truy nhaäp moät caùch töông ñoái vaø deã nhôù. Ñeå chæ ra 

nhoùm quyeàn naøo caàn thay ñoåi, baïn coù theå söû duïng u (user), g (group), o (other), hay a 
(all)
. Tieáp theo ñoù laø daáu + ñeå theâm quyeàn vaø – ñeå bôùt quyeàn. Cuoái cuøng laø baûn thaân caùc 
qyuyeàn vieát taét bôûi r,w,x. Ví duï nhö ñeå boå sung quyeàn thöïc hieän cho nhoùm vaø coøn laïi, ta 
nhaäp vaøo doøng leänh  

darkstar:~$ chmod go+x myfile   
Ñaây laø caùch thay ñoåi töông ñoái vì keát quaû cuoái cuøng phuï thuoäc vaøo quyeàn ñaõ coù tröôùc 

ñoù maø leänh naøy khoâng lieân quan ñeán. Treân quan ñieåm baûo maõt heä thoáng, caùch thay ñoåi 
tuyeät ñoái daãn ñeán ít sai soùt hôn. Thay ñoåi quyeàn truy caäp cuûa moät thö muïc cuõng ñöôïc thöïc 
hieän gioáng nhö ñoái vôùi moät taäp tin. Chuù yù laø neáu baïn khoâng coù quyeàn thöïc hieän (execute) 
ñoái vôùi moät thö muïc, baïn khoâng theå thay ñoåi thö muïc cd vaøo thö muïc ñoù. Moïi ngöôøi söû 
duïng coù quyeàn vieát vaøo thö muïc ñeàu coù quyeàn xoùa taäp tin trong thö muïc ñoù, khoâng phuï 
thuoäc vaøo quyeàn cuûa ngöôøi ñoù ñoái vôùi taäp tin. Vì vaäy, ña soá caùc thö muïc coù quyeàn drwxr-
xr-x
. Nhö vaäy chæ coù ngöôøi sôû höõu cuûa thö muïc môùi coù quyeàn taïo vaø xoùa taäp tin trong thö 
muïc.  Ngoaøi  ra,  thö  muïc  coøn  coù  moät  quyeàn  ñaëc  bieät,  ñoù  laø  cho  pheùp  moïi  ngöôøi  ñeàu  coù 
quyeàn taïo taäp tin trong thö muïc, moïi ngöôøi ñeàu coù quyeàn thay ñoåi noäi dung taäp tin trong thö 
muïc, nhöng chæ coù ngöôøi taïo ra môùi coù quyeàn xoùa taäp tin. Ñoù laø sticky bit cho thö muïc. Thö 
muïc /tmp thöôøng coù sticky bit baät leân  

drwxrwxrwt   7 root     root        16384 Oct 21 15:33 tmp 
Ta thaáy chöõ t cuoái cuøng trong nhoùm caùc quyeàn, theå hieän cho sticky bit cuûa /tmp 

background image

 

-20- 

 
III.3  Lieân keát (link) taäp tin
: Trong Unix coù 2 hình thöùc lieân keát hoaøn toaøn khaùc nhau, 

ñoù laø hard link vaø soft link hay symbolic link. Hard link cho pheùp taïo moät teân môùi cho taäp 
tin. Caùc teân naøy coù vai troø hoaøn toaøn nhö nhau vaø taäp tin chæ bò hoaøn toaøn xoùa boû khi hard 
link  cuoái  cuøng  cuûa  noù  bò  xoùa.  Leänh  ls  –l  cho  pheùp  hieån  thò  soá  hard  link  ñeán  taäp  tin. 
Symbolic link coù chöùc naêng gioáng nhö shortcut cuûa MS Windows. Khi ta ñoïc/ghi soft link, 
ta ñoïc/ghi taäp tin; khi ta xoùa symbolic link, ta chæ xoùa symbolic link vaø taäp tin ñöôïc giöõ 
nguyeân. Link ñöôïc taïo bôûi leänh ln . Töï choïn ln –s  cho pheùp taïo symbolic link. Ví duï  

 

[tnminh@pascal tnminh]$ls -l 

-rw-------   1 tnminh   pkt 

517 Oct 27 12:00 mbox 

drwxr-xr-x   2 tnminh   pkt 

4096 Aug 31 17:50 security 

[tnminh@pascal tnminh]$ln –s mbox mybox 

[tnminh@pascal tnminh]$ln –s security securproj 

[tnminh@pascal tnminh]$ln –l 

-rw-------   1 tnminh   pkt 

517 Oct 27 12:00  mbox 

lrwxrwxrwx   1 tnminh   pkt 

4 Oct 27 17:57  

mymail -> mbox 

lrwxrwxrwx   1 tnminh   pkt 

8 Oct 27 17:57  

secrproj -> security 

drwxr-xr-x   2 tnminh   pkt 

4096 Aug 31 17:50 security 

[tnminh@pascal tnminh]$ 

Baïn ñoïc coù theå thaáy khaù roõ keát quaû cuûa symbolic link qua thí duï treân. 
Symbolic link raát coù nhieàu öùng duïng. Ví duï nhö moät taäp tin XXX cuûa moät chöông 

trình YYY naèm trong thö muïc /var/ZZZ. Neáu phaân maûnh cuûa /var/ZZZ bò quaù ñaày, ta coù 
theå ‚sô taùn‛ XXX qua moät thö muïc khaùc thuoäc phaân maûnh khaùc vaø taïo moät link theá vaøo ñoù 
maø chöông trình YYY vaãn khoâng heà ‚hay bieát‛ vì noù vaãn truy caäp ñeán /var/ZZZ/XXX nhö 
thöôøng leä. 

background image

 

-21- 

Caùc thao taùc treân taäp tin. Caùc leänh cô baûn cho pheùp laøm vieäc vôùi caùc taäp tin laø  

ls : xem noäi dung moät thö muïc 
cp : copy taäp tin/thö muïc 
mv : di chuyeån taäp tin/thö muïc 
rm : xoaù taäp tin. rm –rf cho pheùp xoùa thö muïc khoâng roãng vaø taát caû caùc thö muïc con 
mkdir : taïo thö muïc môùi 
moreless, cat : xem noäi dung taäp tin 
diff : so saùnh noäi dung hai taäp tin 
touch : ghi laïi thôøi gian taäp tin hoaëc taïo taäp tin môùi neáu chöa coù 
vi, pico, emacs ... cho pheùp soaïn thaûo vaên baûn, laäp trình. 

Tieän ích mc gioáng nhö Norton Cammander treân DOS cho pheùp thao taùc deã daøng caùc taäp 
tin, keå caû thao taùc vôùi taäp tin cuûa maùy khaùc thoâng qua maïng. 

Leänh tar vaø gzip. Ñaây laø 2 leänh cho pheùp löu tröõ (backup) cuõng nhö sao cheùp döõ lieäu 

chuû yeáu cuûa Unix. Leänh tar cho pheùp ñoùng goùi moät heä thoáng taäp tin thaønh moät taäp tin vôùi 
phaàn ñuoâi .tar. Caáu truùc cuûa heä thoáng taäp tin naøy (heä thoáng caùc thö muïc con) ñöôïc löu tröõ 
vaø phuï hoài trong quaù trình môû goùi (untar). Leänh gzip cho pheùp neùn (compact) moät taäp tin. 
Thoâng thöôøng, ñeå löu tröõ, ngöôøi ta tar caùc döõ lieäu, roài sau ñoù zip taäp tin keát quaû cuûa tar. 
Quaù trình phuïc hoài laøm theo quy trình ngöôïc laïi. Leänh tar vaø tuøy choïn phoå bieán laø : 
Ñeå taïo ra moät löu tröõ tar   

 
    tar  -cv  dir_name  >  dir_name.tar 
 

Khi ñoù, toaøn boä noäi dung vaø caáu truùc thö muïc con cuûa dir_name seõ ñöôïc löu trong taäp tin 
dir_name.tar. Ngöôïc laïi, ñeå phuïc hoài löu tröõ, ta duøng  

 
    tar  -xvf  dir_name.tar

 

 
Leänh df, du. Leänh df (disk free) cho pheùp hieån thò tình traïng söû duïng cuûa caùc oå ñóa 

nhö dung löôïng, ñaõ söû duïng vaø dung löôïng coøn raûnh. Leänh du thö_muïc cho pheùp hieån thò 
ñoä lôùn cuûa thö muïc ñoù. 

Leänh fsck. Linux ñoøi hoûi caàn ñöôïc döøng theo ñuùng quy trình, töùc laø phaûi shutdown 

maùy tröôùc khi taét ñieän baèng coâng taéc. Moãi khi maùy Linux bò taét ñoät ngoät, heä thoáng taäp tin 
bò hö haïi vaø caàn ñöôïc söûa chöõa qua dòch vuï fsck (file system check). Thoâng thöôøng, fsck 
söûa chöõa thaønh coâng moät caùch töï ñoäng heä thoáng taäp tin vaø Linux khôûi ñoäng laïi deã daøng. 
Tuy nhieân, neáu hö hoûng quaù naëng, Linux seõ chuyeån qua cheá ñoä single mode ñeå söûa chöõa. 
Khi ñoù, chuùng ta chæ coù theå laøm vieäc vôùi maùy tröïc tieáp treân baøn phím cuûa noù. Ta seõ phaûi söû 
duïng leänh 

fsck thieát_bò_ñóa_cöùng_bò_hö 

ñeå  söûa  chöõa.  Ví  duï  nhö  fsck  /dev/hda1  seõ  söûa  pphaân  ñoaïn  ñaàu  cuûa  oå  ñóa  master  cuûa 
controller soá 0. 

background image

 

-22- 

IV.   Quaù trình khôûi ñoäng vaø keát thuùc cuûa UNIX :  

Nhö thoâng leä, khi moät maùy tính ñöôïc khôûi ñoäng, sau khi kieåm tra caùc thieát bò phaàn 

cöùng gaén treân maùy tính qua caùc chöông trình kieåm tra ghi trong ROM, heä ñieàu haønh ñöôïc 
taûi leân boä nhôù. Coâng taùc ñaàu tieân cuûa heä ñieàu haønh laø kieåm tra caùc thieát bò ngoaïi vi vaø taûi 
caùc chöông trình ñieàu khieån (driver) caàn thieát leân boä nhôù. Sau caùc coâng taùc naøy, baét ñaàu 
giai ñoaïn ñònh hình heä thoáng vaø moãi heä ñieàu haønh, thaäm trí moãi phieân baûn cuûa moät heä ñieàu 
haønh  thöïc  hieän  moät  khaùc.  Chuùng  toâi  xin  giôùi  thieäu  caùch  thöùc  khôûi  ñoäng  vaø  caáu  hình  heä 
thoáng cuûa Linux RedHat 6.x . Caùc Unix khaùc nhö  SUN OS 6.x, 7.x cuõng coù heä thoáng caùc 
taäp tin khôûi ñoäng vaø cô cheá hoaït ñoäng gaàn gioáng nhö Linux RedHat 6.x. 

Taäp tin ñaàu tieân maø heä ñieàu haønh xem xeùt ñeáùn laø /etc/inittab 
 

[tnminh@proxy tnminh]$ ls –l /etc/ inittab 

-rw-r--r--   1 root     root         1756 May 30 15:51 inittab 

[tnminh@proxy tnminh]$ more /etc/inittab 

# inittab      This file describes how the INIT process should set up 

#               the system in a certain run-level. 

# Default runlevel. The runlevels used by RHS are: 

#   0 - halt (Do NOT set initdefault to this) 

#   1 - Single user mode 

#      2  -  Multiuser,  without  NFS  (The  same  as  3,  if  you  do  not  have 

networking) 

#   3 - Full multiuser mode 

#   4 - unused 

#   5 - X11 

#   6 - reboot (Do NOT set initdefault to this) 

id:3:initdefault: 

 
Möùc (level) laøm vieäc maëc ñònh ñöôïc quy ñònh trong taäp tin naøy. Ví duï treân cho thaáy 

möùc maëc ñònh laø möùc 3 ôû doøng cuoái cuøng. Unix noùi chung coù 7 möùc hoaït ñoäng khaùc nhau 
töø 0 ñeán 6. Möùc 0 laø ñeå shutdown heä thoáng. Möùc 1 laø ñôn ngöôøi söû duïng (single user ) vaø 
thöôøng ñöôïc duøng ñeå söûa chöõa loãi heä thoáng taäp tin, möùc 2, 3 laø hai möùc cho ña ngöôøi söû 
duïng,  möùc  6  duøng  ñeå  reboot  heä  thoáng,  möùc  4,5  do  ngöôøi  söû  duïng  töï thieát  keá  cho  mình. 
Töông öùng vôùi caùc möùc treân, trong thö muïc /etc/rc.d coù caùc thö muïc rc0.d – rc6.d, chöùa caùc 
taäp tin khôûi ñoäng trong töøng möùc (rc laø vieát taét cuûa run command). RedHat 6.x coù thö muïc 
/etc/rc.d/init.d chöùa taát caû caùc taäp tin khôûi ñoäng. Thöôøng caùc taäp tin naøy laø caùc shell script 
(taäp  hôïp  leänh  shell)  hoaëc  perl  script  (nhö  Debian  Linux  chaúng  haïn).  Trong  caùc  thö  muïc 
rc?.d  chæ  coù  caùc  lieân  keát  hình  thöùc  (symbolic  link)  ñeán  caùc  taäp  tin  khôûi  ñoäng  trong 
/etc/rc.d/init.d. SUN OS 7.0 laïi ñaët thöïc söï caùc script khôûi ñoäng vaøo caùc thö muïc  rc?.d 
thay vì symbolic link.  

background image

 

-23- 

[tnminh@proxy /etc/rc.d]$ ls -l  

total 22 

drwxr-xr-x   2 root     root         1024 May 10 09:44 init.d 

-rwxr-xr-x   1 root     root         2722 Apr 15  1999 rc 

-rwxr-xr-x   1 root     root          693 Aug 17  1998 rc.local 

-rwxr-xr-x   1 root     root         9822 Apr 14  1999 rc.sysinit 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc0.d 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc1.d 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc2.d 

drwxr-xr-x   2 root     root         1024 May 10 09:47 rc3.d 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc4.d 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc5.d 

drwxr-xr-x   2 root     root         1024 May  3 01:44 rc6.d 

 
Trong  caùc  thö  muïc  rc?.d,  caùc  script  baét  ñaàu  baèng  S  (start)  ñöôïc  söû  duïng  khi  khôûi 

ñoäng, coøn caùc script baét ñaàu töø (kill) duøng ñeå döøng caùc tieán trình tröôùc khi qua moät möùc 
hoaït ñoäng khaùc. 

Toaøn  boä  caùc  taäp  tin  naøy  quyeát  ñònh  caáu  hình  laøm  vieäc  cuûa  moät  maùy  Unix  sau  khi 

hoaøn thaønh quaù trình khôûi ñoäng. Vieäc khôûi ñoäng heä thoáng caùc dòch vuï cuõng thöïc hieän thoâng 
qua cô cheá nhö ñaõ mieâu taû treân. 

Leänh init soá_möùc  cho pheùp chuyeån giöõa caùc möùc cuûa heä thoáng. Ví duï  
 

[root@proxy /etc/rc.d]# init 1  

 
cho pheùp chuyeån heä thoáng töø möùc hieän haønh qua möùc 1 ñeå söûa chöõa. Sau ñoù init 3  

cho pheùp quay veà möùc 3 ña ngöôøi duøng. 

Khi chuùng ta ñaùnh leänh shutdown, toaøn boä heä thoáng chuyeån veà möùc 0 vaø chuùng ta 

döøng heä thoáng. Chuù yù luoân shutdown hay halt heä thoáng tröôùc khi taét coâng taéc ñieän

 

V.   Quaûn lyù ngöôøi söû duïng :  

Trong quaù trình caøi ñaët Linux chuùng ta khôûi taïo ngöôøi söû duïng  root cho heä thoáng. 

Ñaây laø superuser, töùc laø ngöôøi söû duïng ñaëc bieät vaø khoâng coù giôùi haïn naøo veà quyeàn haïn  
ñoái vôùi root. Söû duïng quyeàn root chuùng ta raát thaáy thoaûi maùi vì chuùng ta coù theå laøm ñöôïc 
thao taùc maø khoâng phaûi lo laéng gì ñeát xeùt quyeàn truy caäp naøy hay khaùc. Tuy nhieân, khi heä 
thoáng bò söï coá do moät loãi laàm naøo ñoù, chuùng ta môùi thaáy söï nguy hieåm khi laøm vieäc nhö 
root. Baïn thöû hình dung toaøn boä caùc Email cuûa moät mail server cuûa toaøn coâng ty bò xoùa do 
ñaùnh moät leänh sai thì taùc haïi seõ lôn ñeán möùc naøo ( ñöøng ñeán gaëp tröïc tieáp giaùm ñoác khi 
baùo tin naøy maø neân thoâng baùo qua ñieän thoaïi ñeå traùnh moät caùi … baït tai, ). Vì vaäy, haõy 
chæ duøng quyeàn root khi baïn khoâng coù caùch naøo khaùc. 

background image

 

-24- 

Caàn phaân bieät baïn ñang login nhö root hay ngöôøi söû duïng thöôøng thoâng qua daáu nhaéc 

cuûa shell.  

 

login: tnminh 

Password: 

Last login: Sat Oct 28 14:30:15 from 172.16.10.199 

 [tnminh@pascal tnminh]$ su –l root 

Password: 

[root@pascal /root]# 

 
Doøng 4 vôùi daáu $ cho thaáy ta ñang keát noái nhö moät ngöôøi söû duïng thöôøng (tnminh). 

Doøng cuoái cuøng vôùi daáu # cho thaáy baïn ñang thöïc hieän caùc leänh nhö root.  Leänh su cho 
pheùp baïn thay ñoåi login döôùi moät user khaùc maø khoâng phaûi logout roài login laïi. 

Baïn caàn taïo caùc taøi khoaûn (account) cho ngöôøi söû duïng thöôøng sôùm nhaát coù theå ñöôïc 

(ñaàu  tieân  laø  cho  baûn  thaân  baïn).  Vôùi  nhöõng  server  quan  troïng  vaø  coù  nhieàu  dòch  vuï  khaùc 
nhau, thaäm trí baïn coù theå taïo ra caùc superuser thích hôïp cho töøng dòch vuï ñeå traùnh duøng 
root cho caùc coâng taùc naøy. Ví duï nhö superuser cho coâng taùc backup chæ caàn chöùc naêng ñoïc 
(read-only) maø khoâng caàn chöùc naêng ghi. 

 
Taäp tin /etc/passwd.  Taäp tin /etc/passwd ñoùng moät vai troø soáng coøn ñoái vôùi moät heä 

thoáng Unix. Moïi ngöôøi ñeàu coù theå ñoïc ñöôïc taäp tin naøy nhöng chæ coù root  môùi coù quyeàn 
thay ñoåi noù. Taäp tin /etc/passwd ñöôïc löu döôùi daïng text hieån nhö ñaïi ña soá caùc taäp tin caáu 
hình cuûa Unix. 

 

[oracle@appserv oracle]$ more /etc/passwd 

root:x:0:0:root:/root:/bin/bash 

bin:x:1:1:bin:/bin: 

... 

tnminh:x:501:501:TNMinh:/home/tnminh:/bin/bash 

 
Moãi user ñöôïc löu trong moät doøng goàm 7 coät.  
Coät 1 : teân ngöôøi söû duïng 
Coät 2 : maõ lieân quan ñeán passwd cho Unix chuaån vaø ‘x’ ñoái vôùi Linux. Linux löu maõ 

naøy trong moät taäp tin khaùc /etc/shadow maø chæ coù root môùi coù quyeàn ñoïc. 

Coät 3:4 : user ID:group ID 
Coät 5: Teân ñaày ñuû cuûa ngöôøi söû duïng. Moät soá phaàn meàm phaù password söû duïng döõ 

lieäu cuûa coät naøy ñeå thöû ñoaùn password. 

Coät 6: thö muïc caù nhaân 
Coät 7: chöông trình seõ chaïy ñaàu tieân sau khi login (thöôøng laø shell) cho user 

background image

 

-25- 

 
Taäp tin môû ñaàu bôûi superuser root. Chuù yù laø taát caû nhöõng user coù user ID = 0 ñeàu laø 

root!!! Tieáp theo laø caùc user heä thoáng. Ñaây laø caùc user khoâng coù thaät vaø khoâng theå login 
vaøo heä thoáng. Cuoái cuøng laø caùc user bình thöôøng. 

Taäp tin /etc/shadow. Unix truyeàn thoáng löu caùc thoâng tin lieân quan tôùi maät khaåu ñeå 

ñaêng nhaäp (login) ôû trong /etc/passwd. Tuy nhhieân, do ñaây laø taäp tin phaûi ñoïc ñöôïc bôûi taát 
caû moïi ngöôøi do moät soá yeâu caàu cho hoaït ñoäng bình thöôøng cuûa heä thoáng (nhö chuyeån User 
ID thaønh teân khi hieån thò trong leänh ls chaúng haïn) vaø nhìn chung caùc user ñaët maät khaåu 
‚yeáu‛, do ñoù haàu heát caùc Unix phieân baûn môùi ñeàu löu maät khaåu trong moät taäp tin khaùc 
/etc/shadow vaø chæ co root ñöôïc quyeàn ñoïc taäp tin naøy. 
Chuù  yù:  Theo  caùch  xaây  döïng  maõ  hoùa  maät  khaåu,  chæ  coù  2  caùch  phaù  maät  khaåu  laø  veùt  caïn 
(brute  force)  vaø  ñoaùn.  Phöông  phaùp  veùt  caïn,  theo  tính  toaùn  chaët  cheõ,  laø  khoâng  theå  thöïc 
hieän noåi vì ñoøi hoûi thôøi gian tính toaùn quaù lôùn, coøn ñoaùn thì chæ tìm ra nhöõng maät khaåu 
ngaén, hoaëc ‚yeáu‛, ví duï nhö nhöõng töø tìm thaáy trong töø ñieån nhö god, darling ... 

Taïo  user  (account)  môùi  :  Ñeå  taïo  moät  moät  account,  baïn  coù  theå  söû  duïng  leänh 

adduser (hoaëc useradd tuøy vaøo phieân baûn). Taát nhieân laø baïn phaûi laøm thao taùc naøy döôùi 
quyeàn root (daáu nhaéc #) 

 

[root@appserv oracle]# /usr/sbin/adduser foo 

[root@appserv oracle]# passwd foo 

Changing password for user foo 

New UNIX password: 

Retype new UNIX password: 

passwd: all authentication tokens updated successfully 

[root@appserv oracle]# 

 

Sau khi baïn taïo xong user bôûi doøng ñaàu tieân cuûa ví duï treân, user foo vaãn chöa keát noái 

ñöôïc vì thieáu password. Baïn phaûi khôûi taïo password cho foo bôûi leänh passwd foo  nhö thaáy 
ôû treân. 

Vì vaán ñeà an ninh cuûa maùy Unix naøy vaø keùo theo söï an toaøn cuûa toaøn heä thoáng maïng 

cuûa baïn, raát quan troïng choïn ñuùng password. Moät password goïi laø ñuùng neáu : 

 

Coù ñoä daøi toái thieåu 8 kyù töï.ï 

 

Phoái hôïp giöõa chöõ thöôøng, chöõ hoa, soá vaø caùc kyù töï ñaëc bieät 

 

Khoâng lieân quan ñeán teân tuoåi, ngaøy sinh … cuûa baïn vaø ngöôøi thaân 

 

Khoâng coù trong töø ñieån 

 

Trong ví duï treân, baïn khôûi taïo ngöôøi duøng vaø khoâng quan taâm gì ñeán nhoùm (group) 

cuûa ngöôøi duøng. Raát tieän lôïi neáu baïn taäp hôïp nhieàu ngöôøi duøng vaøo chung moät nhoùm coù 
cuøng moät chöùc naêng vaø cuøng chia seû nhau döõ lieäu. Khi baïn taïo ngöôøi söû duïng nhö treân, 
Linux seõ taïo cho moãi ngöôøi moät nhoùm. Ñoïc taäp tin /etc/passwd ta thaáy 

background image

 

-26- 

 
[root@appserv oracle]# more /etc/passwd|grep foo 
foo:x:1012:1013::/home/foo:/bin/bash 
[root@appserv oracle]# 
 
foo laø user soá 1012 vaø thuoäc nhoùm 1013.  
 
Xem taäp tin /etc/group ta thaáy  
 
[root@appserv oracle]# more /etc/group 
root:x:0:root 
………………. 
users:x:100: 
……………… 
foo:x:1013: 
 
vaø ta coù theå keát naïp foo vaøo nhoùm users  baèng caùch thay soá 1013 baèng 100, laø group 

ID cuûa users. 

 
 Xoùa user (account) :  Leänh userdel duøng ñeå xoùa moät user. Baïn cuõng coù theå xoùa moät 

user baèng caùch xoùa ñi doøng döõ lieäu töông öùng trong taäp tin /etc/passwd

 
VI.   Quyeàn truy caäp cuûa tieán trình. Setuid vaø setgid.  

Ngöôøi söû duïng khi thao taùc treân heä thoáng vaø truy caäp caùc taäp tin ñeàu thöïc hieän thoâng qua 
caùc tieán trình. Nhìn chung caùc tieán trình seõ coù quyeàn nhö ngöôøi söû duïng noù. User foo khi 
ñaùnh leänh 

more /etc/passwd

 seõ goïi leân boä nhôù tieán trình more vaø tieán trình seõ hieån thò t 

noäi  dung  cuûa  /etc/passwd.  Tieán  trình  more  naøy  seõ  coù  quyeàn  truy  caäp  nhö  foo  vaø  do 
/etc/passwd cho pheùp taát caû ñeàu ñoïc ñöôïc vaø leänh naøy thöïc hieän thaønh coâng. Tuy nhieân 

more /etc/shadow

 seõ khoâng thaønh coâng vì vôùi quyeàn cuûa foo, tieán trình more khoâng theå 

hieån thò noäi dung cuûa /etc/shadow. Nhö ta bieát, ngöôøi söû duïng coù theå thay ñoåi maät khaåu cuûa 
baûn thaân mình thoâng qua leänh passwd. Neáu vaãn theo cô cheá treân, leänh passwd seõ coù quyeàn 
nhö  ngöôøi  goïi  noù  vaø  do  ñoù  khoâng  coù  quyeàn  ghi  vaøo  taäp  tin  /etc/shadow.  Ñeå  giaûi  quyeát 
nhöõng yeâu caàu laø coù nhöõng thao taùc ngöôøi söû duïng caàn coù quyeàn root, Unix ñaët ra cô cheá 
setuid/setgid cho caùc chöông trình. Theo cô cheá naøy, chöông trình khi ñöôïc ngöôøi söû duïng 
(goïi laø real user) goïi leân boä nhôù seõ coù quyeàn nhö ngöôøi sôû höõu cuûa taäp tin chöông trình (goïi 
laø effective user). Ví duï neáu ta coi chöông trình passwd ta seõ thaáy 

[tnminh@backup tnminh]$ ls -l /usr/bin/passwd 

-r-s--x--x    1 root     root        13536 Jul 12  2000 /usr/bin/passwd 

background image

 

-27- 

[tnminh@backup tnminh]$  

Chöông trình naøy coù sôû höõu laø root vaø coù moät kyù töï ‚s‛ ñöùng vaøo vò trí cuûa ‚x‛.  Kyù töï naøy 
noùi leân raèng passwd ñöôïc setuid vaø cho duø ai goïi passwd leân boä nhôù, passwd seõ coù quyeàn 
root. Hoaøn toaøn töông töï ñoái vôùi setgid. 
Chuù  yù:  Treân  quan  ñieåm  baûo  maät  heä  thoáng,  caùc  chöông  trình  coù  setuid  veà  quyeàn  root  laø 
nhöõng ñieåm quan troïng caàn xem xeùt vì ña soá caùc xaâm nhaäp heä thoáng lieân quan tôùi loãi cuûa 
caùc chöông trình loaïi naøy. 

VII.   Keát noái maïng thoâng qua TCP/IP:  
Chuùng ta seõ xem xeùt quaù trình noái moät maùy Linux vaøo maïng Ethernet ñeå trao ñoåi 

thoâng tin baèng giao thöùc TCP/IP treân Ethernet.  

 

VII.1. HDH Linux vaø card maïng: 

Ñeå noái moät maùy Linux vaøo moät maïng Ethernet, baïn caàn phaûi coù ñaàu tieân laø moät card 

maïng maø Linux ñaõ coù chöông trình driver. Sau ñaây laø moät soá maïng maø Linux coù trôï giuùp 
(danh saùch sau khoâng ñaày ñuû vaø caùc phieân baûn môùi cuûa Linux hoã trôï raát nhieáu caùc card 
maïng khaùc nhau) : 

3Com 3C509  
3Com 3C503/16  
Novell NE1000  
Novell NE2000  
Western Digital WD8003  
Western Digital WD8013  
Hewlett-Packard HP27245  
Hewlett-Packard HP27247  
Hewlett-Packard HP27250  

 
Giaû söû caùc baïn muoán gaén maùy cuûa mình vaøo moät maïng LAN Ethernet vaø baïn ñaõ coù 

moät card maïng. Vaán ñeà ñaàu tieân laø söï nhaän bieát cuûa Linux ñoái vôùi card naøy. Neáu card cuûa 
baïn laø moät card khaù phoå bieán nhö 3c509 cuûa 3COM hay NE2000 cuûa Novell, HDH Linux 
seõ nhaän bieát söï hieän dieän cuûa card trong quaù trình boot. Ñeå bieát xem keát quaû nhaän bieát 
card maïng, ta coù theå xem xeùt caùc thoâng baùo cuûa kernel Linux trong quaù trình boot cuûa heä 
thoáng qua leäng dmesg 

background image

 

-28- 

 

Freeing unused kernel memory: 60k freed 

Adding Swap: 72572k swap-space (priority -1) 

eth0: 3c509 at 0x300 tag 1, BNC port, address 00 a0 24 4f 3d dc, IRQ 10. 

3c509.c:1.16 (2.2) 2/3/98 becker@cesdis.gsfc.nasa.gov. 

eth0: Setting Rx mode to 1 addresses. 

 
Hai doøng in ñaäm baùo raèng card maïng 3c509 ñaõ ñöôïc kernel nhaän bieát. Trong tröôøng 

hôïp  kernel  khoâng  nhaän  bieát  card  ,  chuùng  ta  phaûi  laøm  laïi  kernel  Linux  vaø  ñaët  module  
ñieàu khieån (driver) cuûa card vaøo trong kernel hay caáu hình ôû cheá ñoä load module. 

Ñeå caáu hình tieáp noái maïng qua TCP/IP chuùng ta phaûi xaùc ñònh roõ caùc thoâng tin lieân 

quan ñeán ñòa chæ IP cuûa maùy. Caùc thoâng tin caàn bieát laø : 

  Ñòa chæ IP cuûa maùy 
  Netmask 
  Ñòa chæ cuûa maïng 
  Broadcast 
  Ñòa chæ IP cuûa gateway 

 

Chuùng ta seõ laàn löôït ñieåm qua caùc khaùi nieäm cô baûn treân vaø seõ hoïc saâu hôn trong 

phaàn TCP/IP cuûa khoùa hoïc. 

Ñòa chæ IP cuûa maùy laø moät daõy 4 soá vieát döôùc daïng A.B.C.D, trong ñoù moãi soá nhaän 

giaù tri töø  0-255. Neáu maùy cuûa baïn keát noái moät maïng nhoû taïi nhaø do baïn thieát laäp thì ñòa 
chæ kieåu 192.168.1.D laø moät ñòa chæ neân ñaët, vôùi D laø caùc soá khaùc nhau cho töøng maùy. Neáu 
maùy cuûa baïn seõ hoøa nhaäp vôùi moät maïng LAN ñaõ coù tröôùc ñoù vaø baïn muoán keát noái vôùi caùc 
maùy khaùc thì hoûi ngöôøi quaûn trò maïng veà ñòa chæ IP baïn coù theå gaùn cho maùy cuûa mình cuøng 
vôùi taát caû caùc thoâng soá tieáp theo. 

Netmask. Töông töï nhö treân, neáu baïn töï quaûn, netmask seõ laø 255.255.255.0 
Ñòa chæ maïng. Neáu baïn töï quaûn, ñòa chæ cuûa maïng seõ laø 192.168.1.0 
Broadcast. Neáu baïn töï quaûn, broadcast laø 192.168.1.255 
Ñòa chæ gateway. Ñaây laø ñòa chæ cuûa maùy cho pheùp baïn keát noái vôùi maïng LAN khaùc, 

töùc laø caùc maùy tính vôùi 3 soá ñaàu cuûa ñòa chæ khoâng gioáng baïn laø 192.168.1. Baïn boû troáng 
neáu baïn chæ lieân laïc vôùi caùc maùy cuøng maïng 192.168.1.XXX. Chuù yù laø ñòa chæ maïng cuûa 
maùy gateway baét buoäc phaûi truøng vôùi ñòa chæ maïng cuûa baïn. 

 
Sau khi ñaõ xaùc ñònh caùc thoâng soá, ví duï nhö  
IP address = 192.168.1.15 
Netmask = 255.255.255.0 

background image

 

-29- 

suy ra network address = 192.168.1.0 vaø broadcast = 192.168.1.255 
Gateway = 192.168.1.1  
 
VII.2.  Caáu hình card maïng: 

 Leänh ifconfig. Sau khi laøm cho kernel nhaän bieát söï hieän dieän cuûa card maïng, 

coâng taùc tieáp theo laø caáu hình TCP/IP cho card. Trong quaù trình caøi ñaët Linux Redhat 
6.X,  bình  thöôøng  chuùng  ta  ñaõ  ñöôïc  chöông  trình  caøi  ñaët  hoûi  vaø  caáu  hình  hoä  .  Trong 
tröôøng hôïp khi chuùng ta boå sung card maïng sau khi Linux ñaõ ñöôïc caøi ñaët, chuùng ta coù 
theå söû duïng tieän ích netconf cho muïc ñích naøy hoaëc chuùng ta söû duïng leänh ifconfig ñeå 
töï caøi ñaët.  

Leänh ifconfig ñöôïc söû duïng trong quaù trình boot heä thoáng ñeå caáu hình caùc trang thieát 

bò maïng. Sau ñoù, trong quaù trình vaän haønh, ifconfig ñöôïc söû duïng cho debug, hoaëc ñeå cho 
ngöôøi quaûn trò heä thoáng thay ñoåi caáu hình khi caàn thieát . 

  Leänh ifconfig khoâng coù tuøy choïn duøng ñeå hieån thò caáu hình hieän taïi cuûa maùy. 
 

 [root@pasteur tnminh]# /sbin/ifconfig 

eth0      Link encap:Ethernet  HWaddr 00:A0:24:4F:3D:DC 

          inet addr:192.168.2.20  Bcast:192.168.2.255  Mask:255.255.255.0 

          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1 

          RX packets:531 errors:4 dropped:0 overruns:0 frame:4 

          TX packets:1854 errors:0 dropped:0 overruns:0 carrier:0 

          collisions:0 txqueuelen:100 

          Interrupt:10 Base address:0x300 

 

lo        Link encap:Local Loopback 

          inet addr:127.0.0.1  Mask:255.0.0.0 

          UP LOOPBACK RUNNING  MTU:3924  Metric:1 

          RX packets:1179 errors:0 dropped:0 overruns:0 frame:0 

          TX packets:1179 errors:0 dropped:0 overruns:0 carrier:0 

          collisions:0 txqueuelen:0     

 
Ñeå gaùn ñòa chæ IP 193.105.106.10 cho card maïng Ethernet ñaàu tieân ta duøng leänh 

 

ifconfig 

eth0 

193.105.106.10 

netmask 

255.255.255.0 

broadcast 

192.105.106.255 

 

Linux cho pheùp baïn söû duïng bí danh (alias) cho card maïng, töùc laø cho pheùp baïn coù 

nhieàu ñòa chæ IP cho cuøng moät card vaät lyù. Keát quaû nhaän ñöôïc gaàn gioáng nhö baïn coù gaén 
nhieàu card vaät lyù leân maùy. Do ñoù, baïn coù theå duøng moät card ñeå noái vôùi nhieàu maïng logic 
khaùc nhau. Cuù phaùp cuûa leänh naøy laø : 

background image

 

-30- 

 

ifconfig 

eth0:0 

208.148.45.58 

netmask 

255.255.255.248 

broadcast 

208.148.45.255 up 

 

Caùc taäp tin caáu hình cuûa keát noái maïng laø /etc/sysconfig/network-scripts/ifcfg-eth

vôùi X laø 0,1 ... hay 0:0, 0:1 .... Baïn coù theå thay ñoåi caáu hình keát noái maïng baèng caùch söûa 
ñoåi laïi taäp tin naøy baèng moät chöông trình soaïn thaûo text nhö mc chaúng haïn, sau ñoù khôûi 
ñoäng laïi keát noái maïng baèng  

/etc/rc.d/init.d/network restart 

Nhôù kieåm tra laïi keát quaû qua leänh ifconfig

 Leänh route. 

Leänh Route cho pheùp laøm caùc thao taùc ñeán baûng daãn ñöôøng (forwarding table) cuûa 

kernel. Noù ñöôïc söû ñaàu tieân ñeå xaùc ñònh ñöôøng daãn coá ñònh (static) ñeán nhöõng maùy hoaëc 
nhöõng maïng qua caùc card maïng ethernet ñaõ ñöôïc caáu hình tröôùc ñoù bôûi ifconfig.     

Leänh route khoâng coù tuøy choïn (option) cho pheùp hieån thò baûng daãn ñöôøng hieän taïi 

cuûa kernel (Leänh netstat –r cuõng coù taùc duïng töông töï) 

 

[root@pasteur tnminh]# /sbin/route 

Kernel IP routing table 

Destination     Gateway   Genmask   Flags Metric Ref Use Iface 

192.168.2.20    *   255.255.255.255 UH   0     0     0   eth0 

192.168.2.0     *   255.255.255.0   U    0     0     0   eth0 

127.0.0.0       *   255.0.0.0       U    0     0     0   lo 

default       192.168.2.10   0.0.0.0   UG    0    0   0 eth0 

Ñeå chæ ra raèng card maïng eth0  ñöôïc noái vôùi moät maïng 208.148.45.56  ta duøng leänh 

route nhö sau : 

 

route add -net 208.148.45.56 eth0 

 
Coøn neáu chuùng ta muoán söû duïng bí danh cuûa card maïng ñeå noái vaøo moät maïng logic 

khaùc, ta coù theå söû duïng leänh  

 

route add -net 193.105.106.0 eth0:0 

 
Coâng taùc cuoái cuøng laø phaûi chæ ra caùc ñòa chæ cuûa gateway maëc ñònh. 
 

route add default gw 193.105.106.1 metric 1 

Bieát söû duïng thaønh thaïo cuù phaùp cuûa 2 leänh ifconfig vaø route raát quan troïng, noù cho 

pheùp caùc caùn boä quaûn trò thay ñoåi caáu hình keát noái maïng cuûa moät server moät caùch nhanh 
choùng vaø khoâng phaûi khôûi ñoäng laïi maùy. Vì vaäy, server luoân saün saøng. Baïn cuõng coù theå söû 

background image

 

-31- 

duïng tieän ích netconfig ñeå caáu hình lieân keát maïng neáu chöa thaønh thaïo nhieàu cuù phaùp cuûa 
caùc leänh treân. 

 Leänh ping. ÖÙng duïng cuûa leänh naøy laø ñeå thöû xem 2 maùy coù keát noái ñöôïc vôùi 

nhau chöa. Cuù phaùp cô baûn cuûa leänh raát ñôn giaûn  laø ping ñòa_chæ_IP_maùy_ñích. Ví duï 
nhö  

 

[tnminh@proxy tnminh]$ ping sun 

PING sun.vnuhcm.edu.vn (172.16.1.4): 56 data bytes 

64 bytes from 172.16.1.4: icmp_seq=0 ttl=255 time=0.1 ms 

64 bytes from 172.16.1.4: icmp_seq=1 ttl=255 time=0.2 ms 

64 bytes from 172.16.1.4: icmp_seq=2 ttl=255 time=0.1 ms 

64 bytes from 172.16.1.4: icmp_seq=3 ttl=255 time=0.1 ms 

 

--- sun.vnuhcm.edu.vn ping statistics --- 

4 packets transmitted, 4 packets received, 0% packet loss 

round-trip min/avg/max = 0.1/0.1/0.2 ms 

[tnminh@proxy tnminh]$ 

 
Neáu 2 maùy coù theå lieân laïc ñöôïc vôùi nhau, ñoàng thôøi chuùng ta seõ coù traû lôøi cuøng vôùi 

thôøi gian traû lôøi ñeå cho bieát söï thoâng thoaùng veà maïng giöõa 2 maùy. Coù theå noùi, ping  phaûi 
chaïy tröôùc tieân tröôùc taát caû caùc hoaït ñoäng maïng khaùc. 

Chuù yù: Neân söû duïng ping –n ñeå traùnh truïc traëc do dòch vuï DNS laøm aûnh höôûng tôùi 

vieäc keát quaû thöû keát noái maïng. 

 

 Leänh Traceroute. Ñaây cuõng laø leänh cho pheùp chaån ñoaùn hoaït ñoäng cuûa maïng. 

Cuù phaùp cuûa leänh gioáng nhö leänh ping nhöng keát quaû khoâng chæ döøng ôû söï traû lôøi maø 
coøn chæ ra caùc thieát bò trung gian naèm giöõa 2 maùy. 

# tnminh@nefertiti ~ > traceroute 203.162.44.33 

traceroute to 203.162.44.33 (203.162.44.33): 1-30 hops, 38 byte packets 

 1  makeda.pasteur.fr (157.99.64.3), 1.66 ms, 1.66 ms, 1.66 ms 

 2  418.ATM4-0.GW21.Defense.OLEANE.NET (195.25.28.149), 5.0 ms, 4.17 ms, 4.17 m 

 3  FastEth0-0.GW16.Defense.OLEANE.NET (195.25.25.208), 4.17 ms, 4.17 ms, 4.17s 

 4  100.ATM6-1.GW2.Telehouse.OLEANE.NET (194.2.3.245), 5.0 ms, 5.0 ms, 5.0 ms 

 .............. 

14  210.132.93.210 (210.132.93.210), 849 ms (ttl=241!), 807 ms (ttl=241!), 970 

s (ttl=241!) 

15  202.167.121.195 (202.167.121.195), 905 ms !H 203.162.3.42 (203.162.3.42), 1 

88 ms (ttl=242!) 

Chuù yù laø khi chuùng ta thöû keát noái vôùi moät maùy ôû xa trong Internet, do nhieàu maïng aùp 

duïng caùc böùc töôøng löûa (firewall) neân nhieàu khi leänh ping vaø traceroute khoâng chaïy nhöng 
treân thöïc chaát laø maïng vaãn thoâng.   

background image

 

-32- 

 

VIII.  X-Window.  X-window  (chuù  yù  window  khoâng  coù  ‚s‛  nhö  Windows  cuûa  

Miscrosoft) laø giao dieän ñoà hoïa cuûa Unix. X Window System ñöôïc phaùt trieån taïi Laboratory 
for Computer Science, Massachusetts Institute of Technology vaøo 1984. 

Tuy  nhieân,  do  Unix  laøheä  ñieàu  haønh  maïng  neân  phöông  thöùc  hoaït  ñoäng  cuûa  X-widow 
cuõng khaùc haún Windows cuûa Microsoft. Cô cheá hoaït ñoäng cuûa Xwindow ñöôïc mieâu taû 
trong sô ñoà sau: 
 

 

 

Xserver (XF86-SVGA) 

 

 

Xclient (netscape, xterm) 

User------- Maùy traïm WS  <------ maïngTCP/IP------  Maùy chuû S 

(maøn hình, baøn phím, chuoät) 

 

 

 

Tham gia vaøo moâ hình X window coù chöông trình X server vaø X client. Nhìn chung, X 

server laø chöông trình chaïy treân maùy traïm laøm vieäc WS cuûa ngöôøi söû duïng, coøn X client 
chaïy  treân  maùy  chuû  S  naèm  xa  ngöôøi  söû  duïng.  Chöông  trình  Xserver  treân  maùy  traïm  chòu 
traùch nhieäm quaûn lyù taøi nguyeân cuûa maùy traïm (maøn hình, baøn phím, chuoät) vaø thöïc hieän 
giao tieáp giöõa ngöôøi söû duïng vaø chöông trình X client chaïy treân maùy chuû (noùi chung laø ôû xa 
nhöôøi söû duïng). Keát noái giöõa X server vaø Xclient coù theå thöïc hieän hoaøn toaøn treân TCP/IP 
qua maïng LAN cuõng nhö WAN. Moät Xserver coù theå cho pheùp ‚hieån thò‛ nhieàu Xclient ôû 
nhieàu maùy khaùc nhau vaø ñoù laø öu ñieåm cô baûn cuûa Xwindow. Xserver ‚nghe‛ taïi coång 
6000  vaø  Xclient  môû  moät  keát  noái  töø  moät  coång  naøo  ñoù  (lôùn  hôn  1023)  veå  coång  6000  cuûa 
Xserver.  

Tröôùc khi keát noái, Xserver phaûi cho pheùp Xclient ñöôïc quyeàn keát noái thoâng qua leänh 

xhost +ñòa_chæ_maùy_Xclient treân maøn hình cuûa Xserver.  

Ñeå Xclient bieát phaûi hieån thò ñi ñaâu, ta caàn thay ñoåi bieán moâi tröôøng DISPLAY treân 

maùy  coù  Xclient  qua  leänh    export  DISPLAY=ñòa_chæ_maùy_Xserver:0.0.  Sau  ñoù  goïi 
chöông trình Xclient, ví duï xterm & hay netscape & (chuù yù daáu & ôû cuoái cho pheùp chöông 
trình chaïy background). 
Nhöõng coâng taùc treân thöïc chaát phaûi laøm ñeå caáu hình moät Xserver laø : 

 

Xaùc  ñònh  nhaø  saûn  xuaát,  phieân  baûn  cuûa  video  controller.  Qua  ñoù  xaùc  ñòng  ñöôïc 
chöông trình Xserver. Trong nhieàu tröôøng hôïp, XF86-SVGA laø töông thích. 

 

Xaùc ñònh maøn hình ñeå qua ñ1o xaùc ñònh caùc thoâng soá veà toác ñoä queùt doïc vaø ngang 
cuûa maøn hình 

 

Xaùc ñònh ñoä phaân giaûi cuûa maøn hình, ña soá laø 800x600 hay 1024x768 

 

Ngöôøi söû duïng löïa choïn chöông trình quaûn lyù cöûa soå (Window Manager). Söï löïa 
choïn naøy phuï thuoäc vaøo sôû thích laø chính. KDE vaø GNOME laø 2 löïa choïn chính cuûa 
Linux. 

Raát may maén laø vieäc caøi ñaët giao dieän Xwindow treân Linux hieän nay ñaõ ñöôïc töï ñoäng hoùa 
raát nhieàu. Trong tröôøng hôïp coù truïc traëc, leänh X –probeonly >/tmp/test 2>&1 cho pheùp 

background image

 

-33- 

chuùng ta ghi laïi toaøn boä caùc thoâng baùo cuûa Xserver vaøo taäp tin /tmp/test vaø duøng cho xem 
xeùt tìm nguyeân nhaân truïc traëc cuûa Xserver. Ta thöû xem trong ví duï sau:  
[root@backup X11]# more /tmp/t 
XFree86 Version 3.3.6a / X Window System 
...... 
Configured drivers: 
  SVGA: server for SVGA graphics adaptors (Patchlevel 1):   (teân Xserver) 
      s3_savage, NV1, STG2000, RIVA 128, RIVA TNT, RIVA TNT2, 
      ... danh saùch caùc video controller maø Xserver hoã trôï ..... 
      ct65550, ct65554, ct65555, ct68554, ct69000, ct64200, ct64300, 
      mediagx, V1000, V2100, V2200, p9100, spc8110, i740, i740_pci, 
      Voodoo Banshee, Voodoo3, i810, i810-dc100, i810e, smi, generic 
 
XF86Config: /usr/X11R6/lib/X11/XF86Config 

 

(taäp tin caáu hình) 

(**) stands for supplied, (--) stands for probed/default values 
(**) XKB: keycodes: "xfree86" 
...... 
(**) Mouse: zaxismapping: (-)4 (+)5 
(**) SVGA: Graphics device ID: "Cirrus Logic GD5480"   
(Xserver nhaän daïng ñöôïc video controller – Ñaëc bieät quan troïng) 
(**) SVGA: Monitor ID: "My Monitor" 
........ 
(**) SVGA: Using 16 bpp, Depth 16, Color weight: 565   (ñoä phaân giaûi maøn hình) 
(--) SVGA: Maximum allowed dot-clock: 100.000 MHz 
(**) SVGA: Mode "800x600": mode clock =  40.000, clock used =  39.991 
........ 
 
Tieän ích Xconfigurator cuõng coù theå giuùp ích cho baïn. Taát caû caáu hình cuûa Xserver ñöôïc 
ghi laïi trong taäp tin text /etc/X11/XFConfig. Baïn coù theå töï thay ñoåi caùc thoâng soá trong naøy 
neáu hieåu roõ yù nghóa cuûa chuùng. 
 

background image

 

-34- 

IX. Theo doõi hoaït ñoäng cuûa heä thoáng.  

Tieän ích syslog. Syslog laø tieän ích cuûa Unix cho pheùp ghi nhaän laïi moät caùch taäp trung 

vaø chuaån (giöõa caùc Unix) hoaït ñoäng cuûa heä thoáng caùc dòch vuï vaø thoâng baùo cuûa kernel. 
Thoâng qua syslog, ta coù theå: 

 

Xem thoâng baùo loãi khi khôûi ñoäng moät chöông trình dòch vuï, qua ñoù coù theå söûa ñoåi 
laïi caáu hình cho thích hôïp 

 

Xem xeùt laïi nhöõng gì ñaõ xaûy ra, dòch vuï naøo ñaõ khôûi ñoäng laïi, nhöõng ai ñaõ thöïc hieän 
keát noái taïi thôøi ñieåm naøo ...  

 

Vieát chöông trình dòch vuï vaø göûi ñeán syslog caùc thoâng baùo nhaèm ghi laïi hoaït ñoäng 
cuûa chöông trình cuûa mình. 

Ñeå thöïc hieän caùc chöùc naêng keå treân, syslog coù moät tieán trình server syslogd thöôøng ñöôïc 
khôûi  ñoäng  cuøng  vôùi  heä  thoáng.  Chöông  trình  syslogd  naøy  ñoïc  taäp  tin  caáu  hình 
/etc/syslog.conf ñeå xaùc ñònh phaûi ghi laïi nhöõng gì vaø ôû ñaâu. Ta thöû coi /etc/syslog.conf (moïi 
user ñeàu coù theå ñoïc taäp tin naøy) 
 

[tnminh@backup X11]$ cat /etc/syslog.conf 

# Log all kernel messages to the console. 

# Logging much else clutters up the screen. 

#kern.*                                                 /dev/console 

# Log anything (except mail) of level info or higher. 

# Don't log private authentication messages! 

*.info;mail.none;authpriv.none;cron.none                /var/log/messages 

# The authpriv file has restricted access. 

authpriv.*                                              /var/log/secure 

# Log all the mail messages in one place. 

mail.*                                                  /var/log/maillog 

# Log cron stuff 

cron.*                                                  /var/log/cron 

# Everybody gets emergency messages, plus log them on another 

# machine. 

*.emerg                                                 * 

# Save mail and news errors of level err and higher in a 

# special file. 

uucp,news.crit                                          /var/log/spooler 

# Save boot messages also to boot.log 

local7.*                                                /var/log/boot.log 

# Receive log from center router 

local0.*                                                /var/log/router 

[tnminh@backup X11]$  

 

background image

 

-35- 

Hai khaùi nieäm caàn bieát ñeå hieåu taäp tin naøy laø facility vaø priority. Facility chính laø danh 
saùch caùc dòch vuï coù theå log. Priority bieåu thò caáp ñoä nghieâm troïng cuûa thoâng baùo. Cuù phaùp 
trong  taäp  tin  /etc/syslog  laø  facility.priority.  Coät  beân  phaûi  xaùc  ñònh  ñòa  chæ  ghi  log. 
/etc/log/maillog laø taäp tin ghi laïi thoâng baùo cuûa mail.*; daáu ‚*‛ aùm chæ thoâng baùo seõ ñöôïc 
hieän  ra  ôû  taát  caû  caùc  maøn  hình  cuûa  caùc  user;  @maùy_khaùc  cho  pheùp  göûi  thoâng  baùo  tôùi 
syslogd  cuûa  maùy  khaùc;  |chöông_trình_xöû_lyù  cho  pheùp  göûi  thoâng  baùo  qua  pipe  ‚|‛  tôùi 
chöông_trình_xöû_lyù... 
 
Syslog facilities: 

Name 

Facility 

Kern 

Kernel 

User 

Regular user processes 

Mail 

Mail system 

Lpr 

Line printer system 

auth 

Authorization system, or programs that ask for user names and passwords 
(

login, su, getty, ftpd,

 etc.) 

daemon 

Other system daemons 

news 

News subsystem 

uucp 

UUCP subsystem 

local0... 
local7
 

Reserved for site-specific use 

mark 

A timestamp facility that sends out a message every 20 minutes 

syslog Priorities 

Priority 

Meaning 

emerg 

Emergency condition, such as an imminent system crash, usually broadcast to all 
users 

Alert 

Condition that should be corrected immediately, such as a corrupted system 
database 

Crit 

Critical condition, such as a hardware error 

Err 

Ordinary error 

warning 

Warning 

notice 

Condition that is not an error, but possibly should be handled in a special way 

background image

 

-36- 

Name 

Facility 

Info 

Informational message 

debug 

Messages that are used when debugging programs 

None 

Do not send messages from the indicated facility to the selected file. For example, 
specifying *.debug;mail.none sends all messages except mail messages to the 
selected file. 

Chuù yù neáu ta log moät priority thì ta seõ log toaøn boä priorities coù ñoä nghieâm troïng cao hôn. Ví 
duï neáu trong /etc/syslog coù mail.info thì taát caû mail.notice hay mail.emerg ñeàu ñöôïc log. 
Vôùi moät maùy chuû baän roän, taäp tin log phình to raát nhanh vaø chuùng ta ñöùng tröôùc moät baøi 
toaùn laø ñoàng thôøi phaûi giöõ log laâu nhaát coù theå ñöôïc ñeå ñeà phoøng söï coá vaø xoùa log ñeå coù 
khoâng gian ñóa cho maùy hoaït ñoäng. Logrotate laø moät tieän ích giuùp cho nhaø quaûn trò xoay 
voøng  (rotate),  neùn  (compact)  vaø  göûi  mail  thoâng  tin  log.  Logrotate  ñoïc  taäp  tin  caáu  hình 
/etc/logrotate.conf ñeå bieát chu kyø quay voøng vaø caùc thoâng tin khaùc. Ví duï sau  

 

# sample logrotate configuration file 

       errors sysadmin@my.org 

       compress 

 

       /var/log/messages { 

           rotate 5 

           weekly 

           postrotate 

             

 

/sbin/killall -HUP syslogd 

           endscript 

       } 

 

cho thaáy taäp tin /var/log/message ñöôïc löu vaø quay voøng 5 tuaàn. Leänh /sbin/killall –HUP 
syslogd
 cho pheùp khôûi taïo laïi taäp tin /var/log/message vì taäp tin cuõ ñaõ bò ñoåi tin vaø neùn. 

X. Caøi ñaët RedHat Linux. RedHat laø moät Linux distributor phoå bieán nhaát hieän nay. 

RedHat löïa choïn phieân baûn kernel cuûa Linux vaø caùc chöông trình dòch vuï khaùc ñoùng thaønh 
caùc goùi (taäp tin coù phaàn môû roäng .rpm) vaø löu vaøo moät hoaëc hai ñóa CDROM. Phieân baûn 
cuoái  cuøng  cuûa  Redhat  Linux  hieän  nay  laø  7.1  vôùi  kernel  2.4.2-2.  Caùc  ñóa  CDROM  cuûa 
RedHat ñeàu coù theå duøng ñeå boot maùy vaø ñieàu naøy laøm ñôn giaûn raát nhieàu quaù trình caøi ñaët 
RedHat Linux. Coù theå mieâu taû sô löôïc caùc böôùc caàn phaûi qua khi caøi ñaët RedHat Linux laø  

1. söûa caáu hình maùy ñeå boot töø oå CDROM 
2. Ñaët ñóa soá 1 cuûa RedHat Linux vaøo oå CDROM vaø khôûi ñoäng laïi maùy 
3. Löïa choïn moät phöôngphaùp caøi ñaët, ví duï text 
4. löïa choïn kieåu caøi ñaët , server hay traïm laøm vieäc hay custom 
5. Chia laïi oå ñóa cöùng 

background image

 

-37- 

6. löïc choïn caùc goùi seõ caøi ñaët 
7. ñeå cho chöông trình caøi ñaët Linux töï laøm vieäc 
8. thöïc hieän moät soá caáu hình neáu coù yeâu caàu hieån thò treân maøn hình. 

Sau khi Linux ñöôïc caøi xong, ta coù theå theâm bôùt caùc goùi (package) vaøo/ra heä thoáng thoâng 
qua tieän ích rpm (Redhat Package Manager). Caùc goùi cuûa RedHat thöôøng naèm trong thö 
muïc RPMS cuûa CDROM. Ñeå caøi moät goùi X, ta duøng leänh  
rpm -i [install-options] <package_file>+ 
Caùc taäp tin cuûa goùi X seõ ñöôïc rpm ñaët vaøo caùc vò trí quy ñònh ñaûm baûo cho söï hoaït ñoäng 
cuûa dòch vuï X. Trong moät soá tröôøng hôïp chuùng ta muoán caøi ‚ñeø‛ leân goùi ñaõ caøi tröôùc vaø coù 
truïc traëc. Khi ñoù option --force cho pheùp thay goùi cuõ baèng goùi môùi. 
Leänh  
rpm -e <package_name>+ 
cho pheùp xoùa moät goùi ñaõ caøi ñaët. Ngoaøi ra rpm coøn cho pheùp xem xeùt tính toaøn veïn cuûa 
moät chöông trình, naâng caáp moät dòch vuï, lieät keâ caùc taäp tin trong moät goùi hoaëc chæ ra goùi 
chöùc moät taäp tin ... Ñaây laø moät coâng cuï raát maïnh cho pheùp quaûn trò moät maùy Linux. Baïn 
ñoïc coù theå ñoïc manpage cuûa rpm ñeå bieát theâm.