Linux 磁盘设备相关命令

命令

块设备,最常见的是硬盘,除此之外还有软盘驱动器、光盘驱动器、闪存等。

blkid

列出块设备的路径、UUID、类型等信息。对于一个系统来说,设备的 UUID 永远不会变,但是名称、设备路径(/dev/sda1)等可能发生改变。

> blkid
/dev/sda1: SEC_TYPE="msdos" UUID="D667-D9A6" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="9956c66c-2690-4ef3-b9f9-7728ef5ed16e"
/dev/sda2: UUID="9e806728-17ec-4496-8daf-17683d3ce6e5" TYPE="xfs" PARTUUID="90efaf5b-8860-4c6a-90f2-33091bd07a8c"
/dev/sda3: UUID="UGnwzW-N6UW-EPGp-OIu1-hzc3-gprc-T6cKPp" TYPE="LVM2_member" PARTUUID="6f9f528d-60b4-4bc1-b6ff-98d4356b41ca"
/dev/sdb1: LABEL="storage1" UUID="4f0b385a-ae8b-4d12-859b-b999c1c7fd05" TYPE="ext4"
/dev/mapper/centos-root: UUID="61ccbaf4-3cae-45db-ac33-9554da96bb04" TYPE="xfs"
/dev/mapper/centos-swap: UUID="0bbdac00-7399-48c0-9504-9eba80971d07" TYPE="swap"

lsblk

用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系。

> lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda               8:0    0   477G  0 disk
├─sda1            8:1    0   200M  0 part /boot/efi
├─sda2            8:2    0     1G  0 part /boot
└─sda3            8:3    0 475.8G  0 part
  ├─centos-root 253:0    0    50G  0 lvm  /
  ├─centos-swap 253:1    0     4G  0 lvm  [SWAP]
  └─centos-home 253:2    0 421.8G  0 lvm  /home
sdb               8:16   0   1.8T  0 disk
└─sdb1            8:17   0   1.8T  0 part /storage1
sdc               8:32   0   1.8T  0 disk
└─sdc1            8:33   0   1.8T  0 part /storage2
  • MAJ:MIN:显示主要和次要设备号。
  • RM:显示设备是否可移动设备。RM值等于 1,这说明他们是可移动设备。
  • RO:设备是否为只读。1 表示该设备只读。
  • TYPEdisk 表示是磁盘;part: 表示是分区;rom:表示只读存储,而sr0是只读存储(rom)

fdisk

fdisk 除了可以查看当前磁盘列表,有哪些分区外。它的核心功能是通过命令行操作磁盘分区(创建、删除、合并等)。

fdisk -l

这个命令将会列出磁盘名称、分区数量、分区表类型、磁盘识别代号、分区 ID 和分区类型。

> sudo fdisk -l
Disk /dev/sda: 30 GiB, 32212254720 bytes, 62914560 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
Disklabel type: dos
Disk identifier: 0xeab59449

Device     Boot    Start      End  Sectors Size Id Type
/dev/sda1  *    20973568 62914559 41940992  20G 83 Linux

Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 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/sdc: 10 GiB, 10737418240 bytes, 20971520 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/sdd: 10 GiB, 10737418240 bytes, 20971520 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/sde: 10 GiB, 10737418240 bytes, 20971520 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

编辑磁盘分区

这是危险操作。一般是通过图形化界面完成(gnome 自带磁盘工具)。想学习如何通过 fdisk 操作磁盘,请自行搜索。

lsusb

显示本机的 USB 设备信息

> lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 003: ID 046d:c092 Logitech, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 002

表示第 2 个 USB 主控制器。

Device 001

系统给该设备分配的设备号,001 表示这个设备是当前 USB 控制器下的第 1 个设备。

ID 0bda:0129

设备唯一 ID,硬件厂商决定。

最后一列

设备名称、厂商名称等信息。

fstab

fstab 是 file system table 的意思,即文件系统表。它在开机的时候告诉系统挂载哪些分区、挂载点是什么、以什么格式挂载、挂载的选项等等。

然后系统在开机的时候就根据 fstab 内容,执行挂载操作。在挂载完之后,就可以在文件系统上进行操作。将需要挂载的分区放入fstab之后,就不需要手动挂载。

fstab 是被 mount 命令解析,然后根据解析内容执行操作。

fstab 文件一行表示一个挂载操作,包含 6 列信息:

#                     
/dev/root    /        ext2    rw,noauto    0    1
proc        /proc        proc    defaults    0    0
UUID=D667-D9A6   /boot/efi     vfat    umask=0077,shortname=winnt 0 0        

:表示磁盘文件、设备的 Label 或者 UUID。可以通过 blkid 查看。

:是设备挂载点,就是设备要挂载到哪个目录下。

:待挂载的文件系统格式。

:挂载时的选项(下面的列表不全,仅展示常用参数)。

options 含义
async/sync 设置是否为同步方式运行,默认为 async
auto/noauto 此文件系统是否被主动挂载。默认为 auto
rw/ro 是否以以只读或者读写模式挂载
exec/noexec 限制此文件系统内是否能够进行”执行”的操作
user/nouser 是否允许用户使用 mount 命令挂载。nouser 表示只有 root 用户能挂载
suid/nosuid 是否允许 SUID 的存在
defaults 使用文件系统的默认挂载参数,例如 ext4 的默认参数为: rw, suid, dev, exec, auto, nouser, async

:是否被dump命令使用。0 代表不要做 dump 备份;1 代表要每天进行 dump 的操作;2 代表不定日期的进行 dump 操作

:标识是否检验扇区。在开机过程中,系统默认会以 fsck 检查系统是否完整。0 不要检验;1 最早检验(一般根目录会选择);2 1级别检验完成之后进行检验

你可能感兴趣的:(脚本,linux,运维,块设备,硬盘,磁盘)