You are not logged in.
So this all started a few weeks ago (probably after an update). Im unable to mount my external HDD (WDC WD40NDZW-11A8JS1) with 'udisksctl mount -b' despite the fact that 'mount' is doing it without problems.
Its an ntfs volume formatted in windows and I've already tried a few things:
- Mounting in windows -> Works
- running chkdisk in Windows -> no errors
- running ntfsfix & fschk -> no errors
- using a different cable -> doesnt make a difference
- mounting a different ntfs formatted usb stick with udisksctl -> works no problem
- disabling 'ntfs3' kernel module -> Unable to mount any ntfs volumes (kinda dumb but hey ¯\_(ツ)_/¯)
Next I looked at journalctl and found the following:
Error probing device: Error sending ATA command IDENTIFY DEVICE to '/dev/sdb': Unexpected sense data returned:
0000: f0 00 01 00 50 00 01 0a 80 00 00 00 00 1d 00 00 ....P...........
0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
(g-io-error-quark, 0)
Searching around a bit revealed some posts suggesting it might be a bug in udisks2, but I have no way of confirming that. One post said that Western Digital drives are a bit funky in general but it could just be the opinion of one dude on the internet so idk.
Lokking at the SMART data it says that "SMART overall-health self-assessment test result: PASSED" so I dont really know what the problem is.
Would really appreciate some input or if I missed something obvious ~ Thanks in advance✌️
[Solved]
Thanks to Dante777 for providing the answer and everyone helping. The issue is a problem with the ntfs3 kernel driver so forcing the use of the older ntfs driver first fixed the issue.
$ echo "[defaults] ntfs_drivers=ntfs,ntfs3" | sudo tee /etc/udisks2/mount_options.conf
In order to change back to 'ntfs3', either delete the .conf file or reverse the order:
ntfs_drivers=ntfs3,ntfs
Last edited by Sebastian H. (2024-11-24 00:46:48)
Offline
I wouldn't bother this error much; I had it many times in the past; it is still in linux-lts because some commit was not reverted, but not in current linux kernel.
Did you tried to mount this external disk by some graphic file manager, like doublecmd, thunar, nautilus, krusader or gnome-commander?
Last edited by xerxes_ (2024-11-23 16:47:16)
Offline
Tried it through both dolphin and cli (udiskctl), and neither work. But im running the lts kernel. Will try the standard one and see what happens :)
Edit: Switching to the standard linux (and zen for that matter) sadly isn't the solution.
Last edited by Sebastian H. (2024-11-23 19:12:28)
Offline
If it's not b/c of the LTS kernel, what's the output of "mount" after mounting the drive (not using udisks)?
Offline
I faced this issue yesterday, while the wife was trying to attach an ntfs external hd but it wouldn't mount.
At first i thought the volume was dirty, but a "ntfsfix -d /dev/xxx" didn't fix it. (provided by the 'ntfs-3g' package)
By default 'udisks2' (used by Nautilus/Dolphin and other programs) uses the modern 'ntfs3' kernel driver, but for some reason it bugs out.
While manualy mounting the said ntfs volume worked, if i set the '-t ntfs3' flag, it failed to mount.
So, i had to force 'udisks2' to use the older 'ntfs' driver, until the bug has been ironed out.
$ echo "[defaults]
ntfs_drivers=ntfs,ntfs3" | sudo tee /etc/udisks2/mount_options.conf
In order to change back to 'ntfs3', either delete the .conf file or reverse the order:
ntfs_drivers=ntfs3,ntfs
Offline
Thanks! Forcing the use of the older ntfs driver fixed the issue. Guess they just have to figure out whats wrong with the current one o.O
@seth Fyi here's the mount output:
/dev/sdb1 on /mnt type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096)
Thanks again and hope you all have a nice day✌️
Offline
Fyi that's ntfs-3g (as suspecpected)
fuseblk
Make sure the volume isn't dirty (I'd have suspected exactly that, but apparently there's a bug in ntfs3?
Does
mount -t ntfs3 /dev/sdb1 /mnt
yeld any errors?
Offline
Hmm, mounting with ntfs3 says the volume is dirty, but I know for a fact its not. Also since I ran chkdsk, ntfsfix and both normal mounting and mounting with udisksctl (after applying 'ntfs_drivers=ntfs,ntfs3') work without problems, I suspect ntfs3 reads something it shouldn't and freaks out.
Output of 'mount -t ntfs3 /dev/sdb1 /mnt':
mount: /mnt: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.
dmesg(1) may have more information after failed mount system call.
dmesg says the volume is dirty:
[39575.966080] usb 1-2: new high-speed USB device number 10 using xhci_hcd
[39576.095910] usb 1-2: New USB device found, idVendor=1058, idProduct=2627, bcdDevice=40.08
[39576.095914] usb 1-2: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[39576.095915] usb 1-2: Product: My Passport 2627
[39576.095916] usb 1-2: Manufacturer: Western Digital
[39576.095917] usb 1-2: SerialNumber: ~Dont think its necessary to post that here :)~
[39576.099027] usb-storage 1-2:1.0: USB Mass Storage device detected
[39576.099434] scsi host2: usb-storage 1-2:1.0
[39577.164321] scsi 2:0:0:0: Direct-Access WD My Passport 2627 4008 PQ: 0 ANSI: 6
[39577.165673] scsi 2:0:0:1: Enclosure WD SES Device 4008 PQ: 0 ANSI: 6
[39577.173255] ses 2:0:0:1: Attached Enclosure device
[39577.174964] sd 2:0:0:0: [sdb] Spinning up disk...
[39577.175288] ses 2:0:0:1: Wrong diagnostic page; asked for 1 got 8
[39577.175290] ses 2:0:0:1: Failed to get diagnostic page 0x1
[39577.175292] ses 2:0:0:1: Failed to bind enclosure -19
[39578.186121] .....ready
[39582.283365] sd 2:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).
[39582.481777] sd 2:0:0:0: [sdb] 7813969920 512-byte logical blocks: (4.00 TB/3.64 TiB)
[39582.481781] sd 2:0:0:0: [sdb] 4096-byte physical blocks
[39582.482662] sd 2:0:0:0: [sdb] Write Protect is off
[39582.482678] sd 2:0:0:0: [sdb] Mode Sense: 47 00 10 08
[39582.483569] sd 2:0:0:0: [sdb] No Caching mode page found
[39582.483585] sd 2:0:0:0: [sdb] Assuming drive cache: write through
[39582.523994] sdb: sdb1
[39582.524137] sd 2:0:0:0: [sdb] Attached SCSI disk
[39602.477392] ntfs3: sdb1: It is recommened to use chkdsk.
[39602.495841] ntfs3: sdb1: volume is dirty and "force" flag is not set!
Using mount without -t ntfs3 shows nothing in dmesg.
Last edited by Sebastian H. (2024-11-24 21:38:45)
Offline
Do you still get the fusblk mount in the "shows nothing" case? Because you'd still bypass ntfs3. generally speaking if you run ntfsfix without arguments it will actually set the dirty flag. This issue should fix itself if you run a proper chkdsk from Windows, if you want to ntfsfix and tell it to just clear the dirty bit, then you'd use the -d flag.
To be sure sure you're using the correct chkdsk commands use the flags:
chkdsk X: /F /X /B /R
where X: is the letter the disk gets.
Last edited by V1del (2024-11-25 00:39:42)
Offline
but I know for a fact its not. Also since I ran chkdsk
Same system? If you've windows fast start enabled, the filesystem will be left open when windows hibernate-shutdowns, linux will figure it's dirty but when the hibernated windows resumes it'll go by its previously set internal state.
tl;dr: 3rd link below. Mandatory.
Disable it (it's NOT the BIOS setting!) and reboot windows and linux twice for voodo reasons.
Edit: x-ref, https://bbs.archlinux.org/viewtopic.php?id=301270
Last edited by seth (2024-11-26 09:48:46)
Offline