Thứ Hai, 23 tháng 5, 2022

Liệt kê tên thiết bị, thông tin ổ đĩa và phân vùng trong Linux với lsblk

Trên Linux, đôi khi bạn cần phải làm việc với các ổ đĩa và/hoặc phân vùng trực tiếp từ dòng lệnh. Thông thường, bạn thực sự muốn thực hiện hành động trên các hệ thống file, nhưng rốt cuộc lại làm điều đó bằng cách chỉ định các phân vùng nơi chúng được lưu trữ. Trên dòng lệnh, bạn thực hiện những điều này bằng cách sử dụng tên thiết bị của chúng (ví dụ: “/dev/sda3”).

Trên các hệ thống có nhiều ổ đĩa, phân vùng, ổ quang và ổ USB, có thể khó xác định tên thiết bị được gán cho mỗi ổ đó.

Cách dùng lệnh lsblk để liệt kê tên thiết bị, thông tin ổ đĩa và phân vùng trong Linux

  • Lệnh lsblk thực hiện nhiệm vụ gì?
  • Tham số lsblk hữu ích
    • Tìm hiểu xem đó là ổ SSD hay ổ cứng (HDD)
    • Hiển thị hệ thống file được lưu trữ trên ổ đĩa hoặc phân vùng
    • Hiển thị thiết bị di động hoặc thẻ nhớ USB
    • Hiển thị model HDD/SSD
    • Hiển thị UUID (Universally Unique Identifier) hệ thống file
  • Hiển thị các cột lsblk khác bạn cần

Lệnh lsblk thực hiện nhiệm vụ gì?

lsblk hiển thị thông tin về các thiết bị lưu trữ. Tiện ích này thường được sử dụng để xác định tên thiết bị chính xác được truyền cho lệnh tiếp theo.

lsblk


Trong hầu hết mọi trường hợp, chỉ lsblk, không cần bất kỳ tham số bổ sung nào, cũng đủ để giúp xác định ổ đĩa hoặc phân vùng bạn muốn làm việc. Chẳng hạn, từ bức ảnh trên, bạn có thể nói rằng, sda4 là một phân vùng của Windows, vì bạn biết dung lượng của nó là khoảng 200GB. Tuy nhiên, nếu bạn có hai hoặc nhiều phân vùng có cùng kích thước, mọi thứ có thể trở nên khó hiểu hơn. Trong những trường hợp khác, bạn chỉ đơn giản là không biết hoặc không nhớ dung lượng của một ổ đĩa hoặc phân vùng cụ thể trên hệ thống của mình.

Trên Linux, rất nguy hiểm khi nhầm lẫn tên thiết bị, vì bạn có thể phá hủy hoặc làm hỏng dữ liệu hữu ích bằng một lệnh sai.

Tham số lsblk hữu ích

Theo mặc định, lsblk chỉ hiển thị một vài thuộc tính, như bạn đã thấy trong hình trên. Nhưng, nếu thêm tham số vào lệnh, bạn có thể khiến cho nó xuất ra các thuộc tính thiết bị bổ sung. Điều này giúp việc xác định ổ đĩa hoặc phân vùng bạn đang tìm kiếm dễ dàng hơn nhiều.

Tìm hiểu xem đó là ổ SSD hay ổ cứng (HDD)

Để xem những cột nào lsblk có thể hiển thị, hãy nhập như sau:

lsblk --help

Trong tình huống này, bạn sẽ sử dụng ROTA và DISC-GRAN.

  • ROTA cho bạn biết liệu một block device (file đại diện cho một loại thiết bị nào đó, với dữ liệu có thể đọc hoặc ghi theo dạng block (khối), thường có khả năng tìm kiếm tiến/lùi, và/hoặc ánh xạ dữ liệu) có thuộc về thiết bị lưu trữ dạng quay không. Các đĩa cứng có thể quay, do đó, cột này xuất ra giá trị “1” bên cạnh chúng (giá trị logic nhị phân có nghĩa là “true”).
  • DISC-GRAN cho bạn thấy mức độ chi tiết của việc loại bỏ (discard granularity). SSD hỗ trợ việc loại bỏ để giải phóng các khối dữ liệu không sử dụng. Đĩa cứng không hỗ trợ tính năng này, vì chúng không cần nó, do đó cột này sẽ hiển thị giá trị 0.
