8 lệnh hữu ích để liệt kê ổ đĩa trong Linux
Đĩa cứng là thành phần chính của hệ thống để lưu trữ dữ liệu vĩnh viễn. Bạn có thể cài đặt một hoặc nhiều đĩa để lưu trữ dữ liệu và một số lệnh được sử dụng để liệt kê chi tiết đĩa và phân vùng đĩa trên máy tính của bạn. Đối với người quản trị hệ thống, việc kiểm tra xem các ổ đĩa có hoạt động bình thường hay không là một mối quan tâm lớn. Trong nhiều trường hợp, bạn sẽ phải liệt kê tất cả các ổ đĩa có sẵn trên máy tính của mình cùng với kích thước của chúng để đảm bảo rằng chúng không bị hết dung lượng. Nếu chúng hết dung lượng, về cơ bản, máy chủ của bạn có thể ngừng hoạt động, ngăn tất cả người dùng truy cập vào nó. Trong hướng dẫn này, chúng ta sẽ xem các lệnh có thể dễ dàng giúp bạn liệt kê các ổ đĩa có sẵn trên máy Linux của mình.
Điều kiện để có thể thực hiện các lệnh liệt kê ổ đĩa trong Linux
Đối với một số lệnh được sử dụng trong hướng dẫn này, ngoài trang bị một máy chủ Linux hoặc có thể mua VPS Linux, bạn sẽ cần có quyền quản trị viên để có được đầu ra đầy đủ của lệnh. Để kiểm tra xem bạn có quyền sudo hay không, bạn có thể thực thi lệnh “sudo” bằng “-l”:
$ sudo -l
Nếu bạn thấy các mục trùng khớp, điều đó có nghĩa bạn là tài khoản đặc quyền trên máy này.
8 lệnh hữu ích để liệt kê các ổ đĩa trong Linux
1. lsblk
lsblk (list block devices) được sử dụng để liệt kê thông tin của tất cả các thiết bị khối có sẵn, chẳng hạn như đĩa cứng và ổ đĩa flash. Chỉ cần gõ lệnh lsblk sẽ liệt kê tất cả các thiết bị khối ở dạng cây. Đây là một cách tiện dụng và đơn giản để liệt kê các đĩa.
lsblk
Output:
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 529M 0 part
├─sda2 8:2 0 100M 0 part /boot/efi
├─sda3 8:3 0 16M 0 part
├─sda4 8:4 0 165.8G 0 part
├─sda5 8:5 0 70G 0 part /
└─sda6 8:6 0 2G 0 part [SWAP]
zram0 252:0 0 8G 0 disk [SWAP]
2. df -h
Lệnh df được sử dụng để liệt kê toàn bộ dung lượng ổ đĩa có sẵn. Lệnh df mặc định in tên thiết bị, tổng số khối, dung lượng ổ đĩa đã sử dụng, dung lượng đĩa trống, phần trăm dung lượng đã sử dụng, điểm gắn kết hệ thống tệp và cũng in các hệ thống tệp được gắn từ xa như NFS. Lệnh df -h liệt kê dung lượng trống của tất cả các đĩa ở dạng người có thể đọc được.
sudo df -h
Output:
Filesystem Size Used Avail Use% Mounted on
devtmpfs 5.8G 0 5.8G 0% /dev
tmpfs 5.8G 90M 5.7G 2% /dev/shm
tmpfs 2.4G 11M 2.4G 1% /run
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
/dev/sda5 69G 62G 3.1G 96% /
tmpfs 5.8G 4.7M 5.8G 1% /tmp
/dev/sda2 96M 41M 56M 43% /boot/efi
tmpfs 1.2G 200K 1.2G 1% /run/user/1000
Một lệnh thay thế cho df -h là findmnt –df cho kết quả tương tự.
3. fdisk -l
Lệnh fdisk là một tiện ích dựa trên văn bản được sử dụng để quản lý các phân vùng đĩa. Sử dụng fdisk bạn có thể liệt kê các phân vùng đĩa, tạo phân vùng mới, xóa phân vùng đĩa cứng hiện có và xem kích thước của phân vùng. Sử dụng fdisk -l để xem tất cả các phân vùng đĩa có sẵn:
sudo fdisk -l
Output:
Disk /dev/sda: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SK hynix SC300B
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4
Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/loop0: 207.15 MiB, 217214976 bytes, 424248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 99.18 MiB, 103993344 bytes, 203112 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
4. parted -l
Parted là một công cụ hữu ích và mạnh mẽ được sử dụng để quản lý các phân vùng đĩa cứng từ dòng lệnh như danh sách, tạo, thu nhỏ, xóa, tìm và cứu các phân vùng đĩa. Với lệnh parted bạn có thể dễ dàng quản lý tất cả các phân vùng đĩa cứng. Lệnh parted -l sẽ liệt kê bố cục phân vùng đĩa trên tất cả các thiết bị khối:
sudo parted -l
Output:
Model: ATA SK hynix SC300B (scsi)
Disk /dev/sda: 256GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 556MB 555MB ntfs Basic data partition hidden, diag
2 556MB 661MB 105MB fat32 EFI System Partition boot, esp
3 661MB 677MB 16.8MB Microsoft reserved partition msftres
4 677MB 179GB 178GB ntfs Basic data partition msftdata
5 179GB 254GB 75.2GB ext4
6 254GB 256GB 2147MB linux-swap(v1) swap
Model: Unknown (unknown)
Disk /dev/zram0: 8590MB
Sector size (logical/physical): 4096B/4096B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 8590MB 8590MB linux-swap(v1)
5. cfdisk
Cfdisk hơi khác so với các lệnh trên, nó cung cấp chế độ xem đồ họa trong giao diện đầu cuối dựa trên văn bản để quản lý đĩa. Sử dụng cfdisk bạn có thể liệt kê, tạo, xóa và sửa đổi các phân vùng trên thiết bị đĩa:
sudo cfdisk
Output:
Disk: /dev/sda Size: 238.47 GiB, 256060514304 bytes, 500118192 sectors Label: gpt, identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4 Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Partition name: Basic data partition │
│ Partition UUID: E73F9719-F144-42A8-87BC-862FB470828B │
│ Partition type: Windows recovery environment (DE94BBA4-06D1-4D40-A16A-BFD50179D6AC) │
│ Attributes: RequiredPartition │
│ Filesystem UUID: 8C0A62C30A62A9C2 │
│Filesystem LABEL: Recovery │
│ Filesystem: ntfs │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────┘
[ Delete ] [ Resize ] [ Quit ] [ Type ] [ Help ] [ Write ] [ Dump ]
6. sfdisk -l
Sfdisk là một trình soạn thảo bảng phân vùng. Nó có thể liệt kê các phân vùng trên thiết bị, liệt kê kích thước của phân vùng, kiểm tra các phân vùng trên thiết bị và chuẩn bị thiết bị. Nó không được thiết kế cho các phân vùng lớn.sfdisk -l sẽ liệt kê các phân vùng của đĩa:
sudo sfdisk -l
Output:
Disk /dev/sda: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SK hynix SC300B
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4
Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/loop0: 207.15 MiB, 217214976 bytes, 424248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 99.18 MiB, 103993344 bytes, 203112 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
7. ls -l /dev/disk/by-id
Lệnh ls là một lệnh rất đơn giản nhưng mạnh mẽ được sử dụng để liệt kê các tập tin và thư mục. Chúng ta có thể liệt kê các đĩa bằng cách liệt kê thư mục /dev/disk/by-id.
ls -l /dev/disk/by-id
Output:
total 0
lrwxrwxrwx 1 root root 9 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part6 -> ../../sda6
lrwxrwxrwx 1 root root 9 Jun 20 23:26 wwn-0x5ace42e0900dd482 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part6 -> ../../sda6
=>> Lệnh lsusb trong Linux (Hiển thị chi tiết thiết bị USB)
8. lshw
lshw là một công cụ Linux được sử dụng để tạo thông tin chi tiết về cấu hình phần cứng của hệ thống. Sử dụng -class disk để liệt kê thông tin đĩa.
sudo lshw -class disk
Output:
*-disk
description: ATA Disk
product: SK hynix SC300B
physical id: 0.0.0
bus info: scsi@1:0.0.0
logical name: /dev/sda
version: 0P00
serial: FI68N023911308NC9
size: 238GiB (256GB)
capabilities: gpt-1.00 partitioned partitioned:gpt
configuration: ansiversion=5 guid=ff57c955-d98a-49c4-b1ed-835a44f2a0a4 logicalsectorsize=512 sectorsize=4096
Ngoài ra, có thể xuất đĩa -class dưới dạng -json hoặc -html hoặc -xml.
sudo lshw -class disk -json
Output:
{
"id" : "disk",
"class" : "disk",
"claimed" : true,
"handle" : "GUID:ff57c955-d98a-49c4-b1ed-835a44f2a0a4",
"description" : "ATA Disk",
"product" : "SK hynix SC300B",
"physid" : "0.0.0",
"businfo" : "scsi@1:0.0.0",
"logicalname" : "/dev/sda",
"dev" : "8:0",
"version" : "0P00",
"serial" : "FI68N023911308NC9",
"units" : "bytes",
"size" : 256060514304,
"configuration" : {
"ansiversion" : "5",
"guid" : "ff57c955-d98a-49c4-b1ed-835a44f2a0a4",
"logicalsectorsize" : "512",
"sectorsize" : "4096"
},
"capabilities" : {
"gpt-1.00" : "GUID Partition Table version 1.00",
"partitioned" : "Partitioned disk",
"partitioned:gpt" : "GUID partition table"
},
"children" : [
]
}
Trong hướng dẫn này, chúng tôi đã chia sẻ tới các bạn cách liệt kê các ổ đĩa trong Linux bằng 8 lệnh hữu ích. Đối với tất cả các lệnh, ngoại trừ lsblk và ls -l dev/disk, thì cần có quyền truy cập root hoặc quyền siêu người dùng để chạy các lệnh trên. Liên hệ VPS Chính hãng để tìm hiểu thêm về VPS và nhận những ưu đãi hấp dẫn dịp cuối năm khi đăng ký các gói dịch vụ lưu trữ tại đây. Cảm ơn đã theo dõi bài viết!