Как я должен предотвратить повреждение данных на разделе NTFS, совместно использованном Windows и Linux?

Я взглянул на ntfs3g источник из любопытства.

Кажется, существует функция ntfs_delete(...) определенный в dir.c, который делает удаление.

Это определенно удаляет все удаленные метаданные файла/каталога от структур файловой системы.

С тех пор существует исходный код для собственной версии Microsoft, не доступно, я могу только попытаться высказать образованное предположение, как это выполняет удаление.

Это кажется, что Microsoft только отмечает запись MFT как неиспользованную, так как утилиты восстановления могут восстановить местоположение и название удаленного файла.

4
04.01.2013, 20:09
4 ответа

То, что, вероятно, происходит, не то, что файлы повреждаются, но что Linux прилагает все усилия, чтобы гарантировать, что файлы не повреждаются.

Когда файловая система будет открыта, записанная в и будет закрыта, операционная система (и Windows и Linux) отметит файловую систему, как являющуюся "грязным", например, не правильно закрытая.

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

В некоторых случаях утилиты NTFS-3G просто не отметят файловую систему как "чистую", чтобы гарантировать, что она проверяется Windows при запуске, и избегайте возможного повреждения.

Короче говоря, Ваши аппаратные средства прекрасны, вероятно, хотя не может повредить проверять состояние жесткого диска в любой точке. До фактического обмена данными назад и вперед, я рекомендовал бы метод сетевой системы хранения. Упростят ли локально помещенный в корпус сервер или нажатие данных в облако, с помощью сетевой файловой системы (вероятно, SMB/CIFS для совместимости Windows) проблемы миграции.

4
27.01.2020, 20:48

При помощи FAT (vFAT, скорее всего) файловая система, Вы получаете хорошую производительность и совместимость между обеими операционными системами. Это делает это полезным и удобным для обмена данными между ними, не используя NTFS.

Другой метод должен развернуть устройство NAS, как превосходный NSLU2. Можно заменить встроенное микропрограммное обеспечение неброшенным, который позволяет устанавливать SSH на устройстве. Позже, в Windows, используйте победу-sshfs для "подключения диска" к букве диска Висячих строк; и в Linux используйте fuse/sshfs для монтирования NAS в папке в системе Linux. Таким образом и Windows и Linux могут получить доступ к тем же данным таким же образом (SSH), каждому со своим собственным собственным "стилем", так сказать. Плюс, Вы извлекаете реальную определенную для файловой системы пользу как полномочия, которые работают на обе системы; также NSLU2 обеспечивает дисковую службу репликации, если Вы используете два внешних жестких диска с NSLU2 (или устанавливаете его сами с rsync, возможно). NSLU2 с неброшенным встроенным микропрограммным обеспечением является в основном мини-сервером Linux: сеть, ssh, или независимо от того, что Вам нравится. Таким образом Вы могли использовать это на LAN или WAN. Один недостаток, который я нашел с NSLU2, состоит в том, что он не включается после сбоя питания, таким образом, я сохраняю мой на UPS.

4
27.01.2020, 20:48
  • 1
    Почему Вы предлагаете использовать FAT вместо NTFS? Какое преимущество Вы думаете, что FAT вводит? –  Marco 04.01.2013, 19:42

Иногда это вызвано тем, что Linux использует символы в именах файлов, которые недопустимы в Windows. Например, можно сохранить файл с вопросительным знаком (?) на его имя в Linux (даже в разделе NTFS). Однако Вы не можете открыть его в Windows, и если Вы выполните chkdsk, то Windows удалит файл и помещает его в папку по имени Found.nnn в корне диска с другим именем, которое может стать действительно хитрым для нахождения.

1
27.01.2020, 20:48

Это может быть из-за функции Fast Reboot , включенные по умолчанию в последних окнах, включая Windows 8.

из NTFS-3G. Страница человека:

Более того, функция быстрой перезапуска доступна для последних окон Системы должны быть отключены. Это может быть достигнуто путем выдачи в качестве администратора Команда Windows, которая отключает как Hibernation, так и быстрое перезапуск:

powercfg /h off

Эта страница содержит более подробную информацию об этой функции и скриншотах с инструкциями, как его отключить

Fast Startup - это новая функция, которая Введено в Windows 8 RTM. Это позволяет вашему компьютеру начать быстрее, чем обычно, вытесняя пользовательский сеанс, а затем сохранение части файлов, связанных с системой и драйверы в файл гибернации. Когда вы снова включаете свой компьютер, это возобновляет от Hibernate и снова входит в систему. Другими словами, быстро Функция запуска сочетает в себе классические механизмы отключения с Сервис, так что его можно назвать «гибридным отключением». Гибридное отключение Включено по умолчанию в Windows 8 и его преемнике, Windows 8.1.

Это заставит проблемы не только при двойной бусин для Linux, но и при загрузке DAUL к другой установке Windows.

1
27.01.2020, 20:48

Теги

Похожие вопросы