本文收集一些与硬盘信息有关的linux指令与操作,方便日后查阅参考。
1 lsblk
记法:ls指令,但是输出的是block
这条指令可以查看当前连接的所有硬盘信息,运行结果如下:
yw@debian:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 976M 0 part /boot/efi
├─sda2 8:2 0 229.7G 0 part /
└─sda3 8:3 0 7.8G 0 part [SWAP]
sdb 8:16 0 465.8G 0 disk
└─sdb1 8:17 0 465.8G 0 part /mnt/storage
其中sda和sdb是实际的硬盘,后面带的数字是这个盘不同的分区。SIZE就是大小,然后最后一列是分区的挂载点,这个就是实际能够访问硬盘的位置。
2 mount&umount
这两条指令用于挂载硬盘的分区。通过上面的那条指令得到硬盘分区的信息后,就可以使用这两条指令来挂载或者取消挂载。
对于虚拟机中的共享文件夹也可以用这个指令来挂载
2.1 mount
命令格式为sudo mount [要挂载的分区路径] [挂载的位置]
例如:
yw@debian:~$ sudo mount /dev/sdb1 /home/yw/tmp/empty_dir
[sudo] yw 的密码:
yw@debian:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 976M 0 part /boot/efi
├─sda2 8:2 0 229.7G 0 part /
└─sda3 8:3 0 7.8G 0 part [SWAP]
sdb 8:16 0 465.8G 0 disk
└─sdb1 8:17 0 465.8G 0 part /home/yw/tmp/empty_dir
/mnt/storage
使用mount需要注意:
- 必须用
sudo - 要挂载的目录(上面为
/home/yw/tmp/empty_dir)必须已经存在
2.2 umount
对于已经挂载的目录,可以通过unmount取消挂载,命令为:sudo umount [要取消挂载的路径]
例如:
yw@debian:~$ sudo umount /home/yw/tmp/empty_dir
yw@debian:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 976M 0 part /boot/efi
├─sda2 8:2 0 229.7G 0 part /
└─sda3 8:3 0 7.8G 0 part [SWAP]
sdb 8:16 0 465.8G 0 disk
└─sdb1 8:17 0 465.8G 0 part /mnt/storage
3 blkid
这条指令输出所有分区的UUID信息以及块大小,文件系统信息等,用法:sudo blkid(一定要有sudo)
例如:
yw@debian:~$ sudo blkid
/dev/sdb1: UUID="db92c15a-199b-4c7f-9382-c68c19759cfd" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="0326d89a-01"
/dev/sda2: UUID="8e7b91ac-007a-49b5-bf07-72c7cdd2b7be" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="ffe5ceea-d312-44a1-83d2-78f3c519088b"
/dev/sda3: UUID="15cd7fde-8e6a-4306-ab5e-181da014b8c0" TYPE="swap" PARTUUID="b1347dbf-02e6-43cb-898b-a9594764f8ee"
/dev/sda1: UUID="A757-485E" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="5cdff84a-7cfd-46a3-bcc1-1b604748e1f5"
4 /etc/fatab
这个文件是文件系统表,用于实现开机自动挂载。例如下面的这条配置:
UUID=db92c15a-199b-4c7f-9382-c68c19759cfd /mnt/storage ext4 defaults,nofail 0 2
- UUID就是前面blkid得到的信息
- 后面跟的
/mnt/storage是启动后的挂载点 ext4是文件系统类型,同样在blkid中得到defaults,nofail是配置信息,defaults允许一组默认的权限和行为,推荐加上;nofail对于非系统盘必须要有,意思是即使识别失败(比如你把硬盘拔了)系统也允许正常启动0 2建议不要变。0表示不使用dump备份,现在的磁盘一般都选这个,2表示在检查根分区对应的磁盘分区后,过来检查这个盘有没有错误
5 udisksctl
这个命令主要用来给硬盘断电(也可以拿来解挂等操作),命令格式:
udisksctl power-off -b [设备路径]
例如:
udisksctl power-off -b /dev/sdb
由于我现在是远程控制,如果运行的话得去现场插拔才能重新识别,所以这里就不运行这个指令了。
虽然这条指令会自动检测是否挂载并取消,但是建议还是先手动取消挂载,然后再运行这条指令断电。
6 smartctl
这条指令用于查看硬盘的健康状况,使用方式:sudo smartctl -a [设备名称],例如sudo smartctl -a /dev/sdb注意必须要加sudo。命令会输出很多信息,直接交给AI解读即可。