Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I would like to know if there is a software solution in Linux for the following situation:

  • Connect a USB disk to a Windows host (could be XP, Vista,7 , etc).
  • Copy a big file to the USB disk.
  • Disconnect the USB device in an unsafe way from Windows
  • Connect the USB device to a Linux host
  • Try to mount the USB device

The result is that the USB disk will not mount in Linux, since it contains an open file.

One way to solve this would be to reconnect the USB disk to Windows and dismount safely and then mount the USB disk to Linux.

Is there a way to solve this problem, using only Linux tools, without involving Windows to close the USB disk properly.

share|improve this question
2  
Did you even try this? Which filesystem is this where not cleanly unmounted filesystems have "open files" left over? Care to give an example of the kind of error message you get when you try to use it under linux? I get the feeling you're asking for a solution for a problem that does not exist. –  njsg Jan 25 '13 at 13:28
    
Also, terminology, if anything, it's the filesystem that needs something to be done, not the USB device. –  njsg Jan 25 '13 at 13:29
    
“the USB disk will not mount in Linux”. Usually, it does. If it doesn't for you, what error message do you get? –  Gilles Jan 25 '13 at 23:30

2 Answers 2

fsck.vfat or fsck.ntfs the filesystem (depending on its type) before mounting. It would have been nice if file managers fsck-ed filesystem if needed before trying to mount but I don't see them doing so.

If something fails to mount, it is because there is a corruption on the filesystem, not because a file was open.

share|improve this answer

I have had the same problem and it is mainly due to Windows and its approach to USB HDD's. I am using Windows XP and a 500 GB Buffalo external USB 2 HDD with a "Turbo USB" software utility. I really do not know how to properly unmount the drive, especially when the "Safely Remove Hardware" notification icon is not listed in the notification panel (bottom right of screen), why this is randomly shown is another mystery awaiting solution; but since disabling the "Windows Indexing" feature things seem to be more consistent.

Now I recently had the cannot mount error when trying out the Linux ZORIN distro the "Linux"error message much more informative that b----y windows is as follows:-

External Hard Disk Error would not mount in Linux Zorin 2/04/2013

Unable to mount 500 GB Filesystem

Error mounting: mount exited with exit code 13:

The disk contains an unclean file system (0, 0).

The file system wasn't safely closed on Windows.

Fixing. ntfs_attr_pread_i: ntfs_pread failed: Input/output error Failed to read NTFS $Bitmap: Input/output error NTFS is either inconsistent, or there is a hardware fault, or it's a SoftRAID/FakeRAID hardware.

In the first case run chkdsk /f on Windows then reboot into Windows twice. The usage of the /f parameter is very important! If the device is a SoftRAID/FakeRAID then first activate it and mount a different device under the /dev/mapper/ directory, (e.g. /dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation for more details.

Since getting this have gone back to the Windows XP computer and eventually after a lot of "trial and error" managed to get the Buffalo drive mounted and able to access the files on it. Can anybody help with advice on what to do next? Thanks John

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.