Hệ điều hành Bài tập tuần 7_ Chúng ta làm quen một số lệnh thao tác với hệ thống file trong Linux :

Similar documents
Internet Protocol. Bởi: Phạm Nguyễn Bảo Nguyên

HƯỚNG DẪN SỬ DỤNG PLESK PANEL

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Bài Thực hành Asp.Net - Buổi 1 - Trang: 1

BÀI THỰC HÀNH SỐ 1. Quản trị tập tin: 1/ Tạo các thư mục sau: Bài tập thực hành linux Linuxlab. bt1 bt11 bt111. bt121. bt12. bh1 bh11 bh111.

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG CẬP NHẬT CHỨNG THƯ SỐ HOTLINE:

TÀI LIỆU THỰC HÀNH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO

BÀI 1: VBA LÀ GÌ? TẠO MACRO, ỨNG DỤNG CÁC HÀM TỰ TẠO (UDF), CÀI ĐẶT ADD-INS VBA là gì?

HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM DIỆT VIRUS AVIRA

ĐỌC, GHI XML VỚI C# TRONG ADO.NET --- SỬ DỤNG VISUAL STUDIO

Cài đặt và cấu hình StarWind iscsi trên Windows. iscsi SAN là gì?

Tài liệu hướng dẫn: Stored Procedure

Nội dung chính của chương. Các công nghệ đĩa cứng Cấu tạo vật lý của đĩa cứng Cấu tạo logic của đĩa cứng Cài đặt đĩa cứng như thế nào?

SIMULATE AND CONTROL ROBOT

BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C#

Hướng dẫn cài đặt FPT

Cụ thể những công việc mà AndroidManifest.xml thực hiện: - Đặt tên cho Java package của ứng dụng.

Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

HƢỚNG DẪN TRIỂN KHAI KASPERSKY - MOBILE DEVICE MANAGEMENT

TÀI LIỆU HƯỚNG DẪN SỬ DỤNG HOSTING PLESK PANEL

STACK và QUEUE. Lấy STACK

Chương 5. Network Layer 19/09/2016 1

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI H.264 DVR VISION VS (4CH - 8CH - 16CH)

HƯỚNG DẪN CÁCH SỬ DỤNG WINDOWS MOVIE MAKER

BẢO MẬT TRONG SQL SERVER

Bộ môn MMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

SIEMENS INDUSTRIAL NETWORKS

Chương 5. Network Layer. Phần 1 - Địa chỉ IPv4. Tài liệu : Forouzan, Data Communication and Networking

I. Hướng Dẫn Đăng Nhập:

CẤU TRÚC DỮ LIỆU NÂNG CAO

Bài tập lớn số 1. Giả lập bộ định thời

Giáo trình này được biên dịch theo sách hướng dẫn của Sun Light. Vì là hướng dẫn kỹ thuật, trong này những thuật ngữ kỹ thuật bằng tiếng Anh tôi chỉ

Tình huống 1: PPPoE với Username và Password

Ôn tập Thiết bị mạng và truyền thông DH07TT - Lưu hành nội bộ (không sao chép dưới mọi hình thức)

Entity Framework (EF)

Khoa KH & KTMT Bộ môn Kỹ Thuật Máy Tính

LẬP TRÌNH WINDOWS FORM VỚI CÁC CONTROL NÂNG CAO (Các control trình bày dữ liệu dưới dạng danh sách)

Tạo repository mới. The working tree. The staging index. Lệnh git init tạo một repository loại git. tại thư mục hiện tại: $ git init

Tạo Project với MPLAB

Nhấn nút New để tạo 1 biến mới Trang 17

Online Appointment System will work better with below conditions/ Hệ thống đặt hẹn online sẽ hoạt động tốt hơn với điều kiện sau đây:

BELGIUM ONLINE APPOINTMENT

CHƯƠNG 2: CÁC ĐẶC ĐIỂM VỀ MÔI TRƯỜNG PHÁT TRIỂN (IDE)

Chương 6. Transport Layer. Tài liệu : Forouzan, Data Communication and Networking

BÀI 6 LÀM VIỆC VỚI THÀNH PHẦN MỞ RỘNG CỦA CSS3

Chương 7. Application Layer. Tài liệu : Forouzan, Data Communication and Networking

Môn Học: Cơ Sở Dữ Liệu 2. Chương 3 LẤY DỮ LIỆU TỪ NHIỀU NGUỒN

GIẢI THUẬT ĐỊNH TUYẾN (ROUTING ALGORITHM)

