blockdev命令

http://www.jb51.net/LINUXjishu/310389.html

这篇文章主要介绍了Linux blockdev命令设置文件预读大小介绍,blockdev 工具允许从命令行调用区块设备控制程序,本文就讲解了它的使用实例,需要的朋友可以参考下

在命令行调用设备的ioctl函数。在Linux系统中,似乎对设备的直接操作只有ioctl函数了。他接受的参数不是太多,而且都是一一对应的。

blockdev - 从命令行调用区块设备控制程序

blockdev [options] commands devices

blockdev 工具允许从命令行调用区块设备控制程序。

--getra 读取预读值
--getfra 读取文件系统预读
--setfra FSREADAHEAD 设置文件系统预读
--setra READAHEAD 设置设备预读
--getra 读取设备的预读值
--setbsz BLOCKSIZE 在文件描述符打开块设备的时候设置块大小
--getioopt 读取设备优化IO大小
--getiomin 读取设备最小IO大小
-–setro 设置设备为只读
-–getro 读取设备是否为只读(成功为1,0则为可读写)
-–setrw 设置设别为可读写
-–getss 打印设备的扇区大小也叫逻辑块大小,通常是512
--getpbsz 读取设备物理块大小,通常是4096
--getbsz 读取设备块大小,通常是4096
-–getsize(-getsz) 打印设备的容量,按照一个扇区512个字节计算
--getsize64 打印设备的容量,以字节为单位显示
-–setra N 设置预读扇区(512字节)为N个.Set readahead to N 512-byte sectors.
-–getra 打印readahead(预读扇区)
-–flushbufs 刷新缓冲
-–rereadpt 重读分区表。

觉得–setro,setrw比较有用,这个mount -o ro(rw)是有区别的,mount是在文件系统这个级别上对某个分区挂载为只读或可读写。而blockdev则是在设别这个级别上设置为只读和可读写。
看下面的命令输出结果就一目了然了。

[[email protected] ~]# blockdev –setro /dev/hda4
[[email protected] ~]# blockdev –getro /dev/hda4
1
[[email protected] ~]# mount /dev/hda4 /misc -o rw
mount: block device /dev/hda4 is write-protected, mounting read-only
[[email protected] ~]# umount /dev/hda4
[[email protected] ~]# blockdev –setrw /dev/hda4
[[email protected] ~]# blockdev –getro /dev/hda4
0
[[email protected] ~]# mount /dev/hda4 /misc -o rw
[[email protected] ~]# touch /misc/one
[[email protected] ~]# umount /dev/hda4
[[email protected] ~]# mount /dev/hda4 /misc -o ro
[[email protected] ~]# rm -f /misc/one
rm: 无法删除‘/misc/one’: 只读文件系统

刷新buffer

free -m
total used free shared buffers cached
Mem: 15907 15665 242 0 158 4702
-/+ buffers/cache: 10803 5104
Swap: 7999 0 7999

# blockdev --flushbufs /dev/sda5
# free -m
total used free shared buffers cached
Mem: 15907 15536 371 0 31 4702
-/+ buffers/cache: 10802 5105
Swap: 7999 0 7999



tune2fs命令

查看文件系统信息

tune2fs -l /dev/sda5
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name: <none>
Last mounted on: /data
Filesystem UUID: 35389d47-d4ed-406d-a8b8-2c7a69cfa4ce
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 58589184
Block count: 234333952
Reserved block count: 11716697
Free blocks: 226871715
Free inodes: 58589166
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 968
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
RAID stride: 1
Flex block group size: 16
Filesystem created: Tue Jul 26 16:18:18 2016
Last mount time: Wed Aug 3 08:42:19 2016
Last write time: Wed Aug 3 08:42:19 2016
Mount count: 8
Maximum mount count: -1
Last checked: Tue Jul 26 16:18:18 2016
Check interval: 0 (<none>)
Lifetime writes: 14 GB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
First orphan inode: 38666243
Default directory hash: half_md4
Directory Hash Seed: d4449666-888f-4552-aa4d-eccde1fda9e1
Journal backup: inode blocks

f

时间: 2024-11-06 17:15:57

blockdev命令的相关文章

Hadoop平台优化

一:概述 随着企业要处理的数据量越来越大,MapReduce思想越来越受到重视.Hadoop是MapReduce的一个开源实现,由于其良好的扩展性和容错性,已经得到越来越广泛的应用. 二:存在问题: Hadoop作为一个基础数据处理平台,虽然其应用价值已经得到大家认可,但仍然存在问题,以下是主要几个: 1:Namenode/jobtracker单点故障 Hadoop采用的是master/slaves架构,该架构管理起来比较简单,但存在致命的单点故障和空间容量不足等缺点,这已经严重影响了Hadoo

