当前位置:才华咖 > 互联网计算机 > 计算机 > 操作系统 > Linux系统调用设备的ioctl函数
手机版

Linux系统调用设备的ioctl函数

来源:才华咖 阅读:2.76W 次

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

Linux系统调用设备的ioctl函数

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

blockdev [options] commands devices

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

–setro 设置设备为只读

–getro 读取设备是否为只读(成功为1,0则为可读写)

–setrw 设置设别为可读写

–getss 打印设备的扇区大小,通常是512

–getsize 打印设别的'容量,按照一个扇区512个字节计算

–setra N 设置预读扇区(512字节)为N个 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

[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’: 只读文件系统

本文链接:https://www.caihuaka.com/jsjzs/caozuo/9qjzkn.html

Copyright © 2024. 才华咖 All right reserved. 浙ICP备20120231号-3

文字美图素材,版权属于原作者。部分文章内容由网友提供推送时因种种原因未能与原作者联系上,若涉及版权问题,敬请原作者联系我们,立即处理。