Является ли хорошей идеей использовать сжатую файловую систему NTFS на внешнем жестком диске?

10

Я думаю об использовании сжатой NTFS на моем внешнем жестком диске USB. Следует использовать только для резервного копирования.

  • Возможно ли получить к нему доступ из Linux?
  • Это надежно?
  • По словам Microsoft, это медленнее, чем обычная файловая система. Учитывая скорость передачи (30 МБ / с) и процессор (2,8 ГГц Phenom II X4), я думаю, что может быть и обратное. Что вы думаете?
  • По этому вопросу не все файлы сжимаются. Как я могу избежать этого?
maaartinus
источник

Ответы:

6

1) Да, к нему можно получить доступ из Liunx. Как объяснили другие, ntfs-3g способен обрабатывать сжатые ntfs.

2) надежность: сжатие в ntfs уже давно (начиная с Windows NT, см. Http://www.ntfs.com/ntfs-compressed.htm ). Я не вижу никаких проблем с надежностью на окнах. Я не уверен в реализации не-Windows (например, Linux). Если ваша единственная задача - чтение данных в linux, это не представляет проблемы с надежностью (монтирование только для чтения - хорошая идея при восстановлении резервных копий в любом случае).

Также данные сжимаются на уровне кластера, который обычно составляет 4 КБ. Физическое повреждение диска затрагивает только отдельные кластеры, а не целые файлы. В этом отношении сжатые ntfs должны быть такими же надежными, как и несжатые.

3) Производительность. В статье базы знаний, на которую вы ссылаетесь, говорится, что производительность может зависеть от серверной системы, где ЦП уже загружен. В настольной системе с текущим ЦП, который вы описываете, использование сжатых файлов ntfs для резервного копирования не должно оказывать существенного влияния на производительность. Напротив, если вы храните сжимаемые данные, вы можете фактически повысить производительность, поскольку у вас меньше операций ввода-вывода. Это особенно верно, если интерфейс (USB 2.0) медленный по сравнению с процессором. Я предполагаю, что ваш процессор должен легко уметь насыщать запись USB 2.0 или читать сжатые файлы NTFS.

4) Если вы установите флаг сжатия для всей файловой системы, у вас не должно возникнуть проблем с несжатыми перемещенными файлами.

Georg
источник
4
NTFS никогда не передает сжатые файлы ни в Windows, ни в драйвере Linux. К сожалению, такой оптимизации не существует. Чтобы достичь этого, вам нужно пойти на крайне низкий уровень: создать файл и метаданные, предварительно выделить место, а затем записать сжатые данные в MFT и выделенные кластеры. Таким образом, при нормальном использовании вы ничего не получите от ввода / вывода.
SilverbackNet
1
  1. Я думаю, что это доступно из Linux, но я не уверен.

  2. Надежный в каком смысле? Ваши данные легче испортить, но я не уверен, что вы это имеете в виду.

  3. Это медленнее процессора, но быстрее ввода-вывода. Если ваш процессор намного быстрее вашего диска, то, возможно, стоило бы прочитать меньше данных, но выполнить некоторую обработку, вместо того, чтобы читать огромные файлы, но избегать постобработки.

  4. Этого нельзя избежать, это зависит от того, как были запрограммированы приложения. Я помню, что видел настройки в Windows, которые должны были что-то с этим делать, но я не думаю, что это делает то, что вам нужно - я обновлю это, если выяснится, что это так.

user541686
источник
Объявление 2: Я имею в виду, если в файловой системе нет ошибок или нет. Объявление 4: На самом деле я собираюсь скопировать файлы с другого несжатого диска, вероятно, с помощью rsync. Я действительно не понимаю, почему приложение должно заботиться о внутренностях файловой системы, IMHO, это работа FS, чтобы сделать всю работу.
Maaartinus
К пункту 1 -> NTFS можно получить доступ @Mehrdad
Сатьяджит Бхат
1
@maartinus: # 2: У меня нет точных данных по этому вопросу, но лично я бы доверял версии Windows, но не версии Linux. # 4: Это просто вопрос сохранения настроек по умолчанию, а не забота о приложении. Когда файл размером 2 ГБ перемещается из несжатой папки в сжатую папку, у файловой системы нет причин тратить много времени на ее сжатие - она ​​просто оставляет ее несжатой, поэтому возникает проблема. Я не думаю, что вы многое можете с этим поделать. @ Сатья: Ах, спасибо.
user541686
Я предполагаю, что этот оставленный файл несжатый происходит только тогда, когда файлы перемещаются с несжатой части того же диска, что не будет иметь место. Так что все в порядке.
Maaartinus
1
  1. В ntfs-3gподдерживает драйвер чтение, добавление и ( в последнее время ) изменения сжатых файлов.

    В настоящее время чтение сжатых файлов поддерживается всеми версиями ntfs-3g. Создание новых сжатых файлов, очистка содержимого и добавление данных в существующие сжатые файлы поддерживаются начиная с ntfs-3g-2009.11.14. Модификация существующих сжатых файлов путем перезаписи существующих данных (или существующих дыр) поддерживается начиная с ntfs-3g-2010.8.8.

    - NTFS-3G Advanced: сжатие данных

  2. Файловая система так же надежна, как и ее обычные аналоги в Linux, ext3 / ext4.

    ntfs-3gРучки водителя все очень хорошо. (У него могут быть некоторые ошибки при изменении сжатых файлов; как сказано в приведенной выше цитате, он был добавлен только в версии 2010.8.8.)

  3. (нет ответа)

  4. Когда это вызвано тем, что программы создают несжатый файл в другом месте и позже перемещают его в его предполагаемое местоположение, обходной путь прост: снова включите сжатие этих файлов.

user1686
источник
ntfs-3g -V: 2013.1.13AR.1Начиная с Ubuntu 14.10, ядро ​​3.16, я все еще не могу поручиться за способность ntfs-3g даже правильно читать сжатые файлы в моем разделе Win8 GPT. Даже копирование файла приводит к другой сумме md5.
Маркос