【发布时间】:2012-01-26 20:31:11
【问题描述】:
我想将使用 cygwin(在 windows xp 上运行)创建的字符设备文件传输到 Linux 机器。我无法让它工作。
在 cygwin 中使用 mknod 命令,我得到一个名为 test 的文件,其权限如下:
crw-r--r--
C 表示“字符文件”。
在 Linux (Red Hat 5) 上无法识别该文件。相反,文件名为 test.lnk,权限如下:
-r-xr-xr-x
所以我的问题 - 这可能吗?
更多详情:
我认为添加我的任务可能是值得的。我的任务:使用 Windows 机器解压 Linux OS tarball,然后使用 NFS 将其上传到 Linux 服务器。 tarball 包含无法正确传输的“字符设备”文件。
【问题讨论】:
-
我认为cygwin对你的NFS客户端软件一无所知,你的NFS客户端软件可能不支持Win32不理解的字符文件。无论如何,这不是一个编程问题。
-
字符设备文件,顾名思义,就是指设备。一个常见的例子是
/dev/null。在 tarball 中包含字符设备文件几乎可以肯定是没有意义的。即使在创建它们的系统上也不清楚它们是否会正确解包。你能找出为什么字符设备文件首先包含在 tarball 中吗? -
Ben Voigt - 你说得对,这不是一个真正的编程问题。当我在从 C# 程序调用时对 VB 和 BATCH 脚本进行编程以解压缩到 NFS 挂载点时,出现了这个问题。 NFS 客户端和服务器会说话,cygwin 可以看到已安装的驱动器。发布这个问题的更好的地方是? @Keith - 字符设备位于压缩包中,因为压缩包代表整个 Linux 操作系统。我可以在创建它们的系统上正确解压字符文件(Linux 操作系统)谢谢。
标签: linux cygwin device character nfs