Mô hình dữ liệu quan hệ (Relational data model)

Lecture 12. Trees (1/2) Nội dung bài học:

B5: Time to coding. Tới thư mục src/example.java và thay đổi nội dung file như sau: Mã: package at.exam;

HƯỚNG DẪN QUẢN TRỊ HỆ THỐNG

Dọn "rác" Windows 7 vào dịp cuối năm

TỔNG QUAN VỀ.NET VÀ C#

Cập nhật ResultSet trong JDBC

GV: Phạm Đình Sắc or

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Bài thực hành số 2 QUYỀN và ROLE

Tìm hiểu Group Policy Object và các ví dụ

Bài 10: Cấu trúc dữ liệu

BÀI LAB ĐỔI TÊN DOMAIN

Kỹ thuật thu nhỏ đối tượng trong Design (Layout)

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM LẬP TRÌNH MINICHAT. Bài giảng 3. Trang1. Khoa Khoa Học Và Kỹ Thuật Máy Tính

Phần 2. SỬ DỤNG POWERPOINT ĐỂ CHUẨN BỊ NỘI DUNG TRÌNH BÀY

PHÁT TRIỂN ỨNG DỤNG WEB

Bài 6: Xuất nhập (input/output) EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5.

NHẬP MÔN LẬP TRÌNH KHOA HỌC DỮ LIỆU. Bài 10: Thư viện Pandas (2)

LAB IP SLA Bài 1. Bùi Quốc Kỳ ***

LÂ P TRI NH WEB ASP.NET

MỤC LỤC. Giáo trình Thiết kế web Trang 1

Parallels Cloud Server 6.0

Bài 13: C++11. EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

PHÁT TRIỂN ỨNG DỤNG DI ĐỘNG NÂNG CAO

Phần 1: Hướng dẫn sử dụng PictureBox tạo Slide Show

HỢP ĐỒNG MUA BÁN HÀNG HÓA QUỐC TẾ GV: NGUYỄN THỊ BÍCH PHƯỢNG

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Bài thực hành 1: Chỉ mục trong SQL Server

Các kiểu định địa chỉ họ MSC-51

Google Search Engine. 12/24/2014 Google Search Engine 1

Đa ngôn ngữ (Internationalization) trong Servlet

dụng một chính sách, điều này giúp dễ dàng quản lý và cung cấp tính năng Load Balancing (cân bằng tải) phục vụ tốt hơn các yêu cầu của tổ chức.

LINQ TO SQL & ASP.NET

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Giao tiếp giữa các tiến trình

Bài 10. Cấu trúc liên nối. khác nhau được gọi là cấu trúc liên nối. nhu cầu trao đổi giữa các module.

BÀI 4 GIAO TIẾP GIỮA CÁC TIẾN TRÌNH TRONG LINUX

Qu n ả tr h ố g t p ậ tin

BÀI GIẢNG CHƯƠNG 3 GIAO TIẾP KẾT NỐI SỐ LIỆU

Tính kế thừa-2. Bởi: Thanh Hiền Vũ. Định nghĩa lại các thành viên lớp cơ sở trong một lớp dẫn xuất:

Bài tập căn bản Visual Basic.Net Vòng lặp. txtn. txtketqua. btntinh. txtn. txtketqua. btntinh. Trang 1

Exceptions. Outline 7/31/2012. Exceptions. Exception handling is an important aspect of objectoriented. Chapter 10 focuses on:

NỘI DUNG ÔN TẬP MÔN HỆ CƠ SỞ DỮ LIỆU

HTML DOM - Forms. MSc. nguyenhominhduc

HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG KASPERSKY SECURITY CENTER. Version

Kích hoạt phương thức xa (RMI- Remote Method Invocation )

Tối ưu Server để tăng tốc website bằng mod_pagespeed

Time Picker trong Android

LẬP TRÌNH 8051 SỐ HỌC VÀ LÔ GIC

HƯỚNG DẪN SỬ DỤNG NHANH MINDJET MIND MANAGER

Transcription:

