首页 > 代码库 > 安全移除驱动器、弹出、卸载的区别及具体查看设备的执行前后的异同
安全移除驱动器、弹出、卸载的区别及具体查看设备的执行前后的异同
/*********************************************************************
* Author : Samson
* Date : 10/21/2014
* Test platform:
* Mint 16
* GNU bash, version 4.2.45
* *******************************************************************/
卸载(umount)
只是解除挂载,可以直接重新挂载,
简单来说,在软件上把访问设备中存储介质的链接去掉了,
一般来说,此时拔掉设备对其中的数据是安全的,
因为数据读写在卸载的时候已经终止,缓冲内容会写入介质.
用于稍后还会继续使用该介质,重新挂载即可(mount).
弹出(eject)
“移除”驱动器中的存储介质,与驱动器中的介质断开联系,
因为其中的存储介质没有了,故不能重新挂载.
相对于光驱来说,就是把盘片拿出来,但是光驱设备还是看得到的,
弹出时会执行卸载再断开联系,故数据是安全的.
用于稍后会更换其他介质,需重新插入介质.
对于优盘类介质内置的设备,需拔出重新接入.
安全移除驱动器(Safely Remove Drive)
断掉设备电源,移除设备需要重新插入设备,
对光驱来说,就是连光驱电源都断掉了.
安全移除驱动器时会执行卸载再切断驱动器电源,故数据是安全的.
用于不再使用该介质及驱动器,再次使用需重新接入驱动器.
以上的说法来自网络:
http://blog.chinaunix.net/uid-14735472-id-3770635.html
而这样的解释还是不是非常清楚,那么我们就来看看在实际系统中的情况:
按以上的说法,安全移除驱动器,是相当于直接断掉电源,那么也就是说使用命令进行查看设备应该是不能够查看到的了,这里实验以U盘为例,U盘在以下的表示为包含Kingston Technology的行:
在进行安全移除前:
ufo@UFO:~$ lsusb
Bus 001 Device 004: ID 0951:1666 Kingston Technology
Bus 004 Device 002: ID 04b3:310d IBM Corp.
Bus 004 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
在进行安全移除后:
ufo@UFO:~$ lsusb
Bus 004 Device 002: ID 04b3:310d IBM Corp.
Bus 004 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
是不是没有包含Kingston Technology的行了。
弹出前:
ufo@UFO:~$ mount
……
gvfsd-fuse on /run/user/ufo/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=ufo)
/dev/sdb4 on /media/ufo/ufo type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)
弹出后:
……
gvfsd-fuse on /run/user/ufo/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=ufo)
因为U盘在/dev下表示的是第二个硬盘,所以按照以上的说法,那么/dev/sdb在此时也应该是存在的,使用命令进行查看如下:
ufo@UFO:~$ ls /dev/sd
sda sda1 sda2 sda5 sdb
lsusb也还存在Kingston Technology的行:
ufo@UFO:~$ lsusb
Bus 001 Device 005: ID 0951:1666 Kingston Technology
Bus 004 Device 002: ID 04b3:310d IBM Corp.
Bus 004 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
卸载前:
ufo@UFO:~$ mount
……
gvfsd-fuse on /run/user/ufo/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=ufo)
/dev/sdb4 on /media/ufo/ufo type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)
卸载后:
……
gvfsd-fuse on /run/user/ufo/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=ufo)
注意看这里了,这就是umount和eject之间最大区别了,包括U盘的分区都还是存在的。/dev/sdb4是sdb的一个分区;而在eject后就没有这个分区能够看到了,只能看到整个盘还存在信息。
ufo@UFO:~$ ls /dev/sd
sda sda1 sda2 sda5 sdb sdb4
ufo@UFO:~$ lsusb
Bus 001 Device 006: ID 0951:1666 Kingston Technology
Bus 004 Device 002: ID 04b3:310d IBM Corp.
Bus 004 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
安全移除驱动器、弹出、卸载的区别及具体查看设备的执行前后的异同
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。