Linux使用blockdev命令调整文件预读大小的方法
我们在使用过程中,可以对一些文件选择预读,这可以加快我们的工作效率。不过有时遇到一些较大的文件,就会导致我们的预读不全,那么这个问题该怎么解决呢?今天小编和大家分享下使用blockdev命令设置文件预读大小的方法。 解决方法: 在命令行调用设备的ioctl函数。在Linux系统中,似乎对设备的直接操作只有ioctl函数了。他接受的参数不是太多,而且都是一一对应的。 blockdev - 从命令行调用区块设备控制程序 blockdev [options] commands devices blockdev 工具允许从命令行调用区块设备控制程序。 –setro 设置设备为只读 –getro 读取设备是否为只读(成功为1,0则为可读写) –setrw 设置设别为可读写 –getss 打印设备的扇区大小,通常是512 –getsize 打印设别的容量,按照一个扇区512个字节计算 –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’: 只读文件系统 以上就是使用blockdev命令对Linux系统预读文件大小进行设置的方法了,有需要或者是有兴趣的用户可以在自己的电脑上尝试操作一下。
Linux使用blockdev命令调整文件预读大小的方法