Hệ điều hành Linux - Bài 5: Các tập lệnh Linux

6 20 0
Hệ điều hành Linux - Bài 5: Các tập lệnh Linux

Đang tải... (xem toàn văn)

Thông tin tài liệu

Nội dung của tài liệu trình bày về quyền sử dụng tập tin và thư mục, kiểu tập tin, quyền tập tin, số liên kết, thay đổi chủ sở hữu, thay đổi nhóm sở hữu, điều khiển tiến trình, định hướng nhập xuất, kiểm soát tiến trình, xem thông tin về tiến trình, tiến trình tiền cảnh, tiến trình hậu cảnh, tạm dừng tiến trình, đánh thức tiến trình và hủy tiến trình, luyện tập về thay đổi quyền truy xuất, liên kết tắt, điều khiển tiến trình.

BÀI CÁC TẬP LỆNH LINUX I Quyền sử dụng tập tin thư mục - Tất tập tin thư mục Linux có người sở hữu quyền truy nhập Có thể đổi tính chất cho phép nhiều hay quyền truy nhập tập tin hay thư mục Quyền tập tin cho phép xác định tập tin có chương trình (application) hay khơng (khác với Windows xác định tính chất qua phần mở rộng tên tập tin) Kiểu Quyền tập tin tập tin -rw-r r Số liên kết Chủ nhân bibica Tên nhóm hacker Kích thước (bytes) 207 Thời điểm sửa đổi sau Apr 10 11.30 Tên tập tin mydata Kiểu tập tin: Thể ký tự chuỗi thuộc tính tập tin Ký tự đầu Giải thích d l c/b File thơng thường Hard link Thư mục Link mềm (symbolic link) Character (c) / Block device (b) s p Domain socket Name pipe Quyền tập tin rwx rwx rwx owner group other Có đối tượng {owner, group, other} đối tượng ứng với quyền cụ thể {read, write, execute} r: w: x: -: Read Write Execute None  Thuộc tính đọc (khơng có quyền ghi/xóa)  Thuộc tính ghi (hiệu chỉnh nội dung)  Thuộc tính thực thi (chạy chương trình)  Khơng có quyền đối tượng - Quyền tập tin thay đổi lệnh chmod: ý không thay đổi quyền symbolic link chmod [-R] mode file Có hai phương pháp dùng chmod: phương pháp tượng trưng phương pháp tuyệt đối - Phương pháp tượng trưng: Đối tượng truy nhập (Who) Gán/thu hồi quyền (Operation) Quyền (Permission) Một bộ: u (user, tức owner) g (group – nhóm) o (other – người dùng cịn lại) a (all –tương đương ugo) Có quyền: = (gán quyền) + (thêm quyền) - (thu hồi quyền) Một bộ: r (read – đọc) w (write - ghi) x (execute – thực thi) đối tượng sau để chép quyền: u (user, tức owner) g (group – nhóm) o (other – người dùng cịn lại) để thiết lập user id, group id: s Ví dụ: $ chmod u+rx-w /tmp $ chmod –R u+rwx,g+r-w,o-rwx /tmp $ chmod a=rx abc.txt - Phương pháp tuyệt đối: Song song với cách ký hiệu miêu tả ký tự trên, quyền thao tác tập tin cịn cho dạng số, ví dụ quyền 644 Các số nhận tất giá trị từ đến Số miêu tả quyền owner (sở hữu), số thứ hai cho group (nhóm) số thứ ba cho other (những người lại) Mỗi số tổng quyền theo quy tắc sau : Quyền đọc Quyền ghi Quyền thực thi Kết hợp sau (cho đối tượng u, o g) Số bát phân Số nhị phân Quyền Giải thích 000 khơng có quyền 001 x quyền thực thi 010 -wchỉ ghi (hiếm gặp) 011 -wx ghi thực thi (hiếm gặp) 100 r-chỉ đọc 101 r-x đọc thực thi 110 rwđọc ghi 111 rwx đọc, ghi thực thi Ví dụ: $ chmod 751 abc.txt có nghĩa owner có quyền read, write, execute (4+2+1=7), group có quyền read execute (4+1=5), other có quyền execute (1) Xem cách tính tốn bảng sau: owner group other r w x r w x r w x 4 0 1 Thư mục gán sticky bit owner tập tin root phép sửa, xóa file Nhận diện thư mục có sticky bit drwxr-xr-t: quyền thực thi người dùng khác t Gán bit sticky cho thư mục theo mẫu 0xxx sau: $ mkdir test $ chmod -R 1777 test $ ls –l drwxwrxrwt s01 student 40 Apr 12 16:00 test - Các quyền mặc định tạo tập tin Khi tập tin hay thư mục tạo ra, quyền mặc định xác định quyền 666 trừ bớt quyền hiển thị lệnh umask Quyền cao 666 quyền thực thi chương trình cần gán cố ý người sử dụng hay chương trình biên dịch $ umask 002 $ echo tao mot file > tmp $ ls -l total 5472 -rw-rw-r-1 s01 student 12 Apr 21:55 tmp //Quyền 664 $ umask 022 $ echo tao mot file khac > tmp1 $ ls -l -rw-rw-r-1 s01 student 12 Apr 21:55 tmp -rw-r r-1 s01 student 12 Apr 21:59 tmp1 //Quyền 644 Giá trị mặc định quyền thường gán người sử dụng login vào hệ thống thông qua tập tin ẩn khởi tạo biến môi trường profile, bashrc Đứng quan điểm bảo mật hệ thống, giá trị 027 tốt nhất, cho người nhóm có quyền đọc khơng cho quyền với người khác Số liên kết Linux UNIX cho phép bạn tạo file liên kết tắt (symbol link) đến file vật lý khác File liên kết tắt trỏ đến file thư mục Có loại liên kết: - Liên kết tắt cứng (hard link): tạo file trỏ đến mục nhập i-node file vật lý đĩa Và file vật lý đĩa thật bị xóa tất liên kết cứng bị xóa với thân file (khơng tạo hard link cho thư mục) $ln filename othername - Liên kết tắt mềm (soft link): chứa thông tin trỏ đến file vật lý File liên kết mềm không tham chiếu trực tiếp đến điểm nhập i-node file vật lý mà trỏ đến Nếu bạn xóa file vật lý ban đầu file liên kết mềm đường tham chiếu đến file gốc ban đầu Tuy nhiên bạn tạo lại file gốc vật lý file liên kết mềm tiếp tục có hiệu lực $ln –s filename othername Thay đổi chủ sở hữu - Tạo người dùng tên user1: useradd user1 - Tạo tập tin test1.txt thư mục gốc “/”: touch /test1.txt - Thay đổi quyền ownership tập tin text1.txt user1: chown user1 /test1.txt - Kiểm tra lại: ls –l | grep test1.txt Lưu ý: Nếu muốn thay đổi ownership cho thư mục thư mục bên ta dùng tùy chọn (-R) cho lệnh chown.VD: chown –R user1 /test Thay đổi nhóm sở hữu - Tạo nhóm tên group1: groupadd group1 - Thay đổi group sở hữu tập tin test1.txt group1: chgrp group1 /test1.txt - Kiểm tra lại: ls –l / Lưu ý: Nếu muốn thay đổi group sở hữu cho thư mục thư mục bên ta dùng tùy chọn (-R) cho lệnh chgrp VD: chgrp –R group1 /test II Điều khiển tiến trình Định hướng nhập xuất Các tiến trình thường nhận liệu đầu vào xử lý ghi kết xuất nơi Linux quy định đầu vào bàn phím stdin (thiết bị nhập chuẩn) đầu hình stdout (thiết bị xuất chuẩn) Ví dụ: lệnh ls –l lấy thơng số dịng lệnh gõ vào từ bàn phím đọc duyệt thư mục in kết hình $ls –l -rw-rw-r-1 s01 student 12 Apr 21:55 tmp … Linux cung cấp chế chuyển hướng xuất nhập Ký hiệu lệnh > dùng để chuyển hướng kết xuất đầu < dùng để chuyển hướng kết xuất đầu vào Ví dụ: sử dụng lệnh ls sau ghi kết xuất file data.txt $ls –l >data.txt Nếu muốn kết xuất lệnh ghi nối vào file có, bạn dùng chuyển hướng >> Ví dụ: $ls –l >>data.txt Lệnh more Linux cho phép hiển thị liệu đầu vào theo trang Bạn chuyển cho lệnh more nội dung file định hướng đầu vào sau: $more allfiles.txt ^Z [1]+ Stopped ls –R / >allfiles.txt $ Muốn xem PID tiến trình bạn gọi lệnh ps –af e Đánh thức tiến trình Sử dụng lệnh jobs để kiểm tra chương trình ta dừng hay chạy $jobs [1]+ Stopped ls –R / >allfiles.txt Lệnh jobs hiển thị trạng thái tất tiến trình chạy hậu cảnh Như kết trên: tác vụ [1] trạng thái dừng Để yêu cầu tiến trình ta tiếp tục hoạt động hậu cảnh: sử dụng lệnh bg $bg Ls –R / >allfiles.txt $jobs [1]+ Running ls –R />allfiles.txt & Dùng lệnh fg để mang tiến trình trở lại hoạt động phía tiền cảnh $fg Ls –R / >allfiles.txt f Hủy tiến trình Khơng phải lúc tiến trình hoạt động tốt đẹp Có thể chúng bị treo bước vào vòng lặp vô tận không chấm dứt Trong trường hợp này, ta cần phải loại bỏ chương trình khỏi hệ thống Lệnh kill Linux thường dùng cho mục đích này, kill yêu cầu cung cấp mã số định danh PID tiến trình Lệnh kill thường dùng chung với lệnh ps –af Bạn dùng lệnh ps –af để xem thơng tin tiến trình chạy, sau lấy PID tiến trình cần hủy gọi lệnh kill $ls –R / >data.txt ^Z $ps -af PID TTY TIME CMD 128 tty1 00:00:00 bash 137 pts/9 00:00:00 ls -R 235 pts/0 00:00:00 bash … $kill 137 $ps -af PID TTY 128 tty1 235 pts/0 … TIME 00:00:00 00:00:00 CMD bash bash Có số tiến trình có độ ưu tiên cao khơng thể loại bỏ theo cách thông thường Lúc ta sử dụng kill cấp độ -9 Ví dụ: $kill -9 137 III Luyện tập Thay đổi quyền truy xuất - Truy cập quyền root - Tạo người dùng: user1 user2 - Đặt password đăng nhập cho user1 user2 root - Tạo nhóm người dùng: group1 - Chuyển user1 user2 vào nhóm group1 - Tạo thư mục /baitap1 với quyền 770 - Đăng nhập vào tài khoản user1 - Viết chương trình c: program1.c đặt thư mục /baitap1 in câu thông báo: “Hello world” Liên kết tắt - Viết chương trình program2.c in hình số nguyên từ đến đặt thư mục /baitap2/ - Chuyển thự mục gốc “/” - Tạo liên kết cứng với tên hardlink đến tập tin thực thi - Tạo liên kết mềm với tên softlink đến tập tin thực thi - Chạy chương trình với liên kết vừa tạo - Xóa tập tin thực thi thư mục /baitap2/ - Chạy lại chương trình với liên kết Điều khiển tiến trình - Viết chương trình program3.c in số từ nguyên đến 20, giây in số, ghi kết xuất tập tin ketqua.txt - Cho chương trình chạy hậu cảnh - Khi chương trình hồn tất, xem nội dung tập tin ketqua.txt ... file > tmp $ ls -l total 5472 -rw-rw-r-1 s01 student 12 Apr 21:55 tmp //Quyền 664 $ umask 022 $ echo tao mot file khac > tmp1 $ ls -l -rw-rw-r-1 s01 student 12 Apr 21:55 tmp -rw-r r-1 s01 student... dụ: lệnh ls –l lấy thơng số dịng lệnh gõ vào từ bàn phím đọc duyệt thư mục in kết hình $ls –l -rw-rw-r-1 s01 student 12 Apr 21:55 tmp … Linux cung cấp chế chuyển hướng xuất nhập Ký hiệu lệnh. .. tiến trình tiền cảnh thực thi tốt Linux cung cấp khả lệnh & kết hợp với lệnh chương trình mà bạn gõ từ dấu nhắc hệ thống Tất lệnh gõ kèm theo thị & hệ điều hành đưa vào hoạt động ngầm bên Ví

Ngày đăng: 11/05/2021, 02:39