Hệ điều hành Bài tập tuần 7_8 1 FILE SYSTEM Bài tập 1 : các lệnh quản lý hệ thống file trong Linux 1. Chúng ta làm quen một số lệnh thao tác với hệ thống file trong Linux : - Tạo thư mục mkdir mkdir /tmp/test - Đọc thư mục ls ls /tmp ls -l / - Tạo file rỗng touch touch /tmp/test/emptyfile - Tạo file bằng nano nano /tmp/test/file1 - Đọc file cat, more cat /tmp/test/file1 cat /etc/passwd - Di chuyển file /thưmuc mv mv /tmp/test/emptyfile /tmp - Sao chép file/thưmuc cp cp /etc/passwd /tmp/test cp -r /tmp/test /tmp/backup - Xóa file /thư mục (*) rm rm /tmp/test/file1 rm -r /tmp/test (*) không xóa các file/thư mục có sẵn trong hệ thống! Áp dụng các lệnh trên tạo thư mục sau trong thư mục cá nhân của <user>? Lưu ý : cần thực hiện lệnh kiểm tra kết quả sau mỗi thao tác /home/user file1.txt file2.txt baitap tai lieu test a.txt b.txt Thực hiện sao chép một số file hệ thống trong /etc/ vào thư mục test? Thực hiện di chuyển file1.txt, file2.txt vào thư mục test? Thực hiện sao chép thư mục test thành /home/user/test2? Thực hiện xóa các file a.txt, b.txt trong test? Thực hiện xóa thư mục test?

Hệ điều hành Bài tập tuần 7_8 2 2. Thuộc tính của file : Chúng ta truy suất thông tin (status) của file và file system thông qua lệnh stat Thực hiện thao tác sau : - Xem thông tin về file system. Cho biết kiểu file system, kích thước block, số block còn free,? stat -f / stat -f /dev - Xem thông tin về file. Cho biết file system ghi nhận những thông tin nào về file? stat /etc/passwd stat /etc Thực hiện tương tự để xem thông tin về một file, một thư mục do sinh viên tạo? So sánh thông tin này với thông tin của lệnh ls l? - Tìm hiểu công dụng của lệnh thay đổi thuôc tính file : man chattr 3. Linux hỗ trợ dạng file đặc biệt : link file. Có hai dạng link file : hard link và symbolic link Thực hiện tạo 2 link file cho file /etc/passwd Tạo hard link : ln /etc/passwd ~/hardlink Tạo symbolic link ln -s /etc/passwd ~/softlink Hãy phân biệt hai dạng link file (hard link và symbolic link) dưới góc độ người dùng và quản lý của file system? 4. Chúng ta tìm hiểu thông tin về partition qua một số lệnh trong Linux: df df -T df -i sfdisk -l sfdisk -s Hãy cắm thêm USB vào hệ thống, rồi thực thi lại lệnh trên. Quan sát thông tin về partition trên USB? 5. Quyền trên file/folder : Người dùng có thể xem thông tin về bộ quyền trên file bằng lệnh ls l hay trên thư mục bằng ls -ld Ví dụ : lệnh ls -ld /mnt cho ta thông tin sau

Hệ điều hành Bài tập tuần 7_8 3 Chúng ta có thể đọc thấy thông tin về quyền của chủ nhân (root) là rwx, quyền của các tài khoản thuộc nhóm root là r-x, và quyền của các tài khoản còn lại (other) là r - x. Hãy thực hiện tạo một file và một thư mục bằng tài khoản mà bạn đang sử dụng. Sau đó đọc thông tin về bộ quyền trên file và thư mục này? Tài khoản là chủ nhân của file/thư mục có thể thay đổi bộ quyền bằng lệnh chmod. Mỗi quyền r,w,x được đại diện bởi một giá trị số : r = 4, w =2, x =1. Như vậy, nếu bộ quyền cần thiết lâp là rwx r-x r-x thì giá trị tương ứng là 755. Nếu bộ quyền cần thiết lập là rwx r-x --- thì giá trị tương ứng là 750. Hãy thay đổi bộ quyền hiện hành trên file vừa tạo bằng chmod, sao cho chủ nhân không có quyền ghi vào file? Kiểm tra kết quả?

