Docstoc

tong quan ve UNIX

Document Sample
tong quan ve UNIX Powered By Docstoc
					Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX I. 1. 2. II. 1. 2. 3. 4. 5. 6. 7. 8. 9. Tæng quan hÖ ®iÒu hµnh UNIX ........................ 4 HÖ ®iÒu hµnh Unix ................................. 4 C¸c ®Æc ®iÓm c¬ b¶n ............................... 7 LÖnh vµ tiÖn Ých c¬ b¶n ............................ 8 C¸c lÖnh khëi t¹o ................................. 8 C¸c lÖnh hiÓn thÞ ................................. 9 §Þnh h-íng vµo ra ................................. 9 Desktop: .......................................... 9 C¸c lÖnh thao th- môc vµ t¸c file ................ 10 In Ên ............................................ 10 Th- tÝn .......................................... 10 Qu¶n lý tiÕn tr×nh ............................... 11 KiÓm so¸t quyÒn h¹n vµ b¶o mËt ................... 11

10. L-u tr÷ vµ håi phôc d÷ liÖu ...................... 11 11. C¸c thao t¸c trªn m¹ng ........................... 11 III. Th©m nhËp hÖ thèng - C¸c lÖnh c¨n b¶n ............. 12 1. B¾t ®Çu vµ kÕt thóc phiªn lµm viÖc-X¸c lËp m«i C¸c lÖnh hiÓn thÞ ................................ 13 §Þnh h-íng vµo ra vµ ®-êng èng: ................. 14 tr-êng hÖ thèng ..................................... 12 2. 3. 4. 5. 6. 7. 8. 9.

Desktop: ......................................... 15 C¸c lÖnh thao t¸c trªn th- môc, file ............. 19 In Ên ............................................ 29 Th- tÝn ®iÖn tö .................................. 30 Qu¶n lý tiÕn tr×nh ............................... 32 C¸c lÖnh liªn quan b¶o mËt vµ quyÒn h¹n .......... 33 a)Kh¸i 33 b)C¸c lÖnh niÖm:

1

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 35 10. L-u tr÷ vµ håi phôc d÷ liÖu ...................... 38 11. C¸c thao t¸c trªn m¹ng ........................... 40 IV. LËp tr×nh Shell ................................... 43 1. 2. C¸c ®Æc tÝnh c¬ b¶n. ............................. 43 LËp tr×nh shell .................................. 46 a)LÖnh 47 b)LÖnh 50 c)Shell 51 d)LÖnh 51 e)Thùc hiÖn lÖnh ®iÒu kiÖn víi cÊu tróc AND(&&) vµ OR (||) .............................................. 52 V. 1. 2. Starting Up and Shutting Down ..................... 52 Booting the System ............................... 52 Shutting Down the System ......................... 61 trap Functions lÆp ®iÒu kiÖn

VI. Managing processes ................................ 62 1. 2. 3. VII. 1. 2. Processes ........................................ 62 Process scheduling ............................... 65 Process priorities ............................... 67 Security ......................................... 67 Security datafiles ............................... 67 Group and User administration .................... 72 a)Group 72 b)User 72 3. System access permissions ........................ 76 2 administration administration

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 4. VIII. 1. 2. 3. 4. 5. 6. Acounting ........................................ 77 File System and Disk Administration .............. 79 CÊu tróc th- môc trªn Unix ....................... 79 Creating file systems ............................ 80 Mounting and unmounting file systems ............. 82 Managing disk use ................................ 85 Checking file system integrity ................... 87 Backup and restore ............................... 90

IX. Printer administration ............................ 90 X. 1. 2. Network administration ............................ 91 UUCP (Unix to Unix copy) ......................... 91 TCP/IP and Neworks ............................... 96 a) ............................................ TCP/IP 96 b) ............................................... PPP 101 c) ............................................... DNS 102 d) ............................................... NIS 116 3. 4. 5. NFS (Network File System) ....................... 118 Mail ............................................ 120 UNIX client ..................................... 121

3

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX

I. Tæng quan hÖ ®iÒu hµnh UNIX
1. HÖ ®iÒu hµnh Unix UNIX lµ mét hÖ ®iÒu hµnh phæ biÕn, tr-íc ®©y chóng ®-îc sö dông trong c¸c minicomputer vµ c¸c workstation trong c¸c c«ng së nghiªn cøu khoa häc. Ngµy nay UNIX ®· trë thµnh hÖ ®iÒu hµnh ®-îc dïng cho c¶ m¸y tÝnh c¸ nh©n vµ phôc vô c«ng viÖc kinh doanh nhê kh¶ n¨ng më cña nã. UNIX gièng nh- c¸c hÖ ®iÒu hµnh kh¸c nã lµ líp n»m gi÷a phÇn cøng vµ øng dông. Nã cã chøc n¨ng qu¶n lý phÇn cøng vµ qu¶n lý c¸c øng dông thùc thi. §iÒu kh¸c nhau c¬ b¶n gi÷a UNIX vµ bÊt kú hÖ ®iÒu hµnh kh¸c lµ sù thùc thi bªn trong vµ giao diÖn. HÖ ®iÒu hµnh UNIX thùc sù lµ mét hÖ ®iÒu hµnh. Nã bao gåm c¸c thµnh phÇn tr-íc ®©y (PhÇn c¬ b¶n vèn cã cña hÖ ®iÒu hµnh Unix) vµ c¸c thµnh phÇn míi bæ sung, nã lµ líp n»m gi÷a phÇn cøng vµ c¸c øng dông. CÊu tróc c¬ b¶n cña hÖ ®iÒu hµnh Unix nh- sau: User Shell Kernel Hardware

4

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX

Kernel PhÇn qu¶n lý phÇn cøng vµ c¸c øng dông thùc thi gäi lµ kernel. Trong qu¶n lý c¸c thiÕt bÞ phÇn cøng UNIX xem mçi thiÕt bÞ nµy nh- mét file (®-îc gäi lµ device file). §iÒu nµy cho phÐp viÖc truy nhËp c¸c thiÕt bÞ gièng nhviÖc ®äc vµ ghi trªn file. ViÖc qu¶n lý quyÒn truy nhËp trªn c¸c thiÕt bÞ th«ng qua hÖ thèng kiÓm so¸t b¶o mËt quyÒn h¹n. C¸c process ®ang thùc thi ®-îc UNIX ph©n chi tµi nguyªn bao gåm CPU vµ c¸c truy nhËp tíi phÇn cøng. Khi khëi ®éng m¸y tÝnh th× mét ch-¬ng tr×nh unix ®-îc n¹p vµo trong bé nhí chÝnh, vµ nã ho¹t ®éng cho ®Õn khi shutdown hoÆc khi t¾t m¸y. Ch-¬ng tr×nh nµy ®-îc gäi lµ kernel, thùc hiÖn chøc n¨ng møc thÊp vµ chøc n¨ng møc hÖ thèng. Kernel chÞu tr¸ch nhiÖm th«ng dÞch vµ göi c¸c chØ thÞ tíi bé vi xö lý m¸y tÝnh. Kernel còng chÞu tr¸ch nhiÖm vÒ c¸c tiÕn tr×nh vµ cung cÊp c¸c ®Çu vµo vµ ra cho c¸c tiÕn tr×nh. Kernel lµ tr¸i tim cña hÖ ®iÒu hµnh UNIX. Khi kernel ®-îc n¹p vµo trong bé nhí lóc ®ã nã ®· s½n sµng nhËn c¸c yªu cÇu tõ ng-êi sö dông. §Çu tiªn ng-êi sö dông ph¶i login vµ ®-a ra yªu cÇu. ViÖc login lµ ®Ó kernel biÕt ai ®· vµo hÖ thèng vµ c¸ch truyÒn th«ng víi chóng. §Ó lµm ®iÒu nµy kernel gäi ch¹y hai ch-¬ng tr×nh ®Æc biÖt lµ getty vµ login. §Çu tiªn kernel gäi ch¹y getty. Getty hiÓn thÞ dÊu nh¾c vµ yªu cÇu ng-êi sö dông nhËp vµo. Khi nhËn ®-îc th«ng tin ®Çu vµo getty gäi ch-¬ng tr×nh login. Ch-¬ng tr×nh login thiÕt lËp ®Þnh danh cho user vµ x¸c ®Þnh quyÒn cña user login. Ch-¬ng tr×nh login 5

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX kiÓm tra mËt khÈu trong file mËt khÈu. NÕu mËt khÈu kh«ng ®óng cæng vµo sÏ kh«ng ®-îc thiÕt lËp vµ bÞ tr¶ l¹i ®iÒu khiÓn cho getty. NÕu user nhËp ®óng mËt khÈu ch-¬ng tr×nh login göi ®iÒu khiÓn tíi ch-¬ng tr×nh mµ cã tªn n»m trong password file. Th«ng th-êng ch-¬ng tr×nh nµy lµ shell. Shell ViÖc thao t¸c trùc tiÕp tíi kernel lµ rÊt phøc t¹p vµ ®ßi hái kü thuËt cao §Ó tr¸nh sù phøc t¹p cho ng-êi sö dông vµ ®Ó b¶o vÖ kernel tõ nh÷ng sai sãt cña ng-êi sö dông shell ®· ®-îc x©y dùng thµnh líp bao quanh kernel. Ng-êi sö dông göi yªu cÇu tíi shell, shell biªn dÞch chóng vµ sau ®ã göi tíi kernel.

Chøc n¨ng cña shell Th-êng víi UNIX cã ba lo¹i shell ®-îc dïng phæ biÕn. C¶ ba ®Òu nh»m mét môc ®Ých cung cÊp c¸c chøc n¨ng sau:  Th«ng dÞch lÖnh  Khëi t¹o ch-¬ng tr×nh  §Þnh h-íng vµo ra  KÕt nèi ®-êng èng  Thao t¸c trªn file  Duy tr× c¸c biÕn  §iÒu khiÓn m«i tr-êng  LËp tr×nh shell HiÖn nay trªn hÖ ®iÒu hµnh Unix ng-êi ta ®ang sö dông chñ yÕu ba lo¹i shell sau: Bourne shell, Korn shell, C shell. B¶ng sau so s¸nh gi÷a 3 lo¹i shell (Theo tµi liÖu

6

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX UNIX UNLEASHED Sams Development Team SAMS

Publishibng) 1 tèt nhÊt, 2 trung b×nh, 3 yÕu.
Shell Learning Editing Shortcuts Portability Experience

Bourne C Korn User

1 2 3

3 2 1

3 1 2

1 3 2

3 2 1

Gåm c¸c tiÖn tÝch, c¸c øng dông giao tiÕp víi ng-êi sö dông. 2. C¸c ®Æc ®iÓm c¬ b¶n HÖ ®iÒu hµnh UNIX cã mét sè ®Æc ®iÓm sau:  §a ch-¬ng  NhiÒu ng-êi sö dông  B¶o mËt  §éc lËp phÇn cøng  HÖ më  Dïng chung thiÕt bÞ  Tæ chøc tËp tin ph©n cÊp B¶ng so s¸nh gi÷a UNIX, NetWare vµ Windows NT (Theo tµi liÖu Upgrading and Repairing Networks –QUE) Network Goals Interoperability Transparency Security Efficiency UNIX Excellent Good Good Excellent NetWare Windows NT Good Good Good Good Fair Fair Good Fair

7

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Reliability Accessibility Cost Scalability Third-party available Directory services Flexibility Performance Print support Years of experience utilities Excellent Good Depends Excellent Excellent Excellent Excellent Excellent Good >25 Good Excellen t Fair Good Good Good Good Good Good >10 Good Fair Fair Fair Fair Fair Fair Fair Fair <10

II. LÖnh vµ tiÖn Ých c¬ b¶n
C¸c lÖnh vµ tiÖn Ých cña Unix rÊt ®a d¹ng. Mét lÖnh UNIX cã d¹ng: $lÖnh [c¸c chän lùa] [c¸c ®èi sè] lÖnh th-êng lµ ch÷ nhá. Unix ph©n biÖt ch÷ lín, nhá víi ch÷ lín. VÝ dô: $ls -c /dev Víi ng-êi sö dông hÖ thèng, ta cã thÓ chia lÖnh thµnh c¸c nhãm sau: 1. C¸c lÖnh khëi t¹o login ®ã su nµo ®ã uname who Xem mét sè th«ng tin vÒ hÖ thèng. HiÖn lªn ng-êi ®ang th©m nhËp hÖ thèng ChuyÓn sang ng-êi sö dông tõ mét ng-êi sö dông Thùc hiÖn login vµo mét ng-êi sö dông nµo

who am i xem ai ®ang lµm viÖc t¹i terminal 8

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX exit env man Tho¸t khái hÖ thèng Xem th«ng tin tÊt c¶ c¸c biÕn m«i tr-êng. Gäi tr×nh trî gióp

2. C¸c lÖnh hiÓn thÞ echo HiÓn thÞ dßng ký tù hay biÕn lªn mµn h×nh

setcolor §Æt mµu nÒn vµ ch÷ cña mµn h×nh 3. §Þnh h-íng vµo ra cmd > File cmd < file ChuyÓn néi dung hiÓn thÞ ra file LÊy ®Çu vµo tõ file

cmd>>file Néi dung hiÓn thÞ ®-îc thªm vµo file cmd1 | lÖnh cmd2 4. Desktop: bc cal date mesg Dïng ®Ó tÝnh to¸n c¸c biÓu thøc sè häc HiÖn lÞch HiÓn thÞ vµ ®Æt ngµy CÊm/ cho phÐp hiÓn thÞ th«ng b¸o trªn mµn h×nh cmd2 §Çu ra cña lÖnh cmd1 thµnh ®Çu vµo cña

(bëi write/ hello) spell vi KiÓm tra lçi chÝnh t¶ So¹n th¶o v¨n b¶n Cho phÐp göi dßng th«ng b¸o ®Õn nh÷ng

write/ hello

ng-êi ®ang sö dông trong hÖ thèng wall thèng Göi th«ng b¸o ®Õn mµn h×nh ng-êi sö dông hÖ

9

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 5. C¸c lÖnh thao th- môc vµ t¸c file cd cp find mkdir rmdir mv pwd ls ln sort cat tail more trang grep wc T×m vÞ trÝ cña chuçi ký tù §Õm sè tõ trong tËp tin Thay ®æi th- môc Sao chÐp mét hay nhiÒu tËp tin T×m vÞ trÝ cña tËp tin T¹o th- môc Xo¸ th- môc ChuyÓn/ ®æi tªn mét tËp tin HiÖn vÞ trÝ th- môc hiÖn thêi HiÖn tªn file vµ thuéc tÝnh cña nã T¹o liªn kÕt file (link) S¾p xÕp thø tù tËp tin hiÓn thÞ Xem néi dung cña file Xem néi dung file t¹i cuèi cña file HiÖn néi dung tËp tin tr×nh bµy d-íi d¹ng nhiÒu

compress NÐn file. uncompress 6. In Ên cancel lp lpstat 7. Th- tÝn mail Göi - nhËn th- tÝn ®iÖn tö 10 Huû bá viÖc In In tµi liÖu ra m¸y in HiÖn tr¹ng th¸i hµng chê in Më nÐn.

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX mailx 8. Qu¶n lý tiÕn tr×nh kill ps Hñy bá mét qu¸ tr×nh ®ang ho¹t ®éng HiÖn c¸c tiÕn tr×nh ®ang ho¹t ®éng vµ tr¹ng

th¸i cña c¸c tiÕn tr×nh sleep Ng-ng ho¹t ®éng cña tiÕn tr×nh trong mét

kho¶ng thêi gian 9. KiÓm so¸t quyÒn h¹n vµ b¶o mËt passwd thay ®æi password hoÆc c¸c tham sè ®èi víi

ng-êi sö dông chgrp môc chmod chown Thay ®æi quyÒn h¹n trªn file hoÆc th- môc Thay ®æi ng-êi së h÷u tËp tin hay th- môc Thay ®æi quyÒn chñ së h÷u file hoÆc th-

10. L-u tr÷ vµ håi phôc d÷ liÖu cpio tr÷ tar L-u tr÷ d÷ liÖu ra tape hoÆc c¸c file tar L-u tr÷ vµ håi phôc d÷ liÖu ra c¸c thiÕt bÞ l-u

11. C¸c thao t¸c trªn m¹ng ping netstat ftp telnet Uutry rcp KiÓm tra sù tham gia cña c¸c nót trªn m¹ng KiÓm tra tr¹ng th¸i cña m¹ng hiÖn thêi Thùc hiÖn dÞch vô truyÒn nhËn file Thùc hiÓn kÕt nèi víi mét hÖ thèng KÕt nèi UUCP Sao chÐp file ë xa 11

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX

III.Th©m nhËp hÖ thèng - C¸c lÖnh c¨n b¶n
1. B¾t ®Çu vµ kÕt thóc phiªn lµm viÖc-X¸c lËp m«i tr-êng hÖ thèng Khi b¾t ®Çu lµm viÖc trªn hÖ thèng b¹n ph¶i login. ViÖc login b¸o cho hÖ thèng biÕt b¹n lµ ai vµ c¸c chñ quyÒn lµm viÖc cña b¹n, khi kÕt thóc phiªn lµm viÖc ph¶i logout. Khi ®ã kh«ng cã mét ai kh¸c cã thÓ truy xuÊt tËp tin cña b¹n nÕu kh«ng ®-îc phÐp. Trong mét hÖ thèng cã nhiÒu ng-êi sö dông, mçi ng-êi cã mét tªn vµ mét mËt khÈu duy nhÊt. Quy ®Þnh tªn cña ng-êi sö dông kh«ng ®-îc nhá h¬n 2 ký tù ký tù ®Çu. LÖnh env: HiÖn c¸c th«ng tin vÒ biÕn m«i tr-êng. LÖnh su: ChuyÓn sang ng-êi sö dông tõ mét ng-êi sö dông nµo ®ã. su <user> VÝ dô: §ang ë ng-êi sö dông anh muèn t¹m chuyÓn sang ng-êi sö dông root $su root HÖ thèng sÏ yªu cÇu nhËp mËt khÈu cña ng-êi sö dông root su - <user> - c <command arg> ChuyÓn sang user vµ gäi ch¹y lÖnh command LÖnh uname: Xem mét sè th«ng tin hÖ thèng hiÖn thêi. uname <option> -a -A HiÖn tÊt c¶ c¸c th«ng tin. HiÖn c¸c th«ng tin liªn quan ®Õn license. nÕu lín h¬n 8 ký tù th× Unix chØ lÊy 8

12

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX -m -r -s HiÖn tªn phÇn cøng cña hÖ thèng HiÖn lªn version hÖ ®iÒu hµnh. HiÖn tªn hÖ thèng

LÖnh who: HiÖn mét sè th«ng tin sö dông hÖ thèng. who <option> -r -n ChØ ra hÖ thèng ®ang ch¹y t¹i level nµo. HiÖn th«ng tin user ®ang login vµo hÖ thèng

VÝ du: $ who juucp pjh tty00 slan05 Sep 28 11:13 Sep 28 12:08

LÖnh who am i: Xem ai ®ang lµm viÖc t¹i terminal LÖnh exit: Tho¸t khái shell LÖnh man: Gäi tr×nh trî gióp man <command> VÝ dô: Muèn xem trî gióp lÖnh cp gâ $man cp

2. C¸c lÖnh hiÓn thÞ LÖnh echo: HiÓn thÞ dßng ký tù hay trÞ cña biÕn lªn mµn h×nh. echo [-n] [arg] -n In ra chuçi kü tù mµ kh«ng t¹o dßng míi

C¸c ký tù qui ®Þnh kh¸c ®-îc quy ®Þnh gièng nh- qui ®Þnh trong lÖnh printf trong C (\c In dßng kh«ng t¹o dßng míi, \t tab, \n in dßng vµ t¹o dßng míi ...) VÝ dô: $echo ‘Hien len man hinh’

13

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX $echo $PATH LÖnh setcolor: §Æt mµu nÒn vµ ch÷ cña mµn h×nh. setcolor <option> -b <color> -f <color> §Æt mµu nÒn. §Æt mµu ch÷. ®-êng èng:

3. §Þnh h-íng vµo ra vµ §Þnh h-íng vµo ra

C¸c ch-¬ng tr×nh nhËn d÷ liÖu nhËp vµ t¹o xuÊt ®Òu cã c¸c kªnh liªn l¹c ®Ó chuyÓn c¸c th«ng tin ®ã. §«i khi c«ng viÖc nµy ®-îc thùc hiÖn t-êng minh bëi ch-¬ng tr×nh "më" mét tËp tin cô thÓ. Trong UNIX c¸c thiÕt bÞ ®-îc xö lý nh- tËp tin -> c¸c thao t¸c vµo ra dÔ dµng cã thÓ ®æi h-íng vµo ra. UNIX cung cÊp mét sè ph-¬ng tiÖn gióp cho c¸c thao t¸c ®Þnh h-íng vµo ra: cmd > File cmd < file ChuyÓn néi dung hiÓn thÞ ra file LÊy ®Çu vµo tõ file

cmd>>file Néi dung hiÓn thÞ ®-îc thªm vµo file VÝ dô: $cal > cde HiÖn néi dung lÞch ra file abc C¸c ®æi thao t¸c ®æi h-íng vµo ra cã thÓ kÕt hîp víi nhau trong mét lÖnh. VÝ dô: cat <file1 > file2 §-êng èng cmd1 | cmd2 §Çu ra cña lÖnh cmd1 thµnh ®Çu

vµo cña lÖnh cmd2

14

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX §Æc ®iÓm ®-êng èng cña UNIX nèi kÕt 1 lÖnh nµy víi 1 lÖnh kh¸c. §Æc biÖt h¬n nã t¹o xuÊt chuÈn cña 1 lÖnh thµnh nhËp chuÈn cña 1 lÖnh kh¸c. Ký hiÖu ®-êng èng (|) ®-îc sö dông ®Ó thiÕt lËp ®-êng èng. VÝ dô: $ls | sort

NhËn xuÊt cña ls vµ göi nã ®Õn lÖnh sort ®Ó s¾p thø tù. Tæ hîp c¸c tËp tin víi nhËp chuÈn Trong Unix c¸c lÖnh ®-êng èng cã thÓ kÕt hîp víi ®æi h-íng. VÝ dô: wc baocao* | sort -n > rep-count kÕt qu¶ sÏ ®-a ra tËp tin rep-count. C¸c ký kiÖu vµo ra chuÈn trong lÖnh (0: nhËp chuÈn, 1: xuÊt chuÈn, 2: sai chuÈn) VÝ dô: spell baocao > baocaodung 2> baocaosai & Trong lÖnh trªn c¸c tõ sai sÏ ®-îc ®-a ra file

baocaosai. C¸c lÖnh Desktop 4. Desktop: LÖnh bc: Dïng ®Ó tÝnh to¸n c¸c biÓu thøc sè häc VÝ dô: $ bc x=5 10*x 50 ^d

15

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX LÖnh cal: HiÖn lÞch d-íi d¹ng sau: $ cal February 1994 S M Tu 1 6 13 20 27 7 14 21 28 8 15 22 W 2 9 16 23 Th 3 10 17 24 F 4 11 18 25 S 5 12 19 26

LÖnh date: HiÓn thÞ ngµy giê theo khu«n d¹ng mong muèn vµ cho phÐp thay ®æi ngµy hÖ thèng. VÝ dô: $date Sat Sep 28 1:45:58 EDT 1998 $date +%D 09/28/98 LÖnh mesg: Cho phÐp hoÆc cÊm hiÓn thÞ th«ng b¸o trªn mµn h×nh (bëi write/ hello) mesg [n] [y] n y CÊn kh«ng cho hiÓn thÞ. Cho phÐp hiÓn thÞ.

LÖnh spell: KiÓm tra lçi chÝnh t¶ xem cã lçi hay kh«ng nÕu cã th× hiÖn c¸c lçi sai LÖnh write/ hello:Cho phÐp göi dßng th«ng b¸o ®Õn nh÷ng ng-êi ®ang sö dông trong hÖ thèng vµ thùc hiÖn trao ®æi th«ng tin trùc tiÕp qua mµn h×nh terminal

16

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX write <user> Hello <user> VÝ dô: $write username < C©u th«ng b¸o cÇn gëi > ^d LÖnh wall: Göi th«ng b¸o ®Õn tÊt c¶ mµn h×nh ng-êi sö dông hÖ thèng terminal. VÝ dô: $wall Thong bao ^d LÖnh vi: So¹n th¶o v¨n b¶n d¹ng ®¬n gi¶n trªn Unix §Ó thùc hiÖn so¹n th¶o v¨n b¶n d¹ng text ®¬n gi¶n, trong Unix hç trî ch-¬ng tr×nh so¹n th¶o vi. Trong so¹n th¶o ph©n ra hai chÕ ®é lµ chÕ ®é lÖnh vµ chÕ ®é so¹n th¶o ChÕ ®é lÖnh: cho phÐp chÌn, xo¸, thay thÕ ... ChÕ ®é so¹n th¶o: cho phÐp so¹n th¶o v¨n b¶n. Esc

Command mode

Text mode

a, A, i, I, o, O §Ó vµo tr×nh so¹n th¶o vi ta ®¸nh: vi

<tªn file>

Khëi ®Çu vi ®Æt ë chÕ ®é lÖnh. §Ó vµo chÕ ®é so¹n th¶o

17

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ®¸nh (a, A, i, I, o, O) tho¸t khái chÕ ®é nµy ®¸nh ESC, tho¸t khái vi nhÊn: x Mét sè tuú chän cña vi vi <file> B¾t ®Çu so¹n th¶o t¹i dßng 1 vi +n <file> vi +/pattern vi -r tËp tin treo Mét sè lÖnh trong command mode cña lÖnh vi 0 $ ChuyÓn con trá tíi ®Çu dßng ChuyÓn con trá tíi cuèi dßng. B¾t ®Çu ë dßng n B¾t ®Çu ë pattern Phôc håi tËp tin sau khi hÖ thèng

