问题...
我的 USB 端口上的外部硬盘被列为设备,/dev/sdc
并且该驱动器的第 1 个分区/dev/sdc1
安装在 上/media/mark/Seagate Expansion Drive
。
问题在于空格,我无法向驱动器写入任何内容,从而导致错误。
我需要能够使用cat
或dd
通过管道传输到 zip(优先考虑)并将压缩文件存储在 上/media/mark/Seagate Expansion Drive
。
关于访问驱动器的其他方法的建议,我曾尝试更改驱动器标签,但会导致警告并且不会改变。
答案1
正确、最佳的解决方案是更改磁盘标签。我的某些磁盘也出现了问题,需要在 Windows 中执行此操作(grrrr)。
两种解决方案:
学习正确引用文件名:
ls "/media/mark/Seagate Expansion Drive/"
(注意
"
)将起作用。另请参阅http://www.linuxjournal.com/content/bash-quoting或者http://www.hypexr.org/bash_tutorial.php#spaces,是的,文件名中的空格是有害的。例如,要写入磁盘中的文件,您需要使用
dd if=something of="/media/mark/Seagate Expansion Drive/file.out"
或任何你正在使用的东西。
创建符号链接
ln -s "/media/mark/Seagate Expansion Drive/" /media/mark/mydisk
然后立即使用
/media/mark/mydisk
。99% 的情况下都可以正常工作...只要注意不要在未安装磁盘时使用它。
什么才不是工作正在尝试使用以下命令重命名挂载点mv
:
sudo mv "/media/mark/Seagate Expansion Drive/" /media/mark/mydisk
mv: cannot move ‘/media/mark/Seagate Expansion Drive/’ to ‘/media/mark/mydisk’: Device or resource busy
因为挂载点语义与普通目录完全不同。