Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
486 KB
Nội dung
Hướng dẫn thực hành - Lập trình Mã nguồn mở Hướng Dẫn Thực Hành Chương: Linux Cơ Bản Khối: Đại học Liên thông 2011-2012 Hướng dẫn: Bài tập thực hành dựa giáo trình: CompTIA Linux Plus Certification Study Guide Bài tập thực hành chia theo làm nhiều Module Mỗi Module thiết kế cho thời lượng tiết thực hành lớp với hướng dẫn giảng viên Tùy theo số tiết phân bổ, tuần học thực nhiều Module Sinh viên phải làm tất tập Module tuần tương ứng Những sinh viên chưa hịan tất phần tập lớp có trách nhiệm tự làm tiếp tục nhà Các có dấu (*) tập nâng cao dành cho sinh viên giỏi Trang 1/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 1: Cài đặt Hệ điều hành Fedora Core (FC 10) Nội dung kiến thức thực hành: + Cài đặt HĐH Fedora Core (FC 10) song song với HĐH Windows Sau cài đặt xong, SV boot đồng thời HĐH Bước Chuẩn bị Chuẩn bị: - SV cài đặt HĐH Windows vào phân vùng đĩa cứng C trước cài đặt HĐH Fedora Core 10, dành phân vùng đĩa cứng dùng để cài đặt FC (ổ đĩa D, dung lượng khoảng 10GB) + phân vùng dùng làm SWAP (dung lượng lần RAM – gợi ý ổ đĩa E ) Yêu cầu phần cứng: - SV tham khảo website - Riêng FC 10: cấu hình tối thiểu đề dùng đồ họa chạy ứng dụng - Đối với CPU x86 + CPU Intel Pentium, tối ưu dùng Pentium Dual Core + RAM: 256 MB + HDD: GB - Đối với CPU x86_64 yêu cầu RAM 512 MB Bước Cài đặt Khởi động lại máy tính, cho đĩa CD (hoặc DVD) thực bước sau (SV đọc hướng dẫn hình lúc cài đặt) “cái làm sau ” Trang 2/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 2: Các lệnh file-directory Nội dung kiến thức thực hành: + Nắm vững hệ thống thư mục linux + Nắm vững - vận dụng khái niệm “đường dẫn tương đối “ “đường dẫn tuyệt đối “ + Một số lệnh file-directory Cây thư mục linux Lưu ý : Cây thư mục bắt đầu dấu: / (root directory) / bin boot dev … etc home User1 media User2 Đường dẫn tuyệt đối – Đường dẫn tương đối Trang 3/23 var root Desktop sbin … Hướng dẫn thực hành - Lập trình Mã nguồn mở - Đường dẫn tuyệt đối tệp tin hay thư mục bắt đầu / (root directory) sau chuỗi thư mục mà xuyên qua tới đích Tóm lại, đường dẫn tuyệt đối đường dẫn bắt đầu / Ví dụ: Khi bạn đứng thư mục tuantub, thư mục home hay cịn nói home thư mục mẹ tuantub đường dẫn tuyệt đối của thư mục tuantub /home/tuantub Đường dẫn tuyệt đối tệp tin abc là: /home/tuantub/Desktop/abc - Đường dẫn tương đối Đối với đường dẫn tương đối người sử dụng khơng địi hỏi phải / mà tiếp cận với thư mục hay tệp tin bên thư mục hành (working directory) Một đường dẫn tương đối thường bắt đầu với : -Tên thư mục tệp tin -Một dấu (dấu chấm) biểu thị cho working -Một dấu (hai chấm) biểu thị cho thư mục mẹ thư mục thời 1.Giả sử bạn đứng thư mục /home/tuantub thư mục, từ đường dẫn Desktop/abc đường dẫn tương đối tệp tin abc 2.Từ /home/tuantub đường dẫn tương đối đến thư mục /lib / /lib (thư mục lib thư mục thư mục mẹ thư mục mẹ /home/tuantub) 3.Từ /home/tuantub, muốn di chuyển đến /lib ta dùng lệnh cd với : Đường dẫn tuyệt đối : cd /lib Đường dẫn tương đối: cd / /lib Trang 4/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Bài Mục đích: Khơng sử dụng giao diện đồ họa, sử dung command line để thực lệnh file-folder Login vào hệ thống Sử dụng lệnh biết user gì? Mở terminal Login vào Linux quyền root sử dụng lệnh su Cho biết thư mục hành Liệt kê danh sách file, folder thư mục hành Tạo cấu trúc thư mục sau: Trang 5/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Tạo file vi.txt folder tc1 có nội dung thơ “Hương Thầm” Trang 6/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Delete folder ncd2 Copy file folder /etc vào folder ncd1 Trang 7/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở 10 Copy toàn folder ncd1 vào cb 11 Di chuyển file vi.txt (yêu cầu 7) vào thư mục cd 12 Chuyển vị trí thư mục hành cd 13 Chuyển vị trí thư mục hành /root 14 Hiển thị nội dung file vi.txt sử dụng lệnh more, less, cat Trang 8/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở 15 Tạo file log_time rỗng thư mục cd 16 Hiển thị ngày tạo file log_time nói 17 Đổi tên file log_time thành log_time.txt chứa tc2 18 Tạo file my_friend.txt thư mục tc1 chứa danh sách tên sinh viên ngồi cạnh lớp (sử dụng lệnh cat tên_file, bấm Ctrl+D để kết thúc ) 19 Log out Bấm để thoát Gợi ý: Thường xuyên sử dụng lệnh pwd ls để kiểm tra Có thể sử dụng nhiều tham số trình tạo thư mục Trang 9/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Bài 2: Mục đích: Sử dung command line để thực lệnh để xem thông tin hệ thống Login vào hệ thống Dùng lệnh su để chuyển sang root Cho biết tên hệ điều hành sử dụng Cho biết version kernel HĐH Cho biết user login vào hệ thống Cho biết ngày tháng năm hệ thống Hiển thị lịch tháng Hiển thị lịch năm 2009, lịch tháng năm 2009 Trang 10/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Cho biết ngày tháng năm 1990 thứ mấy? Hiển thị thông tin chi tiết user 10 Sử dụng lệnh man để hiển thị lệnh mà man page chứa từ khóa: find, search, read, hostname, “connect system calls” 11 Sử dụng lệnh apropos để hiển thị lệnh trang chứa nội dung liên quan đến group Bài 3: Mục đích: Sử dung command line để thực lệnh tìm kiếm thơng tinfile Thiết lập bí danh cho lệnh Login vào hệ thống Dùng lệnh su để chuyển sang root Hiển thị tên máy tính 10 11 12 Hiển thị thông tin lệnh passwd Hiển thị lệnh mà man page chứa từ khóa: passwd Hiển thị vị trí file lệnh, source, manual page lệnh ifconfig, locate Hiển thị thư mục/file thực thi dùng lện passwd Tìm tất file có chứa từ passwd Trước thực lệnh này, nên sử dụng updatedb lần Thiết lập lệnh dir bí danh lệnh ls –la, lệnh m bí danh lệnh mkdir Sử dụng lệnh m để tạo cấu trúc thư mục mô tả Sử dụng lệnh find để tìm tồn vị trí file my_friend.txt tính từ /root Tạo command f bí danh lệnh find, tìm từ /, tìm theo tên file Sử dụng lệnh f để tìm vị trí file password.config Tìm hàng nội dung file /etc/passwd chứa từ root Tìm hiển thị thơng tin chi tiết file /etc mà tên file có chứa từ config Trang 11/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở 13 Tìm tất file hệ thống chứa từ root Bài 4: Mục đích: Sử dung command line để thực lệnh file permission 10 11 12 13 14 15 Login vào hệ thống Dùng lệnh su để chuyển sang root Tạo tài khoản user1 với password user1 Dùng su để Login với tài khoản user1 Hiển thị thư mục làm việc hành Chuyển thư mục người sử dụng Liệt kê chi tiết file-folder có thư mục Tạo thư mục vd1, vd2, vd3 thư mục Dùng lệnh cat tạo file monhoc.txt thư mục vd1 chứa danh sách môn học-tên giáo viên giảng dạy (đang học học kỳ tại) Đọc permissions folder vd1 Thay đổi permissions folder vd1 thành dr-xr-xr-x Xóa file monhoc.txt thư mục vd1 ? Tạo file monhoc1.txt thư mục vd1 với nội dung bất kỳ? Thay đổi permissions folder vd1 thành drwxrwxrwx Tạo file monhoc1.txt thư mục vd1 với nội dung Mở thêm terminal Tạo tài khoản user2 với password user2 Dùng su để Login với tài khoản user2 Từ tài khoảng user2, hiển thị nội dung thư mục user1 hay không? (/home/user1) Dùng lệnh locate để tìm vị trí file monhoc.txt Nếu khơng tìm thấy, giải thích thực lệnh để locate tìm thấy file Thay đổi permissions folder /home/user1 phép user2 truy xuất vào folder Kiểm tra lệnh ls Tạo cấu trúc thư mục cho hệ thống hình sau (tính từ sau thư mục home) Trang 12/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 3: CÁC LỆNH VỀ FILE – DIRECTORY (TT) Nội dung kiến thức thực hành: + Các lệnh theo tác file, thư mục: find, locate, grep … + Nén-giải nén tập tin – thư mục, backup + Thay đổi đầu ra, vào, thông báo lỗi Bài 1: Mục đích: - Sử dụng lệnh tìm kiếm find locate Module 4: Bash Shell-Cài đặt phần mềm-Quản trị người dùng Nội dung kiến thức thực hành: +Kỹ thuật Cài đặt phần mềm Linux: rpm, tar.gz, tar.z2, từ source code +Nén-giải nén tập tin – thư mục +Quản lý user-group phân quyền Bài 1: Mục đích: Sử dụng Bash SHELL Login vào hệ thống Dùng lệnh su để chuyển sang root Đọc thông tin file sau (nếu tồn tại): /etc/profile, ~/.profile, ~/.bashrc, ~/.bash_profile, ~/.login, and ~/.cshrc Từ thông tin xác định giá trị shell environment variables: PATH, path, LINES, HOME, home Kiểm tra giá trị nói cách sử dụng echo $variable (PATH, path, LINES, HOME, home) Xác định search path (dùng cho default shell tìm kiếm chương trình) Mở rộng đường dẫn với folder: /sbin /ttcntt1_hui Thay đổi dấu nhắc (prompt) thành > Thay đổi dấu nhắc (prompt) thành hàng: Done Next command> Thay đổi dấu nhắc (prompt) để hiển thị thư mục làm việc Mở thêm terminal để kiểm tra dấu nhắc có thay đổi theo hay khơng? Thực thay đổi PROMT thành ‘duongdanhientai>’ PATH mở rộng với /sbin /ttcntt cố định cho tất shell mở Thực restart máy ảo Linux kiểm tra thay đổi thông số Tạo lệnh m bí danh cho lệnh mkdir, dir cho lệnh ls –la Thiết lập để lệnh bí danh sử dụng khởi động lại máy 10 Cho biết shell cài đặt sẵn sàng sử dụng hệ thống.Chuyển qua shell khác từ shell Gợi ý: Trang 13/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Sử dụng lệnh (hoặc biến): chsh, chsh –l, echo, $PATH, $PS1, ~/.bash_profile, ~/.bashrc PS1='type something! ' Một số mã sử dụng cho prompt là: \d the date (day-of-the-week month day) \h the hostname (without the domain) \n start a new line \u the current username \w the working directory Bài Mục đích: Khơng sử dụng giao diện đồ họa, sử dung command line để thực lệnh file-folder Kiểm tra menu Applications/Game chứa thành phần Sử dụng rpm để cài đặt gói phần mềm gnome-games-2.22.1.1-4.fc9.i386.rpm Sau tìm menu Games xem có chương trình hay khơng? Chạy thử hay chương trình Sau remove gói phần mềm khỏi máy ảo Kiểm tra danh sách gói cài vào máy sử dụng RPM có chứa gói gnome-games khơng? Sử dụng rmp để remove gói khỏi máy ảo Kiểm tra cịn game máy hay không? Kiểm tra menu Applications/Education chứa thành phần Sử dụng rpm để cài đặt gói phần mềm kdeedu-4.0.3-3.fc9.i386.rpm (với khóa chuyển nodeps) Sau tìm menu Education xem có chương trình hay khơng? Chạy thử hay chương trình Giải thích có chương trình khơng chạy Sau remove gói phần mềm khỏi máy ảo Cài đặt gói phần mềm từ source john-1.7.3.1.tar.gz Đọc file hướng dẫn kèm theo phần mềm (readme, install…) để sử dụng phần mềm bẻ khóa tìm password tài khoản Linux Bài tập xem hoàn tất thực gọi lệnh john thành công (tùy hệ thống, tùy vào config cho phần mềm john bẻ password hay khơng) Cài đặt gói phần mềm từ source units-1.74.tar.gz Đây phần mềm tiện ích chuyển đổi đơn vị đo lường Xem hướng dẫn để cài đặt sử dụng phần mềm Cài đặt phần mềm wine (phần mềm dùng để thực thi ứng dụng MS Windows Linux) sử dụng yum (cài đặt từ local pakages) Đọc hướng dẫn sử dụng wine kèm theo phần mềm để chạy chương trình putty.exe MS Windows Chép phần mềm notepad.exe vào máy ảo Linux thực thi Gợi ý: Sử dụng lệnh:rpm với khóa –i,-e, nodeps,-q Bài Mục đích: Sử dung command line để thực lệnh permission usergroup Tạo group G1, G2 G3 Tạo user u1, u2, u3 tương ứng thuộc group G1, G2, G3 thiết lập password tương ứng trùng với tên user Thay đổi group user u2 từ G2 thành G3 Thiết lập để u1 thuộc thêm group G2, G3, u2 thuộc thêm group G1 Dùng lệnh để kiểm tra tài khoản u1, u2, u3 thuộc group thiết lập? Trang 14/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Tạo folder /test Trong folder có folder con: tets1, test2 Trong folder có file: test1.txt test2.txt Phân quyền để test1.txt có chủ u1 G2 sử dụng lệnh chmod với cách đánh số nhị phân Phân quyền để test2.txt có chủ u2 G1 Kiểm tra kết file dùng lệnh gì? Kiểm tra thư mục test có chủ user group nào.? Thực thay đổi chủ thư mục test tất file-thư mục u2 g1 Kiểm tra lại thay đổi Phân thêm quyền để group chủ file test2.txt đọc,ghi, execute sử dụng phép gán quyền trực tiếp (g=rwx) Kiểm tra lệnh vi để sửa nội dung với tài khoản u1, u2 u3 Thực thay đổi shell u1 u2 thành nologin Restart Linux (bằng command line login vào với tài khoản u1, u2 u3 Bài Mục đích: Sử dung command line để thực lệnh permission usergroup Trung Tâm CNTT gồm tổ: LapTrinh Mạng Mỗi tổ có Giáo viên Tại file foldder /tailieu có file: dethimang.txt va dethilaptrinh.txt Thực yêu cầu sau: a Tạo thư mục /backup, chép toàn thư mục /tailieu vào thư mục /backup Từ thư mục /backup: i Thực nén file dethimang.txt thành dethimang.txt.gz ii Thực giải nén file dethimang.txt.gz thành dethimang.txt iii Thực nén toàn thư mục tailieu tành fle tailieu.tar.gz b Từ tài khoản root, tạo group LapTrinh Mang Trong group có user giáo viên Tạo user GiamDoc c Tạo file dethimang.txt va dethilaptrinh.txt folder /tailieu d Các Giáo viên thuộc tổ LapTrinh phép xem, sửa, xóa file dethilaptrinh.txt không xem, sửa file dethimang.txt Ngược lại cho giáo viên thuộc tổ Mạng e Tài khoản GiámĐốc quyền xem (không sửa) file đề thi nói f Mở đồng thời terminal login vào với tài khoản tương ứng: GiamDoc, giáo viên lập trình, giáo viên mạng Thực chỉnh sửa file đề thi nói (sử dụng vi) để kiểm tra việc phân quyền Trang 15/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 5: Kết gán thiết bị với Linux Nội dung kiến thức thực hành: +Giao tiếp máy ảo host +Sử dụng lệnh mount Bài 1: Mục đích: Sử dụng Vmware Tools để hỗ trợ thực trao đổi dịch vụ host XP VM Linux Cài đặt Vmware Tools Chú ý: Ghi lại hướng dẫn để khởi động dịch vụ kéo thả file Khởi động dịch vụ kéo thả file Từ Host XP kéo thả vài file sang Desktop Linux ngược lại Bài 2: Mục đích: Từ máy ảo Linux truy xuất tồn ổ cứng C, D máy host (sử dụng MS Windows XP) Từ Vmware workstation, thêm harddisk vào máy ảo đĩa C đĩa D Từ Linux, tạo thư mục /mnt/diac /mnt/diad Thực mount tương ứng đĩa C D nói vào thư mục Từ Linux, thực copy file /etc/passwd vào đĩa C D máy host XP Từ Linux, thực copy file notepad.exe từ máy host XP vào hình Desktop user Bài 3: Mục đích: Sử dụng folder share Vmware để chép thông tin từ máy host XP sang Linux Từ máy host XP tạo folder d:\temp\ttcntt_public d:\temp\ttcntt_doc Tạo file vidu.doc folder Từ Vmware workstation thiết lập để share thư mục với yêu cầu: a d:\temp\ttcntt_public : read-write b d:\temp\ttcntt_doc : read-only Từ Linux thực mount thư mục Từ Linux, copy file /etc/pam.d/gdm vào ttcntt_public, xóa file vidu.doc ttcntt_public Thử xóa file vidu.doc thư mục ttcntt_doc Copy file vidu.doc thư mục ttcntt_doc vào hình Desktop user Kiểm tra lại cách mở folder Explorer host XP Bài 4: Mục đích: Sử dụng chức mount với CDROM thông qua file ISO Trang 16/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Từ máy host XP, sử dụng phần mềm MagicISO hay PowerISO để tạo file Linux_soft.ISO chứa file rpm chép Từ Vmware workstation thiế lập CDROM trỏ đến file ISO Từ Linux tạo folder /mnt/cdrom_iso thực mount CDROM vào thư mục Từ Linux, copy tòan file rpm từ file ISO vào folder /tmp Bài 5: Mục đích: Sử dụng chức Share với Samba để coy file từ host XP sang máy ảo LINUX Từ máy host XP tạo folder c:/temp1 chứa file vidu.doc thực share folder với tên temp1 Từ Linux, từ menu Places-Network, sử dụng chức Open Location để mở folder share temp1 máy host XP Copy file vidu.doc vào hình Desktop user Bài 6: Mục đích: Sử dụng dịch vụ SSH để copy file host XP VM Linux Từ Linux kiểm tra xem sshd có khởi động để chạy chưa? Nếu chưa khởi động dịch vụ Đọc địa eth0 hay eth1 Linux cách dùng lệnh ifconfig linux Thực ping từ Linux quan máy chủ XP ngược lại để kiểm tra kết nối thành công Từ Host XP, dùng WinSCP để kết nối với Linux Thực copy file wordpad.exe từ host XP vào hình Desktop Linux user Thực copy file /etc/passwd vào Desktop host Xp Trang 17/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 6: Remote conect với Linux Nội dung kiến thức thực hành: +Remote login với Linux +Permission bit: SUID, SGID, Sticky bit Bài 1: Mục đích: Remote login vào Linux Từ Linux, khởi động dịch vụ sshd Từ host XP, dùng phần mềm Putty để remote login vào Linux với tài khoản root Từ host XP, tiếp tục mở tiếp cửa sổ Putty để remote login vào Linux với tài khoản u1 u2 (nếu Linux chưa có tạo đặt password cho user u1, u2) Kể từ thời điểm sử dụng putty để làm việc với Linux, không làm việc trực tiếp máy ảo Linux Từ hình root, cho biết user login vào hệ thống? Từ hình root gởi thông điệp cho user u1 u2, ngược lại Từ u1 gởi thông điệp cho tất user hệ thống Cho biết lệnh gởi thông điệp sử dụng lưu thư mục nào? Cho biết phân quyền file lệnh theo user-group-other User u1 không muốn bị tiếp tục quấy rầy message Thực lệnh để ngăn không nhận thông điệp từ user khác? Từ root gởi mail cho u1 nội dung chuẩn bị kiểm tra kỳ Từ remote login thực shutdown restart Linux phút 10 Dùng Putty để login vào với tài khoản u1 Đọc email nhận được, trả lời cho root việc nhận mail 11 Mở thêm cửa sổ Putty login với tài khoản root Đọc tất email có Kiểm tra tình trạng login vào hệ thống Bài 2: Mục đích: Sử dụng Linux theo nhóm Tất sử dụng command line mode Chú ý là, tất sinh viên nhóm trao đổi hay hướng dẫn qua chat hay mail, khơng di chuyển hay nói chuyện Chọn máy tính làm server Linux Một sinh viên quản trị Linux server máy (SV1) đóng vai trị admin hệ thống, SV cịn lại (SV2, SV3) đóng vai trị user ngồi máy khác login vào hệ thống Dùng lệnh who để xem xét người login vào hệ thống Làm cho biết user hệ thống làm (sử dụng chương trình gì)? SV1 tạo thư mục (baithi) chứa file text với nội dung ngày tháng năm sinh, địa chỉ, email SĐT mình, sở thích, khả Thực nén thư mục thành file tar file tar.gz Tạo thư mục khác (chiaxe) chứa file cho SV khác đọc, khơng thể xóa Thơng báo (chat hay mail) cho SV cịn lại xác tên file (khơng thơng báo vị trí thư mục file) Các SV cịn lại tìm kiếm để biết vị trí folder chứa file SV2 SV3 chép file (.tar tar.gz) thư mục home mình, đồng thời giải nén file tar.gz, file tar Đọc thơng tin bạn gởi Thử xóa file SV1 có hay khơng? Trang 18/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở SV1 thực thiết lập lại phân quyền cho thư mục chiaxe cho SV1 SV2 khơng thể xóa hay đổi tên file file khơng thuộc SV1 SV2 tự tạo file thơng tin sv1.txt sv2.txt (dùng cat vi) folder chiaxe Sau thử xóa file khơng phải Nếu khơng thành cơng báo cho SV1 biết để điều chỉnh SV1 SV2 dùng Wordpad (của Windows XP) tạo file sv1.doc sv2.doc chứa thông tin ngày sinh, quê quán Nén file chép cho SV cịn lại Các SV chép file thơng tin bạn máy, dùng wordpad để đọc file SV1 gởi thông báo cho SV2 SV3 việc làm Từ SV1 (root) thực cho SV1 SV2 logout SV1 chép file r.rpm từ USB Dùng lệnh biết package gì? Sau chép cho SV1 SV1 lệnh biết package gì, sau thực cài thực thi chương trình server Root (SV1) muốn có báo cáo SV2 Sv3 danh sách file tar thư mục Home user SV2 Sv3 tự tạo danh sách báo cáo, đặt tên baocao.tar để thư mục home để SV1 kiểm tra Root (SV1) thiết lập cho tất user hệ thống đăng nhập vào, dấu nhắc (prompt) hiển thị dạng: TTCNTT – [Đường dẫn tại], đồng thời đường dẫn mặc định trỏ thêm đến thư mục /ttcntt (SV1 tạo thư mục này), tạo lệnh ff lệnh tìm kiếm từ thư mục / theo tên file Các Sv2, SV3 việc sử dụng thiết lập chung này, tự tùy chỉnh lại dấu nhắc cách hiển thị: TTCNTT-[tênUser]-[Đường dẫn tại], đường dẫn PATH bổ sung thêm thư mục TaiLieuTTCNTT nằng home user (Sinh viên tự tạo), tạo lệnh myff lệnh tìm kiếm từ thư mục ~ theo tên file Chú ý là, thiết lập phải lưu giữ lại restart server Linux Các SV restart server để kiểm tra 10 Mỗi sinh viên tự viết script đặt /temp, với tên get_infor_SV_i.sh Script thực công việc sau, phân quyền để tất người sử dụng script a Hiện tên người viết sript b Hiện tên user tại, thông tin user c Xóa thư mục /tmp ~ tạo lại thư mục /tmp Trước sau xóa phải thơng báo cho người dùng biết d Hiển thị danh sách cho biết user log in làm gì? e HIển thị IP máy tính 11 SV2 cài đặt phần mềm nmap từ file rpm (nmap-4.76-1.i386.rpm) SV3 thực thi chương trình cho biết dùng để làm SV1 remove phần mềm khỏi máy 12 SV1 SV2 login dùng quyền root để shutdown hệ thống Trước shutdown phải gởi thông báo cho tất người hệ thống Trang 19/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 7: Quản Lý Process Nội dung kiến thức thực hành: +Đọc hiểu thông tin process +Sử dụng lệnh: ps, pstree, kill, killall, fg, bg, nice, renice, jobs Bài 1: Mục đích: Quản lý process sinh viên sử dụng chung Linux server, login từ máy tính putty Trên máy mở terminal, login với user ttcntt sv tương ứng (SV1 sử dụng user1, SV2 sử dụng user2 SV3 sử dụng user3) Cho biết tên lệnh tương ứng với process user (giả sử sử dụng terminal tcntt) Cho biết process có trạng thái runable, process có trạng thái sleep Dùng ps hiển thị tất process thực thi hệ thống theo dạng đầy đủ thông tin Cho biết PID lệnh ps vừa thực thi? Liệt kê theo mơ hình process tổ tiên lệnh ps Cho biết process gốc lệnh ps này? Cho biết dịch vụ bluetooth có khởi động máy tính chưa? Nếu có, cho biết thơng tin priority nice process Mở terminal mới, login với root Cho biết process process thực từ tài khoản ttcntt, root sv1 Cho biết hệ thống sử dụng nhớ nào: Ram, swap (tổng cộng dư) Cho biết process sử dụng nhiều nhất Liệt kê danh sách process thuộc user hành Tạo lệnh f bí danh lệnh find dùng để tìm theo tên file hệ thống tính từ thư mục gốc / Dùng lệnh f để tìm file ttcntt.txt Trong trình tìm, cho dừng process Dùng lệnh kill với signal SIGTERM để hủy process Kiểm tra lệnh ps xem thử process hoạt động hay không? Dùng lệnh kill, killall hay pkill để dừng process với signal nào? Kiểm tra lệnh ps Dùng lệnh kill để hủy terminal Dùng lệnh killall để tất bash shell Bài 2: Mục đích: Remote login vào Linux sử dụng putty sinh viên sử dụng chung Linux server, login từ máy tính putty Tạo thư mục /ttcntt phân quyền để sinh viên xem, xóa sửa thư mục Tạo script (tên loop.sh) hiển thị danh sách user login vào máy tính, 10 giây hiển thị danh sách lần Lưu script vào thư mục nói Mỗi thực thi script nói Sau cho dừng script, chuyển lại foreground Cho dừng script này, chuyển background Thoát lệnh Cho biết process thực background lệnh gì? Mỗi SV thực gọi lệnh loop.sh câu dạng backgound, sau chuyển foreground Mỗi SV tự hủy lệnh SV khác, theo thứ tự sau: SV1 hủy lệnh loop.sh SV2, SV2 hủy SV3, SV3 hủy SV1 Mô Trang 20/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở tả cách hủy process loop.sh xác user cần hủy Sau hủy xong, gởi thông tin để sinh viên tương ứng xác nhận việc hủy thành công Gọi lại script nói với giá trị nice Dùng lệnh ps để kiểm tra giá trị nice priority process Tăng nice từ lên Kiểm tra lại giá trị nice priority Giảm giá trị nice đơn vị Các SV xem hệ thống Mỗi SV tạo at daemon dùng để liệ t kê: (danh sách process thực mình) (danh sách file, thư mục vị trí ~) vào file reportSv_X.txt thư mục /ttcntt Sau kiểm tra lại nội dung file SV cịn lại Thêm at daemon dùng để tự động gởi email sau phút đến tất user khác với Subject “Mail tự động từ at daemon, không replay:”+ tên sinh viên, message sở thích Sv Đọc email để kiểm tra SV khác có thực không Mỗi SV tạo cron daemon dùng để: a Cứ phút lại gởi email đến user với emial Subject “Mail tự động từ cron service, không replay:”+ tên sinh viên, message số điện thoại b Cứ lại thực backup tồn file thư mục ~ vào thư mục /backup (nếu chưa có tạo) c (Đối với root) Cứ ngày phải xóa tất nội dung bên thư mục /tmp Trang 21/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Module 8: SHELL SCRIPT Nội dung kiến thức thực hành: + Hiểu nắm vững cấu trúc shell - script +Sử dụng lệnh shell – script để thực tập – nâng cao Bài 1: Mục đích: - Sử dụng số lệnh bản, ứng dụng viết số shell- script Viết shell-script thực yêu cầu sau : - Hiển thị chuỗi “Đây chương trình script số 1” - Hiển thị ngày tháng hôm thời gian thời điểm Sử dụng lệnh read Viết shell script thực yêu cầu sau: - Nhập vào số a , b Xuất kết a + b, a – b, a * b, a / b Viết Script thực yêu cầu sau, sử dụng if – then - Nhập vào số a, b Xuất kết Max(a, b), Min(a, b) Thêm đường dẫn tuyệt đối THƯ MỤC chứa Shell Script vào PATH Bài 2: Mục đích: - Viết Shell Script sử dụng tham số dạng /Script_name đối_số_1 đối_số_2 … Thêm đường dẫn tuyệt đối THƯ MỤC chứa Shell Script vào PATH Viết Script thực thi dạng Sum2 a b tính tổng số a b (a, b đối số cho trước thực thi Script) - Ví dụ: Sum2 => Kết = Tương tự yêu cầu 2, viết Script thực phép toán Trừ, Nhân, Chia số Viết Script thực thi dạng Max2 a b đưa kết Max(a, b) với a, b đối số cho trước thực thi Script - Ví dụ: Max2 -4 => Kết = Tương tự yêu cầu 3, Viết Script cho Min2(a, b) Bài 3: Mục đích: - Sử dụng cấu trúc if-elif (cấu trúc if lồng nhau) Viết Script nhập vào số a, b, c => Đưa kết Max(a, b, c) Viết Script nhập vào số a, b, c => Đưa kết Min(a, b, c) Viết Script thực thi dạng /Max3 a b c => Đưa kết Max(a, b, c) Viết Script thực thi dạng /Min3 a b c => Đưa kết Min(a, b, c) Trang 22/23 Hướng dẫn thực hành - Lập trình Mã nguồn mở Bài 4: Mục đích: - Sử dụng vòng lặp ưhile – – done Viết Script nhập vào số nguyên n > Tính tổng + + … + n Tương tự yêu cầu 1, viết theo dạng thực thi /Tổng n với n số nguyên dương cho trước Viết Script tính tổng dãy số nhập vào từ bàn phím, kết thúc số - Ví dụ: dãy nhập vào -2 -2 => kết = Bài 5: Mục đích: - Dùng Script tạo thư mục thực Backup liệu Viết Script tạo thư mục sau /root DH CD Network TCCN TCN Prog Viết Shell Script thực : - Xóa tồn liệu thư mục /mnt - Backup liệu folder /root/TCCN vào /mnt , đặt tên file backup : backup.tar Trang 23/23