blockdev命令  blkid命令  lsblk命令

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

block相关的命令

这篇文章主要介绍了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则是在设别这个级别上设置为只读和可读写。
看下面的命令输出结果就一目了然了。

[root@lancy ~]# blockdev –setro /dev/hda4
[root@lancy ~]# blockdev –getro /dev/hda4
1
[root@lancy ~]# mount /dev/hda4 /misc -o rw
mount: block device /dev/hda4 is write-protected, mounting read-only
[root@lancy ~]# umount /dev/hda4
[root@lancy ~]# blockdev –setrw /dev/hda4
[root@lancy ~]# blockdev –getro /dev/hda4
0
[root@lancy ~]# mount /dev/hda4 /misc -o rw
[root@lancy ~]# touch /misc/one
[root@lancy ~]# umount /dev/hda4
[root@lancy ~]# mount /dev/hda4 /misc -o ro
[root@lancy ~]# 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


blkid命令

另一个和block有关的命令

blkid

blkid
/dev/vda1: UUID="fb1d72cf-8058-40e6-8b25-58f9759e1cf9" TYPE="ext3"
/dev/vdb1: UUID="0169c89a-fe36-4b3d-b0ef-0d11497aca9e" TYPE="ext4"
/dev/vdc1: UUID="2da0e026-dbd5-4c9c-9b0d-3574a3403b2b" TYPE="swap"


lsblk命令

lsblk把所有磁盘和分区显示出来,uuid也可以显示出来

lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 8G 0 disk
└─vda1 252:1 0 8G 0 part /
vdb 252:16 0 10G 0 disk
└─vdb1 252:17 0 9G 0 part /data
vdc 252:32 0 2G 0 disk
└─vdc1 252:33 0 2G 0 part [SWAP]

显示uuid

lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
vda
└─vda1 ext3 fb1d72cf-8058-40e6-8b25-58f9759e1cf9 /
vdb
└─vdb1 ext4 0169c89a-fe36-4b3d-b0ef-0d11497aca9e /data
vdc swap lswap 887348e5-e421-470a-b5e5-e6bed3619e3c
└─vdc1 swap 2da0e026-dbd5-4c9c-9b0d-3574a3403b2b [SWAP]

显示所有设备

lsblk -a
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 0 loop
loop1 7:1 0 0 loop
loop2 7:2 0 0 loop
loop3 7:3 0 0 loop
loop4 7:4 0 0 loop
loop5 7:5 0 0 loop
loop6 7:6 0 0 loop
loop7 7:7 0 0 loop
vda 252:0 0 8G 0 disk
└─vda1 252:1 0 8G 0 part /
vdb 252:16 0 10G 0 disk
└─vdb1 252:17 0 9G 0 part /data
vdc 252:32 0 2G 0 disk
└─vdc1 252:33 0 2G 0 part [SWAP]

f

blockdev命令 blkid命令 lsblk命令的更多相关文章

  1. 查看设备uuid的命令-blkid

      查看设备uuid的命令-blkid 在关联/etc/fstab的时候可以使用   [root@mapper ~]# blkid /dev/sda1: UUID="285510be-b19 ...

  2. lsblk命令

    lsblk命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息.块设备有硬盘,闪存盘,cd-ROM等等.lsblk命令包含在util-linux-ng包中,现 ...

  3. Linux中什么是块设备 及 lsblk命令的使用

    Linux中I/O设备分为两类:字符设备和块设备.两种设备本身没有严格限制,但是,基于不同的功能进行了分类.(1)字符设备:提供连续的数据流,应用程序可以顺序读取,通常不支持随机存取.相反,此类设备支 ...

  4. lsblk命令详解

    基础命令学习目录首页 lsblk 默认是树形方式显示: $lsblk NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda      8:0    0   2. ...

  5. 如何使用Linux lsblk命令列出块设备信息

    译至:http://linoxide.com/linux-command/linux-lsblk-command/ lsblk命令(列出块设备)用于列出所有可用的块设备的信息,但是, 它并没有列出有关 ...

  6. linux磁盘之lsblk命令

    lsblk命令可以显示很多跟磁盘相关分区.所属关系以及lvm的重要信息,所以这个命令最好掌握.lsblk命令默认情况下将以树状列出所有块设备,包括查看磁盘挂载信息.lsblk命令包含在util-lin ...

  7. Linux命令学习总结: file命令

    命令简介: 该命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的. 执行权限 :All User 指令所在 ...

  8. 每天一个linux命令(1):ls命令

    1. 命令格式: ls [选项] [目录名] 2. 命令功能: 列出目标目录中所有的子目录和文件. 4. 常用范例: 例一:列出/home/peidachang文件夹下的所有文件和目录的详细资料 命令 ...

  9. Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

     1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

随机推荐

  1. [AWS] Amazon Cognito

    看懂 [AWS] User management and [AWS] OAuth2.0 才方便看到此篇. Ref: 常见 Amazon Cognito 场景 Amazon Cognito 的两个主要组 ...

  2. [React] 12 - Redux: async & middleware

    Ref: Redux 入门教程(二):中间件与异步操作 这里只是简单地了解中间件的概念,对于异步,貌似之后要讲的saga更胜一筹. reducer计算新状态的策略: Action 发出以后,Reduc ...

  3. 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V4 -- 粘包拆包

    网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- new LengthFieldPrepender(2) : 设置数据包 2 字节的特征码 new LengthFieldB ...

  4. Linux Platform驱动模型(三) _platform+cdev

    平台总线是一种实现设备信息与驱动方法相分离的方法,利用这种方法,我们可以写出一个更像样一点的字符设备驱动,即使用cdev作为接口,平台总线作为分离方式: xjkeydrv_init():模块加载函数 ...

  5. MySQL主从同步技术

    一,先装mysql 准备两台服务器,主服务器是10.0.0.200 副服务器是10.0.0.128主服务器当作mysql的服务端,下载mysql-serveryum install mysql-ser ...

  6. js函数 eql,equal,equalp

    function eql(obj, other) { if(stringp(obj) && stringp(other) && obj === other) retur ...

  7. echarts pie 图表 显示的label 中内容 字体大小自定义

    option = { tooltip: { trigger: 'item', formatter: "{a} <br/>{b}: {c} ({d}%)" }, lege ...

  8. Codeforces 1132C - Painting the Fence - [前缀和优化]

    题目链接:https://codeforces.com/contest/1132/problem/C 题意: 栅栏有 $n$ 个节,有 $q$ 个人可以雇佣来涂栅栏,第 $i$ 个人可以涂第 $l_i ...

  9. [No0000116]SQLServer启用sa账户

    SQLServer如何启用sa账户,今天在这里唠叨一下关于SQL Server数据库如何启用sa账户的,作为一个数据库管理者,需要非常熟练掌握,具体步骤如下: 1.先登录数据库服务 首先在“开始”菜单 ...

  10. hdu6435 Problem J. CSGO标程讲解以及改正标程的一个错误(本来第一个样例过不了2333) 以及 poj2926 五维曼哈顿距离模板

    比赛的时候抄poj2926的模板,但改不来啊orz #include <iostream> #include <cstdio> #include <cstring> ...