/pattern T×m x©u v¨n b¶n b¾t ®Çu tõ dßng kÕ tiÕp. ?pattern T×m x©u v¨n b¶n tõ dßng tr-íc ®ã vÒ ®Çu. a ^b B b ^d D d Esc ^f G nG h i j k l Thªm text vµo sau ký tù hiÖn thêi. Back up one screen of text. Back up one space-delimited word. Back up one word. ChuyÓn xuèng d-íi nöa trang mµn h×nh Xo¸ ®Õn cuèi dßng dw = Xo¸ 1 tõ, dd = Xo¸ mét dßng ChuyÓn tõ insert mode sang command mode ChuyÓn xuèng mét trang mµn h×nh ChuyÓn con trá tíi dßng cuèi cïng cña file ChuyÓn con trá tíi dßng thø n ChuyÓn sang tr¸i mét ký tù. ChÌn text (chuyÓn sang insert mode) sau ký tù ChuyÓn con trá xuèng mét dßng. ChuyÓn con trá lªn mét dßng. ChuyÓn con trá sang ph¶i mét ký tù. 18

Backspace Move left one character.

hiÖn thêi.

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX n O o Return ^u U ®æi. u th¶o. W w x :e file :n :q UNIX. :q! :r file :w file :w Tho¸t khái lÖnh vi vµ quay trë l¹i hÖ thèng §äc néi dung file chØ ®Þnh vµ ®-a nã vµo trong Ghi néi dung trong bé ®Öm ra file chØ ®Þnh. Ghi bé ®Öm ra ®Üa. kh«ng ghi bÊt cø thay ®æi nµo. bé ®Öm hiÖn thêi cña lÖnh vi. Move forward one space-delimited word. Di chuyÓn tiªp mét tõ. Xo¸ mét ký tù. So¹n th¶o file míi mµ kh«ng tho¸t khái vi. ChuyÓn tíi file tiÕp trong danh s¸ch file dang Tho¸t khái lÖnh vi vµ quay trë l¹i dÊu nh¾c cña Undo thay ®æi cuèi cïng trªn file ®ang so¹n LÆp l¹i t×m kiÕm. Thªm mét dßng míi trªn dßng hiÖn thêi. Thªm mét dßng míi d-íi dßng hiÖn thêi. B¾t ®Çu mét dßng míi ChuyÓn lªn nöa trang mµn h×nh. Undo—Thay thÕ l¹i dßng hiÖn thêi nÕu cã thay

so¹n th¶o.

5. C¸c lÖnh thao t¸c trªn th- môc, file C¸c thao t¸c trªn th- môc LÖnh cd: Sö dông lÖnh ®Ó thay ®æi th- môc lµm viÖc hiÖn hµnh. cd [directory] VÝ dô: ChuyÓn ®Õn th- môc /usr/include: $cd /usr/include ChuyÓn trë l¹i th- môc "home": $cd

19

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ChuyÓn ®Õn mét th- môc con cña th- môc hiÖn hµnh: $cd ccs ChuyÓn ®Õn th- môc cha: $cd.. LÖnh ls: Sö dông lÖnh ls ®Ó tr×nh bµy néi dung cña thmôc ls [option] [directory] option: -l -c -a HiÖn chi tiÕt th«ng tin mét file HiÖn danh s¸ch c¸c tËp tin theo thø tù HiÖn lªn c¸c file bao gåm c¶ file .<tªn file> (vd:

.profile) -F HiÖn ph©n biÖt gi÷a directory (/), executable files

(*) víi c¸c file th«ng th-êng. -u Sö dông víi –l hiÖn thay v× hiÖn last access time

sÏ hiÖn last modification time. -s Sö dông víi –l hiÖn file size d-íi d¹ng blocks thay

cho d¹ng bytes. -t tªn. -r -x §¶o ng-îc tr×nh tù s¾p xÕp Cho phÐp hiÓn thÞ d¹ng nhiÌu cét Sö dông víi –u s¾p xÕp ®Çu ra theo time thay cho

VÝ dô: $ls -F bin/ chmod* etv/ temp $ls -l drwx-----13:08 public_html LÖnh mkdir: Sö dông mkdir ®Ó t¹o th- môc 2 sshah admin 512 May 12

20

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX mkdir [-p] [directory] -p T¹o c¸c th- môc gi¸n tiÕp nÕu tªn th- môc gi¸n tiÕp

trong ®-êng dÉn lµ kh«ng tån t¹i sù t¹o. VÝ dô: t¹o c¸c th- môc gi¸n tiÕp: $mkdir -p /usr/tam2/duc th- môc tam2 kh«ng tån t¹i do ®ã t¹o c¶ th- môc tam2 vµ duc. LÖnh pwd: Sö dông lÖnh pwd hiÖn toµn bé ®-êng dÉn cña th- môc hiÖn hµnh $pwd /usr/tam1/dung LÖnh rmdir: Sö dông rmdir ®Ó xo¸ th- môc rmdir [-ps] <directory> -p -s §ßi hái chÊp nhËn c¸c th- môc bÞ xo¸. Kh«ng hiÖn th«ng b¸o.

VÝ dô: xo¸ 1 th- môc rçng: $rmdir dung C¸c thao t¸c file
File System

File system lµ file ®-îc l-u trªn UNIX. Mçi file system l-u trong th- môc trong hÖ thèng c©y th-c môc UNIX. Møc ®Ønh cña c©y th- môc lµ th- môc gèc (root directory) b¾t ®Çu b»ng /. tiÕp sau lµ hÖ thèng c¸c th- môc con gi¸ trÞ dµi nhÊt cã thÓ cña mét th- môc lµ 1,024 ký tù. Th«ng th-êng Ýt quan t©m ®Õn møc thÊp cña mét file l-u trªn hÖ thèng UNIX nh-ng ®Ó hiÓu kü ta cÇn quan t©m ®Õn hai kh¸i niÖm inodes vµ superblock. Mét khi ®· hiÓu nã

21

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX sÏ gióp b¹n thuËn lîi trong viÖc qu¶n trÞ hÖ thèng file.
inodes

Inode duy tr× th«ng tin vÒ mçi file vµ phô thuéc vµo kiÓu file, Inode cã thÓ cã chøa h¬n 40 phÇn th«ng tin. Tuy nhiªn hÇu nh- chØ cã t¸c dông ®èi víi kernel vµ kh«ng liªn quan ®Õn ng-êi sö dông. PhÇn liªn quan chñ yÕu ®Õn ng-êi sö dông lµ: mode: §¸nh dÊu quyÒn truy nhËp vµ kiÓu file. Sè liªn kÕt cã chøa inode nµy. ID cña ng-êi chñ së h÷u file. ID Group cña file.

link count: user ID : group ID:

size Number: KÝch thøc file. access time: mod time: inode time: nhÊt. block list: ®Çu cña file.
Superblocks

Thêi ®iÎm truy nhËp gÇn nhÊt. Thêi ®iÓm söa ®æi gÇn nhÊt. Thêi ®iÓm mµ cÊu tróc inode thay ®æi gÇn

Danh s¸ch sè block ®Üa mµ cã chøa segment

Lµ th«ng tin ®Æc biÖt quan träng l-u trªn dÜa. Nã cã chøa th«ng tin ®Þnh h×nh cña ®Üa (sè head, cylinders ...), phÇn ®Çu cña danh s¸ch inode, vµ danh s¸ch block tù do. Bëi v× th«ng tin nµy lµ quan träng cho nªn hÖ thèng tù ®éng gi÷a mét b¶n sao trªn ®Üa tr¸nh viÖc rñi ro. Nã chØ liªn quan ®Õn khi mµ file system bÞ háng nÆng.
C¸c kiÓu File

Cã

8

kiÓu

file

lµ:

Normal

Files,

Directories,

Hard

Links, Symbolic links, Sockets, Named Pipes, Character 22

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Devices, Block Devices. Normal Files: Lµ lo¹i file sö dông th«ng thwngf nhÊt, chóng cã thÓ lµ text hoÆc binary file tuy nhiªn cÊu tróc bªn trong kh«ng liªn quan ®Õn quan ®iÓm qu¶n trÞ hÖ thèng. §Æc tÝnh cña file ®-îc x¸c ®Þnh bëi inode trong file system mµ m« t¶ nã. LÖnh ls -l chØ ra Normal Files nh- sau: -rw------hello Directories: Lµ lo¹i files ®Æc biÖt mµ cã chøa c¸c file 1 sshah admin 42 May 12 13:09

kh¸c. ChØ cã mét ¸nh x¹ tõ inode tíi disk blocks, cã thÓ cã nhiÒu ¸nh x¹ tíi mét tõ mét môc cña th- môc tíi inode. Khi dïng lÖnh ls –l mét Directorie hiÖn nh- sau: drwx-----public_html Hard Links: Hard link lµ mét directory entry ngo¹i trõ viÖc thay v× trá tíi file duy nhÊt nã trë tíi file ®· tån t¹i. §iÒu nµy t¹o ra cã hai file gièng hÖt nhau khi liÖt kª danh s¸ch file. dïng lÖnh ls -l: -rw------hello sau khi thùc hiÖn Hard link nh- sau: -rw------goodbye -rw------hello Symbolic Links: Symbolic link kh¸c víi hard link lµ nã 2 sshah admin 42 May 12 13:04 2 sshah admin 42 May 12 13:04 dïng lÖnh ls –l sÏ hiÓn thÞ 1 sshah admin 42 May 12 13:04 2 sshah admin 512 May 12 13:08

kh«ng trá tíi mét inode kh¸c nh-ng trá tíi mét filename kh¸c. §iÒu nµy cho phÐp symbolic links thùc hiÖn liªn 23

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX kÕt c¸c file systems mét c¸ch thuËn lîi sö dông lÖnh -s ta thÊy file www hiÖn nh- sau: 2 sshah admin 512 May 12 13:08 ln

drwx-----public_html lrwx------

1 sshah

admin

11 May 12 13:08

www -> public_html Sockets: Sockets dïng cho UNIX liªn kÕt m¹ng víi m¸y kh¸c. §iÒu nµy ®-îc sö dông nhê network ports. lÖnh ls -l socket file hiÖn nh- sau: srwxrwxrwx X0 Named Pipes: Gièng nh- socket named pipe cho phÐp ch-¬ng tr×nh liªn l¹c víi nhau qua file system. B¹n cã thÓ sö dông lÖnh mknod ®Ó t¹o named Pipe. named pipe hiÖn nh- sau: prw------mypipe Character Devices: Lµ kiÓu file ®Æc biÖt dïng ®Ó liªn l¹c víi c¸c system Device driver. character device hiÖn nh- sau: crw-rw-rwptyp4 Block Devices: Block devices hÇu nh- chia sÎ c¸c ®Æc tÝnh víi c¸c character devices trong th- môc /dev, ®-îc sö dông ®Ó liªn l¹c víi c¸c device drivers. §iÓm kh¸c cña block devices lµ kh¶ n¨ng truyÒn mét khèi l-îng lín d÷ liÖu t¹i mét thêi ®iÓm. Dïng lÖnh ls –l hiÖn nh- sau: brw------fd0c 2 root staff 16, 2 Jul 29 1992 1 root wheel 21, 4 May 12 13:40 Dïng lÖnh ls -l 1 sshah admin 0 May 12 22:02 Dïng lÖnh ls -l 1 root admin 0 May 10 14:38 Dïng

24

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX UNIX tæ chøc hÖ thèng tËp tin bao gåm chØ mét th- môc gèc (/) mµ tõ ®ã c¸c th- môc con cña nã ®-îc g¾n vµo mét c¸ch trùc tiÕp hay gi¸n tiÕp. Cã mét vµi th- môc con chuÈn /bin, /usr, /etc, v.v... Mçi th- môc nµy l¹i chøa c¸c tËp tin hay th- môc con. Ta cã thÓ sö dông ®-êng dÉn ®Çy ®ñ ®Ó x¸c ®Þnh mét tËp tin, vÝ dô: /usr/NVA/chuong1. B¹n còng cã thÓ sö dông chØ tªn tËp tin nÕu tËp tin ®-îc chøa trong th- môc hiÖn hµnh. Th-êng khi login, th- môc hiÖn hµnh sÏ ®-îc ®Æt ®Õn lµ th- môc "home". §©y lµ th- môc ®-îc thiÕt lËp bëi ng-êi qu¶n trÞ hÖ thèng dµnh cho ng-êi sö dông. Tªn tËp tin trong UNIX cã thÓ dµi 256 ký tù, ngo¹i trõ c¸c ký tù ®Æc biÖt sau: ! " ' ; / $ < > ( ) [ ]. { }. Ngoµi ra ta còng cã thÓ sö dông c¸c ký tù sau: C¸c ký hiÖu ®¹i diÖn: DÊu (*) ®¹i diÖn cho mét, nhiÒu hoÆc kh«ng ký tù nµo. DÊu (?) ®¹i diÖn cho mét ký tù ®¬n [...] ®¹i diÖn cho mét d·y ký tù cã thø tù trong b¶ng Alphabet. VÝ dô: liÖt kª tÊt c¶ c¸c th- môc b¾tt ®Çu b»ng ch÷ c, d, e: lc [cde]* LÖnh file: NhËn biÕt d¹ng file. Th«ng th-êng lÖnh file ph©n tÝch néi dung cña 1 file vµ hiÓn thÞ tÝnh chÊt cña th«ng tin chøa trong file: VÝ dô: $ file /etc/passwd => /etc/hosts: ascii text LÖnh cat: Xem néi dung 1 tËp tin vµ nèi kÕt c¸c tËp tin cat [option] [files] LÖnh more, pg: Dïng lÖnh more hoÆc pg ®Ó file trªn tõng trang mµn h×nh: VÝ dô: more thu hiÖn néi dung

25

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX LÖnh mv: §æi tªn tËp tin. mv <option> <old><new> -i NÕu file ®· cã th× lÖnh sÏ hái cã ghi ®Ì lªn file

hay kh«ng. -f Thùc hiÖn lÖnh mµ kh«ng hái g×.

VÝ dô: Thay ®æi tªn cña tËp tin ë th- môc hiÖn hµnh: $mv a.out test LÖnh ln: Sö dông lÖnh ln ®Ó g¸n thªm 1 tªn míi cho 1 tËp tin Có ph¸p: ln [-s] <tªn> <file, directory> ln Kh«ng tham sè t¹o hard link. T¹o symbolic link. tËp tin.

ln -s

LÖnh rm: Xo¸ tËp tin rm rm <option> <files>

-f Xo¸ c¸c tËp tin mµ kh«ng hái, thËm chÝ chñ quyÒn ghi lµ kh«ng cho phÐp -r Cho phÐp xo¸ c¶ th- môc bao gåm c¶ file vµ th- môc.

-i: Tr-íc khi xo¸ tËp tin sÏ hái x¸c nhËn viÖc xo¸ tËp tin VÝ dô: Xo¸ tËp tin thu: $rm thu LÖnh cp: Sao chÐp tËp tin. cp <option> <sou> <des> -i NÕu file trªn ®Ých ®· cã th× sÏ ®-îc hái cã ghi ®Ì hay kh«ng -r Copy c¶ th- môc

26

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX VÝ dô: cp /etc/passwd /usr/dung/passwdold

LÖnh find: T×m kiÕm 1 tËp tin hoÆc mét sè tËp tin tho¶ m·n ®iÒu kiÖn nµo ®ã find <path> <expression> -atime ®©y. -mtime ®©y. -user <un> §óng nÕu chñ cña files lµ un. NÕu gi¸ trÞ <n> §óng nÕu file bÞ thay ®æi n ngµy tr-íc <n> §óng nÕu file bÞ truy nhËp n ngµy tr-íc

lµ sè nã sÏ so s¸nh víi userID. -group <gn> §óng nÕu files thuéc th¸nh viªn cña nhãm

gn. NÕu gn lµ sè th× nã sÏ so s¸nh víi groupID. -perm <on> T×m files cã quyÒn truy nhËp files ®óng

víi gi¸ trÞ on. -links <n> T×m files cã n links.

-type <x> T×m file cã kiÓu x. -newer <fn> -local T×m file bÞ thay ®æi gÇn h¬n so víi fn. ChØ t×m t¹i local.

-size <n> [c] T×m file cã kÝch th-íc n blocks (c chØ ra character –byte) -print -depth HiÖn ®Çy ®ñ ®-êng dÉn cña files. Lu«n ®óng (cho phÐp t×m tÊt c¶ c¸c files

trªn directory). -name <pt> T×m files tho¶ m·n mÉu t×m pt.

VÝ dô: T×m tËp tin thu: $find . -name thu -print

27

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX /usr/tam/thu LÖnh grep: T×m kiÕm chuçi v¨n b¶n bªn trong tËp tin grep <option> <Chuçi cÇn t×m> <Files> Sö dông lÖnh grep ®Ó t×m kiÕm mét chuçi v¨n b¶n bªn trong c¸c tËp tin ®-îc chØ ®Þnh. NÕu chuçi v¨n b¶n dµi h¬n 1 ký tù th× ph¶i ®Ó trong hai dÊu nh¸y. -c -h In ra tæng sè dßng cã chøa mÉu cÇn t×m. Bá tªn file kh«ng hiÖn lªn t¹i dßng cã chøa mÉu t×m

thÊy. -i -n Bá qua ph©n biÖt ch÷ ho¸ vµ ch÷ th-êng. HiÖn lªn dßng chøa mÉu t×m thÊy vµ tr-íc ®ã lµ sè

cña dßng trong file. -v In tÊt c¶ c¸c dßng cã chøa mÉu t×m kiÕm.

DÊu * ®¹i diÖn cho mét hoÆc bÊt kú ký tù nµo. [character ] §¹i diÖn bëi mét m¶ng c¸c ký tù. VÝ dô: T×m chuçi ký tù "mail" trong tËp tin thu: $grep ‘ngan hang’ thu LÖnh tail: HiÖn c¸c dßng cuèi cña files tail [-f] <file> -f HiÖn 10 dßng cuèi vµ mçi dßng ®-îc thªm vµo tõ khi

gäi ch¹y lÖnh tail cho ®Õn khi kÕt thóc nã. LÖnh compress: Thùc hiÖn viÖc nÐn d÷ liÖu. File t¹o ra tù ®éng cã ®u«i .Z compress [ -cfv ] file(s) -c Writes to stdout instead of changing the file. -f Cho phÐp nÐn c¶ file ®· ®-îc nÐn. 28

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX -v HiÓn thÞ phÇn tr¨m gi¶m mçi lÇn nÐn. LÖnh uncompress: Thùc hiÖn viÖc cëi nÐn file d÷ liÖu. uncompress [ -cv ] [ file(s) ] 6. In Ên LÖnh lp: Thùc hiÖn viÖc in file m¸y in. lp -c <option> <files> Khi lÖnh ®-îc gäi lËp tøc t¹o b¶n sao cña file

vµ thùc hiÖn in trªn b¶n sao nµy. -d <des> §Ých cÇn in tíi. -n <num> Sè b¶n in. -o nobaner cpi=<n> ...) -q <pri> Møc ®é -u tiªn in (0 cao nhÊt ->39 thÊp nhÊt> VÝ dô: $lp -d epson thu.txt LÖnh lpstat: HiÖn tr¹ng th¸i hµng chê in cña m¸y in Kh«ng in phÇn trang tiªu ®Ò ®Çu tiªn. Sè character ®-îc in trªn 1 inch (10/12

lpstat <option> -a -d HiÖn danh s¸ch c¸c printer. HiÖn m¸y in ngÇm ®Þnh. HiÖn tr¹ng th¸i yªu cÇu ®Çu ra cña m¸y in

-o <pr>[-l]

pr. NÕu cã -l hiÖn chi tiÕt tr¹ng th¸i. -p <pr> -t -v <pr> HiÖn tr¹ng th¸i m¸y in. HiÖn tÊt c¶ th«ng tin vÒ tr¹ng th¸i. HiÖn tªn m¸y in vµ tªn ®-êng dÉn tíi thiÕt bÞ

t-¬ng øng.

29

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX LÖnh cancel: cancel Huû bá viÖc In Ên

<request id> <printer>

7. Th- tÝn ®iÖn tö Trong Unix hç trî ch-¬ng tr×nh mail vµ mailx cho phÐp ng-êi sö dông thùc hiÖn viÖc göi vµ nh©n mail theo chuÈn SMTP LÖnh mail: Th- ®iÖn tö cung cÊp c¸c kh¶ n¨ng c¬ b¶n ®Ó göi vµ nhËn th«ng b¸o. Mail sÏ hiÓn thÞ th«ng b¸o theo thø tù vµo tr-íc ra sau.Sau khi hiÓn thÞ mçi th«ng b¸o mail sÏ hiÖn lªn dÊu ? ®Ó chê lÖnh cña ng-êi sö dông. Gåm mét sè lÖnh sau: + d h HiÖn message tiÕp theo HiÖn mesage tr-íc ®ã Xo¸ message hiÖn thêi.

HiÖn header cña message.

m <user> Göi message tíi user. p HiÖn l¹i néi dung message.

s <file> Ghi message ra tËp tin hoÆc mbox w<file> header. q x ! lÖnh Tho¸t khái mail Tho¸t khái mail mµ kh«ng thay ®æi th«ng b¸o Thùc hiÖn lÖnh Unix Ghi message ra file nh-ng kh«ng ghi phÇn

Göi th- : §-a vµo lÖnh mail víi ®Þa chØ cña ng-êi sö dông.

30

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX VÝ dô: $mail dung@sysdomain <th«ng b¸o> ctrl-d NhËn th-: Khi login vµo hÖ thèng nÕu cã th- hÖ thèng sÏ th«ng b¸o " You have mail" khi ®ã cã thÓ ®¸nh $mail ®Ó thùc hiÖn c¸c thao t¸c trªn message. LÖnh mailx Mailx bao gåm c¸c lÖnh ®Ó chuyÓn vµ nhËn th-.: mailx <option> <user> option -e so¹n message

-v so¹n message b»ng lÖnh vi -r <file> ®äc file vµo message !<lÖnh> = delete dp tiÕp edit exit thay ®æi. headers h m HiÖn header cña message chØ ®Þnh. Göi message tíi ng-êi chØ ®Þnh HiÖn message tiÕp theo p q HiÖn message lªn mµn h×nh. Tho¸t khái mailx vµ hoµn thµnh c¸c e So¹n th¶o message. Tho¸t khái mailx vµ kh«ng l-u l¹i d Cho phÐp thùc hiÖn c¸c lÖnh shell. HiÖn sè cña message Xo¸ message hiÖn thêi Xo¸ message vµ chuyÓn ®Õn message kÕ

mail <user> next print quit n

thao t¸c ®· thùc hiÖn. reply r Tr¶ lêi mail tíi ng-êi göi vµ c¸c 31

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ng-êi nhËn. Reply save <file> Save undelete u visual message. write <file> w Ghi message mµ kh«ng ghi header. v R s S ChØ tr¶ lêi mail tíi ng-êi göi. Ghi message tíi file chØ ®Þnh. Ghi message sau khi göi nã. Bá xo¸ bëi lÖnh delete. Dïng lÖnh vi ®Ó so¹n th¶o

8. Qu¶n lý tiÕn tr×nh HÖ thèng Unix dïng c¸c tiÕn tr×nh (process) nhlµ

ph-¬ng tiÖn ®Ó qu¶n lý c¸c ch-¬ng tr×nh ®ang thùc hiÖn. Mçi lÖnh mµ ng-êi dïng gäi thùc hiÖn ®Òu gäi lµ mét tiÕn tr×nh. Mçi tiÕn tr×nh ®ang ho¹t ®éng ®Òu bao hµm mét sè th«ng tin liªn quan ®Æc biÖt cã mét gi¸ trÞ ID ®Ó nhËn d¹ng. Ngoµi ra cßn c¸c th«ng tin kh¸c nh- TTY, thêi gian, lÖnh ... TiÕn tr×nh t¹o ra mét tiÕn tr×nh kh¸c ®-îc gäi lµ tiÕn tr×nh cha. C¸c tiÕn tr×nh con nhËn biÕt tiÕn tr×nh cha cña nã qua ID cña qu¸ tr×nh cha. LÖnh kill: Hñy bá mét qu¸ tr×nh ®ang ho¹t ®éng. kill <signal> PID -0 group. -9 KÕt thóc tiÕn tr×nh kh«ng ®iÒu KÕt thóc tÊt c¶ c¸c tiÕn tr×nh trong process

kiÖn.(Unconditional kill signal) -15 KÕt thóc tiÕn tr×nhngÇm ®Þnh (software

termination signal) LÖnh ps: HiÖn c¸c tiÕn tr×nh ®ang ho¹t ®éng vµ tr¹ng 32

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX th¸i cña c¸c tiÕn tr×nh bao gåm c¸c tr-êng thÓ hiÖn c¸c th«ng tin sau: ps <option> -e HiÖn th«ng tin vÒ tÊt c¶ c¸c process ®ang ho¹t

®éng. -d In th«ng tin vÒ tÊt c¶ c¸c tiÕn tr×nh trõ phÇn

leader -a In tÊt c¶ th«ng tin vÒ process trõ c¸c process

kh«ng t-¬ng øng víi terminal. -f In ®Çy ®ñ tÊt c¶ c¸c th«ng tin.

LÖnh sleep: Ng-ng ho¹t ®éng cña tiÕn tr×nh trong mét kho¶ng thêi gian. sleep <time> Thêi gian ®-îc tÝnh b»ng gi©y 1-65536. LÖnh wait: Cho phÐp chê c¸c tiÕn tr×nh ch¹y chÕ ®é background kÕt thóc. Th-êng dïng trong c¸c script ®Ó ®ång bé t-¬ng t¸c. VÝ dô: cmd1 > file1& cmd2>file2& wait sort file1 file2 9. C¸c lÖnh liªn quan b¶o mËt vµ quyÒn h¹n
a) Kh¸i niÖm:

Khi ng-êi sö dông ®-îc t¹o th× c¸c th«ng tin sau yªu cÇu ®-îc ®-îc ®-a vµo:

33

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Tªn ng-êi sö dông

MËt khÈu Sè nhËn d¹ng (uid: user identify number) Sè cña nhãm (gid: group identify number) Chó thÝch Th- môc x©m nhËp (home directory) Tªn ch-¬ng tr×nh cho ch¹y lóc b¾t ®Çu lµm viÖc C¸c th«ng tin nµy ®-îc chøa trong file /etc/passwd Nhãm ng-êi sö dông: 1 nhãm ng-êi sö dông lµ tËp hîp cña 1 sè ng-êi sö dông cã thÓ dïng chung c¸c file cña nhau, ®-îc m« t¶ b»ng nh÷ng th«ng tin sau: Tªn cña nhãm MËt m· (cã thÓ cã hoÆc kh«ng cã) Sè cña nhãm (gid) Danh s¸ch nh÷ng ng-êi sö dông thuéc nhãm C¸c th«ng tin nµy ®-îc l-u trong tËp tin /etc/group Trong mét file ®-îc t¹o trong ®ã cã c¸c th«ng tin sau: -rwxr-xr-hello Nhãm ®Çu -rwxr-xr— DÊu g¹ch ®Çu tiªn thÓ hiÖn lo¹i file. Nhãm tiÕp theo gåm 3 nhãm nhá rwxrwxrwx nhãm ®Çu thÓ 2 sshah admin 42 May 12 13:04

hiÖn quyÒn h¹n cña ng-êi chñ së h÷u tËp tin, nhãm 2 thÓ hiÖn quyÒn h¹n cña nhãm cã quyÒn truy nhËp, nhãm 3 lµ quyÒn h¹n cña c¸c ng-êi sö dông kh¸c. Mçi nhãm gåm 3 gi¸ trÞ r (®äc), w (ghi, thay ®æi), x (thùc hiÖn). Permission Owner Group Other

34

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Read (r) Write (w) Execute (x) Total 4 2 1 7 4 2 1 7 4 2 1 7

TiÕp theo chØ ra sè liªn kÕt trªn file (2) Ng-êi chñ së h÷u cña file (sshah) Nhãm ng-êi sö dông cã quyÒn trªn file (admin) KÝch th-íc file (42) Thêi gian (May 12 13:04) Tªn file (Hello)
b) C¸c lÖnh

