Input output error ntfs linux

For the past 3 days (after an update) my Debian Jessie refuses to mount NTFS disks. I reinstalled libfuse2 and ntfs-3g, yet I get the same Input/output error I tried the same disks under Windows 7...

For the past 3 days (after an update) my Debian Jessie refuses to mount NTFS disks. I reinstalled libfuse2 and ntfs-3g, yet I get the same Input/output error

I tried the same disks under Windows 7 and OSX Mavericks (using ntfs-3g) and they work fine. I purged ntfs-3g and reinstalled, and still the same problem.

The disks will sometimes mount and sometimes won’t mount. If they do mount, I am sometimes able to go into the mount directory, whereas some other times, I get a bash error Input/output error for the mount directory. The times I am able to go into the mount directory, when I try an ls -l, I see tons of question marks, instead of file/dir attributes.

I have tried ntfsfix and chkdisk under windows, and they both reported no problems, it is only under this Jessie install that all of a sudden I can’t mount them properly.

dmesg has no usefull info other than the external disk being attached:

[12816.210969] scsi 20:0:0:0: Direct-Access     Seagate  External         SG16 PQ: 0 ANSI: 4
[12816.211825] sd 20:0:0:0: Attached scsi generic sg7 type 0
[12816.212542] sd 20:0:0:0: [sdg] 732566642 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[12816.213591] sd 20:0:0:0: [sdg] Write Protect is off
[12816.213595] sd 20:0:0:0: [sdg] Mode Sense: bf 00 00 00
[12816.214782] sd 20:0:0:0: [sdg] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[12816.215561] sd 20:0:0:0: [sdg] 732566642 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[12816.242055]  sdg: sdg1 sdg2
[12816.243244] sd 20:0:0:0: [sdg] 732566642 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[12816.246031] sd 20:0:0:0: [sdg] Attached SCSI disk

parted /dev/sdg 'print'
Model: Seagate External (scsi)
Disk /dev/sdg: 3001GB
Sector size (logical/physical): 4096B/4096B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      258kB   1038GB  1038GB  primary
 2      1038GB  3001GB  1962GB  primary

fdisk -l /dev/sdg
Note: sector size is 4096 (not 512)

Disk /dev/sdg: 3000.6 GB, 3000592965632 bytes
255 heads, 63 sectors/track, 45600 cylinders, total 732566642 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00090a06

   Device Boot      Start         End      Blocks   Id  System
/dev/sdg1              63   253473569  1013894028    7  HPFS/NTFS/exFAT
/dev/sdg2       253473792   732566527  1916370944   83  Linux

mount -t ntfs-3g /dev/sdg1 /media/Downloads
ntfs-3g-mount: failed to access mountpoint /media/Downloads: Input/output error

If I manage to mount it via

mount -t ntfs-3g /dev/sdg1 /media/Downloads

Once I cd into it:

cd media/Downloads 
root@athena:/media/Downloads# ls -l
ls: reading directory .: Input/output error
total 0
root@athena:/media/Downloads#

mount however, says:

/dev/sdf1 on /media/Downloads type fuseblk (rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096)

What did I brake?

EDIT

ntfsinfo -m /dev/sdg1

Volume is scheduled for check.
Please boot into Windows TWICE, or use the 'force' option.
NOTE: If you had not scheduled check and last time accessed this volume
using ntfsmount and shutdown system properly, then init scripts in your
distribution are broken. Please report to your distribution developers
(NOT to us!) that init scripts kill ntfsmount or mount.ntfs-fuse during
shutdown instead of proper umount.
Failed to open '/dev/sdg1'.

EDIT#2

ntfsinfo -fm /dev/sdg1 
WARNING: Dirty volume mount was forced by the 'force' mount option.
Volume Information 
        Name of device: /dev/sdg1
        Device state: 11
        Volume Name: 
        Volume State: 91
        Volume Flags: 0x0001 DIRTY
        Volume Version: 3.1
        Sector Size: 4096
        Cluster Size: 4096
        Index Block Size: 4096
        Volume Size in Clusters: 253473506
