3963

20 分钟

#Bash 的 mknod 命令

mknod [OPTION]... NAME TYPE [MAJOR MINOR]

功能

创建块设备或字符设备文件。

类型

可执行文件(/usr/bin/mknod),属于 coreutils

参数

  • OPTION 选项:
    • -m, --mode=MODE - 设置文件的访问权限;默认为 a=rw - umask
    • -Z - 将 SELinux 安全上下文设为默认类型
    • --context[=CTX] - 将 SELinux 安全上下文设为 CTX
    • --help - 显示帮助
    • --version - 显示版本
  • NAME - 文件名
  • TYPE - 类型:
    • b - 块设备(有缓冲)
    • c - 字符设备(无缓冲)
    • u - 字符设备(无缓冲);同 c
    • p - 命名管道;同 mkfifo
  • MAJOR - 主版本号
  • MINOR - 次版本号

#示例

$ sudo mknod my_block b 1 0 # 创建块设备 brw-r--r-- 1 root root 1, 0 Nov 18 13:18 my_block $ sudo mknod my_char c 1 0 # 创建字符设备 crw-r--r-- 1 root root 1, 0 Nov 18 13:19 my_char

#相关命令

命令说明
touch创建普通文件或刷新访问时间
mkdir创建目录
mkfifo创建命名管道
mktemp创建临时文件或目录

#推荐阅读

#手册

MKNOD(1) User Commands MKNOD(1) NAME mknod - make block or character special files SYNOPSIS mknod [OPTION]... NAME TYPE [MAJOR MINOR] DESCRIPTION Create the special file NAME of the given TYPE. Mandatory arguments to long options are mandatory for short options too. -m, --mode=MODE set file permission bits to MODE, not a=rw - umask -Z set the SELinux security context to default type --context[=CTX] like -Z, or if CTX is specified then set the SELinux or SMACK security context to CTX --help display this help and exit --version output version information and exit Both MAJOR and MINOR must be specified when TYPE is b, c, or u, and they must be omitted when TYPE is p. If MAJOR or MINOR begins with 0x or 0X, it is interpreted as hexadecimal; otherwise, if it begins with 0, as octal; otherwise, as decimal. TYPE may be: b create a block (buffered) special file c, u create a character (unbuffered) special file p create a FIFO NOTE: your shell may have its own version of mknod, which usually su‐ persedes the version described here. Please refer to your shell's doc‐ umentation for details about the options it supports. AUTHOR Written by David MacKenzie. REPORTING BUGS GNU coreutils online help: <https://www.gnu.org/software/coreutils/> Report any translation bugs to <https://translationproject.org/team/> COPYRIGHT Copyright © 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. SEE ALSO mknod(2) Full documentation <https://www.gnu.org/software/coreutils/mknod> or available locally via: info '(coreutils) mknod invocation' GNU coreutils 9.4 April 2024 MKNOD(1)

创建于 2025/11/18

更新于 2025/11/18