Получить доступ к физическому диску Ext3 в хост-системе Windows для дефрагментации?
Примечание: Развенчание мифа о том, что файловые системы Linux не подвержены фрагментации. http://www.webupd8.org/2010/03/install-defrag-defragmentation.html
Но это распространенное заблуждение ив некоторых случаях вам придется дефрагментировать файловые системы Linux. Это даже [подтверждено разработчиком Ubuntu в совсем недавнем посте][1] Буквально несколько минут назад я наткнулся на ureadahead на форуме Ubuntu.От:Сообщение на форумах Ubuntu:http://ubuntuforums.org/showthread.php?t=1434502
Единственный способ избежать этого — дефрагментация диска.Но файловые системы Linux не нуждаются в дефрагментации!
Тот, кто вам это сказал, глубоко ошибается. Это один из самых распространенных мифов о Linux.
Правда в том, чтоФайловые системы Linux избегают, где это возможно, фрагментации своих таблиц inode. Это означает, что индекс того, как файлы разделены (фрагментированы) на диске и где находятся эти части, имеет тенденцию сохраняться как единое целое.
Это хорошо; фрагментация таблиц инодов является большой проблемой для других файловых систем (FAT в этой файловой системе и т. д.), поэтому, сохраняя их вместе, можно добиться значительного повышения производительности.
Носами данные по-прежнему фрагментированы, ираспределить по всему диску в случайном порядке. И, к сожалению, во время загрузки нам нужны именно эти данные.
Одна из будущих задач, которую мы хотим выполнить, — это использовать анализ ureadahead для передачи данных, необходимых нам во время загрузки, в дефрагментатор, чтобы все необходимое находилось в одном большом блоке на диске.
Что-то вроде противоположности этому:
https://askubuntu.com/questions/59007/defragging-ntfs-partitions-from-linux
- Может быть, через виртуальную машину Linux (Mint и т.п.)?
- Может быть, через подсистему Windows для Linux?
- Какая-то другая подсистема/пакет, которая может работать под Windows и делать это?
Можно ли каким-либо образом получить доступ к физическому диску, чтобы запустить инструмент/утилиту дефрагментации Linux, и все это под управлением ОС Windows Host?
https://en.wikipedia.org/wiki/Ext3#ДефрагментацияХотя ext3 устойчива к фрагментации файлов, ext3 может фрагментироваться со временем или при определенных шаблонах использования, например, при медленной записи больших файлов.[23][24]
решение1
Это возможно, используя виртуальную машину Linux. В этой статье я предполагаю, что вы настроили Linux как виртуальную машину в VirtualBox и знаете, как использовать инструменты дефрагментации Linux.
- Подключите жесткий диск. НЕ НАЖИМАЙТЕ «ФОРМАТИРОВАНИЕ» в появившемся диалоговом окне.
- Нажмите Win + R. И введите
diskmgmt.msc
- Прокрутите вниз в нижней части до вашего диска. Запишите номер диска
- Закройте все открытые окна VirtualBox.
- Откройте командную строку от имени администратора, нажав Win + X и выбрав Командная строка (Администратор)
- Теперь введите
cd %programfiles%\Oracle\VirtualBox
или там, где вы установили VirtualBox
- Теперь введите
Внутренние команды VBoxManage createrawvmdk -filename C:\usb.vmdk -rawdisk \.\PhysicalDrive#
где # — номер вашего диска. C:\usb.vmdk может быть любым расположением по вашему желанию.
- Откройте Virtual Box от имени администратора. (Щелкните правой кнопкой мыши > Запуск от имени администратора)
- На вашей виртуальной машине Linux щелкните правой кнопкой мыши и выберите «Настройки». Затем выберите «Хранилище» и добавьте жесткий диск SATA. Затем щелкните «Выбрать существующий диск».
- Перейдите к файлу жесткого диска .vmdk и нажмите «ОК». Если вы все сделали правильно, то это должно выглядеть примерно так. Нажмите «ОК»
- Загрузите виртуальную машину Linux, и диск появится в Linux.
[РЕДАКТИРОВАТЬ]
Обратите внимание, что команды «Запуск от имени администратора» специфичны для Windows 10. Кроме того, диск НЕ будет работать, если он не находится в режиме администратора.