MFT Information 
        MFT Record Size: 4096
        MFT Zone Multiplier: 0
        MFT Data Position: 24
        MFT Zone Start: 0
        MFT Zone End: 31684192
        MFT Zone Position: 4
        Current Position in First Data Zone: 31684192
        Current Position in Second Data Zone: 0
        Allocated clusters 145403 (0.1%)
        LCN of Data Attribute for FILE_MFT: 4
        FILE_MFTMirr Size: 4
        LCN of Data Attribute for File_MFTMirr: 126736753
        Size of Attribute Definition Table: 2560
        Number of Attached Extent Inodes: 0
FILE_Bitmap Information 
        FILE_Bitmap MFT Record Number: 6
        State of FILE_Bitmap Inode: 80
        Length of Attribute List: 0
        Number of Attached Extent Inodes: 0
FILE_Bitmap Data Attribute Information
        Decompressed Runlist: not done yet
        Base Inode: 6
        Attribute Types: not done yet
        Attribute Name Length: 0
        Attribute State: 3
        Attribute Allocated Size: 31686656
        Attribute Data Size: 31684192
        Attribute Initialized Size: 31684192
        Attribute Compressed Size: 0
        Compression Block Size: 0
        Compression Block Size Bits: 0
        Compression Block Clusters: 0
        Free Clusters: 199331046 (78.6%)

I will try mounting it under windows in a few hours (I’m running a check on another disk I don’t want to interrupt).

EDIT#3

I went back into windows, and scanned the disks. Windows indeed found problems with one of them, but both were fixed, mountable and browsable.

Yet, under Debian, I still cannot do anything.
I opened Gparted, and interestingly enough, it complains:

Unable to read the contents of this file system!
Because of this some operations may be unavailable.
The cause might be a missing software package.
The following list of software packages is required for ntfs file system support:  ntfsprogs / ntfs-3g.

However,

apt-cache policy ntfs-3g
ntfs-3g:
  Installed: 1:2014.2.15AR.2-1
  Candidate: 1:2014.2.15AR.2-1
  Version table:
 *** 1:2014.2.15AR.2-1 0

!!! So, have I run into some kind of ntfs-3g bug, or is my system now broken???

Главная » Linux » Как исправить ошибку не удалось смонтировать раздел NTFS в Linux

Опубликовано 17.02.2021

В этой инструкции мы покажем, как исправить ошибки “Failed to mount ‘/dev/sdax’: Input/output error, NTFS is either inconsistent, or there is a hardware fault, or it’s a SoftRAID/FakeRAID hardware”.

На этом скриншоте показан пример ошибки NTFS failed to mount.

NTFS – Failed to mount ‘/dev/sdax’: Input/output error

NTFS – Failed to mount ‘/dev/sdax’: Input/output error

Чтобы исправить эту ошибку, вы можете использовать ntfsfix. NTFSFIX это крошечная и полезная утилита, которая исправляет некоторые распространенные проблемы NTFS.

Ntfsfix является частью пакета ntfs-3g (реализация NTFS с открытым исходным кодом) устраняет несколько фундаментальных несоответствий NTFS. Так же сбрасывает файл журнала NTFS и планирует проверку согласованности NTFS для первой загрузки в Windows.

Чтобы запустить его на нашем компьютере, вам необходимо установить пакет ntfs-3g следующим образом.

———— На Debian, Ubuntu И Mint ————
$ sudo apt-get install ntfs-3g

———— На RHEL, CentOS & Fedora ————
$ sudo yum install epel-release
$ sudo yum install ntfs-3g

Как только вы установили пакет ntfs-3g, выполните команду ntfsfix и укажите раздел NTFS, который имеет проблемы.

$ sudo ntfsfix /dev/sda5

Исправление ошибки не удалось смонтировать NTFS

Исправление ошибки не удалось смонтировать NTFS 

Чтобы выполнить скрытый режим, где ntfsfix ничего не будет писать, а только покажет, что было бы сделано, используйте опцию -n или —no-action.

$ sudo ntfsfix -n /dev/sda5

