Skip to main content

[Linux kernel] dm - đang mệt

dm là từ viết tắt phổ biến cho "device mapper" trong thế giới Linux.
dm xuất hiện từ phiên bản 2.6.9 [2] của Linux kernel, tức đến giờ này thì các hệ điều hành Linux-based đều có sẵn dm để dùng.

Trang chủ: https://www.sourceware.org/dm/ đã định nghĩa một cách nghiêm túc về dm như sau [3]:
The Device-mapper is a component of the linux kernel (since version 2.6) that supports logical volume management. It is required by LVM2 and EVMS. The original LVM (included in stock 2.4 kernels) does not use it.
Vậy dm:
  • là một thành phần của Linux kernel - cụ thể nó là một kernel module (wikipedia gọi nó là một "framework" [4]).
  • dùng để hỗ trợ việc quản lý các volume một cách "logical".
  • là phần yêu cầu bởi LVM2 và EVMS - nếu không biết chúng là gì - tạm bỏ qua
Trên Linux, dm thể hiện là một block device, có thể thấy ở :

# grep mapper /proc/devices
252 device-mapper
Nói một cách dễ hiểu hơn, device-mapper giúp người dùng nhìn thấy/quản lý các device (ở đây là các ổ cứng) theo một góc nhìn sử dụng (logical) thay vì góc nhìn vật lý (physical) . Cho phép phân chia chúng theo logic (sử dụng làm phân vùng ở đây cho ứng dụng này, cho ứng dụng kia) chứ không theo tính chất vật lý (một ổ cứng số 1, ổ cứng số 2 ...)

dm là một thành phần của kernel, tức do kernel quản lý (kernel space), khi muốn tương tác với nó, cần có các công cụ ở phía người dùng (userspace) như dmsetup, hay lib libdevmapper [3]

Linux documentation dành hẳn 1 thư mục cho những thứ liên quan đến dm
https://www.kernel.org/doc/Documentation/device-mapper/

dmsetup
dmsetup là câu lệnh để quản lý các logical device ở mức thấp (low-level). Tất nhiên nó chỉ quản lý các logical device tạo bởi device-mapper. Các device này từ đây sẽ gọi là "device-mapper device".

Xem thêm tại: http://manpages.ubuntu.com/manpages/trusty/man8/dmsetup.8.html

dm-crypt
Định nghĩa [5]
Device-Mapper's "crypt" target provides transparent encryption of block devices using the kernel crypto API.
Theo thuật ngữ được sử dụng ở đây, DM có nhiều target, có thể kể tới:
- dm-crypt
- dm-cache
- linear
...

crypt target có khả năng mã hoá một block device sử dụng crypto API của kernel

cryptsetup
là câu lệnh giúp quản lý các volume được mã hoá bởi dm-crypt (dm-crypt encrypted volume).
Người dùng (sysadmin) thường sử dụng câu lệnh này để thực hiện formuat/encrypt/decrypt volume.

# TODO
LUKS


Tham khảo:

[2] http://www.tldp.org/HOWTO/LVM-HOWTO/builddmmod.html
[3] https://www.sourceware.org/dm/
[4] https://en.wikipedia.org/wiki/Device_mapper
[5] https://www.kernel.org/doc/Documentation/device-mapper/dm-crypt.txt
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Logical_Volume_Manager_Administration/device_mapper.html

Bài viết thực hiện trên:
# uname -a
Linux wl-ci 3.13.0-77-generic #121-Ubuntu SMP Wed Jan 20 10:50:42 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Tạm dừng, còn tiếp...
HVN @ FAMILUG at ORG

Comments

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG