1/76 Information technology faculty of Saigon University NGUYỄN THÀNH SƠN Chương 2 LỆNH, TIỆN ÍCH và HỆ THỐNG TẬP TIN 3 tiết 2/76 Information technology faculty of Saigon University NGUY
Trang 11/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Chương 2
LỆNH, TIỆN ÍCH và HỆ
THỐNG TẬP TIN
(3 tiết)
2/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
A LỆNH, TIỆN ÍCH
Nội dung
III Lọc
I Kênh chuẩn trong Linux
• Nhập chuẩn
• Xuất chuẩn
• Lỗi chuẩn
Trang 25/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
1 Nhập chuẩn
Thực thi lệnh: Tham số, dữ liệu
Nguồn nhập chuẩn
Ví dụ:
• #cat <Enter>
• Kết thúc nhập
Ký số mô tả (descriptor number)
6/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
2 Xuất chuẩn
Information technology faculty of Saigon University
3 L ỗi chuẩn
Information technology faculty of Saigon University
II Ký tự đặc biệt
• Chuyển hướng
• Đại diện
• Chọn
• Đường ống
Trang 39/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
1 Ký tự chuyển hướng
• Khái niệm
• Ký tự: “>” hay “>>”
• Cách dùng:
# lệnh > tên_tập_tin
# lệnh >> tên_tập_tin
• Ví dụ: ls –l >> dsthumuc
10/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
1 Ký tự chuyển hướng(tt)
Chuyển hướng nhập
• Khái niệm
• Ký tự: “<”
• Cách dùng:
# lệnh < tên_tập_tin
• Ví dụ:
# cat < cadao
# cat 0<cadao
2 Ký tự đại diện
• Ý nghĩa
• Ví dụ: cat cadao?
• Ý nghĩa
• Ví dụ: cat cadao*
3 Ký tự chọn
• Ý nghĩa
• Ví dụ: cat c[aAoO]dao
• Ý nghĩa
• Ví dụ: cat c[a-d]dao
• Ý nghĩa
• Ví dụ: cat c[!abc]dao <=> cat c[^abc]dao
Trang 413/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
4 Ký tự đường ống
• Ý nghĩa
• Cú pháp: Lệnh1 | lệnh2 …
• Ví dụ: ls –l | more
• Sự kết hợp các ký tự đặc biệt
• Không sử dụng cho lệnh Ví dụ: c?t cadao
• Mất tác dụng ký tự đặc: dấu ‘ ’ hoặc \
Ví dụ: cat ‘cadao?’
cat cadao\?
14/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
III Lọc
Lọc: nhận dữ liệu từ kênh nhập chuẩn, lọc và gửi kết quả ra kênh xuất chuẩn
Lệnh grep:
• Cú pháp: grep [tùy_chọn] chuỗi_cần_tìm tên_tập_tin[s]
• Tùy chọn: i không phân biệt chữ hoa hay thường
• Chuỗi_cần_tìm: ^chuỗi_cần_tìm, chuỗi_cần_tìm$
• Ví dụ:
+ #grep “hat” *
+ #grep ‘^[aioyeu]’ cadao
+ #grep ‘^[^Di]’ cadao
+ #grep ‘inh$’ cadao
Information technology faculty of Saigon University
III Lọc (tt)
Lệnh uniq
• Cú pháp: #uniq tập_tin
• tập_tin phải được sắp xếp
Ví dụ: sort record | uniq
Lệnh tr
• Cú pháp:
# tr [tùy_chọn] [chuỗi1] [chuỗi2] < tên_tập_tin
• Tùy chọn: d xóa chuỗi
• Ví dụ:
+ # tr “[a-z]” “[A-Z]” < cadao
+ # tr “[a-z]” “[0-9]” < cadao
Information technology faculty of Saigon University
IV Tiện ích soạn thảo
Trình soạn thảo: soạn, xem, sửa đổi các tập tin văn bản
Trong Linux: emacs, sed, ed, red, joe, rjoe, pico…
vi: chuẩn trên Unix Trong Linux, vi là vim
được cải tiến từ vi.
vi 3 chế độ hoạt động:
• Chế độ soạn thảo (insert mode)
• Chế độ lệnh (command mode)
• Chế độ thực thi (ex mode)
Trang 517/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
$vi [tùy_chọn] [t ậ p-tin]
Tùy chọn
• vi tập_tin
• vi +n tập_tin
• vi +/pattern
• vi -r tập_tin
Tiện ích vi
18/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Tiện ích vi (tt.1)
oTác động bàn phím: xem là ký tự.
o Có thể: chèn, viết thêm, thay thế văn bản
o Nhóm lệnh sử dụng:
i chèn trước dấu con trỏ
I chèn trước ký tự đầu tiên trên dòng
a viết thêm sau dấu con trỏ
A viết thêm ở cuối dòng
o thêm một dòng dưới con trỏ
O thêm một dòng trên con trỏ
r k thay thế một ký tự dưới con trỏ bằng 1 ký tự k
R thay thế từ con trỏ đến khi nhấn <ESC>
s thay thế một ký tự dưới con trỏ bằng 1 ký tự số
S thay thế cả dòng
Tiện ích vi (tt.2)
Chế độ thực thi
Các lệnh thực thi:
:w Lưu tập tin
:w file Lưu với tên mới là file
:w! file Lưu với tên mới là file
:12, 26w file Ghi dòng 12 và 26 vào tập tin file
:x Lưu và thoát (<=> :wq)
:q Thoát khi không sửa đổi
:q! Thoát khi có sửa nhưng không lưu
:r Mở tập tin và chèn vào tại con trỏ
Tiện ích vi (tt.3)
Chế độ lệnh
h sang trái một ký tự (mũi tên trái)
l sang phải một ký tự (mũi tên phải)
k lên một dòng (mũi tên lên)
j xuống một dòng (mũi tên xuống)
^ về đầu dòng
$ về cuối dòng
^u cuộn lên 1/2 màn hình
^d cuộn xuống 1/2 màn hình
^f cuộn tới (forward) 1 màn hình
^b cuộn lùi (backward) 1 màn hình
H về dòng đầu tiên màn hình
Trang 621/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Tiện ích vi (tt.4)
Chế độ lệnh (tt)
L đến dòng cuối cùng màn hình
M đến dòng giữa màn hình
G đến dòng cuối cùng của tập tin
nG đến dòng thứ n
( đầu câu
) cuối câu
{ đầu đoạn văn
} cuối đoạn văn
22/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Tiện ích vi (tt.5)
Chế độ lệnh (tt)
o Nhóm lệnh tìm kiếm
/chuỗi tìm “chuỗi”
*/chuỗi tìm tiếp “chuỗi”
?chuỗi tìm lùi “chuỗi”
*/nThe tìm dòng kế bắt đầu bằng The
n lặp lại lần dò tìm sau cùng
o Nhóm lệnh tìm kiếm và thay thế
:s/text1/text2/g thay text1 bởi text2
:8,$s/chuỗi1/chuỗi2 thay chuỗi1 bằng chuỗi2
từ hàng 8 đến cuối
Information technology faculty of Saigon University
V Tiện ích fdisk
Đặc điểm:
• Công cụ dùng để chia partition
• Chỉ được sử dụng khi đã cài xong Linux
• Superuser mới có quyền sử dụng
Thực thi: #fdisk tên_ổ_đĩa
Phím nóng:
m: hiện menu
l: liệt kê những loại partition
d: hủy một partition
n: tạo một partition mới
o: tạo mới một bảng partition DOS mới rỗng.
p: in ra bảng partition
v: xác nhận lại partition table
w: ghi partition table xuống đĩa và thoát chương trình
Information technology faculty of Saigon University
V Tiện ích fdisk (tt)
Ví dụ
#fdisk /dev/hdb
Command (m for help): n
e extended
p primary
p
Partition number (1-4):2 First cyclinder (480-482, default 480):
Using default value 480 Last cylinder or + size or + size M or + sizeK
(480-482, default 482):
Using default value 482 Command (m for help):p
Trang 725/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
V Tiện ích email
• pine
• mutt
• Kmail
• Balsa
26/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
B HỆ THỐNG TẬP TIN
Nội dung
I GIỚI THIỆU
• Vật lý
• Logic
Trang 829/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
II Khái niệm về thiết bị
Có 2 loại thiết bị:
• Thiết bị ký tự (Character device)
• Thiết bị khối (Block device):
Master Boot Record (MBR):
• Khái niệm
• Chiều dài
• BootLoader Code
• Partition table
• Mã đặc biệt định nghĩa MBR
Thiết bị trong Linux:
• Khái niệm
• Đĩa cứng IDE: hda, hdb …
• Đĩa cứng SCSI: sda, sdb …
• Đĩa mềm: fd0
• Đĩa CD-ROM: cdrom, hdc, hdd
30/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
III Các khái niệm cơ bản của Filesystem
• Kích thước
• 3 phần quan trọng:
+ Inode
+ Khối dữ liệu
+ Thư mục
Information technology faculty of Saigon University
1 Inode
Khái niệm
Số inode
Nội dung inode:
• Kiểu file
• Sở hữu
• Group
• Quyền hạn
• Kích thước file
• Vị trí khối dữ liệu
• Thời hạn
Information technology faculty of Saigon University
1 Inode (tt1)
Trang 933/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
1 Inode (tt2)
34/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
2 Khối dữ liệu
3 Thư mục
• Thư mục có cấu trúc dạng cây phân cấp
• Mỗi thư mục chứa tập tin và thư mục con
• Thư mục được xem là tập tin đặc biệt chứa
danh sách các thực thể, mỗi thực thể chứa
tên tập tin và số inode
3 Thư mục (tt)
Trang 1037/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
IV Các loại filesystem trong Linux
như:
• ext2, ext3, ext4
• iso9660
• vfat
• minix
• msdos
• ntfs,hpfs …
38/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
1 Virtual FileSystem
Layer (VFS)
Khái niệm
Hoạt động
Hình vẽ
Information technology faculty of Saigon University Information technology faculty of Saigon University
2 ext2 (tham khảo)
Ext2: Second Extended Filesystem
Là một filesystem được sử dụng thường xuyên trong Linux ở những phiên bản trước đây
Cung cấp những tính năng tiến bộ và hiệu quả xuất sắc
Filesystem này cấu trúc dạng khối (block)
Mỗi block là 1024 byte (nhưng kích thước này
có thể lớn hơn hay nhỏ hơn tại thời điểm tạo filesystem)
Trang 1141/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Đặc điểm của ext2:
• Ext2 hỗ trợ tập tin Unix chuẩn
• Cho phép liên kết tối đa 3 mức inode
• Cung cấp tên tập tin dài 255 ký tự (có thể mở rộng
đến 1012 ký tự).
• Cung cấp một vài vùng dành trước cho root dùng
cho việc khôi phục
• Có đủ khả năng quản lý và sử dụng vùng trống
hiệu quả.
• Cung cấp phân bổ tài nguyên động
• Inode chứa những mô tả đầy đủ về tập tin như loại
tập tin, quyền truy cập, kích thước tập tin v.v…
2 ext2 (tt1)
42/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
2 ext2 (tt2)
Cấu trúc vật lý
• Etx2: lưu trữ thông tin vào các khối dữ liệu (Data Blocks)
• Hệ thống tổ chức thành các nhóm khối (Block Group).
• Số khối trong nhóm (Blocks per Group) là số cố định (8192=2 13 khối)
|Boot Sector|BlockGroup 1| |BlockGroup N|
• Mỗi nhóm khối có chứa bản sao các thông tin điều khiển quan trọng nhất của toàn bộ hệ thống:
|Super Block|FS Descriptors|Block Bitmap
|Inode Bitmap|InodeTable|Data Blocks|
2 ext2 (tt3)
• Super Block:
+Chứa những mô tả cơ bản của toàn hệ
thống
+Nhờ nó mà hệ thống có thể bảo dưỡng
đuợc hệ thống tập tin
+Các bản sao của nó tại mỗi Block Group
sẽ được sử dụng để khôi phục lại hệ
thống khi có sự cố
+Các thông tin trong Super Block như sau:
2 ext2 (tt4)
• Các thông tin trong Super Block
Có giá trị là 0xEF53.
tin hệ thống có những đặc tính mới và có thể được dùng một cách an toàn trên hệ thống hay không.
số điểm gắn kết tối đa Biến đếm sẽ gia tăng và khi đạt đến cực đại hệ thống sẽ thông báo “Maximal mount count reached, running e2fsck is recommended”
+ Free Blocks: Số khối còn trống trong file system
+ Free Inodes: Số inode còn trống trong file system
+ First Inode: Số inode đầu tiên trong hệ thống tập tin
Trong EXT2, đó là thư mục gốc ‘/’
Trang 1245/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
2 ext2 (tt5)
• Blocks Bitmap: Sơ đồ vị trí khối được sử
dụng trong quá trình cấp phát và thu hồi
vùng nhớ khối
• Inode Bitmap: Sơ đồ vị trí inode được sử
dụng trong quá trình cấp phát và thu hồi
vùng nhớ inode
• Inode Table: chứa các inode của nhóm
46/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
3 ext3, ext4 (tham khảo)
ext2, nhưng tốc độ hơn
ext2 (sử dụng chương trình e2fsck để phục hồi lại những hư hỏng dữ liệu)
• # tune2fs -j /dev/hda1 (-j: journal)
Information technology faculty of Saigon University
4 VFAT
tương thích với filesystem FAT trên
Windows
đến tất cả những phiên bản của FAT.
Information technology faculty of Saigon University
5 ISO9660
sang hệ thống tập tin gốc của mình.
(Universal Disk Format).
Trang 1349/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
V.Thao tác trên Filesystem
1 Định dạng filesystem
lưu trữ dữ liệu
kiểu filesystem nào đó.
mkfs [loại_filesystem] [phân_vùng]
50/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
2 Xem thông tin
• Main menu / system / system monitor
• Hoặc trong GNOME gõ lệnh gtop
• Xem hình
2 Xem thông tin (tt1) 2 Xem thông tin (tt2)
Sử dụng dòng lệnh
• Lệnh df
• Lệnh du
Trang 1453/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
3 Kiểm và sửa
• Thiết bị bị tháo gỡ
• Mất nguồn đột xuất
• Kernel bị treo và khởi động
• Tắt máy không hợp lệ
54/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
4 Hiệu chỉnh
#/sbin/evltune [-tùy chọn] [phân_vùng]
#e2fsck –c
Information technology faculty of Saigon University
VI Gắn kết Filesystem
1 Khái niệm
Information technology faculty of Saigon University
2 Lệnh mount
#mount [tùy_chọn] [loại_fs] [tên_thiết_bị] [vị_trí]
• rw
• ro
• bg
• retrans
Trang 1557/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
3 Lệnh umount
#umount [tên_thiết_bị] hay
#umount [vị_trí_mount]
58/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
4 Gắn kết tự động
filesystem hay thiết bị một cách tự động.
• Người dùng
• Cách dùng
• Ví dụ: xem trang sau
4 Gắn kết tự động (tt)
LABEL=/home /home ext3 defaults 1 2
None /dev/shm tmpfs defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
5 Di chuyển filesystem
Vấn đề hết dung lượng trên /home
Giải quyết
• Tạo một partition mới
• Định dạng partition
Ví dụ: #/mkfs ext3 /dev/hda6
• Tạo một thư mục mới trong /mnt
• Gắn kết
• Sao chép tất cả dữ liệu
• Sửa tập tin /etc/fstab
• Hoàn tất:
#umount /mnt/newpartition
#mount /dev/hda6 /home
Trang 1661/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
6 Công cụ đồ họa
KdiskFree
62/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
6 Công cụ đồ họa (tt1)
Disk Management
Information technology faculty of Saigon University
6 Công cụ đồ họa (tt2)
linuxconf
Information technology faculty of Saigon University
VII Cấu trúc cây thư mục
bin
usr
etc
local share
var
spool log /
Trang 1765/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
VII Cấu trúc cây thư mục (tt)
• /bin: chương trình thực thi, tập tin khởi động
• /boot: image cuả kernel
• /dev: các tập tin thiết bị
• /etc: tập tin cấu hình, các script
• /home: thư mục cá nhân
• /lib: các hàm thư viện
• /lost+found: dữ liệu mồ côi
• /mnt: thư mục gắn kết
• /sbin: chương trình hệ thống dành cho root
• /tmp: dữ liệu tạm
• /usr/local: chương trình cài đặt
• /var: chứa các file biến thiên
66/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
VIII Thao tác trên tập tin và thư mục
1 Quyền hạn trên tập tin, thư mục
Nhóm người dùng: owner, group, others
Quyền hạn: r (read), w (write), x (execute)
Chỉ số định danh quyền hạn: 4-2-1 (trình bày
sau)
Ví dụ : $ ls –l /etc
-rw-r r 1 root root 120 Jun 25 13:22 im_palette-small.pal
lrwxrwxrwx 1 root root 11 Apr 12 07:52 init.d -> rc.d/init.d
drwxr-xr-x 2 root root 401 Apr 12 07:53 iproute2
Ý nghiã các cột
2 Liên kết
• Liên kết mềm (Soft link = Symbolic link)
• Liên kết cứng (Hard Link)
Trang 1869/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Liên kết mềm
• Tương tự shortcut trong Windows
• Số inode khác nhau
• Không quan tâm đến file có cùng ổ đĩa hay
không
• Lệnh thực hiện: ln –s [nguồn] [đích]
• Quyền hạn trên đích mặc định là tối đa, khi
thay đổi quyền đích sẽ ảnh hưởng nguồn,
nhưng thay đổi quyền trên nguồn thì đích
không ảnh hưởng
70/76
Information technology faculty of Saigon University NGUYỄN THÀNH SƠN
Liên kết mềm (tt)
• Các thao tác khác trên đích ảnh hưởng tới nguồn,
kể cả xoá file trong thư mục (trừ xoá trực tiếp
đích)
• Nếu nguồn bị xoá, tạo lại nguồn mới ?
• Ví dụ: $ ls -li baitho
8856 baitho
$ ln -s baitho lienketmem
$ ls -li baitho lienketmem
8856 baitho 877 lienketmem
• Khi liệt kê đầy đủ
lrwxrwxrwx 1 root root 12Aug1:2 lienketmem->baitho
Information technology faculty of Saigon University
Liên kết cứng
• Hai inode entry trỏ đến cùng một nội dung
vật lý
• Cùng một i-node vật lý
• Lệnh thực hiện: ln [nguồn] [đích]
• Khi nào file bị xoá?
• Chỉ có thể thực hiện được nếu file/thư mục
đích và nguồn nằm trên cùng một ổ đĩa
Information technology faculty of Saigon University
Liên kết cứng (tt)
• Ví dụ: $ ls -il cadao
11193 cadao
$ ln cadao lienketcung
$ ls -li lienketcung cadao
11193 lienketcung 11193 cadao
• Không có ký tự l như liên kết mềm (-)
• Không tăng dung lượng tập tin / thư mục
• Thay đổi nội dung, quyền hạn?
Vấn đề:
• Nhận diện liên kết cứng ?
• Nhận diện liên kết mềm ?