Linux系统管理之硬盘管理
硬盘是计算的重要组成部件之一,硬盘为操作系统提供持久话存储的功能,在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 显示超级块中的信息
smartctl:(不支持虚拟机或云主机等服务器)
Smartctl是类Unix系统下SMART的命令行工具,它用于打印SMART自检和错误日志,启用或禁用SMRAT自动检测,以及初始化设备自检等操作
Smartctl对于Linux物理服务器十分有用,在这些服务器上,可以对智能磁盘进行错误检查,并将与硬件RAID相关的磁盘信息摘录下来 安装:
yum -y install smartmontools 常用选项:
-i 打印设备的简略信息,如序列号,转速等
-s 设置是否开启smart功能
-a 输出关于指定硬盘的所有smart信息
-H 打印设备健康状况
-t 子参数 执行测试操作,在测试时会对硬盘的性能有一点影响
常用子参数:
offline 进行脱机测试
short 运行短时间的自我测试(一般不超过10分钟)
long 运行扩展的自我测试(一般时间较长1小时以上)
select,N-M, 选择对指定范围的磁盘块进行测试而不是整块硬盘 示例:
smartctl -i /dev/sdb 检查SMART是否启用,输出的最后一行为Device does not support SMART表示不支持SMART,输出的最后一行为SMART support is: Disabled表示禁用SMART,输出的最后一行为SMART support is: Enabled表示已启用
smartctl -s on /dev/sdb 启用硬盘的SMART功能
smartctl -s off /dev/sdb 禁用硬盘的SMART功能
smartctl -a /dev/sdb 查看硬盘的详细信息
关键字段说明:
Raw_Read_Error_Rate: 底层数据读取错误率
Rotation Rate: 硬盘转数信息,固态硬盘显示Solid State Device
User Capacity: 硬盘容量
Start_Stop_Count: 硬盘加电次数
Power_On_Hours: 硬盘累计使用时长(小时)
Power-Off_Retract_Count: 非正常关闭硬盘的次数(突然关闭,或者强制热插拔硬盘的次数)
Temperature_Celsius: 硬盘温度
Seek_Error_Rate: 寻道错误率 smartctl -H /dev/sdb 获取设备的健康状态
smartctl -t short /dev/sdb 进行短时间的智能测试
smartctl -l selftest /dev/sdb 查看硬盘的自检结果
smartctl -c /dev/sdb 计算测试时间的大概值
smartctl -l error /dev/sdb 打印硬盘错误日志
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的设备信息
Linux系统管理之硬盘管理的更多相关文章
- Linux 系统管理06--磁盘管理
Linux系统管理06——磁盘管理 一.磁盘结构 1.硬盘的物理结构 盘片:硬盘有多个盘片,每个盘片2面 磁头:每面一个磁头 2.硬盘的数据结构 扇区:盘片被分为多个扇形区域,每个扇形区存放512字节 ...
- Linux 系统管理04--账号管理
Linux系统管理04--账号管理 一.用户账号管理 1.用户账号概述 (1)用户账号的常见分类: 1>超级用户:root uid=0 gid=0 权限最大. 2>普通用户:uid> ...
- 【Linux学习】Linux系统管理1—进程管理
Linux系统管理1-进程管理 一.Linux的三种进程 Linux包括3中不同类型的进程: 交互进程:由一个shell启动的进程.交互进程可以在前后台运行 批处理进程:该进程和终端无联系,是一个进程 ...
- Linux系统管理_软件管理
RPM命令 #管理.rpm文件 #RPM包软件命名规则:name-version-releases.arch.rpm rpm -ivh pkgname #安装软件包 rpm -ivh --test p ...
- Linux系统管理_磁盘管理——敬请期待!!!
df 显示磁盘空间使用情况 -a 全部文件系统列表 -h 以方便阅读的方式显示 -T 列出文件系统类型 du 查看目录和文件的磁盘空间使用情况 -a 显示目录中所有文件大小 -h 以易读方式显示文件大 ...
- Linux系统管理_用户管理
cat /etc/passwd #账户文件 cat /etc/shadow #密码文件 cat /etc/login.defs #密码策略机UID定义文件 #普通用户UID范围1000~60000:系 ...
- Linux基础学习(13)--Linux系统管理
第十三章——Linux系统管理 一.进程管理 1.进程查看: (1)进程简介:进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源. (2)进程管理的 ...
- linux 系统管理--进程管理
目录 linux 系统管理--进程管理 一.进程基本概述 二.监控进程状态 三.进程的优先级[进阶] 四.企业案例,Linux假死是怎么回事 五.后台进程管理 六.系统平均负载[进阶] linux 系 ...
- Linux命令整理,用户管理,用户组管理,系统管理,目录管理常用命令
知识点梳理 Linux课堂笔记 学习目标 能够知道什么是Linux系统以及它的应用场景 能够独立完成安装VMware虚拟机和网络配置 能够独立完成安装CentOS以及远程终端SecureCRT 能够熟 ...
随机推荐
- webrtc系列文章
WEBRTC RTP/RTCP协议族 2017-02-22 20:15 阅读(144) 评论(0) WebRTC 基于GCC的拥塞控制(下) 2017-02-22 15:44 阅读(108) 评论(0 ...
- Objective-C 的 self 和 super 详解 (用简单程序说明问题)
在 Objective-C 中的类实现中经常看到这两个关键字 "self" 和 "super",以以前 oop 语言的经验,拿 c++ 为例,self 相当于 ...
- 在ubuntu中安装minicom时出现devic…
未正常关闭minicom yesaidu@ywf-ubuntu: ~$ ls /var/lock LCK..ttyS0 subsys yesaidu@ywf-ubuntu: ~$ kill 0 ye ...
- python selenium环境配置Firefox和Chrome
1.下载Selenium库,可以使用pip install selenium https://pypi.python.org/pypi/selenium/ 2.下载驱动 Chrome: https:/ ...
- eclipse egit(分支管理 下)
在Git的分支merge中,不可能没有代码的冲突问题,特别在跟别人分工合作时.那该怎么解决? 1.新建一个conflict分支,在dev方法下添加一句 System.out.println(“Crea ...
- Python:cmd传参
假如你写了一个文件test.py,你需要三个参数,你运行时: python test.py arg1 arg2 arg3 在test.py中读取这几个参数: import sys print 'Num ...
- Professional C# 6 and .NET Core 1.0 - Creating Hello, World! with Visual Studio
本文为转载,学习研究 Creating Hello, World! with Visual Studio Chapter 1, “.NET Application Architectures,” ex ...
- libevent源码深度剖析一
libevent源码深度剖析一 ——序幕 张亮 1 前言 Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关文章也不少.写这一系列文章的用意在于,一则分享心得:二则对libe ...
- ECShop研究:去掉标题中的Powered by ECShop和meta的<meta name="Generator" content="ECSHOP v2.7.3" />
本文以ECSHOP v2.7.3为说明,其他版本可能有所不同. 标题中的Powered by ECShop去除方法: 打开includes/lib_main.php文件: 找到156行:$page_t ...
- docker问题:docker端口映射错误
1 docker端口映射错误 1.1 问题描述 利用docker启动nginx容器的时候报错: 1.2 解决办法 一次执行下面的命令就可以解决 pkill docker iptables -t nat ...