fsck
检查并且试图修复文件系统中的错误
补充说明
fsck
命令被用于检查并且试图修复文件系统中的错误。当文件系统发生错误时,可使用fsck
指令尝试修复。
语法
代码语言:javascript复制fsck [选项] [参数]
选项
-a
:自动修复文件系统,不询问任何问题;-A
:依照/etc/fstab
配置文件的内容,检查文件内所列的全部文件系统;-N
:不执行指令,仅列出实际执行会进行的动作;-P
:当搭配-A
参数使用时,则会同时检查所有的文件系统;-r
:采用互动模式,在执行修复时询问问题,让用户确认并决定处理方式;-R
:当搭配-A
参数使用时,则会略过/
目录的文件系统不予检查;-s
:依序执行检查作业,而非同时执行;-t <文件系统类型>
:指定要检查的文件系统类型;-T
:执行fsck
指令时,不显示标题信息;-V
:显示指令执行过程。
参数
- 文件系统:指定要查看信息的文件系统。
实例
Linux的文件系统损坏会导致Linux不正常关机。当出错时,如果系统告诉你是哪一块硬盘的分区有问题,比如是/dev/hda2
,可以使用以下命令去对付它:
fsck -y /dev/hda2
修复完成后,使用reboot
命令重启系统。
如果不知道出了问题的位置,在随后的多个确认对话框中输入y
即可:
fsck
修复完成后,同样使用reboot
命令重启系统。
hdparm
显示与设定硬盘的参数
补充说明
hdparm
命令提供了一个命令行的接口用于读取和设置IDE或SCSI硬盘参数。
语法
代码语言:javascript复制hdparm [选项] [参数]
选项
-a <快取分区>
:设定读取文件时,预先存入块区的分区数,若不加上<快取分区>
选项,则显示目前的设定;-A <0或1>
:启动或关闭读取文件时的快取功能;-c <I/O模式>
:设定IDE32位I/O模式;-C
:检测IDE硬盘的电源管理模式;-d <0或1>
:设定磁盘的DMA模式;-f
:将内存缓冲区的数据写入硬盘,并清除缓冲区;-g
:显示硬盘的磁轨、磁头、磁区等参数;-h
:显示帮助;-i
:显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身提供的;-I
:直接读取硬盘所提供的硬件规格信息;-k <0或1>
:重设硬盘时,保留-dmu
参数的设定;-K <0或1>
:重设硬盘时,保留-APSWXZ
参数的设定;-m <磁区数>
:设定硬盘多重分区存取的分区数;-n <0或1>
:忽略硬盘写入时所发生的错误;-p <PIO模式>
:设定硬盘的PIO模式;-P <磁区数>
:设定硬盘内部快取的分区数;-q
:在执行后续的参数时,不在屏幕上显示任何信息;-r <0或1>
:设定硬盘的读写模式;-S <时间>
:设定硬盘进入省电模式前的等待时间;-t
:评估硬盘的读取效率;-T
:评估硬盘快取的读取效率;-u <0或1>
:在硬盘存取时,允许其他中断要求同时执行;-v
:显示硬盘的相关设定;-w <0或1>
:设定硬盘的写入快取;-X <传输模式>
:设定硬盘的传输模式;-y
:使IDE硬盘进入省电模式;-Y
:使IDE硬盘进入睡眠模式;-Z
:关闭某些Seagate硬盘的自动省电功能。
参数
- 设备文件:指定id驱动对应的设备文件名。
实例
显示硬盘的相关设置:
代码语言:javascript复制hdparm /dev/sda
代码语言:javascript复制/dev/sda:
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 19457 [柱面数] / 255 [磁头数] / 63 [扇区数], sectors = 312581808 [总扇区数], start = 0 [起始扇区数]
显示硬盘的柱面、磁头、扇区数:
代码语言:javascript复制hdparm -g /dev/sda
代码语言:javascript复制/dev/sda:
geometry = 19457 [柱面数] / 255 [磁头数] / 63 [扇区数], sectors = 312581808 [总扇区数], start = 0 [起始扇区数]
测试硬盘的读取速度:
代码语言:javascript复制hdparm -T /dev/sda
代码语言:javascript复制/dev/sda:
Timing cached reads: 4684 MB in 2.00 seconds = 2342.92 MB/sec
测试硬盘缓存的读取速度:
代码语言:javascript复制hdparm -T /dev/xvda
代码语言:javascript复制/dev/xvda:
Timing cached reads: 11154 MB in 1.98 seconds = 5633.44 MB/sec
检测硬盘的电源管理模式:
代码语言:javascript复制hdparm -C /dev/sda
代码语言:javascript复制/dev/sda:
drive state is: standby [省电模式]
查询并设置硬盘多重扇区存取的扇区数,以增进硬盘的存取效率:
代码语言:javascript复制hdparm -m /dev/sda
hdparm -m # 参数值为整数值如8 /dev/sda
附:硬盘坏道修复方法
检查:smartctl -l selftest /dev/sda
卸载:umount /dev/sda*
修复:badblocks /dev/sda