У ntfsfix есть еще один полезный параметр -b или —clear-bad-sectors предназначен он для очистки списка плохих секторов. Эта функция особенно полезна после клонирования старого диска с поврежденными секторами на новый.

$ sudo ntfsfix -b /dev/sda5

Кроме того, ntfsfix поддерживает снятие флага «Volume Dirty«, так что том может быть исправлен и смонтирован. Вы можете вызвать эту функцию параметром -d , Команда показана ниже:

$ sudo ntfsfix-d / dev / sda5

Примечание: ntfsfix может исправить только некоторые ошибки разделов NTFS. Если это не удастся, chkdsk справится лучше. Так же можно установить Windows и использовать chkdsk.

Nftsfixэто полезный инструмент для исправления некоторых распространенных проблем NTFS.

pc-error-logo Ошибка при получении информации о файле «X.txt»: Ошибка ввода/вывода. Неожиданная ошибка: Ошибка при получении информации о файле «X.txt»: Ошибка ввода/вывода

Опишем окружение в котором возникла ошибка ввода/вывода:

  • ОС: Linux совместно с Windows
  • HDD: два диска, на одном Windows XP (далее ДИСК 1), на другом Linux Debian 7.x (далее ДИСК 2)

Каждый диск разбит на два раздела, — на диске с Windows XP два раздела с файловой системой NTFS, на втором диске с Linux Debian 7.x один раздел EXT4, на котором и установлен Linux, а на втором собственно NTFS. Окружением для рабочего стола Linux было выбрано Xfce, файловый менеджер по умолчанию Thunar 1.2.3 (Thunar это быстрый и простой в использовании файловый менеджер для рабочего окружения Xfce.), текстовый редактор gedit.

Ошибка ввода/вывода появилась на ДИСК 2 в разделе с файловой системой NTFS, который монтировался вручную после входа в уч. запись Linux.

Когда именно появилась Ошибка ввода/вывода на NTFS разделе сказать сложно, но предположительно после очередного переключения между ОС. На ДИСК 2 были расположены совместно редактируемые файлы, — т.е. эти фалы (Test.txt один из них) были открыты в текстовом редакторе notepad++ под ОС Windows XP и в текстовом редакторе gedit под Linux Debian 7.x. Перед переключением между ОС каждая ОС переводилась в спящий режим с сохранением запущенных программ и открытых файлов.

Иногда выполнялась перезагрузка ОС Linux Debian 7.x, но ОС Windows XP всегда переводилась в спящий режим, при этом после перезагрузки Linux Debian 7.x восстанавливалась сессия запущенных на момент перезагрузки/выключения программ, в том числе и редактора gedit с совместно редактируемым Test.txt. Потому как раздел NTFS с ДИСК 2 монтировался вручную, то после перезагрузки в gedit был открыт Test.txt с сообщением об ошибке доступа, но после ручного монтирования NTFS раздела редактор gedit предлагал обновить файл по причине его изменения.

Не скажу, как и почему стала появляться Ошибка ввода/вывода, — возможно gedit попутал uid/gid (файловые/индексные дескрипторы) и при сохранении в Master File Table (MFT) прописал не то, не тем и не туда, но вот, что получилось после очередного переключения между ОС при совместном редактировании файлов:

Попытка открыть каталог «/media/SATA2/PROFILE/User/Рабочий стол» в Thunar:

Не удалось открыть папку: «Рабочий стол».
 
Ошибка при получении информации о файле «/media/SATA2/PROFILE/User/Рабочий 
    стол/Test.txt»: Ошибка ввода/вывода.

Остальное содержимое каталога было не доступно для просмотра/редактирования

Попытка сохранить уже открытый в gedit текстовый файл Test.txt:

Не удалось сохранить файл /media/SATA2/PROFILE/Use…бочий стол/Test.txt.
 
Неожиданная ошибка: Ошибка при получении информации о файле «/media/SATA2/ 
    PROFILE/User/Рабочий стол/Test.txt»: Ошибка ввода/вывода

