SlideShare a Scribd company logo
1 of 39
Download to read offline
1




   HỆ ĐIỀU HÀNH LINUX
 (Hệ thống tập tin & thiết bị)
Phạm Nguyên Khang, Đỗ Thanh Nghị
Email: pnkhang,dtnghi@cit.ctu.edu.vn
Nội dung
                           2

Hệ thống tập tin

Thiết bị ngoại vi

Trợ giúp

Các lệnh thao tác trên file và thư mục
Hệ thống tập tin
                           3

Cấu trúc cây
Đường dẫn
Các hệ thống tập tin trên linux
Hệ thống tập tin EXT2
Quyền truy cập
Hệ thống tập tin
                                 4

Cấu trúc cây
Nút: thư mục (directory, folder)
Lá: tập tin (file)
Điểm bắt đầu: gốc (root), kí hiệu /
Hệ thống tập tin
                                   5

Đường dẫn (path)
Dùng để chỉ định một phần tử (nút) trên cây thư mục: thư mục hoặc tập
tin
Đường dẫn tuyệt đối: bắt đầu từ gốc (/) đi qua các nút trung gian và sau
cùng đến phân tử quan tâm (sử dụng dấu / để phân cách các nút trên
đường dẫn)
Ví dụ: /home/pnkhang/cours/linux/chuong1.ppt
Đường dẫn tương tối: bắt đầu từ thư mục hiện hành đi đến phần tử quan
tâm (có thể đi ngược lên thư mục cha)
Ví dụ: giả sử thư mục hiện hành là /home/pnkhang, ta có thể sử dụng
đường dẫn tương đối: cours/linux/chuong1.ppt
Chú ý: / có 2 ý nghĩa
Đứng đầu đường dẫn tuyết đối: gốc, hay thứ mục gốc
Xuất hiện chỗ khác: phân cách các thư mục
Hệ thống tập tin
                                           6

Một số thư mục chuẩn:
/bin, /sbin: chứa các lệnh cần thiết cho hệ thống
/dev: tập tin thiết bị hoặc các file đặc biệt
/etc: chứa các file cấu hình của Linux
/lib: kernel modules, thư viện chia sẻ cho các lệnh nằm trong /bin, /sbin
/mnt, /media: (mount point) dùng để ánh xạ các phân vùng đĩa
/proc: những thông số của kernel
/boot: Linux kernel, system map cho bước 2 của bootloader
/home: thư mục người dùng
/root: thư mục của root (admin, người quản trị)
/tmp: thư mục tạm
/usr: tài nguyên (tĩnh, chia sẻ) cho người dùng
/usr/local, /opt: phần mềm, thư viện chia sẻ
/var: dữ liệu thay đổi, thư mục spool (máy in), tập tin nhật ký (logs), thư mục chia sẻ
và không chia sẻ
Các kiểu hệ thống tập tin
                              7

ext2 (Linux native)
ext3 = ext2 + nhật ký
Khôi phục nhanh hệ thống file khi có sự cố
ext4:
Kế thừa từ ext3, ra đời từ phiên bản 2.6.28 của nhân Linux
(25/12/2008 )
Kích thước file tối đa lên đến 16TB, kích thước đĩa tối đa đến
1 EB (exabytes, 1018B)
swap: hệ thống file dùng làm vùng đệm cho bộ nhớ
chính
Công cụ tạo hệ thống file
                                  8

Công cụ tạo hệ thống file: mkfs, mke2fs
Cú pháp: mkfs -t <kiểu hệ thống file> /dev/<tên file thiết
bị>
Ví dụ: mkfs -t ext2 /dev/hda1
Cú pháp: mke2fs /dev/<tên file thiết bị>
Ví dụ: mke2fs /dev/hda1 (mkfs -t ext2 /dev/hda1)



Chú ý:
Để có thể sử dụng được lệnh, ta phải mở một terminal và
gõ lệnh tương ứng (xem phần hướng dẫn cài đặt)
Tính nhất quán của hệ thống file
                           9

Hệ thống file bị lỗi
Do cúp điện, tắt máy bất bình thường không sử dụng
shutdown
Kiểm tra và khôi phục lại tính nhất quán của
hệ thống file
Sử dụng: fsck -t <kiểu hệ thống file> /dev/<tên file
thiết bị>
Ví dụ: fsck –t ext2 /dev/hda1
Các kiểu hệ thống tập tin
                                     10

Hệ thống file ext2 (Linux native)
Chia thành Blocks có kích thước 1KB (2KB, 4KB hoặc 8KB tùy hệ thống) và
nhóm lại thành block group
Super Block: chứa thông tin về kích thước 1 block, các inodes rỗng, thời điểm
mount vừa qua, etc.
Hệ thống Ext2
                                      11

File system                File Size Limit      File system Size Limit


ext2 with 1 KB blocksize   16448 MB (~ 16 GB)   2048 GB (= 2 TB)



ext2 with 2 KB blocksize   256 GB               8192 GB (= 8 TB)



ext2 with 4 KB blocksize   2048 GB (= 2 TB)     16384 GB (= 16 TB)



ext2 with 8 KB blocksize   65568 GB (~ 64 TB)   32768 GB (= 32 TB)
Hệ thống Ext2
                               12

Hệ thống file ext2 quản lý 3 loại phần tử
Thư mục
Tập tin bình thường
Chuỗi tuần tự bytes
Tập tin đặc biệt
Thiết bị ngoại vi và các công cụ giao tiếp
Tất cả đều được quản lý bằng inode
Cú pháp, lệnh,quyền truy cập đều được quản lý giống nhau
Inode
                                  13

Inode
Khối cơ bản
Mỗi file hay thư mục được mô tả
bằng một và chỉ một inode.
Các inodes của mỗi Block
Group được lưu trong bảng
inode cùng với sơ đồ sử
dụng inode (inode bitmap,
cho biết inode đã sử dụng,
inode nào chưa)
Hình bên mô tả cấu trúc của
một inode
Inode
                                         14

Mode
Cho biết inode này biểu diễn gì: tập tin, thư mục, liên kết mềm, thiết bị khối, thiết
bị ký tự hoặc thiết bị FIFO
Quyền truy cập
Owner Information
Người dùng và nhóm người dùng của file hay thư mục này
Size
Kích thước của tập tin (tính bằng bytes),
Timestamps
Lưu trữ thông tin về thời gian của inode: thời gian tạo ra, lần cuối cùng thay đổi,
…
Datablocks
Các con trỏ trỏ đến các khối dữ liệu mà inode này mô tả
12 con trỏ đầu tiên trỏ đến các khối vật lý chứa dữ liệu thật sự
3 con trỏ kế tiếp mỗi con trỏ đến một khối gián tiếp bậc 1, bậc 2 và bậc 3.
Mỗi khối gián tiếp chứa B/4 con trỏ
Inode
                           15