Hệ điều hành Bài tập tuần 7_8 4 Bài tập 2 : Thao tác với hệ thống file là một trong những chức năng căn bản của OS. Linux cung cấp các system calls cho phép các chương trình có thể truy suất và thao tác với files. Một số system calls : open: Open a file or device read: Read from an open file or device write: Write to a file or device close: Close the file or device ioctl: Pass control information to a device driver int open(const char *path, int oflags); int open(const char *path, int oflags, mode_t mode); open : Mở hoặc tạo mới một file. Nếu thành công, open trả về một file descriptor fd, và tiến trình sử dụng fd này để giao tiếp với file. path : đường dẫn và tên file oflags : chỉ định file được mở ở chế độ nào. Có thể là một trong các mode sau : O_RDONLY, O_WRONLY, O_RDWR, O_APPEND, O_TRUNC, O_CREAT, O_EXCL, (tham khảo thêm trong man 2 open) mode : được sử dụng khi tạo file mới ( đi với O_CREAT ), chỉ định bộ quyền thao tác trên file của owner, group và other. size_t write(int fd, const void *buf, size_t nbytes); write thực hiện ghi số byte nbytes từ buffer trỏ bởi buf vào file được chỉ định bởi file descriptor fd. Xem chi tiết trong man 2 write Nếu thành công, số byte thực sự ghi vào file được trả về. Ngược lại, nếu lỗi, trả về -1. size_t read(int fd, void *buf, size_t nbytes); read thực hiện đọc nbytes bytes dữ liệu từ file có file descriptor là fd. Dữ liệu đọc được ghi vào vùng nhớ trỏ bởi buf. Xem chi tiết trong man 2 read. Nếu thành công, số byte thực sự đọc được từ file được trả về. Ngược lại, nếu lỗi, trả về -1. int close(int fd); close thực hiện xóa bỏ file descriptor, fd. Tiến trình không thể thao tác với file nữa. Close trả về 0 nếu thành công, nếu lỗi trả về -1. Xem chi tiết trong man 2 close.

Hệ điều hành Bài tập tuần 7_8 5 Tham khảo chương trình simple_write.c. Chương trình thực hiện in một chuỗi ra standard output. // simple_write.c // Neil Matthew & Richard Stones Tham khảo chương trình copy_block.c. Chương trình thực hiện sao chép 1024 byte (1K blocks) từ file.in sang file.out. // copy_block.c // Neil Matthew & Richard Stones Thực hiện viết chương trình sao chép file a sang thành file b? o Tạo file a, ghi dữ liệu vào file a o Sao chép toàn bộ nội dung file a thành file b o Đóng các file khi kết thúc chương trình

Hệ điều hành Bài tập tuần 7_8 6 Bài tập 3 : File system trong Windows 1. Sử dụng lệnh trong cmd (hoặc dùng Windows Explorer ) trong Windows 7 để hiển thị các thuộc tính của một file/folder? 2. Quyền trong NTFS file system (**): - Xác định tài khoản đang sử dụng? - Tạo một thư mục và file trong T:\? Đọc Access Control List của file/thư mục? o T:\thuchanhWin o T:\thuchanhWin\baitap3.txt - Tạo một tài khoản mới, tên <tensv>? Phân quyền để tài khoản <tensv> o Có quyền đọc nội dung thư mục, xem thuộc tính của thư mục, không có quyền xóa thư mục o Có quyền đọc file, xem thuộc tính của file, không có quyền thay đổi nội dung file Thực hiện kiểm tra quyền vừa gán trên file/folder cho <tensv>? - Nhận diện owner, sau đó thay đổi owner của file và thư mục ở câu trên? Thực hiện test các quyền của owner mới?

Hệ điều hành Bài tập tuần 7_8 7 - Login bằng tài khoản <tensv>, tạo một thư mục T:\tenSVfolder Đọc Access Control List của thư mục. Login bằng tài khoản loptruong, loppho. Thử đọc thư mục, xem thuộc tính thư mục? Nhận xét? Hủy bỏ thừa kế quyền từ thư mục cha trên thư mục T:\tenSVfolder Thiết lập phân quyền trên thư mục này như sau : o Cho phép tài khoản loptruong có quyền : Traverse folder/execute file List folder/read data Read attributes Read extended attributes Login vào bằng tài khoản loptruong, loppho. Thử đọc thư mục, xem thuộc tính thư mục? Nhận xét? - Tài khoản <tensv> tạo thư mục T:\public. Thực hiện share thư mục T:\public quyền đọc cho everyone. Tài khoản <tensv> tạo thư mục T:\chiase. Thực hiện share thư mục T:\chiase quyền đọc+ghi cho một tài khoản thứ hai. Thực hiện test tại một host khác. Tại host ban đầu, sử dụng MMC để xem thông tin về các shared folder. (click phải mouse vào Computer => chọn manage => chọn Shared folders. ) (**)Tham khảo tài liệu sau về NTFS folder and file permissions <nguồn http:// > Các khái niệm : a. Access Control List : NTFS lưu một Access Control List (ACL) cho mọi file và folder trên một tệp đĩa NTFS. Access Control List chứa một danh sách tất cả các user account và group với các quyền có trên file/folder. (xem hình 1) b. Các NTFS Permissions : o Có thể cấp quyền cho Local groups và users trên một computer o Những đối tượng có khả năng cấp NTFS permissions : Administrators, chủ nhân (owners) của file /folder, và người dùng có quyền Full Control. o Quyền gán cho folder và file có khác biệt ( xem hình 2) o Các quyền này được xây dựng từ 13 quyền căn bản (xem hình 3) o Thừa kế quyền (inheritance of permissions) ( xem hình 4)

