硬盘是计算的重要组成部件之一,硬盘为操作系统提供持久话存储的功能,在Linux硬盘设备的性能和好坏可能关系到生成线的安全和用户体验等等。熟练的掌握硬盘管理相关的信息能让我们处理起这些问题来得心应手。
Linux中最为重要到的哲学就是一切皆文件,硬盘设备也不例外,在Linux系统中硬盘设备一般存放在/dev/下面SATA、SCSI等接口类型的硬盘使用sd表示,第一块sd的硬盘表示为/dev/sda,第二块sd的硬盘表示为/dev/sdb。IDE硬盘使用hd表示,第一块hd的硬盘表示为/dev/hda,第二块hd的硬盘表示为/dev/hdb。以此类推。
下面介绍Linux下和硬盘相关的命令(不同发型版命令可能不太相同)
mount 挂载指定设备
格式:mount -t 文件系统类型(通常mount命令会自动识别) 设备路径 挂载点
示例:
mount /dev/sda1 /mnt/ #将/dev/sda1 挂载到/mnt
mount /dev/cdrom /media/ #将cdrom(光盘设备)挂载到/media
mount -a #重读/etc/fstab文件
umount 卸载指定设备
格式:umount 设备/挂载点
示例:
umount /dev/sda1 #卸载/dev/sda1 卸载到整个设备,比如说这个分区一共挂载到了/mnt /test /test1那么这三个挂载点的挂载都将卸掉
umount /media/ #卸载挂在/media目录上面的设备
df 查看当前系统挂载的分区情况
格式
df 参数
常用参数
--help 查看帮助信息
-i 显示inode情况
-h 自动计算显示的文件系统大小单位
-k 以kb方式大小输出文件系统大小
-l 只显示本地文件系统的信息
-T 显示文件系统类型
-t 只显示指定的文件系统
tune2fs 调整文件系统属性
格式:
tune2fs 参数 分区
常用参数: -j 在不损坏原有数据的情况下升级ext2为ext3 -L 设定或修改卷标(卷名) -m 调整预留给超级用户(root)的百分比,默认为5% -c 指定挂载次数达到n次之后进行自检,0或-1表示关闭此功能 -i 每次挂载使用多少天之后进行自检,0或-1表示关闭此功能 -l 显示超级块中的信息
hdparm:
hdparm命令提供了一个命令行的接口用于在驱动级别读取和设置IDE或SCSI硬盘参数
安装:
yum -y install hdparm
命令格式:
hdparm 参数 设备
常用参数:
-h 查看帮助信息
-I 获取硬盘的详细信息,如序列号,硬盘转述,接口类型等
-t 评估硬盘的读取速度(不经过硬盘cache)
-T 评估硬盘快取的读取效率(内存中缓存的频繁使用的数据)
-a 设置硬盘的预读取功能,对于读取大文件有显著的性能提升
-A 0/1 启动或关闭读取文件时的快取功能
-f 将内存缓冲区的数据写入硬盘,并清空缓冲区(类似雨sync命令)
--direct 通常和-t或-T参数一起使用,通过原始io测试硬盘读取速度,更好地指示原始设备和驱动程序的性能
--drq-hsm-error 非常危险的命令,仅在测试环境中模拟故障时使用,生成环境中千万不要使用
-g 显示硬盘的磁轨,磁头,磁区等参数
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供
-I 直接读取硬盘所提供的硬件规格信息(从驱动器读取读取硬盘信息)
--make-bad-sector 非常危险的命令,仅在测试环境中模拟故障时使用,生成环境中千万不要使用(故意创建一个坏扇区,用于测试raid等设备检查扇区的功能)
-r 将硬盘设置为自读模式
-S 设定硬盘进入省电模式前的等待时间
-y 强制IDE驱动器立即进入待机模式
-Y 强制IDE驱动器立即进入休眠模式
-w 设置硬盘的写入快取
示例:
hdparm -I /dev/sha #获取硬盘的详细信息
hdparm -C /dev/sda #检测硬盘的电源管理模式
hdparm -t #测试硬盘的读取速度(不经过cache)
hdparm -T #测试硬盘快取的读取速度
hdparm -Tt --direct /dev/sda #测试硬盘的真实读取速度
其他的一些相关命令:
fsck 检查并修复linux中的文件系统
格式:
fsck 参数 文件系统分区
常用参数: -t 指定文件系统类型 -a 自动修复 e2fsck 专用于修复ext系列的文件系统
格式:
e2fsck 参数 文件系统分区 常用参数:
-f 强制检查 -p 自动修复 mke2fs 专门管理ext系列的文件系统
格式:
mke2fs 参数 文件系统分区
常用参数: -j 创建ext3类型的文件系统 -b 指定块大小,默认为4096,可以值有,1024、2048.4096 -L 指定卷标 -m 指定预留给超级用户的块数百分比 -E 指定额外文件系统属性 blkid 查看当前磁盘设备的相关属性 格式:
blkid 文件系统分区
字段说明:
UUID:磁盘的唯一标识符 TYPT:文件系统类型 LABEL:卷标 e2label 查看或重新定义卷标 格式:
e2label 文件系统分区 [卷标名]
示例:
e2label /dev/sda1 查看卷标名
e2label /dev/sda1 test 设置卷标名
其他命令: lscpu 用于查询CPU信息 lshw 用于显示硬件信息表 hwinfo 用于查询硬件信息 lsppci 用于列出PCI总线的信息以及连接到PCI总线上的设备信息 lsblk 用于列出块设备的信息 lsscsi 用于列出SCSI的设备信息