我试图做一些棘手的事情,我想从管道流将目录结构刻录到CD上。原因是它来自网络,我不希望它写在cd烧录机的硬盘上。
我不确定如何(或者如果可能的话)将焦油的输出(例如)输送到genisoimage或mkisofs。我注意到option映像中有一个流选项,但是当我尝试做
tar -cvf - /home/myuser | genisoimage --stream-media-size 200 -o test.iso我只得到了一个test.iso,它包含一个stream.img (在genisoimage(1)中指定),它本身就是最初的tar存档。这是不行的,它需要是裁谈会上的目录结构。
我知道cdrskin (用于燃烧的cli工具)可以从stdin获取数据并将其烧掉。
那么,我如何将数据导入genisoimage,它是否为ISO创建了该数据的目录结构,然后将该数据输送回cdrskin进行燃烧?我还知道genisoimage默认将iso数据输送到stdout,所以我唯一的问题似乎是获取一个目录结构流,并将该目录结构保存在ISO数据中。
这篇文章上的标签很糟糕,因为我找不到天才图像,甚至连stdin都找不到。
编辑:这不是关于数据安全,而是缺乏磁盘空间。我不在乎数据是否被缓冲在HDD上,但我不能写完整的ISO。当然,genisoimage只是一个建议,我对创建ISO数据的任何其他方法都持开放态度。作为您的信息,它是为蓝光光盘。
发布于 2011-10-28 09:19:25
我猜您之所以不只是指定磁盘上的目录,是因为您正在网络上传输这个目录。我还假设您正在使用ssh,所以我的问题是:为什么不使用sshfs呢?
发布于 2011-10-28 09:02:45
我不想把它写在cd刻录机的硬盘上。
要阻止这一切几乎是不可能的。甚至stdio管道也可以写入磁盘。即使您完全避免使用管道(例如,通过编写共享内存段),它仍然可能会被分页。
在没有任何缓冲的情况下,即使网络速度快、写速度慢,也可能会遇到超支/不足的问题。
只需复制文件,然后将其分解--或在缓冲区文件系统上/在源/上使用加密。
https://unix.stackexchange.com/questions/23453
复制相似问题