logo

UNIX (giáo trình)

Làm quen với hệ điều hành Unix
Copyright(c) by Galaxy CD – http://www.galaxycd.com Muïc luïc: PHAÀN 1: UNIX CÔ SÔÛ Baøi 1. Khôûi ñoäng UNIX 1.1 Baét ñaàu phieân laøm vieäc 1.2 Keát thuùc phieân laøm vieäc 1.3 Caùch duøng leänh cuûa UNIX Baøi 2. Laøm vieäc vôùi file. 2.1 Toå chöùc file 2.2 Di chuyeån giöõa caùc thö muïc 2.3 Caùc thao taùc cô sôû vôùi caùc thö muïc 2.4 Caùc thao taùc cô sôû vôùi file thöôøng Baøi 3. Baûo veä caùc file cuûa ngöôøi söû duïng 3.1 Moâ taû ngöôøi söû duïng 3.2 Moâ taû nhoùm ngöôøi söû duïng 3.3 Baûo veä caùc file vaø caùc thö muïc Baøi 4. Sao, chuyeån, lieân keát vaø tìm kieám file 4.1 Sao cheùp file 4.2 Chuyeån vaø ñoåi teân file 4.3 Taïo lieân keát vôùi file 4.4 Tìm kieám file Baøi 5. Thoâng tin giöõa nhöõng ngöôøi söû duïng 5.1 Thoâng tin baèng leänh mail 5.2 Thoâng tin baèng leänh write Baøi 6. Söû duïng chöông trình soaïn thaûo vi 6.1 Khôûi ñoäng vi 6.2 Soaïn thaûo vaên baûn Baøi 7. Shell script 7.1 Quaûn lyù tieán trình 7.2 Laäp caùch thöùc cho shell script 7.3 Caùc shell UNIX Baøi 8. Ñoåi höôùng (redirection) 8.1 Vaøo/ra chuan 8.2 Chuyeån ñoåi döõ lieäu giöõa caùc tieán trình 1 Copyright(c) by Galaxy CD – http://www.galaxycd.com 8.3 Ñoåi höôùng keùp ñaàu ra chuaån Baøi 9. Cô cheá thay theá cuûa Shell 9.1 Truyeàn tham soá 9.2 Caùc bieán Shell 9.3 Caùc kí töï ñaëc bieät 9.4 Laáy keát quaû cuûa moät leänh 9.5 Caùc qui taéc thay theá cuûa Shell Baøi 10. Moâi tröôøng cuûa Shell 10.1 Moâi tröôøng 10.2 Caùc bieán ñònh nghóa tröôùc 10.3 Caùc bieán chung Baøi 11. Laäp trình möùc cô sôû döôùi UNIX 11.1 Caùc pheùp thöû trong Shell 11.2 Laäp trình moät caáu truùc coù ñieàu kieän 11.3 Laäp trình moät chu trình Baøi 12. Tín hieäu vaø ñoàng boä 12.1 Quaûn lyù caùc tín hieäu 12.2 Quaûn lyù caùc tieán trình 12.3 Ñeä qui PHAÀN 2 LAÄP TRÌNH C DÖÔÙI UNIX Baøi 1. Giôùi thieäu chung 1.1 Caùc lôøi goïi heä thoáng 1.2 Chuû thöïc vaø chuû thöïc quyeàn cuûa tieán trình 1.3 Ñònh nghóa caùc tham bieán chöông trình 1.4 Moät soá ñònh nghóa khaùc Baøi 2. Quaûn lyù tieán trình 2.1 Nhaän bieát tieán trình 2.2 Nhaän bieát chuû tieán trình 2.3 Thay ñoåi chuû vaø nhoùm chuû 2.4 Taïo moät tieán trình 2.5 Caùc haøm goïi moät tieán trình thay theá 2.6 Ñoàng boä tieán trình 2.7 Möùc öu tieân cuûa tieán trình 2.8 Nhoùm caùc tieán trình 2 Copyright(c) by Galaxy CD – http://www.galaxycd.com Baøi 3. Quaûn lyù file 3.1 Môû moät file 3.2 Taïo moät file 3.3 Ñoùng file 3.4 Ñaët maët naï caùc quyeàn thaâm nhaäp file 3.5 Ñoïc file 3.6 Ghi file 3.7 Di chuyeån con troû file 3.8 Caáu truùc moät inode 3.9 Taïo moät inode 3.10 Thay ñoåi quyeàn thaâm nhaäp 3.11 Thay ñoåi chuû sôû höõu hoaëc nhoùm 3.12 Thay ñoåi thö muïc laøm vieäc 3 Copyright(c) by Galaxy CD – http://www.galaxycd.com PHAÀN 1: UNIX CÔ SÔÛ Baøi 1. Khôûi ñoäng UNIX Noäi dung: Laøm quen vôùi heä ñieàu haønh UNIX. Baét ñaàu, keát thuùc phieân laøm vieäc, chaïy moät soá leänh ñaëc tröng. 1.1 Baét ñaàu phieân laøm vieäc: Baät coâng taéc nguoàn cuûa terminal (trong heä thoáng cuûa NLC laø Xterm sau khi duøng Exceed keát noái vôùi UNIX server), khoaûng moät giaây sau treân maøn hình hieän doøng thoâng baùo: Login: Haõy nhaäp vaøo teân (user name) khi keát thuùc baèng phím Enter. Neáu ngöôøi söû duïng coù duøng maät khaåu (passwor), treân maøn hình seõ hieän doøng: Password: Haõy vaøo maät khaåu cuûa mình vaø keát thuùc baèng phím Enter. Neáu teân (vaø maät khaåu neáu coù) ñöôïc vaøo ñuùng, terminal ñoù seõ ñöôïc noái vôùi maùy chuû vaø treân maøn hình seõ hieän kyù töï: $ ñoù laø daáu nhaéc cuûa Shell. Maät khaåu ñaûm baûo an toaøn cho moãi phieân laøm vieäc. Ta coù theå thay ñoåi maät khaåu baèng leänh passwd. Maät khaåu phaûi daøi ít nhaát 6 kyù töï, ít nhaát phaûi coù 2 kyù töï alphabet, phaûi khaùc vôùi teân (user name) ít nhaát 3 kyù töï, daøi toái ña 13 kyù töï. 1.2 Keát thuùc phieân laøm vieäc: AÁn CTRL + D (giöõ phím CTRL vaø goõ phím D) hoaëc goõ leänh $exit ñeå keát thuùc phieân laøm vieäc. 1.4 Caùch duøng leänh cuûa UNIX: - Cuù phaùp cô baûn ñeå chaïy moät leänh cuûa UNIX nhö sau: $teânleänh [-tuyø choïn][ñoái soá 1]…[ñoái soá n] Thí duï: wc laø leänh ñeám vaø hieån thò soá doøng, töø vaø kyù töï cuûa moät file. Ta coù theå chaïy leänh wc nhö sau $wc /etc/passwd 32 37 1139 etc/passwd $wc -l /etc/passwd 32 etc/passwd 4 Copyright(c) by Galaxy CD – http://www.galaxycd.com $wc -ld /etc/passwd /etc/group 32 1139 etc/passwd 15 337 etc/group 47 1476 total - Caùc thoâng baùo loãi khi goïi leänh: Neáu leänh khoâng toàn taïi hoaëc khoâng tìm thaáy: $data data not found Neáu cuù phaùp cuûa leänh bò goõ sai: $wc -m /etc/group usage: wc [-clw][name…] Baøi taäp: Chuù yù: Kyù hieäu töôïng tröng cho vieäc goõ phím Enter. 1. Haõy baét ñaàu phieân laøm vieäc vôùi teân (username) cuûa baïn. 2. Ñôïi khi daáu nhaéc cuûa heä thoáng xuaát hieän (daáu $), goõ vaøo date 3. Gaùn maät khaåu cho teân: passwd 4. Lieät keâ teân nhöõng ngöôøi ñang söû duïng heä who 5. Xem ai laø ngöôøi ñang laøm vieäc taïi terminal: who am I whoami 6. Xem teân terminal maø ta ñang laøm vieäc treân ñoù: tty 7. Hieån thò caùc thoâng baùo leân maøn hình: echo “Xin chao” echo “Chao” echo “Dau nhac ket thuc boi $ xuat hien sau Chao” echo “Hom nay la ngay:”;date echo “Hai lenh tren 1 dong cach nhau boi dau ;” 8. Duøng leänh cal (lòch): cal 01 1900 cal 01 cal 1900 cal 1900 | more 9. Moät vaøi leänh khaùc: logname 5 Copyright(c) by Galaxy CD – http://www.galaxycd.com uname who | wc 10. Keát thuùc phieân laøm vieäc: Ctrl D (giöõ phím Ctrl vaø goõ D) hoaëc exit 6 Copyright(c) by Galaxy CD – http://www.galaxycd.com Baøi 2. Laøm vieäc vôùi file Noäi dung: Caùc khaùi nieäm cô baûn veà file cuûa UNIX, toå chöùc cuûa caùc file treân ñóa, caùc thao taùc vôùi file. 2.1 Toå chöùc file: 2.1.1 Caùc kieåu file UNIX coù 3 kieåu file: -File bình thöôøng (ordinary file): laø moät taäp hôïp thoâng tin (ASCII text hoaëc binary). -File thö muïc (directory file): chöùa danh saùch caùc teâncoù theå truy nhaäp tôùi thí duï nhö caùc file bình thöôøng, caùc file ñaëc bieät hoaëc caùc thö muïc con. -File ñaëc bieät (special file): laø caùc file lieân quan tôùi caùc thieát bò ngoaïi vi cöùng vaø/hoaëc cô cheá truyeàn tin. Thí duï: Baøn phím laø moät file ñaàu vaøo(input file). Maøn hình laø moät file ñaàu ra (output file). Maùy in laø moät file ñaàu ra. 2.1.2 Toå chöùc cuûa caùc file Caùc file cuûa UNIX ñöôïc toå chöùc theo daïng caây (tree). Thö muïc goác (root) cuûa caây ñöôïc bieåu dieãn baèng kyù töï /. Caáu truùc caây cô sôû cuûa heä UNIX ñöôïc boá trí nhö sau: Kyù hieäu file bình thöôøng Kyù hieäu file thö muïc Kyù hieäu file ñaëc bieät / unix bin etc dev users usr user1 user2 Hình 1: Caáu truùc caây cô sôû cuûa UNIX 2.2 Di chuyeån giöõa caùc thö muïc: Ñeå di chuyeån giöõa caùc thö muïc trong caây cuûa UNIX, ta duøng 2 leänh sau ñaây: 7 Copyright(c) by Galaxy CD – http://www.galaxycd.com cd chuyeån ñeán thö muïc caàn ñeán (change directory) pwd hieån thò teân thö muïc ñang laøm vieäc (print working directory) Taïi thôøi ñieåm baét ñaàu phieân laøm vieäc, ta ôû trong thö muïc tieáp nhaän (HOME directory). Muoán xem teân thö muïc tieáp nhaän naøy, ta duøng leänh pwd. Thí duï: user1 coù thö muïc tieáp nhaän laø /users/user1 $pwd /users/user1 Ñeå di chuyeån giöõa caùc thö muïc ta duøng leänh cd vôùi teân thö muïc caàn chuyeån ñeán. $cd /usr/bin $pwd /usr/bin $cd .. $pwd /usr Ñeå veà thö muïc tieáp nhaän khi ta ñang ôû baát kyø ñaâu, goõ: $cd $pwd /users/user1 2.3 Caùc thao taùc cô sôû vôùi thö muïc: 2.3.1 Xem noäi dung thö muïc: - Xem noäi dung thö muïc hieän ñang laøm vieäc: $ls - Xem noäi dung thö muïc khaùc, chaúng haïn thö muïc /bin: $ls /bin - Xem theâm thoâng tin cuûa caùc file trong thö muïc: $ls -l hoaëc $ll - Xem teân caùc file trong thö muïc theo coät: $lc Khi duøng leänh ls –l ta coù theå phaân bieät caùc kieåu file baèng caùch xem kyù töï ñaàu cuûa doøng hieån thò, neáu laø: d : file thö muïc. - : file bình thöôøng c hoaëc b : file ñaëc bieät 2.3.2 Taïo thö muïc: Ñeå taïo moät thö muïc môùi, ta duøng leänh mkdir (make directory): $mkdir index $cd index 8 Copyright(c) by Galaxy CD – http://www.galaxycd.com $ls -a . .. Leänh mkdir taïo moät thö muïc vôùi 2 ñaàu vaøo (entry) - baûn thaân thö muïc coù teân ñaõ cho. - thö muïc . lieân heä vôùi thö muïc ñöôïc taïo ôû treân - thö muïc . . lieân heä vôí thö muïc cha. 2.3.3 Xoùa thö muïc: Ñeå xoaù moät thö muïc ta duøng leänh rmdir (remove directory): $rmdir index Neáu muoán xoaù thö muïc khoâng roãng, phaûi duøng leänh rm vôùi tuyø choïn r $rm -ri thumuc 2.4 Caùc thao taùc cô sôû vôùi file thöôøng: 2.4.1 Nhaän bieát moät file thöôøng: Leänh file phaân tích noät dung cuûa moät file vaø hieån thò tính chaát cuûa thoâng tin chöùa trong file: $file /etc/passwd /etc/passwd: ascii text $file /bin/ls /bin/ls: 680x0 executable 32 bits page aligned striped 2.4.2 Xem noäi dung moät file thöôøng ASCII: Coù theå duøng moät trong caùc leänh sau: cat duøng ñeå xem noäi dung caùc file nhoû. pg hoaëc more xem noäi dung caùc file lôùn theo trang. $cat teân file $pg teân file $more teân file 2.4.3 Taïo moät file thöôøng ASCII Taïi Shell cuûa UNIX ta coù theå deã daøng taïo moät file thöôøng ASCII text baèng caùch duøng leänh cat $cat >text_file abcdef 123456 $ 9 Copyright(c) by Galaxy CD – http://www.galaxycd.com - Kyù töï ‘>’ ñoåi höôùng, thay vì ñeán ñaàu ra chuaån (standard output) ‘ ‘ ñeán file ñöôïc quy ñònh ngay sau ‘>’. ÔÛ ñaây caùc kyù töï goõ vaøo ñöôïc ghi vaøo file ‘text_file’. - Leänh cat, neáu khoâng coù ñoái soá (argument), seõ coi baøn phím laø ñaàu vaøo chuaån. - Goõ taïi doøng troáng cuoái cuøng keát thuùc vieäc vaøo soá lieäu. < (1) > Stdin KEYBOARD cat FILE stdout CONSOLE stderr 2> Hình 2 : ñoåi höôùng ñaàu vaøo/ra chuaån Caùch vieát teân file khi taïo file: - ñoä daøi + teân file cuûa UNIX sys V daøi toái ña 14 kyù töï + teân file cuûa BERKELEY, baét ñaàu töø version BSD 4.2. coù theå daøi ñeán 256 kyù töï. - khoâng coù söï haïn cheá duøng kyù töï naøo khi vieát teân file, song ta caàn chuù yù vaøi ñieåm sau: + khoâng duøng caùc kyù töï ñaëc bieät (tröø daáu chaám ‘.’ hoaëc daáu gaïch döôùi ‘_’) vì phaàn lôùn caùc kyù töï ñoù ñöôïc duøng trong cuù phaùp cuûa leänh Shell. + file coù teân baét ñaàu baèng daáu chaám ‘.’ laø file aån (hidden). + kyù töï vieát thöôøng khaùc vôùi vieát hoa. Vieát teân file baèng caùch duøng caùc metacharacter (? Vaø *) - kyù töï ‘*’ thay theá moät xaâu kyù töï - kyù töï ‘?’ thay theá moät kyù töï Thí duï: $ll /bin/c* $ll /bin/c? 2.4.4 Xoaù moät file thöôøng: Leänh : rm Coù theå duøng leänh rm vôùi caùc tuyø choïn sau: -i coù hoûi ñaùp ñeå khaúng ñònh -f khoâng coù hoûi ñaùp. Tuyø choïn naøy raát nguy hieåm, chæ nhöõng ngöôøi söû duïng coù kinh nghieäm vaø caån thaän môùi neân duøng. $rm text_file $rm -i text_file 10 Copyright(c) by Galaxy CD – http://www.galaxycd.com Baøi taäp: 1. Xem teân thö muïc ñang laøm vieäc: pwd 2. Xem noäi dung cuûa thö muïc ñang laøm vieäc: ls –l 3. Taïo file vaên baûn tintin: cat > tintin blabla BLABLA end CTRL + D (giöõ phím Ctrl vaø goõ phím D) 4. Xem noäi dung file tintin: cat tintin 5. Xem noäi dung caùc thö muïc /bin /usr/bin /dev ll /bin hoaëc ls -C /bin hoaëc ll /bin | pg 6. Taïo 2 thö muïc d1 vaø d2 mkdir d1 d2 7. Chuyeån thö muïc laøm vieäc ñeán d1 8. Taïo moät file trong thö muïc d1 9. Trôû veà thö muïc tieáp nhaän (HOME directory) cd 10. Xem noäi dung thö muïc ñang laøm vieäc: ls -l hoaëc ll ls ll -R (xem noäi dung caû caùc thö muïc con) lc 11. Xoaù thö muïc d1: rm d1/* rmdir d1 Hoaëc rm -ri d1 11 Copyright(c) by Galaxy CD – http://www.galaxycd.com Baøi 3. Baûo veä caùc file cuûa ngöôøi söû duïng: Noäi dung : moâ taû cô cheá baûo veä file cuûa UNIX : ngöôøi söû duïng, nhoùm ngöôøi söû duïng, caùc quyeàn thaâm nhaäp file 3.1 Moâ taû ngöôøi söû duïng: 3.1.1 Khaùi nieäm : Moät ngöôøi söû duïng ñöôïc moâ taû baèng caùc thoâng tin sau: - teân - [maät khaåu (neáu coù] - soá nhaän daïng (uid : user identify number) - soá cuûa nhoùm (gid : group identify number) - [chuù thích] - thö muïc tieáp nhaän (HOME directory) - [teân chöông trình cho chaïy luùc baét ñaàu teân laøm vieäc] Caùc thoâng tin treân ñöôïc chöùa trong file /etc/passwd 3.1.2 Leänh defuser: Leänh naøy ôû trong danh muïc /etc, noù cho pheùp: - hieån thò danh saùch nhöõng ngöôøi söû duïng. - theâm ngöôøi söû duïng môùi (chæ nhöõng ngöôøi quaûn trò heä thoáng coù quyeàn) $cat /etc/passwd | pg root : RKgSspHwm.PB.:0:3:0000-Admin000,,,:/: date::18:1::/:/bin/date tty::19:1::/:/bin/tty user1::3000:300::/users/user1: user2::3001:300::/users/user2: $/etc/defuser | pg USER UID GID HOMEDIR SHELL root 0 3 / daemon 1 12 / bin 2 2 /bin sys 3 3 /usr adm 4 4 /usr/adm date 18 1 / /bin/date tty 19 1 / /bin/tty sync 20 1 / /bin/sync securadm 11 11 /etc/secure/bin lp 71 2 /usr/spool/lp user1 3000 300 /users/user1 /bin/ksh 12 Copyright(c) by Galaxy CD – http://www.galaxycd.com user2 3001 300 /users/user2 /bin/ksh 3.2 Moâ taû nhoùm ngöôøi söû duïng 3.2.1 Khaùi nieäm : Moät nhoùm ngöôøi söû duïng laø taäp hôïp cuûa moät soá ngöôøi söû duïng coù theå duøng chung caùc file cuûa nhau. Moät nhoùm ngöôøi söû duïng ñöôïc moâ taû baèng caùc thoâng tin sau: - teân cuûa nhoùm - [maät khaåu] - soá cuûa nhoùm (gid : group identify number) - [danh saùch nhöõng ngöôøi khaùch (guest)] Caùc thoâng tin treân ñöôïc chöùa trong file /etc/group 3.2.2 Leänh defgrp: Leänh naøy ôû trong thö muïc /etc, noù cho pheùp: - hieån thò danh saùch caùc nhoùm ngöôøi söû duïng. - theâm nhoùm môùi (chæ ngöôøi quaûn trò heä thoáng môùi coù quyeàn). $cat /etc/group public :: 100 : invite animator :: 200 : stagiaires :: 300 : $/etc/defgrp GRP GID USERS root 0 root other 1 date sync shut bin 2 root bin daemon lp sys 3 root bin sys adm adm 4 root adm daemon uucp 5 uucp daemon 13 Copyright(c) by Galaxy CD – http://www.galaxycd.com nuucp mail 6 root … 3.3 Baûo veä caùc file vaø caùc thö muïc 3.3.1 Caùc quyeàn thaâm nhaäp file: Khi file ñöôïc taïo laäp, caùc thoâng tin sau ñaây ñoàng thôøi ñöôïc ghi laïi: - uid cuûa ngöôøi taïo file - gid cuûa ngöôøi taïo file - caùc quyeàn thaâm nhaäp file … File ñöôïc baûo veä bôûi moät taäp hôïpc caùc bit ñònh nghóa quyeàn thaâm nhaäp: r w x r w x r w x suid sgid owner group other Trong ñoù: r quyeàn ñoïc w quyeàn ghi x quyeàn chaïy (executing) suid set user-id sgid set group-id Ñoái vôùi thö muïc: r quyeàn ñoïc noäi dung thö muïc w quyeàn taïo vaø xoaù file trong thö muïc x quyeàn qua laïi (crossing) thö muïc Ghi chuù: caùc quyeàn vôùi thö muïc chæ coù hieäu löïc taïi moät möùc nhaát ñònh, thö muïc con coù theå ñöôïc baûo veä trong khi thö muïc cha thì khoâng. 3.3.2 Leänh ls -l Leänh naøy lieät keâ danh saùch caùc file vaø caùc thuoäc tính cuûa chuùng trong moät thö muïc, qua ñoù ta coù theå phaùt hieän loaïi file, caùch baûo veä, ngöôøi sôû höõu, vaø kích thöôùc cuûa chuùng… Thí duï: Caùc file thöôøng (ordinary files): $ls -l /bin -rwxrwxr-x 1 bin bin 16336 Mar 8 1988 cat -rwxrwxr-x 3 root bin 16124 Mar 8 1988 cp -rwxrwxr-x 1 bin bin 18760 Mar 8 1988 cat -rwxrwxr-x 1 bin bin 13320 Mar 8 1988 echo -rwxrwxr-x 2 bin bin 33896 Mar 8 1988 ed -rwxrwxr-x 1 bin bin 28928 Mar 8 1988 file -rwxrwxr-x 3 root bin 16124 Mar 8 1988 ln 14 Copyright(c) by Galaxy CD – http://www.galaxycd.com -rwxrwxr-x 8 bin bin 60152 Mar 8 1988 ls -rwxr-sr-x 1 bin mail 63264 April 2 1988 mail -rwxrwxr-x 1 bin bin 15276 Mar 8 1988 mesg -rwxr-xr-x 1 root bin 13180 Mar 8 1988 mkdir … Trong ñoù: Coät 1 : loaïi file vaø quyeàn thaâm nhaäp (-rwxrwxr-x, rwxr-xr-x…) Daáu tröø ‘-‘ ôû ñaàu coù nghóa file laø file thöôøng (khoâng phaûi thö muïc). Daáu tröø ôû trong daõy bit coù nghóa laø khoâng coù quyeàn töông öùng bit ñoù. Ñeå tieát kieäm choã, ngöôøi ta ñaët bit s vaøo cuøng moät nôi vôùi bit x vaø kyù hieäu: - s neáu x toàn taïi - S neáu X khoâng toàn taïi. (bit s : set uid hoaëc set gid khi chaïy file) Coät 2 : soá lieân keát (link number) Coät 3 : teân ngöôøi sôû höõu file (owner) Coät 4 : teân nhoùm sôû höõu file (group) Coät 5 : kích thöôùc file. Coät 6,7,8 : ngaøy söûa ñoåi gaàn nhaát Coät 9 : teân file. Caùc file ñaëc bieät (Special files): $ll /dev crw------- 1 lp bin 8.97 May 6 1988 lp1 crw-rw-rw- 2 root sys 3,2 Apr 3 09:08 null brw-r----- 3 root sys 0,96 Apr 3 08:54 pd300 . . crw-rw-rw- 4 root sys 4,012 May 6 1988 rflop . . crw--w--w- 2 root other 1,17 Mar 2 07:57 tty11 Trong ñoù: Coät 1: Kyù töï ñaàu tieân laø c hoaëc b coù nghóa laø file ñöôïc ñoïc hoaëc ghi theo töøng kyù töï (c) hoaëc ghi theo töøng khoái (b). Coät 5: Bieåu dieãn majo vaø minor cuûa thieát bò (major: loaïi thieát bò, minor: ñòa chæ cuûa thieát bò) Caùc file thö muïc (directory files): $ll /users drwxr-xr-x 2 user1 stagiair 240 Mar 31 10:16 user1 15 Copyright(c) by Galaxy CD – http://www.galaxycd.com drwxr-xr-x 2 user2 stagiair 32 Mar 31 11:16 user1 drwxr-xr-x 2 user3 stagiair 24 Mar 31 10:16 user1 drwxr-xr-x 2 user4 stagiair 32 Mar 31 11:16 user1 trong ñoù: Coät 1: Kyù töï ñaàu tieân d coù nghóa laø file thö muïc. Coät 2: Soá caùc thö muïc con 3.3.3 Thay ñoåi quyeàn thaâm nhaäp file: Leänh chmod cho pheùp thay ñoåi quyeàn thaâm nhaäp caùc file vaø thö muïc. Coù theå chaïy leänh theo 2 caùch: - cho thoâng soá tuyeät ñoái: chmod mode teân_file trong ñoù thoâng soá mode laø moät soá cô soá 8 (octal) r w x r - x r - - 1 1 1 1 0 1 1 0 0 7 5 4 $chmod 754 teân_file - duøng caùc kyù hieäu töôïng tröng: chmod who [operation] [right] filename trong ñoù: who : u coù nghóa user g group o other a all operation: + theâm quyeàn - bôùt quyeàn = gaùn giaù trò khaùc right: r reading w writing x execution s ñaët suid hoaëc guid Thí duï: $chmod g-w, o = r toto 3.3.4 Ñaët quyeàn thaâm nhaäp ngaàm ñònh: Caùc quyeàn thaâm nhaäp ñöôïc gaùn baèng maët naï quyeàn thaâm nhaäp cuûa töøng ngöôøi söû duïng. Leänh umask cho pheùp ta ñaët maët naï naøy. Cuù phaùp cuûa leänh nhö sau: umask nnn trong ñoù: nnn laø soá buø 7 cuûa giaù trò caùc quyeàn thaâm nhaäp. Thí duï: $umask 177 16 Copyright(c) by Galaxy CD – http://www.galaxycd.com $> titi $ll titi -rw------- 1 user1 other 0 Mar 11 10:11 titi $umask 333 $>toto $ll toto -r--r--r-- 1 user1 other 0 Mar 11 20:11 toto 3.3.5 Thay ñoåi ngöôøi hoaëc nhoùm sôû höõu file: Leänh chown cho pheùp thay ñoåi ngöôøi sôû höõu. Leänh chgrp cho pheùp thay ñoåi nhoùm sôû höõu. $echo Hello >file1 $chmod 700 file1 $ls -l file1 -rwx------ 1 user1 stagiair 6 Apr 5 14:06 file1 $cat file1 Hello $chgrp animator file1 $ls -l file1 -rwx------ 1 user1 animator 6 Apr 5 14:06 file1 $chown user2 file1 $ls -l file1 -rwx------ 1 user2 animator 6 Apr 5 14:06 file1 $cat file1 cat: cannot open file1 Baøi taäp: 1. Haõy taïo chöông trình sau trong thö muïc tieáp nhaän: - chöông trình “hello”: $cat > hello print ”Hello” print “How are you ?” ^D - chöông trình reply: $cat > reply print “Hello” print “Fine. And you ?” ^D 2. Xem quyeàn thaâm nhaäp vaøo caùc file treân: ll -R 3. Chaïy 2 chöông trình treân. 17 Copyright(c) by Galaxy CD – http://www.galaxycd.com Ñaët quyeàn chaïy ñöôïc (executable) cho 2 files treân. Chaïy laïi 2 chöông trình treân. $hello $chmod +x hello $hello 4. Boû caùc quyeàn thaâm nhaäp tôùi hello vaø reply cuûa nhöõng ngöôøi cuøng nhoùm (group) vaø cuûa nhöõng ngöôøi khaùc (other) chmod go = teân file Coù theå duøng leänh chmod theo caùch khaùc ñöôïc khoâng ? Haõy thöû vôùi caû caùc file khaùc (g-rwx, o-rwx, 700 …) 5. Thay ñoåi quyeàn thaâm nhaäp sao cho nhöõng ngöôøi cuøng nhoùm coù khaû naêng ñoïc vaø chaïy caùc file hello vaø reply 6. Haõy thöû thay ñoåi ngöôøi hoaëc nhoùm sôû höõu cuûa moät file: chown userY file Khi ñoù file seõ thuoäc sôû höõu cuûa ngöôøi khaùc. Coù theå xoaù ñöôïc khoâng ? 7. Haõy laøm theo höôùng daãn sau: cat > rm echo Hello ^D ñeå taïo file rm, sau ñoù söûa quyeàn thaâm nhaäp ñeå file coù theå chaïy ñöôïc: chmod +x rm thöû chaïy file rm ñeå xoaù moät file naøo ñoù ñang toàn taïi: rm file Ñieàu gì seõ xaûy ra? KHOÂNG BAO GIÔØ ÑÖÔÏC ÑAËT TEÂN FILE TRUØNG VÔÙI TEÂN LEÄNH HEÄ THOÅNG. (CHUÙ YÙ: test cuõng laø moät leänh cuûa heä thoáng) 18 Copyright(c) by Galaxy CD – http://www.galaxycd.com Baøi 4: Sao cheùp, chuyeån, lieân keát vaø tìm kieám file. Noäi dung: caùc thao taùc, caùc leänh thöôøng duøng vôùi file 4.1 Sao cheùp file Leänh cp (copy) cho pheùp ta sao cheùp moät hoaëc nhieàu file: - sao cheùp moät file: $cp file_nguoàn file_ñích - sao cheùp nhieàu file vaøo moät thö muïc: $cp file1 file2… thö_muïc - sao taát caû caùc file vaøo moät thö muïc: $cp * thö_muïc Thí duï: $pwd /users/user2 $ls -l total 2 drwxrwxr-x 2 user2 stagiair 32 Apr 5 16:31 copie drwxrwxr-x 2 user2 stagiair 96 Apr 5 16:31 source $cd source $ls -l total 3 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1 -rw-rw-r-- 1 user2 stagiair 17 Apr 5 16:26 original2 -rw-rw-r-- 1 user2 stagiair 18 Apr 5 16:27 original3 $ls -l ../copie total 0 $cp original1 ../copie/original1.copie $ls -l ../copie total 1 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1.copie $cp * ../copie 19 Copyright(c) by Galaxy CD – http://www.galaxycd.com $cd ../copie $ls -l total 4 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1.copie -rw-rw-r-- 1 user2 stagiair 17 Apr 5 16:26 original2 -rw-rw-r-- 1 user2 stagiair 18 Apr 5 16:27 original3 4.2 Chuyeån vaø ñoåi teân file: Leänh mv cho pheùp chuyeån vaø ñoåi teân file: - chuyeån moät file: $mv file_nguoàn file_ñích - chuyeån nhieàu file: $mv file1 file2 … thö_muïc $mv * thö_muïc - chuyeån thö muïc: $mv thö_muïc1 thö_muïc2 (caùc thö muïc phaûi coù cuøng thö muïc con) Thí duï: $pwd /users/user2/source $ls -l total 3 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1 -rw-rw-r-- 1 user2 stagiair 17 Apr 5 16:26 original2 -rw-rw-r-- 1 user2 stagiair 18 Apr 5 16:27 original3 $mv original1 original1.bis $ls -l total 3 -rw-rw-r-- 1 user2 stagiair 16 Apr 5 16:25 original1.bis -rw-rw-r-- 1 user2 stagiair 17 Apr 5 16:26 original2 -rw-rw-r-- 1 user2 stagiair 18 Apr 5 16:27 original3 $cd .. 20
DMCA.com Protection Status Copyright by webtailieu.net