我有一个外部硬盘并使用 TrueCrypt 保存加密文件容器。安装后,每当我尝试卸载文件容器(在 Ubuntu 11.04 上使用 TrueCrypt 7.0a)时,它都不会发生,并且我会收到以下消息:
device-mapper: remove ioctl failed: Device or resource busy
Command failed
此外,如果我关闭 TrueCrypt 然后尝试重新启动它,它会说 TrueCrypt 已在运行,但我无法从 Unity 侧栏访问它(因为它不在那里)。
另外,如果我关闭外部硬盘,TrueCrypt 卷仍显示为已安装的卷之一,但我无法对其执行任何操作。
有什么可能的解决方法吗?我记得这在早期版本的 Ubuntu 中没有发生过,所以我猜这与 11.04 有关。
谢谢
答案1
这看起来确实是 Natty 中的一个问题。有一种解决方法是卸载挂载点(通常是 中的目录/media/
),然后按卸载TrueCrypt 中的按钮。umount 命令的示例(sudo
必需):
sudo umount /media/truecrypt1
经过进一步调查,似乎在 Windows 中创建的 NTFS 格式的容器受到了影响。
file -s
已安装内容的输出:
99MB 卷格式化为 NTFS,导致出现问题:
/dev/mapper/truecrypt1:x86 启动扇区,代码偏移量 0x52,OEM-ID“NTFS”,扇区/簇 8,保留扇区 0,媒体描述符 0xf8,磁头 1,dos < 4.0 BootSector (0x80)
99MB 卷格式化为 FAT,运行良好:
/dev/mapper/truecrypt1:x86 启动扇区,代码偏移量 0x3c,OEM-ID“MSDOS5.0”,扇区/簇 2,保留扇区 36,媒体描述符 0xf8,磁头 1,扇区 204288(卷 > 32 MB),FAT(32 位),扇区/FAT 798,序列号 0xf30d2054,未标记 EXT* 文件系统的输出类似。
答案2
加密容器中的某些文件进程仍处于打开状态。
您提供的信息太少,我们无法为您提供详细的说明。
您应该使用fuser
和lsof
来抓住罪犯。
编辑:
例如,如果您的 TrueCrypt 挂载点是/media/truecrypt1
您应该尝试:
fuser -mv /media/truecrypt1
或者sudo fuser -mv /media/truecrypt1
和
lsof +c0 /media/truecrypt1
或者sudo lsof +c0 /media/truecrypt1
记下有问题的 PID,并尝试以下命令之一终止该进程:
kill PID
kill -9 PID
sudo kill PID
sudo kill -9 PID