由于目前磁盘分区主要有 MBR 以及 GPT 两种格式,这两种格式所使用的分区工具不太一样!你当然可以使用本章预计最后才介绍的parted这个通通有支持的工具来处理,不过,我们还是比较习惯使用 fdisk 或者是 gdisk 来处理分区啊!因此,我们自然就得要去找一下目前系统有的磁盘有哪些? 这些磁盘是 MBR 还是 GPT 等等的!这样才能处理啦!

  • lsblk 列出系统上的所有磁盘列表

lsblk 可以看成“ list block device ”的缩写,就是列出所有储存设备的意思!这个工具软件真的很好用喔!来瞧一瞧!

[root@study ~]# lsblk [-dfimpt] [device]
选项与参数:
-d  :仅列出磁盘本身,并不会列出该磁盘的分区数据
-f  :同时列出该磁盘内的文件系统名称
-i  :使用 ASCII 的线段输出,不要使用复杂的编码 (再某些环境下很有用)
-m  :同时输出该设备在 /dev 下面的权限数据 (rwx 的数据)
-p  :列出该设备的完整文件名!而不是仅列出最后的名字而已。
-t  :列出该磁盘设备的详细数据,包括磁盘伫列机制、预读写的数据量大小等

范例一:列出本系统下的所有磁盘与磁盘内的分区信息
[root@study ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0              11:0    1 1024M  0 rom
vda             252:0    0   40G  0 disk             # 一整颗磁盘

&
#124;-vda1          252:1    0    2M  0 part

&
#124;-vda2          252:2    0    1G  0 part /boot
`-vda3          252:3    0   30G  0 part

&
#124;-centos-root 253:0    0   10G  0 lvm  /           # 在 vda3 内的其他文件系统

&
#124;-centos-swap 253:1    0    1G  0 lvm  [SWAP]
  `-centos-home 253:2    0    5G  0 lvm  /home

从上面的输出我们可以很清楚的看到,目前的系统主要有个 sr0 以及一个 vda 的设备,而 vda 的设备下面又有三个分区, 其中 vda3 甚至还有因为 LVM 产生的文件系统!相当的完整吧!从范例一我们来谈谈默认输出的信息有哪些。

  • NAME:就是设备的文件名啰!会省略 /dev 等前导目录!
  • MAJ:MIN:其实核心认识的设备都是通过这两个代码来熟悉的!分别是主要:次要设备代码!
  • RM:是否为可卸载设备 (removable device),如光盘、USB 磁盘等等
  • SIZE:当然就是容量啰!
  • RO:是否为只读设备的意思
  • TYPE:是磁盘 (disk)、分区 (partition) 还是只读存储器 (rom) 等输出
  • MOUTPOINT:就是前一章谈到的挂载点!

    范例二:仅列出 /dev/vda 设备内的所有数据的完整文件名 [root@study ~]# lsblk -ip /dev/vda NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT /dev/vda 252:0 0 40G 0 disk

    &

    124;-/dev/vda1 252:1 0 2M 0 part

    &

    124;-/dev/vda2 252:2 0 1G 0 part /boot

    `-/dev/vda3 252:3 0 30G 0 part

    &

    124;-/dev/mapper/centos-root 253:0 0 10G 0 lvm /

    &

    124;-/dev/mapper/centos-swap 253:1 0 1G 0 lvm [SWAP]

    `-/dev/mapper/centos-home 253:2    0    5G  0 lvm  /home        # 完整的文件名,由 / 开始写
    
  • blkid 列出设备的 UUID 等参数

虽然 lsblk 已经可以使用 -f 来列出文件系统与设备的 UUID 数据,不过,鸟哥还是比较习惯直接使用 blkid 来找出设备的 UUID 喔! 什么是 UUID 呢?UUID 是全域单一识别码 (universally unique identifier),Linux 会将系统内所有的设备都给予一个独一无二的识别码, 这个识别码就可以拿来作为挂载或者是使用这个设备/文件系统之用了。

[root@study ~]# blkid
/dev/vda2: UUID="94ac5f77-cb8a-495e-a65b-2ef7442b837c" TYPE="xfs" 
/dev/vda3: UUID="WStYq1-P93d-oShM-JNe3-KeDl-bBf6-RSmfae" TYPE="LVM2_member"
/dev/sda1: UUID="35BC-6D6B" TYPE="vfat"
/dev/mapper/centos-root: UUID="299bdc5b-de6d-486a-a0d2-375402aaab27" TYPE="xfs"
/dev/mapper/centos-swap: UUID="905dc471-6c10-4108-b376-a802edbd862d" TYPE="swap"
/dev/mapper/centos-home: UUID="29979bf1-4a28-48e0-be4a-66329bf727d9" TYPE="xfs"

如上所示,每一行代表一个文件系统,主要列出设备名称、UUID 名称以及文件系统的类型 (TYPE)!这对于管理员来说,相当有帮助! 对于系统上面的文件系统观察来说,真是一目了然!

  • parted 列出磁盘的分区表类型与分区信息

虽然我们已经知道了系统上面的所有设备,并且通过 blkid 也知道了所有的文件系统!不过,还是不清楚磁盘的分区类型。 这时我们可以通过简单的 parted 来输出喔!我们这里仅简单的利用他的输出而已~本章最后才会详细介绍这个指令的用法的!

[root@study ~]# parted device_name print

范例一:列出 /dev/vda 磁盘的相关数据
[root@study ~]# parted /dev/vda print
Model: Virtio Block Device (virtblk)        # 磁盘的模块名称(厂商)
Disk /dev/vda: 42.9GB                       # 磁盘的总容量
Sector size (logical/physical): 512B/512B   # 磁盘的每个逻辑/物理扇区容量
Partition Table: gpt                        # 分区表的格式 (MBR/GPT)
Disk Flags: pmbr_boot

Number  Start   End     Size    File system  Name  Flags      # 下面才是分区数据
 1      1049kB  3146kB  2097kB                     bios_grub
 2      3146kB  1077MB  1074MB  xfs
 3      1077MB  33.3GB  32.2GB                     lvm

看到上表的说明,你就知道啦!我们用的就是 GPT 的分区格式喔!这样会观察磁盘分区了吗?接下来要来操作磁盘分区了喔!

results matching ""

    No results matching ""