Chú ý:
inode có thể mô tả các tập tin thiết bị. Đây không phải
là các tập tin thật sự mà là các thẻ bài để chương trình
thông qua nó truy cập các thiết bị.

Tất cả các tập tin trong /dev cho phép chương trình truy
xuất các thiết bị của Linux. Ví dụ chương trình mount
có một tham số là một tập tin thiết bị mô tả thiết bị ta
cần ánh xạ.
Thư mục
                                        16
                                                 Đĩa       147 .
Danh mục các tập tin và thư mục                             83 ..
con                                                       1568 example
Tạo ra bằng lệnh mkdir <tên
thư mục>
Có thể xem như thư mục là một                inode 1568     Thư mục
file đặc biệt chứa danh sách các
mục (record)                                              Nội dung của
Mỗi thư mục chứa ít nhất 2 mục:                            file example
Bản thân thư mục này     .
Thư mục cha              ..
Các mục còn lại (nếu có) chứa các tập
tin và thư mục con của thư mục này
Mỗi mục của thư mục có cấu trúc
như hình bên
Liên kết (link)
                                         17

Liên kết cứng                                     Đĩa       147 .
Đường dẫn truy cập đến một tập tin                           83 ..
Tạo một liên kết                                           1568 example
Sử dụng lệnh ln <file> <tên liên kết>
Thêm một mục vào thư mục
Mục đích: tạo ra một tên cục bộ               inode 1568    Thư mục D1
(hoặc bí dánh) ngắn cho một một tập
tin
Xóa một tập tin = xóa một liên kết =
giảm số liên kết của inode biểu diễn
tập tin thật sự, khi số tham chiếu = 0                       59 .
 xóa thật sự file này                                        5 ..
Chú ý: không thể tạo liên kết                              1568 link
cứng cho một thư mục
                                                            Thư mục D2
Liên kết (link)
                                            18

Liên kết mềm (symbolic link)                         Đĩa
file có nội dung là tên của một file khác                      147 .
hoặc một thư mục                                                83 ..
                                                              1568 example
Tạo liên kết mềm                                 inode 1568
      ln –s file <tên liên kết>
                                                               Thư mục D1

Xóa một liên kết mềm không ảnh
hưởng gì đến file mà nó trỏ đến
Xóa file hoặc thư mục mà một liên kết                           59 .
mềm trỏ đến sẽ làm cho liên kết không            inode 2529      5 ..
còn hợp lệ nữa                                                2529 link

                   Chứa đường dẫn đến file example, vd:        Thư mục D2
                   /home/D1/example
Thiết bị ngoại vi
                                19

Thiết bị ngoại vi
xem như một file
chứa trong thư mục /dev
có các quyền truy cập giống như file và thư mục
Tuy nhiên, xử lý bên trong sẽ khác nhau
Hàm của hệ thống file đối với các file bình thường
Trình điều khiển thiết bị (drivers) đối với các thiết bị
Thiết bị hoạt động ở hai chế độ
Khối (block)
Ký tự (character)
Chế độ khối
                                      20

Các thiết bị hoạt động ở chế độ khối có 4 tính chất:
Khối: đơn vị thông tin (dữ liệu) có kích thước cố định (512B, 1KB, 4K, …)
Truy xuất ngẫu nhiên (random access) vào một khối n i bất kỳ
Sử dụng vùng nhớ đệm ở cấp độ nhân (kernel level)
Có thể tạo một hệ thống file trên thiết bị này
Các thiết bị hoạt động ở chế độ khối được xem như một dải các khối từ 0
đến N – 1.
Ví dụ: đĩa, băng từ, …
Truy xuất thông tin từ các thiết bị gồm 2 bước:
Đọc:
Chuyển khối dữ liệu từ thiết bị sang bộ nhớ hệ thống (caching)
Sao chép khối dữ liệu từ bộ nhớ hệ thống sang bộ nhớ chương trình
Ghi:
Tương tự như đọc, đôi khi kèm theo các cơ chế đồng bộ hóa
Chế độ ký tự
                                          21

Các thiết không hoạt động ở chế độ khối
Trao đổi bất kỳ lượng thông tin nào
Truy xuất tuần tự
Không sử dụng bộ nhớ đệm
Không có hệ thống file trên thiết bị
Ví dụ:
Thiết bị đầu cuối (terminal), máy in, socket, …
Truy xuất gần như truy xuất file bình thường
Hai chế độ đọc:
Theo dòng (line): dữ liệu sẽ được truyền đi khi một ký tự đặc biệt được
phát ra (ví dụ; ký tự xuống dòng)
Cho phép điều khiển luồng dữ liệu, ngắt
Từng ký tự (raw): đọc từng ký tự một
Trình điều khiển thiết bị
                             22

Trình điều khiển thiết bị (driver)
Điều khiển một loại thiết bị nào đó
Tập hợp các hàm định nghĩa sẵn (open, read, write, close,
…)
Các hàm được nhóm lại trong 2 bảng
bdevsw (chế độ khối)
cdevsw (chế độ ký tự)
Inode của một thiết bị có 2 mục
Số hiệu chính (major number): chỉ số trong bảng bdevsw
hoặc cdevsw
Số hiệu phụ (minor number): mô tả một đơn vị cụ thể nào đó
của loại thiết bị
Thiết bị giả lập
                                 23

Pseudo devices
Được quản lý như một thiết bị nhưng không gắn kết với
một thiết bị vật lý nào
Bao gồm:
Thiết bị ảo:
Terminal: cửa sổ, nối kết mạng
Phân vùng đĩa
/dev/null: thùng rác, ghi gì vào đây cũng mất hết
/dev/tty: terminal gắn kết với chương trình
/dev/mem: ảnh bộ nhớ của tiến trình
Trợ giúp
                                         24

Tài liệu hướng dẫn sử dụng được               Sử dụng lệnh
chia thanh 8 phần                             Man [section] <lệnh>
Chương trình thực thi hoặc lệnh của           Ví dụ: man ls
Shell                                         Hoặc: man 1 ls
Gọi hệ thống (hàm do nhân cung cấp)
                                              Để thoát khỏi trang hướng dẫn
Gọi thư viện (hàm do các thư viện             gõ phím q
chương trình cung cấp)
Các files đặc biệt (trong /dev)
Định dạng file và các quy ước
Games
Khác
Lệnh quản trị hệ thống (dành riêng cho
root)
Hàm của nhân
Trợ giúp
                                  25

Mỗi trang hướng dẫn (kết quả của lệnh man) gồm nhiều phần
NAME                     Tên lệnh
SYNOPSIS                 Cú pháp
DESCRIPTION              Mô tả
EXAMPLES                 Ví dụ minh họa
OPTIONS                  Các tùy chọn
FILES                    Các files có liên quan
VERSION                  Phiên bản
EXIT STATUS              Trạng thái kết thúc
RETURN VALUE             Kết quả trả về của lệnh
NOTES                    Ghi chú
BUGS                     Lỗi
AUTHORS                  Tác giả
SEE ALSO                 Xem thêm
…
Trợ giúp
                          26

