Bài giảng Mã nguồn mở - Bài 5: Thao tác với tệp tin và quản trị người dùng - Phan Thanh Toàn

MỤC TIÊU BÀI HỌC • Kể tên được các lệnh cơ bản với tệp tin. • Liệt kê được các lệnh liên quan đến quản trị nhóm người dùng. • Liệt kê được các lệnh cơ bản liên quan đến quản trị người dùng. CÁC KIẾN THỨC CẦN CÓ Để hiểu rõ bài này, yêu cầu sinh viên cần có các kiến thức cơ bản liên quan đến các môn học sau: • Công nghệ phần mềm; • Nguyên lí hệ điều hành. HƯỚNG DẪN HỌC • Đọc tài liệu và tóm tắt những nội dung chính của từng bài. • Luôn liên hệ và lấy ví dụ thực tế khi học đến từng vấn đề̀ và khái niệm. • Thực hành trực tiếp trên hệ điều hành Linux và một số phần mềm mã nguồn mở như Open office, PHP. • Làm bài tập và luyện thi trắc nghiệm theo yêu cầu từng bước

pdf27 trang | Chia sẻ: thanhle95 | Lượt xem: 430 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Bài giảng Mã nguồn mở - Bài 5: Thao tác với tệp tin và quản trị người dùng - Phan Thanh Toàn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1MÃ NGUỒN MỞ Giảng viên: ThS. Phan Thanh Toàn 1 BÀI 5 THAO TÁC VỚI TỆP TIN VÀ QUẢN TRỊ NGƯỜI DÙNG Giảng viên: ThS. Phan Thanh Toàn 2 MỤC TIÊU BÀI HỌC • Kể tên được các lệnh cơ bản với tệp tin. • Liệt kê được các lệnh liên quan đến quản trị nhóm người dùng. • Liệt kê được các lệnh cơ bản liên quan đến quản trị người dùng. 3 CÁC KIẾN THỨC CẦN CÓ Để hiểu rõ bài này, yêu cầu sinh viên cần có các kiến thức cơ bản liên quan đến các môn học sau: • Công nghệ phần mềm; • Nguyên lí hệ điều hành. 4 HƯỚNG DẪN HỌC • Đọc tài liệu và tóm tắt những nội dung chính của từng bài. • Luôn liên hệ và lấy ví dụ thực tế khi học đến từng vấn đề̀ và khái niệm. • Thực hành trực tiếp trên hệ điều hành Linux và một số phần mềm mã nguồn mở như Open office, PHP... • Làm bài tập và luyện thi trắc nghiệm theo yêu cầu từng bài. 5 CẤU TRÚC NỘI DUNG 6 Các lệnh cơ bản quản trị người dùng5.2 Thao tác với tệp tin5.1 Làm việc với nhóm người dùng5.3 5.1. THAO TÁC VỚI TỆP TIN 7 5.1.1. Các loại tệp tin 5.1.2. Các lệnh với tệp tin 5.1.1. CÁC LOẠI TỆP TIN • Trong hệ điều hành Linux có nhiều kiểu tệp tin khác nhau. • File người dùng: là các tệp tin do người dùng tạo ra bằng các phần mềm ứng dụng. • File hệ thống: là các tệp lưu trữ các thông tin của hệ thống như: thông tin người dùng, cấu hình cho khởi động, thông tin thiết bị • File thực thi: là các tệp tin chương trình, chứa các lệnh dưới dạng mã máy • Thư mục: là một loại tệp tin đặc biệt được sử dụng để chứa các tệp tin khác • File thiết bị: là file mô tả thiết bị, sử dụng như các định danh để chỉ ra thiết bị cần thiết • File liên kết: là các tệp chứa tham chiếu đến các tệp khác 8 5.1.2. THAO TÁC VỚI TỆP TIN • Lệnh tạo tệp tin: Hệ điều hành Linux có nhiều lệnh cho phép tạo tệp tin. • Lệnh touch  Cú pháp: touch  Lệnh cho phép tạo ra tệp tin được chỉ định bởi tên tệp.  Ví dụ: touch dsSinhVien.txt • Tạo tệp tin bằng sử dụng kí tự định hướng đầu ra ( > )  Ví dụ: ls /home >data.txt  Lệnh này sẽ lưu tất cả các thông tin về thư mục home và tệp data.txt • Tạo tệp bằng lệnh cat  Cú pháp: cat >  Lệnh này cho phép người sử dụng tạo ra tệp tin được chỉ định bởi tên tệp, khi tạo tệp sẽ xuất hiện màn hình soạn thảo, người dùng bấm tổ hợp phím Ctrl + D để kết thúc việc soạn thảo.  Ví dụ: cat > hoso.txt cat /home/data/students.txt 9 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 10 • Lệnh sao chép tệp tin  Cú pháp: cp [tùy chọn]  Lệnh cho phép sao chép các tệp tin được chỉ định bởi tệp nguồn sang vị trí mới được chỉ định bởi tệp đích.  Các tùy chọn:  -b: Tạo tệp tin lưu cho mỗi tệp đích, nếu tệp đích đã tồn tại;  -d: Duy trì các liên kết với tệp tin;  -f: Ghi đè các tệp đích mà không hiển thị các cảnh báo;  -i: Nhắc nhở trước khi ghi đè tệp đích;  -l: Chỉ tạo liên kết giữa tệp nguồn và tệp đích, không sao chép thực sự;  -u: Chỉ sao chép các tệp nguồn mới hơn tệp đích;  -v: Đưa ra các thông báo về quá trình sao chép.  Ví dụ: cp /home/data/students.txt /user1/students.txt 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo)  Chú ý: Khi sử dụng các lệnh thao tác với tệp tin ta có thể sử dụng các kí tự đại diện thay thế.  Kí tự *: Đại diện cho một nhóm kí tự bất kì.  Kí tự ?: Đại diện cho một kí tự bất kì.  Ví dụ: Sao chép tất cả các tệp tin trong thư mục home sang thư mục backup cp /home/*.* backup Sao chép tất cả các tệp có phần mở rộng là txt từ thư mục home sang thư mục backup cp /home/*.txt backup 11 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 12 • Lệnh đổi tên tệp Cú pháp: mv • Lệnh xóa tệp  Cú pháp: rm [tùy chọn]  Các tùy chọn:  -d: Loại bỏ liên kết của thư mục, kể cả thư mục rỗng (chỉ siêu người dùng mới có quyền này);  -f: Bỏ qua các tệp tin không tồn tại mà không hiển thị các cảnh báo;  -i: Hiển thị cảnh báo trước khi xóa;  -v: Đưa ra các thông tin chi tiết về quá trình xóa tệp tin.  Ví dụ: rm /home/students.txt rm /home/students.txt /home/hoso.txt 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) • Lệnh đếm từ và dòng trong tệp tin  Cú pháp: wc [tùy chọn]  Lệnh hiển thị số lượng dòng, số từ, số kí tự trong tệp tin.  Có thể thực hiện việc đếm với nhiều hơn một tệp.  Các tùy chọn:  -c: Đếm kí tự;  -l: Đếm dòng;  -L: Đưa ra chiều dài của dòng có độ dài lớn nhất trong tệp;  -w: Đếm từ trong tệp.  Ví dụ: wc –w/home/students.txt wc –l/home/students.txt wc /home/students.txt 13 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 14 • Sắp xếp nội dung tệp tin với lệnh sort  Cú pháp: sort [tùy chọn]  Hiển thị nội dung tệp tin sau khi sắp xếp ra thiết bị chuẩn.  Các tùy chọn:  +n [-m]: n, m là các số nguyên, hai số n, m là khóa sắp xếp, thực chất lấy xâu con từ vị trí n đến vị trí m của các dòng để so sánh và lấy thứ tự sắp xếp các dòng;  -b: Bỏ qua các dấu cách đứng trước trong phạm vị sắp xếp;  -c: Kiểm tra nếu tệp đã sắp xếp rồi thì không sắp xếp nữa;  -d: Chỉ sắp xếp các kí tự a-z, A-Z, 0-9, các kí tự đặc biệt được đưa lên đầu;  -f: Sắp xếp không phân biệt chữ hoa, chữ thường;  -n: Sắp xếp theo kích thước tệp tin;  - r: Chuyển đổi thứ tự sắp xếp hiện thời.  Ví dụ: sort /home/students.txt 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 15 • Lệnh xem nội dung tệp tin với lệnh more  Cú pháp: more [-n][+/xâu mẫu]  Lệnh more hiển thị nội dung tệp tin theo từng trang màn hình.  N là số nguyên, xác định số dòng được hiển thị. • Lệnh thêm số thứ tự vào các dòng trong tệp tin  Cú pháp: nl [tùy chọn]  Lệnh hiển thị nội dung tệp ra màn hình với số thứ tự của mỗi dòng được thêm vào trong tệp.  Các tùy chọn:  -b --body-numbering=STYLE: Qui định kiểu đánh số đầu dòng;  -d --section-delimiter=CC: Đánh số trang;  -i --page-increment=số: Đánh số dòng theo cấp số cộng. 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 16 • Lệnh xem nội dung tệp tin với lệnh cat  Cú pháp: cat [tùy chọn]  Lệnh hiển thị nội dung tệp tin được chỉ định bởi tên tệp.  Các tùy chọn:  -b: Hiển thị thêm số thứ tự trên mỗi dòng, bỏ qua dòng trống;  -E: Hiển thị kí tự $ ở cuối mỗi dòng;  -n: Hiển thị số thứ tự của mỗi dòng (kể cả dòng trống);  -s: Nếu trong tệp có nhiều dòng trống sẽ loại bỏ bớt, chỉ để lại một dòng trống.  Ví dụ: cat /home/students.txt cat –b /home/students.txt 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) • Xem nội dung tệp với lệnh head  Cú pháp: head [tùy chọn]  Các tùy chọn:  -n: Hiển thị n dòng đầu trong tệp;  -q: Không hiển thị têp tệp ở dòng đầu tiên;  -v: Luôn hiển thị tên tệp ở dòng đầu tiên. • Xem nội dung tệp với lệnh tail  Cú pháp: tail [tùy chọn]  Các tùy chọn:  -n: Hiển thị n dòng cuối cùng của tệp;  -q: Không hiển thị tên tệp ở dòng đầu tiên;  -v: Luôn hiển thị tên tệp ở dòng đầu tiên. 17 5.1.2. THAO TÁC VỚI TỆP TIN (tiếp theo) 18 • Tìm theo nội dung tệp tin  Cú pháp: grep [tùy chọn] [Tên tệp]  Lệnh grep sẽ hiển thị tất cả các dòng có chứa mẫu lọc trong tệp tin ra thiết bị chuẩn.  Các tùy chọn  -G: Xem mẫu lọc như một biểu thức thông thường;  -E: Xem mẫu lọc như một biểu thức mở rộng;  -F: Xem mẫu lọc như một danh sách các xâu cố định;  -A num: Đưa num dòng nội dung tiếp theo sau dòng có chứa mẫu lọc;  -B num: Đưa num dòng nội dung tiếp theo trước dòng có chứa mẫu lọc;  -C num: Đưa num dòng nội dung;  -c: Đếm số dòng tương ứng chứa mẫu lọc thay vì hiển thị nội dung;  -f: Lấy mẫu lọc từ tệp tin, mỗi mẫu trên một dòng;  -H: Đưa ra tên tệp trên mỗi dòng chứa mẫu tương ứng;  -h: Không đưa ra tên tệp trên các dòng chứa mẫu tương ứng;  -i: Hiển thị các dòng chứa mẫu, không phân biệt chữ hoa;  -l: Đưa ra tên các tệp tin trùng với mẫu lọc;  -n: Thêm số thứ tự vào đầu mỗi dòng;  -s: Bỏ qua các thông báo lỗi.  Ví dụ: grep –n filesystem data.txt 5.2. QUẢN TRỊ NGƯỜI DÙNG 19 5.2.1. Các lệnh với người dùng 5.2.2. Các lệnh với nhóm người dùng 5.2.1. CÁC LỆNH VỚI NGƯỜI DÙNG • Thêm người dùng với lệnh useradd  Cú pháp: useradd [tùy chọn] Hoặc useradd –D [tùy chọn]  Các tùy chọn:  -c: Soạn thảo trường thông tin về người dùng;  -d: Tạo thư mục đăng nhập cho người dùng;  -e: Thiết lập thời gian tài khoản hết hiệu lực, tài khoản sẽ bị hủy bỏ;  -G, group: Danh sách nhóm người dùng mà người dùng thuộc thành viên của các nhóm đó;  -m: Thư mục cá nhân của người dùng sẽ được tạo nếu chưa tồn tại thư mục;  -M: Không tạo thư mục người dùng;  -n: Tự thêm một nhóm người dùng có tên trùng với tên người dùng;  -p: Tạo mật khẩu đăng nhập cho người dùng;  -s: Thiết lập shell đăng nhập cho người dùng;  -u: Thiết lập chỉ số người dùng.  Ví dụ: Thêm người dùng tienpv vào hệ thống Useradd –p tienpv 20 5.2.1. CÁC LỆNH VỚI NGƯỜI DÙNG (tiếp theo) 21 • Tạo thư mục cá nhân cho người dùng  Sử dụng lệnh mkdir để tạo thư mục: mkdir /home/tienpv  Sao chép các tệp tin trong thư mục /etc/skel vào thư mục vừa tạo.  Thay đổi quyền sở hữu và quyền truy cập thư mục với người dùng. chown tienpv /home/tienpv Chmod 755 /home/tienpv • Thiết lập mật khẩu cho người dùng  Cú pháp: passwd  Ví dụ: passwd tienpv • Thay đổi thuộc tính người dùng: Trong hệ điều hành Linux có nhiều lệnh thay đổi thuộc tính người dùng  chfn: Thay đổi thông tin cá nhân của người dùng;  chsh: Thay đổi shell đăng nhập;  Passwd: Thay đổi mật khẩu của người dùng. 5.2.1. CÁC LỆNH VỚI NGƯỜI DÙNG (tiếp theo) 22 • Lệnh usermode cho phép thay đổi bất kì thông tin nào về người dùng  Cú pháp: usermod [tùy chọn]  Cho phép thay đổi các thông tin của người dùng được chỉ định bởi tên đăng nhập.  Các tùy chọn  -c: Thay đổi thông tin cá nhân của người dùng;  -d: Thay đổi thư mục cá nhân của người dùng;  -e: Thay đổi thời điểm hết hạn của người dùng;  -f: Thiết lập số ngày hết hiệu lực của mật khẩu người dùng;  -G, group: Thay đổi danh sách nhóm người dùng mà người dùng cũng là thành viên của các nhóm đó;  -l: Thay đổi tên đăng nhập của người dùng;  -p: Thay đổi mật khẩu đăng nhập;  -s: Thay đổi shell đăng nhập;  -u: Thay đổi chỉ số người dùng.  Ví dụ: Thay đổi tên đăng nhập tienpv thành pvtien usermod –l tienpv pvtien • Lệnh xóa bỏ người dùng  Cú pháp: userdel [-r]  Chú ý: Lệnh này không thể xóa bỏ user khi họ đang đăng nhập vào hệ thống, phải loại bỏ tất cả các tiến trình liên quan đến người dùng trước khi xóa. 5.2.2. CÁC LỆNH VỚI NHÓM NGƯỜI DÙNG • Thêm nhóm người dùng  Cú pháp: groupadd [tùy chọn]  Thêm nhóm người dùng với tên được chỉ định bởi tên nhóm.  Các tùy chọn  -g: Xác định chỉ số nhóm của nhóm người dùng;  -r: Tùy chọn này được sử dụng khi muốn thêm một tài khoản vào hệ thống;  -f: Bỏ qua các nhắc nhở, nếu nhóm người dùng đã tồn tại.  Ví dụ: Thêm nhóm người dùng tên staff groupadd –f staff 23 5.2.2. CÁC LỆNH VỚI NHÓM NGƯỜI DÙNG (tiếp theo) 24 • Sửa đổi các thuộc tính của nhóm người dùng  Cú pháp: groupmod [tùy chọn]  Lệnh này cho phép thay đổi các thông tin của nhóm người dùng được chỉ định bởi tên nhóm.  Các tùy chọn  -g: Thay đổi chỉ số nhóm;  -n: Thay đổi tên nhóm.  Ví dụ: Thay đổi tên nhóm staff thành nhóm HR groupmod –n staff HR 5.2.2. CÁC LỆNH VỚI NHÓM NGƯỜI DÙNG (tiếp theo) • Xóa nhóm người dùng  Cú pháp: groupdel  Lệnh này xóa nhóm người dùng được chỉ định bởi tên nhóm.  Đăng với người dùng khác  Cú pháp: su  Ví dụ: su root • Xác định người dùng đang đăng nhập  Cú pháp: who [tùy chọn]  Các tùy chọn:  -H: Hiển thị tiêu đề các cột trong nội dung hiển thị;  -m: Hiển thị tên máy và tên người dùng;  -q: Hiển thị tên người dùng và số lần đăng nhập của người dùng. 25 5.2.2. CÁC LỆNH VỚI NHÓM NGƯỜI DÙNG (tiếp theo) 26 • Xác định thông tin người dùng với lệnh id  Cú pháp: id [tùy chọn]  Lệnh này đưa ra các thông tin về người dùng  Các tùy chọn:  -g: Hiển thị chỉ số nhóm người dùng;  -u: Hiển thị chỉ số của người dùng.  Ví dụ: id id root id –g • Xác định các tiến trình đang thực hiện  Cú pháp: w [Tên người dùng]  Lệnh này đưa ra các thông tin về người sử dụng hiện thời trên hệ thống và các tiến trình đang thực hiện bởi người dùng đó, nếu chỉ ra tên người dùng thì chỉ có các tiến trình liên quan đến người dùng mới được hiển thị.  Ví dụ: w Hoặc w roo TÓM LƯỢC CUỐI BÀI 27 Trong bài học này, chúng ta đã tìm hiểu những nội dung chính sau: • Các loại tệp tin và thao tác với tệp tin; • Các lệnh đối với người dùng và nhóm người dùng trong hệ điều hành Linux.