|
Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 7 » Доступ - compact vdisk из diskpart.exe не сжимает диски vhd |
|
Доступ - compact vdisk из diskpart.exe не сжимает диски vhd
|
Новый участник Сообщения: 4 |
Команда compact vdisk в diskpart не работает. Точнее говоря, она делает вид что работает и даже выдает обнадеживающие сообщения но не сжимает вообще.
Перед попыткой сжатия я сделал дефрагментацию и оптимизацию диска (для удаления дыр между блоками) с помощью ausdiskdefragportable.exe, far дает объем папок на диске - 3 гб, файл vhd имеет 9 гб (всего динамический диск на 1Тб), после сжатия compact vdisk - размер тот же - 9 гб, тогда я сделал новый vhd диск на 1 Тб, его размер сразу после форматирования - 80 Мб, и переместил туда все 3 Гб файлов, после этого размер его стал 6 Гб, а попытка сжатия полностью пустого старого диска через compact vdisk привела к тому, что размер файла пустого диска стал не 9 Гб, а 8.9 Гб. Вопросы: 1 - как оптимально уменьшить размер vhd файла, чтобы его объем не был в 2 раза больше чем объем файлов на нем? 2 - правильно ли я понимаю что diskpart.exe compact vdisk имеет грубый дефект (сжимает пустой диск с размером vhd-файла на 9 Гб на 1%)? |
|
Отправлено: 16:28, 10-02-2011 |
Модератор Сообщения: 16848
|
Профиль | Сайт | Отправить PM | Цитировать kuku1, читаем: DiskPart.exe and managing Virtual Hard Disks (VHDs) in Windows 7 - GES on Windows 7 - Site Home - MSDN Blogs
Цитата:
|
|
------- Отправлено: 01:06, 11-02-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Разумеется диск динамический и разумеется что он отключен.
Программа VhdResizer версии 1.0.42.0 имеет дату 18.06.2007. Ничего удивительного что она сейчас вообще не работает с форматом vhd. Она выдает сообщение: "Invalid Vhd file, please select another". Тем не менее с этим vhd файлом прекрасно работает win7 и diskpart.exe, только не сжимает. Кстати, довольно глупо публиковать статьи восхваляющие неработающие утилиты четырехлетней давности. Что там такое намудрила Микрософт с форматом vhd, что файл контейнера занимает в два(!) раза больше места чем объем файлов в нем, а естественная функция уменьшения размера файла контейнера просто не работает. Это ведь какая-то дикость! Вообще хотелось бы чтобы контейнер прозрачно сжимал файлы с выбором степени сжатия, как во всяких акронисах и чтобы функция автоматической дефрагментации и, главное, оптимизации была, а тут такой позор для Микрософт, если я не ошибаюсь. |
Отправлено: 10:03, 11-02-2011 | #3 |
Модератор Сообщения: 16848
|
Профиль | Сайт | Отправить PM | Цитировать kuku1, не нужно так строго относиться к своим "хотелкам" (не сочтите за обиду
![]() Справка по compact vdisk говорит о попытке сжатия без гарантии результата. Не проще создать новый VHD файл нужного размера, поместить на него свои файлы и успокоиться? |
------- Отправлено: 22:27, 11-02-2011 | #4 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Хотелки хотятся, но все что я пишу - это надеюсь полезный кому-то негативный отчет.
В отличие от бесполезных статей, пересказывающих документацию. Да, конечно, после того как я понял, что compact vdisk не сжимает (а почему? дефект формата, дефект алгоритма? нет нужной утилиты? кстати, Парагон программа по виртуализации P2V делает все что угодно кроме сжатия) я сделал новый вхд-диск и переместил туда все файлы со старого. Он тут же стал по объему в 2 раза больше чем объем файлов (6 Гб против 3 Гб). Самое интересное, что полностью пустой вхд-диск совсем без файлов по прежнему имеет размер 9 Гб. Интересно также, что Парагоновская утилита при попытке монтирования показывает его объем как 380 Мб. Вообще мне нравится формат vhd - он легко поддерживается в win7 и Virtualbox и я могу легко представить что через там 20-50 лет на новых компах будут запускаться ВМ с сегодняшними дисками, но для этого размер vhd-файлов должен быть оптимизирован, тут важен каждый процент накладных расходов, а тут траты непонятно на что по 100-200%. В конце концов я могу держать файлы в rar-архивах внутри vhd-контейнера, но для этого он должен быть эффективным (по критерию размер vhd-файла/суммарный размер всех файлов внутри), но он как-то экстремально неэффективен, почему? |
|
Отправлено: 10:02, 12-02-2011 | #5 |
Модератор Сообщения: 16848
|
Профиль | Сайт | Отправить PM | Цитировать kuku1, а файловая система - NTFS? Забыли, что MFT занимает место.
|
------- Отправлено: 20:39, 12-02-2011 | #6 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Все и всегда NTFS. Сколько бы там чего в этом vhd ни занимало, это не должно быть иметь размер пару гигов.
В итоге я пришел к следующему, может кому будет полезно. Формат vhd удобный, но сильно неоптимальный мягко говоря. Приходится делать костыль в виде архивации vhd-дисков в rar файлы. Архиватор это продвинутый, развивается, позволяет выбирать файлы по дате (например за прошедший день), делать солид-архивы, хранить версии и имеет продвинутые экспериментальные настройки супер-архивации. В общем, можно сказать что лучше rar сжать нельзя. Я использую для сжатия диска такой бат-файл: "C:\Program Files\WinRAR\rar.exe" u -r -as -ep2 -ibck -m5 -dh -ms -ri1 -ver5 -ed -x%1:\*RECYCLE*\* %1.rar %1:\ > %1.log Обновление файлов в готовом архиве занимает пару минут и слабо нагружает процессор. Размер файла меньше размера диска в 2-10 раз. Памяти сейчас много, ядер процессора тоже и почему не сжимать диски vhd разумно-фоново я не понимаю. Может Рошал и напишет когда-нибудь нахлобучку чтобы она эмулировала vhd-диска на rar-архивах, но это получится тогда какой-то Acronis. |
Отправлено: 11:11, 17-03-2011 | #7 |
Новый участник Сообщения: 1
|
Профиль | Отправить PM | Цитировать Мужики, сам долго искал, упрощу кому то жизнь, в ру-нете ответа не нашел)) но все же нашел:
В общем процедура такая: Сжатие VHD Скачиваем SDelete v1.61, http://technet.microsoft.com/ru-ru/s.../bb897443.aspx Запускаем: sdelete.exe -z V: [где V: уже подключенный виртуальный диск VHD] Потом уже рекомендованными везде командами, которые все таки сжимают в конце концов диск ![]() diskpart select vdisk file="d:\VHD\d1.vhd" [d:\VHD\d1.vhd - путь к тому же образу виртуального диска] compact vdisk PS кстати если кому надо, автоподключение виртуального VHD диска при загрузке: Создаем Файл attach.cmd: diskpart -s "D:\VHD\attachvhd.s" создаем Файл attachVHD.s: select vdisk file="D:\VHD\games.vhd" attach vdisk attach.cmd в планировщик при старте системы. - Выполнять вне зависимости от регистрации пользователя ОБЯЗАТЕЛЬНО!!! Все. До появления пользователя у клавиатуры диск уже доступен по сети. |
Отправлено: 03:04, 06-02-2013 | #8 |
Новый участник Сообщения: 49
|
Профиль | Отправить PM | Цитировать Ребят, уже всю голову сломал. Спрошу тут, чтоб не плодить темы.
Вот у меня есть два динамических VHD файла (бэкапы системы с разницей в месяц например). Можно ли на основе второго сделать дифферинциальный VHD, чтоб там были только изменения относительно первого архива? |
Отправлено: 18:20, 03-11-2013 | #9 |
Новый участник Сообщения: 1
|
Профиль | Отправить PM | Цитировать Делал на 8.1. Не знаю, сработает ли на 7.
1. Подключаем диск. 2. Пытаемся сжать, чтобы узнать доступный размер сжатия. Покажет окно, где "размер сжимаемого пространства" = максимально возможное сжатие. Например - 5658Мб 3. Пробуем согласиться с этим размером. В 98% результат будет отрицательный ![]() 4. Запускаем cmd. 5. diskpart 6. select volume D (буква на которую подключен том) 7. shrink desired=1000 (пытаемся ужать том на 1Гб) 8. если повезет, то ужмется. но скорее всего скажет, что "не шмогла" 9. еще раз эту же команду. может ужмет, может нет ![]() 10. Если место есть, а не шринкает, то дефрагментацию запускаем. Лучше с графическим интерфейсом - чтобы видеть где файлы разбросаны. И как они замапятся после дефрагментации. Очень хорошо, если дефрагментатор все подожмет в начало диска. Я использую Auslogick Disk Defrag. Для деврагментации может понадобиться дополнительное место - расширьте диск на 10%. После дефрагментации - опять шринкаем до максимума 10. После этого отсоединяем диск. 11. Дальше так: select vdisk file="d:\VHD\d1.vhd" [d:\VHD\d1.vhd - путь к тому же образу виртуального диска] attach vdisk readonly compact vdisk |
Отправлено: 19:22, 20-10-2015 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Общее - Windows PE, diskpart | rusvid | Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista | 1 | 16-01-2011 12:12 | |
Установка - Diskpart - не форматируется жесткий диск | zavorot_kostey | Microsoft Windows 7 | 11 | 10-10-2010 21:13 | |
Загрузка - [решено] Как работать с Diskpart при загрузке в консоль восстановления Windows XP | okshef | Microsoft Windows 2000/XP | 2 | 04-03-2010 23:03 | |
Гибкие оптические диски VCDHD (Versatile compact disc high density) | Greyman | Новости железа | 3 | 11-08-2006 16:25 |
|