Professional Documents
Culture Documents
CS 226 - He Dieu Hanh Unix-Linux - 2022F - Lecture Slides - 06
CS 226 - He Dieu Hanh Unix-Linux - 2022F - Lecture Slides - 06
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 2 of 36
40
Hệ Điều Hành Unix/Linux
Mục tiêu:
Sau khi hoàn thành chương này, sinh viên sẽ nắm được các vấn đề sau:
• Nắm về quy tắc quản lý thiết bị trong Unix/Linux, quy tắc đặt tên
thiết bị.
• Nắm rõ về hệ thống tập tin ext3/ext4 của Linux và nắm một số lệnh
trong quản lý hệ thống tập tin.
• Hiểu được cơ chế PIPE, xử lý văn bản và các bộ lọc.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 3 of 36
40
Hệ Điều Hành Unix/Linux
NỘI DUNG
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 4 of 36
40
Hệ Điều Hành Unix/Linux
Nội dung
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 5 of 36
40
Hệ Điều Hành Unix/Linux
Hệ thống tập tin
Trong Linux không có khái niệm ổ đĩa. Sau quá trình khởi
động, toàn bộ các thư mục và tập tin được kết gắn và tạo
thành một hệ thống tập tin thống nhất, bắt đầu từ gốc ‘/’
/
hda1
hda2 /usr /home
hdb1 /src
hdc1
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 6 of 36
40
Hệ Điều Hành Unix/Linux
Kiểu hệ thống tập tin
Linux hỗ trợ rất nhiều kiểu hệ thống tập tin như: ext, ext2,
minix, msdos, vfat, smb, iso9660, sysv, xfs,…
Hệ thống tập tin đầu tiên Linux hỗ trợ là Minix cho phép tập
tin có tên tối đa là 30 ký tự và kích thước không vượt quá
64MB.
Hệ thống tập tin đặc thù của Linux là ext, ext2, ext3, ext4.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 7 of 36
40
Hệ Điều Hành Unix/Linux
Giới hạn của một số hệ thống file
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 8 of 36
40
Hệ Điều Hành Unix/Linux
Cấu trúc hệ thống tập tin
Với cấu trúc ext3, Linux có hai dạng tổ chức tập tin:
Dạng vật lý: tập tin được tìm thấy trên đĩa cứng.
Dạng logic: tập tin thuộc sở hữu của ai.
Với tổ chức vật lý, Linux sử dụng một tập hợp các bảng các
nút thông tin gọi là "i-nodes".
Với tổ chức lôgic nó sử dụng hệ thống thư mục cây phân
cấp.
Lưu ý: Trong Linux một thư mục là một tập tin chứa danh
sách của tất cả các tập tin và thư mục con của thư mục đó.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 9 of 36
40
Hệ Điều Hành Unix/Linux
Cấu trúc hệ thống tập tin
Các phần tử của thư mục có dạng:
i-nodes Filename
Mỗi i-nodes chứa các thông tin liên quan đến một tập tin bao gồm:
Permis
i-node Type Link UID GID Size Time
sion
Nối kết chỉ ra
Loại Quyền Chủ Thời
số tập tin luận Nhóm Kích
inum tập truy sở gian
lý nối kết với sở hữu thước
tin xuất hữu (modify)
tập tin vật lý
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 10 of 36
40
Hệ Điều Hành Unix/Linux
Kiểu tập tin
Trường type cho biết kiểu của tập tin, Linux có một số kiểu tập tin
sau:
‘–’ : cho biết đó là một tập tin bình thường.
‘d’ : là một thư mục.
‘c’ : cho thiết bị ngoại vi dạng ký tự (như bàn phím).
‘b’ : cho thiết bị ngoại vi dạng block (như ổ đĩa cứng).
‘p’ : tập tin truyền dẫn pipe
‘s’ : tập tin truyền dẫn socket
‘l’ : tập tin liên kết
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 11 of 36
40
Hệ Điều Hành Unix/Linux
Tên tập tin và thư mục
Tên file không dùng phần mở rộng như Windows (Ví dụ, tho.txt,
dấu chấm cũng là tên)
Tên hợp lệ là một chuỗi bao gồm các ký tự:
Chữ cái viết hoa (A to Z)
Chữ cái viết thường (a to z)
Chữ số (0 to 9)
Dấu chấm (.), dấu gạch dưới (_), dấu phẩy (,).
Không nên chứa khoảng trắng hoặc các ký tự sau:
&*\|[]{}$<>()#?‘“/;^!~%
Không trùng tên với tập tin hoặc thư mục đã có
Tránh đặt tên tập tin hoặc thư mục trùng với các lệnh UNIX.
Tên phân biệt chữ hoa thường.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 12 of 36
40
Hệ Điều Hành Unix/Linux
Tên tập tin và thư mục
Các chú ý:
Tên file bắt đầu bằng dấu chấm ‘.’ là các file ẩn
Dấu . chỉ thư mục hiện hành
Dấu .. chỉ thư mục cha
Dấu ~ chỉ thư mục chủ (home) của user (tương ứng $HOME)
Dấu ~username chỉ thư mục chủ của user xác định bởi
username
~+ tương đương với $PWD
~- tương đương với $OLDPWD (thư mục hiện hành trước đó)
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 13 of 36
40
Hệ Điều Hành Unix/Linux
Cây thư mục Linux
Hệ thống tập tin Linux được tổ chức theo cây thư mục.
Cây bắt đầu với thư mục gốc “/” và các thư mục con.
Các files nằm trong các thư mục.
Các thư mục cơ sở (thư mục hệ thống)
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 14 of 36
40
Hệ Điều Hành Unix/Linux
Các thư mục cơ sở
/home: chứa các thư mục chủ của người dùng.
/tmp: thư mục chứa tập tin tạm thời.
/var: chứa tập tin thường xuyên thay đổi.
/lib: các thư viện chia sẻ cho các đoạn trình (routine) trong
/bin và /usr/sbin. Cũng chứa các module của nhân.
/mnt: điểm mount cho hê thống file bên ngoài
/proc: thông tin về nhân.
/var/www: Vị trị các trang HTML cho web server.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 15 of 36
40
Hệ Điều Hành Unix/Linux
Các lệnh thao tác hệ thống tập tin
Thao tác thư mục
Thao tác trên tập tin
Quyền truy xuất
Liên kết tập tin thư mục
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 16 of 36
40
Hệ Điều Hành Unix/Linux
Tạo mới thư mục
Cú pháp : mkdir [paths]
Trong đó:
paths là tên các thư mục cần tạo.
Ví dụ:
$ mkdir baitap
$ mkdir document
$ mkdir baitap/perl
$ mkdir -p tailieu/linux
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 17 of 36
40
Hệ Điều Hành Unix/Linux
Thay đổi thư mục hiện hành
Cú pháp : cd <path>
Trong đó:
path chứa thư mục muốn chuyển đến.
. : yêu cầu chuyển đến thư mục hiện hành.
.. : chuyển đến thư mục cha.
Ví dụ:
– [...]$ cd baitap
– [...]$ cd /home
– [...]$ cd ..
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 18 of 36
40
Hệ Điều Hành Unix/Linux
Liệt kê nội dung thư mục
Cú pháp : ls [options] [path]
Trong đó:
path: Là danh sách tên tập tin hay thư mục.
Các options có thể là:
-a: Liệt kê tất cả các mục, bao gồm các thành phần bắt đầu với
mục đó
-l: Liệt kê theo dạng thức đầy đủ, kích thước tập tin, người tạo ra,
-R: Liệt kê tất cả các file kể cả các files bên trong thư mục con.
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 19 of 36
40
Hệ Điều Hành Unix/Linux
Xem thông tin về tập tin và thư mục
Ví dụ:
– $ ls -lF
• total 75
• drwxrwxr-x 2 user12 user12 1024 Apr 7 09:41 baitap/
• drwxrwxr-x 2 user12 user12 1024 Apr 7 09:41 doc/
• -rwxrwxr-x 1 user12 user12 71 Mar 31 10:39 hello*
• -rw-rw-r-- 1 user12 user12 126 Apr 7 09:26 baitho.txt
• -rw-rw-r-- 1 user12 user12 70 Apr 7 08:26 hello.c
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 20 of 36
40
Hệ Điều Hành Unix/Linux
Di chuyển thư mục
Cú pháp : mv <source> <destination>
Trong đó:
source thư mục nguồn – thư mục cần di chuyển.
Ví dụ:
$ mkdir ctrinh
$ ls –lF
$ mv ctrinh baitap
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 21 of 36
40
Hệ Điều Hành Unix/Linux
Xoá thư mục
Xóa thư mục rỗng:
Cú pháp : rmdir <path>
Ví dụ:
$ rmdir /home/baitap
Ví dụ:
$ rm -r /home/doc
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 22 of 36
40
Hệ Điều Hành Unix/Linux
Tạo tập tin
Bằng lệnh touch: cho phép tạo ra tập tin rỗng
Cú pháp: touch filename
Ví dụ:
$ touch data.txt
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 23 of 36
40
Hệ Điều Hành Unix/Linux
Xem nội dung tập tin
Xem nội dung tập tin văn bản (text)
Cú pháp:
cat filename
more filename
less filename
Ví dụ:
$ cat data.txt
$ more bt1.txt
$ less bt2.txt
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 24 of 36
40
Hệ Điều Hành Unix/Linux
Nối nội dung tập tin
Chuyển hướng nối kết quả vào một tập tin:
$ cal 6 2017 > june.t
$ cal 7 2017 > july.t
$ cal 8 2017 > august.t
$ cat june.t july.t august.t > summer.t
Linux cũng cho phép thêm thông tin vào cuối của một tập tin bằng
phép chuyển hướng “>>”.
$ cal 9 2017 >> summer.t
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 25 of 36
40
Hệ Điều Hành Unix/Linux
Sao chép tập tin
Sao chép (copy) nội dung tập tin vào tập tin khác.
Cú pháp:
-u: chỉ sao chép nếu tập tin nguồn mới hơn tập tin đích.
$ vi tho.txt
$ mv tho.txt baitho.doc
$ ls
Sao chép tất cả các tập tin vào một thư mục
$ cp * <directory>
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 27 of 36
40
Hệ Điều Hành Unix/Linux
Di chuyển/đổi tên
Di chuyển (move) hoặc đổi tên (rename) tập tin hoặc thư mục trong
cây thư mục.
Cú pháp:
mv <tập tin nguồn> <thư mục đích>
Ví dụ:
$ mv summer.t /usr/local/dev
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 28 of 36
40
Hệ Điều Hành Unix/Linux
Tìm kiếm một tập tin
Lệnh find cho phép tìm kiếm một hay nhiều tập tin trong một cây
thư mục.
Tìm theo tên:
find <path> -name <filename>
Tìm theo số i-node của tập tin:
find <path> -inum <number>
Tìm theo tên người sở hữu :
find <path> -user <username>
Tìm theo kiểu hoặc kích thước tập tin:
find <path> [-type <Tname>] [-size <±num>]
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 29 of 36
40
Hệ Điều Hành Unix/Linux
Tìm kiếm một tập tin
Để tránh các thông báo lỗi đưa ra màn hình, có thể đổi hướng đầu ra
lỗi chuẩn (stderr) tới một tập tin rỗng (/dev/null ):
find / -name <filename> - print 2> /dev/null
Ví dụ:
$ find / -name ttyc2d1 - print 2>/dev/null
/dev/ttyc2d1
$ ls -i /unix
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 30 of 36
40
Hệ Điều Hành Unix/Linux
Xóa tập tin
Xoá (remove) danh sách tập tin. Chú ý là tập tin sẽ không khôi phục
được sau khi xóa
Cú pháp:
rm [options] [<danh sách tên tập tin>]
Trong đó: các options có thể là:
-f: xóa lập tức (không đưa ra các nhắc nhở)
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 31 of 36
40
Hệ Điều Hành Unix/Linux
Các thao tác trên tập tin/thư mục
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 32 of 36
40
Hệ Điều Hành Unix/Linux
Nén/giải nén tập tin: zip/unzip
Nén một hoặc nhiều tập tin
Cú pháp: zip [<tập tin zip>] [<tập tin nguồn>]
Ví dụ:
Trong đó:
-d chỉ tên thư mục chứa nội dung sau khi giải nén
Ví dụ
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 34 of 36
40
Hệ Điều Hành Unix/Linux
Đóng gói/bung gói tar
Cú pháp: tar [options] <destination.tar> <source>
Trong đó: các options có thể là:
-c: Tạo file tar.
-v: In thông tin quá trình đóng gói
-f: Tập tin
-x: Bung (phục hồi) gói tar
-z: Nén/Giải nén
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 35 of 36
40
Hệ Điều Hành Unix/Linux
Đóng gói/bung gói tar
Để tạo ra một lưu trữ tar:
Cú pháp: tar -cvf <destination.tar> <source>
Ví du:
Vi dụ:
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 36 of 36
40
Hệ Điều Hành Unix/Linux
Nén/giải nén tập tin gzip
Dùng gzip để giải nén và giải nén tập tin kiểu .tar.gz
Cú pháp:
gzip [options] <tập tin kiểu tar>
Trong đó: các options có thể là:
-d: Giải nén
Ví dụ:
gzip data.tar (sẽ tạo ra tập tin data.tar.gz)
gzip –d data.tar.gz (Giải nén thành data.tar)
Hoặc: gunzip data.tar.gz (Giải nén thành data.tar)
Có thể dùng tar để giải nén tập tin tar.gz:
tar –xvfz data.tar.gz (Tạo ra tập tin data.txt)
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 37 of 36
40
Hệ Điều Hành Unix/Linux
Hỏi đáp
Bạn sử dụng lệnh nào sau đây để quyền truy câp của tập tin
giaithua.sh là: rwS--s--x
A. chmod 4701 giaithua.sh
B. chmod 6611 giaithua.sh
C. chmod 4611 giaithua.sh
D. chmod 6711 giaithua.sh
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 38 of 36
40
Hệ Điều Hành Unix/Linux
Hỏi đáp
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 39 of 36
40
Hệ Điều Hành Unix/Linux
Hỏi đáp
Gói phầm mềm Linux nào sau đây được dùng cho việc “Web
Caching”?
A. apache
B. samba
C. qmail
D. squid
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 40 of 36
40
Hệ Điều Hành Unix/Linux
Hỏi đáp
Hai quyền nào bắt buộc phải có nếu user muốn thực thi shell
script?
A. Read & Write
B. Execute & SUID
C. Read & Execute
D. Write & Execute
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 41 of 36
40
Hệ Điều Hành Unix/Linux
Hỏi đáp
Xem kết quả hiển thị sau: -rw-r--r-- 7 sv students 1024 Mar
20 2013 baocao.doc. Để cho phép các users thuộc group
students có thể thao tác đọc ghi trên file này, người truy cập
file cần được thiết lập thành:
A. rw-r--r--
B. rw-rw-r--
C. rw-r-xr--
D. rw-r--rw-
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 42 of 36
40
Hệ Điều Hành Unix/Linux
Link tham khảo
Quản lý file, thư mục Linux
https://www.youtube.com/watch?v=bxLF_cOkEDE
Các lệnh làm việc với File trong Linux
https://www.youtube.com/watch?v=VGTVbODEkMo
Quản lý hệ thống file trong Linux
https://www.youtube.com/watch?v=mcIe7clO12Y
File type và file permission trong Linux
https://www.youtube.com/watch?v=j3qjsuwZYAc
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 43 of 36
40
Hệ Điều Hành Unix/Linux
Thank you
Q&A
Ver. 1.0 GV: ThS. Hoàng Phi Cường – SĐT: 0901 134 774 – EMAIL: hoangphicuong@duytan.edu.vn Slide 44 of 36
40