devfs和sysfs到底有什么区别?两者似乎都维护着一个附加到系统的硬件列表。那么为什么甚至需要 2 个单独的 fs 呢?据我所知,/sys维护了一些“原始”设备列表(如“ser0”)。Udev 作用于这些设备,获取各种信息并应用各种规则将它们呈现为可识别的名称,然后映射到/dev(如“相机”)。这是唯一的原因吗?然后我们将/dev fs 中的相应设备(我们不能从/sys fs 执行此操作)挂载到/media fs 中。
我已经阅读了/dev 和 /sys/class 之间的差异?. 但我无法得到 sys fs 部分,它指出
Sysfs 包含设备的层次结构,因为它们连接到计算机
/sys 中的文件不是设备节点文件吗?那么它们是什么类型的文件呢?
我想从 中获取视频流/dev/video0,应用一些效果或更改并使结果在 上可用/dev/video1。
/dev/video0 ---> 应用效果 ---> /dev/video1
例如,mplayer tv:// -vo caca将/dev/video在 ascii 艺术中显示输出。我想让它可用,/dev/video1以便我可以通过Skype而不是我的默认网络摄像头源发送它....
有什么建议?
我有几个与插入 CD 时发生的情况密切相关的问题。CD上的文件/media/Ubuntu\ 11.04\ i386/,但据我所见/dev/cdrom,也涉及到。
之间有什么区别/dev,
/media和/mnt?以下是我从互联网上找到的,但我仍然一无所知:
/dev— 此文件夹包含设备文件/media— 这是可移动设备的挂载点/mnt— 这是一个临时挂载点
的目的是mount什么?换句话说,如果一个设备已经被操作系统表示为/dev.
mount 是不是只用于存储设备,不用于非存储设备,比如显卡、网卡、摄像头……?
/dev
挂载到、下/media或下
的设备文件在哪里/mnt?我记得我都看过,但很好奇什么时候安装到哪个?
我发现我的 CD 已自动安装到/media/Ubuntu 11.04 i386. 我猜 CD 的设备文件是
/dev/cdrom,但我无法通过查看/dev/cdrom和
确认/media/Ubuntu 11.04 i386:
$ ls -l /media/Ubuntu\ 11.04\ i386/
total 3522
-r--r--r-- 1 Tim Tim 143 2011-04-27 13:04 autorun.inf
...
$ ls -l /dev/cdrw
lrwxrwxrwx …Run Code Online (Sandbox Code Playgroud)$ ls -l /dev/stdin /dev/fd/0
lrwx------ 1 tim tim 64 2011-08-07 09:53 /dev/fd/0 -> /dev/pts/2
lrwxrwxrwx 1 root root 15 2011-08-06 08:14 /dev/stdin -> /proc/self/fd/0
$ ls -l /dev/pts/2 /proc/self/fd/0
crw--w---- 1 tim tty 136, 2 2011-08-07 09:54 /dev/pts/2
lrwx------ 1 tim tim 64 2011-08-07 09:54 /proc/self/fd/0 -> /dev/pts/2
Run Code Online (Sandbox Code Playgroud)
fd的意思是both floppy disk,两者file descriptor,还是各一个?我正在学习 linux 安全性并努力理解为什么带有字符设备的 USB 记忆棒具有潜在危险。
如果我有一个带有 bash 可执行文件的 U 盘,上面有 setuid root,那么危险是显而易见的:如果我有这样的条目,任何拥有这种 U 盘的人都可以在我的计算机上获得 root 权限
/dev/sdb1 /media/usbstick auto defaults 0 0
Run Code Online (Sandbox Code Playgroud)
在我的/etc/fstab因为defaults包括suid.
但是字符设备呢?如果带有字符设备的 U 盘安装了dev或 ,我如何使用字符设备获得 root 权限或破坏内容defaults?
我最近在这里了解了/dev/udp和/dev/tcp伪设备。它们是特定于某些 GNU/Linux 发行版还是我可以在其他 unix 系统上找到它们?
它们是否以某种方式标准化?
到目前为止,我已经能够在 OS X、Arch Linux 和 CentOS 上成功地使用它们。
只是为了好玩:
有没有办法监视/捕获/转储正在写入的内容/dev/null?
在 Debian 或 FreeBSD 上,如果重要的话,也欢迎任何其他特定于操作系统的解决方案。
如何设置位掩码,/dev/zero以便我不仅可以拥有 0x00 的源,还可以拥有 0x01 和 0xFF 之间的任何字节的源?
我大致了解位于/dev 下的文件。
我知道有两种类型(字符/块),访问这些文件与内核中的驱动程序通信。
我想知道如果我删除一个会发生什么——特别是对于这两种类型的文件。如果我删除一个块设备文件,比如说/dev/sda,这有什么影响——如果有的话——有什么影响?我刚刚卸载了磁盘吗?
同样,如果我删除/dev/mouse/mouse0- 会发生什么?鼠标停止工作了吗?它会自动替换自己吗?
我什至可以删除这些文件吗?如果我设置了虚拟机,我会尝试一下。
在试图理解另一个问题时,我遇到了/dev/sda0被提及的情况。
我在 Linux 方面有一些经验,并且习惯了这种方案,其中sda, sdb, \xe2\x80\xa6 是设备sda1, , sda2, \xe2\x80\xa6 , sdb1, sdb2, \xe2\x80\xa6 是分区(每个分区都在各自的设备)。在这个方案中sda0, sdb0, \xe2\x80\xa6 不会出现。我不记得sda0曾经见过。
仍然sda0出现在 U&L SE、超级用户和其他地方。在它出现的地方,它几乎总是第一个分区,即我希望在sda1我习惯的方案中出现的分区。
另一方面,在 Debian 10 中,我可以看到major,minor数字8,1for sda1、8,2forsda2等。因此,如果有人问我sda0可能是什么,我会说8,0哪个已经分配给了sda。这个推理sda0相当于sda整个设备。我猜这些数字是 Linux 特有的,在非 Linux Unix(类似)操作系统中它们可能会有所不同,因此推理可能不适用于那里。
在互联网上我发现很少有sda0 …
devices ×10
mount ×3
udev ×3
block-device ×2
linux ×2
fstab ×1
history ×1
linux-kernel ×1
monitoring ×1
open-files ×1
partition ×1
portability ×1
security ×1
symlink ×1
sysfs ×1
tcp ×1
udp ×1
video ×1