Сжать файлы в непрерывную область на диске

Сжать файлы в непрерывную область на диске

Рассмотрим следующий случай: на диске хранятся два очень больших файла, один за другим, первый немного меньше второго. Насколько мне известно (и, пожалуйста, поправьте меня, если я ошибаюсь), если я удалю первый, дефрагментация диска НЕ ​​переместит второй туда, где был первый. Есть ли способ заставить дефрагментатор сделать это?

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

Пожалуйста, не используйте сторонние инструменты.

решение1

Прежде всего, вы никогда не сможете расположить файлы идеально рядом друг с другом. Могу я спросить, зачем вам это?

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

Но единственный реалистичный способ сделать это — перетасовать файлы и заставить систему не иметь другого выбора, кроме как перезаписать файлы (в целом, это требует больших усилий).

решение2

Вы не сможете заставить дефрагментатор Windows 7 делать именно то, что вам нужно, поэтому вам придется обратиться к сторонним инструментам.

Однако почему вас так беспокоит небольшая фрагментация? Фрагментация — это нормально, и ее небольшое количество не приведет к существенной потере производительности.

Связанный контент