NỘi dung Phần 1: Cấu trúc phân cấp của Linux filesystem Các lệnh quản trị file thông dụng Phần 2: Phân vùng đĩa cứng trong Linux Các loại Linux filesystem Mount và unmoun
Trang 11
Chương 3
Hệ thống file trong Linux
Trang 2NỘi dung
Phần 1:
Cấu trúc phân cấp của Linux filesystem
Các lệnh quản trị file thông dụng
Phần 2:
Phân vùng đĩa cứng trong Linux
Các loại Linux filesystem
Mount và unmount
2
Trang 3Hệ thống file trong Linux (phần 1)
Cấu trúc phân cấp của Linux filesystem
Các lệnh quản trị file thông dụng
3
Trang 4Cấu trúc Linux filesystem
Cấu trúc cây phân cấp :
Thư mục gốc , ký hiệu / , là thư mục cấp cao nhất
Không có khái niệm ổ đĩa như Windows
Cách bố trí các thư mục tuân theo FHS
(Filesystem Hierarchy Standard)
4
Trang 5Cấu trúc Linux filesystem
Trang 66
Cấu trúc Linux filesystem
The Windows filesystem structure
The Linux filesystem structure
Trang 7Cấu trúc Linux filesystem
Các thư mục theo FHS
/bin : chứa các tập tin lệnh chủ yếu
/boot : chứa các tập tin tĩnh của bộ nạp khởi động
/dev : chứa các tập tin thiết bị
/etc : chứa các file cấu hình hệ thống
/lib : chứa các mô đun nhân và các thư viện được chia sẻ chủ yếu
/media : Điểm lắp đặt cho các phương tiện tháo lắp vật lý
/mnt : Điểm lắp đặt để lắp đặt một hệ thống tập tin tạm thời
/opt : Các gói phần mềm ứng dụng bổ sung
/proc : thư mục giả giúp truy suất thông tin trạng thái của hệ thống
7
Trang 8Cấu trúc Linux filesystem
/sbin : chứa các tập tin lệnh hệ thống
/srv : Dữ liệu cho các dịch vụ được hệ thống này cung cấp
/tmp : nơi lưu các tập tin tạm thời
/usr : Hệ thống phân cấp thứ cấp
/var : Lưu dữ liệu biến đổi , các log file, hàng đợi in
/lib : Chứa các thư viện chia sẻ cốt yếu
/home : Thư mục cá nhân (home) của người dùng thông thường
/root : Thư mục cá nhân của tài khoản root
8
Trang 9Các lệnh quản trị file thông dụng
Một số khái niệm :
Đường dẫn (path)
Đường dẫn tuyệt đối (absolute path)
Thư mục hiện hành (current directory) và đường dẫn tương đối (relative path)
Ký hiệu
Dấu chấm (.) : Thư mục hiện hành
Hai dấu chấm ( ) : Thư mục cha của thư mục hiện hành
Dấu ngã (~) : Thư mục home của user hiện hành
Trang 10
10
Các lệnh quản trị file thông dụng /
home etc usr bin boot dev lib root …
hoso u1/hoso home/u1/hoso
Nếu thư mục
hiện hành là
/home/u1 /home
/
Trang 1111
Các lệnh quản trị file thông dụng
Lệnh pwd (Present Working Directory)
Trang 1212
Các lệnh quản trị file thông dụng
Trang 13Các lệnh quản trị file thông dụng
Option –l : cho phép liệt kê thông tin đầy đủ về
các file và subdir trong một thư mục, gồm 8 mục
File type
List of permissions (mode of the file)
Hard link count
Trang 14Các lệnh quản trị file thông dụng
Normal file -
Directory d
Link file l
Block device file b
Character device file c
Named pipe p
File
types ?
Trang 1515
Các lệnh quản trị file thông dụng
Các lệnh cat, more, less, head, tail
// hiển thị (hoặc concatenates ) nội dung text file ra màn hình
cat /etc/passwd
cat -n /etc/passwd
cat file1 file2
// với các file dài, hiển thị và dừng từng trang màn hình Sử dụng spacebar, page up, page down,
và arrow keys khi xem
Trang 16Các lệnh quản trị file thông dụng
Các lệnh more, less được sử dụng để phân trang kết
xuất của lệnh khác
ls -l | more
16
Trang 17Các lệnh quản trị file thông dụng
Trang 1818
Các lệnh quản trị file thông dụng
Trang 19Các lệnh quản trị file thông dụng
Trang 2020
Các lệnh quản trị file thông dụng
Sử dụng các ký tự thay thế (wildcard ) trong các lệnh thao tác với file/folder
Cho phép thao tác với nhiều file/folder
Có thể dùng trong các lệnh : cp, mv, rm, rmdir , ls, …
Bao gồm : * , ? , [ab] , [a-z] , [!ab]
Trang 2121
Các lệnh quản trị file thông dụng
Tạo các link file
Bao gồm Hard link and Symbolic link (soft link)
Hard link : một tên khác tham chiếu tới cùng data của file gốc
Symbolic link : một con trỏ hay shortcut của file/folder gốc
File/folder gốc có thể thuộc một partition khác
Lệnh tạo link file
ln sourcefile hardlink
ln -s sourcefile softlink
(*)chi tiết cú pháp xem man page
Trang 2222
Các lệnh quản trị file thông dụng
Tìm kiếm chuỗi text trong một hay nhiều file
Trang 23 Index database mặc định là : /var/lib/mlocate/mlocate.db
Để cập nhật index database , dùng lệnh updatedb
Cho phép tìm theo tên file
Trang 24find <start directory> -criteria <what to find>
find / -name “*.log”
find / -user “root”
find / -size “+100”
(*)chi tiết cú pháp xem man find
Trang 25find / -name “*.log”
find /etc -name “*.log”
find /mnt -name “*.log”
find / -user “root”
find / -size “+100”
25
Trang 26Các lệnh quản trị file thông dụng
Các criteria dùng trong lệnh find
26
Trang 27Các lệnh quản trị file thông dụng
Các criteria dùng trong lệnh find
27
Trang 28Các lệnh quản trị file thông dụng
Nén và giải nén một/nhiều file
Sử dụng một trong các tiện ích thông dụng sau:
Trang 29Các lệnh quản trị file thông dụng
Tiện ích lưu trữ tar
Sao lưu files/thư mục thành một file
Sao lưu và nén (dùng gzip hoặc bzip2)
29
tar -cvf file.tar file1 file2
tar -cvf file.tar mydir
tar -xvf file.tar
Sao lưu và nén Phục hồi và giải nén
tar -czvf file.tar.gz file1 file2
tar -cjvf file.tar.bz2 file1 file2
tar -czvf file.tar.gz mydir
tar -czvf file.tar.gz mydir
tar -xzvf file.tar.gz tar -xjvf file.tar.bz2
Trang 30Hệ thống file trong Linux (phần 2)
Phân vùng đĩa cứng trong Linux
Các loại Linux filesystem
Mount và unmount
30
Trang 31Nội dung
Phân vùng đĩa cứng trong Linux
swap partitions, data partitions (primary partitions,
extended partitions)
Các loại Linux filesystem
ext2, ext3, ext4,
Trang 32Phân vùng đĩa cứng trong Linux
Trang 33Phân vùng đĩa cứng trong Linux
Bộ cài đặt của các bản phân phối thường
đưa ra phương án tối ưu cho việc tạo các
partition phù hợp với mục tiêu cài đặt máy
workstation hay server nói chung
Máy workstation : gồm một root partition, một
swap partition
Máy server : có thể gồm các partition cho
/ /boot /usr /etc /srv /home /opt và swap
33
Trang 34Phân vùng đĩa cứng trong Linux
Có thể thiết lập phân vùng đĩa cứng theo ý
muốn trong quá trình cài đặt bằng
Dùng GUI tool
Dùng lệnh fdisk
34
Trang 35Các loại Linux filesystem
Ban đầu Linux sử dụng Minix filesystem do Linux được phát
triển trên nền Minix OS
Hai hạn chế của Minix filesystem
Kích thước filesystem tối đa 64MB
Các thư mục có số mục cố định, độ dài tên file tối đa 14 ký tự => có nhu cầu tạo ra các filesystem mới cho Linux từ cộng
đồng những người phát triển
Một Virtual File System (VFS) layer được phát triển để dễ dàng gắn thêm các filesystem mới vào Linux kernel
Chris Provenzano, Linus Torvalds
VFS được dùng như cầu nối với các filesystem của các hệ điều hành khác như Windows, Mac OS, Unix…
Trang 36Task 1 Task 2 … Task n
user space kernel space
VIRTUAL FILE SYSTEM
minix ext2 msdos proc
device driver
for hard disk
device driver for floppy disk Buffer Cache
software hardware Hard Disk Floppy Disk
Linux Kernel
Trang 37Các loại Linux filesystem
Các Linux filesystem :
ext (1992), ext2 (1993), ext3 (2001), ReiserFS
(2001), ext4 (2006), …
37
Trang 38Các loại Linux filesystem
Trang 39Các loại Linux filesystem
Trang 40Các loại Linux filesystem
Inode là một cấu trúc chứa các mô tả về file
Mỗi file có một tên và một chỉ số inode
Được lưu trong thư mục chứa file
Dùng lệnh stat để xem chỉ số inode
40
Trang 41Các loại Linux filesystem
Trang 42Các loại Linux filesystem
Tạo một filesystem (định dạng partition)
Trang 43Mount và unmount
Mount một filesystem là tạo ra khả năng truy suất filesystem qua một thư mục hiện có
Thư mục được gọi là mount point , là một thư
mục bất kỳ thuộc một filesystem đã được mount trước đó
Thường sử dụng /media hay /mnt làm mount point cho các thiết bị di động (theo FHS)
43
Trang 44Mount và unmount
44
Hính 1 : Ba filesystem
riêng biệt
Hình 2 : sau khi được
mount , với mount point
là /home và /usr
Trang 46Mount và unmount
Thao tác ngược lại với mount là unmount
Không còn gắn kết giữa filesystem và thư mục
mountpoint
Thực hiện tự động khi shutdown/reboot
46
Trang 47Mount và unmount
Sử dụng lệnh mount để tạo khả năng truy
suất dữ liệu trong các thiết bị lưu trữ di động
Yêu cầu quyền root
Trang 48Mount và unmount
Sử dụng lệnh umount trước khi tháo rời thiết bị
ra khỏi hệ thống
Lệnh umount nhận một trong hai tham số
mountpoint hoặc device
umount /media/cdrom hoặc
umount /dev/sr0
48
Trang 49Mount và unmount
Cấu hình để hệ thống tự động mount với thiết bị
cdrom :
Thêm dòng sau vào file /etc/fstab
/dev/sr0 /media/cdrom iso9660
49
Trang 50Các device file
Trong hệ thống Unix/Linux, các thiết bị được truy suất thông qua các device file
Thư mục /dev quản lý tất cả các device file
Bao gồm character device file, và block device file
Mỗi device file bao gồm 2 chỉ số : Major number (trỏ tới loại driver tương ứng với thiết bị trong
Linux kernel) và Minor number (xác định thiết bị
cụ thể)
Trang 51Các device file
51
Terminals /dev/tty1 , /dev/tty2 , …
IDE Hard disk partittions /dev/hda1, /dev/hda2
Printer /dev/lp0
Trang 5454
Thực hành
sử dụng các lệnh fdisk, mkfs, mount, umount
Yêu cầu:
Phân vùng và tạo 2 filesystem ext4 và fat32 trên
một đĩa usb với dung lượng tùy ý ( dùng lệnh
fdisk và mkfs)
Sau đó mount 2 filesystem với thư mục
/media/linuxdata và /media/winsdata
Ghi dữ liệu (files và folders) vào 2 filesystem này
Tháo rời USB và di chuyển sang máy khác Đọc
các dữ liệu trong USB từ máy thứ hai
Trang 55Thực hành
Vd1, mô hình phân vùng đĩa cứng đơn giản
55
Trang 56Thực hành
Vd2, mô hình phân vùng đĩa cứng dual-boot
56
Trang 57Câu hỏi
57