Hệ điều hành Bài tập tuần 7_8 8 Files/subfolders trong một folder được thừa kế tất cả các quyền của folder cha Áp dụng với những quyền có tính năng cho thừa kế HÌNH 1: Right-click vào file/folder => chọn Properties => chọn Security tab. Trong mục Group or user names, chọn một user/group và quan sát quyền hiện có trong mục Permissions for Users Thay đổi quyền hiện tại : chọn Edit trong hộp thoại Properties => chọn /bỏ chọn trên cột Allow và Deny để cấp thêm hay hủy bỏ quyền cho một user/group.

Hệ điều hành Bài tập tuần 7_8 9 HÌNH 2: NTFS folder permission NTFS file permission Read x x Write x x List Folder Contents x Read & Execute x x Modify x x Full Control x x HÌNH 3: Lưu ý : Groups hoặc users có quyền Full Control trên một folder có quyền xóa file trong folder kể cả khi tồn tại quyền ko cho xóa trên file. Traverse folder/execute file (đi xuyên qua folder / thi hành file). Đối với folder, cho phép đi xuyên qua folder đó để truy cập vào folder con. Đối với file, cho phép thi hành (chạy). Tất nhiên, việc thi hành (chạy) chỉ có tác dụng nếu file ấy là một file chương trình.

Hệ điều hành Bài tập tuần 7_8 10 List folder/read data (hiện thư mục, đọc dữ liệu). Đối với folder, cho phép xem thư mục. Đối với file, cho phép đọc. Read attributes (đọc thuộc tính). Cho phép đọc các thuộc tính của file và folder. Read extended attributes (đọc thuộc tính mở rộng). Cho phép đọc các thuộc tính mở rộng của file và folder. Create files/write data (tạo file, viết dữ liệu). Đối với folder, cho phép tạo file trong folder ấy. Đối với file, cho phép viết đè vào trong file. Create folders/append data (tạo folder, nối dữ liệu). Đối với folder, cho phép tạo folder con trong folder ấy. Đối với file, cho phép viết thêm vào cuối file (việc viết thêm không thay đổi nội dung hiện hữu mà sẽ làm cho file dài ra thêm một phần nội dung mới.) Write attributes (viết thuộc tính). Cho phép thay đổi các thuộc tính của file và folder. Write extended attributes (viết thuộc tính mở rộng). Cho phép thay đổi các thuộc tính mở rộng của file và folder. Delete subfolders and files (xóa folder con và file). Đối với folder, cho phép xóa các folder con và file bên trong folder ấy. Quyền này không tồn tại đối với file. Delete (xóa). Đối với folder và file, cho phép xóa bản thân folder ấy/file ấy. Read permissions (đọc quyền). Cho phép đọc các quyền truy nhập folder/file. Change permissions (đổi quyền). Cho phép thay đổi các quyền truy nhập folder/file. Take ownership (xác lập chủ quyền). Cho phép xác lập quyền sở hữu folder/file. HÌNH 4: Khi phân quyền cho một folder, quyền đã phân sẽ có thể sẽ áp dụng lên cả các folder con và file bên trong, việc này gọi là thừa kế. Việc thừa kế thực hiện theo một trong sáu kiểu sau đây. This folder only (chỉ folder này thôi). Quyền chỉ áp dụng cho folder này, không thừa kế. This folder, subfolders and files (folder này, các folder con và các file). Quyền áp dụng cho folder này, các folder con và các file. Thừa kế toàn phần. This folder and subfolders (folder này và các folder con). Quyền áp dụng cho folder này và các folder con. Các folder con thừa kế. This folder and files (folder này và các file). Quyền áp dụng cho folder này và các file. Các file thừa kế. Subfolders and files only (các folder con và các file thôi). Quyền áp dụng chỉ cho các folder con và các file. Thừa kế toàn phần ngoại trừ bản thân. Subfolders only (chỉ các folder con thôi). Quyền áp dụng chỉ cho các folder con. Các folder thừa kế ngoại trừ bản thân. Ngoài ra, việc thừa kế còn được điều khiển bởi một check box tên là Apply these permissions to objects / container within this container only (chỉ áp dụng những quyền này cho các đối tượng hay container ngay trong container này mà thôi).