Lệnh man chỉ hiển thị trợ giúp khi ta gõ đúng tên lệnh
Nếu không nhớ chính xác tên lệnh ta có thể sử dụng
lệnh tìm kiếm thông tin
apropos <từ khóa>
Ví dụ:
apropos editor
apropos lock
Các lệnh trên file và thư mục
                              27

ls: liệt kê thư mục
cd: đổi thư mục hiện hành
pwd: in đường dẫn của thư mục hiện hành
mkdir: tạo thư mục
rm: xóa file, thư mục
cp: copy file hoặc thư mục
mv: đổi tên hoặc di chuyển file/thư mục
ln: tạo liên kết (cứng và mềm)
touch: tạo và thay đổi thuộc tính file
find: tìm kiếm file/thư mục
which, whereis và locate: tìm file trong cơ sở dữ liệu
Các lệnh trên file và thư mục
                                         28

Lệnh liệt kê thư mục: ls
Cú pháp: ls [options] <Path>
Options
-i: liệt kê inode
-h: in ra kích thước dễ đọc
-l: liệt kê mỗi mục trên một dòng
-n: liệt kê cả UID và GID
-p: hiển thị cả các ký hiệu mô tả (/, =, @)
-R: recursive để liệt kê cả những thư mục con
-S: sắp xếp kết quả theo kích thước
-t (-c): sắp xếp kết quả theo thời gian cập nhật
-u: hiển thị thời gian của lần truy cập sau cùng
…
Xem thêm các options khác: man ls
Các lệnh trên file và thư mục
                        29

Lệnh chuyển đổi thư mục hiện hành (cd)
Cú pháp: cd <thưmục>
Ví dụ:
cd /home/pnkhang/toto
cd ../dtnghi/toto
Lệnh in ra vị trí thư mục hiện hành (pwd)
Ví dụ:
pwd
Các lệnh trên file và thư mục
                                  30

Nhóm lệnh tạo/xóa thư mục: mkdir, rm
Cú pháp của lệnh tạo thư mục: mkdir <DirName>
Ví dụ: mkdir data
Cú pháp của lệnh xoá thư mục: rm -r <DirName>
Ví dụ: rm -r data
Lệnh xoá file: rm <FileName>
Ví dụ: rm data/toto
Option của lệnh rm:
-f: xóa không cần hỏi, ví dụ: rm -f data/toto
-r, hoặc -R: xóa đệ quy (dùng để xóa thư mục)
Các lệnh trên file và thư mục
                                      31

Lệnh sao chép
Cú pháp: cp [OPTIONS] <nguồn1> <nguồn 2> … <đích>
Ví dụ: cp data/toto data/tata
Options:
-r, hoặc -R: đệ quy (dùng để copy cả thư mục)
-d: bỏ qua các liên kết khi sử dụng –R
-f: ép buộc phải làm (force)
-I: hiện dấu nhắc khi ghi đè
-p: duy trì thuộc tính file
Ví dụ:
cp log.txt log.dat
cp log.txt /home/user1
cp -f log.txt /home/user1
Các lệnh trên file và thư mục
                               32

Di chuyển hoặc đổi tên
Cú pháp: mv [options] <OldName> <NewName>
             mv [options] <Source> <Dest>
             mv [options] <Source> <DestDir>
Options
-f: ép buộc phải làm (force)
-I: hiện dấu nhắc khi ghi đè
Ví dụ:
mv log.txt log.dat
mv log.txt /home/user1
mv –f log.txt /home/user1
Các lệnh trên file và thư mục
                            33

Lệnh tạo liên kết: ln
Cú pháp: ln [option] <Source> <DestSym>
Option -s: liên kết mềm (soft link), có thể <Source> và
<DestSym> nằm trên hệ thống file khác nhau
Mặc định là liên kết cứng, <Source> và <DestSym> phải
nằm trên cùng hệ thống file
Ví dụ:
ln -s lilo.conf lilo.sym
Số tham khảo và kích thước của 2 kiểu liên kết là
khác nhau
Các lệnh trên file và thư mục
                              34

Lệnh tạo và thay đổi file: touch
Cú pháp: touch {options} <Files>
Options
-a: thay đổi thời gian truy cập file
-m: thay đổi thời gian cập nhật file
-r: lấy thuộc tính thời gian từ file khác
Ví dụ:
touch test1.txt test2.txt testk.txt
touch mytest.txt –r /etc/fstab
Các lệnh trên file và thư mục
                                           35

Nhóm lệnh tìm kiếm: find, which, whereis và locate
Cú pháp: find <Thư mục> <Criteria> [-exec <CMD> {} ;]
Ví dụ: find /usr -name pgsql
Tìm file “pgsql” bắt đầu từ thư mục /usr
Ví dụ: find /home -user 501
Tìm tất cả các file của chủ sở hữu là người dùng có số hiệu UID là 501 bắt đầu từ
thư mục /home
Ví dụ: find /home/user1 –name log.txt –exec rm {} ;
Tìm tất cả các file tên log.txt bắt đầu từ thư mục /home/user1 và xóa các file này
Lệnh xargs: chuyển hướng ra của chtrình1 đến hướng vào
chtrình2
Ví dụ: find /home/user1 –name log.txt | xargs rm
Có chức năng tương tự lệnh trên
Các lệnh trên file và thư mục
                                   36

Nhóm lệnh: which, whereis và locate
Cú pháp: Command <FileName>
Lệnh which: tìm trả về đường dẫn đầy đủ của file từ các đường dẫn định
nghĩa trong biến PATH
Ví dụ: which xcalc
Lệnh whereis: tìm trả về đường dẫn đầy đủ của các file từ các đường dẫn
định nghĩa trong biến PATH
Ví dụ: whereis xcalc
Lệnh locate: tìm trả về đường dẫn đầy đủ của các file có chứa chuỗi
FileName từ các đường dẫn định nghĩa trong cơ sở dữ liệu /var/lib/slocate
Dùng lệnh updatedb cập nhật cơ sở dữ liệu /var/lib/slocate
Ví dụ: locate xcalc
Ký tự đại diện
                       37

?: thay thế bất kỳ ký tự nào
*: 0 hay nhiều ký tự
[abc]: a hoặc b hoặc c
[^abc]: bất kỳ ký tự nào trừ a, b, c
[a-z]: a, b, c, ..., z
[0-5]: 0, 1, 2, 3, 4, 5
[a-c3-8]: a, b, c, 3, 4, 5, 6, 7, 8
~: thư mục người dùng
~pnkhang: thư mục của người dùng pnkhang
38

Tạo thư mục tên data trong thư mục user
 mkdir data
