使用Linux中的命令行关闭外部硬盘驱动器,闪存驱动器等的电源


8

我一直认为安全删除已安装的设备是使用umount命令,直到最近我切换到Ubuntu 12.04 LTS时,我才发现可以安全删除引起好奇的设备。

我浏览了许多帖子,发现这umount显然并不意味着我可以安全地删除设备,因为它不会关闭设备电源。我知道有选择eject。现在,这是我在浏览Internet之后的理解。参考资料包括:

然后我遇到了一篇文章,但是发现过程很复杂,我想当我遇到命令时,我终于遇到了udisks麻烦。udisks --unmount /dev/sdb1 && udisks --detach /dev/sdb

使我感到困惑的是(除了umount实际上是否意味着可以安全地删除设备而不会丢失数据,以及是否需要sync在它之前使用该命令以及设备已经关闭电源而可以安全删除的原因),这是为什么呢?我必须使用/dev/sdb后跟--detach而不是/dev/sdb1


Answers:


6

/dev/sdb是整个设备。/dev/sdb1是该设备上的一个分区。

尽管您可以使用磁盘而不对其进行分区,但这是很不寻常的(在RAID设置之外,但是您在RAID设备节点而不是物理设备节点上创建文件系统)。
尝试分离(物理删除)单个分区实际上没有任何意义-您要删除整个设备(可以包含多个分区),而不仅仅是该设备的一个分区。

卸载分区将同步文件系统,因此不需要sync先调用unmount
调用udisks --detach该设备将检查您是否在该设备上挂载了文件系统(您应确保该调用确实成功),并且将执行“有序关闭”,这始终比“拔出插头”方法更好,无论如何该特定设备是否有特殊功能。


我不知道仅/ ​​dev / sdb代表整个设备,而我假定代表所有分区。那是对的吗?所以我可以像udisks --unmount /dev/sdb && udisks --detach /dev/sdb要卸载所有分区一样运行命令?如果存在多个分区,仅卸载一个分区非常有意义。
PeanutsMonkey 2012年

您还如何确保通话udisks --detach成功?
PeanutsMonkey 2012年

不,卸载/dev/sdb将不起作用。您需要卸载每个已安装的分区,并查看/解析命令的输出。
垫子

抱歉,查看或解析命令输出后,您是否不完全理解您的意思?我是否应该卸载每个分区然后运行命令udisks --detach /dev/sdb
PeanutsMonkey 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.