如何在 Linux 中列出磁盘、分区和文件系统?

Mia*_*Mia 171 utilities hard-disk block-device

在 Windows 中,如果您LIST DISK在命令提示符中键入using DiskPart,它会列出所有物理存储设备,以及它们的大小、格式等。在 Linux 中,这与此等效是什么?

jim*_*mij 252

有很多工具,例如fdisk -lor parted -l,但可能最方便的是lsblk(又名列表块设备):

例子

$ lsblk
NAME           MAJ:MIN  RM  SIZE    RO  TYPE  MOUNTPOINT
sda            8:0      0   238.5G  0   disk
??sda1         8:1      0   200M    0   part  /boot/efi
??sda2         8:2      0   500M    0   part  /boot
??sda3         8:3      0   237.8G  0   part
??fedora-root  253:0    0   50G     0   lvm   /
??fedora-swap  253:1    0   2G      0   lvm   [SWAP]
??fedora-home  253:2    0   185.9G  0   lvm
Run Code Online (Sandbox Code Playgroud)

它有许多附加选项,例如显示文件系统、标签等。一如既往man lsblk是您的朋友。

  • 注意:`-f` 开关很有用,试试:`lsblk -f` (13认同)
  • @Dor 如果您推荐使用它们,则值得解释附加选项的作用。`-f` 或 `--fs` 显示有关文件系统的信息,例如格式、加密、raid 成员等。虽然它比默认值慢一些。 (9认同)

小智 34

另一种快速查看文件系统的方法是 df 命令。在我的机器上(芬兰语本地化)它显示如下:

ptakala@athlon:/mnt$ df
Tiedostojärjestelmä 1K-lohkot      Käyt   Vapaana Käy% Liitospiste
/dev/root            38317204  19601752  16762352  54% /
devtmpfs              4063816         0   4063816   0% /dev
tmpfs                 4097592     81988   4015604   3% /dev/shm
tmpfs                 4097592     10120   4087472   1% /run
tmpfs                    5120         8      5112   1% /run/lock
tmpfs                 4097592         0   4097592   0% /sys/fs/cgroup
/dev/sda9           535267140 287403688 220666804  57% /work
/dev/sda7           288239836 201635356  71956016  74% /home
tmpfs                  819520         4    819516   1% /run/user/113
tmpfs                  819520         8    819512   1% /run/user/1000
/dev/sda1            39070048  37083304   1986744  95% /mnt/sda1
/dev/sda10           22662140  14032580   8629560  62% /mnt/sda10
/dev/sda5            29280176  20578032   8702144  71% /mnt/sda5
Run Code Online (Sandbox Code Playgroud)

它不会显示文件系统类型,但通常这不是必需的,您可以用一只眼药水看到所需的一切。

人类可读的尺寸:

ptakala@athlon:/mnt$ df -h
Tiedostojärjestelmä  Koko  Käyt Vapaa Käy% Liitospiste
/dev/root             37G   19G   16G  54% /
devtmpfs             3,9G     0  3,9G   0% /dev
tmpfs                4,0G   89M  3,9G   3% /dev/shm
tmpfs                4,0G  9,9M  3,9G   1% /run
tmpfs                5,0M  8,0K  5,0M   1% /run/lock
tmpfs                4,0G     0  4,0G   0% /sys/fs/cgroup
/dev/sda9            511G  275G  211G  57% /work
/dev/sda7            275G  193G   69G  74% /home
tmpfs                801M  4,0K  801M   1% /run/user/113
tmpfs                801M  8,0K  801M   1% /run/user/1000
/dev/sda1             38G   36G  1,9G  95% /mnt/sda1
/dev/sda10            22G   14G  8,3G  62% /mnt/sda10
/dev/sda5             28G   20G  8,3G  71% /mnt/sda5
Run Code Online (Sandbox Code Playgroud)

  • 这仅显示已安装的设备。`lsblk` 将显示所有块设备。 (17认同)

Ond*_*žka 29

其他答案没有显示 UUID,这对于在引导脚本和 .config 等配置中用作参考很有用/etc/hdparm。所以在这里:

$ sudo lsblk --output NAME,FSTYPE,LABEL,UUID,MODE
NAME        FSTYPE LABEL     UUID                                 MODE
sda                                                               brw-rw----
??sda1      ntfs   WinHyperX 2D6BFC4E0CDCFAD8                     brw-rw----
??sda2      ext4   HyperX    ef761208-bab3-4a26-87d2-ed21a7f5a1bb brw-rw----
??sda3      swap             74259007-a80b-4866-b059-0bdbe6331040 brw-rw----
sdb                                                               brw-rw----
??sdb1      ext4   4TB       91e32977-0656-45b8-bcf5-14acce39d9c2 brw-rw----
sr0                                                               brw-rw----
mmcblk0                                                           brw-rw----
??mmcblk0p1 exfat            9C33-6BBC                            brw-rw----
Run Code Online (Sandbox Code Playgroud)

其他可用的列:(参见lsblk --help

        NAME  device name
       KNAME  internal kernel device name
     MAJ:MIN  major:minor device number
      FSTYPE  filesystem type
  MOUNTPOINT  where the device is mounted
       LABEL  filesystem LABEL
        UUID  filesystem UUID
          RO  read-only device
          RM  removable device
       MODEL  device identifier
        SIZE  size of the device
       STATE  state of the device
       OWNER  user name
       GROUP  group name
        MODE  device node permissions
   ALIGNMENT  alignment offset
      MIN-IO  minimum I/O size
      OPT-IO  optimal I/O size
     PHY-SEC  physical sector size
     LOG-SEC  logical sector size
        ROTA  rotational device
       SCHED  I/O scheduler name
     RQ-SIZE  request queue size
        TYPE  device type
    DISC-ALN  discard alignment offset
   DISC-GRAN  discard granularity
    DISC-MAX  discard max bytes
   DISC-ZERO  discard zeroes data
Run Code Online (Sandbox Code Playgroud)