linux中创建特殊文件mknod命令用法详解:
2012-08-14 15:33
1481 查看
linux中创建特殊文件mknod命令用法详解:
函数用途:
创建特殊文件。
语法:
只能由 root 用户或系统组成员运行
mknod Name { b | c } Major Minor
创建 FIFO(已命名的管道)
mknod Name { p }
描述:
mknod 命令建立一个目录项和一个特殊文件的对应索引节点。第一个参数是 Name 项设备的名称。选择一个描述性的设备名称。mknod 命令有两种形式,它们有不同的标志。
mknod 命令的第一种形式只能由 root 用户或系统组成员执行。在第一种形式中,使用了b 或 c 标志。b 标志表示这个特殊文件是面向块的设备(磁盘、软盘或磁带)。c 标志表示这个特殊文件是面向字符的设备(其他设备)。
第一种形式的最后两个参数是指定主设备的数目,它帮助操作系统查找设备驱动程序代码,和指定次设备的数目,也就是单元驱动器或行号,它们是十进制或八进制的。一个设备的主要和次要编号由该设备的配置方法分配,它们保存在 ODM 中的 CuDvDr 类里。在这个对象类中定义了主要和次要编号以确保整个系统设备定义的一致性,这是很重要的。
在 mknod 命令的第二种形式中,使用了 p 标志来创建 FIFO(已命名的管道)。 标志b 表示特殊文件是面向块的设备(磁盘、软盘或磁带)。
c 表示特殊文件是面向字符的设备(其他设备)。
p 创建 FIFO(已命名的管道)。
示例(导出数据为dmp格式)#!/bin/ksh
cd /arch
mkdir data_exp
cd data_exp
mknod exp_pipe0 p
exp hr/hr file=exp_pipe0 tables=data_history direct=y recordlength=65535 indexes=n triggers=n statistics=none constraints=n query='where id < 10206' log=data_history.log &
compress < exp_pipe0 > data_history.dmp)
rm exp_pipe0
cat *.log | grep ORA_
cat *.log | grep EXP_
c.创建虚拟设备(dev),日志记录的时候有的选项可能用到它们。在默认情况下,是使用/dev目录下的文件,但是由于我们需要把DNS限制到一个目录,所以必须完全把/dev下用到的文件(或者说设备)模拟过来才可以。
ls -lL /dev/zero /dev/null /dev/random
看到类似
crw-rw-rw- 1 root root 1, 3 2003-09-15 /dev/null
crw-r--r-- 1 root root 1, 8 2003-09-15 /dev/random
crw-rw-rw- 1 root root 1, 5 2003-09-15 /dev/zero
这样的,将其中的1,3这样的数字记录下来,这表示主设备号和次设备号(一般来说主设备号用来区分设备的种类;次设备号则是为了作唯一性区分,标明不同属性——注意,在unix系统中是把设备也当作文件来对待的),在redhat 9下,ls加不加-L参数都无所谓,但是在Solaris下则一定要加上才可以显示。
mknod dev/null c 1 3
mknod dev/zero c 1 5
mknod dev/random c 1 8
函数用途:
创建特殊文件。
语法:
只能由 root 用户或系统组成员运行
mknod Name { b | c } Major Minor
创建 FIFO(已命名的管道)
mknod Name { p }
描述:
mknod 命令建立一个目录项和一个特殊文件的对应索引节点。第一个参数是 Name 项设备的名称。选择一个描述性的设备名称。mknod 命令有两种形式,它们有不同的标志。
mknod 命令的第一种形式只能由 root 用户或系统组成员执行。在第一种形式中,使用了b 或 c 标志。b 标志表示这个特殊文件是面向块的设备(磁盘、软盘或磁带)。c 标志表示这个特殊文件是面向字符的设备(其他设备)。
第一种形式的最后两个参数是指定主设备的数目,它帮助操作系统查找设备驱动程序代码,和指定次设备的数目,也就是单元驱动器或行号,它们是十进制或八进制的。一个设备的主要和次要编号由该设备的配置方法分配,它们保存在 ODM 中的 CuDvDr 类里。在这个对象类中定义了主要和次要编号以确保整个系统设备定义的一致性,这是很重要的。
在 mknod 命令的第二种形式中,使用了 p 标志来创建 FIFO(已命名的管道)。 标志b 表示特殊文件是面向块的设备(磁盘、软盘或磁带)。
c 表示特殊文件是面向字符的设备(其他设备)。
p 创建 FIFO(已命名的管道)。
示例(导出数据为dmp格式)#!/bin/ksh
cd /arch
mkdir data_exp
cd data_exp
mknod exp_pipe0 p
exp hr/hr file=exp_pipe0 tables=data_history direct=y recordlength=65535 indexes=n triggers=n statistics=none constraints=n query='where id < 10206' log=data_history.log &
compress < exp_pipe0 > data_history.dmp)
rm exp_pipe0
cat *.log | grep ORA_
cat *.log | grep EXP_
c.创建虚拟设备(dev),日志记录的时候有的选项可能用到它们。在默认情况下,是使用/dev目录下的文件,但是由于我们需要把DNS限制到一个目录,所以必须完全把/dev下用到的文件(或者说设备)模拟过来才可以。
ls -lL /dev/zero /dev/null /dev/random
看到类似
crw-rw-rw- 1 root root 1, 3 2003-09-15 /dev/null
crw-r--r-- 1 root root 1, 8 2003-09-15 /dev/random
crw-rw-rw- 1 root root 1, 5 2003-09-15 /dev/zero
这样的,将其中的1,3这样的数字记录下来,这表示主设备号和次设备号(一般来说主设备号用来区分设备的种类;次设备号则是为了作唯一性区分,标明不同属性——注意,在unix系统中是把设备也当作文件来对待的),在redhat 9下,ls加不加-L参数都无所谓,但是在Solaris下则一定要加上才可以显示。
mknod dev/null c 1 3
mknod dev/zero c 1 5
mknod dev/random c 1 8
相关文章推荐
- linux中创建特殊文件mknod命令用法详解
- mknod命令_Linux mknod 命令用法详解:创建字符设备文件和块设备文件
- updatedb命令_Linux updatedb 命令用法详解:创建或更新slocate命令所必需的数据库文件
- mktemp命令_Linux mktemp 命令用法详解:创建临时文件供shell脚本使用
- htpasswd命令_Linux htpasswd 命令用法详解:apache服务器创建密码认证文件
- mke2fs命令_Linux mke2fs 命令用法详解:创建磁盘分区上的“etc2/etc3”文件系统
- touch命令_Linux touch 命令用法详解:创建新的空文件
- Linux文件操作详解(八)--文件的创建和编辑(vi/vim命令和cat命令)
- [zz]linux dd命令参数及用法详解---用指定大小的块拷贝一个文件
- Xshell拖拽文件到linux(rz和sz命令用法详解)
- linux文件和目錄管理的基本命令命令_Linux linux文件和目錄管理的基本命令 命令用法详解:
- sftp命令_Linux sftp 命令用法详解:交互式的文件传输程序
- uucico命令_Linux uucico 命令用法详解:Linux uucico命令UUCP文件传输服务程序。 uucico是用来处理uucp或uux送到队列的文件传输工具。uucico有两种工作模式:主动模式和附属模式。当在主动模式下时,uucico会调用远端主机;在附属模式下时,uucico则接受远端主机的调用。
- tail命令_Linux tail 命令用法详解:在屏幕上显示指定文件的末尾若干行
- lsattr命令_Linux lsattr 命令用法详解:查看文件的第二扩展文件系统属性
- linux mkfs命令参数及用法详解---linux格式化文件系统命令(包括swap分区)
- Linux文件操作详解(七)--文件夹的创建(mkdir命令)
- linux mount命令参数及用法详解---linux挂载光盘等文件系统的命令
- 【转】linux mkfs命令参数及用法详解---linux格式化文件系统命令(包括swap分区)
- quotaoff命令_Linux quotaoff 命令用法详解:关闭Linux内核中指定文件系统的磁盘配额功能