Giáo trình: Hệ thống mạng Linux (ThS. Nguyễn Tấn Khôi)
Các giới thiệu về hệ thống mạng trên môi trường mở Linux. Cách thiết lập và triển khai một hệ thống mạng trên môi trường Linux. Truy cập vào máy tính đã cài đặt hệ điều hành linux: Khởi động máy đã cài đặt linux, xuất hiện dấu nhắc khởi động hệ điều hành: Boot : linux
- 1-
TR NG I H C BÁCH KHOA À N NG
KHOA CÔNG NGH THÔNG TIN
Â
GIÁO TRÌNH MÔN H C
H TH NG M NG LINUX
Ths. NGUY N T N KHÔI
(L u hành n i b )
à N ng – 2004
- 2-
cl c
Bài 1 NG NH P H TH NG LINUX ..............................................4
1.1. Truy c p vào máy tính ã cài t h u hành Linux ................................4
1.2. S d ng Telnet truy c p vào máy Linux t xa.......................................4
1.3. Thoát kh i h th ng ..................................................................................4
Bài 2 D NG E-Mail 5
2.1. G i th b ng sendmail ..............................................................................5
2.2. Nh n th ...................................................................................................5
2.3. Các thao tác h tr ....................................................................................5
Bài 3 CÁC L NH TRÊN LINUX............................................................7
3.1. T ch c h th ng t p tin trên Linux...........................................................7
3.2. Các l nh thao tác trên h th ng t p tin.......................................................7
3.2.1. T o m i th m c ..............................................................................7
3.2.2. Thay i th m c hi n hành..............................................................8
3.2.3. Xem th m c làm vi c hi n hành......................................................8
3.2.4. Xem thông tin v t p tin và th m c .................................................8
3.2.5. Di chuy n m t hay nhi u t p tin .......................................................8
3.2.6. Sao chép t p tin ................................................................................9
3.2.7. T o liên k t v i t p tin ......................................................................9
3.2.8. Tìm ki m m t t p tin ........................................................................9
3.2.9. Xoá th m c r ng ...........................................................................10
3.2.10. Xóa các t p tin ho c th m c ..........................................................10
3.2.11. Xem h ng d n s d ng l nh .........................................................10
3.2.12. Hi n th n i c a các t p tin..............................................................10
3.2.13. N i các t p tin ................................................................................10
3.2.14. Xu t n i dung thông báo.................................................................11
3.2.15. Nén và gi i nén t p tin ....................................................................11
3.3. Các l nh h th ng ...................................................................................11
3.3.1. L nh at ...........................................................................................11
3.3.2. L nh hostname ...............................................................................11
3.3.3. L nh ps..........................................................................................11
3.3.4. L nh clear.......................................................................................12
3.3.5. L nh date........................................................................................12
3.3.6. L nh cal ..............................................................12
3.3.7. L nh mount ....................................................................................12
3.3.8. Ti n ích mc.....................................................................................12
3.3.9. Ti n ích máy tính bc .......................................................................13
Bài 4 QU N LÝ TÀI KHO N VÀ PHÂN QUY N S D NG..........14
4.1. Qu n lý tài kho n c a h th ng ...............................................................14
4.1.1. Tài kho n ng i dùng.....................................................................14
4.1.2. Tài kho n nhóm ng i dùng ...........................................................14
4.2. Phân quy n ng i dùng trên h th ng t p tin...........................................14
4.2.1. Các quy n truy xu t trên t p tin ......................................................14
4.2.2. L nh chmod....................................................................................15
4.2.3. Thay i ng i ho c nhóm s h u t p tin .......................................15
Bài 5 D NG TRÌNH SO N TH O VI ..........................................18
- 3-
5.1. Gi i thi u................................................................................................18
5.2. Kh i ng vi...........................................................................................18
5.3. So n th o v n b n ...................................................................................18
5.4. Thoát kh i vi...........................................................................................19
5.4.1. Dùng vi v i danh sách các l nh ã ch y c a Shell...........................19
Bài 6 P TRÌNH SHELL 22
6.1. Ch ng trình tính t ng 1-> n...................................................................22
6.2. Ch ng trình tính giai th a c a m t s ....................................................22
6.3. Ch ng trình m s dòng c a m t t p tin ..............................................22
6.4. Ch ng trình m s t c a m t t p tin...................................................23
6.5. Ch ng trình tìm dòng có dài l n nh t trong m t t p tin.....................23
6.6. Ch ng trình tìm m t xâu trong m t t p tin ............................................24
Bài 7 p trình C & C++ 25
Bài 8 QU N LÝ TI N TRÌNH 27
8.1. Gi i thi u................................................................................................27
8.1.1. T o m t ti n trình - l nh fork ..........................................................27
8.1.2. D ng m t ti n trình ........................................................................27
8.1.3. Giao ti p gi a các ti n trình ............................................................28
8.1.4. Liên l c gi a hai ti n trình ..............................................................29
8.2. L p trình a ti n trình..............................................................................30
8.2.1. ng d n liên l c...............................................................................30
8.2.2. Thao tác v i " ng d n liên l c" .......................................................31
8.2.3. Liên l c gi a ti n trình cha và ti n trình con ...................................31
Bài 9 p trình m ng TCP/IP 32
9.1. L p trình client /server theo giao th c TCP/IP.........................................32
9.2. L p trình client /server theo giao th c UDP/IP ........................................37
Bài 10 DÞch vô FTP 40
Bài 11 CÁC T P TIN C U HÌNH M NG ............................................42
Bài 12 U HÌNH D CH V DNS .........................................................44
12.1. Các t p tin c u hình d ch v DNS ..........................................44
12.1.1. T p tin /etc/host.conf ......................................................................44
12.1.2. T p tin /etc/resolv.conf ...................................................................44
12.1.3. T p tin /etc/named.conf .................................................................44
12.1.4. T p tin /var/named/dng.vn.zone......................................................44
12.1.5. T p tin /var/named/edu.vn.zone ......................................................45
12.1.6. T p tin /var/named/0.0.127.in-addr.arpa.zone .................................45
12.1.7. T p tin /var/named/localhost.zone..................................................45
12.1.8. L nh kh i ng d ch v DNS .........................................................45
12.2. Các l nh và ti n ích h tr .........................................................46
12.2.1. L nh nslookup ................................................................................46
12.2.2. L nh host........................................................................................46
12.2.3. L nh dig .........................................................................................46
12.2.4. Ti n ích redhat-config-bind.............................................................46
- 4-
Bài 1 NG NH P H TH NG LINUX
1.1. Truy c p vào máy tính ã cài th u hành Linux
Kh i ng máy ã cài t Linux, xu t hi n d u nh c kh i ng h u hành:
Boot : linux
Khi H H Linux kh i ng, xu t hi n d u nh c truy c p h th ng :
login :
password :
Ng i dùng nh p vào username và password t ng ng, trên màn hình xu t hi n
u nh c c a h th ng nh sau :
[user12@linux user12]$
1.2. S d ng Telnet truy c p vào máy Linux t xa
Truy c p vào Server LINUX t máy Windows. Yêu c u máy Windows ã cài t
ng. ki m tra h th ng m ng, t d u nh c c a l nh trên Windows, gõ l nh :
C:\>ping 200.201.202.180
u trên màn hình xu t hi n : Reply from 200.201.202.180 ...
thì ngh a là máy tính có kh n ng truy c p vào Server LINUX, ng c l i, n u có
thông báo nào khác thông báo nh trên thì nên ki m tra l i c u hình m ng trên máy.
Ti p theo, ta gõ l nh :
telnet 200.201.202.180
Sau m t kho ng th i gian thi t l p liên k t, trên c a s telnet xu t hi n :
login :
password :
- Ng i dùng nh p vào username và password t ng ng.
Ví d : ng nh p vào v i tài kho n user12, trên màn hình xu t hi n nh sau :
login: user12
Password:
Last login: Wed Apr 7 08:35:50 from 131.16.16.21
[user12@linux user12]$
1.3. Thoát kh i h th ng
Thoát kh i phiên làm vi c : #exit ho c #logout
Ch m d t ho t ng c a h th ng : #shutdown h now
- 5-
Bài 2 D NG E-Mail
Th n t hi n nay ang tr thành ph ng ti n chính liên l c trên m ng. Th
n t d s d ng, ti n l i và nhanh chóng. Trong ph n này ta s d ng d ch v
sendmail c a h th ng Linux.
2.1. G i th b ng sendmail
Cú pháp : mail . . .
$mail user01 root
§ Ti p theo, trên màn hình xu t hi n
Subject :
§ n gõ vào ch b c th . Nh n Enter, b t u nh p vào n i dung th .
§ Sau khi nh p vào n i dung th , nh n CTRL-D g i th i.
§ Trên màn hình xu t hi n :
CC :
§ Nh p vào tên nh ng ng i cùng nh n th ho c nh n Enter b qua.
2.2. Nh n th
§ Khi có th n, trên màn hình xu t hi n thông báo :
You have mail
§ c th , gõ vào l nh : $mail
§ Trên màn hình s li t kê các b c th theo th t 1, 2, 3 ... c n i dung
th nào, gõ vào s th t c a b c th ó.
§ u & nh c r ng b n ang ch ng trình c th .
§ xóa th ang c, t i d u nh c b n gõ : &d
§ thoát ch ng trình c th , t i d u nh c b n gõ : &q
Ví d M t phiên g i mail c a user12 :
[user12@linux user12]$ mail user15 root
Subject: Chao ban
Thuc hanh LINUX
Cc:
[user12@linux user12]$
2.3. Các thao tác h tr
- h y b th tr c khi g i, b n nh n CTRL-C hai l n.
- c n i dung m t t p tin trên th m c hi n hành vào mail : ~r filename
- 6-
- Thay i ch c a th : ~s
- Xem t t c các th l u trong h p th : $more mbox
Các l nh thao tác trên sendmail
t type messages
n goto and type next message
e edit messages
f give head lines of messages
d delete messages
s file append messages to file
u undelete messages
R reply to message senders
r reply to message senders and all recipients
pre make messages go back to /usr/spool/mail
p print message
m mail to specific users
q quit, saving unresolved messages in mbox
x quit, do not remove system mailbox
h print out active message headers
! shell escape
cd [directory] chdir to directory or home if none given
- 7-
Bài 3 CÁC L NH TRÊN LINUX
3.1. T ch c h th ng t p tin trên Linux
/etc u hình h th ng c c b theo máy
/usr/bin Ch a h u h t các l nh ng i dùng.
/dev Các t p tin thi t b .
/usr/man Ch a các tài li u tr c tuy n.
/usr/include Ch a các t p tin include chu n c a C.
/var/log Các t p tin l u gi thông tin làm vi c hi n hành c a ng i dùng.
/home Ch a các th m c con c a các user.
/usr/lib Ch a các t p tin th vi n c a các ch ng trình ng i dùng.
Khi truy c p vào h th ng, th m c làm vi c c a ng i dùng c xem nh là th
c ch . Ví d : Th m c ch c a user01 s là /home/user01
u ng d n b t u b ng d u “/”, h th ng xem ó nh là m t tên ng d n
y b t u t th m c g c.
3.2. Các l nh thao tác trên h th ng t p tin
Các tham s luôn b t u b i d u “-“, và trong h u h t các tr ng h p nhi u tham
m t ch cái có th k t h p dùng m t d u “-“.
Ví d : Thay vì dùng l nh ls -l -F, ta có th dùng l nh t ng ng ls -lF.
Kí t Ch c n ng
*?[ ] Kí t i di n hay theo m u
& Ch y ng d ng ch n n (background), tr l i d u nh c h th ng cho
các tác v khác .
; u phân cách nhi u l nh trên m t dòng l nh.
\ t tác d ng c a nh ng kí t c bi t nh *, ?, [, ], &, ;, >, nh h ng d li u xu t ra file.
< nh h ng d li u nh p t file.
>> nh h ng d li u xu t ra cu i file n u file ã t n t i.
| nh h ng d li u xu t là d li u nh p cho l nh ti p theo.
$ d ng bi n môi tr ng.
3.2.1. T o m i th m c
Cú pháp : mkdir ...
. . . là tên các th m c c n t o.
[user01@linux user01]$ mkdir baitap
- 8-
[user01@linux user01]$ mkdir document
[user01@linux user01]$ mkdir baitap\ltc
[user01@linux user01]$ ls
[user01@linux user01]$ mkdir baitap/ltc
[user01@linux user01]$ mkdir baitap/perl
3.2.2. Thay i th m c hi n hành
Cú pháp : cd
là th m c mu n chuy n n.
. : yêu c u chuy n n th m c hi n hành.
.. : chuy n n th m c cha.
[user01@linux user01]$ cd baitap
[user01@linux user01]$ cd /home
[user01@linux user01]$ cd
3.2.3. Xem th m c làm vi c hi n hành
Cú pháp : pwd
[user12@linux user12]$ pwd
/home/user12
[user12@linux user12]$
3.2.4. Xem thông tin v t p tin và th m c
Cú pháp : ls ...
. . . là danh sách tên t p tin hay th m c.
:
-F : dùng hi n th m t vài thông tin v ki u c a t p tin
-l : (long) li t kê kích th c t p tin, ng i t o ra, các quy n ng i s d ng.
[user12@linux user12]$ ls -lF
total 75
drwxrwxr-x 2 user12 user12 1024 Apr 7 09:41 baitap/
drwxrwxr-x 2 user12 user12 1024 Apr 7 09:41 doc/
-rwxrwxr-x 1 user12 user12 71 Mar 31 10:39 hello*
-rw-rw-r-- 1 user12 user12 126 Apr 7 09:26 baitho.txt
-rw-rw-r-- 1 user12 user12 70 Apr 7 08:26 hello.c
[user12@linux user12]$
ls lF
ls *a* : hi n th t t c t p tin hay th m c con có kí t a
ls F*E : hi n th danh sách b t u b ng F và k t thúc b ng E
3.2.5. Di chuy n m t hay nhi u t p tin
Cú pháp : mv ...
- 9-
. . . là danh sách tên t p tin c n di chuy n
là t p tin hay th m c ích.
nh mv có th dùng i tên t p tin.
• Chuy n nhi u t p tin
$ mv * directory
• Di chuy n th m c
[user01@linux user01]$ mkdir ctrinh
[user01@linux user01]$ ls lF
[user01@linux user01]$ mv ctrinh baitap
Di chuy n th m c /home/user01/ctrinh vào th m c /home/user01/baitap
3.2.6. Sao chép t p tin
Cú pháp : cp
[user01@linux user01]$ cd baitap
[user01@linux baitap]$ vi tho.txt
[user01@linux baitap]$ mv tho.txt baitho.doc
[user01@linux baitap]$ ls
baitho.doc ctrinh hello.c ltc perl
[user01@linux baitap]$ cp baitho.doc ~/document
• Sao chép t t c các t p tin vào m t danh m c
$ cp * directory
3.2.7. T o liên k t v i t p tin
o liên k t v i t p tin là t o thêm cho t p tin tên m i và ng d n t ng ng.
Cú pháp : ln
ls -l : xem s liên k t c a t p tin.
Mu n xóa m t t p tin ta ph i xoá t t c các liên k t c a nó.
[user01@linux user01]$ pwd
[user01@linux user01]$ ls -l
[user01@linux user01]$ ls -l baitap
[user01@linux user01]$ ln baitap/file1 file.link
[user01@linux user01]$ ls -l baitap
[user01@linux user01]$ ls -l file.link
3.2.8. Tìm ki m m t t p tin
nh find cho phép tìm ki m m t hay nhi u t p tin trong m t cây danh m c.
• Tìm theo tên: find -name
• Tìm theo s i-node c a t p tin: find -inum
• Tìm theo tên ng is h u: find -user
- 10-
tránh các thông báo l i a ra màn hình, ta có th i h ng u ra l i
chu n (standard error) t i m t t p tin r ng (/dev/null ):
$ find / -name filename - print 2>/dev/null
Ví d :
$ pwd
/home/user01
$ find / -name ttyc2d1 - print 2>/dev/null
/dev/ttyc2d1
$ ls -i /unix
2810 - r- xr- - r- - 2 bin bin 508516 Mar 10 1989 /unix
$find / -inum 2810 - print 2>/dev/null
3.2.9. Xoá th m c r ng
Cú pháp : rmdir ...
... là tên nh ng th m c c n xóa.
rmdir /home/baitap xóa th m c /home/baitap
3.2.10. Xóa các t p tin ho c th m c
Cú pháp : rm ...
3.2.11. Xem h ng d n s d ng l nh
Cú pháp : man
ho?c --help
/?
Trong ó là tên c a m t c n xem h ng d n.
[user12@linux user12]$ man ls
[user12@linux user12]$ cp --help
[user12@linux user12]$ cp --help >cp.txt
3.2.12. Hi n th n i c a các t p tin
Cú pháp : more ...
... là nh ng t p tin c n hi n th .
[user12@linux user12]$more baitho.txt // hi n th t p tin baitho.txt
[user12@linux user12]$more mbox // Xem t t c th l u trong h p th
3.2.13. N i các t p tin
Cú pháp : cat ... [>filename]
nh dùng hi n th toàn b n i dung c a nhi u t p tin cùng m t lúc.
... là nh ng t p tin c n hi n th n i dung.
Ví d :
- 11-
Hi n th n i dung hai t p tin baitho.txt và vanban.doc
$cat baitho.txt vanban.doc
t n i n i dung hai t p tin baitho.txt và vanban.doc vào t p tin thop.doc
$cat baitho.txt vanban.doc >thop.doc
3.2.14. Xu t n i dung thông báo
Cú pháp : echo ...
Trong ó ... là các i s dòng l nh.
[user12@linux user12]$ echo Chao cac ban
Chao cac ban sinh vien
[user12@linux user12]$echo * → Hi n th n i dung th m c
3.2.15. Nén và gi i nén t p tin
Cú pháp : gzip
Nén m t t p tin. Tên t p tin nén gi ng nh tên ban u, kèm theo uôi .gz
[user12@linux user12]$ gzip vanban.txt -> vanban.txt.gz
Cú pháp : gunzip
gzip -d
nh dùng gi i nén t p tin.
[user12@linux user12]$gunzip vanban.txt.gz
3.3. Các l nh h th ng
3.3.1. L nh at
Th c hi n l nh theo th i gian nh tr c
[user12@linux user12]$ at 8:15am Feb 27
echo Happy birthday | mail emily
[user12@linux user12]$atrm jobnumber xóa l nh trong hàng i
[user12@linux user12]$at -l hi n th danh sách các l nh trong hàng i
3.3.2. L nh hostname
Hi n th tên máy tính ang làm vi c.
th ng l u thông tin v tên máy trong t p tin /etc/hosts
[user12@linux user12]$ hostname
linux.edu.vn
3.3.3. L nh ps
Xem danh sách các ti n trình ang ho t ng trên h th ng.
[user12@linux user12]$ ps
PID TTY STAT TIME COMMAND
- 12-
4516 p4 S 0:00 -bash
4703 p4 S 0:00 /usr/bin/mc -P
4705 r0 S 0:00 bash -rcfile .bashrc
4727 r0 R 0:00 ps
[user12@linux user12]$ kill 4703 //H y b ti n trình mc có s hi u 4703
Terminated
3.3.4. nh clear
Xóa màn hình.
3.3.5. L nh date
Hi n th ngày tháng hi n hành c a h th ng
3.3.6. L nh cal
Xem l ch t ng ng v i tháng và n m ch nh.
3.3.7. L nh mount
Cú pháp : mount [-t ]
- L nh dùng k tn ih u hành v i các thi t b khác trên h th ng.
- L nh này ch th c hi n c khi b n vào h th ng v i t cách là root.
type : Ki u t p tin
device : T p tin u khi n thi t b k t n i.
mountpoint : V trí th m c trên h u hành dùng k t n i v i file thi t b .
• ok tn iv i a logic 1 : #mount /dev/hda1 /mnt/hdisk
• ok tn iv i a m m MS-DOS: #mount /dev/fd0 /mnt/floppy
• ok tn iv i a m m LINUX : #mount -t ext2 /dev/fd0 /mnt/floppy
• ok tn iv i a CDROM : #mount /dev/hda1 /mnt/cdrom
• yk tn iv i am m : #umount /dev/fd0
Chú ý : th ng Linux xem các thi t b k t n i nh các m t t p tin c bi t.
3.3.8. Ti n ích mc
Ti n ích mc trên Linux có giao di n làm vi c gi ng nh trình NC Command c a
MS - DOS. kh i ng mc gõ l nh nh sau :
#mc
- 13-
3.3.9. Ti n ích máy tính bc
Ch ng trình bc cung c p m t b máy tính tay giúp ng i dùng có th tính toán
các bi u th c, các hàm toán h c ...
3.3.9.1. Kh i ng bc
d u nh c h th ng, b n gõ :
#bc ↵
xu t hi n d u nh c, b n có th nh p vào các bi u th c tính toán :
(4+5)*(12-10) ↵
18
1000000000000*1000000000000↵
1000000000000000000000000
n nh s ch s th p phân, dùng l nh scale = n :
scale=3↵
1/6↵
.166
p trình trong bc.
define giaithua(n)
{
if (n Xem các h ng d n s d ng bc.
- 14-
Bài 4 QU N LÝ TÀI KHO N VÀ PHÂN QUY N S D NG
Mô t c ch b o v t p tin c a LINUX: ng i s d ng, nhóm ng i s d ng, các
quy n truy xu t trên t p tin.
4.1. Qu n lý tài kho n c a h th ng
4.1.1. Tài kho n ng i dùng
i ng i s d ng trên h th ng c mô t qua các thông tin sau:
- username : tên ng i s d ng
- password : m t kh u (n u có)
- uid : s nh n d ng (user identify number )
- gid : s c a nhóm (group identify number )
- comment : chú thích
- Th m c ch c a tài kho n (home directory )
- Shell ng nh p (ch ng trình ch y lúc b t u phiên làm vi c)
Các thông tin trên c ch a trong t p tin /etc/passwd
4.1.2. Tài kho n nhóm ng i dùng
t nhóm ng i s d ng c mô t b ng các thông tin sau:
- groupname : tên c a nhóm
- gid : s c a nhóm (gid: group identify number)
- danh sách các tài kho n thu c nhóm
Các thông tin trên c ch a trong t p tin /etc/group
4.2. Phân quy n ng i dùng trên h th ng t p tin
4.2.1. Các quy n truy xu t trên t p tin
Khi t p tin c t o l p, các thông tin sau ây ng th i c ghi l i:
- uid c a ng i t o t p tin
- gid c a ng i t o t p tin
- Các quy n thâm nh p t p tin khác . . .
- T p tin c b o v b i m t t p h p các bit nh ngh a quy n thâm nh p
rwx rwx rwx
suid sgid
owner group other
Trong ó:
- 15-
r Quy n c n i dung t p tin, th m c
w Quy n t o và xoá n i dung t p tin, t o và xóa t p tin trong th m c
x Quy n th c thi t p tin. Quy n truy xu t qua l i trên th m c.
• Các quy n v i th m c ch có hi u l c m t m c nh t nh, th m c con có th
c b o v trong khi th m c cha thì không.
• nh ls -lF li t kê danh sách các t p tin và các thu c tính c a chúng trong m t
danh m c, qua ó ta có th xem các thông tin nh lo i t p tin, quy n truy nh p,
ng i s h u và kích th c c a t p tin. . .
4.2.2. L nh chmod
nh chmod cho phép thay i quy n trên t p tin c a ng i dùng. Ch nh ng
ng i s h u t p tin này m i có th thay i c m c c quy n i v i t p tin này.
Có th th c hi n l nh theo hai cách:
4.2.2.1. Dùng các ký hi u t ng tr ng:
Cú pháp : chmod {a,u,g,o}{+,-,=}{r,w,x}
Trong ó : u (user), g (group), o (other), a (all)
Các toán t : + thêm quy n. - b t quy n. = gán giá tr khác
4.2.2.2. Dùng thông s tuy t i
Cú pháp : chmod
trong ó mode là m t s c s 8 ( octal )
rwx r -x r - -
111 101 100
7 5 4
$chmod 754 filename
$chmod g-w,o+r baitho.doc
$chmod a+r baocao.txt
$chmod +r baocao.txt
$chmod og-x baocao.txt không cho th c thi
$chmod u+rwx baocao.txt cho phép ng i s h u có th c, vi t và th c thi.
$chmod o-rwx baocao.txt không cho truy nh p t p tin.
$chmod 777 * t các quy n cho t t c các i t ng s d ng .
trên toàn b t p tin trong th m c hi n hành
4.2.3. Thay i ng i ho c nhóm s h u t p tin
- L nh chown cho phép thay i ng i s h u, nhóm s h u trên t p tin.
- L nh chgrp cho phép thay i nhóm s h u trên t p tin.
- 16-
TH C HÀNH
1. Thay i quy n trên t p tin
#cat bai1.sh
#ls -lF bai1.sh
#chmod u+x,g+wx bai1.sh
#ls -lF bai1.sh
#chmod 644 bai1.sh
#ls -lF bai1.sh
#chmod 764 bai1.sh
#ls -lF bai1.sh
#chmod 777 bai1.sh
#ls -lF bai1.sh
2. T o tài kho n h th ng
o nhóm cntt2004
#groupadd cntt2004
Xem t p tin /etc/group
#cat /etc/group
o m t account user01 m i thu c nhóm cntt2004
#useradd - g cntt2004 -c Tai khoan user01 user01
#passwd user01
Xem t p tin /etc/passwd, /etc/shadow
#cat /etc/passwd
#cat /etc/shadow
Th ng nh p vào h th ng v i tài kho n là user01
o m t account user02
#useradd user02
#passwd user02
a user02 vào nhóm cntt2004
#usermod -g cntt2004 user02
Th ng nh p vào h th ng v i tài kho n là user02
Xóa user02
#userdel user02
#cat /etc/passwd
3. Thay i quy n s d ng cho các it ng trên t p tin
a. T o m t t p tin m i /home/baocao.txt
b. i ch s h u c a t p tin /home/baocao.txt là user01
- 17-
#chown user01 /home/baocao.txt
c. Phân quy n rwxr--r-- cho các it ng trên t p tin /home/baocao.txt.
#chmod 744 /home/baocao.txt
d. ng nh p vào h th ng v i tài kho n user01. Th thay i n i dung t p tin
/home/baocao.txt.
e. ng nh p vào h th ng v i tài kho n khác. Th thay i n i dung t p tin
/home/baocao.txt. Nh n xét ?
4. Phân quy n s d ng cho các it ng
a. T o nhóm ng i s d ng có tên cntt2004.
b. B sung các user01, user02 vào nhóm cntt2004.
#usermod -g cntt2004 user01
#usermod -g cntt2004 user02
c. T o th m c /home/common
#mkdir /home/common
d. i nhóm s h u c a th m c /home/common là nhóm cntt2004.
#chown :cntt2004 /home/common
ho c
#chgrp cntt2004 /home/common
e. Phân quy n rwx cho it ng nhóm cntt2004 trên th m c /home/common
#chmod g+rwx /home/common
#ls -lF /home
f. ng nh p vào h th ng v i tài kho n user01. T o th m c m i trong
/home/common.
g. ng nh p vào h th ng v i m t tài kho n khác không thu c nhóm cntt2004.
Th t o th m c m i trong /home/common. Nh n xét ?.
- 18-
Bài 5 D NG TRÌNH SO N TH O VI
Gi i thi u trình so n th o vi, các thao tác so n th o t p tin b ng vi.
5.1. Gi i thi u
vi là ch ng trình so n th o các t p tin v n b n trên các h th ng Unix :
- Màn hình c xem nh m t c a s m trên t p tin.
- Có kh n ng di chuy n con tr n b t k v trí nào trên màn hình.
- C a s có th di chuy n t do trên t p tin.
Ph n l n các phím dùng c l p ho c k t h p v i phím Shift và Ctrl t o ra các
nh c a vi. Các l nh c a vi có th c g i khi có d u " : " dòng cu i màn hình.
Có 2 ch (mode) trong khi s d ng vi: Append mode và Command mode
NhÊn phÝm lÖnh
ChÕ ®é lÖnh ChÕ ®é so¹n th¶o
(Command mode) (Editor mode)
NhÊn ESC + PhÝm lÖnh
5.2. Kh i ng vi
Ta có th g i vi v i tên t p tin v n b n : $ vi filename
Ví d : vi bai1.txt
Màn hình so n th o hi n ra nh sau ( ây ang dùng Telnet n i vào UNIX) :
- D u ngã (~) tr c m i dòng cho bi t dòng ó còn r ng (tr ng)
- Dòng d i cùng cho bi t tên file ang m , tr ng thái c a file: n u là file m i thì
"[new file]", n u m file c thì s hi n th s dòng, s ký t trong file (hình
i).
5.3. So n th o v n b n
- Chèn ký t trên m t dòng a < text > < ESC >
- S d ng các phím so n th o v n b n.
- 19-
- Nh n phím ESC k t thúc ch chèn v n b n.
5.4. Thoát kh i vi
Mu n ra kh i vi và ghi l i n i dung t p tin, b n nh n phím ESC và dùng m t trong
các l nh nh sau:
:ZZ ho c :wq ho c :x
Thoát kh i vi và không ghi l i các thay i tr c ó
: q!
Khi trong ch so n th o c a vi, mu n ch y ch ng trình shell, dùng l nh :
: !
ho c g i shell, sau ó ch y các l nh c a ng i dùng, khi k t thúc b m Ctrl-D tr
i vi:
: ! sh
$
$ Ctrl-D
5.4.1. Dùng vi v i danh sách các l nh ã ch y c a Shell
nh fc (fix command) cho phép ta so n th o b ng vi và ch y l i các l nh ã ch y
a Shell. Cách dùng nh sau:
- So n th o và cho ch y l nh cu i cùng: $fc
- So n th o m t nhóm l nh và cho ch y: $ fc m n
- Xem danh sách 16 l nh cu i cùng:
$ fc -l ho c history
$ fc -lr (danh sách theo th t ng c l i)
- T o m t t p tin ch a m t s l nh ã ch y (c a history):
$fc -nl n1 n2 > cmd
cmd là m t t p tin ch a các l nh c a history t l nh n1 n l nh n2
ng tóm t t các l nh c a vi
Inserts text before cursor
Enters text at start of line
Inserts text after cursor
Enters text at end of line
Opens a new line below cursor
Opens a new line above cursor
Deletes word
Deletes entire line
- 20-
Deletes to end of line
Deletes character under cursor
Changes word
Changes line
Changes to end of line
Replaces character under cursor
Joins lines together
Moves to end of word
Moves to next word
Moves to end of line
Moves one space right
Moves one line up
Moves one line down
Moves one space left
Moves cursor to first occurrence of x
Moves cursor to last occurrence of x
Repeats the last f/F command
number Moves cursor to specified column number
Moves cursor to top line on-screen (not top line of file)
Moves cursor to bottom line on-screen
Moves cursor to middle line on-screen
Moves cursor to bottom line of file
number Moves cursor to specified line number
(same as:number)
Moves to beginning of line
x Marks current position with letter x
Scrolls for ward one half of the screen
Scrolls backward one half of the screen
Scrolls for ward one screen
Scrolls backward one screen
Redraws the screen
Shows the filename, current line, and column number
Redraws the screen with current line in middle of screen
Yanks entire line into buffer
Puts contents of buffer below cursor
Puts contents of buffer above cursor
x“[number]” Yanks the indicated number of lines into the buffer named x
(x can be any single character a–z)