LÖnh chgrp: Thay ®æi nhãm truy xuÊt cña tËp tin. ChØ cã superuser hay ng-êi së h÷u míi ®-îc quyÒn thay ®æi quyÒn së h÷u file. chgrp <group> <files> VÝ dô: $ls -a test -rwx--x--x 1 bin bin 13023 Jun 21 94 test $chgrp data test $ls -a test -rwx--x--x 1 bin data 13023 Jun 21 94 test LÖnh chown: Thay ®æi ng-êi së h÷u tËp tin. ChØ cã

superuser hay ng-êi së h÷u míi ®-îc quyÒn thay ®æi. chown <owner> <files>. VÝ dô: $ls -a test

35

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX -rwx--x--x 1 bin data 13023 Jun 21 94 test $chown dung test $ls -a test -rwx--x--x 1 dung data 13023 Jun 21 94 test LÖnh umask: §Æt quyÒn truy xuÊt ngÇm ®Þnh ®èi víi 1 file hay th- môc t¹o. Sau khi ®Æt umask tÊt c¶ c¸c tËp tin vµ th- môc t¹o sÏ nhËn quyÒn truy nhËp. (gi¸ trÞ ngÇm ®Þnh lµ 022) umask <mask> 0 1 2 3 4 5 6 7 read read and and write write (and (not execute execute for for directories) directories) read (and execute for directories) read write (and execute for directories) write execute no permissions

VÝ dô: $umask 177 $cat test ... ^d $ls -l test -rw------ 1 dung adm 1 Mar 11 10:11 test LÖnh chmod: Thay ®æi quyÒn h¹n truy nhËp tËp tin

36

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX §Ó thùc hiÖn viÖc thay ®æi quyÒn h¹n trªn tËp tin th× ®ßi hái ng-êi thùc hiÖn lÖnh ph¶i lµ ng-êi së h÷u hay superuser (root). chmod <mode> <files> VÝ dô: $ls -l test -rw------ 1 dung adm 1 Mar 11 10:11 test $chmode 754 test $ls -l test -rwxr-xr-- ..... C¸c tham sè dïng víi lÖnh chmode <option> <files> u: ng-êi sö dông (user) g: nhãm (group) o: chung (other) a: tÊt c¶ (all) To¸n tö: +: thªm quyÒn -: bít quyÒn =: g¸n gi¸ trÞ kh¸c QuyÒn: r: ®äc (reading) w: ghi (writting) x: thùc hiÖn (execution) VÝ dô: $ls -l test

-rwxr-xr-- ..... $chmode g +w test 37

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX $ls -l test -rwxrwxr-- ...... test 10. L-u tr÷ vµ håi phôc d÷ liÖu C¸c tËp tin cña nh÷ng hÖ thèng th«ng tin ngµy cµng lín, sù cÇn thiÕt vµ møc ®é quan träng cña c¸c tËp tin nµy v« cïng quan träng. C¸c thiÕt bÞ phÇn cøng kh«ng thÓ ®¶m b¶o r»ng kh«ng bao giê cã sù cè nh- háng ®Üa, háng thiÕt bÞ l-u d÷ liÖu ... C¸c hÖ thèng phÇn mÒm còng kh«ng ph¶i lµ ch¹y hoµn toµn kh«ng x¶y ra sù cè g×. D÷ liÖu cña c¸c hÖ thèng th«ng tin xö lý nghiÖp vô tøc thêi ®ßi hái khi cã bÊt cø sù cè nµo xuÊt hiÖn lµm háng d÷ liÖu cña hÖ thèng, th× ngay sau ®ã d÷ liÖu ph¶i ®-îc kh«i phôc ngay. Tïy theo c¸c nhµ cung cÊp phÇn mÒm vµ phÇn cøng kh¸c nhau mµ hÖ thèng l-u tr÷ cã nh÷ng chøc n¨ng vµ tiÖn Ých kh¸c nhau nh-ng ®Òu cã chung mét môc ®Ých lµ l-u d÷ liÖu. Th«ng th-êng nh÷ng hÖ ®iÒu hµnh lín hoÆc nhá ®Òu hç trî c¸c tiÖn Ých gióp cho viÖc sao l-u vµ håi phôc d÷ liÖu nh»m gi¶m tèi thiÓu c¸c ¶nh h-ëng ®Õn hÖ thèngd÷ liÖu. Trong c¸c lo¹i hÖ ®iÒu hµnh Unix kh¸c nhau cã thÓ cã c¸c c«ng cô vµ c¸c tiÖn Ých gióp cho viÖc thùc hiÖn l-u tr÷ tuy nhiªn c¸c lÖnh hÇu hÕt ®-îc hç trî bëi c¸c lo¹i hÖ ®iÒu hµnh Unix. LÖnh tar: L-u tr÷ hoÆc håi phôc files tõ c¸c thiÕt bÞ l-u tr÷. tar <options> <tarfile name> <filenames to backup or restore>

38

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Mét sè c¸c option hay dïng. option =[key]<sub> Key c ®Çu. r File l-u tr÷ ®-îc ghi vµo vih trÝ cuèi cña T¹o l-u tr÷ míi vµ thùc hiÖn b¾t ®Çu ghi tõ

thiÕt bÞ l-u tr÷. t u HiÖn danh s¸ch c¸c file l-u tr÷. CËp nhËp thªm nÕu files ch-a cã, hoÆc ®· thay

®æi so víi lÇn sao chÐp tr-íc. x <sub> f ®Þnh. n v VÝ dô: ChØ thiÕt bÞ l-u tr÷ kh«ng phaie lµ tape HiÓn thÞ tªn file sao l-u hoÆc håi phôc tar cvf /dev/rmt/0hc /usr/local/datafiles tar tvf /dev/rmt/0hc > tarlist.txt LÊy th«ng tin tõ thiÕt bÞ l-u tr÷. e Cho phÐp ghi trªn nhiÒu volume.

Sö dông c¸c ®èi sè thay cho c¸c gi¸ trÞ ngÇm

cd /usr/contrib tar xvf /dev/rmt/0hc LÖnh cpio: L-u tr÷ vµ håi phôc d÷ liÖu ra c¸c thiÕt

bÞ l-u tr÷ chuÈn cpio tr÷ -i [cdmnv] c §äc d÷ liÖu tõ thiÕt bÞ l-u tr÷. -o [acv] Ghi d÷ liÖu ra ®Çu ra thiÕt bÞ l-u

Ghi thªm phÇn header phßng tr-êng hîp dïng trªn

c¸c m¸y kh¸c.

39

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX d m a u v VÝ dô: Th- môc sÏ ®-îc t¹o nÕu cÇn. D÷ l¹i thêi gian thay ®æi tr-íc ®©y. Thay ®æi thêi gian truy nhËp. Sao chÐp kh«ng ®iÒu kiÖn. HiÖn danh s¸ch tªn file. ls | cpio -oc > /dev/rst0

cpio -icd < /dev/rst0 LÖnh dd: Sao l-u vµ håi phôc d÷ liÖu theo ®óng tr¹ng th¸i trªn hÖ thèng file (block copy) dd [if= ][of= ]

if= §Çu vµo chuÈn. of= §Çu ra chuÈn. VÝ dô: dd if=/dev/diskette0 of=/mnt/abc.xx

dd if=/mnt/abc.xx of=/dev/diskette0 11. C¸c thao t¸c trªn m¹ng LÖnh ping: KiÓm tra sù tham gia cña c¸c nót trªn m¹ng LÖnh netstat: KiÓm tra tr¹ng th¸i cña m¹ng hiÖn thêi cña hÖ thèng local. Nã thÓ hiÖn c¸c th«ng tin vÒ giao diÖn m¹ng, th«ng tin routing table, th«ng tin vÒ Protocol. netstat <option> -a -c -i -n HiÓn thÞ th«ng tin tÊt c¶ c¸c interface TiÕp tôc hiÓn thÞ vµ tù update sau mét vµi gi©y. ChØ hiÓn thÞ th«ng tin vÒ interface HiÓn thÞ ®Þa chØ thay cho tªn.

40

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX -r -t -u -x HiÓn thÞ th«ng tin vÒ kernel routing table ChØ hiÓn thÞ th«ng tin vÒ TCP socket ChØ hiÓn thÞ th«ng tin vÒ UDP socket. HiÓn thÞ th«ng tin vÒ socket

VÝ dô: # netstat –r Routing Table: Destination Gateway Flags Ref Use Interface

—————————— —————————— —— —— ——— ———— localhost rmtnet rmtppp subnet1 224.0.0.0 default ws2 ws2 ws1 ws1 gateway UG localhost UG UG U 0 0 3 U 0 UH 0 109761 lo0

20086 1096 1955 3 0 le0 le0

16100

LÖnh telnet:

Thùc hiÖn kÕt nèi víi mét hÖ thèng cho

phÐp trë thµnh terminal cña hÖ thèng mµ nã kÕt nèi tíi. telnet <dest> LÖnh ftp: Thùc hiÖn dÞch vô truyÒn nhËn file. ftp <dest> Muèn debuge lÖnh ftp dïng thªm option -d (vÝ dô: ftp -d ftp.ha.com) Mét sè lÖnh trong ftp: ascii binary cd ChuyÓn sang ASCII transfer mode. ChuyÓn sang binary transfer mode. Thay ®æi th- môc trªn ftp server. 41

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX close del pwd get help lcd mget mput open put quit KÕt thóc kÕt nèi. Xo¸ file trªn ftp server HiÖn th- môc hiÖn thêi trªn ftp server LÊy file tõ ftp server Trî gióp Thay ®æi th- môc trªn client LÊy mét sè file trªn ftp server TruyÒn mét vµi file lªn ftp server

Më kÕt nèi víi ftp a server TruyÒn file tíi ftp server Tho¸t khái FTP.

LÖnh rlogin: Thùc hiÖn login tíi m¸y ë xa, cho phÐp truy nhËp tíi m¸y tÝnh trªn m¹ng gièng nh- lÖnh telnet. rlogin <hosts name> Trong tr-êng hîp nµy user ID trªn remote host ph¶i gièng íi user ID trªn local host. vÝ dô nh- nÕu testuser login vµo box1, rlogin dïng testuser login vµo box2. Tuy nhiªn nÕu mu«n slogin vµo user ID kh¸c dïng option sau: rlogin <hosts name> -l <user> LÖnh rcp: Sao chÐp file ë xa Tr-íc khi sö dông lÖnh rcp ng-êi sö dông ®· ph¶i ®-îc s½n sµng trªn remote machine. Bëi v× rcp kh«ng sö dông authentication (kh«ng gièng nh- rlogin). rcp <option> <sour> <dest>

-r ChØ sö dông trong tr-êng hîp copy th- môc. <sour> <dest> ®-îc viÕt theo quy ®Þnh 42

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX hostname:filepath user@hostname:filepath user@hostname.domain:filepath VÝ dô: rcp ha@box1:/export/home/ha/abc.txt

box2:/export/home/cc.m

IV.LËp tr×nh Shell
1. C¸c ®Æc tÝnh c¬ b¶n. LÖnh ®¬n gi¶n Lµ lÖnh ®-îc gäi thùc hiÖn cã tÝnh chÊt ®¬n nh- d¹ng sau: command <option> <arg> NhiÒu lÖnh trªn mét dßng Th«ng th-êng shell th«ng dÞch tõ ®Çu tiªn nh- lµ lÖnh cßn c¸c phÇn sau trë thµnh c¸c ®èi sè cña lÖnh. Cã 3 ký tù ®Æc biÖt mµ khi shell th«ng dÞch mµ gÆp ph¶i sÏ hiÓu sau ®ã lµ cã mét lÖnh tiÕp theo cÇn thùc hiÖn ®ã lµ (;), (&), (|). ; §îi lÖnh tr-íc hoµn thµnh míi thùc hiÖn ®Õn lÖnh

tiÕp sau (t-¬ng ®-¬ng víi thùc hiÖn c¸c lÖnh riªng rÏ). VÝ dô: $ who -H; df -v; ps -e & LÖnh sau kh«ng cÇn ph¶i ®îi lÖnh tr-íc kÕt thóc