Đi đến thư mục data
 cd data
Tạo thư mục du_lieu trong user
 mkdir ../du_lieu
Tạo link cứng đến file hello.txt có tên h_link đặt trong
 thư mục data
 ln ../hello.txt h_link
Tạo một link mềm đến file hello.txt tên s_link đặt trong
 thư mục du_lieu
 ln -s ../hello.txt ../du_lieu/s_link
39

Tạo thư mục tên data trong thư mục th
 mkdir data
Liệt kê nội dung thư mục user
 ls ../user
Đi đến thư mục data
                  cd data
Tạo thư mục tên du_lieu trong thư mục th
 mkdir ../du_lieu
Tạo một file tên hello.txt trong thư mục th
 touch ../hello.txt
Tạo một liên kết cứng đến file hello.txt có tên h_link

More Related Content

What's hot

What's hot (18)

Linux và mã nguồn mở
Linux và mã nguồn mởLinux và mã nguồn mở
Linux và mã nguồn mở
 
Lesson 2 - Install Linux & Command Line Environment
Lesson 2 - Install Linux & Command Line EnvironmentLesson 2 - Install Linux & Command Line Environment
Lesson 2 - Install Linux & Command Line Environment
 
Overview of Linux
Overview of LinuxOverview of Linux
Overview of Linux
 
Linux04 hethongtaptin
Linux04 hethongtaptinLinux04 hethongtaptin
Linux04 hethongtaptin
 
Tìm hiểu về Linux
Tìm hiểu về LinuxTìm hiểu về Linux
Tìm hiểu về Linux
 
Su dung linux shell
Su dung linux shellSu dung linux shell
Su dung linux shell
 
Giao Trinh MSDOS
Giao Trinh MSDOSGiao Trinh MSDOS
Giao Trinh MSDOS
 
Hệ điều hành (chương 4)
Hệ điều hành (chương 4)Hệ điều hành (chương 4)
Hệ điều hành (chương 4)
 
Linux+01
Linux+01Linux+01
Linux+01
 
Linux01 tongquan
Linux01 tongquanLinux01 tongquan
Linux01 tongquan
 
Linux06 quanly dia
Linux06 quanly diaLinux06 quanly dia
Linux06 quanly dia
 
HDH
HDHHDH
HDH
 
Bai02 he thong quan ly tap tin
Bai02   he thong quan ly tap tinBai02   he thong quan ly tap tin
Bai02 he thong quan ly tap tin
 
Linux security
Linux securityLinux security
Linux security
 
Linux+02
Linux+02Linux+02
Linux+02
 
Tóm tắt lệnh Ubuntu
Tóm tắt lệnh UbuntuTóm tắt lệnh Ubuntu
Tóm tắt lệnh Ubuntu
 
Cac lenh co_ban_linux
Cac lenh co_ban_linuxCac lenh co_ban_linux
Cac lenh co_ban_linux
 
Bai03 he thong tap tin fat
Bai03   he thong tap tin fatBai03   he thong tap tin fat
Bai03 he thong tap tin fat
 

Viewers also liked

Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4AmyLongworth
 
지정공모(Pt제출) 소셜나눔
지정공모(Pt제출) 소셜나눔지정공모(Pt제출) 소셜나눔
지정공모(Pt제출) 소셜나눔Seong Whan Park
 
Updated day 2 part 1 -social marketing basics training slides
Updated day 2 part 1 -social marketing basics training slidesUpdated day 2 part 1 -social marketing basics training slides
Updated day 2 part 1 -social marketing basics training slidesprogroup
 
Proyecto eTwinning "Poniendo Voz"
Proyecto eTwinning "Poniendo Voz"Proyecto eTwinning "Poniendo Voz"
Proyecto eTwinning "Poniendo Voz"jorge_profesor
 
Hire iPhone App Developers
Hire iPhone App DevelopersHire iPhone App Developers
Hire iPhone App DevelopersArth I-Soft
 
Sarwan singh profile
Sarwan singh   profileSarwan singh   profile
Sarwan singh profileSarwan Singh
 
Finding Mrs Simon Storyboard
Finding Mrs Simon StoryboardFinding Mrs Simon Storyboard
Finding Mrs Simon StoryboardAmyLongworth
 
Hurricane Katrina - America's Most Destructive Hurricane
Hurricane Katrina - America's Most Destructive HurricaneHurricane Katrina - America's Most Destructive Hurricane
Hurricane Katrina - America's Most Destructive HurricanePeter Killcommons
 
Snecked rubble step by step angled
Snecked rubble step by step angledSnecked rubble step by step angled
Snecked rubble step by step angleddoogstone
 
положение сердце отдаю детям (1)
положение сердце отдаю детям (1)положение сердце отдаю детям (1)
положение сердце отдаю детям (1)Valentina Lambertova
 
Shaklee is a Leadership Business
Shaklee is a Leadership Business Shaklee is a Leadership Business
Shaklee is a Leadership Business Cindy McAsey
 
Going social with collaborative online ideations
Going social with collaborative online ideationsGoing social with collaborative online ideations
Going social with collaborative online ideationsFrank Hatzack
 

Viewers also liked (20)

TEST
TESTTEST
TEST
 
Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4
 
Ucm237512
Ucm237512Ucm237512
Ucm237512
 
지정공모(Pt제출) 소셜나눔
지정공모(Pt제출) 소셜나눔지정공모(Pt제출) 소셜나눔
지정공모(Pt제출) 소셜나눔
 
van ban
van banvan ban
van ban
 
Updated day 2 part 1 -social marketing basics training slides
Updated day 2 part 1 -social marketing basics training slidesUpdated day 2 part 1 -social marketing basics training slides
Updated day 2 part 1 -social marketing basics training slides
 
Lecture6
Lecture6Lecture6
Lecture6
 
Dokbat 2016 plenary
Dokbat 2016 plenaryDokbat 2016 plenary
Dokbat 2016 plenary
 
Proyecto eTwinning "Poniendo Voz"
Proyecto eTwinning "Poniendo Voz"Proyecto eTwinning "Poniendo Voz"
Proyecto eTwinning "Poniendo Voz"
 
Hire iPhone App Developers
Hire iPhone App DevelopersHire iPhone App Developers
Hire iPhone App Developers
 
Sarwan singh profile
Sarwan singh   profileSarwan singh   profile
Sarwan singh profile
 
TQM - Total Quality Management
TQM - Total Quality ManagementTQM - Total Quality Management
TQM - Total Quality Management
 
Finding Mrs Simon Storyboard
Finding Mrs Simon StoryboardFinding Mrs Simon Storyboard
Finding Mrs Simon Storyboard
 
Ejb examples
Ejb examplesEjb examples
Ejb examples
 
Gov3.0 theory&concept
Gov3.0 theory&conceptGov3.0 theory&concept
Gov3.0 theory&concept
 