linux添加裸设备

1.什么裸设备?字符设备?块设备? 裸设备:也叫裸分区(原始分区),是一种没有经过格式化,不被Unix/Linux通过文件系统来读取的特殊字符设备.裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊字符设备.它由应用程序负责对它进行读写操作.不经过文件系统的缓冲.裸设备可以绑定一个分区,也可以绑定一个磁盘. 字符设备:对字符设备的读写不需要通过OS的buffer.它不可被文件系统mount. 块设备:对块设备的读写需要通过OS的buffer,它可以被mou

Mongodb 笔记09

备份 1. 只有在有信心能在紧急情况下完成迅速部署的情况下,备份才是有用的.所以,无论选择了哪种备份技术,一定要对备份及恢复备份的操作进行练习,知道了然于心. 2. 通常情况下,应对副本集的非主节点(与主节点相对)进行备份. 3. 对服务器进行备份 1). 文件系统快照:使用快照备份需要开启日记系统.如果是对正在运行的系统生成快照,那么快照的数据内容本质让相当于使用kill -9 命令强制终止后的数据内容.因此,mongod在启动时会对日志 文件进行重放,然后开始正常运行. 2). 复制数据文件

几个系统调用分析 glibc中的malloc调用和共享内存原理

本文主要分析内存以及I/O相关的系统调用和库函数的实现原理,根据原理给出在使用过程中需要注意的问题和优化的侧重点,本文涉及到的系统调用包括readahead,pread/pwrite,read/write,mmap,readv/writev,sendfile,fsync/fdatasync/msync,shmget,malloc. 本文先简单介绍应用程序对内存的使用以及I/O系统对内存的使用的基本原理,这对理解上述系统调用和库函数的实现有很大帮助. 1 内存管理基础 Linux对物理内存的管理是

HDFS优化

优化Linux文件系统 noatime和nodiratime属性 Linux文件系统会记录文件创建.修改和访问操作的时间信息,这在读写操作频繁的应用中将带来不小的性能损失.在挂载文件系统时设置noatime和nodiratime可禁止文件系统记录文件和目录的访问时间,这对HDFS这种读取操作频繁的系统来说,可以节约一笔可观的开销.可以修改/etc/fstab文件来实现这个设置.$ vim /etc/fstab如对/mnt/disk1使用noatime属性,可以做如下修改:/ ext4 defau

mongodb优化预读

1.优化预读采用LINUX的BLOCKDEV命令来把预读大小设置小一点,减少内存中无用数据占用,从而优化IO性能RA代表预读大小(扇区),推荐数值是16到32,如文档较小,预读数值可以小一点,修改后mongodb重启才能生效. 预读默认256个扇区,大小为128K mongodb很多都是随机访问,readhead要设置小一点.比如只要读10k,但读了128K [email protected]:~# blockdev --reportRO    RA   SSZ   BSZ   StartSec

MapReduce调优总结与拓展

本文为<hadoop技术内幕:深入解析MapReduce架构设计与实现原理>一书第9章<Hadoop性能调优>的总结. 图1 Hadoop层次结构图 从管理员角度进行调优 1.硬件选择 master配置(可靠性,内存,CPU主频等)优于slave. 2.操作系统参数调优 1)增大同时打开的文件描述符和网络连接上限 ulimit 将允许同时打开的文件描述符数增大到一个合适的值. net.core.somaxconn 定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数,默认值

zabbix应用之Low-level discovery监控磁盘IO

zabbix自带的"Template OS Linux"模板支持监控已挂载的磁盘空间利用率,是利用LLD(Low-level discovery)实现的,却没有对磁盘IO监控.本篇文章就介绍利用zabbix LLD功能监控磁盘IO的方法. 思路:首先创建Discovery rules,在agent端配置对应的UserParameter,调用编写好的shell脚本,动态查找出已经挂载的磁盘分区:然后创建Item prototypes,使用vfs.dev.read[device,<t

linux命令dd

原文链接: http://blog.csdn.net/adaptiver/article/details/6672592 dd 使用dd这个linux命令可以创建一定大小文件. linux创建文件命令:dd命令把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换.语法:CODE:[Copy to clipboard]dd [选项]QUOTE:if =输入文件(或设备名称).of =输出文件(或设备名称).ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数.