Trường Cao Đẳng Công Nghệ Thông Tin TP.HCM Khoa Công Nghệ Thông Tin
BÀI TẬP THỰC HÀNH HỆ ĐIỀU HÀNH LINUX Đây là tài liệu sử dụng nội bộ được xây dựng bám sát theo chương trình giảng dạy bộ môn hệ điều hành Unix của khoa Công nghệ thông tin. Tài liệu nhằm cung cấp cho sinh viên các dạng bài tập thực hành với mục đích hướng dẫn sinh viên làm quen với các thao tác cơ bản trên môi trường hệ điều hành Linux. Biên soạn bởi: 1. Võ Tấn Dũng
Email:
2. Nguyễn Nam Trung
Email:
Danh mục bài tập
Phần I – Làm quen với hệ điều hành Linux ........................................................................ 2 Phần II – Cài đặt và sử dụng hệ điều hành Linux ............................................................... 4 Phần III – Hệ thống tập tin và quản trị hệ thống tập tin ...................................................... 7 Phần IV – Quản trị người dùng / nhóm và file permission ............................................... 13 Phần V – Cài đặt phần mềm và trình tiện ích .................................................................... 17 Phần VI – Quản lý tiến trình.............................................................................................. 18 Phần VII – Mạng căn bản .................................................................................................. 19 Hướng dẫn định dạng, format ổ cứng trên Linux .............................................................. 20
Phần I – Làm quen với hệ điều hành Linux Bài 1: Tìm hiểu sử dụng Linux 1. Chép hai tập tin nén Linux91.zip và Linux92.zip về máy Windows, tiến hành giải nén chúng vào cùng một thư mục. 2. MởVMWare, Chọn File/Open chỉ đường dẫn đến thư mục chứa 2 tập tin nén vừa mới giải nén. 3. Chỉnh lại RAM máy ảo 128MB. 4. Khởi động máy ảo có hệ điều hành Linux. Username: root Password: family 5. Tự khảo sát các thành phần trong Linux như: thanh taskbar (linux gọi là Panel), màn hình nền, thanh Mênu và các thành phần trong Menu, biểu tượng Root’s Hometrên màn hình nền, tạo biểu tượng chương trình calculator ra màn hình nền, đổi hình cho màn hình nền... 6. Nhấp phải vào màn hình nền của Linux, chọn Terminal, là cửa sổ gõ lệnh giống như cmd trong DOS.
Bài 2: Sử dụng đĩa USB trong máy ảo chạy Linux Bước 1: Gắn đĩa USB vào khe USB của máy thật, chờ cho Windows nhận xong hoàn toàn đĩa USB. Bước 2: Trên menu máy ảo chọn VM/Removable Devices/USB Devices Nếu thấy kế bên USB Devices là chữ Empty thì Linux chưa nhận được USB Nếu thấy kế bên USB Devices có dòng chữ cho biết tên của công ty sản xuất đĩa USB thì nhấp vào nó sao cho xuất hiện dấu check kế bên dòng chữ này. Bước 3: Vào trong hệ điều hành Linux, mở Terminal gõ vào lệnh fdisk –l, nếu thấy có một đĩa mới xuất hiện thì đó chính là đĩa USB. Ghi nhận lại tên thiết bị và hệ
Trang 2
thống file của đĩa USB . Ví dụ tên là /dev/sdb1 (chỉ có 1 partition) và hệ thống file là FAT. Bước 4: Tạo thư mục /mnt/diskUSB, tiến hành mount đĩa USB vào hệ thống Linux như sau: mount
-t
vfat
/dev/sdb1
/mnt/diskUSB
(enter)
Trang 3
Phần II – Cài đặt và sử dụng hệ điều hành Linux Bài 3: Partition và format đĩa cứng trong Linux (máy ảo) Bước 1: Mở VMWare, khoan khởi động Linux. Trên mênu của VMWare, chọn VM/Settings rồi tạo một ổ cứng ảo mới theo chuẩn IDE, dung lượng 2GB. Bước 2: Khởi động Linux, mở Terminal gõ vào lệnh fdisk –l để kiểm tra xem Linux đã thấy đĩa mới chưa (hda). Chuẩn bị chia đĩa này thành 2 partition, mỗi partition 1GB. Partition thứ nhất sẽ format theo hệ thống file ext2, partition thứ 2 sẽ format theo hệ thống file FAT32. Bước 3: Gõ lệnh fdisk /dev/hda (hướng dẫn dùng fdisk xem bên dưới) Tiến hành sử dụng các lệnh con trên để chia đĩa, sao cho: Partition thứ nhất: hda1 có kiểu LinuxNative (83 hexa). Patition thứ hai: hda2 có kiểu FAT32 (b hexa). Bước 4: Dùng lệnh mkfs để format 2 partition mới như sau: mkfs
-t
ext2
/dev/hda1
mkfs
-t
vfat
/dev/hda2
(Vì partition 1 chọn theo kiểu ext2 ~ 83, partition 2 chọn theo kiểu FAT32 ~ b) Bước 5: Tạo 2 thư mục con trong /mmt là disk1 và disk2 Tiến hành mount 2 partition trên vào hệ thống: mount -t
ext2
/dev/hda1
/mnt/disk1
mount -t
vfat
/dev/hda2
/mnt/disk2
Sau đó có thể sử dụng mmt/disk1 và mmt/disk2 như là 2 ổ đĩa logic trong MS-Windows. Sử dụng xong thì lần lượt unmount chúng khỏi hệ thống. Trang 4
Bài 4 : Chia đĩa Chia đĩa bằng lệnh fdisk theo sơ đồ sau (chọn add đĩa ảo loại IDE hoặc SCSI tùy ý): 1GB Primary (ext2 mount vào /mnt/hdd1)
Partition số 1 (primary)
1GB Logical (ext2 mount vào /mnt/hdd5) 1GB Logical (vfat mount vào /mnt/hdd6)
Partition số 2 (extend)
1GB Logical (vfat mount vào /mnt/hdd7)
Bài 5 : Sử dụng các lệnh sau đây, so sánh các kết quả và nhậnxét 1) df -h 2) df -hT 3) df -hTx loại-hệ-thống-file-không-muốn-xem tên-ổ-đĩa Ví dụ: df -hTx ext2 /dev/hda 4) du -hac [tên-thư-mục]
Ví dụ :
du -hac /etc du -hac /etc | more du -hac
Chú ý : cách sử dụng lệnh có more
Bài 6 : Sử dụng gói Linux có giao diện đồ họa Tiến hành đăng nhập và đăng xuất ở chế độ đồ họa (GUI) và chế độ dòng lệnh (Textmode). Sử dụng các lệnh tắt máy và khởi động máy bằng nhiều cách khác nhau. Đọc hiểu về các mức của runlevel rồi dùng lệnh init thực hiện các runlevel. Thực hành về hoàn thiện lệnh (gõ thiếu tên lệnh rồi dùng phím Tab 2 lần) và cách sử dụng lại lệnh cũ (dùng phím mũi tên lên xuống để chọn lại lệnh cũ). Thực hiện một số lệnh đơn giản như ls, cd, cal, date
Trang 5
Sử dụng lệnh man để gọi màn hình trợ giúp lệnh (cách sử dụng các phím để điều khiển và thoát màn hình man) xem trang 45 sách tiếng Anh Fundamentals of Linux.
Bài 7 : Làm bài Exercise trang 17 sách Fundamentals of Linux.
Trang 6
Phần III – Hệ thống tập tin và quản trị hệ thống tập tin Bài 8 : Bài tập về soft link (symbol link) a. Tạo đường dẫn và tập tin như sau: /grandfather/father/son/rootfile.txt. Phải nhập nội dung cho rootfile.txt b. Xây dựng đường dẫn /grandmother/mother/daughter/softfile.txt (trong đó softfile là symbol link đến rootfile.txt). Kiểm tra xem nội dung của softfile.txt có giống rootfile.txt không? c. Dùng lệnh tee –a để nhập thêm nội dung cho softfile.txt. Kiểm tra xem rootfile.txt có thay đổi nội dung không? d. Dùng lệnh tee –a để nhập thêm nội dung cho rootfile.txt. Kiểm tra xem softfile.txt có thay đổi nội dung không? e. Dùng lệnh ls với option thích hợp để kiểm tra tập tin rootfile.txt và softfile.txt có bao nhiêu link, có những permission gì và thuộc quyền sở hữu của user nào. Dùng lệnh diff để so sánh hai tập tin rootfile.txt và softfile.txt, cho nhận xét. f. Trong thư mục daughter, tạo thêm một file softfile2.txt là soft link đến rootfile.txt. Tiến hành xóa file softfile.txt. Sau đó kiểm tra sự tồn tại và nội dung của rootfile.txt, softfile.txt, softfile2.txt. Cho nhận xét. g. Tiến hành xóa file rootfile.txt. Sau đó kiểm tra sự tồn tại và nội dung của rootfile.txt, softfile.txt, softfile2.txt. Cho nhận xét. h. Trong linux có bao nhiêu lệnh cho tạo symbol link?
Bài 9 : Bài tập về hard link (physical link) a. Trong thư mục /abc tạo tập tin rootdoc.txt có nhập nội dung. Trong thư mục /def tạo tập tin harddoc.txt là hard link tới rootdoc.txt. Trong thư mục /hgi tạo tập tin harddoc2.txt là hard link đến rootdoc.txt. b. Thực hiện các công việc tương tự như bài 8 ở trên. Cho nhận xét từng phần như bài 8. Trang 7
Bài 10 : Bài tập về lệnh cat, touch, more, less Lệnh touch dùng để làm gì? Lệnh cat có mấy công dụng. Thực hiện các chức năng của chúng. (xem thêm trang 72 và 78 trong sách “Fundamentals of Linux”). Thực hiện các ví dụ của lệnh more và less (xem thêm trong sách “Fundamentals of Linux” và các sách tham khảo khác).
Bài 11 : Bài tập về wc và sort Hiển thị số lượng các từ trong một file text. Hiển thị số dòng trong một file text. Hiển thị số ký tự trong một file text. Hiển thị danh sách các file trong thư mục /usr/bin và sắp sếp kết quả trả lại theo thứ tự giảm dần / tăng dần. Hiển thị số lượng các file trong một thư mục cụ thể nào đó (ví dụ : /etc). Gợi ý : sử dụng cơ chế ống lệnh (pipe)
Bài 12 : Bài tập về lệnh head, tail Dùng
lệnh
cat
xem
/etc/passwd
rồi
copy
tập
tin
passwd
sang
/mydir/mypasswords.txt Dùng lệnh head cho biết thông tin về 3 user đầu trong mypasswords.txt Dùng lệnh tail cho biết thông tin về 3 user cuối trong mypasswords.txt Lệnh nào trong ba lệnh trên cho ta biết thông tin từ user thứ 4 cho đến hết. Cho biết thông tin của user thứ 4 đến user thứ 15. Sử dụng lệnh wc cho thích hợp để cho biết tổng số user trong mypassword.txt
Trang 8
Bài 13 : Kiểu file 1. Có bao nhiêu cách để xem kiểu file của các tập tin và thư mục con trong một thư mục của linux? Thực hiện các cách đó.
Bài 14 : So sánh và giải thích kết quả khi thực hiện a. cat taptinkhongco && mkdir -p /a1/b1/c1 ; ls / | grep a1 cat taptinkhongco ; mkdir -p /a2/b1/c1 ; ls / | grep a2 b. echo "line1" echo "line1">abc.txt ; echo "line2">abc.txt ; echo "line3">abc.txt echo "line1">abc.txt ; echo "line2">>abc.txt ; echo "line3">>abc.txt c. cat taptinkhongco > abc1.txt cat taptinkhongco 2> abc1.txt
Bài 15 : Không chạy lệnh sau, hãy dự đoán kết quả rồi thực hiện lệnh ls ~
|
tee home.txt
|
cat
Bài 16 : Thực hiện theo thứ tự các yêu cầu sau 1. Chuyển vào thư mục /etc/init.d So sánh và giải thích kết quả của lệnh pwd và pwd -P 2. So sánh và giải thích kết quả khi thực hiện các nhóm lệnh sau: cd
/ && pwd
&& cd -P /etc/init.d
&& pwd && cd
cd
/ && pwd
&& cd -L /etc/init.d
&& pwd && cd ~
3. Chuyển vào thư mục /etc 4. So sánh và giải thích kết quả của các lệnh ls, ls -i, ls -l, ls -a, ls -ila 5. Thực hiện hiển thị kết xuất từng lệnh trên theo từng trang màn hình 6. Các tập tin có mầu white, blue, green, cyan, orange có kiểu gì? 7. Giải thích kết quả khi thực hiện các lệnh mkdir
/a/b/c/d/e/f/g/h
mkdir
/a
/a/b
mkdir
-p
/a/b/c/d/e/f
/a/b/c
Trang 9
Bài 17 : Thực hiện theo thứ tự các yêu cầu sau 1. Login in Linux OS, sau đó sử dụng các lệnh sau : date, pwd, ls, who, su, cal, cat, more, head, tail. 2. Sử dụng lệnh cat để tạo ra file với tên file là : thegioimang.txt. Nhập nội dung file thegioimang.txt như sau : “Chào mừng các bạn đến với diễn đàn Mạng Máy Tính wWw.TheGioiMang.oRg. Nơi giao lưu trao đổi và chia sẻ các kiến thứ Mạng Máy Tính nói riêng và CNTT nói chung . Chúc các bạn thành công và hạnh phúc !!!” 3. Tạo ra cây thư mục như sau : athena |-- class1 |-- class2 | |-- basic_network |-- class3 | |-- Linux |-- class4 | |-- ccna |-- class5 | |-- ccnp |-- class6 |-- mcsa |-- ceh
4. Copy file thegioimang.txt vào trong các thư mục : class1,class2,class3and class4. o Tạo thêm 2 file mới bất kì với nội dung trống (dùng lệnh touch). Sau đó copy nó qua class5 và class6. o Sử dụng lệnh pwd 5. Xóa file thegioimang.txt trong class1, class3 6. Di chuyển ccna qua ccnp và Linux qua ceh 7. Copy nội dung của thư mục ceh vào bên trong thư mục ccnp 8. Tạo ra các liên kết cứng (hard link) và liên kết mềm (symbol link) giữa file thegioimang.txt và các file trống vừa tạo ở trên 9. Xóa các liên kết cứng và liên kết mềm 10. Tổng hợp lại các lệnh và cho nhận xét về các lệnh đó Trang 10
Bài 18 : Tùy chọn –i Tùy chọn (option) –i trong các lệnh cp, mv, rm có ý nghĩa là gì? Thực hiện một số ví dụ để chứng minh các ý nghĩa đó.
Bài 19 : Thực hiện các thao tác sau 1. Cho biết thư mục HOME của mình (user’s home directory) 2. Giả sử đang ở thư mục HOME của bạn, hãy cho biết đường dẫn tương đối để đến thư mục /etc 3. Cho biết lệnh dùng để chuyển sang thư mục /usr/lib 4. Cho biết lệnh dùng để liệt kê tất cả file và thư mục ở thư mục HOME 5. Cho biết lệnh dùng để liệt kê tất cả file và thư mục kể cả thư mục con ở thư mục HOME, xem kết quả này từng trang. 6. Cho biết lệnh tạo alias là lietke tương đương với lệnh “ls –l” 7. Yêu cầu như câu trên nhưng kết quả được lưu vào file home.list 8. Cho biết lệnh dùng để đổi tên file home.list trên thành homelist.txt 9. Cho biết lệnh tạo thư mục linux2002 trong thư mục HOME 10. Cho biết lệnh để copy file homelist.txt ở trên vào thư mục linux2002 11. Cho biết lệnh liệt kê tất cả các file trong thư mục /etc bắt đầu bằng b, k, n 12. Cho biết lệnh liệt kê tất cả các file trong thư mục /etc bắt đầu bằng các ký tự từ m đến t (m-t) 13. Cho biết lệnh liệt kê tất cả các file trong thư mục /etc có ký tự thứ hai là h 14. Cho biết lệnh liệt kê tất cả các file trong thư mục /etc có ký tự kế cuối cùng là a 15. Cho biết lệnh liệt kê tất cả các file trong thư mục /etc bắt đầu bằng ký tự từ a-e và không bắt đầu bằng b, c 16. Cho biết lệnh tạo file “-myfile” trong thư mục HOME dùng touch hoặc cat 17. Cho biết lệnh xoá file “-myfile” đã tạo ở trên
Trang 11
18. Tạo các file “hello ”, “hello?” và “hello*” trong thư mục linux2002. Cho biết lệnh liệt kê quyền truy cập của từng file kể trên (mỗi lệnh chỉ liệt kê cho 1 file) 19. Cho biết lệnh liệt kê nội dung thư mục /boot, kết quả được sắp xếp theo thứ tự ngược (zZ-aA) và lưu kết quả này vào file bootlist.txt trong thư mục HOME 20. Cho biết lệnh in ra các thông tin của user sv trong file /etc/passwd 21. Cho biết lệnh in ra tất cả các dòng trong file /etc/passwd có chứa chuỗi /bin/bash 22. Cho biết lệnh in ra tất cả các dòng trong file /etc/passwd không chứa chuỗi /bin/false 23. Cho biết giá trị số octal tương ứng với các quyền truy cập rwxr-xr-x r-xrwxrw rw-r--r-24. Cho biết lệnh đổi quyền truy cập tất cả các file “.ttf” trong thư mục HOME sao cho chỉ owner có quyền đọc ghi và group có quyền đọc. 25. Tạo một thư mục trong thư mục HOME. Bỏ tất cả quyền thực thi trên thư mục và cd vào thư mục này. Cho biết lỗi xảy ra, từ đó giải thích ý nghĩa quyền thực thi đối với thư mục. 26. Cho biết đường dẫn đầy đủ của lệnh startx và lệnh dùng để lấy thông tin đó 27. Cho biết lệnh để xem 20 dòng cuối của file /etc/services. Tương tự cho 20 dòng đầu. 28. Cho biết lệnh xem các user hiện đang login vào hệ thống 29. Cho biết lệnh tạo archive linux2002.tar.gz với nội dung là toàn bộ thư mục linux2002 trong thư mục HOME 30. Cho biết ý nghĩa và các tuỳ chọn thường dùng của các lệnh sau: clear, cut, uniq, tr, wc, file, du, df, date, cal, dirname, basename, uname, tee, whereis, whatis, locate
Trang 12
Phần IV – Quản trị người dùng / nhóm và file permission Bài 20 : Thực hiện lần lượt các thao tác quản trị người dùng sau 1. Tạo user sv 2. Đặt password cho user sv là 123456 3. Cho biết user sv thuộc group nào (đọc trong file /etc/group) 4. Cho biết home directory của user sv (đọc trong file /etc/passwd) 5. Tạo group hocvien 6. Sửa thông tin cho user sv thuộc group root (group chính) và group hocvien (group Phụ) 7. Sửa ghi chú cho user sv là “Nguyen Van A” 8. Login bằng user sv (sử dụng lệnh logout để thoát khỏi user hiện tại) 9. Sử dụng quyền root, lock account sv 10. Login bằng user sv, cho biết kết quả 11. Unlock account sv, login thử bằng user này 12. Yêu cầu user sv phải thay đổi password trong 7 ngày tới 13. Set thời gian hết hạn cho account sv là ngày 30/09/2008 14. Sửa lại giờ hệ thống: date –s “1 Oct 2008”, login bằng user sv và cho biết kết quả.
Bài 21 : File permission 1. Tạo 2 user là user1 và user2 không có password thuộc cùng nhóm có tên là normal. Đăng nhập vào hệ thống bằng user1. (phải tạo nhóm normal trước khi tạo các user) a. Dùng lệnh umask cho biết mặt nạ của user1? b. Thay đổi mặt nạ của user1 sao cho khi tạo thư mục có quyền ngầm định như sau: Owner: rwx; Group: rw_; Other: r_ _. c. Với mặt nạ trên, khi tạo ra tập tin sẽ có quyền ngầm định là gì? Trang 13
d. Hãy tạo tập tin baitap.txt và thư mục Mydir. Dùng lệnh ls –l để cho biết thông tin chi tiết về tập tin và thư mục vừa tạo, có đúng các quyền (permission) thư mục và tập tin như quy định của mặt nạ không? 2. Thực hiện tiếp theo của câu 1. Đứng từ user1 chuyển tạm sang user2 rồi thực hiện các việc sau trong thư mục Mydir của user1. Chú ý: user2 cùng nhóm normal với user1. a. Tạo tập tin. b. Copy tập tin từ thư mục khác vào Mydir. c. Copy tập tin từ Mydir ra thư mục khác. d. Xóa tập tin trong Mydir. e. Tạo thư mục con trong Mydir. f. Hỏi kết quả như thế nào? Có được hay không? Dùng kiến thức ở Table 8-1 trong sách “Fundamentals of Linux” để giải thích. g. Chuyển trở về user1. 3. Tiếp theo câu 1 và câu 2. Tạo thêm user3 thuộc nhóm normal2. Đăng nhập vào hệ thống bằng user3 hoặc chuyển tạm sang user3 (chuyển tạm khi user hiện hành khác user3), rồi thực hiện các việc sau trong thư mục Mydir của user1. Chú ý: user3 không cùng nhóm với user1. a. Tạo tập tin. b. Copy tập tin từ thư mục khác vào Mydir. c. Copy tập tin từ Mydir ra thư mục khác. d. Xóa tập tin trong Mydir. e. Tạo thư mục con trong Mydir. f. Hỏi kết quả như thế nào? Có được hay không? Dùng kiến thức ở Table 8-1 trong sách “Fundamentals of Linux” để giải thích. 4. Tiếp theo câu 1 và câu 2. Đứng từ user1 chuyển tạm sang root rồi thực hiện các việc sau trong thư mục Mydir. Chú ý: user root không cùng nhóm với user1, nhưng root có quyền quản trị hệ thống. a. Tạo tập tin. Trang 14
b. Copy tập tin từ thư mục khác vào Mydir. c. Copy tập tin từ Mydir ra thư mục khác. d. Xóa tập tin trong Mydir. e. Tạo thư mục con trong Mydir. f. Hỏi kết quả như thế nào? Có được hay không? Dùng kiến thức ở Table 8-1 trong sách “Fundamentals of Linux” để giải thích. g. Chuyển trở về user1. 5. Đăng nhập vào hệ thống bằng user root. Hãy cho biết mặt nạ của user root bằng lệnh umask không có option và có option là S. a. Tạo tập tin fileroot1.txt, fileroot2.txt và thư mục Dirroot trong /root. Cho biết permission của chúng. Dùng lệnh ls liệt kê các permission của chúng ra giấy. b. Chuyển chủ sở hữu và nhóm sở hữu của fileroot.txt và Dirroot sang user1 và nhóm normal (sử dụng lệnh chown và chgrp). Cho biết permission của chúng và so sánh với các quyền đã ghi ra giấy ở câu trên. c. Chuyển tạm từ user root sang user1. Dùng lệnh chmod theo chế độ Symbolic Mode thực hiện các việc sau: Thêm quyền đọc cho nhóm mormal đối với tập tin fileroot1.txt. Cấm quyền đọc cho các user không thuộc nhóm normal. Thêm quyền thực thi cho user1, thêm quyền đọc cho nhóm normal và các user không thuộc nhóm normal. Gán quyền đọc và viết cho mọi người. d. Dùng lệnh chmod theo chế độ Octal Mode thực hiện các công việc như trên đối với tập tin fileroot2.txt. e. Chuyển trở về user root. 6. Tạo user sv1, cho vào group hocvien a. User sv tạo thư mục /tmp/sv
Trang 15
b. Tạo tap tin /tmp/sv/sv.txt, phân quyên 774 cho tập tin này. Giải thích ý nghĩa quyền 774. c. Phân quyền g=r cho thư mục /tmp/sv, hỏi user sv1 có ls nội dung thư mục này được không? Có cd vào thư mục /tmp/sv được không? d. Phân quyền g=rx cho thư mục /tmp/sv, user sv1 có ls nội dung thư mục này được không? e. User sv1 có tạo được tin sv1.txt trong thư mục /tmp/sv được không? f. User sv1 có đọc nội dung của file /tmp/sv/sv.txt được không? g. User sv1 có ghi đè dữ liệu vào file này được không? h. User sv1 có xóa file này được không? i. chmod g=rwx (thêm quyên w) cho thư mục /tmp/sv j. User sv1 có xóa file /tmp/sv/sv.txt được hay không? k. User sv1 có tạo tập tin /tmp/sv/sv1.txt được không? l. Chuyển quyền sở hữu toàn thư mục /tmp/sv cho user sv1. m. User sv tạo tập tin /tmp/test.txt, phân quyền 777 cho tập tin này. User sv1 có xóa tập tin này được hay không? n. Ghi chú về các nhận xét đã rút ra được về file/dir permission.
Trang 16
Phần V – Cài đặt phần mềm và trình tiện ích Bài 22 : Cài đặt phần mềm 1. RPM: a. Cài đặt bộ phần mềm hỗ trợ VMWare Tool b. Chia sẻ dữ liệu giữa Windows và Linux bằng công cụ WinSCP và Putty c. Cho biết các gói rpm đang được cài trên máy, lưu kết quả vào file /root/rpm.txt d. Cài đặt gói phần mềm mc 4.5 bằng rpm e. Cho biết thông tin về gói phần mềm mc này f. Cho biết các file có trong gói phần mềm mc này, lưu kết quả vào file /root/mc.txt g. Cho biết version của trình biên dịch gcc đang được cài trên máy h. Update phiên bản mc lên 4.6 i. Uninstall gói phần mềm mc 2. Source: a. Nén toàn bộ thư mục /root thành file /tmp/root.tar b. Nén toàn bộ thư mục /root thành file /tmp/root.tar.gz c. Nén toàn bộ thư mục /root thành file /tmp/root.tar.bz2 d. Giải nén tập tin root.tar.gz vào thư mục /tmp/test e. Cài đặt phần mềm mc từ source f. Gỡ bỏ phần mềm mc cài từ source
Bài 23 : Làm quen và sử dụng các trình tiện ích trong Linux 1. Làm quen và thao tác với MC (Midnight Commander). 2. Làm quen và thao tác với trình soạn thảo Vi. Chú ý : Xem cách sử dụng và các thao tác trong tài liệu lý thuyết chương 5.
Trang 17
Phần VI – Quản lý tiến trình Bài 24 : Thực hiện lần lượt các thao tác sau 1. Xem danh sách các process đang chạy trên hệ thống bằng ps 2. Xem danh sách các process đang chạy trên hệ thống bằng pstree 3. Xem danh sách các process đang chạy trên hệ thống bằng top 4. Lưu các kết quả của lệnh top vào file /root/top.txt 5. Xem tỉ lệ CPU, RAM hệ thống đang sử dụng, của từng process đang sử dụng 6. In thông tin process đang sử dụng nhiều CPU nhất 7. Đếm số process đang thực thi trên máy 8. Đếm số process của user root đang thực thi trên máy 9. Đếm số process “httpd” của user root đang thực thi trên máy 10. Cho biết có bao nhiêu process đang chạy trong hệ thống (dùng wc –l) 11. Thực thi lệnh in thông tin tất cả các tập tin, thư mục trong hệ thống. Kết quả lưu vào file /root/lietke.txt và in ra màn hình. 12. Chuyển lệnh trên vào chế độ bg 13. Tạm ngừng lệnh trên 14. Cho phép thực thi lại câu lệnh trên 15. Mở 2 cửa sổ console (có thể dùng putty), thực thi cùng lệnh “ls –lR /” với độ ưu tiên lần lượt là -19 và +19, kiểm nghiệm xem lệnh nào sẽ thực thi xong trước. 15. Thực thi câu lệnh tìm kiếm tất cả các file có kích thước >=100Kb với độ ưu tiên -5 16. Tăng độ ưu tiên của câu lệnh trên (renice) 17. Ngắt câu lệnh trên
Trang 18
Phần VII – Mạng căn bản Bài 25 : Cấu hình IP 1. Xây dựng mạng ảo VMNet8 để chuẩn bị cho máy ảo (chạy Linux) và máy thật trở thành hai máy thành viên của mạng VMNet8. a. Tên các card mạng trong Linux lien quan đến file nào. Dùng lệnh ifcofig để kiểm tra. b. Mở tài liệu và vở học tìm phần nói về cách gán địa chỉ IP cho máy Linux. Tiến hành gán địa chỉ IP cho máy Linux và gán địa chỉ IP cho máy thật sao cho cả hai máy có cùng địa chỉ IP với đường mạng VMNet8. c. Dùng lệnh hostname cho biết tên của máy Linux. Sau đó đặt tên cho máy Linux với tên tùy ý. d. Dùng lệnh ifconfig để kiểm tra IP của máy ảo và lệnh ipconfig /all để kiểm tra IP của máy thật. e. Kiểm tra hai máy này thông nhau bằng lệnh ping (ping từ máy thật vào máy ảo và ngược lại). 2. Cấu hình VMWare sao cho máy ảo kết nối với mạng vật lý của phòng thực hành. Cấu hình file eth0 (hoặc eth1 – tùy theo máy ảo Linux) sao cho có thể nhận IP động. Khởi động lại máy ảo Linux rồi kiểm tra địa chỉ IP mà máy ảo Linux nhận được từ DHCP-server của phòng máy thực hành. 3. Thực hiện : a. Trong Linux, có thể gán bao nhiêu địa chỉ IP cho một card mạng. Hãy gán thêm một địa chỉ IP nữa cho card mạng để được hai địa chỉ IP trong một card mạng. b. Hãy xem cú pháp của lệnh gán IP tạm thời trong Linux rồi thực hiện gán IP tạm thời cho 1 card mạng.
Trang 19
Hướng dẫn định dạng, format ổ cứng trên Linux Trên Linux, sử dụng lệnh fdisk để phân chia partition của ổ cứng, mkfs để format, mount để gắn một partition đã format vào một mount point, chỉnh sửa fstab để Linux có thể tự động mount khi boot. Khi thêm một ổ cứng với vào hệ thống, cần dùng lệnh fdisk -l để kiểm tra xem Linux gán cho ổ cứng mới device nào. # fdisk -l Disk /dev/hda: 80.0 GB, 80060424192 bytes 255 heads, 63 sectors/track, 9733 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot /dev/hda1 /dev/hda2
*
/dev/hda3
Start
End
Blocks
Id
System
1
262
2104483+
82
Linux swap / Solaris
263
2873
20972857+
83
Linux
2874
9733
55102950
83
Linux
Id
System
Disk /dev/sda: 40.0 GB, 40007761920 bytes 64 heads, 32 sectors/track, 38154 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot
Start
End
Blocks
#
Trong ví dụ trên, có thể thấy trên máy đang có một harddisk 80GB được gán vào /dev/hda và chia thành 3 partition hda1, hda2, hda3. Harddisk thứ 2 40GB được gán vào /dev/sda, và harddisk này chưa được định dạng. Cần chú ý rằng với một số Hệ điều hành Linux, sẽ quy định khe IDE0 tương ứng với /dev/hda, khe IDE1 tương ứng với /dev/hdb,... Các ổ cứng SCSI, hay USB sẽ được gán vào /dev/sda, /dev/sdb,... Với /dev/sda mới chưa được định dạng nói trên, trước hết ta dùng lệnh fdisk # fdisk /dev/sda The number of cylinders for this disk is set to 38154.
Trang 20
There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): m Command action a
toggle a bootable flag
b
edit bsd disklabel
c
toggle the dos compatibility flag
d
delete a partition
l
list known partition types
m
print this menu
n
add a new partition
o
create a new empty DOS partition table
p
print the partition table
q
quit without saving changes
s
create a new empty Sun disklabel
t
change a partition's system id
u
change display/entry units
v
verify the partition table
w
write table to disk and exit
x
extra functionality (experts only)
Command (m for help):
Sau khi dùng lệnh fdisk /dev/sda, sẽ xuất hiện chế độ gõ lệnh của fdisk, ấn 'm' để đưa ra các hướng dẫn về lệnh của fdisk. Trong ví dụ này, chọn 'n' để thêm một partition mới. Command (m for help): n Command action e
extended
p
primary partition (1-4)
p Partition number (1-4): 1 First cylinder (1-38154, default 1): 1 Last cylinder or +size or +sizeM or +sizeK (1-38154, default 38154): 20480
Trang 21
Command (m for help):
Sau khi chọn 'n', xuất hiện các lựa chọn: lựa chọn 'p' để tạo primary partition – phân vùng có thể boot được, lựa chọn 'e' để tạo một phân vùng extended. Bước này chọn 'p'. Sau khi chọn 'p', chương trình sẽ hỏi Partition number (1-4), gõ số 1. Chương trình sẽ cho phép bạn thay đổi First cylinder và Last cylinder. Chọn First cylinder = 1 và Last cylinder =20480. Fdisk sẽ quay trở lại chế độ gõ lệnh chính của nó. Tại chế đô gõ lệnh chính, dùng 'w' để ghi lại các thông tin nói trên. Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.#
Sau khi chọn 'w', các thông tin sẽ được fdisk ghi lại trên harddisk và fdisk tự động thoát, quay trở lại chế độ gõ lệnh của Linux. Tại đây, gõ lệnh fdisk -l để kiểm tra các thay đổi. # fdisk -l Disk /dev/hda: 80.0 GB, 80060424192 bytes 255 heads, 63 sectors/track, 9733 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot /dev/hda1 /dev/hda2
*
/dev/hda3
Start
End
Blocks
Id
System
1
262
2104483+
82
Linux swap / Solaris
263
2873
20972857+
83
Linux
2874
9733
55102950
83
Linux
Disk /dev/sda: 40.0 GB, 40007761920 bytes 64 heads, 32 sectors/track, 38154 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot /dev/sda1
Start
End
Blocks
Id
System
1
20480
20971504
83
Linux
Trang 22
#
Sau khi gõ lệnh fdisk -l, có thể nhận thấy một partition /dev/sda1 mới được tạo. Để format partition này, sử dụng lệnh mkfs # mkfs.ext3 /dev/sda1 mke2fs 1.38 (30-Jun-2005) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 2621440 inodes, 5242876 blocks 262143 blocks (5.00%) reserved for the super user First data block=0 160 block groups 32768 blocks per group, 32768 fragments per group 16384 inodes per group Superblock backups stored on blocks: 32768,
98304,
163840,
229376,
294912,
819200,
884736,
1605632,
2654208, 4096000 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 25 mounts or 180 days, whichever comes first.
Use tune2fs -c or -i to override.
#
Tuỳ vào dự định của bạn tạo dạng hệ thống file cho /dev/sda1 là ext2, ext3 hay một định dạng khác mà tao sẽ dùng tham số thích hợp. Trong ví dụ trên, ta format /dev/sda1 với ext3. Sau khi format, để sử dụng được /dev/sda1, cần phải mount nó vào một mount point, giả sử mount vào mount point /media/data, ta dùng lệnh sau:
Trang 23
# mount /dev/sda1 /media/data
Để Linux tự động mount /dev/sda1 vào mount point nói trên, cần phải thêm vào file /etc/fstab dòng sau: /dev/sda1 /media/data ext3 defaults 0 0. Ví dụ file /etc/fstab # /etc/fstab /dev/hda2
/
reiserfs
acl,user_xattr 1 1
/dev/hda3
/home
reiserfs
acl,user_xattr 1 2
/dev/hda1
swap
swap
proc
/proc
proc
defaults 0 0
sysfs
/sys
sysfs
noauto 0 0
defaults 0 0
debugfs /sys/kernel/debug
debugfs noauto 0 0
usbfs
noauto 0 0
/proc/bus/usb
devpts /dev/pts
usbfs
devpts mode=0620,gid=5 0 0
192.168.0.1:/home/centos4
/home/centos4_200
/dev/sda1
ext3
/media/data
nfs
defaults 0 0
defaults 0 0
Để kiểm tra partition nào được mount vào mount point nào dùng lênh df # df Filesystem
1K-blocks
/dev/hda2
20972152
8155616
12816536
517332
164
517168
/dev/hda3
55101224
33054028
22047196
/dev/sda1
20642412
131232
19462608
udev
Used Available Use% Mounted on 39% / 1% /dev 60% /home 1% /media/data
#
===== HẾT =====
Trang 24