Professional Documents
Culture Documents
Tu Hoc Su Dung Linux PDF
Tu Hoc Su Dung Linux PDF
Mc lc
Li m u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 HH Linux: lch s v cc bn phn phi
1.1 Th no l HH ni chung v Linux ni ring
1.1.1 Cc h iu hnh dng UNIX . . . . . .
1.1.2 Mt cht v lch s . . . . . . . . . . . .
1.1.3 c im chnh ca HH Linux . . . .
1.2 Bn phn phi Linux . . . . . . . . . . . . . . .
1.3 Yu cu i vi my tnh . . . . . . . . . . . . .
1.4 Ly Linux u? . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
. 3
. 3
. 4
. 7
. 9
. 12
. 13
2 Ci t h iu hnh Linux
2.1 Chun b ci t . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Phng xa v nhng li khuyn . . . . . . . . . . . . . . . . .
2.3 Phn vng trn a v qu trnh khi ng . . . . . . . . .
2.3.1 Th no l cu trc hnh hc ca a . . . . . . . .
2.3.2 Phn vng v bng phn vng ca a . . . . . . . .
2.3.3 Qu trnh khi ng cc HH ca cng ty Microsoft
2.3.4 Vn vi cc a ln . . . . . . . . . . . . . . . . . .
2.4 La chn trnh khi ng . . . . . . . . . . . . . . . . . . . .
2.4.1 Trnh khi ng GRUB . . . . . . . . . . . . . . . . .
2.4.2 Trnh khi ng LILO . . . . . . . . . . . . . . . . .
2.4.3 Cc trnh khi ng khc . . . . . . . . . . . . . . . .
2.4.4 Cc phng n khi ng . . . . . . . . . . . . . . .
2.5 Chun b cc phn vng trn a . . . . . . . . . . . . . . .
2.5.1 Li khuyn khi to phn vng . . . . . . . . . . . . .
2.5.2 Chng trnh phn chia a . . . . . . . . . . .
2.6 Windows NT v Linux: khi ng qua NT OS Loader . . .
2.7 S dng trnh khi ng GRUB . . . . . . . . . . . . . . . .
2.7.1 Ci t GRUB . . . . . . . . . . . . . . . . . . . . . .
2.7.2 Cu hnh GRUB . . . . . . . . . . . . . . . . . . . . .
2.8 S dng trnh khi ng LILO . . . . . . . . . . . . . . . .
2.8.1 Ci t v cu hnh LILO . . . . . . . . . . . . . . .
2.8.2 Ci t cc h iu hnh khc sau Linux . . . . . .
2.8.3 Chuyn th mc /boot ln phn vng DOS . . . . .
2.9 Khi ng Linux t MS-DOS bng loadlin.exe . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
14
14
16
17
17
18
20
22
23
23
24
26
27
27
27
30
31
34
34
34
36
36
39
39
40
iv
3 Khi ng Linux ln u
3.1 Khi ng HH Linux . . . . . . . . . . . .
3.2 ng nhp vo h thng . . . . . . . . . . .
3.3 Console, terminal o v shell . . . . . . . .
3.4 Son tho dng lnh. Lch s lnh . . . . .
3.5 Ngng lm vic vi Linux . . . . . . . . . .
3.6 Tr gip khi dng Linux . . . . . . . . . . .
3.6.1 Cc ngun thng tin tr gip . . . .
3.6.2 Cc trang tr gip man . . . . . . . .
3.6.3 Cu lnh info . . . . . . . . . . . . .
3.6.4 Cu lnh help . . . . . . . . . . . . .
3.6.5 Ti liu bn phn phi v ng dng
3.6.6 Cu lnh xman . . . . . . . . . . . . .
3.6.7 Cu lnh helptool . . . . . . . . . .
3.6.8 Sch v Internet . . . . . . . . . . . .
MC LC
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
43
43
44
46
49
51
53
53
54
55
56
56
57
57
57
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
60
60
63
65
70
70
72
72
72
73
79
80
80
80
81
82
82
83
83
86
87
88
89
91
92
93
95
MC LC
5 Bash
5.1 H v l g? . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Cc k t c bit . . . . . . . . . . . . . . . . . . . .
5.3 Thc thi cc cu lnh . . . . . . . . . . . . . . . . . .
5.3.1 Thao tc ; . . . . . . . . . . . . . . . . . . . . .
5.3.2 Thao tc & . . . . . . . . . . . . . . . . . . . .
5.3.3 Thao tc && v || . . . . . . . . . . . . . . .
5.4 u vo/u ra tiu chun . . . . . . . . . . . . . . .
5.4.1 Dng d liu vo ra . . . . . . . . . . . . . .
5.4.2 Lnh echo . . . . . . . . . . . . . . . . . . . .
5.4.3 Lnh cat . . . . . . . . . . . . . . . . . . . . .
5.5 Chuyn hng u vo/u ra, ng ng v b lc .
5.5.1 S dng >, < v >> . . . . . . . . . . . . . . .
5.5.2 S dng | . . . . . . . . . . . . . . . . . . . .
5.5.3 B lc . . . . . . . . . . . . . . . . . . . . . . .
5.6 Tham bin v cc bin s. Mi trng ca h v . . .
5.6.1 Cc dng tham bin khc nhau . . . . . . . .
5.6.2 Du nhc ca h v . . . . . . . . . . . . . . .
5.6.3 Bin mi trng PATH . . . . . . . . . . . . . .
5.6.4 Bin mi trng IFS . . . . . . . . . . . . . .
5.6.5 Th mc hin thi v th mc c nhn . . .
5.6.6 Cu lnh export . . . . . . . . . . . . . . . .
5.7 Khai trin biu thc . . . . . . . . . . . . . . . . . . .
5.7.1 Khai trin du ngoc . . . . . . . . . . . . . .
5.7.2 Thay th du ng (Tilde Expansion) . . . . .
5.7.3 Php th cc tham bin v bin s . . . . . .
5.7.4 Php th cc cu lnh . . . . . . . . . . . . . .
5.7.5 Php th s hc (Arithmetic Expansion) . . .
5.7.6 Phn chia t (word splitting) . . . . . . . . .
5.7.7 Khai trin cc mu tn th mc v tp tin .
5.7.8 Xa cc k t c bit . . . . . . . . . . . . . .
5.8 Shell mt ngn ng lp trnh . . . . . . . . . . . .
5.8.1 Ton t if v test (hoc [ ]) . . . . . . . . .
5.8.2 Ton t test v iu kin ca biu thc . . .
5.8.3 Ton t case . . . . . . . . . . . . . . . . . .
5.8.4 Ton t select . . . . . . . . . . . . . . . . .
5.8.5 Ton t for . . . . . . . . . . . . . . . . . . .
5.8.6 Ton t while v until . . . . . . . . . . . .
5.8.7 Cc hm s . . . . . . . . . . . . . . . . . . . .
5.8.8 Tham s . . . . . . . . . . . . . . . . . . . . .
5.8.9 Bin ni b (local) . . . . . . . . . . . . . . . .
5.9 Script ca h v v lnh source . . . . . . . . . . . .
5.10 Cu lnh sh . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
101
. 101
. 102
. 103
. 103
. 104
. 104
. 104
. 104
. 105
. 105
. 106
. 106
. 108
. 109
. 109
. 110
. 112
. 113
. 113
. 114
. 114
. 114
. 115
. 115
. 116
. 116
. 116
. 117
. 117
. 118
. 118
. 118
. 119
. 122
. 122
. 123
. 124
. 124
. 125
. 125
. 126
. 126
vi
MC LC
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
128
128
129
131
132
133
133
136
137
139
141
143
145
147
153
159
159
160
7 Giao din ho
7.1 X.Org . . . . . . . . . . . . . . . . . . . . . . .
7.2 Mt cht v h thng hnh nh ca my tnh
7.3 Cu hnh chng trnh ch X . . . . . . . . .
7.3.1 Thu thp thng tin cn thit . . . . . .
7.3.2 Cu trc ca tp tin cu hnh X . . . .
7.3.3 Th cu hnh /etc/X11/xorg.conf . . . .
7.4 Khi ng h thng X Window . . . . . . . . .
7.4.1 La chn trnh qun l ca s . . . . .
7.4.2 Mi trng lm vic KDE v GNOME
7.4.3 Mi trng lm vic Xfce . . . . . . . .
7.4.4 S dng trnh qun l mn hnh . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
162
162
167
169
170
171
178
182
185
187
188
188
.
.
.
.
.
.
.
190
. 190
. 190
. 191
. 194
. 195
. 198
. 201
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
129
130
133
136
137
138
139
142
144
145
147
150
150
151
152
153
154
156
157
158
158
159
7.1
7.2
7.3
7.4
7.5
H thng ho X Window . . . . . . . . . . . . . . . .
Cu hnh X.org qua xorgcfg . . . . . . . . . . . . . .
Chng trnh xvidtune . . . . . . . . . . . . . . . . .
Chng trnh xvidtune khng chu chnh hnh nh
Mi trng lm vic Xfce . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
164
172
181
181
189
8.1
8.2
8.3
8.4
8.5
8.6
8.7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
191
192
193
194
195
196
197
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
viii
Ci t phng ch mi . . . . . . . . . . . . .
Chn phng ch dng cho text, trnh n, . . .
Chn phng ch . . . . . . . . . . . . . . . . .
Cnh bo khi c thay i cha p dng . . . .
Trnh n ca thanh panel . . . . . . . . . . .
Trnh n bi cnh ca nt . . . . . . . . . .
Cu hnh cc thanh panel . . . . . . . . . . .
Thay i mn hnh . . . . . . . . . . . . . . .
Son tho trnh n chnh . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
198
198
199
199
200
200
201
201
202
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
46
50
52
54
55
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
Cu trc th mc ca Linux . . . . . . . . . . .
Nhng tp tin thit b chnh . . . . . . . . . . .
Nhng ty chn chnh ca lnh cp . . . . . . .
Tiu ch tm kim ca cu lnh find. . . . . . .
Nhng ty chn chnh ca tar . . . . . . . . .
Nhng ty chn chnh ca chng trnh gzip
Nhng ty chn chnh ca chng trnh bzip2
Nhng ty chn chnh ca cu lnh mount . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
66
71
81
85
89
92
94
99
5.1
5.2
5.3
5.4
Cc cu lnh b lc . . . . . . .
Thay th cc tham bin c bit
K t xc nh dng du nhc .
Cc k t to mu . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
109
111
112
118
6.1
6.2
6.3
6.4
6.5
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
131
131
132
140
148
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Li m u
Trong tc phm ni ting th gii ca nh vn Nga Lev Tolstoi Chin tranh v
ho bnh c a ra mt v d minh ho cho suy ngh ca tc gi v vai tr ca
nhng ngi c ting (c th l Napoleon v Alecxandr nht) v qun chng
trong lch s ni chung cng nh trong chin tranh chu u nhng nm u
th k XIX. Nhn vt chnh trong v d minh ho ny l con ong. i vi cu b
va b ong cn th mc ch ca con ong ch cn ngi. i vi mt nh th
th mc ch ca con ong l thu vo mnh hng v ca nhng bng hoa. i vi
ngi nui ong th mc ch ong l thu thp mt ong. Ngi nui ong c ci nhn
su hn th cho rng ong thu thp bi phn hoa nui ong con v to ong cha,
nh vy mc ch ca n l duy tr ni ging. Nh sinh hc khi quan st thy
ong th phn cho hoa th quyt nh y chnh l mc ch ca loi ong. Ngi
khc quan st qu trnh di c ca thc vt th cho rng ong tham gia vo qu
trnh ny v l mc ch ca n. Tt nhin mc ch cui cng ca ong khng
phi l nhng ci trn nm ring bit m l tt c chng cng li, v cn cng
thm nhng g m tm thi b c quan st hn ch ca con ngi cn cha tm
ra.
Microsoft nhn thy Linux kh nng cnh tranh ln v nhiu khi coi Linux
l k th ca mnh. Nhiu t chc chnh ph cng nh phi chnh ph nhn thy
Linux mt h iu hnh nhiu ha hn v h tr cho Linux. Nhng nc cn
ngho tm thy Linux mt cch gii quyt cho vn kinh t. Mt s cng ty
thy c Linux mt ngun li ln v pht trin cng vic kinh doanh ca
mnh t h iu hnh ny. i vi Linus Torvalds, Linux l nim am m v
Just for fun. Cc nh lp trnh nhn (kernel) tm thy Linux s quyn r v
cng vic pht trin ca h. Ngi dng th thy Linux mt h thng mnh,
thun tin, c th iu chnh theo mun ca mnh v.v. . .
Linux l h iu hnh pht trin mnh. Nhng nm u thp k th chn
ca th k XX Linux mi ch l a con tinh thn cha bit ni ca Torvalds.
Ch trong vi nm gn y c nhiu bn phn phi Linux chim lnh c mi
trng my ch cng nh my bn ca ngi dng. Trn th trng my ch
hin thi ch c mt vi tn tui ng ch . Linux cho my bn c phn a
dng hn. Mi bn phn phi thch hp cho mt nhm ngi dng c th no
t ngi dng mi n ngi dng cao cp (advanced) hay ni ng hn l mi
ngi dng c quyn la chn cho mnh mt bn phn phi thch hp v chuyn
sang s dng bn khc khi no mong mun. Lch s hnh thnh v pht trin
Linux chng ta s thy ngay chng u tin ca cun sch ny.
Linux ngay t ban u c xy dng da trn cng ng (ting Anh
community), da trn s cng tc. Cng ng Linux khng ch cung cp cho
ngi dng my tnh mt h iu hnh thn thin, d s dng m cn lun lun
sn sng gip ngi dng mi, lun mong mun c thm my tnh chy di
Linux. Vi kt ni mng Internet, bn s lun tm thy cu tr li cho vn ca
mnh t s lng ln cc din n, nhm th, nhm tin tc, cc trang web cung
cp tin tc, bi bo, sch v Linux. . . Tuy nhin nu bn mi bt u hc Linux
th hy tm cho mnh mt cun sch gii thiu ngn gn v h iu hnh ny.
Mt cun sch tham kho cm tay l khng th thiu trong thi gian u tm
hiu Linux. Hy xem xt gi v ni dung cun sch trc khi mua. Nu khng
Chng 1
HH Linux: lch s v cc bn
phn phi
Just for fun Linus Torvalds.
Lch s lun l im khi u khi nghin cu mt ngnh khoa hc no . Khng c ngoi l i
vi Ton hc, Vt l, mn chuyn ngnh ca ti Ho hc v tt nhin c HH Linux. Trong chng
u tin ca cun sch T hc s dng Linux ny chng ta s tr li ngn gn cho cu hi Linux
l g?. ng thi ni i dng v nhng im c bit ca Linux, yu cu ca Linux i vi phn
cng, khi nim bn phn phi Linux, v cch c c nhng bn phn phi ny. Hn th na bn
c s hiu t nhiu v OpenSource, GNU v FSF.
1.1
1.1.1
1.1.2
Mt cht v lch s
Trong th ny Linus cho bit anh ang pht trin mt h iu hnh t do cho
cc my tnh i 386 (486) v yu cu nhng ai quan tm cho bit nhng thnh
phn no ca h thng cho ngi dng cn phi c u tin. Nhng ngi dng
trong nhm tin tc ny lm vic di h iu hnh Minux do gio s Andy
2
protocol
Rt th v l sau khi Linus Torvalds pht trin HH ca mnh th gia anh v gio s Andy
Tanenbaum n ra mt cuc tranh ci. Nu bn c quan tm th c th tm c nhng th m
hai ngi ny gi cho nhau trong nhm tin tc ni trn, hoc tm c cun Linux: Just for fun,
mt cun sch ni v i t ca Linus Torvalds n thi im anh lm cho Transmeta v vic
pht trin HH Linux.
4
Tht ra lc u nhn Linux c phn phi theo bn quyn m FSF khng khng nhn l
t do v nghim cm phn phi thng mi. Bn quyn ny c th tm thy trong nhng phin
bn u tin ca nhn trn ftp.kernel.org, v d ftp://ftp.kernel.org/pub/linux/kernel/Historic/oldversions/RELNOTES-0.01. Bn quyn c i sang GPL t phin bn 0.12, hy xem
RELNOTES-0.12 theo a ch trn.
mi.
Tuy nhin by gi xin quay li vi lch s ca Linux. Cn ni rng Linus
Torvalds ch pht trin phn nhn (kernel) ca h iu hnh. Nhn ny u
ng vo min t lnh, v trong d n GNU pht trin s lng ln cc
tin ch khc nhau. Nhng chuyn GNU thnh mt HH hon chnh th ch
cn thiu nhn. D n GNU cng bt u pht trin nhn cho ring mnh
(c gi l Hurd), nhng v l do no b chm li. V th s xut hin ca
nhn Linux l rt ng lc. N ng ngha vi vic ra i ca mt h iu hnh
mi t do phn phi cng vi m ngun m. Stallman tt nhin ng khi i
hi h iu hnh Linux phi c gi l GNU/Linux. Nhng thnh l ngi
dng thng s dng tn gi ca nhn lm tn gi ca h iu hnh, v chng
ta cng lm nh vy trong cun sch ny.
1.1.3
c im chnh ca HH Linux
hoc mt ngi dng chy vi tin trnh ging nhau, hoc nhiu ngi dng chy cng mt
chng trnh
1.2
10
11
12
1.3
Yu cu i vi my tnh
1.4 Ly Linux u?
13
1.4
Ly Linux u?
10
Chng 2
Ci t h iu hnh Linux
Software is like sex, its good when its free Linus Torvalds.
Thng thng trn cc a ca bn phn phi Linux c hng dn ngn gn cch ci t Linux.
Ngoi ra, trn Internet bn c th tm thy rt nhiu cun sch n v vn ny. V tt c cc bn
phn phi ln (Debian, Slackware, Fedora, Mandrake, ...) u c cun hng dn ci t rt chi
tit, cho mi tnh hung s dng. Hy ch i v hy vng trong tng lai khng xa s c bn dch
Ting Vit ca nhng cun sch ny. Chnh v vy trong cun sch ny, tc gi s khng a ra cc
bc c th ca vic ci t, m xin bn c hy tm cc cun hng dn tng ng. Thay vo
l nhng g bn cn bit v chun b trc khi ci t, ng thi, tc gi s i c th v chi tit vo
nhng g c bit khi ci t Linux trn my tnh c mt trong cc h iu hnh (HH) Windows
cng nh vic khi ng nhiu h iu hnh.
2.1
Chun b ci t
2.1 Chun b ci t
15
16
Ci t h iu hnh Linux
nh sn xut;
s mu m (hay chipset s dng)
dung lng b nh;
Mn hnh
nh sn xut
s mu m;
cc gi tr gii hn (min, max) ca tn s lm mi theo chiu dc v
theo chiu ngang (nhng gi tr ny bn c ch c th tm thy trong
ti liu i km vi mn hnh, Windows khng hin th nhng gi tr
ny, v chng rt quan trng trong khi cu hnh giao din ha).
Nu nh bn c mun kt ni mng (m UNIX ni chung l HH dnh
cho mng), th hy ghi li nhng d liu sau:
nh sn xut v s mu m cc mng;
a ch IP ca mnh;
tn ca my tnh trong mng;
mt n mng con (subnet mask);
a ch IP ca gateway;
a ch IP ca cc my ch tn min (DNS server);
a ch IP ca my ch WINS(Windows Internet Name Service);
tn min ca cng ty bn c.
Loi v nh sn xut cc m thanh v game controller (nu nh c)
2.2
17
2.3
2.3.1
18
Ci t h iu hnh Linux
2.3.2
19
V trong bng chia a ch c 4 dng cho cc phn vng, s phn vng chnh
trn a ngay t u d hn ch: khng th ln hn 4. Khi m 4 phn vng tr
thnh t, th ngi ta sng ch ra phn vng lgc. Mt trong s cc phn vng
chnh tr thnh m rng (loi phn vng - 5 hay F hay 85 trong h c s mi
su). V trong phn vng m rng ngi ta to ra cc phn vng lgc. Phn
vng m rng khng c s dng trc tip m ch dng ghi cc phn vng
lgc. Sector u tin ca phn vng m rng ghi nh bng phn vng vi bn
u vo: mt dng cho phn vng lgc, mt cho phn vng m rng khc, cn
hai ci cn li khng c s dng. Mi phn vng m rng c mt bng chia
ca mnh, trong bng ny, cng ging nh trong phn vng m rng chnh, ch
s dng c hai dng a ra mt phn vng lgc v mt phn vng m rng.
Nh vy, thu c mt chui cc mt xch t bng phn vng, mt xch u tin
m t ba phn vng chnh, v mi mt xch tip theo mt phn vng lgc v
v tr ca bng tip theo.
Chng trnh sfdisk trn Linux cho thy ton b chui ny:
[root]# sfdisk -l -x /dev/hda
Disk /dev/hda: 784 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Device
/dev/hda1
/dev/hda2
/dev/hda3
/dev/hda4
Boot
*
Start
0+
190
0
0
End
189
783
#cyls
190594
0
0
#blocks
1526143+
4771305
0
0
Id
6
5
0
0
System
FAT16
Extended
Empty
Empty
/dev/hda5
190+
381
190
190
380
783
189
189
191403
0
0
1534176
3237097+
0
0
6
5
0
0
FAT16
Extended
Empty
Empty
/dev/hda6
381+
381
381
381
783
380
380
380
4030
0
0
3237066
0
0
0
7
0
0
0
HPFS/NTFS
Empty
Empty
Empty
S phn vng lgc theo nguyn tc khng hn ch, v mi phn vng lgc
c th cha bng phn vng v cc phn vng lgc ca mnh. Tuy nhin trn
thc th vn c nhng hn ch. V d, Linux khng th lm vic vi hn 15 phn
vng trn cc a SCSI v hn 63 phn vng trn a IDE.
Phn vng m rng trn mt a vt l, hay trong mt phn vng m rng
cha n (c th gi l m) ch c th lm mt: khng mt chng trnh phn
chia a no trong s c (fdisk v tng t) c th to thm mt phn vng
m rng th hai.
a trn Linux ni ring ( a vt l) c truy cp qua tn ca thit
b: /dev/hda, /dev/hdb, /dev/sda, v.v. . . Cc phn vng chnh c thm s 14 trong tn thit b: /dev/hda1, /dev/hda2, /dev/hda3, cn phn vng lgc
th c cc tn: /dev/hda5, /dev/hda6, /dev/hda7 . . . (bt u t s 5). T
nhng g cp n trn c th suy ra ti sao li c th b qua cc tn nh
/dev/hda3 hay /dev/hda4 (n gin l phn vng chnh th ba v th t
20
Ci t h iu hnh Linux
2.3.3
Ni dung
M ca trnh khi ng chnh
Bng phn vng a
S mu nhim (0xAA55)
21
22
Ci t h iu hnh Linux
2.3.4
Vn vi cc a ln
23
2.4
2.4.1
24
Ci t h iu hnh Linux
2.4.2
25
26
Ci t h iu hnh Linux
/boot/boot.b;
/boot/map (to ra bi lnh /sbin/lilo);
tt c phin bn nhn khi ng (nu bn c chn phin bn nhn khi
khi ng);
sector khi ng ca cc h iu hnh khc m bn c mun khi ng
qua LILO;
tp tin cha cc thng bo a ra khi khi ng (nu c xc nh).
2.4.3
27
2.4.4
Cc phng n khi ng
2.5
2.5.1
28
Ci t h iu hnh Linux
Yu cu
100 Mbyte
200 Mbyte
200 Mbyte
700 Mbyte
700 Mbyte
Tuy nhin xin hy nh rng, khng nhng phi tnh kch thc cc tp tin ca
bn thn h iu hnh, m cn phi tnh c kch thc ca cc chng trnh bn
c d tnh chy. V cn phi dnh mt phn d tr khng nh cho cc chng
trnh s ci t sau ny (khng th trnh khi!). Hy tnh rng, 700 Mbyte dnh
cho Linux trong bng ni trn ch dnh cho cc chng trnh ci t cng vi
Linux theo mc nh, trong s c, v d, chng trnh son tho rt mnh
Lyx. i vi Windows cng tng t nh vy.
Theo kinh nghim ca tc gi th lm vic vi Windows 95/98, Windows
NT v Linux cc phn vng vi kch thc 800-1000 Mbyte l (tt nhin, nu
bn c khng ci t cc gi chng trnh ln, nh OpenOffice.Org), cn i vi
Windows 200 th cn phn vng ln hn.
By gi chng ta s xem xt vn chia cc phn vng cho Linux. y
khng th ch chia mt phn vng. Th nht, cn chia mt phn vng swap
ring bit cho Linux. Khi xc nh dung lng ca phn vng swap Linux cn
tnh n nhng yu t sau:
Trong Linux, RAM v khng gian swap hp li to thnh b nh o chung.
V d, nu bn c c 256 MByte RAM v 128 Mbyte khng gian swap, th
s c 384 Mbyte b nh o.
lm vic vi Linux cn t nht 16 Mbyte b nh o, v th nu bn c
ch c 4 Mbyte RAM, th cn phn vng swap khng nh hn 12 Mbyte.
Kch thc ca phn vng swap c th ln bao nhiu ty thch, tuy nhin
khng cn cu hnh qu nhiu nu khng cn thit. Thng thng ch cn
dng swap khi my t b nh RAM hoc chy my ch vi nhiu ng dng
29
Xin cm n bc Tony L v mc ny
30
Ci t h iu hnh Linux
phn khi ng ca tt c cc h thng Microsoft t vo phn vng chnh
u tin ca a, vi nh dng FAT16 (DOS);
phn vng chnh tip theo dnh cho th mc gc (/), kch thc khong 1
Gbyte;
phn vng chnh th ba dnh cho swap ca Linux (li khuyn v kch thc
ca phn vng ny xem trn);
phn cn li ca a t thnh phn vng m rng;
trong phn vng m rng to cc phn vng lgc cho mi HH s ci t:
Windows 98, Windows NT/2000/XP, v ng thi cho cc h thng tp tin
/home v /usr ca HH Linux (trong /home s t cc tp tin ring ca
ngi dng, cn trong /usr chng trnh s ci t).
Tt nhin, nu nh bn c ch c Windows 95 vi FAT16, th c th Windows trn phn vng u tin. Nu nh trn my ci t Windows NT hay
c FAT32, th mt phn vng FAT16 cng khng tha. Th nht, k c trong
trng hp h thng c vn , bn c c th khi ng t a mm DOS (tm
thi khi cha lm quen vi Linux mt cch tng tn) v thy c rng a
cng lm vic bnh thng. Th hai, h thng tp tin FAT16 c h tr trn
mi HH, trong c Linux, v th phn vng ny c th phc v cho vic trao
i tp tin gia cc h thng. Nhng khng nn phn vng ny ln, v FAT16
s dng khng gian a rt khng hp l. Chnh v vy hy dnh cho phn vng
ny khong 256 hoc 512 Mbyte.
Nhng li khuyn ny a ra vi gi thit rng, bn c ch c mt a cng.
Nu nh bn c c 2, th vn s dng c nhng li khuyn ny, ch c iu
phn vng swap tt hn t trn a khc vi a dnh cho Linux. Ngi ta ni
rng nh vy tng tc lm vic trong Linux (cng d hiu v u c t phi
chy hn).
2.5.2
31
2.6
Trong phn ny, khi ni v Windows NT xin ngm hiu c Windows 2000 v NT,
v quan h ca chng i vi vic ci t Linux hon ton ging nhau. Chng
ta gi thit l Windows NT c ci vo phn vng /dev/hda2 (nu nh bn
c nh, /dev/hda1 s dnh cho phn vng FAT16). Nu HH Windows NT
c ci t, ngha l trnh khi ng OS Loader cng c ci t. V nh
th c th s dng chng trnh ny khi ng Linux. Tc gi hy vng rng
bn c sao lu nhng thng tin c gi tr ca mnh. Cc bc ci t c th
m t nh sau:
1. Nu nh bn c cha ci t Linux bao gi, th trc khi bt u cn
chun b a mm khi ng v phc hi Windows NT. to a mm khi
ng ch cn nh dng li a mm, ri sao chp ln cc tp tin ntldr,
ntdetect.com v boot.ini t th mc gc ca a khi ng NT. Chng
trnh to a phc hi Windows 2000/XP c th chy t trnh n h thng
(lnh Backup trong Start/Program/Accessories).
2. Dng chng trnh Partition Magic ly mt phn a trng v t to
ra phn vng vi dng ext2(3) (h thng tp tin Linux) v phn vng swap.
Cch tnh kch thc ca chng ni trn.
3. Ci t Linux theo ch dn ca bn phn phi. Trong khi ci t cn ch
n nhng im sau:
th nht, trong qu trnh ci t nht nh phi to ra cc a mm
khi ng Linux. Tc l cn tr li Yes, make a BOOT DISK (hay
tng t th, ty thuc vo bn phn phi) khi c hi c to a
mm khi ng hay khng. a mm ny s c dng n sau.
Ngoi ra, c th s dng a mm ny khi ng Linux. y cng
l mt phng n khi ng, v hn na khc vi a mm khi ng
DOS, sau khi khi ng h thng khng cn yu cu a mm na,
c th b n ra khi , s dng c cc a mm khc. Tuy nhin
32
Ci t h iu hnh Linux
cch khi ng ny cng c iu tin, v th khng nn s dng thng
xuyn. Ch s dng trong trng hp bt c d. a mm ny cn
cn thit cho cu hnh khi ng nhiu HH.
th hai, khi ci t Linux cn ci LILO vo sector u tin ca phn
vng dnh cho th mc gc (/) ca Linux, ch khng phi vo sector
khi ng chnh ca a (MBR). Chng ta gi thit Linux c ci vo
phn vng /dev/hda3. Nh vy LILO s c ci vo sector u tin
ca /dev/hda3
Theo nguyn tc, nu nh bn c ci LILO vo MBR, th khng phi mi
th hng ht. Kt qu cui cng (khi ng qua NT Loader) vn c th
t c nhng cn b ra mt cht cng sc. Vn ch, nh dng MBR
to bi LILO v Windows (DOS) khc nhau. V th nu bn c ci LILO
vo MBR, th cu phc hi li MBR ca Windows. Tc gi cng s ni cch
phc hi, nhng tt hn ht l bn c ci LILO ngay lp tc vo sector
u tin ca phn vng ci Linux.
4. Sau khi ci t xong, khi ng Linux bng a mm (nu nh bn c ci
LILO vo phn vng ca Linux v khng ng g n MBR, th y l kh
nng duy nht).
5. Sao chp sector khi ng ca Linux vo mt tp tin; tp tin ny s cn
trnh khi ng Windows NT/2000 c th khi ng Linux. Vic sao chp
thc hin nh sau: u tin gn mt a mm trng (mi mua th cng tt),
[root]# mount -t vfat /dev/fd0 /mnt/floppy
chuyn vo th mc /mnt/floppy
[root]# cd /mnt/floppy
v thc hin cu lnh
[root]# dd if=/dev/hda3 of=/mnt/floppy/bootsect.lnx bs=512 count=1
33
34
Ci t h iu hnh Linux
/dev/hda3 on / type reiserfs (rw)
6. Chy lnh /sbin/lilo ghi trnh khi ng vo phn vng /dev/hda3
(cn chy lnh lilo khng c tham s). S c cnh bo v vic phn vng
khng phi l u tin trn a. y chnh l iu chng ta cn, bn ghi
khi ng ca Windows c gi nguyn vn.
7. Thc hin cc bc 6-8 nh trn.
2.7
2.7.1
Ci t GRUB
2.7.2
Cu hnh GRUB
35
default 0
timeout 8
###Dont change this comment - YaST2 identifier: Original name:linux###
title SUSE LINUX 9.3
kernel (hd0,0)/vmlinuz root=/dev/hda5 vga=0x31a selinux=0
splash=silent resume=/dev/hda7 showopts
initrd (hd0,0)/initrd
###Dont change this comment - YaST2 identifier: Original name:
windows###
title Windows
map (hd0)
(hd1)
map (hd1)
(hd0)
rootnoverify (hd1,0)
makeactive
chainloader +1
###Dont change this comment - YaST2 identifier: Original name: xen###
title XEN
kernel (hd0,0)/xen.gz dom0_mem=196608
module (hd0,0)/vmlinuz-xen root=/dev/hda5 vga=0x31a selinux=0
splash=silent resume=/dev/hda7 showopts
module (hd0,0)/initrd-xen
###Dont change this comment - YaST2 identifier: Original name: floppy###
title Floppy
root (fd0)
chainloader +1
36
Ci t h iu hnh Linux
2.8
2.8.1
Ci t v cu hnh LILO
Ghi ch. Trnh khi ng LILO khng bt buc phi ci t vo bn ghi khi ng chnh ca
a, LILO c th nm bn ghi khi ng ca phn vng chnh c kch hot v cha th mc
gc ca Linux hoc thm ch trn phn vng lgc trong phn vng m rng. Trong trng hp
MBR cn phi c kh nng np LILO, v d khi MBR l trnh khi ng ca MS-DOS hay
Windows. Tuy nhin tc gi cha nhn thy s cn thit ca ng dng ny (nu chn LILO
lm trnh khi ng chnh th hy s dng cho trn b), v th chng ta s khng xem xt n.
37
table = /dev/hda
label = dos
Vi li gii thch cho v d: Dng boot cho bit thit b khi ng.
Dng compact bt ch nn tp tin map tp tin cha c tnh ca nhn
c khi ng; tnh nng (nn) ny tng tc ca khi ng u.
Cu lnh message dng a ra thng bo theo mun khi khi ng.
Bt u t dng image l cc phn nh ca tp tin cu hnh, mi phn
tng ng vi mt h iu hnh s khi ng theo la chn ca ngi dng.
Trong mi phn nh vy c mt dng label. Trn dng ny ghi tn cn
nhp vo du nhc LILO hay tn s hin th trong trnh n ca LILO
c th chn HH mun khi ng. Nu nh tn khng c nhp sau
khong thi gian ch trn dng delay (tnh theo phn mi giy cn nhn
vi 0,1 giy), th s khi ng HH theo mc nh. Trong v d ny, s khi
ng Linux theo mc nh, v phn cu hnh tng ng vi Linux nm u
tin trong tp tin. C th ch ra h iu hnh c khi ng theo mc nh
khi thm mt dng c dng default=dos, tc l s dng tn t trn
dng label.
Dng table=<device> cho bit tn thit b cha bng phn chia a. LILO
s khng a thng tin v phn chia a cho h iu hnh c khi ng
nu bin ny khng c a ra. (Mt s h iu hnh c cng c khc
xc nh l c khi ng t phn vng no.) ng qun rng, cn thc
hin cu lnh /sbin/lilo, sau khi thay i ch dn n bng phn chia
a, tc l thay i bin table. Nu t dng (gi l phn nh th tt hn)
other = /dev/hda1 trong tp tin /etc/lilo.conf, th trong th mc
gc ca a /dev/hda1 (a C: trong h thng thut ng Microsoft) cn c
trnh khi ng ph (khng phi l chnh). Trn mt my ca tc gi
nm trnh khi ng NT Loader (v Windows NT c ci t trc Linux),
v LILO khi ng thnh cng Windows NT. Ch cn t thi gian ch khi
ng trong tp tin boot.ini bng khng, khng thy trnh n khi ng
ca NT Loader. Tuy nhin, nu v mt l do no bn mun thy trnh
n ny th gi tr timeout trong tp tin boot.ini cn t khc khng (thi
gian ch c tnh theo giy). iu ny c th cn thit khi mun khi ng
c Windows 98 t trnh n ca NT Loader (trong trng hp ny s c 3
HH: Linux, Windows NT v Windows 98, trong trnh n ca LILO nu
chn dos th s hin ra trnh n ca NT Loader ri t chn mt trong
hai HH Windows khi ng).
Nu bn c mun khi ng Windows trc tip t LILO, th hy thm
phn nh sau vo /etc/lilo.conf:
other = /boot/bootsect.dos
label = win
trong bootsect.dos ly t th mc gc ca a cha NT Loader.
5. Sau khi sa xong tp tin /etc/lilo.conf theo mun, cn chy cu lnh
/sbin/lilo nhng thay i c hiu lc. Cu lnh ny (trong ti liu
38
Ci t h iu hnh Linux
hng dn gi l map-installer) ci t trnh khi ng ph, m s c
kch hot trong ln khi ng tip theo. Trc khi chy /sbin/lilo
thay i bc khi ng, hy thc hin cu lnh ny vi tham s -t. Khi c
tham s ny s thc hin tt c cc th tc ci t trnh khi ng, tr vic
thay i tp tin map, bn ghi sector khi ng, v bng phn chia a,
tc l ch chy th cu hnh mi. Nu cho thm ty chn -v, th bn c
s c bit thm thng tin chi tit v nhng g lnh /sbin/lilo s thc
hin.
Khi /sbin/lilo ghi ni dung mi ln sector khi dng, th ni dung c
ca sector ny s t ng c ghi nh vo mt tp tin. Theo mc nh l
tp tin /boot/boot.NNNN, trong NNNN tng ng vi s ca thit b, v
d, 0300 tng ng /dev/hda, 0800 /dev/sda, v.v. . . Nu tp tin ny
c trn a, th n khng b ghi ln. Tuy nhin c th t mt tn khc
ghi sector khi ng, khng nht thit phi dng /boot/boot.NNNN.
Tp tin /boot/boot.NNNN c th s dng phc hi ni dung c ca
sector khi ng, nu khng cn cch phc hi no khc n gin hn. Cu
lnh thc hin c dng:
[root:~#] dd if=/boot/boot.0300 of=/dev/hda bs=446 count=1
hay
[root:~#] dd if=/boot/boot.0800 of=/dev/hda bs=446 count=1
(bs=446 v ch phc hi chng trnh khi ng, v khng ng g n bng
phn chia a).
Cng c th phc hi MBR c khi cn thit bng cu lnh /sbin/lilo vi
ty chn -u. Nhng cn bit rng, cu lnh ny ch lm vic ng vi iu
kin l th mc LILO (tc l /boot) khng thay i k t khi ci t.
MBR ca MS-DOS c th c phc hi bng cch khi ng vo DOS t
a mm (CD) ri chy cu lnh fdisk /mbr (xem trn). Lnh ny ch thay
i m chng trnh khi ng nm trong MBR, m khng thay i bng
phn chia a.
6. Sau khi ci t li trnh khi ng cn khi ng li my tnh v th cc
phng n khi ng khc nhau kim tra.
39
2.8.2
2.8.3
40
Ci t h iu hnh Linux
2.9
mt s bn phn phi cn c gi ci t cho chng trnh ny, thng thng ghi tp tin
loadlin.exe vo th mc ca ngi dng root
7
Ghi ch. zImage l nh dng nh phn c ca nhn, bzImage l nh dng mi hn (s phin
bn nhn ln hn 1.3.73) c kch thc ln ti 1 Mbyte, do , nhn khi gii nn c kch thc
ln ti 2 Mbyte. Tip theo chng ta s ch ni v cc tp tin zImage, mc d bn c c th thay
th zImage thnh bzImage
41
42
Ci t h iu hnh Linux
C:\LOADLIN> LOADLIN vmlinuz /dev/hda3 ro vga=ask
hoc, nu bn c mun np nhn cng vi a RAM:
C:\LOADLIN> LOADLIN vmlinuz /dev/ram rw initrd=diskimage
Cn c th ghi tt c cc tham s ca lnh loadlin.exe vo tp tin (v d vi
tn params) v gi cu lnh dng sau:
C:\LOADLIN> LOADLIN @params
Kh nng ny c bit c ch khi a nhiu tham s dng lnh v khi dng
lnh di hn 127 k t. M t y tt c cc tham s ca cu lnh loadlin.exe c th tm thy trong tp tin PARAMS.DOC hoc Internet trn trang
http://sunsite.unc.edu/mdw/HOWTO/BootPrompt-HOWTO.html v
http://rsphy1.anu.edu/~gpg109/BootPrompt-HOWTO.html.
Chng 3
Khi ng Linux ln u
Vn s khi u nan Trung Quc
Sau khi ci t rt c th bn c s khng bit bc tip theo phi lm g. Bt my tnh ln, i
h thng khi ng xong v ... ngi nhn. Phi lm g c th tip tc lm vic vi h thng Linux?
Sau khi lm vic xong th tt my th no? C nhng chng trnh no nn bit? Trong khi lm vic
c vn ny sinh th tm cu tr li u? Trong chng ny chng ta s tm thy cu tr li cho
nhng cu hi trn.
3.1
Khi ng HH Linux
44
Khi ng Linux ln u
3.2
ng nhp vo h thng
Trong nhng bn phn phi Linux mi, v d SuSE Linux, c s dng mn hnh flash. Do
c th bn c s khng thy nhng thng bo ny. Trong trng hp , hy nhn phm tng
ng chuyn v mn hnh khi ng bnh thng. Phm ny thng l <Esc>.
45
[root@ThinhQuyen /root]#
Dng ny c gi l du nhc. Xut hin du nhc c ngha l h thng
sn sng tip nhn v thc hin cu lnh ca ngi dng. thi im ny n c
ngha l bn ng nhp vo h thng mt cch thnh cng. Trong MS-DOS
v Windows(TM) mn hnh en v du nhc h thng thng c gi l ch
dng lnh. Chng ta s gi ch ny l vn bn phn bit vi ch ho
ca h thng X Window.
Trong v d a ra trn du nhc gm tn ngi dng (root), tn h thng
(ThinhQuyen) v th mc hin thi (/root). Sau ny bn c th thay i dng
ca du nhc ny. Trong tt c cc v d tip theo chng ta s s dng du nhc
ch gm c tn ngi dng.
Trc khi ngh bn c nhp vo cu lnh u tin, cn ni rng trn bt
k h thng UNIX no kiu ch cng u ng vai tr quan trng, tc l c phn
bit ch hoa v ch thng. V th cn nhp vo tt c cc cu lnh cng nh
tham s ca chng nh ch ra trong v d, k c kiu ch. Cu lnh u tin
chng ta s nhp vo l useradd. Sau tn ca cu lnh cn khong trng v sau
l tn ngi dng, v d, nhimlui:
[root]# useradd nhimlui
Ngay sau khi nhn phm <Enter> chy lnh ny, trn h thng s bit
rng ngi dng nhimlui tn ti (chng ta ni, m ti khon cho ngi dng
nhimlui). Tuy nhin vn cha th vo h thng (thng ni, ng nhp) di
tn ngi dng ny. h thng cho php ngi dng mi nhimlui lm vic,
cn phi to thm cho ngi dng ny mt khu bng cu lnh:
[root]# passwd nhimlui
S xut hin dng:
Changing password for nhimlui.
New Password:
Hy nhp vo mt khu. Sau khi nhp xong, cng nhn phm <Enter>, h thng
s hi nhp mt khu mt ln na kim tra.
Reenter New Password:
ng ngc nhin, bn s khng nhn thy mt khu vo v h thng s khng
hin th g ra, k c du sao * nh thng thy. Nu bn nhp ng tt c,
th s xut hin thng bo thnh cng dng:
Password changed.
v s li xut hin du nhc ca h thng. Nu nhp vo mt khu khng tt
(mt khu qu ngn hoc qu n gin), th s xut hin dng cnh bo (dng
Bad password: too short), nhng h thng vn tip nhn mt khu v cho
php ngi dng mi ng nhp vo h thng.
46
Khi ng Linux ln u
3.3
47
48
Khi ng Linux ln u
49
3.4
50
Khi ng Linux ln u
<Esc>+<T>
<Ctrl>+<K>
<Ctrl>+<U>
<Esc>+<D>
<Esc>+<Del>
<Ctrl>+<W>
<Ctrl>+<Y>
<Esc>+<C>
<Esc>+<U>
<Esc>+<L>
<Shift>+<PgUp>,
<Shift>+<PgDown>
<Ctrl>+<C>
<Ctrl>+<D>
Phn ng ca h thng
Di chuyn sang phi mt k t (trong khun kh nhng k
t nhp cng thm mt k t s nhp).
Di chuyn sang tri mt k t.
Di chuyn sang phi mt t.
Di chuyn sang tri mt t.
Di chuyn v u dng lnh.
Di chuyn v cui dng lnh.
Xa k t nm ti v tr con tr.
Xa k t nm bn tri con tr.
Bt u thc hin cu lnh.
Dn mn hnh v a dng lnh hin thi ln dng u tin.
i ch hai k t: k t nm ti v tr con tr v k t nm
bn tri con tr, sau di chuyn con tr sang phi mt k
t.
i ch hai t: t nm ti v tr con tr v t nm bn tri
con tr.
Ct phn dng lnh bt u t k t nm ti v tr con tr
n cui dng (phn dng lnh ct ra c lu trong b m
v c th t vo v tr khc).
Ct phn dng lnh bt u t k t nm bn tri con tr
n u dng (phn dng lnh ct ra c lu tron b m
v c th t vo v tr khc).
Ct phn dng lnh bt u t v tr con tr n cui t (nu
ti v tr con tr l du cch th ct ton b t nm bn phi
n).
Ct phn dng lnh bt u t v tr con tr n u t (nu
ti v tr con tr l du cch th ct ton b t nm bn tri
n).
Ct phn dng lnh bt u t v tr con tr n du cch
bn tri.
t (dn) on dng lnh ct cui cng vo v tr con tr.
Chuyn k t ti v tr con tr thnh vit hoa ri di chuyn
con tr ti du cch u tin bn phi so vi t hin thi.
Chuyn tt c cc k t bt u t v tr con tr thnh vit
HOA ri di chuyn con tr ti du cch u tin bn phi.
Chuyn tt c cc k t bt u t v tr con tr ti cui t
thnh vit thng ri di chuyn con tr ti du cch u
tin bn phi.
Nhng t hp phm ny cho php xem cc trang mn hnh
hin th. S lng nhng trang ny ph thuc vo b nh
ca cc mn hnh. C ch khi c cu lnh no a ra mn
hnh rt nhiu thng tin chy nhanh qua mn hnh, ngi
dng khng kp thy chng.
Dng thc hin cu lnh va chy (m vn ang chy).
Thot ra khi h v bash.
51
3.5
environment variable
52
Khi ng Linux ln u
Cng c th cu hnh nhng ngi dng khc thc hin c shutdown, v d qua sudo.
53
3.6
3.6.1
54
3.6.2
Khi ng Linux ln u
Ni dung
Cc tp tin header (thng nm trong /usr/include)
Chng trnh hoc cu lnh ca ngi dng
Cu lnh dng qun tr h thng
Gi h thng6 (hm do nhn cung cp)
Gi th vin7 (chng trnh con, hm trong th vin ca ng dng)
Thit b (tp tin c bit, thng nm trong /dev)
nh dng tp tin v quy c, v d /etc/passwd
Tr chi
Khc (bao gm cc gi macro v quy c, v d man(7), groff(7)
Nhn (kernel routines)
cc lnh Tcl/Tk
55
3.6.3
Cu lnh info
cron l chng trnh chy t ng cc cng vic theo thi gian nh.
56
Khi ng Linux ln u
3.6.4
Cu lnh help
3.6.5
57
3.6.6
Cu lnh xman
y l chng trnh cho php xem cc trang tr gip man khi lm vic giao
din ho (GUI). Vic tm kim v hin th cc trang tr gip c thc hin
bng cch nhn cc nt v trnh n. Cn li (theo thng tin hin th) xman cng
ging nh man.
3.6.7
Cu lnh helptool
3.6.8
Sch v Internet
Tt nhin, hc Linux d dng v n gin nht khi c mt cun sch tt. Trc
tin bn cn c ti liu hng dn i km vi bn phn phi ca mnh. Cc bn
phn phi ln nh Debian, SuSE, Fedora,. . . u c nhng ti liu ny (rt c
th c dch sang ting Vit). Rt tic ngi dch cha c cun sch ting
Vit no v Linux do khng th gii thiu vi bn c. Tt nhin nu bn c
kt ni Internet (by gi khng cn qu xa x) v mt cht ting Anh th c th
tm c cu tr li cho mi cu hi ca mnh. Ti xin a ra mt s a ch sau
lm bc khi u cho bn c trong bin thng tin v b bn ny.
58
Khi ng Linux ln u
4. http://vnoss.net/dokuwiki/doku.php?id=linux:tailieutiengviet
trn trang ny c tng hp tt c nhng ti liu ting Vit v Linux, rt c
th bn s tm thy ti liu v ti mnh cn tm hiu trn trang ny.
5. http://kde-vi.org trang web ca nhm dch giao din KDE sang
ting Vit.
59
Chng 4
Lm quen vi h thng tp tin
ext3fs
By gi bn bit cch khi ng v dng h thng Linux, n lc lm quen vi mt trong
nhng thnh phn chnh v quan trng ca Linux l h thng tp tin. H thng tp tin l cu
trc nh nhn ca h iu hnh c th cung cp cho ngi dng v cc tin trnh ti nguyn ca
h thng dng b nh lu di trn cc a lu1 thng tin: a cng, a t, CD, DVD, v.v. . .
Mi h thng tp tin, ging nh mt ci a n, c hai mt. Mt mt ca n lun quay v pha ngi
dng (hay ni chnh xc hn l quay v pha ng dng), chng ta tm gi n l mt trc. T pha
mt trc ny ngi dng thy h thng tp tin l mt cu trc lgc ca cc th mc v tp tin. Mt
cn li, m ngi dng khng thy, quay v pha chnh bn thn a lu to thnh mt vng bn
trong ca h thng tp tin i vi ngi dng, chng ta tm gi l mt sau. Mt ny ca h thng
tp tin c cu trc khng n gin cht no. V y thc hin cc c ch ghi tp tin ln cc a lu
khc nhau, thc hin vic truy cp (chn thng tin cn thit) v nhiu thao tc khc.
Trong chng hin ti chng ta s xem xt mt quay v pha ngi dng ca h thng tp tin. Mt
cn li s dnh cho mt chng sch sau. Cn ni thm l chng ta s xem xt mt h thng tp
tin c th ext3fs, h thng tp tin c bn ca Linux n thi im hin nay. Cn c nhng h thng
tp tin khc nhng chng ta s cp n chng mun hn.
4.1
Tp tin v tn ca chng
61
l nhng k t sau:
! @ # $ & ~ % * ( ) [ ] { } " \ : ; > < du cch
Nu tn tp tin cha mt trong nhng k t ny (khng khuyn dng nhng
vn c th) th trc n phi t mt du gch cho ngc (\) (iu ny vn ng
trong trng hp c chnh bn thn du gch cho ngc, tc l phi lp li du
ny hai ln). V d:
[user]$ mkdir \\mot\&hai
s to th mc \mot&hai. Cn c th t tn tp tin hoc th mc vi nhng k
t ni trn vo du ngc kp. V d, to th mc c tn mot hai ba chng ta
cn dng cu lnh sau:
[user]$ mkdir "mot hai ba"
v cu lnh
[user]$ mkdir mot hai ba
s to ba th mc: mot, hai v ba.
Lm tng t nh vy i vi nhng k t khc, tc l c th thm chng vo
tn tp tin (th mc) nu a tn vo trong du ngoc kp hoc dng du gch
cho ngc b i ngha c bit ca chng. Tuy nhin tt nht l khng s
dng nhng k t ny k c du cch trong tn tp tin v th mc, bi v c th
gy ra vn cho mt s ng dng khi cn s dng nhng tp tin nh vy v c
khi di chuyn nhng tp tin ln h thng tp tin khc.
i vi du chm th khng phi nh vy. Trong Linux ngi dng thng
t nhiu du chm trong tn ca tp tin, v d xvnkb-0.2.9.tar.gz. Khi ny
khi nim phn m rng tp tin (thng dng trong DOS) khng cn c ngha
g, mc d vn dng phn cui cng ca tn tp tin sau du chm lm k hiu
v cc dng tp tin c bit (.tar.gz dng k hiu cc tp tin nn2 ). Trn
Linux cc tp tin chng trnh v tp tin bnh thng khng phn bit theo phn
m rng ca tn (trong DOS tp tin chng trnh c phn m rng exe) m theo
cc du hiu khc, chng ta s cp n sau. Du chm c ngha c bit
trong tn tp tin. Nu n l du chm u tin trong tn, th tp tin ny s l n
(thuc tnh hidden) i vi mt s cu lnh, v d, lnh ls khng hin th nhng
tp tin nh vy.3
Nh ni chng trc trong Linux c phn bit cc k t vit hoa v vit
thng. iu ny cng ng i vi tn tp tin. V th l4u-0.9.2.tar.gz v
L4U-0.9.2.tar.gz c th nm trong cng mt th mc v l tn ca cc tp
tin khc nhau. iu ny lc u c th gy kh khn cho ngi dng Windows
nhng sau khi quen th bn s thy n tht s c ch.
Chng ta quen vi vic tp tin c xc nh hon ton theo tn ca n.
Tuy nhin nu nhn t pha h iu hnh v h thng tp tin th khng phi
2
3
62
-l
1
2
2
1
teppi82
teppi82
teppi82
teppi82
4.2 Th mc
63
4.2
Th mc
Nu nh cu trc tp tin khng cho php s dng g khc ngoi tn tp tin (tc
l tt c cc tp tin nm trn mt danh sch chung ging nh cc ht ct trn bi
bin) th thm ch c khi khng c gii hn v di ca tn, rt kh c th tm
n tp tin cn thit. Hy tng tng bn c mt danh sch khong vi nghn
tp tin! Xin ng nghi ng, mt h thng Linux hon chnh s c s lng tp tin
cn ln hn th. V th m cc tp tin c t chc vo cc th mc, cc th mc
c th nm trong cc th mc khc, v.v. . . Kt qu l chng ta thu c mt cu
trc th mc c phn bc bt u t mt th mc gc. Mi th mc (con) c th
cha cc tp tin ring l v cc th mc con ca n.
Cu trc phn bc ca th mc thng c minh ho bng cy th mc,
trn mi th mc l mt nt ca cy, cn tp tin l cc l. Trn MS
Windows hoc DOS cu trc th mc nh vy c trn mi a (tc l chng ta
c khng phi mt cy m mt rng th mc) v th mc gc ca mi cu
trc tp tin c nh du bng mt ch ci Latinh (v do c mt s hn
ch). Trn Linux v UNIX ni chung ch c mt cu trc th mc duy nht cho
tt c cc a lu, v th mc gc duy nht ca cu trc ny c k hiu bng
du gch cho /. C th a vo th mc gc ny mt s lng khng hn ch
cc th mc nm trn cc a lu khc nhau (thng ni l gn h thng tp
tin hoc gn a lu).
Tn ca th mc cng c t theo nhng quy nh nh i vi tn tp tin.
V ni chung ngoi cu trc bn trong ca mnh th th mc khng khc g so
vi nhng tp tin thng thng, v d tp tin vn bn (text file).
Tn y ca tp tin (hoc cn gi l ng dn5 n tp tin) l danh sch
tn ca cc th mc bao gm th mc cha tp tin v cc th mc m, bt u
t th mc gc / v kt thc l bn thn tn ca tp tin. Trong ng dn ny
tn ca cc th mc con cch nhau bi du gch cho / dng k hiu th mc
gc nh ni trn. V d /home/teppi82/projects/l4u/ext3fs.tex l
tn y ca tp tin ti ang nhp vo trn my ca mnh.
H v shell lu gi tr ca th mc hin thi, tc l th mc m ngi
dng ang lm vic trong . C mt cu lnh cho bit tn ca th mc hin
thi, l lnh pwd. Ghi ch: nu ni mt cch chnh xc, th th mc hin thi
lun i lin vi mi tin trnh chy (trong c h v shell), v th i khi
chy mt chng trnh no trong shell c th dn n vic thay i th mc
hin thi sau khi chng trnh hon thnh cng vic.
Ngoi th mc hin thi mi ngi dng cn c mt th mc nh (home
directory, phng n dch th mc c nhn c u tin hn, v chng ta s
dng thut ng ny trong cun sch l4u). l th mc trong ngi dng c
ton quyn6 : c th to v xa cc tp tin, thay i quyn truy cp n chng,
v.v. . . Trong cu trc th mc ca Linux nhng th mc c nhn ca ngi dng
thng nm trong th mc /home v thng c tn trng vi tn ng nhp ca
5
6
y l ng dn tuyt i
Ni chnh xc hn l: c ton quyn n khi no root cha thay i chng :).
64
KDE-vi
l4u
manvi
mc
mrtg
others
SuSE
syslinux
Xfce
vim
vnlinux
vnoss
65
-l
1
1
1
1
1
2
1
teppi82
teppi82
teppi82
teppi82
teppi82
teppi82
teppi82
users
users
users
users
users
users
users
81629
98135
783
20778
2013
4096
3267
2006-09-08
2006-09-08
2006-09-08
2006-09-09
2006-09-08
2006-09-08
2006-09-08
22:11
13:54
21:58
02:48
21:34
14:25
23:13
bash.tex
caidat.tex
ChangeLog
ext3fs.tex
gioithieu.tex
images
l4u.tex
4.3
66
Cng dng
Th mc ny gm ch yu cc chng trnh, phn ln trong s
chng cn cho h thng trong thi gian khi ng (hoc trong
ch mt ngi dng khi bo tr h thng). y c lu rt
nhiu nhng cu lnh thng dng ca Linux.
/boot
Gm cc tp tin c nh cn cho khi ng h thng, trong
c nhn (kernel). Tp tin trong th mc ny ch cn trong thi
gian khi ng7 .
/dev
Th mc cc tp tin c bit hoc cc tp tin thit b phn
cng. Chng ta s ni n nhng tp tin ny ngay sau trong
mt phn ring. Bn c c th xem qua man mknod (mknode(1)).
/etc
Th mc ny v cc th mc con ca n lu phn ln nhng
d liu cn cho qu trnh khi ng ban u ca h thng v
lu nhng tp tin cu hnh chnh. V d, trong /etc c tp tin
inittab xc nh cu hnh khi ng, v tp tin ngi dng
passwd. Mt phn cc tp tin cu hnh c th nm trong cc
th mc con ca /usr. Th mc /etc khng c lu cc tp
tin chng trnh (cn t chng trong /bin hoc /sbin. Di
y chng ta s xem xt cng dng ca mt vi(!) th mc con
ca th mc /etc.
/etc/rc.d
Th mc ny lu nhng tp tin s dng trong qu trnh khi
ng h thng. Chng ta s cp chi tit v nhng tp tin
ny v qu trnh khi ng ni ring trong mt vi chng sp
ti.
/etc/skel
Khi to ngi dng mi, th nhng tp tin trong th mc ny
s c sao chp vo th mc c nhn ca ngi dng .
/etc/sysconfig Th mc lu mt vi (khng phi tt c) tp tin cu hnh h
thng.
/etc/X11
Th mc dnh cho cc tp tin cu hnh ca h thng X11 (v
d, xorg.conf).
/home
Thng thng trong th mc ny l cc th mc c nhn ca
ngi dng (tr root).
/lost+found
/mnt
/tmp
/root
/sbin
/proc
67
Cng dng
Th mc ny lu cc th vin chia s ca cc hm m trnh
bin dch C v cc mun (cc driver thit b) cn. Thm ch
nu trn h thng khng c trnh bin dch C no, th cc th
vin chia s vn cn thit, v chng c nhiu chng trnh
s dng. Nhng th vin ny ch np vo b nh khi c nhu
cu thc hin hm no , nh vy cho php gim kch thc
m chng trnh nm trong b nh. Trong trng hp ngc
li th cng mt m lp li nhiu ln trong cc chng trnh
khc nhau.
Th mc ny s dng phc hi h thng tp tin bng lnh
fsck. Nu fsck tm ra tp tin m khng xc nh c th
mc m th n s a tp tin vo th mc /lost+found. V
th mc m b mt, nn tp tin s nhn c tn trng vi ch
s inode ca n.
y l im gn (mount) nhng h thng tp tin gn tm thi.
Nu trn my tnh c ng thi Linux v Windows (DOS) th
th mc ny thng dng gn cc h thng tp tin FAT.
Nu bn thng gn mt vi a lu ng nh a mm, CD,
DVD, a cng ngoi, flash,v.v. . . th c th to trong th mc
ny cc th mc con cho tng a lu.
Th mc dnh cho cc tp tin tm thi. bt k thi im
ny ngi dng root cng c th xa tp tin khi th mc ny
m khng lm nh hng ln n ngi dng khc. Tuy nhin
khng nn xa nhng tp tin trong th mc ny, tr khi khi
bn bit rng tp tin hoc nhm tp tin no ang gy nh
hng n cng vic ca h thng. H thng s t ng dn dp
th mc ny theo nh k, v th khng nn lu y nhng
tp tin m bn c th s cn n.
y l th mc c nhn ca ngi dng cao cp root. Hy ch
l th mc ny khng nm cng ch vi th mc c nhn
ca nhng ngi dng khc (trong /home).
V th mc /bin ch yu lu cc tp tin thc thi (chng trnh
v tin ch ca HH) s dng trong qu trnh khi ng v do
nh qun tr chy. Trong tiu chun FHS c ni rng cn c
trong th mc ny nhng tp tin thc thi s s dng sau khi
gn thnh cng h thng tp tin /usr. t nht trong th mc
ny phi c init, mkswap, swapon, swapoff, halt, reboot,
shutdown, fdisk, fsck.*, mkfs.*, arp, ifconfig, route.
y l im gn h thng tp tin proc cung cp thng tin
v cc tin trnh ang chy, v nhn, v cc thit b tnh,
v.v. . . y l h thng tp tin o. Chi tit bn c th c trong
man 5 proc. Cc tp tin c bit ca th mc ny s dng
nhn v gi d liu n nhn.
68
/usr/bin
/usr/include
/usr/local
Cng dng
Th mc ny rt ln v cu trc ca n nhn chung lp li cu
trc ca th mc gc. Trong cc th mc con ca /usr l tt
c cc ng dng chnh. Theo tiu chun FHS th nn dnh cho
th mc ny mt phn vng ring hoc t hon ton trn a
s dng chung trong mng. Phn vng hoc a thng gn
ch c v trn a (phn vng) l cc tp tin cu hnh cng
nh tp tin thc thi dng chung, cc tp tin ti liu, cc tin
ch h thng v c cc tp tin thm vo (tp tin dng include).
Cc chng trnh (tin ch v ng dng) thng c ngi
dng bnh thng s dng. /usr/bin/X11 l ni thng dng
lu cc chng trnh chy trn X Window. V y cng
thng l lin kt n /usr/X11R6/bin.
Th mc con ny lu m ngun ca cc th vin tiu chun
ca ngn ng C. Ngi dng cn c t nht l quyn c i vi
th mc ny. D trong trng hp no cng ng sa nhng
tp tin trong th mc ny, v chng c cc nh pht trin
h thng kim duyt k cng (khng l bn bit v h thng
tt hn cc nh pht trin).
y thng t cc chng trnh v cc th mc con (ni b)
ch dnh cho my tnh ny, bao gm:
/usr/local/bin. y thng lu nhng chng trnh
ng dng.
/usr/local/doc cc ti liu i km vi chng trnh ng
dng.
/usr/local/lib th vin v tp tin ca cc chng trnh
v h thng ni b.
/usr/local/man cc trang tr gip man.
/usr/local/sbin cc chng trnh dnh cho nh qun
tr.
/usr/local/src m ngun ca cc chng trnh.
/usr/sbin
/usr/lib
69
Cng dng
Th mc ny dng cho tt c cc tp tin d liu dng chung
v c quyn truy cp l ch c. Thng dng chia s gia
cc kin trc khc nhau ca HH, v d i386, Alpha, v PPC
c th dng chung mt th mc /usr/share nm trn mt
phn vng hoc a chia s trn mng. Cn ch l th mc
ny khng dng chia s gia cc HH khc nhau hoc gia
cc phin bn khc nhau ca cng mt HH. Tiu chun FHS
khuyn dng th mc con cho mi chng trnh. Nhng th
mc sau hoc lin kt mm sau phi c trong /usr/share:
man (cc trang tr gip man), misc (nhng gi liu ty theo
kin trc khc nhau). Chng ta xem xt mt vi th mc con
ca th mc ny:
/usr/share/dict cc danh sch t (word list) ca ting
Anh dng cho cc chng trnh kim tra chnh t nh
ispell.
/usr/share/man cc trang tr gip man. Mi phn ca
man nm trong mt th mc con ring trong th mc
ny.
/usr/share/misc ( ni trn).
/usr/src
/usr/tmp
/usr/X11R6
/var
/var/adm
/var/lock
/var/log
70
/var/spool
Cng dng
Cc tp tin bin i trong thi gian thc hin cc chng trnh
khc nhau. Chng lu thng tin v s tin trnh (PID) v ghi
thng tin hin ghi (utmp). Tp tin trong th mc ny thng
c dn sch trong thi gian khi ng Linux.
Tp tin c t vo hng t ca cc chng trnh khc nhau,
v d:
/var/spool/at cc cng vic m at chy.
/var/spool/cron tp tin ca h thng Verb+cron+.
/var/spool/lpd tp tin trong hng i in.
/var/spool/mail tp tin thng th ca ngi dng.
/var/spool/uucp tp tin ca h thng uucp.
/var/tmp
4.4
Cc tp tin tm thi.
Dng tp tin
Trong cc phn trc chng ta xem xt hai dng tp tin l tp tin thng
thng v cc th mc. Nhng trn Linux cn c mt vi dng tp tin na.
Chng ta s lm quen vi chng trong phn ny.
Nh ni, i vi h iu hnh th tp tin ch l mt chui cc byte lin tc.
Nh vy c th dng khi nim tp tin cho cc thit b v cc i tng khc.
iu ny n gin ho s t chc v trao i cc d liu, v c th thc hin ghi
d liu vo tp tin, chuyn d liu ln cc thit b v trao i d liu gia cc
tin trnh bng cch tng t nh nhau. Trong tt c cc trng hp ny s dng
cng mt phng php da trn tng chui cc byte. Do ngoi cc tp tin
thng thng v th mc, nhng thnh phn sau cng c Linux coi l tp tin:
cc tp tin thit b
cc ng (knh) c tn (named pipe)
cc socket (t vi ngha nh t chim)
cc lin kt mm (symlinks).
4.4.1
Cc tp tin thit b
71
72
4.4.2
Cc ng c tn (pipes)
4.4.3
Cc socket
Socket l kt ni gia cc tin trnh, cho php chng giao tip m khng chu
nh hng ca cc tin trnh khc. Ni chung socket v s trao i qua socket
ng vai tr ht sc quan trng trn tt c cc h thng UNIX, trong c Linux:
socket l khi nim then cht ca TCP/IP v nh vy l da trn socket xy
dng ton b Internet. Tuy nhin t pha h thng tp tin socket thc t khng
khc cc ng c tn: ch l cc im cho php ni cc chng trnh vi nhau.
Sau khi to ra kt ni, th trao i c thc hin m khng cn n socket:
d liu do nhn chuyn trc tip t chng trnh ny n chng trnh khc.
Mc d nhng tin trnh khc c th thy cc tp tin socket, nhng nhng
tin trnh khng tham gia vo kt ni hin thi khng th thc hin bt k thao
tc c hay ghi no ln tp tin socket. Trong s nhng h thng s dng socket
cn k n X Window, h thng in v h thng syslog.
4.4.4
Lin kt mm
73
4.5
74
75
x. Bn bit trong s 16 bit ny c dng cho bn ghi v dng tp tin. Ba bit tip
theo xc nh cc tnh cht c bit ca tp tin thc thi (chng ta s ni n mt
cht sau). V cui cng 9 bit cui cng xc nh quyn truy cp n tp tin. 9
bit ny chia thnh ba nhm, mi nhm 3 bit. Ba bit u tin xc nh quyn ca
ch s hu, ba bit tip theo quyn ca nhm s hu, ba bit cui cng quyn
ca nhng ngi dng cn li (tc l tt c nhng ngi dng, tr ch s hu v
nhm s hu tp tin). Khi ny nu bit tng ng c gi tr bng 1, th c quyn
, cn nu bng 0 th quyn b tc mt. dng ch ci th 1 c thay
th bng cc ch ci tng ng (r, w hoc x), cn 0 th hin dng du gch
ngang.
Quyn c r tp tin c ngha l ngi dng c th xem ni dung tp tin bng
cc chng trnh xem khc nhau, v d more, hoc bng cc trnh son tho vn
bn. Nhng khi son tho bn s khng th lu nhng thay i trong tp tin ln
a, nu khng c quyn ghi w vo tp tin ny. Quyn thc thi (ti thch dng
thut ng quyn gi) c ngha l bn c c th np tp tin vo b nh v th
chy m ny ging nh trng hp chng trnh. Tt nhin nu trn thc t tp
tin khng phi l chng trnh (hoc cc script shell, perl, . . . ) th khng th gi
tp tin, nhng ngc li nu tp tin l chng trnh m khng c quyn gi th
cng khng th chy chng trnh .
Nh vy l chng ta bit c trn Linux nhng tp tin no l c th thc
thi. Bn thy khng, phn m rng ca tp tin y khng c lin quan g, tt
c u do tnh cht thc thi t ra, v khc vi cc HH ca Microsoft khng
phi ai cng c quyn gi tp tin.
Nu vn thc hin cu lnh ls -l nhng tham s khng phi l tn tp tin
m l tn th mc th chng ta s thy th mc cng c quyn truy cp v cng
vn nhng ch ci r, w, x ni trn c dng xc nh quyn truy cp n
th mc. V d, nu thc hin cu lnh:
[user]$ ls -l /usr
th s thy dng tng ng vi th mc share nh sau:
drwxr-xr-x 128 root root
76
77
+ thm quyn
tc b quyn
= dng quyn ch ra thay cho quyn c.
ch p l mt trong nhng k t sau:
r quyn c
w quyn ghi
x quyn gi (quyn thc hin.
Sau y l mt s v d s dng cu lnh chmod:
[user]$ chmod a+x tn_tp_tin
thm quyn gi tp tin tn_tp_tin cho mi ngi dng ca h thng.
[user]$ chmod go-rw tn_tp_tin
tc b quyn c v ghi ca mi ngi dng tr ch s hu tp tin.
[user]$ chmod ugo+rwx tn_tp_tin
[user]$ chmod a+rwx tn_tp_tin
cho mi ngi dng quyn c, ghi v gi (thc hin).
[user]$ chmod u=rwx,go=x tn_tp_tin
cho ch s hu c tt c mi quyn (c, ghi, gi), nhng ngi dng cn li ch
c quyn gi (thc hin).
Nu khng ch ra ai c thm quyn truy cp, th s p dng cho tt c mi
ngi dng, tc l c th dng lnh:
[user]$ chmod +x tn_tp_tin
thay cho
[user]$ chmod a+x tn_tp_tin
Phng n s dng th hai ca cu lnh chmod c kh hiu hn mt cht
trong thi gian u s dng Linux, nhng li thng xuyn c cc nh qun
tr cng nh ngi dng c kinh nghim dng. N da trn m ha quyn truy
cp dng s. K t r c m ha bng s 4, w s 2, x s 1. xc nh
quyn ca ngi dng cn cng cc s tng ng li vi nhau. Sau khi thu c
ba gi tr s (cho ch s hu, nhm s hu v nhng ngi dng cn li), chng
ta a ba s ny vo dng lm tham s cho lnh chmod. Chng ta cn t ba s
ny pha sau tn lnh v pha trc tham s th hai (tn tp tin). V d, nu cn
cho ch s hu mi quyn (4+2+1=7), cho nhm s hu quyn c v ghi (4+2=6)
v nhng ngi dng cn li quyn gi (1=1), th dng lnh sau:
78
79
4.6
80
4.6.1
4.6.2
Cu lnh mkdir
4.6.3
Cu lnh cat
81
4.6.4
Cu lnh cp
82
4.6.5
Cu lnh mv
4.6.6
Cu lnh rm v rmdir
4.6.7
83
4.6.8
84
interval
85
tin.
trong du ngoc v chng ta bit rng trong Linux khng c khi nim phn m rng tp
86
4.6.9
Cu lnh split
87
4.6.10
88
4.7
Cc cu lnh lu tr v nn tp tin
89
4.7.1
90
91
th_mc
4.7.2
92
4.7.3
Trong thi gian gn y ngi dng Linux thng s dng thm mt chng
trnh nn na thay th cho gzip chng trnh bzip2. Chng trnh ny
nn mnh hn (c mc nn cao hn, to ra cc tp tin nh hn) v lm vic
nhanh hn. Cc bn phn phi Linux mi c ci t sn chng trnh ny.
93
4.7.4
94
95
4.8
To v gn cc h thng tp tin
96
97
tin c cc vng thng sp cho thng hng, nhng iu l khng nht thit.
Hy xem trang man fs c m t ngn gn v nhng h thng tp tin ny.
98
/media/dvd
auto
noauto,user,sync 0 0
99
100
Chng 5
Bash
Tt g hn tt nc sn ca dao tc ng Vit Nam
Trong phn ny chng ta s cp n vn lm vic vi Linux ch text, hay cn c
gi l console hoc terminal. Nhng ngi dng Linux mi (newbie) thng ngh s chng bao gi
lm vic ch ny, v c giao din ha. Tuy nhin y l mt kin sai lm, bi v rt nhiu
cng vic c th thc hin nhanh v thun tin trong ch ny hn l s dng giao din ha.
V d sao th ch text ca HH Linux khng phi l ch text mt tin trnh ca MS-DOS. V
Linux l HH a tin trnh, nn ngay trong ch text c kh nng lm vic trong vi ca s. V
son tho mt tp tin vn bn khng nht thit phi chy cc trnh son tho ln v chm chp
(c bit trn cc my c cu hnh phn cng thp) ca mi trng ha.
5.1
H v l g?
102
Bash
5.2
Cc k t c bit
103
5.3
5.3.1
Thao tc ;
Mc d ngi dng thng ch nhp trn dng lnh tng cu lnh mt, nhng
cn c th a vo dng lnh ngay lp tc vi cu lnh, v chng s thc hin
ln lt t cu lnh ny n cu lnh khc. lm c iu ny cn s dng
k t c bit - ;. Nu dng k t ny phn chia cc cu lnh, th cu lnh
tip theo s c coi nh tham s ca lnh pha trc. Nh vy, nu nhp vo
dng lnh ci g ging nh sau:
teppi82@teppi:~$ command1 ; command2
th h v u tin s thc hin cu lnh command1, ch cho lnh hon
thnh, sau chy command2, ch lnh hon thnh, sau li a ra dng
nhp lnh v ch cc hnh ng tip theo ca ngi dng.
104
Bash
5.3.2
Thao tc &
5.3.3
Thao tc && v ||
5.4
5.4.1
105
knh thng bo li tiu chun (standard error hay stderr). Qua knh ny
chng trnh a ra thng tin v li.
T u vo tiu chun chng trnh ch c th c, cn hai u ra v knh
thng bo li c chng trnh s dng ch ghi.
Theo mc nh u vo c lin kt1 vi bn phm, cn u ra v knh bo li
hng n terminal ca ngi dng. Ni cch khc, ton b thng tin ca lnh
hay chng trnh m ngi dng chy, v tt c nhng thng bo li, c
a ra ca s terminal. Tuy nhin, chng ta s thy di, c th chuyn hng
thng bo u ra (v d, vo tp tin).
cho thy knh thng bo li tiu chun lm vic nh th no, hy thc
hin cu lnh ls vi mt tham s khng ng, v d dng tham s l mt tn tp
tin khng tn ti. Trong trng hp ny, ls a mt tin nhn bo li ra knh
thng bo li tiu chun. Tuy nhin, i vi ngi dng th trong trng hp ny
knh thng bo li tiu chun khng khc g vi u ra tiu chun, bi v chng
ta cng thy thng bo li trn ca s terminal. Lm vic vi u vo v u
ra tiu chun c minh ha tt nht qua v d cc lnh echo v cat.
5.4.2
Lnh echo
5.4.3
Lnh cat
ging lin kt ha hc
106
Bash
5.5
5.5.1
th mc hin thi
bn cn dng t hp phm <Ctrl>+<Alt>+<F2> chuyn ti ca s terminal ny v ng
nhp trc
3
107
Nh bn thy, > dng chuyn hng d liu ca u ra. Chc nng tng
t i vi u vo c thc hin bi <. V d, c th m s t trong tp tin
ls.txt nh sau (ch , y ch l mt v d minh ha, trn thc t thng s
dng cu lnh n gin hn):
maikhai@fpt:/sw$ wc -w < /home/maikhai/ls.txt
Cch chuyn hng ny thng c s dng trong cc script, cho cc cu
lnh m thng tip nhn (hay ch) d liu vo t bn phm. Trong script dng
t ng ha mt thao tc no , c th a cc thng tin cn thit cho cu
lnh t tp tin: trong tp tin ny ghi sn nhng g cn thc hin lnh .
Bi v cc k hiu <, > v >> lm vic vi cc knh tiu chun (u vo hoc
u ra), chng khng ch c dng theo cc cch quen thuc, thng dng, m
cn c th theo cch khc, l mt hn. V d, cc cu lnh sau l tng ng:
[user]$
[user]$
[user]$
[user]$
Tuy nhin, t chng (khng c mt lnh no, tc l khng c knh tiu chun
no cho lnh) cc k t chuyn hng ny khng th c s dng, nh th
khng th, v d, nhp vo dng lnh sau:
[user]$ file1 > file2
m thu c bn sao ca mt tp tin no . Nhng iu ny khng lm gim
gi tr ca c ch ny, bi v cc knh tiu chun c cho mi cu lnh. Khi ny,
c th chuyn hng khng ch u vo v u ra tiu chun, m cn cc knh
khc. lm c iu ny, cn t trc k hiu chuyn hng s ca knh
mun chuyn. u vo tiu chun stdin c s 0, u ra tiu chun stdout - s 1,
knh thng bo li stderr - s 2. Tc l lnh chuyn hng c dng y nh
sau (xin c nhc li, khong trng cnh > l khng nht thit):
command N > M
Trong , N v M - s ca knh tiu chun (0, 1, v 2) hoc tn tp tin. Trong
mt vi trng hp c s dng cc k hiu <, > v >> m khng ch ra s knh
hay tn tp tin, v vo ch cn thiu s t, theo mc nh, 1 nu dng >, tc l
u ra tiu chun, hoc 0 nu dng <, tc l u vo tiu chun. Nh th, khi
khng c s no ch ra, > s c bin dch l 1 >, cn < s c bin dch l 0 <.
Ngoi vic chuyn hng cc knh tiu chun n gin nh vy, cn c kh
nng khng nhng chuyn hng d liu vo knh ny hay knh khc, m cn
sao chp ni dung ca cc knh tiu chun . K hiu & dng thc hin iu
ny, khi t n (&) trc s ca knh s chuyn d liu n:
command N > &M
108
Bash
5.5.2
S dng |
5.5.3
109
B lc
5.6
Khi nim tham bin trong h v bash tng ng vi khi nim bin s trong cc
ngn ng lp trnh thng thng. Tn gi (hay ID) ca tham bin c th l mt
t bao gm cc k t bng ch ci, ch s, du gch di (ch k t u tin ca
110
Bash
5.6.1
Tham bin chia thnh ba dng: tham bin v tr, tham bin c bit (cc k t
c bit ni trn chnh l tn ca nhng tham bin ny) v cc bin s ca
h v.
Tn (ID) ca tham bin v tr gm mt hay vi ch s (nhng khng c tham
bin v tr 0). Gi tr ca tham bin v tr l cc tham s cho lnh, c a ra
khi chy h v (tham s u tin l gi tr ca tham bin 1, tham s th hai tham bin 2, v.v. . . ). C th dng cu lnh set thay i gi tr ca tham bin
v tr. Gi tr ca cc tham bin ny cng thay i trong khi h v thc hin mt
trong cc hm s (chng ta s xem xt vn ny di).
Cc tham bin c bit khng g khc hn l cc mu, m s thay th (php
th, php hon i) chng c thc hin nh trong bng 5.2:
Cc tham bin c bit, c lit k bng trn, c mt im khc bit l
ch c th nhc n chng, khng th gn cc gi tr cho cc tham bin ny.
Bin mi trng, nhn t pha h v, l cc tham bin c t tn. Gi tr
ca bin mi trng c gn nh thao tc c dng sau:
[user]$ name=value
Trong , name - tn ca bin, cn value - gi tr mun gn cho bin (c th
l mt dng trng). Tn ca bin mi trng ch c th bao gm cc ch s, ch
ci v khng c bt u bi mt ch s. (Tin rng sau khi c on vit v
tham bin v tr th cc bn hiu ti sao mt bin mi trng khng th bt
u bi mt ch s.) Gi tr c th l bt k mt dng vn bn no. Nu gi tr
c cha nhng k t c bit, th cn t n (gi tr) vo du ngoc. Gi tr tt
nhin s khng cha cc du ngoc ny. Nu mt bin mi trng c xc nh,
th cng c th b xa b bng lnh ni tr unset.
Tp hp tt c cc bin ny cng vi cc gi tr gn cho chng gi l mi
trng (enviroment) ca h v. C th xem n (mi trng) nh lnh set khi
khng c tham s (c th cn dng ng ng set | less, nu mi trng
ln, c nhiu bin). xem gi tr ca mt bin mi trng c th, thay v dng
lnh set (khi ny cn tm trong kt qu ca n bin mun xem), c th s dng
lnh echo:
111
112
Bash
5.6.2
Du nhc ca h v
Cm k t
\a
\d
\h
\H
\t
\T
\@
\u
\w
\W
\$
\nnn
\n
\s
\#
\\
\[
\]
\!
113
S ca lnh (s th t ca lnh ang thc hin trong bui lm vic hin thi)
c th khc vi s ca chnh n trong danh sch lch s cc cu lnh, bi v
danh sch cn cha c nhng cu lnh c ghi li trong tp tin lch s.
Sau khi gi tr ca bin c h v c xong, s xy ra s thay th theo cc
quy lut m rng trong bng trn, ng thi cn xy ra s thay th trong tn cc
cu lnh, trong cc biu thc s hc, v s chia t (word splitting). Chng ta s
ni n nhng s thay th ny di.
V d, sau khi thc hin lnh (v trong dng vn bn c khong trng, nn
nht thit phi c du ngoc):
[user/root]$ PS1="[\u@\h \W]\$"
th trong du nhc s c du m ngoc vung, tn ngi dng, k hiu , tn my,
khong trng, tn ca th mc hin thi (khng c ng dn), du ng ngoc
vung, v k hiu $ (nu trn h v ang lm vic ngi dng bnh thng) hay
#(nu h v chy di ngi dng root).
5.6.3
5.6.4
114
Bash
5.6.5
5.6.6
Cu lnh export
5.7
5.7.1
115
5.7.2
116
Bash
5.7.3
5.7.4
Php th cc cu lnh
5.7.5
117
5.7.6
Sau khi thc hin xong cc php th tham bin, th lnh, v th cc biu thc s
hc, h v li phn tch dng lnh mt ln na (nhng dng thu c sau cc
php th ni trn) v thc hin vic phn chia t (word splitting).
Thao tc ny nm ch, h v tm trong dng lnh tt c cc k t phn chia,
xc nh bi bin IFS (xem trn), v nh chia nh dng lnh thnh cc t
ring r trong cc ch tng ng. Nu gi tr ca IFS bng mt dng trng, th
vic phn chia t s khng xy ra.
Nu trong dng lnh khng thc hin php th no trong cc php th k
trn, th phn chia t cng khng xy ra.
5.7.7
Pathname Expansion
118
Bash
Bng 5.4: Cc k t to mu
K t Quy lut thay th
*
Tng ng vi bt k dng k t no, k c dng rng. V d,
v*.txt s c thay th bi vnoss.txt, vnlinux.txt v
vntex.txt (nu cc tp tin ny tn ti), v *.png s tng ng
tt c cc tp tin c phn m rng png (tp tin ha hai chiu).
?
Tng ng bt k mt k t n no. V d, mu file?.txt
s c thay th bi cc tn tp sau file1.txt, file2.txt,
file3.txt, v filea.txt (nu chng tn ti), nhng
file23.txt th khng.
[...]
Tng ng bt k k t no trong s cc k t nm trong du
ngoc vung ny. Cp k t, phn cch nhau bi du tr (-), v
d c-f, biu th mt dy; bt k k t no, theo t in, nm
gia hai k t ny, k c hai k t to ra dy (c v f trong v d)
cng tng ng vi mu. Nu k t u tin trong ngoc vung
l ! hay ^, th mu ( v tr ny) s tng ng tt c cc k t,
khng c ch ra trong ngoc.
5.7.8
Xa cc k t c bit
5.8
5.8.1
119
5.8.2
Biu thc iu kin, s dng trong ton t test, c xy dng trn c s kim
tra thuc tnh tp tin, so snh cc dng v cc so snh s hc thng thng. Biu
thc phc tp hn c to ra t cc thao tc n v kp sau (nhng vin gch
c s):
-a file
ng nu tp tin c tn file tn ti.
-b file
ng nu file tn ti, v l mt tp tin thit b khi (block device) c
bit.
-c file
ng nu file tn ti, v l mt tp tin thit b k t (charater device) c
bit.
-d file
ng nu file tn ti v l mt th mc.
120
Bash
-e file
ng nu tp tin c tn file tn ti.
-f file
ng nu tp tin c tn file tn ti v l mt tp tin thng thng.
-g file
ng nu tp tin c tn file tn ti v c t bit thay i nhm.
-h file hay -L file
ng nu tp tin c tn file tn ti v l lin kt mm (lin kt tng
trng).
-k file
ng nu tp tin c tn file tn ti v c t bit sticky.
-p file
ng nu tp tin c tn file tn ti v l tn ca mt ng (knh FIFO).
-p file
ng nu tp tin c tn file tn ti v l tn ca mt ng (knh FIFO).
-r file
ng nu tp tin c tn file tn ti v c quyn c.
-s file
ng nu tp tin c tn file tn ti v kch thc ln hn khng.
-t fd
ng nu b m t ca tp tin (fd) m v ch ln terminal.
-u file
ng nu tp tin c tn file tn ti v c t bit thay i ngi dng.
-w file
ng nu tp tin c tn file tn ti v c quyn ghi.
-x file
ng nu tp tin c tn file tn ti v c quyn thc thi.
-0 file
ng, nu tp tin c tn file v ch s hu ca n l ngi dng m ID
c hiu lc ch n.
-G file
ng, nu tp tin c tn file tn ti v thuc v nhm, xc nh bi ID
nhm c hiu lc.
-S file
ng, nu tp tin c tn file tn ti v l socket.
-N file
ng, nu tp tin c tn file tn ti v thay i t ln c c cui cng.
121
122
Bash
5.8.3
Ton t case
5.8.4
Ton t select
Ton t select cho php t chc hi thoi vi ngi dng. N c dng sau:
select name [ in word; ] do list; done
Lc u t mu word hnh thnh mt danh sch nhng t tng ng vi mu
ny. Tp hp nhng t ny c a vo knh thng bo li tiu chun, hn na
mi t c i km vi mt s th t. Nu mu word b b qua (khng c trong
ton t select), th s a vo cc tham bin v tr (xem trn) theo mt cch
tng t. Sau , du nhc PS3 c a ra, v h v ch chui nhp vo trn
u vo tiu chun. Nu chui nhp vo c cha s, tng ng vi mt trong cc
s hin ra, th bin name s c gn gi tr bng t i km vi s ny. Nu
nhp vo mt dng rng, th s v t s c hin ra them mt ln na. Nu
nhp vo bt k mt gi tr no khc, th bin name s nhn gi tr bng khng.
Chui m ngi dng nhp vo, c ghi li trong bin REPLY. Danh sch lnh
list c thc hin vi gi tr bin name chn.
Sau y l mt script nh (xin hy g khng du nu console ca bn cha h
tr vic hin th Ting Vit):
123
#!/bin/sh
echo "Bn thch dng OS no?"
select var in "Linux" "Gnu Hurd" "Free BSD" "MacOSX" "Solaris"
"QNX" "Other"; do
break
done
echo "Bn chn $var"
5) Solaris
6) QNX
7) Other
5.8.5
Ton t for
124
Bash
Trn Linux c chng trnh seq, tip nhn hai s nguyn lm tham s, v
a ra chui tt c cc s nm gia hai s ny (cng thm c chng). Nh cu
lnh ny c th s dng for ca bash lm vic nh ton t for trong cc ngn
ng lp trnh thng thng. lm c iu ny ch cn vit vng lp for nh
sau:
for a in $( seq 1 6 ) ; do
cat fu$a
done
Cu lnh (script) ny a ra mn hnh ni dung ca 10 tp tin (nu c): fu1,
..., fu10.
5.8.6
5.8.7
Cc hm s
125
5.8.8
Tham s
5.8.9
Bin ni b (local)
126
Bash
if [ $1 = 0 ]; then
echo 1;
else
{
echo $(( $1 * $( fact $(( $1 -- 1 )) ) ))
};
fi
}
y l hm s giai tha, mt v d ca hm qui. Hy ch n s khai
trin s hc, v php th cc cu lnh.
5.9
5.10
Cu lnh sh
5.10 Cu lnh sh
127
Chng 6
S dng Midnight Commander
Mi th u c vit ra cc nh lp trnh Nga.
Trong chng ny chng ta s hc cch s dng chng trnh Midnight Commander, mt trnh
qun l tp tin mnh. Sau khi c xong chng ny bn c s c th s dng cc t hp phm cng
nh giao din ca Midnight Commander thc hin rt nhiu cng vic c lin quan n h thng
tp tin t nh b n nng nhc. u tin chng ta hy xem xt cch ci t chng trnh ny . . .
6.1
129
6.2
Ngoi ra ngi dch cun sch ny cng dch giao din ca Midnight Commander ra ting
Vit. V th nu mun bn c th s dng giao din ting m ca Midnight Commander.
2
panel
130
6.3 Tr gip
131
Ch mt trong hai bng l hin thi (hot ng). Bng hin thi c thanh
chiu sng tn th mc phn u v thanh chiu sng mt trong nhng dng
ca bng . Tng t, trong shell chy chng trnh Midnight Commander,
th mc hin thi l th mc c hin th trong bng hot ng. Hu ht cc
thao tc c thc hin trong th mc ny. Cc thao tc nh sao chp (<F5>)
hay di chuyn (<F6>) tp tin s dng th mc c hin th trong bng th hai
lm th mc ch n (s sao chp hay di chuyn n th mc ny).
Trong bng hot ng mt dng c chiu sng. Thanh chiu sng c th di
chuyn nh cc phm iu khin vic di chuyn. Chng trnh xem tp tin ni
tr, chng trnh xem li mch nc v chng trnh xem th mc s dng cng
mt m chng trnh iu khin vic di chuyn. V th vic di chuyn s dng
mt b cc t hp phm (nhng trong mi chng trnh con c cc t hp phm
ch p dng trong ni b m thi). Xin a ra mt bng ngn gn lit k cc t
hp phm dng chung iu khin vic di chuyn.
Bng 6.1: Cc t hp phm di chuyn dng chung
Phm
<> hoc <Ctrl>+<P>
<> hoc <Ctrl>+<N>
<Page Up> hoc <Alt>+<V>
<Page Down> hoc <Ctrl>+<V>
<Home>
<End>
6.3
Tr gip
132
Phm
<Tab>
<Alt>+<Tab>
<>
<>
<> hoc <Enter>
<> hoc <L>
<F1>
<N>
<P>
<C>
<F10>, <Esc>
6.4
S dng chut
133
6.5
iu khin cc bng
6.5.1
Dng bng trn hin th danh sch tp tin v th mc con c th thay i qua
cc cu lnh ca thc n m ra khi chn Bng tri (Left) v Bng phi (Right).
Nu bn c mun thay i dng hin th danh sch tp tin, th c th s dng
cu lnh Dng danh sch... (Listing mode...) ca bng (tri hoc phi) tng
ng. C 4 kh nng chn: y (Full), Thu gn (Brief), M rng (Long)
v Ngi dng t xc nh (User).
134
135
136
6.5.2
137
6.5.3
138
Hnh 6.6: Ch cy th mc
chng t ch hin th M rng (long) sang Thu gn hay ch do ngi
dng xc nh.
<Ctrl>+<\>. Hin th danh sch th mc thng dng v chuyn ti th
mc la chn.
<Home> hoc <Alt>+<<>. Chuyn dng chiu sng ti v tr u tin ca
danh sch tp tin.
<End> hoc <Alt>+<>>. Chuyn dng chiu sng ti v tr cui cng ca
danh sch tp tin.
<Alt>+<O>. Nu trong bng hin thi tn th mc c chiu sng, cn
trn bng cn li hin th danh sch tp tin, th bng th hai s chuyn vo
ch hin th cc tp tin ca th mc c chiu sng. Nu trong bng
hin thi dng chiu sng l tn tp tin, th trn bng th hai s hin th
ni dung ca th mc m ca tp tin .
<Ctrl>+<PageUp>, <Ctrl>+<PageDown>. Ch khi mc c chy di knh
giao tc (console) ca Linux: thc hin tng ng vic chuyn (chdir) ti
th mc m (..) hoc ti th mc ang c chiu sng.
<Alt>+<Y>. Chuyn ti th mc ngay trc trong s nhng th mc
xem. Tng ng vi vic nhn chut ln k t < gc trn ca bng.
<Alt>+<U>. Chuyn ti th mc ngay sau trong s nhng th mc xem.
Tng ng vi vic nhn chut ln k t >.
139
6.6
140
141
6.7
Khi thc hin cc thao tc sao chp v di chuyn (hay i tn) tp tin ngi dng
c kh nng thay i tn ca cc tp tin ang sao chp hay di chuyn. thc
142
143
6.8
Khi ngi dng thc hin cc thao tc sao chp, di chuyn hay xa tp tin, Midnight Commander hin th trn mn hnh hp thoi, trong cho bit trn
(nhng) tp tin no s thc hin thao tc v qu trnh thc hin din ra nh
th no. hin th qu trnh lm vic, trn mn hnh hin ra t mt n ba
thanh biu (progress bars). Thanh th nht (file bar) cho bit thc hin (v
d sao chp) c bao nhiu phn ca tp tin hin thi. Thanh th hai (count
bar) cho bit n thi im hin thi thc hin c bao nhiu phn, tnh theo
144
tng ci, ca nhng tp tin nh du. Thanh th ba (bytes bar) cho bit phn
trm dung lng tnh theo byte lm xong. Nu tt i tu chn Thao tc vi
thng tin di dng (xem Cu hnh / Cu hnh...), th hai thanh biu cui
s khng c hin th.
phn di ca hp thoi ny c hai nt. Nhn nt B qua s dn n vic
b qua thao tc vi tp tin ny v tip tc thao tc tp tin sau nu c. Nhn nt
Dng s kt thc thao tc, tt c nhng tp tin cn li s b b qua.
Trong qu trnh thc hin cc thao tc vi tp tin ngi dng c th nhn
thy 3 dng ca s na.
1. Ca s li a ra thng tin v li v ngh ba cch gii quyt. Thng
thng ngi dng chn B qua khng thc hin thao tc vi tp tin
ang c vn , hoc Dng khng thc hin hon ton thao tc a ra.
Phng n th ba l Th li. Chn phng n ny nu ngi dng sa
c li (v d, bng trnh lnh terminal khc).
2. Ca s hi li xut hin khi ngi dng ang thc hin thao tc dn n
vic ghi chn ln tp tin c, tc l trong th mc sao chp hay di chuyn
n c tp tin cng tn. Trong ca s hi li s hin ra thi gian to ra
v kch thc ca tp tin ngun (ang c sao chp hay di chuyn) v ca
tp tin ch (s b hu b nu ghi chn).
Hnh 6.9: Ca s hi li
Di y a ra hai cu hi li 6.9. Cu hi th nht Ghi ln tp tin
ny c ba cch tr li:
ng (nt C)
T chi, khng ghi chn (nt Khng)
Ghi thm ni dung ca tp tin ang sao chp vo cui tp tin c
(nt Thm vo cui)
145
Hnh 6.10: Ca s yu cu
6.9
Dng lnh ca h v
146
trnh tng ng hoc chn chng trnh trong bng hin thi (a dng chiu
sng ln tn tp tin chng trnh), sau g phm <Enter>. Nu ngi dng
nhn phm <Enter> khi dng chiu sng nm trn tn tp tin khng phi l
chng trnh, th Midnight Commander s so snh phn m rng ca tp tin
ny vi phn m rng c trong tp tin cc phn m rng ~/mc.ext. Nu trong
tp tin mc.ext c mt phn nh ch ra thao tc lm vic vi nhng tp tin c
phn m rng nh tp tin chn, th s thc hin nhng cu lnh t trong
phn nh ny. Trc khi chy cc lnh c thc hin nhng s thay th macro n
gin.
Thng thng vic nhp cc cu lnh i hi phi g rt nhiu cc k t, c
bit trong trng hp phi ch ra cc tham s ca cu lnh, trong s c ng
dn y cng vi tn ca tp tin cn lm vic. gip nhp cu lnh d dng
hn trong Midnight Commander c mt vi t hp phm cho php gim s ln g
bn phm trong thi gian nhp v sa i cu lnh trn dng lnh.
<Alt>+<Enter>. Sao chp tn ca tp tin hay th mc ang c chiu sng
vo dng lnh.
<Ctrl>+<Enter>. Cng nh <Alt>+<Enter>.
<Alt>+<Tab>. Thc hin thao tc t ng in thm4 tn tp tin, tn cu
lnh, tn ngi dng hay tn my (ty theo nhng g ngi dng g v
phn no ca cu lnh ang c nhp vo), tc l Midnight Commander
s on nhng k t m ngi dng cn cha nhp vo da trn danh sch
tp tin ca th mc hin thi, danh sch cu lnh, v.v. . . Tuy nhin nu bn
lm vic trong giao din ho, v d trong mi trng KDE th rt c th
s khng dng c t hp phm ny, do mi trng lm vic dng n
cho thao tc khc (trong trng hp KDE th l chuyn gia cc ca s).
Tt nhin bn c th thay i cu hnh ca mi trng lm vic, nhng
l mt cu chuyn khc.
<Ctrl>+<X>, <T>. Sao chp vo dng lnh tn ca cc tp tin c nh
du trong bng hin thi, hoc tn ca tp tin ang c chiu sng nu
khng c tp tin no c nh du.
<Ctrl>+<X>, <Ctrl>+<T>. Sao chp vo dng lnh tn ca cc tp tin c
nh du trong bng khng phi hin thi.
<Ctrl>+<X>,<P>. Sao chp vo dng lnh tn ca th mc hin thi, tc l
tn ca th mc ang c hin th trn bng hin thi.
<Ctrl>+<X>, <Ctrl>+<P>. Sao chp vo dng lnh tn ca th mc ang
hin th trn bng khng phi hin thi.
<Ctrl>+<Q>. Chn nhng k t c chng trnh Midnight Commander
bin dch theo mt cch no (v d k t +).
<Alt>+<P>. Quay ngc li mt cu lnh theo danh sch nhng lnh
chy (lch s lnh).
4
autocompletion
147
6.10
Trnh n Cu lnh
148
<Alt>+<W>
<Ctrl>+<Y>
<Ctrl>+<K>
<Alt>+<P> v <Alt>+<N>
<Ctrl>+<Alt>+<H>
(<Alt>+<Backspace>)
<Alt>+<Tab>
149
150
151
152
153
6.11
154
155
156
157
158
6.12 Kt ni ti my xa
159
6.12
Kt ni ti my xa
6.12.1
Kt ni FTP
160
6.12.2
Kt ni Shell
Ngoi FTP trong cc phin bn mi ca mnh chng trnh Midnight Commander cn h tr giao thc SSH v truyn ti tp tin qua H thng tp tin shell
(file transfer over shell filesystem). H thng tp tin fish l h thng tp tin da
trn mng my tnh, n cho php ngi dng iu khin tp tin trn cc my
xa ging nh khi chng nm trn my ca mnh. s dng tnh nng ny, trn
my xa phi c chy my ch fish hoc c mt h v shell tng thch vi bash.
kt ni ti my xa, bn c th dng cu lnh Kt ni Shell ca trnh
n Bng tri hoc Bng phi tng ng hoc dng cu lnh cd chuyn ti
th mc c bit c tn dng nh sau:
/#sh:[user@]machine[:options]/[remote-dir]
Cc thnh phn user, options v remote-dir l khng bt buc. Nu ngi
dng a ra user, th Midnight Commander s ng nhp vo my xa vi tn
ngi dng , nu khng s dng tn ngi dng ca bn. Cc ty chn options
c th l C nn thng tin truyn ti v rsh dng rsh thay cho ssh. Nu c
thnh phn remote-dir th sau khi kt ni th mc hin thi trn my xa s
l th mc ny.
V d:
6.12 Kt ni ti my xa
161
/#sh:192.168.10.128:r/linux/SuSE
/#sh:people.vnoss.org:C/public/wiki
/#sh:teppi@people.vnoss.org/projects
Tc gi hy vng rng nhng thng tin trong chng ny c th gip bn bt
u lm vic vi chng trnh Midnight Commander. Tuy nhin kh nng ca
chng trnh ny cn rng hn so vi nhng g cp n y. Cc bn c th
c thm tr gip ca chng trnh ny mi khi cn bng phm <F1>.
Ghi ch:
Bn dch ting Vit cho giao din ca Midnight Commander i km vi chng
trnh c th khng phi l bn dch mi nht. Bn lun lun c th ly bn
dch mi nht v t kho CVS ca Midnight Commander (tp tin vi.po trong th
mc po) hoc t http://cvs.savannah.gnu.org/viewcvs/*checkout*/mc/
mc/po/vi.po.
Cch cp nht mt bn dch giao din cho h thng s cp n trong chng ni
v ting Vit trn Linux hoc nu mun bn c th c trong bn tin s 3 VnOSS
c trn http://vnoss.org (tp tin bantin-so3-092006.pdf).
Chng 7
Giao din ho
Mc d Linux l h iu hnh mnh v pht trin, nhng nu ch lm vic qua giao din dng
lnh th Linux tr thnh kh s dng v khng th hp dn c nhiu ngi dng. Ngi dng s
phi nh mt danh sch di cc cu lnh. Do ngay t nhng ngy u pht trin ca Linux c
mt giao din khc thn thin vi ngi dng hn, l giao din ho.
Trong giao din ho ngi dng c th chy cc chng trnh trong cc ca s khc nhau, khng
cn nh danh sch cc cu lnh v c kh nng chy chng bng h thng trnh n (menu), h
thng cc biu tng trn mn hnh, v ngoi ra cn c kh nng s dng chut sp xp khng
gian mn hnh ca mnh. Hin nay cc mi trng lm vic ln nh KDE, GNOME cn c sn
nhng ng dng i km gip ngi dng khng mt nhiu thi gian la chn. Mi th c sn.
Chng ta s xem xt mt trong hai mi trng lm vic ny, KDE, trong mt chng sch ring ngay
sau chng ny.
Trong chng ny chng ta s xem xt cch lm vic ca giao din ho v cch cu hnh n.
cui chng s c m t s lc mt vi mi trng lm vic v cch khi ng vo chng.
7.1
X.Org
7.1 X.Org
163
164
Giao din ho
7.1 X.Org
165
biu tng, thanh cun ln, xung v cc thnh phn khc ca ca s, ng thi
cn cung cp kh nng thay i dng v v tr cc ca s trong qu trnh lm
vic ty theo nhu cu ca ngi dng.
Trnh qun l ca s cn gi cc hm tng ng cho cc chng trnh khch
trong trng hp ngi dng thao tc vi cc ng dng bng bn phm v chut.
Chnh v th khi cu hnh X.org ngoi cc mn hnh cn phi a ra cc tham
s ca chut v bn phm. Trnh qun l mn hnh cn bit cc tham s ca cc
thit b ny thc hin cng vic ca mnh.
Cc mi trng lm vic ho m rng nh KDE, GNOME, Xfce4, CDE,
GNUStep, v.v. . . khng thay th nhng thnh phn k trn ca h thng X Window, m ch m rng v thm vo. V d, KDE thm vo th vin cc hm
ho QT b sung cho Xlib. GNOME s dng th vin GTK+ (by gi l GTK2+).
Chnh th vin ny l nn tng ca chng trnh ho GIMP. Ngoi ra trong
GNOME cn c cc th vin khc nh Imlib cho php m rng cc kh nng ca
h thng ha.
Bi v ch v khch l cc tin trnh ring, nn chng c th chy trn cc
my tnh khc nhau v trao i vi nhau qua mng. V d cc chng trnh ng
dng c th chy trn mt my ch mnh (mainframe), cn hnh nh s hin
th trn mn hnh my tnh c nhn. c im rt mnh ny ca h thng X
Window l mt trong nhng khc bit ca n so vi giao din ho ca cc h
iu hnh dng Windows.
Ngoi ra trn Linux v UNIX ni chung khng c s phn bit r rng gia
cc chng trnh giao din ho v giao din vn bn (dng lnh) nh trong
Windows. i vi h thng th khng c s khc nhau gia chng trnh lm
vic trong ch ho v trong ch bnh thng. Chng trnh cho ch
ho cng c chy nh cc chng trnh bnh thng, tc l t dng lnh,
t chng trnh Midnight Commander, v.v. . . iu kin duy nht cn phi c l
chng trnh ch X phi lm vic. Nu cn chng trnh s t tm n chng
trnh ch X qua TCP/IP ni chung v qua socket ni b khi chng trnh ch v
khch lm vic trn cng mt my. Chng trnh thc hin vic ny bng cch
gi cc hm th vin trong Xlib. Tt c nhng g chng trnh cn bit lm
vic l ni tm chng trnh ch X. Tm kim chng trnh ch X c thc
hin qua bin mi trng DISPLAY hoc qua ty chn trn dng lnh. Ngoi
ra cn c nhng chng trnh c th lm vi c chng trnh ch X v vi c
terminal thng thng. V d chng trnh son vn bn emacs t ng chn
ch lm vic ( ho hay vn bn) khi khi ng.
Tt nhin nhng g a ra trong hnh 7.1 ch l tng i. V d chng ta
ni rng trao i gia th vin Xlib vi chng trnh ch X trong trng
hp chung c thc hin qua giao thc TCP/IP. Nh vy l trong hnh v b
qua nhng chng trnh ng dng ca giao thc TCP/IP. V cn mt ti nguyn
quan trng khc ca h thng ho l phng ch. Chng trnh ch X c
th thao tc vi phng ch mt cch trc tip, hoc c mt chng trnh khc
chuyn dng cho vic ny (c gi l chng trnh ch phng ch), v cng cn
phi thm vo hnh v trn.
X.org c mt chng trnh ch X cho phn ln cc mn hnh. Chng trnh
ny c gi l xorg v nm trong th mc /usr/X11R6/bin. Thng thng c
mt lin kt n chng trnh ch ny vi tn X, do c th chy chng trnh
166
Giao din ho
ch X bng cu lnh:
[user]$ X
Trnh qun l ca s th c rt nhiu, bn c c th chn bt k chng trnh
no trong s chng. La chn trnh qun l ca s no ph thuc nhiu vo cu
hnh my tnh ca bn (my mnh hay yu, cc mn hnh c nhiu b nh
hay khng), v yu cu cng vic. Xin a ra y mt vi v d trnh qun l ca
s thng dng:
IceWM (http://www.icewm.org) trnh qun l ca s nh nh v lm
vic rt nhanh. Trnh qun l ca s ny ang c rt nhiu ngi dng
c kinh nghim a chung.
Fluxbox (http://www.fluxbox.org) mt trnh qun l ca s gn nh
khc, lm vic tng i nhanh v cng c ngi dng c kinh nghim
a chung. Chnh trnh qun l ca s ny c dng trn nhiu bn phn
phi Linux dng LiveCD (Linux sng v lm vic trn CD) nh: Damn
Small Linux, Insert.
WindowMaker (http://www.windowmaker.org) trnh qun l ca s
gn nh nhiu mu sc v mm do trong cu hnh k tha ca AfterStep.
Mt c im th v ca WindowMaker l cc trnh nh applet thc
hin nhiu chc nng khc nhau: theo di h thng, theo di mng, ng
h, v.v. . . Nu mun v c s h tr th bn c th s dng nhng trnh nh
applet ny trong cc trnh qun l ca s khc nh Fluxbox.
enlightment (http://www.enlightment.org) trnh qun l ca s p
nht hin nay, c rt nhiu ty chn cu hnh bn c th thay i.
fvwm2 (Free Virtual Window Manager 2) phin bn nng cp ca trnh
qun l ca s fvwm cho php s dng cc sc thi (theme) khc nhau v
trnh n ng. Trang ch ca FVWM v FVWM2 nm ti a ch http:
//fvwm.org/.
Cc trnh qun l ca s khc nhau c th cho ra dng ca s khc nhau bng
cch s dng cc khung v trnh n ca s khc nhau. Nhng tt c chng u
s dng cng mt tin ch ho c s ca X Window, l chng trnh ch X.
Nh vy l bn c bit c giao din ho trn Linux c to ra t
nhng thnh phn g. Nh bn thy giao din ho trn Linux c to ra theo
nguyn tc mun, v c th t xy dng nhiu kiu giao din ho t cc
thnh phn khc nhau. Nhng i vi ngi dng mi (v rt mi) th y khng
phi l cch d nht. Rt may l khng nht thit phi chn cch ny, v c
trn tt c cc bn phn phi ln cc mi trng lm vic ho. Ni ting nht
trong s cc mi trng ho ny cn k n KDE (http://www.kde.org)
m chng ta s nghin cu su hn trong chng sch tip theo v GNOME
(http://www.gnome.org). Ngoi ra cng cn ni n mi trng lm vic
ho gn nh hn v cng chim c s yu mn ca rt nhiu ngi dng, l
Xfce4 (http://www.xfce.org). Tt c nhng mi trng lm vic ho ny
167
7.2
168
Giao din ho
169
7.3
170
Giao din ho
trnh. Hy vng rng nhng thng tin di y gip bn cu hnh thnh cng
giao din ho, hoc n gin l gip bn hiu hn v giao din ny v cch
cu hnh n nu bn c mt h thng X Window lm vic tt. Nhng xin
bn hy lun nh l cun sch bn ang c s dng bn quyn Creative Commons Public License 2.5 (http://creativecommons.org/licenses/by/2.
5/). Tc gi khng chu trch nhim v nhng g s xy ra. Hy cn thn trong
khi lm vic!
7.3.1
7.3.2
171
172
Giao din ho
Version: 7.1
Contact: Marcus Schaefer <sax@suse.de>, 2005
Contact: SaX-User list <https://lists.berlios.de/mailman/listinfo/sax-users>
Automatically generated by [ISaX] (7.1)
Section "Files"
InputDevices "/dev/gpmdata"
InputDevices "/dev/input/mice"
FontPath
"/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/local"
FontPath
"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/Type1"
FontPath
"/usr/X11R6/lib/X11/fonts/URW"
FontPath
"/usr/X11R6/lib/X11/fonts/truetype"
FontPath
"/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/CID"
FontPath
"/opt/kde3/share/fonts"
FontPath
"/usr/local/share/fonts"
EndSection
173
Section "ServerFlags"
Option
"AllowMouseOpenFail" "on"
EndSection
Section "Module"
Load
"dbe"
Load
"type1"
Load
"freetype"
Load
"extmod"
Load
"glx"
Load
"v4l"
EndSection
Section "InputDevice"
Driver
"kbd"
Identifier
"Keyboard[0]"
Option
"Protocol" "Standard"
Option
"XkbLayout" "us"
Option
"XkbModel" "pc104"
Option
"XkbRules" "xfree86"
EndSection
Section "InputDevice"
Driver
"mouse"
Identifier
"Mouse[1]"
Option
"Buttons" "10"
Option
"Device" "/dev/input/mice"
Option
"Name" "Logitech USB Receiver"
Option
"Protocol" "explorerps/2"
Option
"Vendor" "Sysp"
Option
"ZAxisMapping" "4 5"
EndSection
Section "Monitor"
DisplaySize 345 259
HorizSync
30-96
Identifier
"Monitor[0]"
ModelName
"SYNCMASTER 757NF(T)/707NF/700NF"
Option
"DPMS"
VendorName
"SAMSUNG"
VertRefresh 50-160
UseModes
"Modes[0]"
EndSection
Section "Modes"
Identifier
"Modes[0]"
Modeline
"1280x1024" 167.32 1280 1376 1512 1744 1024 1025 1028 1078
Modeline
"1280x1024" 165.29 1280 1376 1512 1744 1024 1025 1028 1077
Modeline
"1280x1024" 163.41 1280 1376 1512 1744 1024 1025 1028 1077
Modeline
"1024x768" 135.41 1024 1104 1216 1408 768 769 772 822
Modeline
"1024x768" 132.57 1024 1096 1208 1392 768 769 772 821
Modeline
"1024x768" 131.43 1024 1096 1208 1392 768 769 772 821
Modeline
"800x600" 97.59 800 856 944 1088 600 601 604 650
Modeline
"800x600" 96.89 800 856 944 1088 600 601 604 650
Modeline
"800x600" 96.18 800 856 944 1088 600 601 604 650
EndSection
174
Giao din ho
Section "Screen"
DefaultDepth 24
SubSection "Display"
Depth
15
Modes
"1280x1024" "1024x768"
EndSubSection
SubSection "Display"
Depth
16
Modes
"1280x1024" "1024x768"
EndSubSection
SubSection "Display"
Depth
24
Modes
"1280x1024" "1024x768"
EndSubSection
SubSection "Display"
Depth
8
Modes
"1280x1024" "1024x768"
EndSubSection
Device
"Device[0]"
Identifier
"Screen[0]"
Monitor
"Monitor[0]"
EndSection
"800x600"
"800x600"
"800x600"
"800x600"
Section "Device"
BoardName
"GeForce4 MX 440 with AGP8X"
BusID
"1:0:0"
Driver
"nvidia"
Identifier
"Device[0]"
VendorName
"NVidia"
EndSection
Section "ServerLayout"
Identifier
"Layout[all]"
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
Option
"Clone" "off"
Option
"Xinerama" "off"
Screen
"Screen[0]"
EndSection
Section "DRI"
Group
Mode
EndSection
"video"
0660
Section "Extensions"
EndSection
175
Section "tn_ca_phn_ny"
SectionEntry1
SectionEntry2
SectionEntry3
EndSection
176
Giao din ho
"800x600"
"800x600"
"800x600"
"800x600"
color depth
su mu mn hnh thng tnh theo bit v thng nhn cc gi tr 8, 15, 16, 24. Gi tr
ny cng cao th s lng mu c th hin th cng ln v hnh nh cng p. Tuy nhin cc mn
hnh v bn thn mn hnh phi tt c th h tr nhng gi tr su mu ln. su
mu mc nh nm trn dng DefaultDepth.
6
177
30-96
50-160
80
100
hoc:
HorizSync
VertRefresh
80, 90
124, 138
nu mun c thm hai la chn hoc nhiu hn. Tn s cp nht mn hnh theo
chiu ngang HorizSync tnh theo KHz cn tn s cp nht dc VertRefresh
tnh theo Hz. Cn phi xem xt ti liu ca mn hnh a ra nhng gi tr
chnh xc. Nu khng c ti liu ny th hy tm kim trn CD i km hoc trn
trang Web ca nh sn xut.
Phn tip theo l Device m t cc mn hnh ca bn. Trong phn ny quan
trng nht l dng ch ra driver. Trn my ca ti dng ny c dng:
Driver
"nvidia"
178
Giao din ho
giao thc cn li s dng cho chut kt ni qua cng tip ni (cng COM). Nu
chut mi c sn xut th cn c th dng gi tr Auto (t ng xc nh)
y. Khng cn gii thch chc bn cng nhn ra l ty chn Device xc nh
tn tp tin thit b ca chut.
Cui cng, phn Files ca tp tin xorg.conf thng nm u tp tin
ny v xc nh ng dn n cc th mc phng ch. C mt vi cch a ra
nhng th mc ny. Tuy nhin trc khi thm mt th mc phng ch mi cn
kim tra li xem th mc ny c tn ti khng v c phi l th mc phng ch
khng7 . Nu khi chy my ch X khng tm thy mt th mc phng ch no
trong phn Files, th n s a ra cnh bo. y khng phi l li nghim trng
phi dng lm vic, nhng ngi dng cn bit gii quyt nhng trng
hp nh khng tm thy phng ch mong mun.
7.3.3
Th cu hnh /etc/X11/xorg.conf
179
Nh vy:
() c ngha l nhng gi tr tng ng thu c khi th (probe).
(**) c ngha l tham s ly t trong tp tin cu hnh (v d xorg.conf).
(==) c ngha l s dng tham s theo mc nh.
(++) c ngha l tham s ly t dng lnh chy my ch X.
(!!) sau du hiu ny l nhng ch .
(II) sau du hiu ny l nhng thng tin khc nhau.
(WW) sau du hiu ny l nhng cnh bo.
(EE) sau du hiu ny l nhng thng bo li.
(NI) sau du hiu ny l thng bo v nhng tham s cn cha c
pht trin trong X.org.
?? nhng thng tin khng r ngun gc.
Li v cnh bo tm thy trong xprobe.log chng ta s sa bng cch thay
i tham s tng ng trong tp tin /etc/X11/xorg.conf. Nhng tm thi
chng ta s tip tc xem xt xprobe.log va to ra. Trong tp tin ny cn c
mt vi dng thng tin hin th mi quan h gia cc phn trong tp tin cu
hnh:
180
(==)
(**)
(**)
(**)
(**)
(**)
Giao din ho
ServerLayout "Layout[all]"
|-->Screen "Screen[0]" (0)
|
|-->Monitor "Monitor[0]"
|
|-->Device "Device[0]"
|-->Input Device "Keyboard[0]"
|-->Input Device "Mouse[1]"
181
182
Giao din ho
7.4
183
fluxbox
icewm-session
xfce4-session
startkde
gnome-session
184
Giao din ho
185
7.4.1
186
Giao din ho
7.4.2
187
188
Giao din ho
7.4.3
7.4.4
189
Chng 8
Lm vic trong mi trng KDE
8.1
Bt u lm vic vi KDE
8.1.1
ng nhp vo KDE
191
8.1.2
V ngoi ca KDE
192
193
194
8.1.3
Trnh n KMenu
195
8.1.4
196
biu tng trn thanh panel, hoc t dng lnh bng cch g tn chng trnh
l kcontrol. Chng ta s thy mt ca s nh trn hnh 8.7 hin ra. bn
tri l danh sch dng cy ca nhng mun c trong Personal Settings, cn
bn phi l nhng th v nhng ty chn thuc v mun ang c chn bn
tri. Mi mun nm trong mt nhm no . V d, mun Panels nm trong
nhm Desktop. Trong s nhng mun ca Personal Settings chng ta s xem
xt mt vi mun lm v d, nhng mun cn li bn s t t tm hiu khi
s dng KDE, v s lng ca chng ln. Th nht, lm p KDE th thng
thng ti thay i cc ty chn sc thi, tc l thay i nhng mun ca nhm
Appearance & Themes: thay i trc tip sc thi bng Theme Manager,
sau thay i cc biu tng bng Icons, kiu dng bng Style, . . . v cui
cng chn nhng phng ch cho thch hp (Fonts).
Trc khi chn phng ch cn s dng n mun Font Installer nu mun
thm nhng ci mi mi. C th ni y l trnh ci t phng ch vi giao
din ha ca KDE (xem hnh 8.8. Nh vy mun ny lit k nhng phng
c trong th mc c nhn ca bn (thng l ~/.fonts) bn tri, bn
phi l xem phng c chn. Nu mun thm mt phng no th cn nhn
vo nt Add Fonts . . . ri tm n tp tin cha n. Nu mun thm phng
ch cho ton b h thng th hy chuyn vo ch qun tr h thng bng
nt Administrator Mode . . . (khi ny bn cn nhp vo mt khu ca root).
Phng ch cho cc thnh phn khc nhau ca KDE c la chn trong mun
Fonts (hnh 8.9 cho thy phn bn phi ca Personal Settings khi nhn vo
197
198
8.1.5
Thay i v ngoi
199
200
201
8.1.6
Session
202
Screen Saver