lsblk -o +ROTA,DISC-GRAN

Hiển thị hệ thống file được lưu trữ trên ổ đĩa hoặc phân vùng

Khi thấy một danh sách các phân vùng, bạn có thể biết những gì chúng lưu trữ, dựa trên dung lượng của chúng. Nếu điều này không đủ, bạn cũng có thể tạo các hệ thống file đầu ra lsblk. Sẽ dễ dàng hơn nhiều nếu xác định phân vùng theo cách này bởi vì:

  • Windows sử dụng hệ thống file NTFS
  • Linux thường sử dụng ext4
  • Thiết bị USB sử dụng FAT, FAT32 (vfat) hoặc NTFS
  • Phân vùng boot EFI thường rất nhỏ và hiển thị một hệ thống file vfat trên đó

Ngoài ra, thêm cột đầu ra LABEL, có thể giúp ích, nếu các phân vùng đã được gắn nhãn khi tạo hoặc format.

lsblk -o +FSTYPE,LABEL

Hiển thị thiết bị di động hoặc thẻ nhớ USB

lsblk -o +RM

Lệnh này sẽ hiển thị thêm một cột cho bạn biết liệu thiết bị có thể tháo rời không. Giá trị “1”, đồng nghĩa với “true”, ám chỉ một USB hoặc các loại phương tiện di động khác.

Hiển thị model HDD/SSD

Điều này hữu ích khi bạn muốn tra cứu code chính xác của model thiết bị lưu trữ để nâng cấp firmware hoặc tải xuống driver.

lsblk -d -o +MODEL

Hiển thị UUID (Universally Unique Identifier) hệ thống file

Các bản phân phối Linux cũ đã mount hệ thống file bằng cách chỉ định tên thiết bị của chúng trong “/etc/fstab”. Tuy nhiên, điều đó đã chứng minh là không đáng tin cậy bởi vì “/dev/sda2” có thể trở thành “/dev/sdb2”, khi bạn thêm một thiết bị lưu trữ khác vào hệ thống. Hiện nay, UUID được sử dụng thay thế, vẫn không đổi cho dù bạn thêm vào hoặc loại bỏ bất cứ gì khỏi máy tính. Vì bất kỳ lý do gì bạn cần UUID, bạn đều có thể làm cho lsblk hiển thị chúng với:

lsblk -o +UUID

Hiển thị các cột lsblk khác bạn cần

Ở phần đầu bài viết, bạn đã sử dụng:

lsblk --help

Lệnh này nhằm để xem các cột bổ sung mà lsblk có thể hiển thị. Nếu các ví dụ ở đây không đủ cho nhu cầu của bạn, hãy tham khảo thông tin trợ giúp đó một lần nữa và kết hợp những tham số khi cần. Để làm như vậy, chỉ cần nhập lsblk -o +, theo sau là tên cột mà bạn muốn xuất. Phân tách tên cột bằng dấu phẩy. Ví dụ:

lsblk -o +SCHED,RM,FSTYPE

Sau khi xác định tên thiết bị muốn làm việc, hãy nhớ thay thế nó bằng đường dẫn thiết bị đầy đủ trong lệnh tiếp theo bạn định sử dụng. Ví dụ, nếu nhận được kết quả là “sda4” trong lsblk, bạn sẽ phải thay thế nó bằng “/dev/sda4” trong lệnh tiếp theo. Vì vậy, thay vì “sda4”, bạn hãy nhập “/dev/sda4” vào một lệnh chẳng hạn như:

mkfs -t ext4 /dev/sda4

Chúc bạn thực hiện thành công!

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master