character-special-files

cat 与使用 WinSCP 查看和执行从 Windows 上传到 Linux 的包含变音符号的文件
character-special-files

cat 与使用 WinSCP 查看和执行从 Windows 上传到 Linux 的包含变音符号的文件

我有一个DE_CopyOldToNew.sh在 Windows 中创建的文件。然后使用 WinSCP 将文件上传到 Linux。该文件包含一大堆 cp 命令,这些命令将文件复制到新文件夹,并分配新文件名。这些命令包含带有变音符号(例如 Gewährleistungsbürgschaft.当我执行 a 时,cat DE_CopyOldToNew.sh我注意到变音符号以“损坏”的方式显示,例如Gew▒hrleistungsb▒rgschaft。当我执行 aview DE_CopyOldToNew.sh时,变音符号会按应有的方式显示,例如Gewährlei...

Admin

为什么我无法打开在 ext4 分区上创建的字符特殊文件?
character-special-files

为什么我无法打开在 ext4 分区上创建的字符特殊文件?

作为测试,我sudo mknod test c 5 2在“下载”文件夹中执行了此操作,其效果是创建一个类似于/dev/ptmx.然而,cat test给了我No such file or directory。然而,sudo mknod /dev/test c 5 2随后cat /dev/test按预期工作。那么,为什么会有差异呢?我没有单独的主分区,并且我的根目录未安装nodev. 我在 MacOS 上似乎没有这个问题。 ...

Admin

字符设备的 MITM / 代理
character-special-files

字符设备的 MITM / 代理

我有一个字符设备文件,比如说 /dev/X,我想捕获进出 /dev/X 的每个交互。 我正在寻找一种方法来为该文件创建某种 MITM/代理。 编辑: 关于X是什么,它是android上的FM接口。所以/dev/fm是字符设备文件。 最终目标是拦截发送到该文件的任何命令。 ...

Admin

如何防止 /dev/null 文件的权限更改或损坏?
character-special-files

如何防止 /dev/null 文件的权限更改或损坏?

我使用此命令检查 gpg 密码是否有效: gpg -o /dev/null --local-user $KEY_ID -as <(echo 1234) 这是一个被黑的命令,用于检查我发布的 gpg 密码这里。我可以看到 /dev/null 文件权限从 666 更改为 644,有时它会损坏,并且某些脚本无法写入 /dev/null: 我可以通过使用以下命令重新创建 /dev/null 来解决此问题: rm -f /dev/null; mknod -m 666 /dev/null c 1 3 第一个问题是,如何防止 /dev/null 权限更改或运行命...

Admin

进一步阅读
character-special-files

进一步阅读

我一直在读这本书:https://lwn.net/Kernel/LDD3/。在这里,作者区分了 3 种类型的设备文件,即字符设备、块设备和网络设备。在第一章的第六页,我发现了这一点: 字符设备 字符 (char) 设备是一种可以作为字节流(如文件)进行访问的设备;字符驱动程序负责实现此行为。这样的驱动程序通常至少实现open、close、read和write系统调用。文本控制台 ( /dev/console) 和串行端口(/dev/ttyS0以及类似的端口)是字符设备的示例,因为它们可以通过流抽象很好地表示。 Char 设备通过文件系统节点进行访问,例如/...

Admin

当 USB 鼠标插入 Linux PC 时内核会做什么?
character-special-files

当 USB 鼠标插入 Linux PC 时内核会做什么?

我正在尝试编写一个在检测到 USB 鼠标时加载的内核模块。我对这个问题很陌生,我用谷歌搜索了这个问题,但找不到任何合适的解决方案。 谁能解释一下这个流程吗? ...

Admin

设备类型数字的含义是什么?
character-special-files

设备类型数字的含义是什么?

file /dev/*将一堆文件的描述打印为“块特殊(M/N)”和“字符特殊(M/N)”,其中M和N是数字。例如: $ file /dev/null /dev/null: character special (1/3) man file似乎没有记录这些,但模糊地引用了man stat,这似乎将这些称为主要和次要设备类型。apropos 'device type'什么也没找到。那么这些数字意味着什么呢? ...

Admin

哪个类 Unix 系统真正提供了 /dev/tcp 特殊文件?
character-special-files

哪个类 Unix 系统真正提供了 /dev/tcp 特殊文件?

我知道/dev/tcp/<host>/<port>这是一条由重定向中的某些 shell 专门处理的神奇路径。但根据man bash: 如果运行 bash 的操作系统提供了这些特殊文件,bash 将使用它们;否则它将在内部模仿它们[...] 在我现在使用的 Linux 机器上,/dev/tcp特殊文件不存在,因此 Bash 将仿真它。但是,是否真的有一个类 Unix 系统确实提供了/dev/tcp与 Bash 支持的语义相同的特殊文件呢? ...

Admin

通过 ssh 使用字符设备
character-special-files

通过 ssh 使用字符设备

一段时间以来,我一直在寻找这个问题的好答案。 我正在尝试使用 Xbox 控制器远程控制机器人。挑战在于控制器要连接到控制站,而不是机器人的车载计算机。车载计算机运行Ubuntu和ROS(机器人操作系统),需要像直接连接一样访问字符设备。 我正在寻找一种方法来 ssh 进入车载计算机并从控制台转发字符设备事件。需要实时更新。最好的方法是什么?有可能吗? ...

Admin

使用/dev/ramX作为其对应的特殊设备?
character-special-files

使用/dev/ramX作为其对应的特殊设备?

通过ls -l,我发现了一系列设备ram0,例如ram1等。我仔细查看了输出并且(例如) brw------- 1 root root 1, 3 Jan 6 11:34 /dev/ram3 crw-rw-rw- 1 root root 1, 3 Jul 15 1970 /dev/null 嗯,它们仅因设备类型(块和字符)而有所不同。我尝试读取和写入ram3,但令我惊讶的是,我可以从中读取 8 MiB 的零字节块,并且我无法写入超过 8 MiB 的数据,因为我认为在读取和写入时我可以立即收到 EOF可以无限地写入它。 然后我尝试了其他的ram,但更...

Admin

如何从字符设备读取 USB 数据
character-special-files

如何从字符设备读取 USB 数据

我需要编写一个“字符设备”,从 arduino 读取数据并将该数据写入日志文件。我已经搜索这个主题几个小时了,我已经看到了几种实现此目的的方法,但它们不使用字符设备。 我知道这可以简单地使用 USB 设备中的 cat 来完成,但我正在为系统编程课程执行此操作,并且我需要使用字符设备。我发现的最接近的事情是去年的学生完成的类似作业,但他们打开和关闭/dev/ttyACM0文件,如下所示这个答案。 除此之外,还有其他正确的方法可以从字符设备文件中执行此操作吗?或者这是正确的方法吗? ...

Admin

如何写入字符特殊设备?
character-special-files

如何写入字符特殊设备?

由于udev我试图从中抢救数据的机器上的设置损坏(请参阅我的这篇文章)我试图写入与 USB 闪存驱动器相对应的“字符特殊”设备,但遇到了困难。 我期望的是(具有 root 权限)我可以这样做: echo "test 123" > /dev/bus/usb/001/031 但我得到 bash: echo: write error: Invalid argument 这是怎么回事?如何写入字符设备? 聚苯乙烯:这特别有趣,因为我通常期望的块设备(/dev/sdb, 中的东西/dev/block)由于某种原因没有被创建。但我注意到,当我插入 ...

Admin

Linux 上磁盘的字符设备
character-special-files

Linux 上磁盘的字符设备

为什么其他 UNIX 系统需要字符设备作为存储设备,而 Linux 不需要? 其他 UNIX 操作系统(AIX、HPUX、Solaris 和 macOS)使用类似“/dev/rdisk#”和“/dev/disk#”的存储设备。 ...

Admin

创建一个文件,其内容由程序处理
character-special-files

创建一个文件,其内容由程序处理

我想创建一个特殊的文件,其中的内容将在读取时生成,并在写入时进行处理。应该有一个后台进程处理该文件。管道不是首选,因为它不允许双频(同时读/写)。两个命名管道看起来不错,但它们是两个文件而不是一个。我想要的很像字符设备文件或/sys.我怎样才能这样做呢? ...

Admin