Professional Documents
Culture Documents
Trong thi gian bin son ti liu ny, ti tham kho rt nhiu hng dn v Linux ca cc
anh ch em thuc khi Kosen Vietnam ti trang www.vcsj.net v tham kho kin ca mt
s ngi c chuyn mn v Linux trang www.vnlinux.org. Xin cm n nhng ngi sau y:
Bi Minh Trng, L Hong Nam, L Hu Hong Qun, Nguyn V Hng, Trn Trung Thnh, L
Hi on, Hn Th Thnh, Larry Nguyn, Nguyn i Qu, Lai Hoi Trit, Nguyn Tn Khoa, o
Hi Lm, K Anh, Phm Kim Long, H. Okumura, v nhng ngi khc.
y l mt ti liu min ph. Bn hon ton c th phn phi n li cho nhng ngi s dng
khc hoc c th chnh sa cho ph hp nhng phi tun theo nhng yu cu trong giy php bn
quyn GNU (phin bn 2 hay cc phin bn khc).
Ti liu ny c pht hnh vi hy vng rng n s tr nn hu ch, nhng n KHNG KM
THEO BT K S BO M NO, ngay c nhng m bo ngm hiu v vic thng mi
ho hay phi ph hp vi mt ch c th no (vn ny bn c th tham kho giy php GNU
General Public License bit thm chi tit).
Thng thng, bn s nhn c mt bn sao ca giy php GNU General Public License km
theo ti liu ny; nu cha c, bn c th vit th n a ch sau Free Software Foundation, Inc., 675
Mass Ave, Cambridge, MA 02139, USA. c mt bn giy php.
http://www.QuanTriMang.com
Mc lc
1 Gii thiu chung 3
1.1 Mt s phin bn Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Ci t Fedora Core 2 5
2.1 Yu cu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Chun b . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Ci t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Lm quen 7
4 Ni mng 9
5 Cp nht 10
5.1 RPM Package Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6 S dng 11
6.1 Ci thm fonts ting Vit v Unicode . . . . . . . . . . . . . . . . . . . . . . . . 11
6.2 Nhp ting Vit bng X-Unikey . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
6.3 Duyt web bng Mozilla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
6.4 Lin lc bng Gaim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6.5 Nghe nhc mp3 bng xmms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.6 Xem video bng xine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.7 S dng b Open Office . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.8 Son tho vn bn bng Emacs/Vim/gEdit . . . . . . . . . . . . . . . . . . . . 14
6.8.1 Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.8.2 Vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6.8.3 gEdit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6.9 ho bng Gimp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.10 To nh vector bng tgif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.11 V biu bng gnuplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.12 Xem file pdf bng Acrobat Reader . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.13 Lp trnh C/C++ bng gcc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6.13.1 C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.13.2 C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.14 Lp trnh Java bng Sun J2SDK . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2
http://www.QuanTriMang.com
1 Gii thiu chung
Linux l mt h iu hnh. V mt nguyn tc h iu hnh cng l mt ng dng my tnh;
nhng y l mt ng dng c bit c dng qun l, iu phi cc ti nguyn ca
h thng (bao gm c phn cng v cc phn mm khc). Linux c pht trin bi Linus
Torvalds, da trn h iu hnh Minix - mt h iu hnh c cu trc tng t Unix vi cc
chc nng ti thiu c dng trong dy hc.
Linux l mt h iu hnh vi cc kh nng a nhim, a tc v, a ngi dng. Sau hn
mi nm pht trin, Linux chng t l mt h iu hnh uyn chuyn (c th hot ng
trn nhiu loi phn cng), ng tin cy v n nh. Hin nay, Linux tr thnh h iu hnh
vi m ngun m v min ph di bn quyn ca t chc GNU (Gnus Not Unix). Linux ang
l e do ln nht i vi Microsoft Windows khi rt nhiu cc t chc chnh ph v x nghip
trn th gii tuyn b on tuyt vi Windows chuyn sang dng Linux.
H iu hnh Linux c dng trong hu ht h thng my ch ca cc trng i hc,
cao ng Nht Bn. y chng ti ch gii thiu v Linux v nhng thao tc c bn nht
lin quan n h iu hnh ny.
Ti liu ny nm trong khun kh d n Xo m Linux, dnh cho i tng l cc sinh
vin Vit Nam ang hc ting Nht ti Tokyo chun b v trng hc chuyn mn.
WhiteBox Linux Bn clone ca Redhat Enterprise Linux 3.0. Build trn source code ca
RHEL bi mt nhm cc k s LA, Hoa K. Hin nay server Nhatban.NET ang dng bn
ny.
Turbo Linux Ni ting Nht, Trung Quc. Cng ty Turbo ang u t mnh nhm thng
tr th trng Linux Trung Quc. Bn Turbo mi nht hin nay l 10F
3
http://www.QuanTriMang.com
Debian Linux Mt ng ln na trong lng Linux. Nhiu ngi c kin cho rng: ngi
khng chuyn nn dng Fedora Core c th lm quen c vi nhng k thut mi nht
ca Linux, cn dn chuyn nghip nn dng Debian v s n nh tuyt vi ca n. Bn mi
nht: 3.0R2
Knoppix Linux Made in Germany. Bn live Linux c a chung nht hin nay. Khi ng
trc tip t CD m khng cn ci t vo cng. Phin bn mi nht l 3.4
Vietkey Linux Made in Vietnam. Hon ton khng c ting tm g ngoi chuyn c gii
trong cuc thi TTVN 2003. Pht trin bi nhm Vietkey trn nn Redhat 7.2. Cng nn th
cho bit sn phm ot gii nht ca TTVN n ra sao.
4
http://www.QuanTriMang.com
2 Ci t Fedora Core 2
2.1 Yu cu
c th thc hin ht nhng g ghi trong bn hng dn ny, h thng ca bn cn tho
mn nhng yu cu sau:
2.2 Chun b
Trc khi ci t, cn chun b nhng th sau:
2.3 Ci t
Phn ny khng trnh by th li bo khng chu o, trnh by k qu th s b ni l ri hi.
Tc l ci t FC2 d nh n kem y, c theo ch dn trn mn hnh l xong! Th ny nh:
5
http://www.QuanTriMang.com
9. Disk Setup: Mc ny phi lm tht thn trng nu khng ton b cng s b format
ht! Phn a tng ng vi C nguyn. Phn a tng ng vi D th nhn chut
vo ri nhn nt Edit, trong hp Mount Point nhp /data. Lm nh vy sau ny
s dng D chung vi Windows c. Cui cng l ti phn a tng ng vi E. Nhn
chut ln . Nhn nt New. Chn Mount Point l /boot, File System Type l ext3,
Size (MB) l 100. Nhn OK. Nhn nt New mt ln na. File System Type: swap,
Size (MB): 512 (khong gp i RAM). OK. Nhn nt New ln cui. Mount Point: /,
File System Type: ext3, Addition Size Options: Fill to maximum allowable size (dng
ht ton b phn a cn li, c 5000 n 7000 MB). Next.
10. Boot Loader Configuration: C th la chn Windows (DOS) hoc FC2 lm h iu hnh
mc nh khi khi ng my. nguyn Fedora Core. Next
13. Additional Language Support: Chn English (USA) v Japanese. Select the default lan-
guage for the system: English (USA)
15. Set Root Password: Nhp password cho root (root l user c bit, c quyn ti cao i
vi h thng). Next
6
http://www.QuanTriMang.com
3 Lm quen
T y tr i s dng mt account gi nh l penguin, cc bn hy thay th penguin bng
account tht ca mnh.
Nh mc nh, sau khi khi ng vo FC2, bn s gp mn hnh nh di y:
Lm quen vi Terminal
Nhn chut tri vo icon Terminal trn thanh cng c hoc chn t Redhat System Tools
Terminal
7
http://www.QuanTriMang.com
uname -a : hin th tn v phin bn ca h iu hnh
rm -r bin : xo th mc bin
man command_name : c hng dn chi tit v cc lnh, ngha l g man theo sau bi tn
lnh.
Khi nhp tham s l nhng file c tn di, ch vic nhp 1, 2 ch u tin v n phm Tab,
tn file s t ng c hin th. y l tnh nng h tr rt tin li, va trnh c vic
g nhm tn file, va gim c rt nhiu cng g bn phm. V d khi mun copy mt file
c tn l some-file-with-very-long-name.txt thnh file short-file.txt bn ch cn g
cp so v nhn phm Tab, tn file some-file... s t ng c b sung. Bn ch nhp thm
short-file.txt l xong. Th thut ny s pht huy tc dng khi bn thc hin cc phn
hng dn sau.
8
http://www.QuanTriMang.com
4 Ni mng
Khi ci t, bn Lan card (eth0) theo ch Active on Boot v t ng nhn IP do
DHCP server ca ISP (Internet Service Provider) cung cp. Nh vy bn nghim nhin c th
dng c internet m khng cn cu hnh li bt c ci g khc. kim tra xem ni mng
cha, bn dng trnh duyt web Mozilla (nhn vo icon hnh qu a cu trn thanh cng c
hoc chn Redhat Internet Web Browser), m mt trang web no , v d yahoo.com.
Nu m c trang ny ri th bn c th b qua phn Ni mng ny v c tip cc phn
sau.
Phn sau y hng dn cch ni mng qua ng broadband (xDSL) theo giao thc
PPPoE.
2. Khi ng Terminal
7. N hi c mun mnh mun ni mng thng xuyn hay ch ni khi cn thit, chn stay
up continuously bng cch nhp no v Enter
8. Phn DNS: Thng thng ISP DNS l dynamic, nhp server v Enter
9
http://www.QuanTriMang.com
5 Cp nht
Cp nht cc gi (packages) mi nht l vic cn lm ngay. update, cch n gin nht l
dng tin ch yum. Mun bit chi tit v cch dng yum, g man yum.
3. Thc hin lnh yum update chng trnh yum t ng download v ci t nhng gi
mi nht. Khi c hi c ng hay khng th nhn y, Enter
Ch : Sau khi cp nht, bn khi ng li h thng. Trong danh sch ca boot loader (grub)
c th tn ti nhiu loi Linux vi cc phin bn khc nhau. y l kt qu update kernel
(nhn ca h iu hnh) bi yum. Bn hy chn kernel mi nht (c s version cao nht). Sau
khi boot xong bn c th xo b nhng kernel c bng tin ch rpm.
rpm -qa | grep foo : Phi hp gia lnh rpm v lnh grep tm tt c cc gi lin quan
n foo.
10
http://www.QuanTriMang.com
6 S dng
Mun thc hin cc hng dn trong phn ny bn phi c gi XMLinux.tbz, nu cha c,
bn c th download ti http://vcsj.net/xmlinux.tbz. Sau khi download bn gi ny
/home/penguin, tc l ngay di th mc mc nh mi ln khi ng Terminal. Tip n
bn dng lnh tar xvjf xmlinux.tbz gii nn cc files trong gi xmlinux. Gii nn xong bn
cd xmlinux di chuyn vo trong th mc xmlinux. T y cho ti ht phn hng dn s
dng ny, bn thc hin trn /home/penguin/xmlinux
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ su
Password:
[root@vcsj xmlinux]# cp -r vi /usr/share/fonts/
[root@vcsj xmlinux]# fc-cache /usr/share/fonts/vi/
[root@vcsj xmlinux]# exit
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux
[penguin@vcsj xmlinux]$ tar xvjf x-unikey-0.9.1d.tar.bz2
[penguin@vcsj xmlinux]$ cd x-unikey-0.9.1d
[penguin@vcsj x-unikey-0.9.1d]$ ./configure
[penguin@vcsj x-unikey-0.9.1d]$ make
[penguin@vcsj x-unikey-0.9.1d]$ su
Password:
[root@vcsj x-unikey-0.9.1d]# make install
1
http://xvnkb.sourceforge.net
2
http://unikey.sourceforge.net
11
http://www.QuanTriMang.com
[root@vcsj x-unikey-0.9.1d]# exit
exit
[penguin@vcsj x-unikey-0.9.1d]$ cd
[penguin@vcsj penguin]$ cat >> .bashrc
export LANG=en_US.UTF-8
export XMODIFIERS="@im=unikey"
export GTK_IM_MODULE="xim"
[penguin@vcsj penguin]$
12
http://www.QuanTriMang.com
Tip n bn cn ci plugin duyt cc trang c s dng Java Applet hoc Flash. Plugin
cho Java i km vi bn Java 2 SDK hoc Java 2 JRE ca Sun. Mc d ch cn ci Java 2 JRE
l plugin cho Mozilla nhng y ti hng dn bn ci Java 2 SDK v n cn dng cho
vic lp trnh Java sau ny.
Bn c th vo Website ca Sun download bn j2sdk cho Linux hoc s dng lun bn copy
i km vi XMLinux. (Ti thi im 19/7/2004, phin bn mi nht l j2sdk-1_4_2_05)
[penguin@vcsj xmlinux]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ su
Password:
[root@vcsj xmlinux]# mv j2sdk-1_4_2_05-linux-i586.bin /usr/local/
[root@vcsj xmlinux]# cd /usr/local/
[root@vcsj local]# chmod +x j2sdk-1_4_2_05-linux-i586.bin
[root@vcsj local]# ./j2sdk-1_4_2_05-linux-i586.bin
Nhn Enter cho ti khi no cu hi c ng vi license terms hay khng, nhp yes. Sau
J2SDK s c ci vo /usr/local/j2sdk1_4_2_05. Tip theo bn xa j2sdk-1_4_2_05-
linux-i586.bin v to mt ng link ti j2sdk1_4_2_05 bng lnh:
[root@vcsj]# cd /usr/local/java/jre/plugin/i386/ns610/
[root@vcsj local]#ln -s libjavaplugin_oji.so /usr/lib/mozilla-1.6/plugins/
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ su
Password:
[root@vcsj xmlinux]# rpm -ivh flash-plugin-7.0.25-1.i386.rpm
13
http://www.QuanTriMang.com
6.5 Nghe nhc mp3 bng xmms
Xmms l trnh duyt mp3 kh ni ting trn nn X, c cc tnh nng ging nh Winamp trn
Windows. xmms c km theo FC2 nhng do mt s vn v bn quyn, xmms mc nh
khng chi c cc file mp3. Phi sa li cht nh.
Bn c th vo http://tettnang.freshrpms.net/rpm.html?id=296 download gi xmms
mi hoc dng lun bn copy i km vi XMLinux.
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ su
Password:
[root@vcsj xmlinux]# rpm -ivh xmms-mp3-1.2.10-2.2.p.1.fc2.fr.i386.rpm
Khi ng xmms bng lnh xmms&, sau nhn chut phi vo mt vng no trn ca s
xmms, chn Options Preferences. Trong phn Audio I/O Plugins nhn chut vo MPEG
Layer 1/2/3 Placeholder Plugin [lib_rhmp3.so] v g b la chn Enable Plugin ri Apply
Bn c th dng lnh xmms mp3_file m nghe mp3. Cch dng xmms c th xin c
lc b v n khng khc g Winamp trn Windows c.
14
http://www.QuanTriMang.com
Ctrl-h : Hin th tr gip
Ctrl-x u : Undo
6.8.2 Vim
VIM (Vi IMproved) l chng trnh son tho vn bn pht trin t VI, cn VI l chng trnh
son tho c in v truyn thng ca ngi dng UNIX. Ci hay ca Vim l tc khi ng
cc nhanh, trong qu trnh son tho li khng to ra cc bn backup ui ging Emacs.
Tc gi bi ny thng dng Vim trong hu ht cc cng vic son tho.
Cng ging nh Emacs, c rt nhiu hng dn chi tit v cch dng VIM. Bn c th tham
kho bi vit ca Bi Minh Trng4 hoc bi vit ca Hn Th Thnh5 . (Trong gi XMLinux
c km theo bn copy ca vim-intro.pdf)
6.8.3 gEdit
gEdit l trnh son tho vn bn rt tin li trn nn X. Khi ng gEdit bng lnh gedit
hoc chn Redhat Accessories Text Editor. Nh mc nh, gEdit s open v save vn bn
theo bng m Unicode (UTF-8). Mun open hoc save vn bn bng m khc bn lm nh
sau:
1. M gEdit
15
http://www.QuanTriMang.com
3. Trong ca s Save as..., mc Character Coding chn Add or Remove.... T ca s
Character codings chn loi encode t ca s bn tri v Add vo ca s bn phi. Cui
cng nhn OK. Ti thm Western ISO-8859-1 c th save cc file khi son ting Vit
theo cc bng m nh TCVN, VISCII, VPS.
Khi son vn bn vi bng m khc UTF-8, bn cn chn font thch hp. Thay i font bng
cch chn Edit Preferences. Chn Fonts & Colors v la font thch hp t hp Editor font.
V d, khi dng bng m TCVN ti chn font .VnTime, khi dng VISCII ti chn VI Times
hoc UHoi 1.1, khi dng VPS ti chn VPS Cn Sn...
gEdit cn cung cp nhiu plugin nh kim tra chnh t, chn ngn ng, thng k vn bn,
chy command line,... Bn c th s dng cc tnh nng ny bng cch chn Edit Preferences
ri chn tab Plugins, check nhng tnh nng cn thit ri Close. T ln sau c th dng cc
tnh nng trn trong menu Tools.
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ su
Password:
[root@vcsj xmlinux]# rpm -ivh tgif-4.1.43-1.i386.rpm
Khi ng Tgif bng lnh tgif. V hnh xong c th save file dng EPS (Encapsulated
PostScript).
16
http://www.QuanTriMang.com
0.000 0 0
0.001 104 51
0.002 202 101
0.003 298 148
0.0031 290 149
0.004 289 201
0.0041 291 209
0.005 310 250
0.010 311 260
0.020 280 240
3. T prompt ca gnuplot (du >), g splot -x**3 -y, tip theo g splot sin(x)*cos(y),
cui cng l plot sin(x) title Sine Function, tan(x) title Tangent. Bn s
thy c s tin li ca GNUPLOT khi v cc th ton hc kiu z = x3 y,
z = sin x cos y,...
> set title "Force Deflection Data for a Beam and a Column"
> set xlabel "Deflection (meters)"
> set ylabel "Force (kN)"
> set key 0.01,100
> set label "Yield Point" at 0.003,260
> set arrow from 0.0028,250 to 0.003,280
> set xr [0.0:0.022]
> set yr [0:325]
> plot "force.dat" using 1:2 title Column with linespoints , \
"force.dat" using 1:3 title Beam with points
> set terminal postscript eps color
> set output "force.eps"
> replot
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ tar xvzf linux-508.tar.gz
[penguin@vcsj xmlinux]$ su
Password:
[penguin@vcsj xmlinux]# ./INSTALL
17
http://www.QuanTriMang.com
Force Deflection Data for a Beam and a Column
300
Yield Point
250
200
100 Column
Beam
50
0
0 0.005 0.01 0.015 0.02
Deflection (meters)
Nhn Enter mt hi cho ti khi n hi mnh accept hay decline vi cc iu khon s dng,
nhp accept v Enter. N s hi mnh c ng ci vo /usr/local/Acrobat5 hay khng,
ng bng cch nhn Enter.
Tip theo phi ci thm my font ting Nht.
[root@vcsj xmlinux]# tar xvzf jpnfont5x.tar.gz
[root@vcsj xmlinux]# cd JPNKIT/
[root@vcsj JPNKIT]# ./INSTLANG
Khi c hi l c mun Continue installation hay khng th tr li c bng cch nhn Enter.
Tip n nhp accept, Enter chp nhn iu kin s dng. Li nhn Enter tip khi c
hi v ch ci t.
Vn cha xong.
[root@vcsj JPNKIT]# cd ..
[root@vcsj xmlinux]# tar xvzf jpnfont4x.tar.gz
[root@vcsj xmlinux]# cd JPNKIT/
[root@vcsj JPNKIT]# tar xvf LANGJPN.TAR
[root@vcsj JPNKIT]# mv CIDFont/Heisei* /usr/local/Acrobat5/Resource/Font/
Cui cng l to mt ng link ti acrobat tin vic khi ng.
[root@vcsj JPNKIT]# ln -s /usr/local/Acrobat5/bin/acroread /usr/bin/acroread
T nay c th dng Acrobat Reader bng cch g lnh acroread foo.pdf, ngha l dng
Acrobat Reader xem file foo.pdf
18
http://www.QuanTriMang.com
6.13.1 C
Dng Emacs, Vim, hoc gEdit son mt file tn l hello.c nh sau, save vo th mc
~/xmlinux:
#include <stdio.h>
main() {
printf("Xin chao C!\n");
}
[penguin@vcsj xmlinux]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ cc hello.c
[penguin@vcsj xmlinux]$ ./a.out
Xin chao C!
[penguin@vcsj xmlinux]$
6.13.2 C++
Dng Emacs, Vim, hoc gEdit son mt file tn l hello.cpp nh sau, save vo th mc
~/xmlinux:
#include <iostream>
using namespace std;
main() {
cout << "Hello C++!\n";
}
[penguin@vcsj xmlinux]$ cd
[penguin@vcsj penguin]$ cd xmlinux/
[penguin@vcsj xmlinux]$ g++ -o hi hello.cpp
[penguin@vcsj xmlinux]$ ./hi
Hello C++!
[penguin@vcsj xmlinux]$
19
http://www.QuanTriMang.com
6.14 Lp trnh Java bng Sun J2SDK
Java l mt thi thng hin nay! Hu ht cc cng ty sn xut phn mm ca Nht u dng
Java nh mt ngn ng chnh. Bn c th xin c vic lm v IT d dng nu s dng c
Java. Phn ny hng dn nhng thao tc c bn bt u tu luyn th ngn ng hin i
v siu mnh ny.
Trong phn ci plugin cho Mozilla bn ci J2SDK vo th mc /usr/local/java. Bn
cn chnh sa mt cht c th bin dch v chy cc file java. Trc ht cn thm vo bin
mi trng PATH ng dn n bin ca java.
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ su
Password:
[root@vcsj penguin]# cat >> /etc/profile
PATH=/usr/local/java/bin:$PATH
export PATH
Nhp xong dng export PATH bn nhn Ctrl-C kt thc vic bin son file /etc/profile,
tip nhn Ctrl-D tr li lm penguin. Bn thc hin lnh source /etc/profile
phn nh nhng thay i i vi file /etc/profile. kim tra xem Java c c ci t
chun hay khng bn g java -version c kt qu tng t nh sau (vi s version mi
hn):
Tip theo bn chun b mt file tn l Hello.java (ch H vit hoa) v save th mc ~/ (tc
l /home/penguin/)
class Hello {
public static void main (String args[]) {
System.out.println("Hello Java!");
}
}
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ javac Hello.java
[penguin@vcsj penguin]$ java Hello
Hello Java!
[penguin@vcsj penguin]$
20
http://www.QuanTriMang.com
Xem trong th mc hin hnh (bng lnh ls) bn s thy mt file Hello.class c to ra.
chnh l class file ca Java. Bn dng lnh java class_file chy chng trnh (c th
lc b ui .class). Ch thm l tn file (khng c ui .java) phi ging tn class!. V d
nu bn to mt class l Hello th tn file phi l Hello.java.
Khi bin dch, javac (Java Compiler) tham chiu bin mi trng CLASSPATH tm cc
th vin (thc cht l tp hp nhng file *.class c bin dch sn thnh cc gi v c
nn di dng *.jar). v d trn, bn khng tham chiu mt th vin no nn khng cn ch
nh classpath, tuy vy, trong nhng ng dng Java phc tp hn mt cht, CLASSPATH l
khng th thiu. Cch n gin nht l to bin mi trng CLASSPATH tr n cc th vin
(*.jar) i theo J2SDK. Lm nh sau:
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ su
Password:
[root@vcsj penguin]# cat >> /etc/profile
JAVA_HOME=/usr/local/java
CLASSPATH=./:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export JAVA_HOME CLASSPATH
Phn di y hng dn chi tit hn v cch vit package, cch bin dch...
Gi s bn mun vit mt th vin ca ring mnh, tn l mylib.jar trong c 2 lp l
Foo v Bar. Sau bn vit mt ng dng Java tn l Hoge.java tham chiu n th vin
mylib.jar.
Trc tin, ti th mc ~/ to 2 file Foo.java, Bar.java nh sau:
/* List of Foo.java */
package mylib;
/* End of Foo.java */
/* List of Bar.java */
package mylib;
21
http://www.QuanTriMang.com
public class Bar {
int i = 10;
/* End of Bar.java */
Bn bin dch c hai nh sau:
import mylib.*;
public class Hoge {
public static void main (String args[]) {
Foo f = new Foo();
f.display();
Bar b = new Bar();
b.display();
}
}
/* End of Hoge.java */
Bn bin dch file Hoge.java ny nh sau:
[penguin@vcsj penguin]$ cd
[penguin@vcsj penguin]$ javac -classpath mylib.jar Hoge.java
[penguin@vcsj penguin]$ java Hoge
Foo! i = 100
Bar! i = 10
[penguin@vcsj penguin]$
Tht d dng ng khng ? Bn bit cch to cc class, cch to package (library), cch
dng library, cch bin dch, cch thc thi. T y bn c th bt u Java. Vo trang web
ca Sun ti http://sun.com c tutorial. Bn thn tc gi bi vit ny cng mi tr thnh
fan ca Java v hin ang cm ng v nhng g Java lm c. C th hc hi cc lp trnh
vin Java ngi Vit ti http://www.javavietnam.org.
22
http://www.QuanTriMang.com
http://www.QuanTriMang.com.vn