При использовании файлового менеджера NAUTILUS удалось открыть каталог /media/SATA2/PROFILE/User/Рабочий стол и удалить «Test.txt«, но вот создать заново Test.txt или создать «Безымянный документ» и переименовать его в «Test.txt» не удалось:

Не удалось переименовать объект.
 
Не удалось переименовать объект «Безымянный документ» в «Test.txt»: Произошла 
    ошибка при переименовании файла: Ошибка ввода/вывода

Следующий глюк сопутствовал Ошибкам ввода/вывода, но вот при каких условиях возник не припомню (вероятно при нескольких одновременных попытках монтирования):

Не удалось подключить «SATA2».
 
DBus error org.gtk.Private.RemoteVolumeMonitor.Failed: An operation is already 
    pending.

Владелец и права на файл Test.txt не известны:

root@linux:/media/SATA2/PROFILE/User/Рабочий стол# ls -la
ls: невозможно получить доступ к Test.txt: Ошибка ввода/вывода
итого 4415
drwx------ 1 User User   12288 Сен  2 22:21 .
drwx------ 1 User User    8192 Авг 18 07:48 ..
-rw------- 1 User User    1830 Сен  2 11:56 Test_2.txt
-rw------- 1 User User    3722 Сен  2 21:22 Test_3.txt
-????????? ? ?      ?            ?            ? Test.txt

В некоторых манах для лечения предлагалось использовать ntfsfix -b /dev/sdb5, предварительно отмонтировав его, — но проблема не решилась…

В среде Linux на ДИСК 2 были созданы текстовые файлы «Test_2.txt» и «Test_3.txt» и совершено переключение на Windows XP где эти файлы были не доступны даже для просмотра, хотя после перехода обратно в Linux их можно было просматривать и редактировать…

Проблему с косяком в NTFS разделе на ДИСК 2 удалось решить только с помощью стандартного средства проверки дисков входящего в ОС Windows XP в процессе перезагрузки:

CHKDSK is verifyng indexes (stage 2 of 5)
 
    Deleting index entry .Trash-1000 in index $I30 of file 5
    Deleting index entry Test.txt in index $I30 of file 702196
    Deleting index entry Test_2.txt in index $I30 of file 702196
    Deleting index entry Test_3.txt in index $I30 of file 702196

Увидев на экране Deleting index entry … я зразу же понял, что этих файлов нам уже не видать как своих ушей, — разумеется, так и есть.