Hurricane Katrina - America's Most Destructive Hurricane
Hurricane Katrina - America's Most Destructive HurricaneHurricane Katrina - America's Most Destructive Hurricane
Hurricane Katrina - America's Most Destructive Hurricane
 
Snecked rubble step by step angled
Snecked rubble step by step angledSnecked rubble step by step angled
Snecked rubble step by step angled
 
положение сердце отдаю детям (1)
положение сердце отдаю детям (1)положение сердце отдаю детям (1)
положение сердце отдаю детям (1)
 
Shaklee is a Leadership Business
Shaklee is a Leadership Business Shaklee is a Leadership Business
Shaklee is a Leadership Business
 
Going social with collaborative online ideations
Going social with collaborative online ideationsGoing social with collaborative online ideations
Going social with collaborative online ideations
 

Similar to 3 he thong-file

Bai2 he dieuhanh
Bai2 he dieuhanhBai2 he dieuhanh
Bai2 he dieuhanhThien Ho
 
Tom tat lenh_ubuntu
Tom tat lenh_ubuntuTom tat lenh_ubuntu
Tom tat lenh_ubuntuthanhhokh03
 
Tom tat lenh ubuntu
Tom tat lenh ubuntuTom tat lenh ubuntu
Tom tat lenh ubuntunghoanganh
 
Chương II: Hệ điều hành
Chương II: Hệ điều hànhChương II: Hệ điều hành
Chương II: Hệ điều hànhSunkute
 
3-he-thong-tap-tin1.pdf
3-he-thong-tap-tin1.pdf3-he-thong-tap-tin1.pdf
3-he-thong-tap-tin1.pdfMinhPhng737164
 
08 file systems
08  file systems08  file systems
08 file systemsCơn Gió
 
Dang baitapthuchanh monhdh_unix
Dang baitapthuchanh monhdh_unixDang baitapthuchanh monhdh_unix
Dang baitapthuchanh monhdh_unixBảo Bối
 
Carte ref-ubuntu-vi (1)
Carte ref-ubuntu-vi (1)Carte ref-ubuntu-vi (1)
Carte ref-ubuntu-vi (1)Mr[L]ink
 
Linux Network Administration (LPI-1,LPI-2)
Linux Network Administration (LPI-1,LPI-2)Linux Network Administration (LPI-1,LPI-2)
Linux Network Administration (LPI-1,LPI-2)laonap166
 
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPT
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPTBÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPT
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPTMasterCode.vn
 
Làm thế nào để học linux trong 24h?
Làm thế nào để học linux trong 24h?Làm thế nào để học linux trong 24h?
Làm thế nào để học linux trong 24h?Công Nghệ - VTC Mobile
 
Tìm hiểu về hệ điều hành android
Tìm hiểu về hệ điều hành androidTìm hiểu về hệ điều hành android
Tìm hiểu về hệ điều hành androidTÓc Đỏ XuÂn
 

Similar to 3 he thong-file (20)

Bai2 he dieuhanh
Bai2 he dieuhanhBai2 he dieuhanh
Bai2 he dieuhanh
 
Tom tat lenh_ubuntu
Tom tat lenh_ubuntuTom tat lenh_ubuntu
Tom tat lenh_ubuntu
 
Tom tat lenh ubuntu
Tom tat lenh ubuntuTom tat lenh ubuntu
Tom tat lenh ubuntu
 
Chương II: Hệ điều hành
Chương II: Hệ điều hànhChương II: Hệ điều hành
Chương II: Hệ điều hành
 
Bài 11
Bài 11Bài 11
Bài 11
 
3-he-thong-tap-tin1.pdf
3-he-thong-tap-tin1.pdf3-he-thong-tap-tin1.pdf
3-he-thong-tap-tin1.pdf
 
08 file systems
08  file systems08  file systems
08 file systems
 
Thuc hanh 13
Thuc hanh  13Thuc hanh  13
Thuc hanh 13
 
Các lệnh shell cơ bản trong linux
Các lệnh shell cơ bản trong linuxCác lệnh shell cơ bản trong linux
Các lệnh shell cơ bản trong linux
 
Hệ thống tệp Linux
Hệ thống tệp LinuxHệ thống tệp Linux
Hệ thống tệp Linux
 
Dang baitapthuchanh monhdh_unix
Dang baitapthuchanh monhdh_unixDang baitapthuchanh monhdh_unix
Dang baitapthuchanh monhdh_unix
 
Su dung linux shell
Su dung linux shellSu dung linux shell
Su dung linux shell
 
File
FileFile
File
 
To ghi nho ubuntu
To ghi nho   ubuntuTo ghi nho   ubuntu
To ghi nho ubuntu
 
Carte ref-ubuntu-vi (1)
Carte ref-ubuntu-vi (1)Carte ref-ubuntu-vi (1)
Carte ref-ubuntu-vi (1)
 
Linux Network Administration (LPI-1,LPI-2)
Linux Network Administration (LPI-1,LPI-2)Linux Network Administration (LPI-1,LPI-2)
Linux Network Administration (LPI-1,LPI-2)
 
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPT
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPTBÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPT
BÀI 7: Thao tác với file - các vấn đề khác - Giáo trình FPT
 
Làm thế nào để học linux trong 24h?
Làm thế nào để học linux trong 24h?Làm thế nào để học linux trong 24h?
Làm thế nào để học linux trong 24h?
 
Tìm hiểu về hệ điều hành android
Tìm hiểu về hệ điều hành androidTìm hiểu về hệ điều hành android
Tìm hiểu về hệ điều hành android
 
--De cuong on tap hdh
 --De cuong on tap hdh --De cuong on tap hdh
--De cuong on tap hdh
 

More from vantinhkhuc (20)

Url programming
Url programmingUrl programming
Url programming
 
Servlets intro
Servlets introServlets intro
Servlets intro
 
Servlet sessions
Servlet sessionsServlet sessions
Servlet sessions
 
Security overview
Security overviewSecurity overview
Security overview
 
Rmi
RmiRmi
Rmi
 
Md5
Md5Md5
Md5
 
Lecture17
Lecture17Lecture17
Lecture17
 
Lecture11 b
Lecture11 bLecture11 b
Lecture11 b
 
Lecture10
Lecture10Lecture10
Lecture10
 
Lecture9
Lecture9Lecture9
Lecture9
 
Jsse
JsseJsse
Jsse
 
Jsf intro
Jsf introJsf intro
Jsf intro
 
Jsp examples
Jsp examplesJsp examples
Jsp examples
 
Jpa
JpaJpa
Jpa
 
Corba
CorbaCorba
Corba
 
Ajax
AjaxAjax
Ajax
 
Ejb intro
Ejb introEjb intro
Ejb intro
 
Chc6b0c6a1ng 12
Chc6b0c6a1ng 12Chc6b0c6a1ng 12
Chc6b0c6a1ng 12
 
