致编辑的信
在“块设备驱动程序简介”(第 9 期,1 月)中,您写道
“...即使它包含与磁盘相同的信息,您也无法挂载磁带”。
我希望您知道,半英寸磁带驱动器具有所有功能,允许以标准方式写入的半英寸磁带以只读方式挂载,并且(如果磁带质量允许)在格式化后将磁带用作功能齐全的随机存取读/写介质。
我相信我引用的这句话是为了简化事情而写的,而不是因为缺乏知识。
此外,我还有一个与主题相关的问题。为什么 Linux 中没有原始磁盘设备,不像 BSD 和 SVR3 那样(我不确定 SVR4)?是因为缓冲以更正确的方式实现,以便能够在块设备上执行 fsck,然后立即挂载它,还是因为其他原因?此致,Leo Broukhis leo@zycad.com
我可能不够明确。我的声明并非意在说明硬件功能。 Linux 内核没有任何形式的磁带的块设备驱动程序,因此,即使硬件支持,也无法将它们作为文件系统挂载。
没有原始设备的原因是 VFS 的实现方式使得块设备的打开(即使它确实缓冲)是立即的。请参阅 block_read() 和 block_write() 并注意它们不用于在挂载的设备上读取和写入块,而仅用于打开的设备。
我发现 remove 这篇文章很有趣(在1995 年 1 月中)。 remove 别名需要更通用。它只处理一个文件:你需要做类似的事情
alias rm='mv $* ~/.rm'
实际上,最好在 GNU fileutils 中使用 -b(备份)选项并执行
alias rm='mv -b $* ~/.mv'
并默认为编号备份。然后,如果您在两个不同的目录中删除 foo.c,您将获得类似这样的条目
foo.c foo.c.~1~
因此,您可以通过一些工作来恢复每一个。
我还发现您的 .profile 中的 /bin/rm -r ~/.rm 非常糟糕。
您经常发现您想在注销后检查某些内容,因此如果您登录,您会自动立即擦除您的备份。使用 cron 会更好。
此外,我还没有使用它,但我尝试使用 MIT Athena delete/undelete 系统(发布到 comp.source.misc,v17)。这可能值得一试。您还应该回顾一下。Marty Leisner leisner@sdsp.mc.xerox.com