Вероятно (http://ru.wikipedia.org/wiki/NTFS#Linux) поддержка NTFS в Linux осуществляется при помощи ntfsmount (использующая FUSE), которая позволяет монтировать NTFS-разделы на запись, но с некоторыми ограничениями.

Существует также ещё один способ монтирования NTFS с возможностью чтения/записи, — это Проект NTFS-3G, который по заявлениям является более функциональным и стабильным вариантом (также использующий FUSE) дающий более широкие возможности по созданию/изменению/удалению/перемещению файлов (исключая сжатые и зашифрованные файлы) в файловой системе NTFS. В тоже время тесты показывают, что NTFS-3G не оптимизирован для производительности, а разработчики заявляют, что это связано с обеспечением повышенной надёжности и, что производительность является второстепенной задачей.

Никто не застрахован от возникновения каких-то ошибок на разделах с файловой системой NTFS или же вовсе полного краха таких разделов с необходимостью полного форматирования. Поэтому, при использовании Linux лучше вовсе не использовать NTFS разделов, или же использовать их как можно реже.

Основные причины ошибок ввода/вывода

  • Значит это всё масонский заговор дядюшки Билла… На буржуйских веб-ресурсах бродит информация о том, что стандарт NTFS меняется в каждой новой версии Windows, что вполне предсказуемо, включая сервис-паки и промежуточные патчи. При этом, разумеется, изменения не придаются общественной огласке, а следовательно нет возможности в полной мере обеспечить стабильную работу с NTFS в свободных ОС таких как Linux.
  • Отмечено также, что на разделах NTFS возможно изменение уже существующих файлов с незначительным изменением их размера, но при создании новых файлов или существенного изменения уже существующих может вызвать проблемы и даже «запороть» весь раздел.
  • Проблемы с отображением созданных в Linux на NTFS разделе файлов, а также проблемы с ошибками ввода/вывода, могут возникнуть если на ПК установлено несколько ОС (ака Мультизагрузка, Multi-boot), — Windows vs Linux. Пик ошибок ввода/вывода отмечен когда Windows была переведена в спящий режим, а после очередного включения запущен Linux из-под которого на NTFS разделе создавались/редактировались файлы. Другими словами если мы хотим из-под ОС Linux, в условиях мультизагрузки (Multi-boot), относительно безопасно создавать/редактировать файлы на NTFS разделах совместно используемых обеими ОС, то перед запуском ОС Linux мы должны выполнить полную перезагрузку или остановку ОС Windows, но не в коем случае не переводить Windows в спящий режим!
  • SRT-кэширование (Smart Response Technology) — ещё одна «фича», которая может стать причиной невидимости из-под Windows на NTFS разделах файлов, которые создавались в Linux. Предположительно Linux не поддерживает SRT-кэширование (касается только SSD дисков), которое поддерживает Windows, а значит при создании из-под Linux-а файлов на SSD дисках с активным SRT-кэширование кэш не обновляется и после загрузки Windows файлов не обнаруживается. Предлагается отключить SRT-кэширование для SSD диска.

Тема использования NTFS в Linux является довольно актуальной, требует более подробного изучения и дополнительных экспериментов. О появлении новых багов, в ходе использования NTFS разделов в Linux, и, способов их решения, — будем дописывать в этой же статье…

In this article, we will show how to fix NTFS failed to mount errors such as “Failed to mount ‘/dev/sdax’: Input/output error, NTFS is either inconsistent, or there is a hardware fault, or it’s a SoftRAID/FakeRAID hardware”.

The following screenshot shows an example of an NTFS failed to mount error.

NTFS - Failed to mount ‘/dev/sdax’: Input/output error

NTFS – Failed to mount ‘/dev/sdax’: Input/output error

To fix this error, you can use ntfsfix, a tiny and useful utility that fixes some common NTFS problems. A ntfsfix is part of the ntfs-3g package (an open-source implementation of NTFS) and it repairs several fundamental NTFS inconsistencies, resets the NTFS journal file, and schedules an NTFS consistency check for the first boot into Windows.

To run it on our computer, you need to install the ntfs-3g package as follows.

----------- On Debian, Ubuntu & Mint ----------- 
$ sudo apt-get install ntfs-3g

----------- On RHEL, CentOS & Fedora -----------
$ sudo yum install epel-release
$ sudo yum install ntfs-3g

Once you have the ntfs-3g package installed, run the ntfsfix command, provide the NTFS partition that has issues as an argument as shown.

$ sudo ntfsfix /dev/sda5

Fix NTFS Failed to Mount Error

Fix NTFS Failed to Mount Error

To perform a dry-run where ntfsfix doesn’t write anything but only shows what would have been done, use the -n or --no-action option.

$ sudo ntfsfix -n /dev/sda5

A ntfsfix has another useful switch -b or --clear-bad-sectors for clearing the list of bad sectors. This feature is particularly useful after cloning an old disk with bad sectors to a new disk.

$ sudo ntfsfix -b /dev/sda5

Also, ntfsfix supports clearing the volume dirty flag if the volume can be fixed and mounted. You can invoke this feature bypassing the -d option as shown.

$ sudo ntfsfix -d /dev/sda5

Note: ntfsfix can only repair some NTFS partition errors. If it fails, chkdsk will probably succeed. If you have windows installed, you can also load Windows and run its disk checking program, chkdsk.

A nftsfix is a useful tool for fixing some common NTFS problems. For any questions or comments, reach us via the feedback form below.

Понравилась статья? Поделить с друзьями:
  • Input output error during write on dev sda
  • Input output error during read on dev sdb
  • Input output error during read on dev sda linux
  • Input output error during read on dev mmcblk0
  • Input not supported при запуске компьютера как исправить