thùc hiÖn. VÝ dô: $who -H & df -v & ps -e | sau: §Þnh h-íng vµo ra 43 SÏ lÊy ®Çu ra cña lÖnh tr-íc thµnh ®Çu vµo cña lÖnh

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Khi shell th«ng dÞch lÖnh mµ nh×n thÊy c¸c ký hiÖu ®æi h-íng vµo ra (<), (>). C¸c ®Þnh h-íng vµo ra nµy ®-îc göi tíi subshell ®Ó ®iÒu khiÓn viÖc thùc hiÖn lÖnh. Dßng lÖnh dµi Trong tr-êng hîp dßng lÖnh dµi muèn chia thµnh nhiÒu dßng th× kÕt thóc dßng ph¶i ®Æt ký tù (\). Khi gÆp ký tù nµy shell kh«ng coi dßng míi lµ kÕt thóc cña ®Çu vµo. VÝ dô: $ echo Now is the time for all good men \_ to come to the aid of the party. BiÕn trong shell Khi shell gÆp ký tù $ th× nã hiÓu tõ sau ®ã lµ tªn biÕn. Shell sÏ t×m biÕn ®· ®-îc ®Þnh nghÜa vµ lÊy gi¸ trÞ cña nã. NÕu biÕn ch-a ®Þnh nghÜa th× mét null string sÏ ®-îc tr¶ l¹i. §Ó ®Æt gi¸ trÞ cho biÕn chØ cÇn g¸n <tªn biÕn>=gi¸ trÞ VÝ dô: $ dir=ls $ $dir f* file1 file1a Cã thÓ thùc hiÖn g¸n nhiÒu h¬n mét biÕn trªn mét dßng lÖnh. BiÕn sÏ ®-îc g¸n tõ ph¶i sang tr¸i. VÝ dô: X=$Y Y=y echo $X y NÕu muèn lÊy ®Çu ra hoÆc kÕt qu¶ thùc hiÖn mét lÖnh lµm ®èi sè cña mét lÖnh kh¸c th× cã thÓ dïng dÊu (`) ®Ó bao lÊy lÖnh cÇn thùc hiÖn. 44

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX { variable:-value} { variable:+value} value. ${variable:?message} NÕu biÕn kh«ng ®Æt gi¸ trÞ th× G¸n gi¸ trÞ ngÇm ®Þnh cho biÕn. NÕu biÕn kh¸c null th× sÏ lÊy

message sÏ ®-îc in ra ®Çu ra lçi chuÈn. VÝ dô: $ echo Hello $UNA Hello $ echo Hello ${UNA:-there} NÕu kh«ng g¸n trÞ cho UNA th× sÏ hiÖn Hello there NÕu g¸n UNA=John SÏ hiÖn Hello John Khi shell gäi thùc hiÖn mét lÖnh tõ ®Çu tiªn ®-îc hiÓu lµ lÖnh, c¸c th«ng tin sau sÏ ®-îc hiÓu lµ c¸c ®èi sè cña lÖnh. §èi sè ®Çu tiªn ®-îc g¸n tíi biÕn $1, ®èi sè thø hai sÏ ®-îc g¸n tíi biÕn $2 ... $9. VÞ trÝ biÕn $0 lu«n cã chøa lÖnh. $# Chøa sè ®èi sè ®-îc göi tíi lÖnh qua vÞ trÝ cña

biÕn. $$ $? Chøa process ID cña process hiÖn thêi. Cã chøa tr¹ng th¸i cña lÖnh cuèi cïng. Mang gi¸ trÞ

0 nÕu lÖnh thùc hiÖn thµnh c«ng, kh¸c kh«ng nÕu cã lçi xuÊt hiÖn. $* Cã chøa tÊt c¶ positional argument ®-îc göi tíi

45

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ch-¬ng tr×nh. VÝ dô: cã mét script file nh- sau: # restoreany cd $WORKDIR cpio -i $* </dev/rmt0 $ restoreany file1 file2 file3 C¸c file file1 file2 file3 sÏ ®-îc restore tõ thiÕt bÞ l-u tr÷ LÖnh shift: Dïng ®Ó dÞch biÕn vÞ trÝ VÝ dô: $1 = -r $2 = file1 $3 = file2 shift KÕt qu¶ lµ: $1 = file1 $2 = file2 BiÕn m«i tr-êng Lµ c¸c biÕn mµ shell hoÆc bÊt kú mét ch-¬ng tr×nh nµo

cã thÓ lÊy vµ truy nhËp nã. Cã mét sè biÕn m«i tr-êng ngÇm ®Þnh trong shell nh- HOME, MAIL, PATH, PS1, PS2 ... 2. LËp tr×nh shell Trong Shell c¸c biÕn th«ng th-êng ®-îc l-u d-íi d¹ng character ®Ó thùc hiÖn c¸c tÝnh to¸n to¸n häc phaØ dïng lÖnh expr. expr <integer operator integer> C¸c to¸n tö lµ (+), (-), (*), (/). C¸c phÐp to¸n tr¶ vÒ phÇn nguyªn. VÝ dô:

46

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX $ expr 5 + 7 / 3 7 Null command ®¹i diÖn bëi dÊu (:) §Ó lÊy d÷ liÖu trùc tiÕp tõ ng-êi sö dông dïng lÖnh read $ read var1 var2 var3 Hello my friend $echo $var1 $var2 $var3 Hello my friend
a) LÖnh ®iÒu kiÖn

LÖnh true vµ false: True lu«n tr¶ gi¸ trÞ 0, false lu«n tr¶ gi¸ trÞ 1 LÖnh test: KiÓm tra ®iÒu kiÖn xem ®óng hay sai test condition Testing Character Data str1 = str2 vµ ký tù) str1 != str2 -n str1 null) -z str1 str1 §óng nÕu str1 lµ null (chiÒu dµi =0) §óng nÕu str1 kh¸c null §óng nÕu str1 kh¸c str2 §óng nÕu chiÒu dµi str1 lín h¬n 0 (is not §óng nÕu str1 gièng hÖt str2 (vÒ ®é dµi

Testing Numeric Data int1 -eq int2 §óng nÕu int1 b»ng int2 int1 -ne int2 §óng nÕu int1 kh¸c int2 int1 -gt int2 §óng nÕu int1 lín h¬n int2 int1 -ge int2 §óng nÕu int1 lín h¬n hoÆc b»ng int2 47

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX int1 -lt int2 §óng nÕu int1 nhá h¬n int2 int1 -le int2 §óng nÕu int1 nhá h¬n hoÆc b»ng int2 Testing for Files -r filenm §óng nÕu user cã quyÒn ®äc filenm -w filenm §óng nÕu user cã quyÒn ghi trªn filenm -x filenm §óng nÕu user cã quyÒn thùc hiÖn filenm -f filenm §óng nÕu filenm lµ regular file -d filenm §óng nÕu filenm lµ th- môc -c filenm §óng nÕu filenm lµ character special file -b filenm §óng nÕu filenm lµ block special file -s filenm §óng nÕu kÝch th-íc filenm kh¸c 0 -t fnumb §óng device Shorthand Method of Doing Tests Bëi v× lÖnh test lµ mét trong nh÷ng lÖnh quan träng bËc nhÊt trong shell ®Ó cho shell gÇn víi c¸c ng«n ng÷ lËp trinhf kh¸c ng-êi ta ®· thay test b»ng bao ®ãng ([]). VÝ dô: $ int1=4 $ [ $int1 -gt 2 ] $ echo $? 0 if-then if command_1 then command_2 nÕu fnumb (1 by default) lµ terminal

48

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX command_3 fi NÕu command_1 Thùc hiÖn thµnh c«ng th× command_2,

command_3 míi ®-îc thùc hiÖn tiÕp theo.

if-then -else if command_1 then command_2 command_3 else command_4 command_5 fi if -then-elif if command then command elif command then command elif command then command fi LÖnh case case value in pattern1) command command;;

49

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX pattern2) command command;; ... patternn) command; esac LÖnh case chØ thùc hiÖn mét lÖnh t¹i mét thêi ®iÓm nÕu gi¸ trÞ phï hîp víi pattern, C¸c lÖnh tiÕp sau ®ã sÏ ®-îc thùc hiÖn cho ®Õn khi gÆp (;;).
b) LÖnh lÆp

LÖnh while : Thùc hiÖn khi ®iÒu kiÖn cßn ®óng while command do command ... command done LÖnh until Thùc hiÖn cho ®Õn chi ®iÒu kiÖn ®óng until command do command ... command done LÖnh for: Thùc hiÖn lÇn l-ît øng c¸c gi¸ trÞ trong arg for variable in arg1 arg2 do command ... ... argn

50

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX command done LÖnh break: Cho phÐp tho¸t khái vßng lÆp.
c) Shell Functions

funcname () { command ... }
d) LÖnh trap

_

command;

Trong qu¸ tr×nh thùc hiÖn c¸c shell script cã thÓ t¹o ra nhiÒu c¸c file t¹m dïng trong qu¸ tr×nh thao t¸c d÷ liÖu. Tuy nhiªn trong qu¸ tr×nh ch¹y kh«ng tr¸nh khái c¸c sù cè, hoÆc c¸c thao t¸c tõ phÝa ng-êi sö dông nh»m ngõng thùc hiÖn tiÕn tr×nh gi÷a chõng. §Ó cã thÓ thùc hiÖn viÖc xo¸ c¸c file t¹m nµy hoÆc thùc hiÖn c¸c thao t¸c nµo ®ã khi tiÕn tr×nh bÞ ngõng thùc hiÖn dïng lÖnh trap. trap command_string signals Signal 0 1 2 3 9 15 VÝ dô: 51 Description Shell exit Hangup Operator Interrupt Quit Kill Software Termination (kill signal)

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX trap "rm $TEMPDIR/*$$; exit" 1 2 15
e) Thùc hiÖn lÖnh ®iÒu kiÖn víi cÊu tróc AND(&&) vµ OR (||)

Th«ng th-êng ®Ó thùc hiÖn c¸c lÖnh theo ®iÒu kiÖn ta cã thÓ sö dông c¸c lÖnh trong lËp tr×nh shell ®Ó thùc hiÖn. Tuy nhiªn Shell cung cÊp tæ hîp lÖnh thùc hiÖn ®iÒu kiÖn lµ && vµ ||. command1&&command2 Trong tæ hîp lÖnh nµy th× lÖnh ®Çu tiªn ®-îc thùc hiÖn tr-íc nÕu qu¸ tr×nh thùc hiÖn kÕt thóc hoµn thµnh (tr¶ gi¸ trÞ 0) th× lÖnh tiÕp sau ®ã míi ®-îc thùc hiÖn. Tæ hîp tr¶ gi¸ trÞ ®óng (0) khi c¸c lÖnh ®Òu tr¶ gi¸ trÞ ®óng (0) command1||command2 Trong tæ hîp lÖnh nµy th× lÖnh ®Çu ®-îc thùc hiÖn tr-íc vµ nÕu nã kÕt thóc cã lçi (kh¸c 0) th× lÖnh tiÕp sau ®ã míi ®-îc thùc hiÖn. Tæ hîp tr¶ gi¸ trÞ sai khi tÊt c¶ c¸c lÖnh ®Òu tr¶ gi¸ trÞ sai (kh¸c 0) Debugging Shell Programs §Ó lÇn b-íc theo c¸c lÖnh trong ch-êng tr×nh shell dïng lÖnh. sh -x <shell file> LÖnh sÏ thùc hiÖn tõng lÖnh trong file vµ hiÖn nã lªn mµn h×nh.

V. Starting Up and Shutting Down
1. Booting the System Tr-íc khi b¹n cã thÓ sö dông m¸y tÝnh cña b¹n, ph¶i khëi ®éng hÖ ®iÒu hµnh. Qu¸ tr×nh khëi ®éng hÖ ®iÒu hµnh ®-îc

52

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX gäi lµ booting. Khi hÖ thèng ®· ®-îc khëi ®éng th× c¸c device, application, vµ service trªn m¸y tÝnh ®· s½n sµng cho viÖc sö dông. Bëi v× UNIX lµ mét hÖ ®iÒu hµnh ®a nhiÖm vµ ®a ng-êi sö dông, nªn nhiÒu tiÕn tr×nh ®-îc gäi thùc hiÖn ngay ban ®Çu. §Çu tiªn UNIX ch¹y phÇn khëi ®éng hÖ thèng ®Ó ®Æt ®ång hå, cÊu h×nh thiÕt bÞ vµ t¹o UNIX kernel míi (nÕu cÇn thiÕt). Sau ®ã hÖ thèng b¾t ®Çu ch¹y c¸c tiÕn tr×nh t-¬ng øng víi c¸c trang th¸i khëi ®éng riªng biÖt ®-îc ph©n ra trªn hÖ thèng. Trong hÇu hÕt c¸c hÖ ®iÒu hµnh Unix viÖc khêi ®éng hÖ thèng th-êng theo c¸c tr×nh tù sau:  X¸c ®Þnh thiÕt bÞ boot.  N¹p kernel tõ thiÕt bÞ boot.  T×m vµ khëi ®éng c¸c thiÕt bÞ ngo¹i vi.  Khëi t¹o c¸c t¸c vô hÖ thèng c¬ b¶n.  Ch¹y c¸c script mµ c¸c ch-¬ng tr×nh t¹o ra ®Ó cung cÊp c¸c dÞc vô.  B¾t ®Çu c¸c øng dông kh¸c. Th«ng th-êng hÖ thèng ch¹y ngÇm ®Þnh lµ ë tr¹ng th¸i 3. Tr¹ng th¸i nµy s½n sµng cho nhiÒu ng-êi sö dông trong m«i tr-êng m¹ng (Bao gåm c¶ file sharing). §iÒu nµy cã nghÜa lµ tÊt c¶ c¸c hÖ thèng file ®-îc liªn kÕt (mounted) trªn hÖ thèng c¸c tiÕn tr×nh nÒn (daemon) ®-îc b¾t ®Çu cho phÐp ng-êi sö dông login, vµ qu¸ tr×nh ®iÒu khiÓn vµo ra cña m¹ng còng ®-îc b¾t ®Çu. Ta cã thÓ thùc hiÖn c¸c møc ho¹t ®éng kh¸c nhau vµ c¸c møc truy nhËp kh¸c nhau b»ng c¸c ®Æt tr¹ng th¸i boot hoÆc b»ng c¸c thay ®æi tr¹ng th¸i trong khi hÖ thèng

53

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ®ang ch¹y. Tr¹ng th¸i 3 lµ full network/multiuser, tr¹ng th¸i 1 vµ 2 lµ single-user/limited access. Khi ta khëi ®éng m¸y t×nh mµ cµi hÖ ®iÒu hµnh UNIX, PhÇn khëi ®éng ban ®Çu ®-îc qu¶n lý bëi mét tiÕn tr×nh gäi lµ init. Init xö lý c¸c tiÕn tr×nh trong c¸ch thøc trªn c¬ së tr¹ng th¸i ®Þnh nghÜa trong file /etc/inittab. TiÕn tr×nh init khiÓm tra vµ khëi ®éng c¸c tiÕn tr×nh trong file /etc/inittab. C¸c tiÕn tr×nh ®-îc coi nhsysinit processe. Sysinit processes lµ c¸c tiÕn tr×nh ®¶m b¶o cho hÖ thèng ho¹t ®éng mét c¸ch ®ïng ®¾n, chÝnh x¸c. VÝ dô:/etc/inittab: cr::sysinit:/sbin/ckroot >/dev/sysmsg 2>&1 ck::sysinit:/sbin/setclk >/dev/sysmsg 2>&1

mm::sysinit:/etc/conf/bin/idmodreg >/dev/sysmsg 2>&1 ldmd::sysinit:/etc/conf/bin/idmodload >/dev/sysmsg 2>&1 ap::sysinit:/sbin/autopush f /etc/ap/chan.ap bchk::sysinit:/sbin/bcheckrc 2>&1 bu::sysinit:/etc/conf/bin/idrebuild reboot </dev/console >/dev/sysmsg 2>&1 ia::sysinit:/sbin/creatiadb 2>&1 Chi tiÕt c¸c lÖnh nh- sau:  ckroot — §äc c¸c tham sè cña mount cho root file system trong file /etc/vfstab. C¸c tham sè bao gåm c¸c kiÓu file hÖ thèng, ®iÒu nµy lµ cÇn thiÕt t¹o root file system s½n sµng cho hÖ thèng. Ckroot còng thùc hiÖn viÖc kiÓm tra hÖ thèng file (víi lÖnh 54 </dev/console >/dev/sysmsg </dev/console >/dev/sysmsg

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX fsck) nÕu nh- nã x¸c ®Þnh ®-îc lµ cã vÊn ®Ò trong hÖ thèng file. VÝ dô nh-: NÕu ta t¾t m¸y mµ kh«ng thùc hiÖn shutdown, hÖ thèng ®-a ra th«ng b¸o kiÓm tra hÖ thèng khi nã thùc hiÖn viÖc gi¶i quyÕt c¸c sù cè mµ nã t×m thÊy.  setclk— §Æt ®ång hå cho hÖ thèng UNIX.  idmodreg— N¹p danh s¸ch c¸c kernel modules trong file /etc/mod_register.  idmodload—N¹p danh s¸ch c¸c kernel modules trong file /etc/loadmods.  autopush—CÊu h×nh mét danh s¸ch c¸c modules ®-îc tù ®éng ®Èy vµo c¸c Streams device khi c¸c device ®-îc më. Danh s¸ch ®-îc c¸c ®Èy modules trªn ®Ønh trong cña file console /etc/ap/chan.ap

monitor device ®Ó cung cÊp c¸c th«ng tin theo c¸c dßng víi kiÓu quy ®Þnh.  bcheckrc—Khëi ®éng mét vµi t¸c vô bao gåm ®Æt tªn hÖ thèng mounting /proc (processes) vµ /dev/fd (floppy disk) devices, thùc hiÖn kiÓm tra vµ liªn kÕt c¸c thiÕt bÞ thªm vµo cã liªn quan ®Õn floppy disks.  idrebuild—KiÓm tra xem kernel cã ph¶i rebuilt hay kh«ng nÕu cã th× ch¹y lÖnh idbuild ®Ó t¹o l¹i nã. Kernel cÇn ph¶i ®-îc t¹o l¹i mçi khi thªm vµo thiÕt bÞ míi hoÆc khi thay®æi c¸c tham sè.  creatiadb—ThiÕt lËp hÖ thèng b¶o mËt. Khi mµ chøc n¨ng khëi ®éng hÖ thèng ®-îc thiÕt lËp, init kiÓm tra c¸c môc khëi ®éng ngÇm ®Þnh trong inittab ®Ó x¸c ®Þnh møc ch¹y mµ hÖ thèng.

55

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Kh¸i niÖm System States Trong Unix ng-êi qu¶n trÞ hÖ thèng cã thÓ thiÕt lËp hÖ thèng m¸y tÝnh lín trong single-user mode, mµ kh«ng cã phÇn m¹ng hoÆc terminals login. Trong tr-êng hîp nµy ng-êi qu¶n trÞ cã thÓ thèng gåm c¸c level sau:  0 - Lµ møc shutdown. Khi thay ®æi sang møc 0 th× tÊt c¶ c¸c tiÕn tr×nh ®Òu bÞ ngõng ho¹t ®éng.  1 (s or S)—øng víi møc single-user. Cã 3 tr¹ng th¸i cã thÓ thay ®æi tíi single-user lµ: 1, s, vµ S. Ta ®Æt hÖ thèng cho c¸c trong ng-êi møc sö single-user dông kh¸c nÕu truy ta muèn hÖ kh«ng nhËp kiÓm tra xem xÐt hÖ thèng tr-íc khi cã yªu cÇu kh¸c vÝ dô nh- cµi ®Æt l¹i hÖ thèng. HÖ

thèng. §iÓm kh¸c gi÷a møc 1, s, vµ S lµ: 1—TÊt c¶ c¸c hÖ thèng file vÉn ®-îc mount, tÊt c¶ c¸c kÕt nèi m¹ng bÞ ng¾t bá, tÊt c¶ c¸c tiÕn tr×nh terminal ®Òu bÞ ng¾t bá. Møc s hoÆc S—§©y lµ møc b¾t ®Çu hÖ thèng NÕu kh«ng cã file /etc/inittab. NÕu thay ®æi ®Õn tr¹ng th¸i nµy, terminal cña ng-êi sö dông sÏ lµ system console, c¸c terminal ®Òu bÞ ng¾t bá vµ c¸c hÖ thèng file vÉn ®-îc mount. Khi hÖ thèng chuyÓn sang møc nµy chØ cã mét sè c¸c c¸c hÖ thèng file ®-îc mount vÝ dô: /, /var, /proc...  2—Lµ møc nhiÒu ng-êi sö dông. Møc nµy khëi ®éng tÊt c¶ c¸c script trong th- môc /etc/rc2.d, gåm nhiÒu tiÕn tr×nh cho phÐp nhiÒu ng-êi sö dông. NÕu muèn sö dông hÖ thèng víi hiÖu lùc m¹ng vµ m«i tr-êng nhiÒu ng-êi sö dông th× ph¶i ch¹y ë møc 2 (hoÆc 3).  3—Lµ møc cho phÐp chia sÎ d÷ liÖu víi c¸c hÖ thèng ë xa. NÕu cµi ®Æt NFS HÖ thèng tù ®éng th«ng b¸o vµ mount c¸ hÖ thèng file ë xa b»ng NFS.. 56

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  6—Lµ møc khëi ®éng l¹i hÖ thèng. khi thay ®æi sang møc 6 hÖ thèng shutdown vµ khëi ®éng l¹i.  Ngoµi ra cßn mét sè møc khëi ®éng kh¸c tuú theo lo¹ hÖ ®iÒu hµnh Unix mµ cã c¸c hç trî víi môc ®ivchs kh¸c nhau. HÖ thèng cã thÓ ®Æt ë c¸c møc 1, s, S, 2, hoÆc 3 lµm møc ngÇm ®Þnh ®Ó ch¹y. Th«ng th-êng lµ møc 2 hoÆc 3 trªn c¸c hÖ thèng Unix. §Ó thay ®æi tr¹ng th¸i cña hÖ thèng sö dông lÖnh init (hoÆc telinit). Initialization Table (inittab) File /etc/inittab cã chøa c¸c tiÕn tr×nh mµ ®-îc khëi ®éng khi init thùc hiÖn khëi ®éng hÖ thèng hoÆc khi thay ®æi tr¹ng th¸i. Mét sè thµnh phÇn trong inittab lµ ch¹y d-íi chÕ ®é nÒn mét sè kh¸c nh- /etc/rc2, ®-îc sö dông ®Ó thiÕt lËp c¸c tiÕn tr×nh kh¸c cho møc ch¹y riªng. Mçi mét thµnh phÇn trong file inittab bao gåm c¸c tr-êng sau: idtag:runstate:action:process  Idtag lµ mét thÎ nµo ®ã ( tõ 1–4 ký tù) x¸c ®Þnh mét môc. Runstate lµ tr¹ng th¸i hÖ thèng mµ thµnh phÇn sÏ ch¹y trong nã. Ta cã thÓ cã mét vµi tr¹ng th¸i hÖ thèng g¸n cho mét thµnh phÇn.  Action lµ tõ kho¸ t-¬ng øng víi mét trong c¸c : respawn (NÕu tiÕn tr×nh bÞ mÊt th× tù b¾t ®Çu l¹i), wait (§îi tiÕn tr×nh kÕt thóc tr-íc khi thùc hiÖn tiÕp thµnh phÇn bªn d-íi, once (Ch¹y mét tiÕn tr×nh, ®îi cho nã kÕt thóc vµ kh«ng khëi t¹o l¹i), boot (Ch¹y tiÕn tr×nh lÇn ®Çu chuyÓn sang tr¹ng th¸i nhiÒu ng-êi sö dông vµ kh«ng ®îi tiÕn tr×nh kÕt thóc), bootwait (ch¹y 57 tiÕn tr×nh lÇn ®Çu,

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX chuyÓn sang tr¹ng th¸i nhiÒu ng-êi sö dông, ®îi cho tiÕn tr×nh kÕt thóc, vµ sysinit (ch¹y tiÕn tr×nh khi hÖ thèng b¾t ®Çu).  Process lµ lÖnh thùc sù ch¹y khi c¸c tiªu chuÈn tr-íc ®ã lµ runstate vµ action VÝ dô: co:12345:respawn:ttymon g v p "Console Login: " d \ [cc]/dev/console l console Môc nµy lµ co, ch¹y ë møc 1, 2, 3, 4, vµ 5. NÕu tiÕn tr×nh bÞ mÊt ®i th× nã tù ®éng khëi ®éng l¹i. TiÕn tr×nh nµy ch¹y lÖnh ttymon(terminal monitor), mµ cho phÐp ta thùc hiÖn viÖc login tõ system console. Run State Directories (rc?.d) C¸c øng dông mµ cÇn cã c¸c tiÕn tr×nh ch¹y chÕ ®é nÒn hoÆc yªu cÇu mét vµi thµnh phÇn ®-îc khëi ®éng khi hÖ thèng b¾t ®Çu ho¹t ®éng, th«ng th-êng cã c¸c script trong th- môc x¸c ®Þnh tr¹ng th¸i ch¹y cña hÖ thèng. Gåm c¸c th- môc sau:  /etc/rc0.d—cã chøa c¸c quan hÖ script khëi ®éng ban ®Çu víi tr¹ng th¸i shutdown (0) vµ reboot (5 vµ 6).  /etc/rc1.d— cã chøa c¸c quan hÖ script khëi ®éng ban ®Çu víi tr¹ng th¸i single-user (1, s, vµ S).  /etc/rc2.d— cã chøa c¸c quan hÖ script khëi ®éng ban ®Çu víi tr¹ng th¸i multiuser (2 vµ 3).  /etc/rc3.d— cã chøa c¸c quan hÖ script khëi ®éng ban ®Çu víi tr¹ng th¸i file-sharing (3).  /etc/shutdown—T-¬ng thÝch víi c¸c hÖ preSystem V, Release 3 gåm c¸c script ®-îc gäi ch¹y khi hÖ thèng shutdown. Th«ng th-êng th- môc nµy lµ rçng ngo¹i 58 ®-îc ®¸p øng.

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX trõ c¸c script mµ ta thªm vµo.  /etc/rc.d—T-¬ng thÝch víi c¸c hÖ preSystem V,

Release 3 gåm c¸c script ch¹y khi hÖ thèng khë ®éng. Th«ng th-êng th- môc nµy lµ rçng ngo¹i trõ c¸c script mµ ta thªm vµo.  /etc/init.d—Thùc hiÖn nh- lµ n¬i chøa c¸c startup script. C¸c Script kh«ng thùc sù ch¹y tõ th- môc nµy, nh-ng nã liªn kÕt víi c¸c th- môc rc?.d t-¬ng øng. Startup Scripts Startup script lµ lÖnh ch¹y khi khëi ®éng hÖ thèng, shutdown hÖ thèng hoÆc khi thay ®æi tr¹ng th¸i hÖ thèng. NÕu thùc hiÖn xem néi dung c¸c file nµy b»ng lÖnh cat hoÆc pg ta sÏ nh×n thÊy hµng lo¹t c¸c lÖnh shell víi c¸c tuú chän start hoÆc stop. Khi øng dông thªm vµo mét startup script. th× nã thªm script vµo th- môc /etc/init.d. sau ®ã thùc hiÖn link nã tíi mét hoÆc nhiÒu th- môc víi tªn file b¾t ®Çu b»ng S (for start) hoÆc K (for kill). Ta h·y xem xÐt vÝ dô vÒ mouse manager: Khi cµi ®Æt UnixWare, mét shell script cho viÖc khëi ®éng vµ kÕt thóc tiÕn tr×nh qu¶n lý mouse trªn øng dông giao thµnh diÖn hai ®å ho¹ file lµ file /etc/init.d/mse, ®-îc link vµ kh¸c lµ /etc/rc2.d/S02mse

/etc/rc0.d/K02mse. C¸c lÖnh trong file script nh- sau: case "$1" in 'start') /usr/lib/mousemgr &

59

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ;; 'stop') pid='/usr/bin/ps e | /usr/bin/grep mousemgr |\ [cc]/usr/bin/sed e 's/^ if [ "${pid}" != "" ] then /usr/bin/kill ${pid} fi ;; *) echo "Usage: /etc/init.d/mse { start | stop }" ;; esac Khi khëi ®éng hÖ thèng tiÕn tr×nh init kiÓm tra file *//' e 's/ .*//''

/etc/inittab t×m c¸c môc mµ phï hîp víi tr¹ng th¸i ch¹y ngÇm ®Þnh, th«ng th-êng lµ tr¹ng th¸i 3. Thùc hiÖn viÖc t×m r2, ch¹y lÖnh trong /sbin/rc2 vµ kiÓm tra tÊt c¶ c¸c script trong th- môc /etc/rc2.d. Sau ®ã ch¹y c¸c file b¾t ®Çu b»ng K víi tuú chän stop vµ b¾t ®Çu ch¹y c¸c script mµ b¾t ®Çu b»ng ch÷ S víi tuú chän start. Trong vÝ dô trªn th× lÖnh ch¹y S02mse lµ: S02mse start. øng víi tuú chän start lµ lÖnh /usr/lib/mousemgr ®-îc thùc hiÖn vµ tiÕn tr×nh tiÕp tôc ch¹y cho ®Õn khi cã thay ®æi l¹i tr¹ng th¸i hÖ thèng. Khi shutdown hÖ thèng tiÕn tr×nh init ch¹y tiÕn tr×nh tr¹ng th¸i 0, c¸ch thøc gièng nh- trªn. Nh-ng môc ch¹y lµ r0, ch¹y lÖnh /etc/rc0, thùc hiÖn kiÓm tra trong thmôc /etc/rc0.d. TÊt c¶ c¸c script b¾t ®Çu b»ng ch÷ K ®-îc gäi thùc hiÖn víi tuú chän stop. Víi script K02mse 60

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ®-îc gäi ch¹y nh- sau: K02mse stop. øng víi tuú chän stop th× script ch¹y lÖnh x¸ ®Þnh ID cña tiÕn tr×nh mousemgr vµ huû bá nã, t-¬ng tù víi tiÕn tr×nh kh¸c vµ sau khi thùc hiÖn hoµn tÊt th× hÖ thèng cã thÓ shutdown. Thay ®æi tr¹ng th¸i víi init hoÆc telinit Khi hÖ thèng ®ang ch¹y ta cã thÓ thay ®æi tr¹ng th¸i hoÆc møc ho¹t ®éng cña hÖ thèng b»ng lÖnh init hoÆc telinit. NÕu ta ®ang shutdown hÖ thèng hoÆc chuyÓn sang tr¹ng th¸i thÊp h¬n cã thÓ sö dông lÖnh shutdown. LÖnh init cho phÐp thay ®æi tr¹ng th¸i mét c¸ch dÔ dµng b»ng c¸ch gâ lÖnh init vµ theo sau lµ sè chØ tr¹ng th¸i vÝ dô: init 2 LÖnh telinit lµ link cña init. LÖnh telinit ®-îc t¹o ra

cho ng-êi sö dông. 2. Shutting Down the System Cã vµi c¸ch ®Ó shutdown hÖ thèng Unix: B»ng c¸ch sö dông lÖnh Shutdown, reboot, b»ng lÖnh trong giao diÖn ®ã ho¹, b»ng c¸ch t¾t m¸y ... Using the shutdown Command LÖnh shutdown cã thÓ ®-îc sö dông thay cho lÖnh init ®Ó chuyÓn tr¹ng th¸i sang (0) vµ tr¹ng th¸i reboot (6). LÖnh cã thÓ lµ phøc t¹p trong m«i tr-êng nhiÒu ng-êi sö dông. NÕu dïng lÖnh init 0 hÖ thèng bÞ down ngay. NÕu muèn ng-êi sö dông ph¶i logout ra hÕt tr-íc khi hÖ thèng down cã thÓ dïng lÖnh: # cd / # shutdown y g60 i0 Tuú chän y cho phÐp bá qua c¸c c©u hái yªu cÇu g60 trong vßng 60 gi©y ng-êi sö dông ph¶i logout tr-íc khi hÖ 61

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX thèng down. i0 g¸n víi tr¹ng th¸i lÖnh init 0. Khi ch¹y lÖnh nµy th× tÊt c¶ ng-êi sö dông trªn m¹ng sÏ ®-îc th«ng b¸o ph¶i logout hÖ thèng s¾p shutdown vµ dµnh kho¶ng thêi gian cho ng-êi sö dông hoµn thµnh c«ng viÖc cuèi cïng tr-íc khi hÖ thèng down.

VI.Managing processes
1. Processes Sau khi hÖ thèng hoµn thµnh viÖc khëi ®éng hÖ thèng ta cã thÓ thùc hiÖn ch¹y c¸c øng dông. Mét øng dông ®ang thùc thi gäi lµ mét process. C«ng viÖc cña hÖ ®iÒu hµnh lµ qu¶n lý thùc thi øng dông. Khi thùc thi mét ch-¬ng tr×nh th× hÖ ®iÒu hµnh sÏ t¹o ra mét process míi. NhiÒu process cã thÓ cïng ®ång thêi tån t¹i, nh-ng chØ mét process cã thÓ ®-îc thùc hiÖn thùc sù trªn CPU t¹i mét thêi ®iÓm. HÖ ®iÒu hµnh ph©n chia viÖc thùc thi c¸c process mét c¸c rÊt nhanh lµm cho c¸c process nh- ®ang thùc hiÖn ®ång thêi. Kh¸i niÖm nµy xem nh- lµ sù ph©n chia thêi gian xö lý hoÆc ®a nhiÖm. Khi tho¸t khái ch-¬ng tr×nh th× process sÏ kÕt thóc vµ hÖ ®iÒu hµnh sÏ gi¶i phãng c¸c tµi nguyªn mµ ch-¬ng tr×nh ®· sö dông. HÇu hÕt c¸c ch-¬ng tr×nh ®Òu thùc hiÖn mét vµi nhiÖm vô tõ lóc khëi ®Çu cho ®Õn lóc kÕt thóc cho nªn ®Ó thùc thi c¸c t¸c vô ch-¬ng tr×nh yªu cÇu hÖ ®iÒu hµnh cung cÊp c¸c tµi nguyªn cÇn thiÕt cho viÖc thùc thi. Cã mét vµi lo¹i process cã trong c¸c hÖ ®iÒu hµnh Unix. Mçi lo¹i cã c¸c ®Æc ®iÓm riªng gåm: Interactive process lµ process ®-îc khëi ®éng bëi shell nã cã thÓ lµ foreground hoÆc background. Batch process lµ process mµ

62

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX kh«ng t-¬ng øng víi terminal. Daemon process lµ process mµ ch¹y background khi ®-îc yªu cÇu. Lo¹i nµy th-êng thùc hiÖn khi khëi ®éng hÖ thèng. Mét sè lÖnh liªn quan ®Õn viÖc qu¶n lý tiÕn tr×nh:kill, ps PhÇn tham sè cña lÖnh xem trong end user. VÝ dô: $ ps -f UID PID PPID sartin 1400 -sh sartin 1406 ps –f LÖnh ps cho phÐp ng-êi qu¶n trÞ xem xÐt c¸c th«ng tin vÒ hÖ th«ng b¸o gåm c¸c th«ng sè sau: F ChØ ra tr¹ng th¸i cña process vµ ®-îc tÝnh to¸n bëi 1400 25 18:34:33 pts/5 0:00 1398 C STIME 80 TTY TIME COMD 0:01

18:31:32 pts/5

c¸c gi¸ trÞ hexadecimal gåm: 00 01 02 04 Process ®· kÕt thóc. Lµ system process lu«n tån t¹i trong memory Process ®ang bÞ kiÓm so¸t bëi tiÕn tr×nh cha. Process ®ang bÞ kiÓm so¸t bëi tiÕn tr×nh cha vµ

nã ®· bÞ dõng. 08 10 event 20 S Process kh«ng thÓ bÞ swapped Process kh«ng thÓ ®-îc kÝch ho¹t bëi c¸c signal Process ®ang trong bé nhí vµ bÞ lock ®ang ®îi

Còng dïng chØ tr¹ng th¸i cña process:

63

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX O S Process ®ang ch¹y trªn processor. Process ®ang sleeping, vµ ®ang ®îi I/O event

®Ó hoµn thµnh. R I Z Process ®ang s½n sµng ch¹y. Process kh«ng lµm g×. Process ®· bÞ kÕt thóc vµ tiÕn tr×nh cha kh«ng ®îi nh-ng nã vÉn ®ang trong process table (zombie process) T X Process ®· bÞ ngõng bëi tiÕn tr×nh cha. Process ®ang ®îi ®Ó lÊy thªm bé nhí.

UID User ID cña ng-êi chñ process PID Process ID number PPID Parent process ID number C Sö dông CPU theo thêi gian biÓu.

CLS Líp thêi gian biÓu, real-time, time sharing, hoÆc system PRI Møc -u tiªn Process (sè cµng lín ®é -u tiªn cµng nhá). NI Møc ®é -u tiªn vÒ chiÕm dông thêi gian xö lý CPU.

T¨ng gi¸ trÞ -> gi¶m ®é -u tiªn. SZ Tæng virtual memory yªu cÇu bëi process.

Wchan §Þa chØ cña process trong process table. TTY Terminal khëi ®éng process, hoÆc cha nã. (A ? chØ ra kh«ng cã terminal tån t¹i.) TIME Tæng thêi gian process sö dông CPU tõ khi process b¾t ®Çu. COMD LÖnh t¹o ra process

64

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 2. Process scheduling Th«ng th-êng c¸c hÖ thèng lín hoÆc cÇn cung cÊp d÷ liÖu th-êng xuyªn hÖ thèng lu«n ®-îc ch¹y 24/24. UNIX ®-a ra mét sè lÖnh cho phÐp thùc hiÖn c¸c process theo thêi gian ®Þnh s½n. LÖnh at: LÖnh at ®-îc sö dông ®Ó ®Ó ®Æt schedule cho

mét lÖnh thùc hiÖn trong thêi gian qui ®Þnh. at time date < file ViÖc ®Æt lÞch theo kho¶ng thêi gian nµo ®ã tuú theo ng-êi ®Æt qui ®Þnh. Cã thÓ lµ hh:mm, cã thÓ hh:mm(pm,am). Cã mét sè tõ vÒ thêi gian dïng lµm option lµ noon, midnight, now, next. Cã thÓ ®Æt ngµy, th¸ng thùc hiÖn May 10 hoÆc day of the week . VÝ dô: at 20:30 < reorg.data at 8:30 pm < reorg/data at 20:30 today < reorg.data at 8:30 pm Friday < reorg.data at 0900 Monday next week < reorg.data Dïng lÖnh at -l ®Ó hiÖn danh s¸ch c¸c c¸c process ®-îc schedule. VÝ dô: $ at -l user = tparker job 827362.a at Wed Aug 31 06:00:00 EDT 1995 user = tparker job 829283.a at Wed Aug 31 09:30:00 EDT 1995 Dïng lÖnh at –r <job> ®Ó bá mét schedule. 65

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX VÝ dô: at -r 2892732.a LÖnh cron vµ crontab: cron lµ mét tiÖn Ých cho phÐp thùc hiÖn c¸c lÖnh t¹i mét thêi ®iÓm chØ ®Þnh mµ kh«ng cÇn mét ai trùc tiÕp khëi ®éng nã. HÖ thèng UNIX tù ®éng load cron nh- lµ mét daemon khi nã khëi ®éng. Khi ho¹t ®éng cron ®äc thêi gian vµ c«ng viÖc mµ nã ®-îc ®Þnh thùc hiÖn trong crontab file. ViÖc thùc hiÖn c¸c t¸c vô ®Æt trong crontab file lµ lu«n lu«n ®-îc thùc hiÖn nã chØ ngõng thùc hiÖn khi kÕt thóc tiÖn Ých cron hoÆc khi thay ®æi th«ng tin trong crontab file. Trªn hÇu hÕt c¸c hÖ thèng viÖc truy nhËp vµ t¹o c¸c schedule chØ ®-îc thùc hiÖn bëi ng-êi qu¶n trÞ hÖ thèng. Ngµy nay mét sè hÖ ®iÒu hµnh UNIX cßn cho phÐp ng-êi sö dông tù t¹o c¸c crontab cña riªng hä. §Ó t¹o crontab file sö dông lÖnh crontab víi tham sè -l. Nã sÏ t¹o ra mét crontab file cho phÐp t¹o c¸c t¸c vô mong muèn. $ crontab -l > new_crontab_file $ vi new_crontab_file [edit the file to update your crontab] $ crontab new_crontab_file $ Mét crontab file ®-îc thÓ hiÖn d-íi khu«n d¹ng sau: <minute> <hour> <day-of-month> <month-of-year> <day-ofweek> <command> Gi¸ trÞ chÊp nhËn cña c¸c tr-êng: minute (0-59)

66

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 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) VÝ dô 0 17 1 * 0 date | mail user

LÖnh sÏ ®-îc thùc hiÖn vµo 5 p.m. vµo ngµy ®Çu th¸ng vµ 5 p.m. mçi ngµy chñ nhËt. C¸c file cron tab ®-îc ®Æt trong th- môc cron ®Ó thùc hiÖn. Th- môc nµy cã thÓ ë mét vÞ trÝ nµo ®ã tuú lo¹i UNIX th«ng th-êng lµ /usr/spool/cron/ hoÆc /var/spool/cron/. 3. Process priorities

VII.Security
ViÖc truy nhËp hÖn thèng th«ng th-êng ®-îc thùc hiÖn trùc tiÕp tù system console, qua hÖ thèng m¹ng, qua modem connection. ViÖc truy nhËp hÖ thèng UNIX ®ßi hái ng-êi sö dông ph¶i ®-îc t¹o trªn hÖ thèng víi mËt khÈu truy nhËp vµ quyÒn truy nhËp t-¬ng øng tíi tµi nguyªn hÖ thèng. 1. Security datafiles §Ó x¸c ®Þnh quyÒn h¹n truy nhËp hÖ thèng, Víi c¸c hÖ thèng UNIX th«ng th-êng c¸c th«ng tin liªn quan ®Õn nhãm vµ ng-êi sö dông truy nhËp hÖ thèng ®-îc l-u tr÷ trong c¸c file (security datafiles).

67

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX password File File nµy dïng l-u tr÷ th«ng tin vÒ ng-êi sö dông hÖ thèng bao gåm c¸c tr-êng riªng rÏ c¸ch nhau bëi dÊu (:), khu«n d¹ng file gåm c¸c dßng cã d¹ng nh- sau. File ®-îc ®Æt trong th- môc /etc: username:pswd:uid:gid:uid comments:directory:shell  Tr-êng username lµ tªn user thùc hiÖn khi login t¹i

dÊu nh¾c Unix login:. Th«ng th-êng tr-êng nµy lµ gåm c¸c ký tù ch÷ th-êng nhá h¬n hoÆc b»ng 8, tªn duy nhÊt, kh«ng ®-îc chøa dÊu (:, dÊu c¸ch, ký tù ®Æc biÖt). C¸ch tèt lµ dïng dÊu g¹ch d-íi (_) cho dÊu nèi.  Tr-êng pswd lµ phÇn mËt khÈu víi c¸c khu«n d¹ng kh¸c nhau. Nã cã thÓ mang gi¸ trÞ rçng chØ ra r»ng kh«ng yªu cÇu mËt khÈu khi login. Gi¸ trÞ cã thÓ dµi tíi 13 ký tù vµ ®-îc m· ho¸. C¸c ký tù ®-îc gâ vµo lµ c¸c ký tù n»m trong kho¶ng { . / 0-9 A-Z a-z } cßn c¸c gi¸ trÞ kh¸c lµ kh«ng ®-îc chÊp nhËn. §èi víi mét sè lo¹i cña hÖ ®iÒu hµnh UNIX th× cã thÓ ®-îc më réng h¬n hoÆc ®-îc liªn kÕt víi mét file kh¸c (shadown).  Tr-êng uid lµ id cña user. Gi¸ trÞ nµy lµ duy nhÊt vµ cã gi¸ trÞ tõ 0- 65535. Mét sè lo¹i hÖ ®iÒu hµnh cã khuyÕn nghÞ c¸ch dïng c¸c id trong ph¹m vi an toµn. Chóng bao gåm: 0: The superuser Daemons and pseudo users System, reserved and "famous" users

1-10: 11-99:

100+: 60001:

Normal users "nobody" (occasionally 32000 or 65534)

68

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX

60002:

"noaccess" (occasionally 32001)

 Tr-êng gid lµ id cña nhãm ngÇm ®Þnh mµ user thuéc vµo. Gi¸ trÞ nµy t-¬ng øng víi gi¸ trÞ cã trong /etc/group file.  Tr-êng uid comments field lµ tr-êng ghi chó c¸c th«ng tin thªm vµo c¸c phÇn th«ng tin cã thÓ c¸ch nhau b»ng dÊu (,) vÝ dô: Homer User,,,800-IAM-HOME.  Tr-êng directory lµ th- môc home hoÆc th- môc lµm viÖc cña ng-êi sö dông.  Tr-êng shell lµ tr-êng chøa bé th«ng dÞch lÖnh hoÆc ch-¬ng tr×nh ng-êi sö dông gäi tíi khi login. Th«ng th-êng lµ mét trong ba shell sau: sh (Bourne), ksh (Korn), csh. NÕu kh«ng lµ c¸c shell th× nã cã thÓ lµ mét ch-¬ng tr×nh nµo ®ã VÝ dô : root:x:0:0:Superuser:/: daemon:*:1:5::/:/sbin/sh bin:*:2:2::/usr/bin:/sbin/sh sys:*:3:3::/: adm:*:4:4::/var/adm:/sbin/sh uucp:*:5:3::/var/spool/uucppublic:/usr/lbin/uucp/uucico lp:*:9:7::/var/spool/lp:/sbin/sh nuucp:*:11:11::/var/spool/uucppublic:/usr/lbin/uucp/uuci co hpdb:*:27:1:ALLBASE:/:/sbin/sh nobody:*:-2:60001::/: dave:x:100:10:Dave G,13,x3911,unlisted:/usr1/dave:/bin/tcsh charlene:x:101:10:Charlene 69

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX G,14,x1800,unlisted:/usr1/charlene:/bin/tcsh john:x:102:60:John 1234,x1400:/usr2/john:/bin/ksh georgia:x:103:60:Georgia S,11,x143,x143:/usr2/georgia:/bin/csh Shadow Password File File /etc/passwd th«ng th-êng ng-êi sö dông cã thÓ xem ®-îc. §Ó l-u tr÷ mËt khÈu cña ng-êi sö dông ®· ®-îc m· ho¸ vµ mét sè th«ng tin kh¸c, mét sè lo¹i UNIX sö dông file /etc/shadow. Th«ng th-êng mét file shadow cã d¹ng sau: username:pswd:lastchg:min:max:warn:inactive:expire:flag  Tr-êng username lµ tªn user lÊy tõ file /etc/passwd.  Tr-êng pswd cã chøa 13 ký tù m· ho¸ cña password, null chØ ra kh«ng cã password khi login.  Tr-êng lastchg lµ ngµy mµ password thay ®æi cuèi.  Tr-êng
min

S,2,555-

lµ

ngµy

nhá

nhÊt

gi÷a

ngµy

thay

®æi

password.  Tr-êng
max lµ sè ngµy lín nhÊt mµ password sÏ ®-îc

chÊp nhËn.  Tr-êng
warn

cã

chøa

sè

ngµy

th«ng

b¸o

tr-íc

khi

password bÞ qu¸ h¹n.  Tr-êng inactive lµ tr-êng sè ngµy mµ username vÉn cßn t¸c dông tr-íc khi kh«ng ®-îc cho phÐp login.  Tr-êng expire chØ sè ngµy x¸c ®Þnh mµ ng-êi sö dông ®-îc quyÒn login vµo hÖ thèng.  Tr-êng flag hiÖn kh«ng sö dông.

70

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Group File §©y lµ file liªn quan ®Õn quyÒn h¹n cña ng-êi sö dông, cña nhãm trªn hÖ thèng file trong hÖ ®iÒu hµnh Unix. CÊu tróc file nh- sau: group_name:password:group_id:list  Tr-êng group_name chøa tªn cña group.  Tr-êng password lµ phÇn m· ho¸ cña mËt khÈu nhãm nÕu cã.  Tr-êng group_id lµ gi¸ trÞ ID cña group.  Tr-êng list lµ danh s¸ch c¸c ID cña ng-êi sö dông thþc nhãm. VÝ dô: root::0:root other::1:root,hpdb bin::2:root,bin sys::3:root,uucp adm::4:root,adm daemon::5:root,daemon mail::6:root lp::7:root,lp tty::10: nuucp::11:nuucp users::20:root,dave,charlene,john,georgia,operator,steve ,judy,wayne,jamie nogroup:*:-2: systech::110:dave,disdb,diskf,disjs,dispm,diskj dba::201:oracle,john,kathy,pete

71

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Hosts.equiv: ChØ ra danh s¸ch c¸c host vµ c¸c user khi truy nhËp hÖ thèng víi c¸c lÖnh rlogin, rcp, rsh khi truy nhËp kh«ng cÇn mËt khÈu. CÊu tróc file nh- sau: host1 host2 +@group1 @group ®-îc l-u trong file netgroup netgroup: Chøa c¸c group netgroup name name ... user

netgroup (hostname, user, domain) . .rhosts: T-¬ng tù nh- trªn 2. Group and User administration
a) Group administration

T¹o group Xo¸ group
b) User administration

T¹o ng-êi sö dông Cã ba c¸ch ®Ó t¹o mät ng-êi sö dông hÖ thèng lµ:  So¹n file passwd, shadow vµ c¸c file t-¬ng øng b»ng tay.  Sö dïng lÖnh useradd.  Sö dông c¸c tiÖn Ých Graphical User Interface (GUI) ®-îc c¸c hÖ ®iÒu hµnh UNIX hç trî.

72

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Tr-íc khi t¹o mét ng-êi sö dông ta cÇn ph¶i:  Chän tªn ng-êi sö dông. Tªn nµy ph¶i duy nhÊt trong hÖ thèng.  G¸n user ID (gi¸ trÞ nµy ch-a ®-îc sö dông tr-íc ®©y) vµ Group mµ user thuéc vµo.  Chän group mag user sö dông nã lµm primary group.  Chän th- môc home cña ng-êi sö dông. LÖnh Useradd : LÖnh t¹o ng-êi sö dông. useradd [ -c comment ] [ -d dir ] [ -e expire ] [ -f inactive ] [ -g group ] [ -G group [, group...]] skel_dir ]] [ - u uid [ -o]] [ -s shell ] login  -c Ghi chó VÝ dô: -c "Temp user"  -d Th- môc home cña user.  -e Ngµy qu¸ h¹n tr-êng nµy kh«ng yªu cÇu ph¶i cã. NÕu cã th× viÖc kiÓm tra ngµy qu¸ h¹n sÏ cã hiÖu lùc. VÝ dô: -e "January 1, 1995" hoÆc -e 1/1/95  -f ChØ ra sè ngµy kh«ng ho¹t ®éng tèi ®a tr-íc khi kh«ng ®-îc chÊp nhËn. NÕu kh«ng cã tuú chän nµy th× viÖc kiÓm tra bÞ bá qua.  -g group—ChØ ra primary group ID cña user.  -G group [, group ... ]—ChØ ra group mµ user thuéc vµo. (secondary groups). Gi¸ trÞ cã thÓ lµ tªn hoÆc group ID  -m [ -k skel_dir ]—NÕu kh«ng cã tham sè –k -> t¹o thmôc home cho user vµ copy c¸c file tõ /etc/skel. NÕu cã tham sè -k -> t¹o th- môc home vµ 73 [ -m [ -k

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX copy c¸c file tù skel_dir thay cho ë /etc/skel.  -u uid [ -o]—DÆt user ID. NÕu cã -o th× user ID nµy lµ kh«ng duy nhÊt. Tuy nhiªn UNIX kh«ng khuyÕn nghÞ dïng nhiÒu user chung mét ID.  -s shell—ChØ login shell.  login—ChØ tªn ng-êi sö dông dïng ®Ó login vµo hÖ thèng. Xo¸ ng-êi sö dông Tr-íc khi xo¸ mét ng-êi sö dông ta cÇn quan t©m xem thùc sù muèn xo¸ ng-êi sö dông hay chØ cÇn t¹m thêi lµm mÊt hiÖu lùc cña ng-êi sö dông. Xem xÐt c¸c lý do sau tr-íc khi quyÕt ®Þnh.  NÕu user cã kh¶ n¨ng sÏ ®-îc quyÒn quay trë l¹i hÖ thèng, viÖc sö dông l¹i d÷ liÖu sÏ khã vµ cßn tr¸nh viÖc sö dông ID ®· sö dông v× khi ®ã c¸c d÷ liÖu do ng-êi bÞ lo¹i bá sÏ ®-îc g¸n l¹i cho ng-êi míi t¹o.  CÇn thiÕt trong tr-êng hîp håi phôc c¸c file d÷ liÖu liªn quan ®Õn ng-êi sö dông ®· bÞ xo¸. NÕu d÷ liÖu håi phôc mµ cã cña user ®· bÞ xo¸ th× sau ®ã ta khã x¸c ®Þnh d÷ liÖu nµy lµ cña ai -> viÖc sö dông l¹i sÏ rÊt khã kh¨n. §Ó t¹m thêi kh«ng cho user th©m nhËp hÖ thèng dïng lÖnh passwd -l <user> Muèn lo¹i bá hoµn toµn nh÷ng g× liªn quan ®Õn ng-êi sö dông th× tr-íc hÕt cÇn:  T×m c¸c file mµ ng-êi sö dông lµ chñ vµ in dah s¸ch c¸c file nµy ra. (T×m b»ng lÖnh find).  Muèn sö dông l¹i c¸c file nµy h·y g¸n chñ së h÷u míi. 74

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  Xo¸ toµn bé c¸c file cÇn ph¶i xo¸.  Xo¸ user b»ng c¸c xo¸ c¸c th«ng tin liªn quan ®Õn user trong c¸c security file, hoÆc dïng tiÖn Ých mµ hÖ ®iÒu hµnh UNIX cung cÊp hoÆc dïng lÖnh userdel. LÖnh userdel: LÖnh xo¸ ng-êi sö dông.

userdel [-r] <username>  username Tªn user cÇn xo¸.  -r Xo¸ toµn bé th- môc home cña user.

Thay ®æi th«ng tin ng-êi sö dông. §Ó thay ®æi th«ng tin liªn quan ®Õn ng-êi sö dông dïng lÖnh. usermod [-c uid comment] [-d dir [-m]] [-e expire] [-f inactive] [-g gid] [-G gid[,gid]] [-l new_username] [-s shell] [-u uid [-o]] username new_username Psuedo Users Trong mçi hÖ ®iÒu hµnh UNIX ®Òu cã chøa méy vµi psuedo user. C¸c user nµy ®-îc hÖ thèng sö dông nh»m mét sè môc ®Ých nµo ®ã. C¸c thuéc tÝnh cña chóng kh«ng nªn thay ®æi. Sau ®©y lµ mét sè c¸c psuedo user :  daemon  bin  sys  adm  uucp Used by system server processes Owns executable user command files Owns system files Owns accounting files Used by UUCP Lµ tªn user míi.

75

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  lp  nobody Used by lp or lpd subsystems Used by NFS

ThiÕt lËp m«i tr-êng ng-êi sö dông Khi ng-êi sö dông login vµo hÖ thèng mét sè file ®-îc gäi thùc hiÖn ®Ó x¸c lËp m«i tr-êng lµm viÖc cho ng-êi sö dông. /etc/profile thèng. C¸c file Èn trong th- môc home cña ng-êi sö dông.  .login Dïng víi Csh thùc hiÑn sau qu¸ tr×nh lËp File thiÕt lËp m«i tr-êng hÖ thèng ®-îc

gäi thùc hiªn ®èi víi tÊt c¶ ng-êi sö dông login vµo hÖ

m«i tr-êng hÖ thèng.  .profile hÖ thèng.  .rhosts Danh s¸ch Remote host/username mµ ®-îc Dïng Sh víi ksh Thùc hiÖn khi ng-êi sö

dông login sau qu¸ tr×nh thiÕt lËp m«i tr-êng cña

g¸n quyÒn khi sö dông Rlogin, rexec, rsh, rcp, truy nhËp c¸c file vµ lÖnh kh«ng cÇn mËt khÈu.  .mailrc Khëi ®éng file cho mail mµ cho phÐp ®Æt c¸c

tuú chän hoÆc c¸c aliases.  .xinitrc  .xsession  .xdefault 3. System access permissions Xem tµi liÖu end user File khêi ®éng cho X windowing.

76

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 4. Acounting UNIX accounting system thu thËp th«ng tin vÒ viÖc sö dông tµi nguyªn m¸y tÝnh cña c¸c nhãm hoÆc cña ng-êi sö dông ®¬n lÎ. Ta cã thÓ sö dông th«ng tin nµy gièng nhc¸c b¶ng kª víi ng-êi sö dông tµi nguyªn hÖ thèng. C¸c Accounting report cung cÊp c¸c th«ng tin gióp cho ng-êi qu¶n trÞ hÖ thèng xem xÐt tµi nguyªn hÖ thèng ®ang ®-îc sö dông, qu¶n lý tµi nguyªn, ®Æt c¸c giíi h¹n vµ h¹n møc truy nhËp tµi nguyªn ... C¸c tiÖn Ých ®-îc cung cÊp cã thÓ ®Æt ch¹y tù ®éng hoÆc thùc hiÖn banõg tay tõ ng-êi qu¶n trÞ hÖ thèng. Khi hÖ ®iÒu hµnh UNIX ®-îc khëi ®éng vµ hÖ thèng

accounting ®-îc khëi ®éng ch¹y th× c¸c thao t¸c thèng kª b¾t ®Çu ho¹t ®éng. D÷ liÖu ®-îc tËp hîp theo c¸c lo¹i sau ®©y:  Connect session statistics  Process usage  Disk space utilization  Printer usage Connect Session Statistics Thèng kª thêi gian b¾t ®Çu thùc hiÖn kÕt nèi tíi hÖ thèng vµ thêi gian kÕt thóc kÕt nèi víi hÖ thèng cña mét user nµo ®ã. C¸c th«ng tin nµy th-êng ®-îc ghi trong file /var/adm/wtmp, gåm c¸c th«ng tin sau:  Tªn ng-êi sö dông  Ngµy login/logout  Thêi gian login/logout  Terminal port 77

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX C¸c th«ng tin nµy cã thÓ ®-îc sö dông ®Ó ®-a ra c¸c lo¹i b¸o c¸o d¹ng sau:  Ngµy vµ giê cña mçi lÇn kÕt nèi.  Tªn vµ ID cña ng-êi sö dông thùc hiÖn kÕt nèi.  Thêi gian kÕt nèi.  §Þa chØ thiÕt bÞ kÕt nèi Process Usage System accounting hÇu nh- thèng kª c¸c th«ng tin bëi c¸c tiÕn tr×nh ®¬n lÎ vÝ dô:  Sö dông bé nhí.  Sè User vµ group numbers ch¹y process  Tªn cña lÖnh gäi thùc hiÖn.  Thêi gian ch¹y vµ thêi gian processor sö dông bëi process  T¹ng th¸i vµo ra.  Sè d÷ liÖu ®-îc truyÒn.  Sè l-¬ng blocks ®äc vµ ghi trªn ®Üa cña mçi process C¸c th«ng tin ®-îc l-u trong accounting file

/var/adm/pacct. File nµy ®-îc truy nhËp bëi c¸c lÖnh accounting. Sau khi tiÕn tr×nh kÕt thóc kernel ghi c¸c th«ng tin trªn file /var/adm/pacct file. Th«ng tin gåm:  Process cña user ID  LÖnh thùc hiÖn khëi ®éng process  Thêi gian thùc hiÖn. System accounting cung cÊp lÖnh hiÓn thÞ, b¸o c¸o, tæng kÕt c¸c th«ng tin vÒ tiÕn tr×nh.

78

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Disk Space Utilization System accounting cung cÊp kh¶ n¨ng cho ng-êi qu¶n trÞ hÖ thèng ®Ó gi¸m s¸t viÖc sö dông ®Üa cña ng-êi sö dông. §Ó h¹n chÕ viÖc sö diông ®Üa ng-êi sö dông cã thÓ thùc hiÖn viÖc giíi h¹n viÖc sö dông. C¸c lÖnh nµy thùc c¸c chøc n¨ng sau:  Sö dông ®Þa bëi c¸c filesystem  B¸o c¸o vÒ viÖc sö dông ®Üa cña ng-êi sö dông.  Tr¹ng th¸i ®Üa vµ sù sö dông ®Üa cña c¸c lÖnh

system accounting. Printer Usage Printer usage data ®-îc l-u trong file /var/adm/qacct d-íi d¹ng ASCII. TiÕn tr×nh qdaemon sÏ ghi d÷ liÖu d¹ng ASCII tíi file /var/adm/qacct sau khi c«ng viÖc in Ên hoµn tÊt. C¸c b¶n ghi øng víi mçi printer queue cã chøa c¸c th«ng tin sau:  Tªn vµ ID cña ng-êi sö dông.  Sè trang ®· in.

VIII.File System and Disk Administration
1. CÊu tróc th- môc trªn Unix  / - Th- môc gèc trªn UNIX file system.

 /bin - Lµ symbol link tíi /usr/bin chøa c¸c lÖnh user trªn UNIX.  /dev Cã chøa c¸c file thiÕt bÞ nhprinter,

keyboard, harddisk ...  /etc - Chøa c¸c file cÊu h×nh hÖ thèng vµ c¸c file liªn quan ®Õn qu¶ trÞ hÖ thèng. 79

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  /lib - Chøa th- viÖn trªn UNIX.  /sbin - Chøa lÖnh liªn quan ®Õn khëi t¹o hÖ thèng.  /tftpboot - Chøa c¸c file phôc vô cho viÖc khëi ®éng tõ c¸c client.  /usr - Chøa lÖnh vµ c¸c ch-¬ng tr×nh øng dông hç trî bëi hÖ ®iÒu hµnh.  /var - Ch-a c¸c th«ng tin cÊu h×nh c¸c øng dông, hµng ®îi ...  /vmunix Kernal cña UNIX  /opt Chøa c¸c ch-¬ng tr×nh øng dông th-êng tõ h·ng thø ba.  /home Th- môc home cña user. Ch-a c¸c file ®-îc recover bëi fsck.

 /lost+found

2. Creating file systems §Ó t¹o hÖ thèng file cÇn thùc hiÖn c¸c b-íc nh- sau:  Chän quyÒn h¹n cña ®Üa.  T¹o c¸c partition  T¹o file system Mçi lo¹i UNIX sÏ cã c¸c c«ng cô kh¸c nhau ®Ó t¹o c¸c file system. Th«ng th-êng dïng c¸c lÖnh fdisk, format, fdformat, c¸c lÖnh t¹o cÊu tróc block dïng mkfs hoÆc newsfs. Mçi lo¹i hÖ ®iÒu hµnh UNIX sö dông ký hiÖu ®Þa diÖn cho hÖ thèng file trong c¸c môc tuú chän øng víi c¸c lÖnh VÝ dô: Solaris sö dông ufs, Linux sö dông ext2, IRIX sö dông efs vµ xfs.

Tuy nhiªn hÖ thèng file cña UNIX còng chØ lµ n¬i l-u d÷ liÖu trªn ®Üa vµ nã còng ®-îc l-u d-íi d¹ng cÊu tróc 80

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ph©n cÊp vµ ®Æt trªn c¸c partition. Víi hÖ ®iÒu hµnh UNIX c¸c thiÕt bÞ ®Òu ®-îc thÓ hiÖn d-íi d¹ng c¸c file. C¸c file thiÕt bÞ nµy th-êng ®-îc ®Æt trong th- môc /dev. Víi mçi hÖ ®iÒu hµnh UNIX c¸c file thiÕt bÞ nµy cã thÓ ®-îc ký hiÖu kh¸c nhau hoÆc ®Æt møc th- môc thÊp h¬n. Th«ng th-êng c¸c hÖ ®iÒu hµnh UNIX tù ®éng t¹o ®óng c¸c file thiÕt bÞ mµ nã hç trî khi khëi ®éng hÖ thèng. NgÇm ®Þnh c¸c file nµy chØ ®-îc truy nhËp bëi ng-êi qu¶n trÞ hÖ thèng (root). Víi c¸c thiÕt bÞ l-u tr÷ nh- ®Üa cøng tuú theo tõng lo¹i hÖ ®iÒu hµnh va lo¹i ®Üa cøng mµ cã c¸c ký hiÖu quy ®Þnh kh¸c nhau vÒ tªn file: VÝ dô víi ®Üa IDE, EIDE trªn Linux thÓ hiÖn d-íi d¹ng file sau /dev/hd[drive][partition] Víi ®Üa ®Çu tiªn ký hiÖu lµ hd a cho primary disk vµ b cho slave, c cho secondary. TiÕp primary secondary disk vµ d cho slave sau ®ã lµ gi¸ trÞ sè øng víi c¸c

partition trªn mçi ®Üa. Víi ®Üa SCSI thay ký hiÖu tªn fil- lµ /dev/sd /dev/hd cßn c¸c thµnh phÇn kh¸c t-¬ng tù. T¹o partition: §Ó t¹o partition dïng lÖnh partion. (vÝ dô víi Linux) # fdisk /dev/hda C¸c lÖnh trong fdisk p n HiÖn partition hiÖn thêi T¹o partition míi gåm extended vµ primary partition fdisk ®Ó t¹o thay cho

(1-4). t T¹o swap partition 81

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX w Ghi l¹i c¸c thay ®æi võa t¹o.

T¹o File Systems: Sau khi ®· t¹o partition th× hÖ thèng file vÉn ch-a ®-îc s½n sµng cho viÖc sö dung. mµ cÇn ph¶i t¹o file system. §Ó t¹o hÖ thèng file trong Linux dïng lÖnh mke2fs (trong sun solaris dïng lÖnh newfs), mkswap t¹o swap file system. VÝ dô mke2fs /dev/hda1 mkswap /dev/hda2 3. Mounting and unmounting file systems Mounting file systems Nh- ta ®· biªt hÖ thèng file cña UNIX ®-îc l-u tr÷ d-íi d¹ng c¸c c©y th- môc nh-ng muèn thùc hiÖn ®-îc ®iÒu nµy th× nã ph¶i ®-îc mount. Tr-íc khi cã thÓ mount file hÖ thèng ta cÇn chän mét ®iÓm mount. §iÓm mount lµ mét th- môc trong hÖ thèng file n¬i mµ th- môc gèc bao lªn nã. UNIX gi÷ ®iÓm mount vµ cho phÐp truy nhËp ®Õn hÖ thèng file dùa trªn quyÒn h¹n cña ng-êi sö dông hiÖn thêi. §iÓm mount cã thÓ lµ mét vÞ trÝ nµo ®ã trªn c©y th- môc. CÇn chó ý r»ng mét hÖ thèng file chØ ®-îc mount trªn mét mét th- môc. §Ó mount hÖ thèng file dïng lÖnh mount có ph¸p nh- sau:. mount <option> </dev/device> </directory to mount>

 /dev/device lµ tªn cña device mµ ta muèn mount.  /directory to mount lµ th- môc mount mµ hÖ thèng file mount tíi C¸c tham sè tuú chän  rw cña option –o cã thÓ lµ:

read/write 82

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  ro  bg read only background mount (NÕu mount bÞ lçi nã

chuyÓn sang background vµ tiÕp tôc cè g¾ng mount cho ®Õn khi hoµn thµnh). VÝ dô: mount -o rw /dev/hda4 /usr

LÖnh mount kh«ng tham sè sÏ hiÖn lªn tÊt c¶ c¸c file systems ®ang ®-îc mount Chi tiÕt cña lÖnh xem tµi liÖu øng víi lo¹i hÖ ®iÒu hµnh UNIX. Unmounting file systems §Ó bá mount hÖ thèng file dïng lÖnh umount hoÆc

umountall LÖnh umount: Bá mount mét hÖ thèng file (®iÓm mount). umount <mount point> VÝ dô: umount /usr LÖnh umountall: Bá tÊt c¶ c¸c ®iÓm mount Automount file systems Automount lµ kh¶ n¨ng tù ®éng mount hÖ thèng file t¹i thêi ®iÓm khëi ®éng hÖ ®iÒu hµnh. Víi kh¶ n¨ng tù ®éng cho phÐp hÖ thèng s½n sµng khi qu¸ tr×nh khëi ®éng kÕt thóc. §Ó thùc hiÖn ®-îc viÖc tù ®éng mount UNIX sö dông file ®Æc biÖt lµ /etc/fstab (/etc/vfstab d-íi Solaris). File nµy chøa danh s¸ch tÊt c¶ c¸c partition cÇn mount t¹i thêi ®iÓm khëi ®éng vµ th- môc cÇn ®-îc mount tíi víi c¸c tuú chän kÌm theo theo d¹ng sau: /dev/device fs_freq /dir/to/mount fs_passno ftype parameters

83

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  dev/device ChØ device sÏ ®-îc mount.

 /dir/to/mount Lµ th- môc ®-îc mount tíi trªn c©y th- môc.  ftype Lµ kiÓu hÖ thèng file. VÝ dô d-íi

Solaris lµ ufs, d-íi Linux lµ ext2, nfs cho NFS , swap cho swap partitions, vµ proc cho /proc file system.  parameters option.  fs_freq §-îc sö dông bëi dump ®Ó x¸c ®Þnh hÖ thèng Lµ biÕn tuú chän khi mount øng víi –o

file cÇn ®-îc dump.  fs_passno ®éng. C¸c dßng b¾t ®Çu b»ng dÊu # lµ c¸c dßng chó thÝch. VÝ dô vÒ file fstab d-íi Linux systems: # # Sample /etc/fstab file for a Linux machine # # Local mounts /dev/sda1 /dev/sda2 1 /dev/sda3 1 /dev/cdrom /dev/sda4 /cdrom /dos iso9660 ro 1 1 1 /usr/data ext2 defaults 1 / /usr ext2 ext2 defaults 1 1 §-îc sö dông bëi ch-¬ng tr×nh fsck ®Ó

x¸c ®Þnh tr×nh tù kiÓm tra ®Üa t¹i thêi ®iÓm khëi

defaults 1

msdos

defaults 1

84

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX /dev/sdb1 1 /data ext2 defaults 1

Mét sè kiÓu hay dïng trong Linux  ext2 KiÓu filesystem ®-îc dïng chñ yÕu

trªn Linux partition.  iso9660 KiÓu ISO 9660 filesystem ®-îc dïng víi CD-

ROM disks.  sysv V filesystem.  msdos nhËp.  hpfs Linux. 4. Managing disk use §Ó biÕt c¸c th«ng tin vÒ viÖc sö dông ®Üa UNIX dïng c¸c tiÖn Ých sau: LÖnh df: Cho biÕt th«ng tin vÒ viÖc sö dông ®Üa, dung l-îng ®· ®-îc sö dông vµ ch-a ®-îc sö dông vµ theo tû lÖ phÇn tr¨m. df <option> C¸c tham sè th-êng dïng:  -a HiÓn thÞ tÊt c¶ c¸c partition bao gåm c¶ swap KiÓu High Performance filesystem bëi KiÓu DOS partition mµ Linux cã thÓ truy KiÓu Nh»m hç trî cho d¹ng UNIX System

vµ /proc.  -i,  -k HiÓn thÞ th«ng tin inode thay cho block. HiÓn thÞ d¹ng KB.

 -t<type>HiÓn thÞ chØ nh÷ng filesystems cã kiÓu phï 85

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX hîp víi type chØ ®Þnh. VÝ dô: df –t Filesystem 1024-blocks Used Available

Capacity Mounted on /dev/hda3 / /dev/hda6 /var /dev/hda7 481998 /local server1:/var/spool/mail 489702 /var/spool/mail C¸c cét th«ng tin gåm:  Filesystem  1024-blocks dung l-îng.)  Used Sè block ®· sö dông. ChØ file system ChØ sè block trong file system. (Tæng 222422 218310 50% 15 457087 0% 50717 15507 32591 32% 247871 212909 22161 91%

 Available Sè block ch-a sö dông.  Capacity PhÇn tr¨m l-îng ®Üa ®ang sö dông hiÖn t¹i.  Mounted on môc. LÖnh du: HiÓn thÞ tæng ®Üa sö dông trªn tõng th- môc hoÆc tõng file. du <option> <directory> C¸c tham sè th-êng dïng:  -a HiÓn thÞ sè ®Õm trªn tæng c¸c file vµ c¸c th86 ChØ vÞ trÝ ®-îc mount trªn c©y th-

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX môc.  -b  -c  -k  -l  -s  -x HiÓn thÞ kÝch th-íc d¹ng byte. HiÓn thÞ tæng côc bé. HiÓn thÞ kÝch th-íc d¹ng KB. HiÓn thÞ kÝch th-íc cña tÊt c¶ c¸c file. ChØ hiÖn sè tæng. Bá qua c¸c filesystem kh¸c mµ mount vµo trong

th- môc hiÖn thêi. VÝ dô: 409 945 68 60 391 141 873 3402 du ./doc ./lib ./man ./m4 ./src ./intl ./po .

ChØ sè l-îng block ®-îc sö dông bëi mçi th- môc. 5. Checking file system integrity Trong qu¸ tr×nh ho¹t ®éng hÖ thèng kh«ng tr¸nh khái diÔn ra tr¹ng th¸i mét ai ®ã ®ét ngét ng¾t ®iÖn m¸y tÝnh, hÖ thèng cÊp ®iÖn cho m¸y bÞ mÊt, mét ai ®ã nhÊn nót reset .... c¸c hiÖn t-îng nµy sÏ dÉn ®Õn hiÖn t-îng th«ng tin trªn hÖ thèng vÉn cßn tån t¹i mµ ch-a ®-îc ghi ra ®Üa. Khi x¶y ra c¸c lçi nµy th× ta cÇn ph¶i thùc hiÖn viÖc kiÓm tra tÝnh toµn vÑn cña hÖ thèng ®iÒu nµy lµ cÇn

87

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX thiÕt nÕu nh- cÊu tróc hÖ thèng lµ kh«ng cßn ®óng. §Ó thùc hiÖn viÖc kiÓm tra vµ söa ch÷a c¸c lçi nµy dïng lÖnh fsck. LÖnh fsck thù hiÖn theo nhiÒu giai ®o¹n. Mçi giai ®o¹n thùc hiÖn mét nhiÖm vô riªng vµ c¸c giai ®o¹n sau ®Òu dùa vµo kÕt qu¶ thùc hiÖn ë giai ®o¹n tr-íc ®ã. fsck thùc hiÖn duyÖt b¾t ®Çu tõ superblock liªn quan ®Õn c¸c vïng disk blocks, pathnames, directory connectivity, link reference counts, vµ inodes. C¸c giai do¹n kiÓm tra cña lÖnh fsck: Phase 1: KiÓm tra Block vµ Size giai ®o¹n nµy kiÓm tra danh s¸ch inode, t×m c¸c inode bÞ v« hiÖu. Lçi nµy ®-îc th«ng b¸o nh- sau: UNKNOWN FILE TYPE I=inode number (CLEAR) PARTIALLY TRUNCATED INODE I=inode number (SALVAGE) block BAD I=inode number block DUP I=inode number Phase 2: KiÓm tra ®-êng dÉn, giai ®o¹n nµy xo¸ bá c¸c th- môc tõ c¸c bad inodes ®-îc t×m thÊy ë giai ®o¹n 1 vµ tiÕn hµnh kiÓm tra th- môc víi c¸c con trá inode mµ bÞ v-ît qu¸ ph¹m vi hoÆc con trá trá tíi bad inode. nµy ®-îc th«ng b¸o nh- sau: ROOT INODE NOT DIRECTORY (FIX?) I=OUT OF RANGE I=inode number NAME=file name (REMOVE?) UNALLOCATED I=inode number OWNER=O MODE=M SIZE=S MTIME=T TYPE=F (REMOVE?) Lçi vïng trèng cña blocks vµ

88

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX BAD/DUP I=inode number OWNER=O MODE=M SIZE=S MTIME=T

TYPE=F (REMOVE?) Phase 3: KiÓm tra kÕt nèi, giai ®o¹n nµy ph¸t hiÖn lçi ë c¸c th- môc kh«ng tham chiÕu, b»ng c¸ch t¹o th- môc lost+found nÕu cÇn vµ chuyÓn c¸c phÇn kh«ng ®óng vµo thmôc lost+found. Phase 4: KiÓm tra ®Õm tham chiÕu, giai ®o¹n nµy sö dông th«ng tin trong giai ®o¹n 2 vµ 3 ®Ó kiÓm tra c¸c file kh«ng tham chiÕu vµ ®Õm liªn kÕt kh«ng ®óng trªn c¸c file, directory, hoÆc file ®Æc biÖt. Th«ng b¸o nh- sau: UNREF FILE I=inode number OWNER=O MODE=M SIZE=S MTIME=T (RECONNECT?) LINK COUNT FILE I=inode number OWNER=O MODE=M SIZE=S MTIME=T COUNT=X (ADJUST?) LINK COUNT DIR I=inode number OWNER=O MODE=M SIZE=S

MTIME=T COUNT=X (ADJUST?) BAD/DUP FILE I=inode number OWNER=O MODE=M SIZE=S

MTIME=T (CLEAR) Phase 5: KiÓm tra Cylinder Groups, giai ®o¹n nµy kiÓm tra c¸c block tù do block vµ c¸c inode ch-a sö dông. Nã sÏ tù ®éng söa ®æi l¹i danh s¸ch c¸c inode tù do cho ®óng nÕu cÇn thiÕt, tuy nhiªn cã c¸c yªu cÇu ®ßi ng-êi qu¶n trÞ ph¶i tr¶ lêi. What Do I Do After fsck Finishes? LÖnh fsck:

89

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 6. Backup and restore Xem thªm phÇn end user B¶n th©n trong hÖ ®iÒu hµnh UNIX hç trî nhiÒu c«ng cô hç trî viÖc l-u tr÷ vµ håi phôc trªn c¸c thiÕt bÞ vË lý kh¸c khau. Nã hç trî c¸c møc sao l-u vµ håi phôc gióp cho viÖc tèi -u trong c«ng t¸c sao l-u vµ ®¶m b¶o viÖc qu¶n trÞ dÔ dµng. Ngoµi c¸c lÖnh tar, cpio, dd, tuú theo hÖ ®iÒu hµnh hç trî c¸c c«ng cô kh¸c phôc vô cho c«ng t¸c sao l-u vµ håi phôc d÷ liÖu.

IX.Printer administration
Unix hç trî m¸y in c¾m trùc tiÕp trªn cæng parallel, serial còng nh- hç trî cho m¸y in m¹ng. ViÖc cÊu h×nh m¸y in t-¬ng ®èi ®¬n gi¶n nhê c¸c tiÖn Ých hç trî bëi c¸c hÖ ®iÒu hµnh. Tuy nhiªn trªn mét sè lo¹i version cò viÖc cÊu h×nh l¹i ph¶i tù lµm b»ng tay qua lÖnh (mknod) t-¬ng ®èi phøc t¹p. Th«ng th-êng c¸c cæng parallel th-êng t-¬ng øng víi c¸c file /dev/lp0, /dev/lp1, hoÆc /dev/lp2 phô thuéc vµo sè cæng mµ m¸y cã. C¸c tiÖn Ých liªn quan ®Õn printer bao gåm /etc/printcap Chøa cÊu h×nh m¸y in . /usr/lib/lpd /usr/ucb/lpr KiÓm so¸t vµ cung cÊp c¸c dÞch vô in Thùc hiÖn viÖc chuyÓn c¸c print job vµo

printer queue. /usr/ucb/lpq Ch-¬ng tr×nh kiÓm tra hµng ®îi in. hiÖn xo¸ c¸c print job tõ print

/usr/ucb/lprm Thùc queue.

90

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX /etc/lpc Qu¶n trÞ print job vµ printer queue. Ch-¬ng tr×nh lpd thùc hiÖn viÖc kiÓm so¸t vµ cung cÊp c¸c dÞch dÞch vô in. C¸c th«ng tin x¸c ®Þnh cÊu h×nh gåm tªn m¸y in, cæng in, lo¹i m¸y in ... C¸c th«ng tin nµy cã thÓ ®-îc thay ®æi bëi ng-êi qu¶n trÞ. lpd [-l] [port] Víi tham sè -l ghi l¹i c¸c th«ng tin tíi log file mçi lÇn kiÓm so¸t c¸c request. Khi lpd nhËn ®-îc print request (gäi lµ print job) c¸c

trang in ®-îc ®-a ®Õn mét vïng gäi lµ spool( th«ng th-êng lµ th- môc /usr/spool/lp). Vµ mµn h×nh in ®-îc gi¶i phãng ®Õ ng-êi sö dông cã thÓ thùc hiÖn c¸c c«ng viÖc kh¸c. Sau ®ã lpd sÏ thùc hiÖn viÖc göi d÷ liÖu tõ spool ra m¸y in t-¬ng øng. ViÖc qu¶n lý printer th«ng qua tiÖn Ých lµ lpc. Nã cho phÐp ng-êi qu¶n trÞ thùc hiÖn mét sè chøc n¨ng nh- hiÓn thÞ th«ng tin tr¹ng th¸i m¸y in, cho phÐp hoÆc kh«ng cho phÐp in, cho phÐp hoÆc kh«ng cho phÐp c¸c hµng chê in, lo¹i bá c¸c print request, thay ®æi møc ®é -u tiªn trªn hµng chê in. Ngoµi ra cßn tiÕn Ých lpq vµ lprm cho phÐp thùc hiÖn qu¶n lý c¸c hµng ®îi in.

X. Network administration
1. UUCP (Unix to Unix copy) UUCP lµ mét nhãm c¸c lÖnh vµ c¸c dÞch vô cung cÊp dÞch vô m¹ng ®¬n gi¶n cho phÐp ng-êi sö dông truyÒn d÷ liÖu trªn UNIX tõ mét m¸y nµy sang m¸y kh¸c qua serial port (modem) th«ng th-êng dïng ®Ó truyÒn file, e-mail, ch¹y c¸c lÖnh trªn m¸y ë xa. HiÖn nay cã nhiÒu version cña UUCP trªn c¸c hÖ ®iÒu hµnh c¸c hÖ ®iÒu hµnh UNIX tuy

91

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX nhiªn chóng vÉn tu©n thñ theo quy t¾c cÊu h×nh chung cña UUCP. C¸c thµnh phÇn cña UUCP: C¸c lÖnh trong UUCP chia lµm hai líp: lÖnh cña ng-êi sö dông vµ c¸c lÖnh qu¶n trÞ. C¸c ch-¬ng tr×nh ng-êi sö dông lµ ®-îc chøa trong

/usr/bin  uucico - C«ng cô nèi kÕt c¸c m¸y tÝnh xa cho phÐp truyÒn tËp tin hay thùc hiÖn lÖnh.  uucp - Sao chÐp mét tËp tin tõ mét m¸y ®Õn m¸y kh¸c, uucp t¹o tËp tin d÷ liÖu vµ tËp tin lµm viÖc, xÕp hµng c¸c c«ng viÖc ®Ó truyÒn vµ gäi uucico daemon nèi kÕt víi m¸y tõ xa.  uustat - HiÓn thÞ tr¹ng th¸i cña yªu cÇu truyÒn ( uucp,uuto,uux) nã còng kiÓm so¸t hµng chê truyÒn. C¸c lÖnh qu¶n trÞ §a sè c¸c lÖnh qu¶n trÞ lµ ë trong /usr/lib/uucp c¸c tËp tin d÷ liÖu vµ shell script lµ ë trong /etc/uucp.  uucleanup - Xãa th- môc spool nã th-êng ®-îc thùc hiªn tõ shell script ®-îc gäi lµ uudemon.cleanup mµ ®-îc khëi ®éng bëi cron.  Uutry -KiÓm tra kh¶ n¨ng gäi vµ gì rèi, nã kÐo theo uucico dÓ thiÕt lËp th«ng tin gi÷a m¸y tÝnh côc bé vµ m¸y tÝnh tõ xa.  uucheck thÓ KiÓm tra sù tån t¹i cña c¸c thmôc

ch-¬ng tr×nh vµ c¸c tËp tin support cña uucp nã cã còng kiÓm tra tËp tin Permission ®Ó kiÓm tra ng÷ ph¸p. Deamons Cã ba deamon trong hÖ thèng uucp. C¸c deamon

nµy diÒu khiÓn truyÒn tËp tin vµ thùc hiÖn lÖnh. Chóng 92

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX còng cã thÓ ®-îc ch¹y tõ shell.  uucico- Chän thiÕt bÞ sö dông ®Ó nèi kÕt, thiÕt lËp nèi kÕt ®Õn m¸y tÝnh tõ xa, thùc hiÖn c¸c yªu cÇu login vµ kiÓm tra chñ quyÒn, truyÒn c¸c tËp tin d÷ liÖu, thùc thi , ®-a kÕt qu¶ vµo log vµ b¸o cho ng-êi sö dông bëi mail. Khi uucico gäi m¸y tõ xa nã liªn l¹c víi uucico cña m¸y tõ xa. uucico ®-îc gäi bëi uucp, uuto,uux vµ uusched, uutry.  uuxqt - Thùc hiÖn c¸c yªu cÇu thùc thi tõ xa, nã m¸y tõ xa. Khi tËp tin

sÏ kiÓm tra th- môc spool ®Ó t×m tËp tin thùc thi (X.file) ®· ®-îc göi tõ X.file ®· t×m thÊy uuxqt më nã vµ nhËn mét danh

s¸ch c¸c tËp tin d÷ liÖu ®-îc yªu cÇu thùc thi. Nã sÏ kiÓm tra chñ quyÒn truy xuÊt cña c¸ac t©p tin nµy. KÕ ®ã nã ®äc tËp tin permission ®Ó kiÓm tra chñ quyÒn thùc hiÖn lÖnh ®-îc yªu cÇu. uuxqt ®-îc thùc hiÖn bëi uudemon.hour shell script.  uusched -§Þnh thêi biÓu c¸c hµng chß trong th- môc spool. Tr-íc khi khëi ®éng uucico, uusched s¾p thø tù ngÉu nhiªn c¸c m¸y tÝnh tõ xa sÏ ®-îc gäi. uusched ®-îc khëi ®éng ë thêi gian boot bëi /etc/rc nã sÏ ®-îc thùc hiÖn bëi uudemon.hour. Khëi ®éng uucp : uucp sÏ khëi ®éng víi c¸c lÖnh trong shell script mµ quÐt vßng c¸c m¸y tõ xa, ®Þnh thêi biÓu truyÒn vµ xo¸ c¸c log cò. $su uucp $crontab < /usr/lib/uudemon.crontab C¸c file cÊu h×nh /usr/lib/uucp Systems, Devices, Permissions, Dialers, Dialcodes Devices Chøa c¸c th«ng tin liªn hÖ vÞ trÝ, tèc ®é cña 93

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX bé gäi tù ®éng(ACU), ®-êng tù ®éng vµ thiÕt bÞ m¹ng. Format VÝ dô Type ACU Type Line Line2 ACU cua0 Class Dialer-Token Pairs 1200 Hayes \D

Sö dông víi modem Direct Sö dông víi ®-êng d©y trùc

tiÕp Line Class Tªn thiÕt bÞ vÝ dô modem /dev/cua0 Tèc ®é t-¬ng øng víi lo¹i modem trong

Dialer-token pairs tËp tin Dialers

Dialers X¸c ®Þnh c¸ch trao ®æi ban ®Çu tr-íc khi truyÒn d÷ liÖu nh-.VÝ dô : Hayes =,-, "" \dA\pTE1V1X1Q0S2=255S12=255S50=2\r\c OK\r \EATDT\T\r\c CONNECT

ý nghÜa cña c¸c kÝ tù escape \p ng-ng (1/4 gi©y)

\d trÓ (2 gi©y) \D ChØ sè ®iÖn tho¹i kh«ng biÕn ®æi bëi tËp tin

Dialcodes \T \K \E \e \r ChØ sè ®iÖn tho¹i biÕn ®æi bëi tËp tin Dialcodes Thªm vµo mét BREAK HiÖn thi kiÓm tra CÊm hiÓn thi kiÓm tra §Çu dßng

\c Kh«ng xuèng dßng \n Xuèng dßng

94

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Systems Chøa c¸c th«ng tin cÇn thiÕt bëi uucico ®Ó

thiÕt lËp nèi kÕt víi m¸y tõ xa. Mæi phÇn tö cña tËp tin thÓ hiÖn mét m¸y tÝnh cã thÓ ®-îc gäi. VÝ dô : Format VÝ dô ACU 1200 System-Name eagle 555678 in:nuucp ord:okasa Time Type Class Phone Login Any

System-Name -Tªn cña m¸y tõ xa. Time - Thêi gian m¸y tõ xa cã thÓ bÞ gäi. VÝ dô: Wk1700-0800 mäi ngµy trong tuÇn tõ 17h-8h

Login - Chøa c¸c th«ng tin login. Dialcodes: Chøa c¸c m· ®iÖn tho¹i viÕt gän. Khu«n d¹ng nh- sau: viÕt t¾t HN 014 sè

Permissions X¸c ®Þnh chñ quyÒn login, truy xuÊt tËp tin vµ thùc hiÖn lÖnh cña m¸y tõ xa. Mæi phÇn tö cña tËp tin lµ mét dßng cã d¹ng tªn=gi¸ trÞ. Cã thÒ cã c¸c chñ quyÒn sau : LOGNAME= MACHINE= log. REQUEST= yes/no cÊm hay cho phÐp m¸y tõ xa nhËn c¸c tËp tin tõ m¸y côc bé. SENDFILES=yes/no cÊm hay cho phÐp m¸y tõ xa göi c¸c tËp tin ®Õn m¸y côc bé. READ/WRITE= X¸c ®Þnh c¸c th- môc ®-îc phÐp ®äc hay ghi. VÝ dô: X¸c ®Þnh c¸c m¸y cã thÓ log vµo. X¸c ®Þnh c¸c m¸y tõ xa mµ m¸y côc bé cã thÓ

95

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX READ=/var/spool/uucppublic WRITE=/var/spool/uucppublic NOREAD/NOWRITE X¸c ®Þnh c¸c th- môc cÊm ®äc hay ghi. COMMANDS X¸c ®Þnh c¸c lÖnh mµ m¸y tõ xa cã thÓ thùc hiÖn. 2. TCP/IP and Neworks
a) TCP/IP

TCP/IP lµ giao thøc m¹ng chuÈn ®-îc hç trî trong UNIX . Th«ng th-êng khi cµi ®Æt hÖ thèng bao giê còng ®-îc yªu cÇu x¸c ®Þnh c¸c th«ng tin liªn quan ®Õn hÖ thèng nhhost name, domain (nÕu host n»m trong domain), ®Þa chØ IP. Tuy nhiªn cã thÓ cÊu h×nh m¹ng sau khi cµi ®Æt b»ng c¸c tiÖn Ých. §Æt tªn host: Cã thÓ dïng lÖnh hostname ®Ó ®Æt tªn cña host (ph¶i ng-êi cã thÈm quyÒn). Cã thÓ ®Æt tªn d¹ng tªn vïng nÕu nã n»m trong domain. VÝ dô: hostname jac.domain CÊu h×nh loopback driver: §Ó thiÕt lËp cÊu h×nh TCP/IP m¹ng dïng lÖnh ipconfig ifconfig <interface> <IP_address> netmask <mask>

broadcast <address>  interface - X¸c ®Þnh kiÓu network interface card. (VÝ dô 3Com 3C5x9 nh- elx0).  IP_address - §Þa chØ IP g¸n cho network interface. Cã thÓ sö dông b»ng host name cung cÊp trong /etc/hosts víi ®Þa chØ IP t-¬ng øng.  netmask mask Lµ subnetwork mask. Cã thÓ bá qua

96

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX nÕu dïng gi¸ trÞ default.  broadcast address Lµ ®Þa chØ broadcast cho

network. NÕu kh«ng ®Æt sÏ lÊy gi¸ trÞ ngÇm ®Þnh. VÝ dô: §Ó thiÕt lËp the loopback driver:

ifconfig lo 127.0.0.1 Muèn ®-a ®Þa chØ loopback vµo trong kernel routing

tables dïng lÖnh: route add 127.0.0.1 hoÆc route add localhost CÊu h×nh Ethernet Interface:Muèn thùc hiÖn cÊu h×nh víi Ethernet driver th× mét ph¶i yªu cÇu ®ßi hái ph¶i biÕt chÝnh x¸c Ethernet driver vµ cÊu h×nh dïng ifconfig ®Ó kernel biÕt vÒ interface vµ sau ®ã thªm route tíi c¸c m¸y trªn m¹ng nÕu nã g¾n víi m¹ng. VÝ dô: Ethernet device lµ /dev/elx0 ifconfig elx0 192.168.70.2 netmask 255.255.255.0 §Ó thªm thµnh phÇn trªn vµo kernel routing table ®Ó kernel biÕt vÒ ®Þa chØ m¹ng local machine vµ göi chÝnh x¸c d÷ liÖu tíi nã dïng lÖnh. route add -net 192.168.70.0 TCP/IP Setup Files Khi cµi ®Æt vµ cÊu h×nh TCP/IPcã mét sè file yªu cÇu l-u gi÷ cÊu h×nh liªn quan ®Õn dÞch vô cña UNIX host. /etc/hosts - Lµ file cã chøa ¸nh x¹ host names tíi IP address t-¬ng øng. VÝ dô: # Internet host table # IP address 127.0.0.1 hostname localhost aliases

97

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 201.190.2.1 jade

/etc/networks - Chøa c¸c network name ¸nh x¹ tíi ®Þa chØ m¹ng IP t-¬ng øng. VÝ dô: # Name testnetw loopback-net /etc/services Network Number 201.190.2 127 Chøa c¸c dÞch vô ë tÇng TCP/IP

application nh- FTP, TELNET, RLOGIN ... øng víi nã lµ c¸c port number t-¬ng øng. VÝ dô: # assigned numbers from rfc1060 port/transport 1/tcp 7/tcp 7/udp 9/tcp 9/udp 11/tcp 11/udp sink null sink null users users #service tcpmux echo echo discard discard systat systat . /etc/protocols Chøa c¸c sè x¸c ®Þnh IP protocol

service user. C¸c th«ng tin nµy gióp IP viÖc x¸c ®Þnh routing data tíi user protocols. /etc/ethers – T¹o bëi hÖ thèng trong qu¸ tr×nh cµi ®Æt TCP/IP. File nµy ¸nh x¹ ®Þa chØ Ethernet vô RARP hoÆc BOOTPD VÝ dô: # ether_mac_addr. hostname comments tíi ®Þa chØ IP. C¸c th«ng tin nµy ph¶i cã khi muèn cung cÊp c¸c dÞch

98

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 00:00:c0:9e:41:26 02:60:8c:15:ad:18 /etc/netmasks network IP. #Network subnet masks #Unless #Network 134.54.0.0 167.12.0.0 your network is subnetted, do not bother to maintain this file subnet mask 255.255.255.0 255.255.192.0 violin bass Chøa netmask t-¬ng øng víi ®Þa chØ #strings dep't

/etc/hosts.equiv - X¸c lËp quyÒn truy nhËp cña c¸c m¸y vµ c¸c user ë xa khi dïng c¸c tiÖn Ých vÝ dô: rlogin, rcp, rsh ... ~/.rhosts T¹o trong th- môc home cña user x¸c ®Þnh quyÒn truy nhËp cña user x¸c ®Þnh. C¸c tiÖn Ých vµ c¸c dÞch vô chñ yÕu cung cÊp trªn ICP/IP Mét sè c¸c daemon cung cÊp c¸c dÞch vô trªn Unix ®-îc ®iÒu khiÓn bëi inetd.  ftpd - Cung cÊp c¸c dÞch vô truyÒn file trªn m¸y Unix qua TCP port 20.  telnetd - Cung cÊp c¸c dÞch vô cho phÐp cung cÊp c¸c dÞch vô cho c¸c m¸y kÕt nèi d¹ng terminal.  rshd - Cho phÐp thùc hiÖn c¸c lÖnh shell tõ c¸c m¸y xa.  logind- Cho phÐp thùc hiÖn login tõ xa.  execd ë xa.  comsat- KiÓm so¸t c¸c mail ®Õn cung cÊp c¸c th«ng tin cho c¸c processes mµ yªu cÇu nã thùc hiÖn. 99 - Chon phÐp thùc hiÖn c¸c lÖnh tõ c¸c m¸y

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX  talkd - Cho phÐp ng-êi sö héi tho¹i víi nhau qua dïng keyboard vµ screen cña terminal ë bÊt kú ®©u trªn m¹ng.  uucpd- Cung cÊp dÞch vô truyÒn d÷ liÖu sö dông UUCP trªn m¹ng.  tftpd-Cung cÊp dÞch vô tftp trªn m¹ng. Hç trî kh¶ n¨ng remote boot vµ truyÒn file.  fingerd- KiÓm so¸t user trªn m¹ng.  rquotad- KiÓm so¸t viÖc sö dông ®Üa cña ng-êi sö dông.  walld-Cho phÐp thùc hiÖn viÖc göi c¸c message tíi mµn h×nh cña c¸c c¸c user trªn hÖ thèng  rstatd This daemon returns performance statistics

about this system  cmsd-Qu¶n lý calendar trªn server.  routed  gated- Thùc hiÖn viÖc kiÓm so¸t RIP. Cho phÐp thùc hiÖn nhiÒu th«ng tin vÒ

route bao gåm RIP, OSPF (Open Shortest Path First), EGP (Exterior Gateway Protocol) ...  nfsd- KiÓm so¸t vµ cung cÊp c¸c dÞch vô NFS trªn m¹ng.  biod-(Block Input/Output Daemon). Ch¹y trªn NFS

client thùc hiÖn viÖc kiÓm so¸t qu¸ tr×nh ®äc vµ ghi d÷ liÖu trªn NFS server.  mountd - KiÓm so¸t, cung cÊp c¸c yªu cÇu mount tõ NFS client.  lockd - §iÒu khiÓn viÖc lock file trªn m¹ng.  rpcbind- Cung cÊp c¸c dÞch vô RPC (Remote Procedure 100

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Calls).  sendmail- Thùc hiÖn kiÓm so¸t, trao ®æi mail gi÷a c¸c host ( qua SMTP).  named daemon vµ c¸c database file cho phÐp UNIX cung cÊp c¸c dÞch vô DNS server trªn UDP port 53.  Ngoµi ra víi c¸c thµnh phÇn më réng sau nµy c¸c hÖ ®iÒu hµnh cßn cung c¸c daemon hç trî cung cÊp c¸c dÞch vô më réng kh¸c nh- c¸c dÞch vô X-terminal, HTTP ... C¸c tiÖn Ých (xem trªn End user)
b) PPP

PPP lµ giao thøc ®-îc sö dông t-¬ng ®èi phæ biÕn trong thùc hiÖn kÕt nèi truyÒn th«ng gi÷a c¸c m¸y hoÆc gi÷a c¸c m¹ng qua c¸c serial line. Tuy nhiªn cÊu h×nh PPP trªn UNIX th× t-íng ®èi phøc t¹p. UNIX chia c¸c PPP ra lµm hai phÇn, mét lµ møc High-Level Data Link Control (HLDC) protocol, thùc hiÖn viÖc göi c¸c PPP datagram gi÷a hai m¸y, vµ PPP daemon gäi lµ pppd thùc hiÖn kiÓm so¸t c¸c protocol trªn hÖ thèng HLDC vµ thiÕt lËp c¸c biÕn truyÒn th«ng. Khi thùc hiÖn kÕt nèi th«ng qua PPP th× ng-êi sö dông kh«ng bÞ yªu cÇu nhËp c¸c dÊu nh¾c kÕt shell hoÆc login v× phÇn nµy sÏ do PPP ®kiÓm so¸t. §Ó thiÕt lËp kÕt nèi PPP nhÊt thiÕt loopback driver ph¶i ®-îc thiÕt lËp.

Trong UNIX ®Ó t¨ng c-êng tÝnh an toµn cho hÖ thèng khi thùc hiÖn kÕt nèi PPP gi÷a c¸c hÖ UNIX cÇn ph¶i cã user ®Æc biÖt ®Ó thùc hiÖn login vµo hÖ thèng khi thùc hiÖn kÕt nèi. User nµy kh«ng sö dông c¸c shell b×nh th-êng mµ sö dông mét ch-¬ng tr×nh ®Æc biÖt ®Ó khëi ®éng vµ cÊu h×nh PPP. Ngoµi ra PPP hç trî PPP Authentication ®Ó x¸c 101

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ®Þnh c¸c kÕt nèi trªn hÖ thèng. VÝ dô: trong Linux lµ pppscript ( trong hÖ Unix system V dïng file aspppls ...) ppp:*:201:51:PPP account:/tmp:/etc/ppp/pppscript Néi dung file pppscrip nµy nh- sau: #!/bin/sh mesg n stty -echo exec pppd -detach silent modem crtscts Tr-íc khi PPP ho¹t ®éng nã yªu cÇu ph¶i thiÕt lËp cuéc kÕt nèi tr-íc ®ã tíi m¸y ë xa tr-íc khi nã thùc hiÖn kiÓm so¸t kÕt nèi. §iÒu nµy cã thÓ thùc hiÖn qua ch-¬ng tr×nh thùc hiÖn kÕt nèi (chat program). Th«ng th-êng sö dông qua UUCP trong file nµy chó ý ®Õn néi dung trong file Systems. §Ó thùc hiÖn viÖc kiÓm so¸t kÕt nèi sö dung PPP th× nhÊt thiÕt ch-¬ng tr×nh pppd daemon ph¶i ®-îc gäi ch¹y. VÝ dô: NÕu m¸y sö dông COM1 ®Ó thùc hiÖn cho kÕt nèi PPP vµ kÕt nèi ë tèc ®é 38,400 baud cã thÓ sö dông lÖnh nhsau: pppd /dev/cua1 38400 crtscts defaultroute Trong hÖ ®iÒu hµnh UNIX system V th-êng sö dông mét script tªn lµ asppp ®Ó khëi ®éng pppd dùa trªn c¸c file cÊu h×nh ®· ®Æt.
c) DNS

Tr-íc ®©y trong UNIX ®Ó gi¶i quyÕt vÊn ®Ò ¸nh x¹ t-¬ng øng tªn tíi ®Þa TCP/IP sö dông /etc/hosts. Khi thùc hiÖn c¸c kÕt nèi TCP/IP sÏ thùc hiÖn kiÓm tra trong

102

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX /etc/hosts kiÓm tra tra tªn vµ ®äc ®Þa chØ cña m¸y kÕt nèi. NÕu tªn kh«ng cã trong file nµy th× m¸y sÏ kh«ng thÓ thùc hiÖn kÕt nèi theo tªn. Víi ph-¬ng ph¸p nµy mµ khi cÇn kÕt nèi víi nhiÒu m¸y trªn hÖ thèng th× viÖc qu¶n lý nã sÏ trë lªn rÊt phøc t¹p. DNS ra ®êi vµ ph¸t triÓn ®Ó gi¶i quyÕt c¸c vÊn ®Ò trªn ®ång thêi nã cßn t¹o ra c¸c kh¶ n¨ng qu¶n trÞ tªn ph©n cÊp vµ cung cÊp c¸c dÞch vô tªn vïng. Trªn DNS bao giê cïng gåm cã hai phÝa lµ ng-êi cung cÊp c¸c dÞch vô (DNS server) vµ ng-êi sö dông c¸c dÞch vô (client). Th«ng th-êng mçi mét zone th-êng cã hai master name ®Ó duy tr× ho¹t ®éng cña c¶ zone lµ primary master server vµ secondary master server (backup server). DNS Client DNS client thùc hiÖn viÖc kÕt nèi th«ng qua c¸c DNS query ®Ó thùc hiÖn lÊy ¸c ¸nh x¹ t-¬ng øng tíi ®Þa chØ ®Ých cÇn kÕt nèi. DNS query cã thÓ cã nhiÒu lo¹i. HÇu hÕt trong sè nµy lµ c¸c query hostname ®Õn IP address. C¸c query gi¶i quyÕt vÊn ®Òn ¸nh x¹ IP address tíi hostname lµ PTR hay pointer queries. Ngo¹i trõ viÖc cÊu h×nh ®Ó liªn kÕt víi name server. Client th«ng th-êng kiÓm tra trong /etc/hosts file ®Ó lÊy ®Þa chØ t-¬ng øng víi name cña m¸y chØ ®Þnh. §Ó cÊu h×nh DNS Sö client dông file (resolver) nµy ®Ó x¸c t¹o ®Þnh file c¸c

/etc/resolv.conf.

domain name mµ nã thuéc vµo bao gåm ®Þa chØ IP cña primary, secondary, hoÆc cache name server. CÊu tróc file /etc/resolv.conf gåm c¸c tr-êng # keyword VÝ dô: value

103

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX domain ham.com #Domain #Primary name server #Secondary name server

nameserver nameserver DNS server

198.53.18.1 198.53.18.3

§Ó cÊu h×nh name server bao gåm t¹o c¸c database vµ startup file. Sè l-îng c¸c file nµy phô théc vµo quy m« cña tæ chøc, cÊu tróc liªn m¹ng, vµ sè domain mµ nã ®-îc uû nhiÖm qu¶n trÞ. §Ó khëi ®éng DNS server UNIX gäi ch¹y mét in.named

daemon. Ch-¬ng tr×nh nµy sÏ ®äc c¸c file cÊu h×nh trªn database file vµ thùc hiÖn c¸c dÞch vô theo cÊu h×nh ®· ®Þnh. C¸c DNS database vµ startup file: named.hosts IP. named.rev Chøa th«ng tin vÒ ¸nh x¹ ng-îc ®Þa chØ IP tíi tªn. named.local Chøa th«ng tin ®Ó gi¶i quyÕt ®Þa chØ File nµy x¸c ®Þnh domain mµ name server lµ

ng-êi cung cÊp vµ duy tr× c¸c ¸nh x¹ tõ tªn tíi ®Þa chØ

loopback (127.0.0.1) tíi localhost. named.ca File cã chøa tªn vµ ®Þa chØ cña c¸c root domain server. named.boot lóc khëi File ®Çu tiªn mµ named (the DNS daemon) ®éng vµ sö dông nã ®Ó x¸c ®Þnh database

filename, vµ vÞ trÝ cña chóng trong file system trªn hÖ thèng còng nh- lµ m¸y ë xa. DNS Resource Records (RR) ChuÈn DNS RFC 1033 ®Þnh nghÜa nhiÒu lo¹i resource record (RR). Mçi lo¹i t-¬ng øng víi mét khÝa c¹nh cña c¬ së d÷ 104

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX liÖu chung. VÝ dô kiÓu record dïng ®Ó ¸nh x¹ tªn tíi ®Þa chØ IP t-¬ng øng (A), hoÆc ¸nh x¹ ®Þa chØ tíi tªn (PTR) hoÆc sö dông ®Ó duy tr× ¸nh x¹ gi÷a c¸c domain name server (NS)... Th«ng th-êng cÊu tróc mét RFC nh- sau: [name] [ttl] class type data  name Tªn cña ®èi t-îng resource sÏ ®-îc m« t¶ bëi resource record. name cã thÓ lµ tªn host hoÆc tªn cña domain.  Ttl Lµ gi¸ trÞ Time-to-live.  Class X¸c ®Þnh class cña DNS record.

 Type X¸c ®Þnh kiÓu RR record. Th«ng th-êng ng-êi ta sö dông c¸c kiÓu SOA, NS, A, MX vµ PTR.  Data D÷ liÖu thùc sù cña ®èi t-îng name chØ ®Þnh. CÊu h×nh primary name server §Ó cÊu h×nh named ch¹y vµ cung cÊp dÞch vô nh- primary name server cÇn ph¶i t¹o vµ thay ®æi c¸c file d÷ liÖu sau:  named.hosts  named.rev  named.local  named.ca  named.boot named.hosts Lµ file duy tr× ¸nh x¹ hostname tíi ®Þa chØ IP cho tÊt c¶ c¸c trong zone. Muèn thùc hiÖn truy nhËp theo DNS th× named.hosts ph¶i cã chøa tªn ¸nh x¹ tíi ®Þa chØ IP cña tÊt c¶ c¸c host trªn m¹ng. Thªm vµo ®ã nã cßn chøa c¸c th«ng tin kh¸c nh- mail exchangers (hoÆc mail 105

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX routers), hoÆc lo¹i CPU ... VÝ dô: file named.hosts mµ jade lµ primary server trong domain harmonics.com: ; ; Section 1: The SOA record ; harmonics.com. 2 14400 3600 604800 86400 ) ; ; Section 2: The following are the name server for the harmonics domain. Notice how the second ; entry does not specify the domain name for which cello is being the name server. This implies that ; ; harmonics.com. ; ; Section 3: The following are the mail exchangers of the domain harmonics.com ; harmonics.com. ; ; Section 4: The following records map hosts' canonical names to their corresponding ; IP addresses 106 IN IN MX MX 1 2 flute.harmonics.com. bass.harmonics.com. IN IN NS NS jade.harmonics.com. cello.harmonics.com. domain name is same as one specified in previous record. IN SOA ; Serial ; Refresh (4 hours) ; Retry (1hr) ; Expire ( 4 weeks ) ; minimum TTL (time-to-live) jade.harmonics.com. root.jade.harmonics.com. (

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ; localhost.harmonics.com. ; tenor.harmonics.com. soprano.harmonics.com. flute.harmonics.com. xrouter cello.harmonics.com. violin.harmonics.com. bass.harmonics.com. ; ; Section 5: Multihomed hosts ; jade.harmonics.com. IN A IN A 198.53.237.1 100.0.0.2 IN A IN A IN A IN A IN A IN A IN A 100.0.0.3 100.0.0.4 100.0.0.5 100.0.0.10 198.53.237.2 198.53.237.3 IN A 127.0.0.1

198.53.237.4

 Section 1 Cã chøa SOA record lµ jade.harmonics.com lµ ng-êi cung cÊp DNS server cho domain harmonics.com. File named.hosts cã thÓ chØ cã chøa SOA record, vµ nã ph¶i lµ record ®Çu tiªn trong file.  Section 2 Gåm c¸c NS record lµ c¸c host jade vµ cello nh- lµ tªn servers cña domain harmonics.com. Chó ý r»ng c¸c record nµy kh«ng ®-îc chØ ®Þnh hai server ®Òu lµ primary mµ ph¶i cã secondary server.  Section 3 Gåm hai MX records x¸c ®Þnh mail

exchangers chÝnh vµ phô cho domain harmonics.com.  Section 4 Gåm tÊt c¶ c¸c A records mµ ¸nh x¹ host name tíi ®Þa chØ IP addresses. Khi mµ client thùc hiÖn query th× name server sÏ tr¶ l¹i ®Þa chØ IP cho host, named quÐt c¸c A records trong named.hosts phï hîp víi tªn mµ client yªu cÇu vµ

107

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX tr¶ l¹i ®Þa chØ IP t-¬ng øng víi host name.  Section 5 T-¬ng øng víi jade lµ multihomed gåm hai A record. Khi mµ named ®-îc query cho ®Þa chØ IP cña jade, hoÆc bÊt kú multihomed, named ®¬n gi¶n lµ tr¶ l¹i tÊt c¶ c¸c ®Þa chØ mµ nã t×m thÊy. named.rev named sö dông named.rev ®Ó gi¶i quyªt c¸c kiÓu PTR query. Nã tr¶ l¹i host name t-¬ng øng víi query lÊy ®Þa chØ IP t-¬ng øng víi host trong named.rev file. Trong named.rev file bao gåm c¶ SOA record. VÝ dô: file 100.rev 100.in-addr.arpa. 1 14400 3600 604800 ; ; name servers ; 100.in-addr.arpa. 100.in-addr.arpa. ; ; Reverse address mappings ; 2.0.0.100.in-addr.arpa. jade.harmonics.com. 3.0.0.100.in-addr.arpa. tenor.harmonics.com. 4.0.0.100.in-addr.arpa soprano.harmonics.com. 5.0.0.100.in-addr.arpa 108 IN PTR IN PTR IN PTR IN PTR IN NS IN NS jade.harmonics.com. cello.harmonics.com. IN SOA jade.harmonics.com. root.jade.harmonics.com ( ;serial ; Refresh (4 hours) ; retry ; expire ( 1 hour ) ( 1 week )

86400 ) ; TTL = 1 day

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX flute.harmonics.com. 10.0.0.100.in-addr.arpa xrouter.harmonics.com. Trong tÊt c¶ c¸c file named.rev phÇn ®Çu tiªn bao giê còng lµ SOA record tiÕp sau ®ã lµ NS vµ cuèi cïng lµ PTR records. named.local Cã chøa cÊu h×nh cña localhost øng víi ®Þa chØ IP 127.0.0.1. VÝ dô: 0.0.127.in-addr.arpa. 1 14400 3600 604800 86400 ) ; name servers ; 0.0.127.in-addr.arpa. jade.harmonics.com. 0.0.127.in-addr.arpa. cello.harmonics.com. ; ; reverse address PTR mapping ; 1.0.0.127.in-addr.arpa. IN PTR localhost IN NS IN NS IN SOA jade.harmonics.com. root.jade.harmonics.com. ( ; serial ; refresh ( 4 hours ) ; retry ( 1 hour ) ; expire ( 1 week ) ; TTL = 1 day IN PTR

named.ca §Ó n©ng cao hiÖu qu¶ cña c¸c dÞch vô DNS, ®Ó gi¶m c¸c traffic trªn m¹ng. DNS cho phÐp server lÊy d÷ liÖu tõ cache cña nã ®Ó tr¶ lêi c¸c query tõ c¸c client. Nã thùc hiÖn ®iÒu nµy b»ng c¸ch l-u c¸c tr¶ lêi øng víi c¸c query trong bé nhí t-¬ng øng víi c¸c query mµ client

109

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX yªu cÇu tíi servers ®Ó sau nµy cã thÓ lÊy nã ®Ó dïng l¹i. DNS thùc hiÖn ®iÒu nµy b»ng cÊu h×nh trong file named.ca t-¬ng øng víi c¸c domain kh¸c. TÊt c¶ th«ng tin cã chøa trong named.ca file ®-îc sö dông ®Ó khëi ®éng c¸c cache buffer trªn DNS server mmçi khi named deamon(in.named) khëi ®éng. Th«ng th-êng trong named.ca file bao gåm c¸c th«ng tin vÒ c¸c root server v× nh÷ng th«ng tin nµy th-êng æn ®Þnh trong thêi gian dµi. VÝ dô: ; ; Section 1: NS records for the root domain servers ; . 99999999 IN IN IN IN IN IN IN IN IN NS NS NS NS NS NS NS NS NS A.ROOT-SERVERS.NET B.ROOT-SERVERS.NET C.ROOT-SERVERS.NET D.ROOT-SERVERS.NET E.ROOT-SERVERS.NET F.ROOT-SERVERS.NET G.ROOT-SERVERS.NET H.ROOT-SERVERS.NET I.ROOT-SERVERS.NET 99999999 99999999 99999999 99999999 99999999 99999999 99999999 99999999 ; ; Section 2: Root servers A records ; A.ROOT-SERVERS.NET 198.41.0.4 B.ROOT-SERVERS.NET C.ROOT-SERVERS.NET 192.33.4.12 D.ROOT-SERVERS.NET 128.8.10.90 E.ROOT-SERVERS.NET 99999999 IN A 99999999 IN A 99999999 99999999 IN IN A 128.9.0.107 A 99999999 IN A

110

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX 192.203.230.10 F.ROOT-SERVERS.NET 192.5.5.241 G.ROOT-SERVERS.NET H.ROOT-SERVERS.NET 128.63.2.53 I.ROOT-SERVERS.NET 192.36.148.17 named.boot: T¹i thêi ®iÓm khëi ®éng DNS server lÊy c¸c th«ng tin tham chiÕu trong named.boot file ®Ó lÊy c¸c th«ng tin x¸c ®Þnh cÊu h×nh dÞch vô DNS lµ primary, secondary, hoÆc cache server. §ång thêi x¸c ®Þch c¸c DNS database file bao gåm named.hosts, named.rev, named.ca vµ named.local. VÝ dô: VÒ file named.boot nã sö dông ®Ó cÊu h×nh jade nh- primary name server: directory primary primary primary primary cache . /etc/named harmonics.com 100.in-addr.arpa 237.53.198.in-addr.arpa 0.0.127.in-addr.arpa named.ca named.hosts 100.rev 198.53.237.rev 127.localhost 99999999 IN A 99999999 99999999 IN A IN 192.112.36.4 A 99999999 IN A

Mçi dßng trong file lµ dßng x¸c ®Þnh cÊu h×nh cña DNS server mµ DNS deamon(in.named) ®äc mçi khi nã khëi ®éng.  Tõ kho¸ directory ë dßng ®Çu tøc DNS deamon sö dông default location mµ tÊt c¶ c¸c DNS database file l-u trong nã /etc/named.  Dßng 2, 3, 4 víi tõ kho¸ primary nãi r»ng ®ã lµ c¸c DNS server lµ cung cÊp c¸c dÞch vô DNS øng víi

111

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX domain x¸c ®Þnh.  Dong cuèi cÊu h×nh server thùc hiÖn cache server cho c¸c root domain. C¸c th«ng tin chi tiÕt trong named.ca. CÊu h×nh secondary name server Secondary name server lµ server mµ nhËn c¸c d÷ liÖu t-¬ng øng víi zone tõ primary server. Secondary server kh«ng cã c¸c named.hosts vµ named.rev file riªng cña nã. Thay vµo ®ã khi khëi ®éng secondary server yªu cÇu primary server truyÒn c¸c b¶n copy cña c¸c file nµy. Sau ®ã secondary server khëi ®éng víi néi néi dung cÊu h×nh dùa trªn file nã nhËn ®-îc. ChØ cã mét sè thay ®æi trong file named.boot vÝ dô: cña

secondary DNS server so víi primary server directory secondary secondary secondary primary cache . /usr/lib/named harmonics.com 100.in-addr.arpa 237.53.198.in-addr.arpa 0.0.127.in-addr.arpa named.ca

100.0.0.2 100.0.0.2 100.0.0.2 named.local

Trong named.boot bao gåm hÇu hÕt lµ c¸c dßng secondary thay cho primary. Dßng thø hai chØ ra r»ng cÊu h×nh nhmét secondary server víi domain harmonics.com, vµ thùc hiÖn copy tÊt c¶ c¸c d÷ liÖu liªn quan tõ server víi ®Þa chØ IP 100.0.0.2. Dßng 3, 4 cÊu h×nh named nhlµ secondary server cho reverse domains 100.in-addr.arpa, vµ 237.53.198.in-addr.arpa. Dßng 5 cµ 6 chøa c¸c th«ng tin liªn quan ®Õn local filenames. C¶ hai file named.local vµ named.ca rÊt Ýt khi thay ®æi néi dung.

112

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Secondary server ®-îc khëi ®éng gÇn gièng nh- primary server. Khi host ch¹y ë møc 2 t¹i thêi ®iÓm boot, c¸c startup scripts kiÓm tra sù tån t¹i cña named.boot file. NÕu nã tån t¹i th× tuú theo cÊu h×nh mµ nã thùc hiÖn c¸c thao t¸c tiÕp theo. Trong thùc tÕ sÏ x¶y ra tr-êng hîp khi secondary server khëi ®éng mµ primary server kh«ng s½n sµng. DNS cho phÐp cÊu h×nh c¸c ®Þa chØ IP thay thÕ trong lÖnh secondary tõ c¸c server cã thÓ cã chøa c¸c zonal data, vµ cÊu h×nh server duy tr× c¸c b¶n copy cña file. VÝ dô: secondary harmonics.com 100.0.0.2 100.0.0.4 Nã cã thÓ c¶i tiÕn b»ng c¸ch cho phÐp secondary name server duy tr× c¸c b¶n copy cña c¸c file nhËn ®-îc. B»ng c¸ch nµy secondary sÏ lu«n cã c¸c b¶n copy cña zonal data. Tuy nhiªn d÷ liÖu nµy sÏ ®-îc kiÓm tra qu¸ h¹n ®-îc ghi trong SOA record. NÕu primary server ®-îc t×m thÊy trong zone th× secondary server sÏ yªu lÊy l¹i c¸c th«ng tin vµ bá c¸c dÞch vô tr-íc ®ã. §Ó cho phÐp named sö sö dông copy trong cét cuèi cïng

cña tõ kho¸ secondary chØ tªn file mµ d÷ liÖu sÏ copy. VÝ dô: directory secondary named.hosts secondary 100.rev secondary primary 237.53.198.in-addr.arpa 0.0.127.in-addr.arpa 100.0.0.2 named.local 198.53.237.rev 100.in-addr.arpa 100.0.0.2 /usr/lib/named harmonics.com 100.0.0.2

Dßng directory

/usr/lib/named chØ ra r»ng sö dông 113

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX datafile trong th- môc /usr/lib/named. CÊu h×nh cache only server Cache-only server kh«ng dùa vµo c¸c database file cña nã. Cache-only server chØ l-u c¸c th«ng tin t-¬ng øng víi c¸c query mµ ®-îc sö dông cho sau nµy nÕu cã thÓ. §Ó cÊu h×nh Cache-only server. Thªm vµo named.boot dßng lÖnh sau: ; ; Cache-only server for the harmonics.com domain ; primary /usr/lib/named/named.local cache ; LÖnh nslookup: Cho phÐp ch¹y chÕ ®é interactive ®Ó thùc hiÖn kiÓm tra ho¹t ®éng cña dÞch vô DNS.  Sö dông nslookup ®Ó query local server  Sö dông nslookup ®Ó query remote server  Sö dông nslookup ®Ó download DNS database Sö dông nslookup ®Ó Query Local Server Ta cã thÓ sö dông nslookup ®Ó kiÓm tra c¸c server míi, c¸c thay ®æi vÒ cÊu h×nh trªn server vµ ®Ó x¸c ®Þnh c¸c sù cè ®èi víi dÞch vô DNS. §Ó thùc hiÖn ®-îc ®iÒu nµy ph¶i login vµo ng-êi qu¶n trÞ m¹ng (root) vµ sö dông lÖnh nslookup. NgÇm ®Þnh lµ nslookup tr¶ c¸c t-íng øng víi c¸c name query (¸nh x¹ name-to-address). VÝ dô: # nslookup . /usr/lib/named/named.ca 0.0.127.in-addr.arpa

114

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX Default Server: Address: > cello Server: Address: Name: jade.harmonics.com 100.0.0.2 cello.harmonics.com jade.harmonics.com

100.0.0.2

Address: 198.53.237.2 Sö dông nslookup ®Ó Query Remote Server nslookup cã thÓ sö dông ®Ó thùc hiÖn c¸c query tíi c¸c remote server trªn m¹ng. Remote servers cã thÓ trªn cïng m¹ng hoÆc cã thÓ ë ®©u ®ã trªn Internet. §iÒu nµy cho phÐp kiÓm tra c¸c sù cè vÒ dÞch vô DNS trªn bÊt kú c¸c DNS server nµo. VÝ dô: dïng nslookup qua host jade (primary server) ®Ó query cello (secondary server) cho ®Þa chØ cña soprano # nslookup Default Server: jade.harmonics.com Address: 198.53.8.1 > soprano cello.harmonics.com Server: Address: Name: Address: cello.harmonics.com 198.53.237.2 soprano.harmonics.com 100.0.0.4

Sö dông nslookup ®Ó Download DNS Database nslookup cã thÓ thùc hiÖn ®Ó truyÒn d÷ liÖu DNS trùc tiÕp ra c¸c ®Çu ra chuÈn nh- mµn h×nh hoÆc nh- file. VÝ dô: # nslookup Default Server: Address: 0.0.0.0 jade

> ls harmonics.com

115

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX [jade] harmonics.com. jade harmonics.com. cello tenor soprano localhost harmonics jade soprano xrouter cello > exit #
d) NIS (Network Information Service)

server = jade.harmonics.com 198.53.8.1 server = cello.harmonics.com 198.53.237.2 100.0.0.3 100.0.0.4 127.0.0.1 server = jade.harmonics.com 198.53.8.1 100.0.0.4 10.0.0.10 198.53.237.2

Víi c¸c m¹ng lín vµ kÕt nèi trªn nhiÒu m¸y th× mçi m¸y ph¶i t¹o c¸c account riªng nÕu nh- muèn truy nhËp. Víi viÖc t¹o nhiÒu c¸c account trªn mét hÖ thèng nh- vËy sÏ dÉn ®Õn viÖc gÆp rÊt nhiÒu khã kh¨n trong c«ng t¸c qu¶n trÞ vµ sö dông. NIS lµ dÞch vô m¹ng (ph¸t triÓn Yellow Pages protocol) cung cÊp directory service, ®¸p øng viÖc qu¶n trÞ tËp trung trªn c¸c m¹ng lín. Nã lµ cho phÐp thùc hiÖn c¸c truy nhËp ph©n t¸n trªn hÖ thèng m¹ng sö dông quyÒn truy nhËp th«ng qua mét trung t©m lµ NIS master (hay ypmaster) ®Ó x¸c nhËn quyÒn truy nhËp. Trªn mét m¹ng lín th«ng th-êng ng-êi ta cã thÓ thiÕt lËp thªm c¸c slaves (hay ypslaves) ®Ó thùc hiÖn t¹o thµnh c¸c m¸y dù phßng (l-u toµn bé th«ng tin vÒ quyÒn truy nhËp trªn toµn hÖ thèng tõ master). Trong tr-êng hîp master server gÆp sù

116

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX cè slave cã thÓ thùc hiÖn chøc n¨ng thay thÕ. NIS l­u gi‚ tÊt c¶ c¸c th«ng tin trong ―maps" mçi map øng víi mét vïng trªn network ®iÒu nµy cho phÐp mét vµi groups sö dông chung mét NIS master nh-ng l¹i cã quyÒn truy nhËp kh¸c nhau. NIS map kh«ng t-¬ng øng víi h×nh. Maps bao gåm c¸c record ghi d-íi d¹ng ASCII. Thµnh phÇn cña NIS bao gåm:  domain  maps  Daemon ypser ypbind ypxfrd cao. roc.ypupdated Thùc hiÖn cËp nhËp d÷ liÖu khi d÷ liÖu map thay ®æi. in.named Thùc hiÖn dÞch vô DNS (optional)  Utilities ypcat ypwich ypwatch ypinit yppoll LiÖt kª d÷ liÖu trong map HiÖn tªn NIS server vµ map server T¹o key øng víi gi¸ trÞ trong map Cµi ®Æt vµ x©y dùng NIS database LÊy c¸c sè thø tù tõ server Server process Liªn kÕt c¸c process Daemon truyÒn d÷ liÖu liªn kÕt tèc ®é DNS domain mµ nã cho phÐp nhiÒu mÒm dÎo h¬n trong viÖc cÊu

 C¸c tiÖn Ých kh¸c yppush ypset ChuyÓn d÷ liÖu tõ master tíi slave. §Æt liªn kÕt thùc sù tíi server. 117

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX ypxfr víi tèc ®é lín. makedbm T¹o dbm file cho mét NIS map TruyÒn d÷ liÖu tõ master tíi slave

Th«ng th-êng NIS server cã thÓ hç trî mét vµi map files th«ng th-êng lµ c¸c file chuÈn trªn UNIX nh- group, hosts, networks, passwd, protocols, rpc, services sau ®ã nã ®-îc chuyÓn thµnh c¸c file t-¬ng øng vÝ dô: /etc/group /etc/hosts /etc/passwd group.byname, group.bygid hosts.byname, hosts.byaddr passwd.byname, passwd.byuid

TÊt c¶c c¸c file nµy ®-îc l-u d-íi khu«n DBM gäi lµn gdbm. Cã thÓ sö dông tiÖn Ých ypmakedbm ®Ó t¹o database file cho NIS. 3. NFS (Network File System) Mét hÖ thèng sö dông trªn c¬ së m¹ng UNIX víi kh¶ n¨ng xö lý ph©n t¸n vµ client/server. Trªn m¹ng gåm cã nhiÒu workstation kÕt nèi víi hÖ thèng m¸y chñ vµ kÕt nèi gi÷a c¸c workstation víi nhau. NhiÒu øng dông lín cã thÓ ®-îc l-u trªn c¸c server. Cã mét sè tiÖn Ých cho phÐp truy nhËp tíi c¸c file ë xa nh-ng chØ cho phÐp thùc hiÖn c¸c truyÒn file hoÆc d¹ng terminal. §Ó tÝch hîp hÖ thèng trªn m¹ng cho phÐp truy nhËp tµi nguyªn ë xa UNIX ®-a ra dÞch vô NFS. NFS cho phÐp thùc hiÖn viÖc ®äc vµ ghi c¸c file trªn NFS servers. ViÖc truy nhËp tõ c¸c client tíi NFS servers cã thÓ thùc hiÖn th«ng qua ¸nh x¹ (mount) nã ®Õn mét thmôc trªn m¸y côc bé ( gäi lµ ®iÓm "mount"). Sau ®ã viÖc truy xuÊt ®Õn th- môc cña m¸y tõ xa ®-îc thùc hiÖn b»ng c¸ch truy xuÊt trªn m¸y côc bé qua ®iÓm "mount".

118

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX VÝ dô: mount -F nfs –o ro Remote:/export/app /temp/data Khi sö dông lÖnh nµy client kiÓm tra remote machine xem cã quyÒn truy nhËp th- môc hay kh«ng. NÕu cã quyÒn th× nã göi mét th«ng tin ®iÒu khiÓn sö dông ®Ó ®Þnh h-íng tÊt c¶ c¸c yªu cÇu truy nhËp tõ client. Tr-¬ng tr×nh thùc hiÖn viÖc kiÓm so¸t vµ cung cÊp c¸c dÞch vô lµ nfsd. Trong hÖ ®iÒu hµnh UNIX mét m¸y cã thÓ võa lµ NFS server võa lµ client. ViÖc sö dông c¸c dÞch vô NFS gióp cho viÖc qu¶n trÞ tËp trung trªn hÖ thèng lín ®-îc thuËn lîi h¬n (nhÊt lµ trong c¸c c«ng t¸c sao l-u vµ håi phôc, qu¶n trÞ c¸c øng dông ...) NFS server Ho¹t ®éng cña NFS trªn server ®-îc ®iÒu khiÓn bëi c¸c deamon lµ rpc.mountd, nfsd vµ file cÊu h×nh thiÕt lËp danh s¸ch c¸c th- môc mµ client cã thÓ thùc hiÖn mount trong file /etc/exports. File /etc/exports ®-îc ®äc mçi lÇn mountd daemon nhËn ®-îc yªu cÇu mount th- môc. VÝ dô: # /etc/exports for merlin /usr/database/data chatton(rw) big_roy (rw) wizard (rw) /usr/book chatton(rw) wizard (ro) /usr/bin/bigapp big_roy(rw) wizard (ro) /usr/ftp (ro) Muèn thay ®æi tËp tin /etc/exports ph¶i cã quyÒn

superuser trªn m¸y server. Sau khi thay ®æi ®Ó cËp nhËt l¹i th«ng tin cho server sö dông lÖnh share: NFS client Client truy xuÊt c¸c tËp tin trªn server b»ng c¸ch mount 119

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX c¸c th- môc mµ server xuÊt. Khi client mount mét th- môc trªn server ®ã lµ mét qu¸ tr×ng sö dông chuçi lÖnh gäi thñ tôc tõ xa (Remote Procedure Call) cho phÐp client truy xuÊt ®Õn th- môc trªn server. Th«ng tin nµy ®-îc deamon rpc.mountd xö lý vµ x¸c ®Þnh client ®-îc phÐp hay kh«ng ®-îc phÐp truy xuÊt ®Õn c¸c th- môc cña server. TiÕn tr×nh client t×m server xuÊt ra c¸c th«ng tin mµ client cÇn vµ sau ®ã thiÕt lËp ®-êng truyÒn gi÷a client vµ server gäi lµ binding. Sù rµng buéc NFS x¶y ra trong suèt qu¸ tr×nh client mount mét th- môc tõ xa. ViÖc mount th- môc tõ xa cã thÓ ®-îc thùc hiÖn khi khëi ®éng hoÆng th«ng qua lÖnh mount hay c¬ chÕ automounter. TËp tin /etc/fstab liÖt kª c¸c th- môc mµ client mount trong khi khëi ®éng. Víi automounter client cã thÓ tù ®éng mount c¸c th- môc trong qu¸ tr×nh lµm viÖc mµ kh«ng cÇn ph¶i gäi lÖnh mount. 4. Mail Trong hÖ ®iÒu hµnh Unix server th-êng hç trî hai thµnh phÇn gåm Mail User Agent (MUA-mail, mailx elm) vµ Mail Transport Agent (MTA -sendmail). Víi c¸c thµnh phÇn nµy ng-êi göi c¸c message cã thÓ thùc hiÖn viÖc so¹n, göi c¸c mesage tíi c¸c user trªn c¸c m¸y vµ ®äc c¸c message. Víi MTA cho phÐp thùc hiÖn viÖc x¸c ®Þnh ®-êng sÏ göi message dùa theo ®Þa chØ cña ng-êi nhËn vµ chuyÓn nã vµo mailbox cña ng-êi nhËn. UNIX hç trî viÖc truyÒn mail qua m¹ng TCP/IP hoÆc qua dial-up sö dông UUCP vµ sö dông SMTP trong ®Þnh d¹ng mail (Simple Mail Transfer Protocol ). Ch-¬ng tr×nh sendmail cã thÓ ®-îc cÊu h×nh lµm mail router, final delivery agents, SMTP client, SMTP-server tuú theo cÊu h×nh cña ng-êi qu¶n trÞ. 120

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX sendmail nh- Mail Router sendmail cã thÓ thùc hiÖn chøc n¨ng nh- lµ mail router tøc lµ nã cã thÓ lÊy letter, xem xÐt ®Þa chØ ng-êi nhËn vµ quyÕt ®Þnh c¸ch tèt nhÊt ®Ó göi nã. §Çu tiªn sendmail x¸c ®Þnh mét sè th«ng tin nã cÇn nhthêi gian vµ tªn cña m¸y chñ mµ nã ®ang ch¹y. Nh-ng viÖc cÊu h×nh nã nh- thÕ nµo l¹i phô théc vµo cÊu h×nh cña ng-êi qu¶n trÞ trong file sendmail.cf. C¸c th«ng tin trong sendmail.cf sÏ x¸c ®Þnh ph-¬ng ph¸p ®iÒu khiÓn mail vµ ®-êng ®i cña mail sÏ ®-îc göi. . sendmail nh- MTA-Client (Sender) vµ Server (Receiver) SMTP sendmail cã thÓ thùc hiÖn chøc n¨ng MTA víi SMTP

protocol. Bëi v× SMTP lµ giao thøc kÕt nèi ®Þnh h-íng lu«n cã c¸c client vµ server. SMTP client göi letter tíi SMTP server qua SMTP port. sendmail cã thÓ lµ mét SMTP client hoÆc mét SMTP server. Khi ch¹y nã víi chøc n¨ng MUA nã sÏ trë thµnh SMTP client. Khi hÖ thèng khëi ®éng vµ ch¹y nã ë d¹ng daemon mode nã cã thÓ thÓ hiÖn nh- lµ mét SMTP server nhËn c¸c mail ®Õn. CÊu h×nh sendmail 5. UNIX client Trong hÖ thèng viÖc chän c¸c client phï hîp còng lµ mét biÖn ph¸p lµ t¨ng hiÖu qu¶ sö dông hÖ thèng. Tuy nhiªn ng-êi ta cã thÓ chén lÉn c¸c lo¹i client trªn mét m¹ng. Gåm mét sè c¸c lo¹i client sau: Diskless clients—Lµ client kh«ng cã ®Üa riªng cña nã. Thùc hiÖn viÖc khëi ®éng th«ng qua m¹ng nªn ®ßi hái trªn 121

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX m¹ng ph¶i cã bootp server vµ NFS server cung cÊp c¸c dÞch vô vÒ khëi ®éng m¹ng vµ ®Üa cho client. V× diskless client kh«ng cã ®Üa riªng vµ khëi ®éng tõ m¹ng cho nªn nã ®ßi hái viÖc sö dông mét l-oùng tµi nguyªn lín trªn c¸c server Dataless clients—Lµ c¸c client cã phÇn ®Üa riªng cña nã nh-ng vÉn sö dông c¸c dÞch vô, c¸c tiÖn Ých cung cÊp trªn m¹ng. Nã kh«ng thÓ tù boot ®-îc mµ ph¶i boot tõ m¹ng. Tuy nhiªn do cã phÇn ®Üa riªng cho nªn viÖc ®ßi hái sö dông ®Üa trªn m¹ng kh«ng lín nh- diskless client. Standalone system - Lµ hÖ thèng cã phÇn ®Üa riªng cña nã, cã thÓ tù khëi ®éng kh«ng ®ßi hái c¸c dÞch vô khëi ®éng trªn m¹ng. NÕu kÕt nèi vµo m¹ng nã cã thÓ sö dông c¸c dÞch vô cña m¹ng mµ ®-îc cung cÊp bëi c¸c server. Time sharing system. – Lµ hÖ thèng víi standalone system vµ c¸c terminal kÕt nèi víi nã th«ng qua trùc tiÕp c¸c serial line hoÆc qua modem. C¸c terminal kh«ng cã disk, printer, vµ file vµ CPU riªng cña nã. Mµ nã sö dông chia sÎ c¸c tµi nguyªn nµy víi server. Ngoµi c¸c hÖ thèng ch¹y trªn c¬ së hÖ ®iÒu hµnh Unix. C¸c Unix server cßn hç trî c¸c kÕt nèi tõ c¸c client sö dông c¸c hÖ ®iÒu hµnh kh¸c kÕt nèi víi nã th«ng qua c¸c dÞch vô TCP/IP, X-terminal, SMTP ... Qu¶n trÞ c¸c client: ViÖc qu¶n trÞ quyÒn truy nhËp trªn hÖ thèng (xem phÇn trªn ) bao gåm phÇn qu¶n trÞ quyÒn ng-êi sö dông truy nhËp tªn hÖ thèng, qu¶n trÞ viÖc sö dông tµi nguyªn nh- ®Üa, m¸y in, DNS, ... Tuy nhiªn víi c¸c client yªu cÇu c¸c dÞch vô khëi ®éng tõ server th× ®ßi hái ph¶i cã mét vïng d÷ liÖu ®-îc tæ chøc theo cÊu tróc cÇn thiÕt phôc vô cho ho¹t ®éng cña c¸c client nµy. Trªn ®ã chøa c¸c th«ng tin vÒ khëi ®éng 122

Giíi thiÖu vÒ UNIX- Mét sè thao t¸c c¬ b¶n trªn UNIX hÖ thèng, vÒ cÊu h×nh m¹ng, vÒ ®Þnh ngi· m«i tr-êng ...§Ó thùc hiÖn viÖc tæ chøc nµy, mét sè hÖ ®iÒu hµnh UNIX cung cÊp c¸c tiÖn Ých cho phÐp t¹o vµ xo¸ c¸c phÇn th«ng tin nµy.

123


				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:112
posted:9/25/2008
language:Vietnamese
pages:123