Đồ án tốt nghiệp: Hướng dẫn cơ bản Linux
Năm 1964, Bell Labs, MIT & General Electric phát triển một hệ điều hnh gọi l MULTICS(Multiplexed Information and Computing System). hướng dẫn cài đặt Server VMware ESXi4 Máy ảo phần mềm tạo ra một môi trường giữa hệ nền máy tính và người dùng trong. Sau đây chúng tôi xin hướng dẫn các bạn cách cài đặt máy chủ ảo VMware...
Đồ án
Hướng dẫn cơ bản Linux
§å ¸n tèt nghiÖp
Môc lôc
Ch−¬ng I: Giíi thiÖu vÒ Linux ...........................................................................4
1.1S¬ l−îc vÒ Linux................................................................................................4
1.1.1 Giíi thiÖu vÒ hÖ ®iÒu h nh Unix............................................................4
1.1.2 Giíi thiÖu vÒ hÖ ®iÒu h nh Linux..........................................................5
1.2 TÝnh n¨ng cña Linux. .......................................................................................7
1.3 VÊn ®Ò b¶n quyÒn.............................................................................................8
1.4 So s¸nh Linux v c¸c hÖ ®iÒu h nh kh¸c..........................................................9
1.4.1 So s¸nh Linux víi Windows 95, Windows 98. .....................................9
1.4.2 So s¸nh Linux víi Windows NT. ........................................................10
1.5 Yªu cÇu vÒ phÇn cøng. ...................................................................................11
Ch−¬ng II : c¸c lÖnh Linux c¬ b¶n ...................................................................14
2.1 C¸c ph−¬ng thøc ho¹t ®éng cña dßng lÖnh ....................................................14
2.2 Trang Man ....................................................................................................15
2.3 C¸c quy −íc. ...................................................................................................16
2.4 C¸c lÖnh c¬ b¶n trong Linux. .........................................................................16
2.4.1 Th− môc v lÖnh vÒ th− môc. ..............................................................16
2.4.1.1 Mét sè th− môc ®Æc biÖt..............................................................16
2.4.1.2 C¸c lÖnh chÝnh liªn quan ®Õn th− môc. .......................................18
2.4.2 TËp tin v c¸c lÖnh vÒ tËp tin...............................................................20
2.4.2.1 C¸c kiÓu tËp tin trong Linux........................................................20
2.4.2.2 C¸c lÖnh vÒ tËp tin. ......................................................................21
2.4.3 LÖnh vÒ Destop....................................................................................24
2.4.4 LÖnh vÒ tr×nh b¸o m n h×nh. ...............................................................25
2.4.5 C¸c lÖnh liªn quan ®Õn t i kho¶n ng−êi dïng. ....................................25
2.4.5.1 C¸c lÖnh liªn quan ®Õn ng−êi dïng..............................................25
2.4.5.2 Thay ®æi thuéc tÝnh ng−êi dïng. ..................................................26
2.4.5.3 Xo¸ bá mét ng−êi dïng...............................................................27
2.4.6 C¸c lÖnh liªn quan ®Õn nhãm ng−êi dïng...........................................27
2.4.7 C¸c lÖnh kh¸c cã liªn quan ®Õn ng−êi dïng. ......................................28
2.4.8 C¸c lÖnh liªn quan ®Õn qu¶n lý thiÕt bÞ...............................................30
2.4.9 C¸c lÖnh vÒ ph©n quyÒn.......................................................................32
2.5 Shell. ...............................................................................................................33
Ch−¬ng III: samba............................................................................................37
3.1 Giíi thiÖu tæng quan.......................................................................................37
3.2 C i ®Æt.............................................................................................................37
3.3 cÊu h×nh ..........................................................................................................38
3.3.1 cÊu h×nh global setting: .......................................................................39
1
§å ¸n tèt nghiÖp
3.3.2 cÊu h×nh Sharing Setting......................................................................42
3.4 Chia sÎ file......................................................................................................43
3.5 KiÓm tra cÊu h×nh võa thiÕt lËp ......................................................................44
3.5.1 KiÓm tra b»ng c«ng cô Testparm ........................................................44
3.5.2 KiÓm tra b»ng c«ng cô smbstatus .......................................................45
3.6 Ch¹y samba server..........................................................................................46
3.6.1 Sö dông c©u lÖnh smbclient.................................................................47
3.6.2 Truy cËp tõ m¸y Windows ..................................................................49
Ch−¬ng IV: Squid proxy server........................................................................50
4.1. TÇm quan träng v ph−¬ng thøc ho¹t ®éng cña Squid cache........................50
4.2. C i ®Æt............................................................................................................52
4.3. TËp tin cÊu h×nh /etc/squid/squid.conf ..........................................................52
4.4. CÊu h×nh c¸c tïy chän c¬ b¶n .......................................................................53
4.5. Access control list .........................................................................................54
4.6. Khëi ®éng squid ............................................................................................56
Ch−¬ng V: CÊu h×nh WEB SERVER...............................................................58
5.1 C i ®Æt apache, php, mysql.............................................................................58
5.1.1 Download v c i ®Æt Apache...............................................................58
5.1.2 Download v c i ®Æt php .....................................................................59
5.1.3 Download v c i ®Æt Mysql.................................................................60
5.2 CÊu h×nh Apache c¬ b¶n.................................................................................63
5.3 CÊu h×nh b¶o mËt apache................................................................................67
5.3.1 Giíi h¹n ®Þa chØ ip. ..............................................................................67
5.3.2 Giíi h¹n truy cËp theo t i kho¶n sö dông............................................69
Ch−¬ng VI: B¶o mËt víi Firewall, ip tables...................................................78
6.1 FireWall..........................................................................................................78
6.1.1 §Þnh nghÜa...........................................................................................78
6.1.2 Chøc n¨ng............................................................................................78
6.1.3 CÊu tróc cña FireWall ........................................................................78
6.1.4 C¸c th nh phÇn cña FireWall ..............................................................79
6.1.4.1 Bé läc packet (Packet filtering router) .........................................79
6.1.4.2 Cæng øng dông (application-level getway) .................................80
6.1.4.3 Cæng m¹ch (circuit-Level Gateway) ...........................................81
6.1.5 Nh÷ng h¹n chÕ cña firewall.................................................................82
6.2 IpTables ..........................................................................................................82
6.2.1 Tæng quan vÒ iptables..........................................................................82
6.2.2 B¶ng filter...........................................................................................83
6.2.3 B¶ng nat ...........................................................................................84
6.2.4 B¶ng mangle........................................................................................85
2
§å ¸n tèt nghiÖp
6.2.5 CÊu h×nh iptables .................................................................................87
6.2.5.1 Có ph¸p c¬ b¶n cña iptables........................................................87
6.2.5.2 C¸c lÖnh cña iptables....................................................................88
6.2.5.3 C¸c ®iÒu kiÖn trong luËt ...............................................................90
6.2.5.3.1 Nhãm c¸c ®iÒu kiÖn chung....................................................90
6.2.5.3.2 Nhãm c¸c ®iÒu kiÖn Èn..........................................................92
6.2.5.3.3 Nhãm c¸c ®iÒu hiÖn hiÖn.......................................................93
6.2.5.4 C¸c h nh ®éng trong luËt .................................................................95
6.2.5.4.1 user-defined-chain................................................................95
6.2.5.4.2 DROP ....................................................................................96
6.2.5.4.3 REJECT.................................................................................96
6.2.5.4.4 RETURN...............................................................................96
6.2.5.4.5 SNAT.....................................................................................96
6.2.5.4.6 MASQUERADE ...................................................................97
6.2.5.4.7 DNAT....................................................................................98
6.2.5.5 C¸c vÝ dô.......................................................................................99
T i liÖu tham kh¶o..........................................................................................103
3
§å ¸n tèt nghiÖp
Ch−¬ng I: Giíi thiÖu vÒ Linux
1.1S¬ l−îc vÒ Linux.
1.1.1 Giíi thiÖu vÒ hÖ ®iÒu h nh Unix.
N¨m 1964, Bell Labs, MIT & General Electric ph¸t triÓn mét hÖ ®iÒu h nh
gäi l MULTICS(Multiplexed Information and Computing System). Sau ®ã n¨m
1969, Ken Thompson (mét lËp tr×nh hÖ thèng cña Bell labs) nghÜ r»ng «ng ta cã
thÓ l m mét hÖ ®iÒu h nh tèt h¬n. V× vËy, «ng ta ®· viÕt mét hÖ ®iÒu h nh trªn hÖ
th«ng m¸y tÝnh PDP-7, v hÖ ®iÒu h nh n y ®−îc gäi l Unix. Môc tiªu khëi ®Çu
l cung cÊp mét m«i tr−êng m¸y tÝnh ho¸ ®Ó m« pháng trß ch¬i kh«ng gian.
Nh−ng cã mét vÊn ®Ò x¶y ra l phiªn b¶n Unix n y kh«ng thÓ ch¹y ®−îc trªn hÖ
thèng phÇn cøng kh¸c. Do ®ã ®Õn n¨m 1973 Ritchie v Thompson ®· viÕt l¹i hÖ
®iÒu h nh b»ng ng«n ng÷ C, kh¸c h¼n víi c¸c hÖ ®iÒu h nh truyÒn thèng ghi
b»ng ng«n ng÷ m¸y, do ®ã Unix rÊt dÔ c i ®Æt trªn c¸c hÖ m¸y kh¸c. N¨m 1974
hÖ ®iÒu h nh Unix ®· ®−îc c i ®Æt trªn c¸c m¸y DEC PDP-11 ë h¬n 100 tr−êng
®¹i häc. Môc tiªu chñ yÕu l cung cÊp m«i tr−êng cho c¸c lËp tr×nh viªn chuyªn
nghiÖp. V× thÕ, Unix ng y c ng th«ng dông v ng y c ng cã thªm nhiÒu ®Æc tÝnh
míi ®−îc bæ xung. Sau ®ã chÝnh phñ v qu©n ®éi Mü ®· sö dông Unix ®Ó nèi
m¹ng to n cÇu (Internet).
§Õn nay ®· cã h ng tr¨m ng n hÖ thèng Unix c i ®Æt trªn kh¾p thÕ giíi. HÇu
hÕt c¸c h·ng s¶n xuÊt m¸y ®Òu cã mét phiªn b¶n cho Unix. Tuy nhiªn hiÖn nay
®Ó chuÈn ho¸ hÖ ®iÒu h nh Unix, ng−êi ta quy −íc c¸c tËp lÖnh chuÈn v gäi l
Unix System V Release 4. Trªn m¸y PC hiÖn nay phæ biÕn hai hÖ ®iÒu h nh l
SCO Unix v SUN Solaris.
• C¸c ®Æc ®iÓm c¬ b¶n cña hÖ ®iÒu h nh Unix
4
§å ¸n tèt nghiÖp
- §a nhiÖm (Multitasking).
- NhiÒu ng−êi sö dông (Multiuser).
- B¶o mËt(security).
- §éc lËp phÇn cøng (multi platform).
- KÕt nèi më.
- Dïng chung thiÕt bÞ.
- Tæ chøc tËp tin ph©n cÊp.
• ¦u ®iÓm cña hÖ ®iÒu h nh Unix:
- HÖ thèng ®−îc viÕt trªn ng«n ng÷ C nªn dÔ ®äc, dÔ hiÓu, dÔ thay
®æi ®Ó c i ®Æt trªn lo¹i m¸y míi.
- Cã giao diÖn ng−êi dïng ®¬n gi¶n, cho phÐp x©y dùng c¸c ch−¬ng
tr×nh phøc t¹p tõ c¸c ch−¬ng tr×nh ®¬n gi¶n h¬n.
- §©y l hÖ ®a ng−êi dïng ®a tiÕn tr×nh , mçi ng−êi dïng cã thÓ
thùc hiÖn nhiÒu ch−¬ng tr×nh mçi ch−¬ng tr×nh cã thÓ cã nhiÒu tiÕn
tr×nh.
- Che ®i cÊu tróc m¸y ®èi víi ng−êi dïng, cã thÓ viÕt ch−¬ng tr×nh
ch¹y trªn c¸c ®iÒu kiÖn phÇn cøng kh¸c nhau.
- Sö dông hÖ th«ng file cã cÊu tróc.
1.1.2 Giíi thiÖu vÒ hÖ ®iÒu h nh Linux.
Linux l mét trong nh÷ng hÖ ®iÒu h nh phæ th«ng nhÊt
bëi sù ph©n phèi v c¬ së hç trî më réng cña nã. Ban ®Çu,
Linux ®−îc ph¸t triÓn d−íi d¹ng mét hÖ thèng ®a nhiÖm cho
m¸y tÝnh mini v m¸y chñ v o gi÷a thËp niªn 70. KÓ tõ ®ã ®Õn
nay Linux lín m¹nh v trë th nh mét trong nh÷ng hÖ ®iÒu
h nh ®−îc sö dông réng r·i nhÊt.
5
§å ¸n tèt nghiÖp
Linux l phiªn b¶n cña Unix ®−îc ph©n phèi miÔn phÝ v ban ®Çu do Linus
Torvalds thùc hiÖn v ph¸t triÓn. ¤ng b¾t ®Çu nghiªn cøu Linux v o n¨m 1991
khi cßn l sinh viªn tr−êng ®¹i häc Helsinki ë PhÇn Lan. Linux ®−îc x©y dùng v
ph¸t triÓn tõ hÖ ®iÒu h nh Minix (mét phiªn b¶n cña Unix). Lóc ®Çu, Linus tung
ra phiªn b¶n Linux ®Çu tiªn trªn Internet cho mäi ng−êi sö dông miÔn phÝ, ®iÒu
®ã v« t×nh dÊy lªn mét hiÖn t−îng ph¸t triÓn phÇn mÒm lín. Linux ®−îc x¸c lËp
v duy tr× bëi mét nhãm hîp t¸c gåm v i ng n nh ph¸t triÓn phÇn mÒm t×nh
nguyÖn cïng l m viÖc qua Internet. C¸c c«ng ty cung cÊp hç trî Linux ®Ó ph¸t
triÓn nã th nh lo¹i s¶n phÈm dÔ c i ®Æt víi môc ®Ých kinh doanh c¸c tr¹m l m
viÖc cã c i s½n phÇn mÒm Linux.
V o ng y 5 th¸ng 10 n¨m 1991, Linus ®· c«ng bè phiªn b¶n Linux chÝnh
thøc ®Çu tiªn, phiªn b¶n 0.02. B¾t nguån tõ hÖ ®iÒu h nh Minix cña Andrew
Tanenbaum, Linux ban ®Çu chØ l mét dù ¸n m trong ®ã Linux muèn x©y dùng
mét hÖ unix ®¬n gi¶n cã thÓ ch¹y trªn PC 386. Phiªn b¶n n y ®−îc x¸c ®Þnh nh−
mét hÖ thèng cña c¸c hacker. VÊn ®Ò chÝnh l ph¸t triÓn kernel chø kh«ng ph¶i
kh«ng ph¶i nh»m môc ®Ých hç trî ng−êi dïng hay ®Ó ph©n phèi. Nh−ng ®Õn nay
sù ho n thiÖn thùc sù trong thÕ giíi Linux ®· gi¶i quyÕt ®−îc vÊn ®Ò m«i tr−êng
ng−êi sö dông ®å ho¹, gãi s¶n phÈm dÔ d ng c i ®Æt v c¸c øng dông cao cÊp
nh−: tiÖn Ých ®å ho¹ v c¸c bé phiªn b¶n s¶n phÈm.
Tõ khi phiªn b¶n Linux ®Çu tiªn ra ®êi cho ®Õn nay th× ®· cã rÊt nhiÒu
phiªn b¶n Linux míi ra ®êi cïng víi nhiÒu tÝnh n¨ng míi ®−îc thªm v o nh»m
phôc vô, hç trî nh÷ng tiÖn Ých ng y c ng cao cña ng−êi dïng.
V× Linux ®−îc ph¸t triÓn tõ hÖ ®iÒu h nh Minix(mét phiªn b¶n cña Unix)
nªn Linux còng cã nh÷ng ®Æc tÝnh v −u ®iÓm cña hÖ ®iÒu h nh Unix:
- Linux còng ®−îc viÕt b»ng C.
- Linux còng l ®a ng−êi dïng, ®a nhiÖm, l hÖ ®iÒu h nh m¹ng.
6
§å ¸n tèt nghiÖp
- Linux cung cÊp m«i tr−êng ®Çy ®ñ cho lËp tr×nh v ph¸t triÓn.
- Linux ch¹y trªn nhiÒu hÖ thèng phÇn cøng kh¸c nhau:
Bé xö lý 86(Celeron/PII/PIII/PIV/Pentium/80386/80486).
M¸y Macintosh.
Bé xö lý Cyrix.
Bé xö lý AMD.
Bé xö lý Sun Microsystems Sparc processor.
Bé xö lý Alpha(Compaq).
1.2 TÝnh n¨ng cña Linux.
Linux l mét hÖ ®iÒu h nh ®a ng−êi sö dông: NghÜa l nhiÒu ng−êi cã thÓ sö
dông m¸y tÝnh cã c i Linux t¹i mét thêi ®iÓm.
Linux l mét hÖ ®iÒu h nh ®a nhiÖm: T¹i mét thêi ®iÓm mét ng−êi sö dông
cã thÓ thùc hiÖn ®ång thêi nhiÒu t¸c vô. Víi hÖ ®iÒu h nh ®¬n ch−¬ng nh− MS-
DOS mét lÖnh thùc hiÖn sÏ chiÕm to n bé thêi gian CPU xö lý, b¹n chØ cã thÓ
thùc hiÖn lÖnh kÕ tiÕp khi lÖnh tr−íc ®ã ®· thùc hiÖn xong. Cßn trong Linux, b¹n
cã thÓ thùc hiÖn cïng lóc nhiÒu lÖnh.
Linux gÇn nh− t−¬ng thÝch víi nhiÒu chuÈn Unix ë cÊp nguån bao gåm tÝnh
n¨ng BSD, IEEE POSIX.1 v System V. Linux ®−îc ph¸t triÓn v rÊt chó träng
tíi tÝnh kh¶ chuyÓn nguån. Do ®ã b¹n cã thÓ dïng chung nh−ng tÝnh n¨ng trong
hÖ Linux qua thi h nh Unix.
Linux cßn hç trî cho b n phÝm tïy biÕn hoÆc theo chuÈn quèc gia sö dông
tr×nh ®iÒu khiÓn b n phÝm kh¶ t¶i ®éng. Linux cßn hç trî c¸c console ¶o, cho
phÐp b¹n chuyÓn ®æi gi÷a nhiÒu phiªn b¶n ®¨ng nhËp tõ console hÖ thèng trong
chÕ ®é v¨n b¶n.
Linux cã thÓ tån t¹i trªn hÖ thèng cã hÖ ®iÒu h nh kh¸c nh− windows 95,
Windows 98, Windows NT, Windows XP, OS/2 hoÆc nh÷ng phiªn b¶n kh¸c cña
7
§å ¸n tèt nghiÖp
Unix. Bé n¹p khëi ®éng Linux cho phÐp b¹n lùa chän hÖ ®iÒu h nh ®Ó b¾t ®Çu
v o thêi ®IÓm khëi ®éng v Linux còng t−¬ng thÝch víi c¸c bé n¹p khëi ®éng
kh¸c.
Linux cã thÓ ch¹y trªn nhiÒu kiÕn tróc CPU bao gåm:
X86(Celeron/PII/PIII/PIV/Pentium/80386/80486), SPARC, Alpha, PowerPc,
MIPS v m68k.
Linux hç trî nhiÒu kiÓu file kh¸c nhau ®Ó l−u d÷ liÖu.
Hç trî m¹ng l mét trong nh÷ng søc m¹nh lín nhÊt cña Linux c¶ vÒ chøc
n¨ng lÉn tÝnh n¨ng. Linux cung cÊp c i ®Æt ho n h¶o vÒ m¹ng TCP/IP, bao gåm
c¸c tr×nh ®iÒu khiÓn thiÕt bÞ cho nhiÒu card Ethernet th«ng dông, PPP v SLIP,
Parallel Line Internet Protocol (PLIP) v Network Fle System (NFS). Cã rÊt
nhiÒu øng dông kh¸ch v dÞch vô TCP/IP ®−îc hç trî nh− FTP, Telnet, Simple
Mail Transfer Protocol (SMTP). Linux kernel cßn hç trî t−êng löa m¹ng ho n
h¶o, cho phÐp b¹n cÊu h×nh bÊt cø m¸y Linux n o d−íi d¹ng t−êng löa.
1.3 VÊn ®Ò b¶n quyÒn.
Linux ®−îc cÊp giÊy phÐp c«ng céng GNU General Public Licence hay
GPL.GPL ®«i khi ®−îc gäi l giÊy phÐp “kh«ng b¶n quyÒn”. GiÊy phÐp n y ®−a
ra c¸c ®iÒu kho¶n r ng buéc viÖc ph©n phèi v söa ®æi phÇn mÒm miÔn phÝ(free
software).
Ban ®Çu, Linus Torvalds tung ra Linux víi giÊy phÐp h¹n chÕ h¬n GPL. GiÊy
phÐp n y cho phÐp tù do ph©n phèi v söa ®æi phÇn mÒm nh−ng kh«ng cho phÐp
thay ®æi gi¸ th nh ®èi víi viÖc sö dông v ph©n phèi s¶n phÈm ®ã. GPL cho phÐp
b¸n v thu lîi tõ phÇn mÒm miÔn phÝ nh−ng kh«ng cho phÐp h¹n chÕ quyÒn ph©n
phèi phÇn mÒm cña ng−êi kh¸c d−íi bÊt kú h×nh thøc n o.
Mäi tæ chøc b¸n phÇn mÒm miÔn phÝ ph¶i tu©n theo nh÷ng giíi h¹n nhÊt ®Þnh
®−a ra trong GPL:
8
§å ¸n tèt nghiÖp
- Thø nhÊt, hä kh«ng thÓ h¹n chÕ quyÒn cña ng−êi sö dông tøc l
ng−êi mua phÇn mÒm. NghÜa l khi b¹n mua CD_ROM víi phÇn
mÒm GPL , b¹n cã thÓ sao chÐp v ph©n phèi miÔn phÝ CD_ROM
®ã hoÆc còng cã thÓ b¸n l¹i.
- Thø hai, nh ph©n phèi ph¶i nãi râ cho ng−êi sö dông biÕt r»ng
phÇn mÒm n y thùc sù ho¹t ®éng trong ph¹m vi giÊy phÐp GPL.
- Thø ba, nh ph©n phèi ph¶i cung cÊp miÔn phÝ m· nguån ®Çy ®ñ
cho phÇn mÒm ph©n phèi. §iÒu n y gióp cho bÊt k× ai mua phÇn
mÒm GPL ®Òu cã thÓ söa ®æi phÇn mÒm ®ã.
Linux l mét phÇn mÒm thuéc GPL nªn nã còng tu©n theo nh−ng quy t¾c cña
GPL. V× vËy Linux ®−îc coi nh− l phÇn mÒm cã m· nguån më (Open source).
NghÜa l m· nguån cña Linux ph¶i l më víi tÊt c¶ mäi ng−êi muèn sö dông nã,
v cã thÓ söa ®æi v ph¸t triÓn mét c¸ch tù do. V nÕu thùc hiÖn thay ®æi tíi
ch−¬ng tr×nh th× nh÷ng thay ®æi n y còng ph¶i “më” ®èi víi mäi ng−êi dïng.
1.4 So s¸nh Linux v c¸c hÖ ®iÒu h nh kh¸c.
VÊn ®Ò ®Çu tiªn cã thÓ nãi l chóng ta cã thÓ ch¹y Linux víi mét sè hÖ ®iÒu
h nh kh¸c nh− Windows 95, Windows 98, Windows NT, OS/2...m kh«ng gÆp
trôc trÆc g×.
1.4.1 So s¸nh Linux víi Windows 95, Windows 98.
Kh«ng cã g× l¹ khi ch¹y c¶ Linux lÉn Windows 95/98 trªn cïng mét hÖ
thèng. NhiÒu ng−êi sö dông Linux dïng Windows nh− mét c«ng cô xö lý tõ.
NghÜa l ng−êi sö dông sÏ dïng Windows ®Ó khai th¸c c¸c øng dông th−¬ng m¹i
cã trong Windows nh−: Microsoft Word, Microsoft Exel...m trong Linux kh«ng
cã s½n.
9
§å ¸n tèt nghiÖp
Windows 95 v Windows 98 kh«ng tËn dông hÕt ®−îc chøc n¨ng cña bé
xö lý X86. MÆt kh¸c, Linux ho n to n ch¹y trong chÕ ®é b¶o vÖ cña bé xö lý v
khai th¸c triÖt ®Ó c¸c tÝnh n¨ng cña m¸y, kÓ c¶ ®a bé vi xö lý.
Cã thÓ kh¼ng ®Þnh r»ng Windows v Linux l nh÷ng thùc thÓ ho n to n
kh¸c biÖt. Windows cã gi¸ c¶ hîp lý(so víi c¸c hÖ ®iÒu h nh th−¬ng m¹i kh¸c)
v cã vÞ trÝ v÷ng ch¾c trong thÕ giíi m¸y tÝnh PC. Kh«ng cã hÖ ®iÒu h nh n o cho
PC l¹i ®¹t ®−îc møc ®é phæ cËp nh− Windows. Tuy nhiªn Linux l¹i l hÖ ®iÒu
h nh miÔn phÝ v chÝnh ®iÒu ®ã còng l m cho nã ng y c ng trë nªn th«ng dông.
1.4.2 So s¸nh Linux víi Windows NT.
Còng nh− Linux, Windows NT(v c¸c phiªn b¶n Windows ph¸t triÓn tõ
Windows NT) l hÖ ®iÒu h nh ®a nhiÖm ®Çy ®ñ, hé trî m¸y ®a bé xö lý, kiÕn tróc
CPU, bé nhí ¶o, nèi m¹ng, b¶o mËt... Tuy nhiªn, kh¸c biÖt gi÷a Linux v
Windows NT l Linux l phiªn b¶n cña Unix. Cã nhiÒu c i ®Æt tõ phÝa c«ng ty
cung cÊp nh−ng cã mét vÊn ®Ò nan gi¶i l viÖc chuÈn ho¸ d−íi d¹ng hÖ thèng më,
nh−ng kh«ng mét c«ng ty n o cã thÓ kiÓm so¸t ®−îc thiÕt kÕ n y. MÆt kh¸c,
Windows NT l mét hÖ thèng ®Æc quyÒn. Giao diÖn v thiÕt kÕ l do mét c«ng ty
kiÓm so¸t, ®ã l Microsoft v chØ c«ng ty ®ã míi c i ®Æt thiÕt kÕ. VÒ mét ý nghÜa
n o ®ã th× h×nh thøc tæ chøc n y l cã lîi: nã thiÕt lËp tiªu chuÈn nghiªm ngÆt
cho viÖc lËp tr×nh v giao diÖn ng−êi sö dông kh«ng gièng nh− trong céng ®ång
hÖ thèng më.
Windows NT l c¶ søc m¹nh ®Çy ®ñ cña bé m¸y tiÕp thÞ Microsoft, trong
khi ®ã Linux cã céng ®ång h ng ngh×n nh lËp tr×nh ®ang gãp phÇn c¶i tiÕn hÖ
thèng n y qua mÉu Open Source. Nh÷ng ®iÓm quy chuÈn cña Linux so víi
Windows NT ®· chøng minh r»ng mçi hÖ thèng cã ®iÓm m¹nh v ®iÓm yÕu
riªng. Linux v−ît xa Windows NT trong lÜnh vùc m¹ng. Linux còng nhá h¬n NT
nh−ng l¹i th−êng æn ®Þnh h¬n.
10
§å ¸n tèt nghiÖp
1.5 Yªu cÇu vÒ phÇn cøng.
Mét ®Æc ®iÓm v−ît tréi cña Linux chÝnh l nã ch¹y ®−îc trªn hÇu hÕt c¸c
lo¹i m¸y tÝnh c¬ b¶n.
M¸y desktop: Bao gåm c¸c phÇn cøng cña Intel v Intel t−¬ng thÝch, c¸c
chip PowerPC, Sun Sparcs, DEC Alpha v nhiÒu lo¹i kh¸c. B¹n còng kh«ng cÇn
thiÕt ph¶i cã ®êi m¸y hiÖn ®¹i nhÊt, míi nhÊt, LINUX cã tÝnh m«dun cao, nÕu
lo¹i bít c¸c thø "phô tïng", LINUX cã thÓ ch¹y trªn m¸y 386 v chØ cÇn 150 MB
®Üa trèng, 2MB RAM. Mét sè nh ph¸t triÓn cßn viÕt LINUX ch¹y tõ mét ®Üa
mÒm duy nhÊt !
M¸y laptop: Linux còng ho¹t ®éng tèt trªn nhiÒu laptop nh− Apple
PowerBooks, IBM ThinkPad, Toshiba Tecras. §iÒu kú diÖu l LINUX cã thÓ
ch¹y c¶ trªn Intel v Mac, Ýt nhÊt l víi c¸c phÇn cøng c¬ b¶n (bo m¹ch chÝnh, bé
vi xö lý, bé nhí).
Cã rÊt nhiÒu c¸c lo¹i phÇn cøng kh¸c nhau, c¸c ký hiÖu kh¸c nhau (nh−
SCSI, IDE, BIOS ... ). HÇu hÕt, c¸c th«ng tin vÒ m¸y tÝnh ®Òu ®−îc chøa trong
BIOS v b¹n cã thÓ thÊy ®−îc khi khëi ®éng khi Ên c¸c phÝm ®Æc biÖt (F1, Del,
...). NÕu b¹n ®ang dïng Win95 hay WinNT th× c¸c th«ng tin ®ã cã thÓ t×m thÊy
trong môc system properties cña Control Panel.
Sau ®©y l danh s¸ch c¸c thiÕt bÞ cÇn t×m hiÓu:
• CD-ROM: Do Linux hç trî hÇu hÕt c¸c tr×nh ®iÒu khiÓn CD-ROM nªn
c¸ch ®¬n gi¶n nhÊt ®Ó c i ®Æt l nèi æ CD-ROM víi card SCSI hay IDE
bus. NÕu CD-ROM nèi víi IDE bus th× nã ph¶i l lo¹i t−¬ng thÝch víi
ATAPI.
• æ mÒm: Ph¶i l lo¹i 3,5 in 1,44MB.
11
§å ¸n tèt nghiÖp
• æ cøng: Gièng nh− CD-ROM, nã cã thÓ ®−îc nèi víi IDE hay SCSI bus.
B¹n nªn ghi l¹i sè cylinders cña æ cøng - ®−îc chØ ra trong BIOS (ý nghÜa
cña cylinder sÏ ®−îc gi¶i thÝch sau).
• Bus néi bé: Linux hiÖn t¹i kh«ng hç trî bus víi kiÕn tróc Micro-Chanel.
C¸c bus ®−îc hç trî l PCI, ISA, EISA, VL Bus. HÇu hÕt c¸c m¸y s¶n
xuÊt sau n¨m 1995 ®Òu cã PCI bus.
• Bé nhí: Linux cÇn tèi thiÓu 8MB RAM ®Ó cã thÓ ch¹y ®−îc.
• Sound card: Kh«ng cÇn thiÕt cho qu¸ tr×nh c i ®Æt, song nÕu b¹n cã
Creative Labs Sound Blaster hay card sound t−¬ng thÝch, b¹n sÏ dÔ d ng
cã ®−îc ©m thanh trong qu¸ tr×nh c i ®Æt.
• Video card: Th«ng tin cÇn thiÕt ë ®©y l lo¹i chip v dung l−îng bé nhí.
NÕu l lo¹i card PCI th× th«ng tin n y cã thÓ tù ®éng nhËn biÕt trong qu¸
tr×nh c i ®Æt (th«ng tin n y chØ thùc sù cÇn thiÕt nÕu b¹n cã ý ®Þnh dïng
Xwindow).
ViÖc tiÕp theo l so s¸nh danh s¸ch phÇn cøng b¹n cã víi danh s¸ch ®−îc
Linux hç trî:
ThiÕt bÞ C¸c thiÕt bÞ t−¬ng thÝch
CD-Rom Drive IDE ATAPI-compliant, SCSI CD-Rom
Hard Drive C¸c lo¹i IDE, EIDE, SCSI. Mét sè lo¹i Ultra
DMA kh«ng l m viÖc ®−îc v× kh«ng t−¬ng thÝch
víi chuÈn EIDE
SCSI Controller HÇu hÕt c¸c ®iÒu khiÓn SCSI th«ng dông nh−
BusLogic v Adaptec
Video card C¸c lo¹i card ATI, Cirrus v Matrox, S3...
12
§å ¸n tèt nghiÖp
NÕu phÇn cøng cña b¹n kh«ng ®−îc hç trî th× chØ cßn c¸ch:
Thay ®æi phÇn cøng sao cho t−¬ng thÝch.
Chê cho ®Õn khi Linux hç trî phÇn cøng cña b¹n.
Tèt h¬n l nªn tr¸nh c¸c thiÕt bÞ mang nh·n Plug&Play. Bëi v× Linux míi chØ
®ang b¾t ®Çu hç trî c¸c thiÕt bÞ n y, do ®ã sÏ rÊt phøc t¹p khi c i ®Æt. B¹n còng
nªn thËn träng víi c¸c phÇn cøng ®−îc liÖt v o lo¹i Win-item (nh− Winmodem
v Winprinter) v× chóng chØ ho¹t ®éng trong m«i tr−êng Window.
*C¸c th«ng tin vÒ m¹ng
Trong tr−êng hîp m¸y tÝnh cã nèi m¹ng Lan sö dông giao thøc TCP/IP,
b¹n cã thÓ ph¶i cã nh÷ng th«ng tin sau:
Hostname
Domain Name
IP Address
Netmask
Default Gateway
Primary Namesever
Secondary Nameserver
NFS Server (optional)
FTP Server (optional)
13
§å ¸n tèt nghiÖp
Ch−¬ng II : c¸c lÖnh Linux c¬ b¶n
2.1 C¸c ph−¬ng thøc ho¹t ®éng cña dßng lÖnh
C¸c lÖnh trong Linux ®−îc chia l m hai lo¹i l c©u lÖnh v ch−¬ng tr×nh.
§iÓm kh¸c nhau gi÷a c©u lÖnh v ch−¬ng tr×nh l : ®èi víi c¸c c©u lÖnh Linux ®·
cã c i s½n c¸c ph¶n øng v khi b¹n gâ lÖnh, Linux sÏ ®¸p øng c¸c c©u lÖnh ®ã.
Cßn ®èi víi ch−¬ng tr×nh, nã sÏ t×m ch−¬ng tr×nh cã tªn thÝch hîp råi thùc hiÖn
ch−¬ng tr×nh ®ã.
NhiÒu lÖnh trong Linux cho phÐp ®Çu ra cña mét lÖnh n y l ®Çu v o cña
lÖnh kh¸c. §Ó l m ®−îc ®iÒu ®ã b¹n chØ cÇn ®¸nh dÊu “|” ng¨n c¸ch gi÷a hai
lÖnh. Cßn nÕu c©u lÖnh d i qu¸ b¹n cã thÓ ng¾t xuèng dßng b»ng c¸ch thªm dÊu
“\” t¹i cuèi dßng (dÊu “\” ph¶i l kÝ tù cuèi cïng cña dßng lÖnh). Khi b¹n muèn
®¸nh nhiÒu lÖnh mét lóc th× b¹n chØ cÇn ®¸nh dÊu “,” gi÷a c¸c c©u lÖnh, tõ ®ã c¸c
c©u lÖnh sÏ ®−îc thùc hiÖn mét c¸ch tuÇn tù.
Linux cßn cung cÊp nhiÒu sù tiÖn lîi khi sö dông c¸c lÖnh, ®Æc biÖt l kh¶
n¨ng ho n chØnh lÖnh b»ng viÖc sö dông phÝm tab. B¹n còng cã thÓ sö dông mòi
tªn lªn/xuèng trªn b n phÝm ®Ó nhËn ®−îc c¸c c©u lÖnh ®· sö dông lóc tr−íc.
Mét sè phÝm t¾t ®Ó thùc hiÖn lÖnh c¸c thao t¸c ®¬n gi¶n khi nhËp lÖnh.
- NhÊn phÝm ESC +BACKSPACE ®Ó xo¸ mét tõ bªn tr¸i con
trá.
- NhÊn phÝm ESC +D ®Ó xo¸ mét tõ bªn ph¶i con trá.
- NhÊn phÝm ESC +F ®Ó di chuyÓn con trá sang ph¶i mét tõ.
- NhÊn phÝm ESC +B ®Ó di chuyÓn con trá sang tr¸i mét tõ.
- NhÊn phÝm CTRL +A di chuyÓn con trá vÒ ®Çu dßng lÖnh.
- NhÊn phÝm CTRL +E di chuyÓn con trá vÒ cuèi dßng lÖnh.
- NhÊn phÝm CTRL +U ®Ó xo¸ dßng lÖnh hiÖn t¹i.
14
§å ¸n tèt nghiÖp
B¹n cã thÓ nhÊn phÝm ALT thay cho phÝm ESC.
2.2 Trang Man
Linux l mét hÖ ®iÒu h nh rÊt phøc t¹p víi rÊt nhiÒu c©u lÖnh cã thÓ kÕt
hîp víi nhau ®Ó thùc hiÖn h ng ngh×n c¸c thao t¸c kh¸c nhau. HÇu hÕt c¸c c©u
lÖnh ®Òu cã kÌm theo mét sè c¸c tuú chän lÖnh hay nh÷ng th«ng tin quan träng.
Trong Linux cã tíi h¬n 1000 lÖnh v ch¾c ch¾n r»ng chóng ta kh«ng thÓ nhí hÕt
®−îc. Sö dông trang Man sÏ gióp chóng ta gi¶i quyÕt ®−îc ®IÒu ®ã.
Trang Man (Manual page), l mét t i liÖu trùc tuyÕn trong Linux l−u tr÷
to n bé c¸c lÖnh cã s½n víi c¸c th«ng tin tham kh¶o ®Çy ®ñ.
§Ó më trang Man cña mét lÖnh, b¹n h·y gâ:
man
C¸ch tr×nh b y chung cña mét trang Man sÏ nh− sau:
NAME
Tªn lÖnh v kh¸i qu¸t t¸c dông cña lÖnh.
SYNOPSIS
Có ph¸p cña lÖnh.
DESCRIPTION
M« t¶ cô thÓ h¬n vÒ t¸c dông cña lÖnh.
OPTIONS
LiÖt kª c¸c tuú chän lÖnh v t¸c dông cña chóng.
FILES
LiÖt kª c¸c tËp tin m lÖnh sö dông hoÆc tham chiÕu ®Õn.
SEE ALSO
LiÖt kª c¸c lÖnh, c¸c t i liÖu cã liªn quan ®Õn lÖnh.
REPORTING BUGS
§Þa chØ liªn hÖ nÕu gÆp lçi khi sö dông lÖnh.
15
§å ¸n tèt nghiÖp
AUTHOR
Tªn t¸c gi¶ cña lÖnh.
2.3 C¸c quy −íc.
Cã mét bé quy −íc m« t¶ chÝnh x¸c v nhÊt qu¸n có ph¸p lÖnh trong
Linux. Bé quy −íc n y quy ®Þnh tuú chän hay tham sè n o buéc ph¶i dïng, tuú
chän hay tham sè n o kh«ng nhÊt thiÕt ph¶i dïng...
- BÊt cø tõ n o ®øng mét m×nh hay kh«ng ë trong c¸c dÊu [], {}, th× ph¶i
gâ y nh− vËy.
- Tõ n»m trong dÊu ngoÆc vu«ng ( [] ) l tuú ý cã thÓ gâ hoÆc kh«ng.
- Tõ n o n»m trong dÊu l b¾t buéc ph¶i cã v ®−îc thay thÕ b»ng tõ
thÝch hîp.
- Tõ n o n»m trong dÊu {} l chän mét trong c¸c gi¸ trÞ trong ngoÆc ®ã.
- DÊu ... th−êng ®−îc dïng víi c¸c tham sè nh− tªn tËp tin.
- Khi cÇn cã thÓ kÕt hîp c¸c dÊu ngoÆc víi nhau ®Ó t¹o ra c¸ch sö dông
tham sè míi.
Ngo i nh÷ng quy −íc trªn, cã mét ®iÒu cÇn l−u ý n÷a l trong dßng lÖnh
Linux cã ph©n biÖt ch÷ hoa v ch÷ th−êng.
Trong Linux cã hai ký tù ®¹i diÖn phæ biÕn l “* “ v “?”. “*” l ký tù ®¹i
diÖn th«ng dông nhÊt, nã thay cho mét hay nhiÒu kÝ tù. V “?” l ký tù ®¹i diÖn
cho mét ký tù duy nhÊt.
2.4 C¸c lÖnh c¬ b¶n trong Linux.
2.4.1 Th− môc v lÖnh vÒ th− môc.
2.4.1.1 Mét sè th− môc ®Æc biÖt.
- Th− môc / : §©y l th− môc gèc chøa ®ùng tÊt c¶ c¸c th− môc con cã
trong hÖ thèng.
16
§å ¸n tèt nghiÖp
- Th− môc /root : §−îc sö dông ®Ó l−u tr÷ c¸c tËp tin t¹m thêi, nh©n
Linux v c¸c h×nh ¶nh khëi ®éng, c¸c tËp tin nhÞ ph©n quan träng, c¸c
tËp tin ®¨ng nhËp....
- Th− môc /bin : Mét ch−¬ng tr×nh ®−îc coi l kh¶ thi nÕu nã cã thÓ thùc
hiÖn ®−îc v khi biªn dÞch nã cã d¹ng l t©p tin nhÞ ph©n. NghÜa l mét
ch−¬ng tr×nh øng dông trong Linux l mét tËp tin nhÞ ph©n kh¶ thi. V
th− môc /bin chÝnh l n¬i l−u tr÷ c¸c tËp tin nhÞ ph©n kh¶ thi ®ã. Nh−ng
theo thêi gian ng y c ng cã nhiÒu tËp tin nhÞ ph©n kh¶ thi nªn cã thªm
c¸c th− môc nh− /sbin, /usr/bin ®−îc sö dông ®Ó l−u tr÷ c¸c tËp tin ®ã.
- Th− môc /dev : L−u tr÷ tÊt c¶ c¸c tr×nh ®iÒu khiÓn thiÕt bÞ.
- Th− môc /etc :L−u tr÷ tÊt c¶ c¸c th«ng tin hay tÖp tin cÊu h×nh hÖ
thèng.
- Th− môc /lib : L−u tr÷ c¸c th− viÖn h m v thñ tôc.
- Th− môc /lost+ found : Mét tËp tin ®−îc kh«i phôc sau khi cã bÊt kú
mét vÊn ®Ò hay mét trôc trÆc n o trªn hÖ thèng ®Òu ®−îc l−u v o tËp tin
n y.
- Th− môc /mnt : L n¬i ®Ó kÕt nèi c¸c thiÕt bÞ (®Üa cøng, ®Üa mÒm,…)
v o hÖ thèng tÖp tin chÝnh.
- Th− môc /tmp : Th− môc n y ®−îc rÊt nhiÒu ch−¬ng tr×nh trong Linux
sö dông nh− mét n¬i l−u c¸c tËp tin t¹m thêi. VÝ dô nh− b¹n so¹n th¶o
mét tÖp tin, ch−¬ng tr×nh sÏ t¹o ra mét tËp tin l b¶n sao cña tÖp tin ®ã
v l−u v o trong th− môc /tmp. B¹n sÏ so¹n th¶o trùc tiÕp trªn tËp tin
t¹m thêi n y v sau khi so¹n th¶o xong, tËp tin sÏ ®−îc ghi ®Ì lªn tËp
tin gèc cña b¹n.
17
§å ¸n tèt nghiÖp
- Th− môc /usr : Th«ng th−êng th− môc n y l trung t©m l−u tÊt c¶ c¸c
c©u lÖnh h−íng ®Õn ng−êi dïng. Tuy nhiªn ng y nay th× hÇu hÕt c¸c tËp
tin nhÞ ph©n cña Linux ®Òu ®−îc l−u tr÷ t¹i th− môc n y.
- Th− môc /home : L−u tr÷ c¸c th− môc c¸ nh©n cña ng−êi dïng.
- Th− môc /var : §−îc sö dông ®Ó l−u tr÷ c¸c th«ng tin lu«n lu«n thay
®æi.
- Th− môc /boot : L th− môc chøa nh©n cña hÖ thèng, system.map (tËp
tin ¸nh x¹ ®Õn c¸c driver ®Ó n¹p c¸c hÖ thèng tËp tin kh¸c),....Th− môc
n y cho phÐp khëi ®éng v n¹p l¹i bÊt kú tr×nh ®iÒu khiÓn n o ®−îc yªu
cÇu ®Ó ®äc c¸c hÖ thèng tËp tin kh¸c.
- Th− môc /proc : L th− môc d nh cho nh©n hÖ thèng (kernel).
- Th− môc /mise v th− môc /opt : B¹n cã thÓ l−u tr÷ mäi thø b¹n thÝch
v o th− môc n y.
- Th− môc /sbin : L−u c¸c tËp tin hÖ thèng th−êng tù ®éng ch¹y.
Ngo i ra cßn hai th− môc ®Æc biÖt tån t¹i trong Linux, ®ã l hai th− môc
®−îc biÓu hiÖn bëi dÊu “.” v “..”.
- DÊu “.” biÓu hiÖn cho th− môc hiÖn h nh.
- DÊu “..” biÓu hiÖn cho th− môc cha cña th− môc hiÖn h nh.
2.4.1.2 C¸c lÖnh chÝnh liªn quan ®Õn th− môc.
• X¸c ®Þnh th− môc hiÖn thêi víi lÖnh pwd
Có ph¸p lÖnh:
pwd
LÖnh n y cho b¹n biÕt hiÖn b¹n ®ang ë trong th− môc n o.
MÆc ®Þnh, Linux lu«n ®Æt b¹n v o th− môc c¸c nh©n cña b¹n khi ®¨ng nhËp.
• Xem th«ng tin vÒ th− môc víi lÖnh ls
Có ph¸p lÖnh :
18
§å ¸n tèt nghiÖp
ls [tuú chän lÖnh]...[th− môc]...
LÖnh n y ®−a ra th«ng tin vÒ th− môc, nÕu kh«ng cã th× mÆc ®Þnh l th«ng
tin hiÖn thêi ®−îc hiÓn thÞ.
• LÖnh t¹o th− môc mkdir
Có ph¸p lÖnh :
mkdir [tuú chän lÖnh]
LÖnh n y sÏ t¹o mét th− môc míi nÕu nã ch−a thùc sù tån t¹i. NÕu th−
môc ®· tån t¹i, hÖ thèng sÏ th«ng b¸o cho b¹n biÕt.
• LÖnh lo¹i bá th− môc rmdir.
Có ph¸p lÖnh :
rmdir [tuú chän lÖnh]...
Víi lÖnh n y b¹n chØ xo¸ ®−îc nh÷ng th− môc rçng, tøc l kh«ng tån t¹i
tËp tin hoÆc th− môc con n o trong nã. Th− môc ®· xo¸ råi th× kh«ng cã c¸ch n o
kh«i phôc ®−îc, v× vËy b¹n nªn c©n nh¾c kÜ tr−íc khi xo¸ mét th− môc n o ®ã.
• LÖnh ®æi th− môc cd.
Tªn cd cã nghÜa l change directory. B¹n cã thÓ chuyÓn trùc tiÕp ®Õn th−
môc n o ®ã hoÆc chuyÓn mét c¸ch t−¬ng ®èi.
Muèn chuyÓn lªn th− môc cha : #cd .. hoÆc #cd ../..
ChuyÓn vÒ th− môc gèc : #cd \
ChuyÓn vÒ th− môc home th× dïng lÖnh: #cd hoÆc #cd ~
• LÖnh sao chÐp th− môc cp.
Có ph¸p lÖnh:
cp [tuú chän lÖnh] ......
LÖnh n y cho phÐp b¹n sao th− môc nguån ®Õn th− môc ®Ých hoÆc sao chÐp tõ
nhiÒu th− môc nguån v o th− môc ®Ých.
19