Ch06
Ch06Ch06
Ch06
 
Bai4
Bai4Bai4
Bai4
 

3 he thong-file

  • 1. 1 HỆ ĐIỀU HÀNH LINUX (Hệ thống tập tin & thiết bị) Phạm Nguyên Khang, Đỗ Thanh Nghị Email: pnkhang,dtnghi@cit.ctu.edu.vn
  • 2. Nội dung 2 Hệ thống tập tin Thiết bị ngoại vi Trợ giúp Các lệnh thao tác trên file và thư mục
  • 3. Hệ thống tập tin 3 Cấu trúc cây Đường dẫn Các hệ thống tập tin trên linux Hệ thống tập tin EXT2 Quyền truy cập
  • 4. Hệ thống tập tin 4 Cấu trúc cây Nút: thư mục (directory, folder) Lá: tập tin (file) Điểm bắt đầu: gốc (root), kí hiệu /
  • 5. Hệ thống tập tin 5 Đường dẫn (path) Dùng để chỉ định một phần tử (nút) trên cây thư mục: thư mục hoặc tập tin Đường dẫn tuyệt đối: bắt đầu từ gốc (/) đi qua các nút trung gian và sau cùng đến phân tử quan tâm (sử dụng dấu / để phân cách các nút trên đường dẫn) Ví dụ: /home/pnkhang/cours/linux/chuong1.ppt Đường dẫn tương tối: bắt đầu từ thư mục hiện hành đi đến phần tử quan tâm (có thể đi ngược lên thư mục cha) Ví dụ: giả sử thư mục hiện hành là /home/pnkhang, ta có thể sử dụng đường dẫn tương đối: cours/linux/chuong1.ppt Chú ý: / có 2 ý nghĩa Đứng đầu đường dẫn tuyết đối: gốc, hay thứ mục gốc Xuất hiện chỗ khác: phân cách các thư mục
  • 6. Hệ thống tập tin 6 Một số thư mục chuẩn: /bin, /sbin: chứa các lệnh cần thiết cho hệ thống /dev: tập tin thiết bị hoặc các file đặc biệt /etc: chứa các file cấu hình của Linux /lib: kernel modules, thư viện chia sẻ cho các lệnh nằm trong /bin, /sbin /mnt, /media: (mount point) dùng để ánh xạ các phân vùng đĩa /proc: những thông số của kernel /boot: Linux kernel, system map cho bước 2 của bootloader /home: thư mục người dùng /root: thư mục của root (admin, người quản trị) /tmp: thư mục tạm /usr: tài nguyên (tĩnh, chia sẻ) cho người dùng /usr/local, /opt: phần mềm, thư viện chia sẻ /var: dữ liệu thay đổi, thư mục spool (máy in), tập tin nhật ký (logs), thư mục chia sẻ và không chia sẻ
  • 7. Các kiểu hệ thống tập tin 7 ext2 (Linux native) ext3 = ext2 + nhật ký Khôi phục nhanh hệ thống file khi có sự cố ext4: Kế thừa từ ext3, ra đời từ phiên bản 2.6.28 của nhân Linux (25/12/2008 ) Kích thước file tối đa lên đến 16TB, kích thước đĩa tối đa đến 1 EB (exabytes, 1018B) swap: hệ thống file dùng làm vùng đệm cho bộ nhớ chính
  • 8. Công cụ tạo hệ thống file 8 Công cụ tạo hệ thống file: mkfs, mke2fs Cú pháp: mkfs -t <kiểu hệ thống file> /dev/<tên file thiết bị> Ví dụ: mkfs -t ext2 /dev/hda1 Cú pháp: mke2fs /dev/<tên file thiết bị> Ví dụ: mke2fs /dev/hda1 (mkfs -t ext2 /dev/hda1) Chú ý: Để có thể sử dụng được lệnh, ta phải mở một terminal và gõ lệnh tương ứng (xem phần hướng dẫn cài đặt)
  • 9. Tính nhất quán của hệ thống file 9 Hệ thống file bị lỗi Do cúp điện, tắt máy bất bình thường không sử dụng shutdown Kiểm tra và khôi phục lại tính nhất quán của hệ thống file Sử dụng: fsck -t <kiểu hệ thống file> /dev/<tên file thiết bị> Ví dụ: fsck –t ext2 /dev/hda1
  • 10. Các kiểu hệ thống tập tin 10 Hệ thống file ext2 (Linux native) Chia thành Blocks có kích thước 1KB (2KB, 4KB hoặc 8KB tùy hệ thống) và nhóm lại thành block group Super Block: chứa thông tin về kích thước 1 block, các inodes rỗng, thời điểm mount vừa qua, etc.
  • 11. Hệ thống Ext2 11 File system File Size Limit File system Size Limit ext2 with 1 KB blocksize 16448 MB (~ 16 GB) 2048 GB (= 2 TB) ext2 with 2 KB blocksize 256 GB 8192 GB (= 8 TB) ext2 with 4 KB blocksize 2048 GB (= 2 TB) 16384 GB (= 16 TB) ext2 with 8 KB blocksize 65568 GB (~ 64 TB) 32768 GB (= 32 TB)
  • 12. Hệ thống Ext2 12 Hệ thống file ext2 quản lý 3 loại phần tử Thư mục Tập tin bình thường Chuỗi tuần tự bytes Tập tin đặc biệt Thiết bị ngoại vi và các công cụ giao tiếp Tất cả đều được quản lý bằng inode Cú pháp, lệnh,quyền truy cập đều được quản lý giống nhau
  • 13. Inode 13 Inode Khối cơ bản Mỗi file hay thư mục được mô tả bằng một và chỉ một inode. Các inodes của mỗi Block Group được lưu trong bảng inode cùng với sơ đồ sử dụng inode (inode bitmap, cho biết inode đã sử dụng, inode nào chưa) Hình bên mô tả cấu trúc của một inode
  • 14. Inode 14 Mode Cho biết inode này biểu diễn gì: tập tin, thư mục, liên kết mềm, thiết bị khối, thiết bị ký tự hoặc thiết bị FIFO Quyền truy cập Owner Information Người dùng và nhóm người dùng của file hay thư mục này Size Kích thước của tập tin (tính bằng bytes), Timestamps Lưu trữ thông tin về thời gian của inode: thời gian tạo ra, lần cuối cùng thay đổi, … Datablocks Các con trỏ trỏ đến các khối dữ liệu mà inode này mô tả 12 con trỏ đầu tiên trỏ đến các khối vật lý chứa dữ liệu thật sự 3 con trỏ kế tiếp mỗi con trỏ đến một khối gián tiếp bậc 1, bậc 2 và bậc 3. Mỗi khối gián tiếp chứa B/4 con trỏ
  • 15. Inode 15 Chú ý: inode có thể mô tả các tập tin thiết bị. Đây không phải là các tập tin thật sự mà là các thẻ bài để chương trình thông qua nó truy cập các thiết bị. Tất cả các tập tin trong /dev cho phép chương trình truy xuất các thiết bị của Linux. Ví dụ chương trình mount có một tham số là một tập tin thiết bị mô tả thiết bị ta cần ánh xạ.
  • 16. Thư mục 16 Đĩa 147 . Danh mục các tập tin và thư mục 83 .. con 1568 example Tạo ra bằng lệnh mkdir <tên thư mục> Có thể xem như thư mục là một inode 1568 Thư mục file đặc biệt chứa danh sách các mục (record) Nội dung của Mỗi thư mục chứa ít nhất 2 mục: file example Bản thân thư mục này . Thư mục cha .. Các mục còn lại (nếu có) chứa các tập tin và thư mục con của thư mục này Mỗi mục của thư mục có cấu trúc như hình bên
  • 17. Liên kết (link) 17 Liên kết cứng Đĩa 147 . Đường dẫn truy cập đến một tập tin 83 .. Tạo một liên kết 1568 example Sử dụng lệnh ln <file> <tên liên kết> Thêm một mục vào thư mục Mục đích: tạo ra một tên cục bộ inode 1568 Thư mục D1 (hoặc bí dánh) ngắn cho một một tập tin Xóa một tập tin = xóa một liên kết = giảm số liên kết của inode biểu diễn tập tin thật sự, khi số tham chiếu = 0 59 .  xóa thật sự file này 5 .. Chú ý: không thể tạo liên kết 1568 link cứng cho một thư mục Thư mục D2
  • 18. Liên kết (link) 18 Liên kết mềm (symbolic link) Đĩa file có nội dung là tên của một file khác 147 . hoặc một thư mục 83 .. 1568 example Tạo liên kết mềm inode 1568 ln –s file <tên liên kết> Thư mục D1 Xóa một liên kết mềm không ảnh hưởng gì đến file mà nó trỏ đến Xóa file hoặc thư mục mà một liên kết 59 . mềm trỏ đến sẽ làm cho liên kết không inode 2529 5 .. còn hợp lệ nữa 2529 link Chứa đường dẫn đến file example, vd: Thư mục D2 /home/D1/example
  • 19. Thiết bị ngoại vi 19 Thiết bị ngoại vi xem như một file chứa trong thư mục /dev có các quyền truy cập giống như file và thư mục Tuy nhiên, xử lý bên trong sẽ khác nhau Hàm của hệ thống file đối với các file bình thường Trình điều khiển thiết bị (drivers) đối với các thiết bị Thiết bị hoạt động ở hai chế độ Khối (block) Ký tự (character)
  • 20. Chế độ khối 20 Các thiết bị hoạt động ở chế độ khối có 4 tính chất: Khối: đơn vị thông tin (dữ liệu) có kích thước cố định (512B, 1KB, 4K, …) Truy xuất ngẫu nhiên (random access) vào một khối n i bất kỳ Sử dụng vùng nhớ đệm ở cấp độ nhân (kernel level) Có thể tạo một hệ thống file trên thiết bị này Các thiết bị hoạt động ở chế độ khối được xem như một dải các khối từ 0 đến N – 1. Ví dụ: đĩa, băng từ, … Truy xuất thông tin từ các thiết bị gồm 2 bước: Đọc: Chuyển khối dữ liệu từ thiết bị sang bộ nhớ hệ thống (caching) Sao chép khối dữ liệu từ bộ nhớ hệ thống sang bộ nhớ chương trình Ghi: Tương tự như đọc, đôi khi kèm theo các cơ chế đồng bộ hóa
  • 21. Chế độ ký tự 21 Các thiết không hoạt động ở chế độ khối Trao đổi bất kỳ lượng thông tin nào Truy xuất tuần tự Không sử dụng bộ nhớ đệm Không có hệ thống file trên thiết bị Ví dụ: Thiết bị đầu cuối (terminal), máy in, socket, … Truy xuất gần như truy xuất file bình thường Hai chế độ đọc: Theo dòng (line): dữ liệu sẽ được truyền đi khi một ký tự đặc biệt được phát ra (ví dụ; ký tự xuống dòng) Cho phép điều khiển luồng dữ liệu, ngắt Từng ký tự (raw): đọc từng ký tự một
  • 22. Trình điều khiển thiết bị 22 Trình điều khiển thiết bị (driver) Điều khiển một loại thiết bị nào đó Tập hợp các hàm định nghĩa sẵn (open, read, write, close, …) Các hàm được nhóm lại trong 2 bảng bdevsw (chế độ khối) cdevsw (chế độ ký tự) Inode của một thiết bị có 2 mục Số hiệu chính (major number): chỉ số trong bảng bdevsw hoặc cdevsw Số hiệu phụ (minor number): mô tả một đơn vị cụ thể nào đó của loại thiết bị
  • 23. Thiết bị giả lập 23 Pseudo devices Được quản lý như một thiết bị nhưng không gắn kết với một thiết bị vật lý nào Bao gồm: Thiết bị ảo: Terminal: cửa sổ, nối kết mạng Phân vùng đĩa /dev/null: thùng rác, ghi gì vào đây cũng mất hết /dev/tty: terminal gắn kết với chương trình /dev/mem: ảnh bộ nhớ của tiến trình
  • 24. Trợ giúp 24 Tài liệu hướng dẫn sử dụng được Sử dụng lệnh chia thanh 8 phần Man [section] <lệnh> Chương trình thực thi hoặc lệnh của Ví dụ: man ls Shell Hoặc: man 1 ls Gọi hệ thống (hàm do nhân cung cấp) Để thoát khỏi trang hướng dẫn Gọi thư viện (hàm do các thư viện gõ phím q chương trình cung cấp) Các files đặc biệt (trong /dev) Định dạng file và các quy ước Games Khác Lệnh quản trị hệ thống (dành riêng cho root) Hàm của nhân
  • 25. Trợ giúp 25 Mỗi trang hướng dẫn (kết quả của lệnh man) gồm nhiều phần NAME Tên lệnh SYNOPSIS Cú pháp DESCRIPTION Mô tả EXAMPLES Ví dụ minh họa OPTIONS Các tùy chọn FILES Các files có liên quan VERSION Phiên bản EXIT STATUS Trạng thái kết thúc RETURN VALUE Kết quả trả về của lệnh NOTES Ghi chú BUGS Lỗi AUTHORS Tác giả SEE ALSO Xem thêm …
  • 26. Trợ giúp 26 Lệnh man chỉ hiển thị trợ giúp khi ta gõ đúng tên lệnh Nếu không nhớ chính xác tên lệnh ta có thể sử dụng lệnh tìm kiếm thông tin apropos <từ khóa> Ví dụ: apropos editor apropos lock
  • 27. Các lệnh trên file và thư mục 27 ls: liệt kê thư mục cd: đổi thư mục hiện hành pwd: in đường dẫn của thư mục hiện hành mkdir: tạo thư mục rm: xóa file, thư mục cp: copy file hoặc thư mục mv: đổi tên hoặc di chuyển file/thư mục ln: tạo liên kết (cứng và mềm) touch: tạo và thay đổi thuộc tính file find: tìm kiếm file/thư mục which, whereis và locate: tìm file trong cơ sở dữ liệu
  • 28. Các lệnh trên file và thư mục 28 Lệnh liệt kê thư mục: ls Cú pháp: ls [options] <Path> Options -i: liệt kê inode -h: in ra kích thước dễ đọc -l: liệt kê mỗi mục trên một dòng -n: liệt kê cả UID và GID -p: hiển thị cả các ký hiệu mô tả (/, =, @) -R: recursive để liệt kê cả những thư mục con -S: sắp xếp kết quả theo kích thước -t (-c): sắp xếp kết quả theo thời gian cập nhật -u: hiển thị thời gian của lần truy cập sau cùng … Xem thêm các options khác: man ls
  • 29. Các lệnh trên file và thư mục 29 Lệnh chuyển đổi thư mục hiện hành (cd) Cú pháp: cd <thưmục> Ví dụ: cd /home/pnkhang/toto cd ../dtnghi/toto Lệnh in ra vị trí thư mục hiện hành (pwd) Ví dụ: pwd
  • 30. Các lệnh trên file và thư mục 30 Nhóm lệnh tạo/xóa thư mục: mkdir, rm Cú pháp của lệnh tạo thư mục: mkdir <DirName> Ví dụ: mkdir data Cú pháp của lệnh xoá thư mục: rm -r <DirName> Ví dụ: rm -r data Lệnh xoá file: rm <FileName> Ví dụ: rm data/toto Option của lệnh rm: -f: xóa không cần hỏi, ví dụ: rm -f data/toto -r, hoặc -R: xóa đệ quy (dùng để xóa thư mục)
  • 31. Các lệnh trên file và thư mục 31 Lệnh sao chép Cú pháp: cp [OPTIONS] <nguồn1> <nguồn 2> … <đích> Ví dụ: cp data/toto data/tata Options: -r, hoặc -R: đệ quy (dùng để copy cả thư mục) -d: bỏ qua các liên kết khi sử dụng –R -f: ép buộc phải làm (force) -I: hiện dấu nhắc khi ghi đè -p: duy trì thuộc tính file Ví dụ: cp log.txt log.dat cp log.txt /home/user1 cp -f log.txt /home/user1
  • 32. Các lệnh trên file và thư mục 32 Di chuyển hoặc đổi tên Cú pháp: mv [options] <OldName> <NewName> mv [options] <Source> <Dest> mv [options] <Source> <DestDir> Options -f: ép buộc phải làm (force) -I: hiện dấu nhắc khi ghi đè Ví dụ: mv log.txt log.dat mv log.txt /home/user1 mv –f log.txt /home/user1
  • 33. Các lệnh trên file và thư mục 33 Lệnh tạo liên kết: ln Cú pháp: ln [option] <Source> <DestSym> Option -s: liên kết mềm (soft link), có thể <Source> và <DestSym> nằm trên hệ thống file khác nhau Mặc định là liên kết cứng, <Source> và <DestSym> phải nằm trên cùng hệ thống file Ví dụ: ln -s lilo.conf lilo.sym Số tham khảo và kích thước của 2 kiểu liên kết là khác nhau
  • 34. Các lệnh trên file và thư mục 34 Lệnh tạo và thay đổi file: touch Cú pháp: touch {options} <Files> Options -a: thay đổi thời gian truy cập file -m: thay đổi thời gian cập nhật file -r: lấy thuộc tính thời gian từ file khác Ví dụ: touch test1.txt test2.txt testk.txt touch mytest.txt –r /etc/fstab
  • 35. Các lệnh trên file và thư mục 35 Nhóm lệnh tìm kiếm: find, which, whereis và locate Cú pháp: find <Thư mục> <Criteria> [-exec <CMD> {} ;] Ví dụ: find /usr -name pgsql Tìm file “pgsql” bắt đầu từ thư mục /usr Ví dụ: find /home -user 501 Tìm tất cả các file của chủ sở hữu là người dùng có số hiệu UID là 501 bắt đầu từ thư mục /home Ví dụ: find /home/user1 –name log.txt –exec rm {} ; Tìm tất cả các file tên log.txt bắt đầu từ thư mục /home/user1 và xóa các file này Lệnh xargs: chuyển hướng ra của chtrình1 đến hướng vào chtrình2 Ví dụ: find /home/user1 –name log.txt | xargs rm Có chức năng tương tự lệnh trên
  • 36. Các lệnh trên file và thư mục 36 Nhóm lệnh: which, whereis và locate Cú pháp: Command <FileName> Lệnh which: tìm trả về đường dẫn đầy đủ của file từ các đường dẫn định nghĩa trong biến PATH Ví dụ: which xcalc Lệnh whereis: tìm trả về đường dẫn đầy đủ của các file từ các đường dẫn định nghĩa trong biến PATH Ví dụ: whereis xcalc Lệnh locate: tìm trả về đường dẫn đầy đủ của các file có chứa chuỗi FileName từ các đường dẫn định nghĩa trong cơ sở dữ liệu /var/lib/slocate Dùng lệnh updatedb cập nhật cơ sở dữ liệu /var/lib/slocate Ví dụ: locate xcalc
  • 37. Ký tự đại diện 37 ?: thay thế bất kỳ ký tự nào *: 0 hay nhiều ký tự [abc]: a hoặc b hoặc c [^abc]: bất kỳ ký tự nào trừ a, b, c [a-z]: a, b, c, ..., z [0-5]: 0, 1, 2, 3, 4, 5 [a-c3-8]: a, b, c, 3, 4, 5, 6, 7, 8 ~: thư mục người dùng ~pnkhang: thư mục của người dùng pnkhang
  • 38. 38 Tạo thư mục tên data trong thư mục user mkdir data Đi đến thư mục data cd data Tạo thư mục du_lieu trong user mkdir ../du_lieu Tạo link cứng đến file hello.txt có tên h_link đặt trong thư mục data ln ../hello.txt h_link Tạo một link mềm đến file hello.txt tên s_link đặt trong thư mục du_lieu ln -s ../hello.txt ../du_lieu/s_link
  • 39. 39 Tạo thư mục tên data trong thư mục th mkdir data Liệt kê nội dung thư mục user ls ../user Đi đến thư mục data cd data Tạo thư mục tên du_lieu trong thư mục th mkdir ../du_lieu Tạo một file tên hello.txt trong thư mục th touch ../hello.txt Tạo một liên kết cứng đến file hello.txt có tên h_link