По какой причине разбиение обычно является шагом установки нескольких (2) операционных систем на одном компьютере?

Должна ли операционная система иметь собственный раздел для запуска или она может работать в том же разделе, что и другая операционная система? (то есть, могут ли два одинаковых варианта работать в одном и том же разделе, но если у вас один Linux и одно окно, его нужно разделить?)

Нужно ли создавать разделы диска для запуска нескольких операционных систем?

2 ответа2

4

Как правило, разные операционные системы поддерживают разные типы файловых систем, и, к сожалению, редко две разные ОС поддерживают одну и ту же файловую систему в достаточной степени для нужд ОС.

Например, файловой системой по умолчанию в Windows является NTFS, которая закрыта - это означает, что переопределение NTFS в Linux, в основном, должно быть сделано путем угадывания и обратного инжиниринга, так как нет никаких официальных спецификаций для чтения. В Linux есть два драйвера NTFS: один является частью ядра, но все еще некачественный; другой - ntfs-3g - написан с использованием FUSE, что делает его немного сложным для интеграции в процесс загрузки, хотя это, безусловно, может быть сделано (при загрузке с initramfs).

В другом направлении, из дюжины файловых систем, поддерживаемых Linux, только для ext2/3/4 доступны сторонние драйверы для Windows (ext2IFS и ext2fsd); опять же, один из них ограничен только ext2, другой утверждает, что поддерживает ext3/ext4, но только без журнала, и ни один из них не способен фактически загружать Windows из раздела ext2/3/4.

Ситуация в основном одинакова, независимо от того, какая у вас комбинация операционных систем. Linux не может читать UFS из FreeBSD и нуждается в стороннем драйвере для поддержки ZFS из-за проблем с лицензированием (опять же, загрузка Linux из ZFS возможна, но это не обязательно будет так же просто, как использование файловой системы, встроенной в Linux). FreeBSD также поддерживает только ext2 и - чуть - ext3.

В общем, единственная широко поддерживаемая файловая система - это FAT/FAT32 от Microsoft, которая довольно медленная и ненадежная по сравнению со всем остальным, не говоря уже о ее ограничениях (например, размер файла ограничен 2 или 4 ГБ).

FAT также не поддерживает ничего, чего ожидают Unix-подобные операционные системы, например, биты прав доступа, списки доступа или специальные файлы, такие как символические ссылки. (Все это, да, NTFS делает поддержку.)

Было время, когда можно было установить Linux на раздел FAT вместе с MS-DOS или ранними системами Windows, используя специальный драйвер файловой системы umsdos который сохранял эти дополнительные метаданные Unix в специальных файлах, скрытых как от Linux, так и от MS-DOS. Тем не менее, он был давно удален. (Сама Windows также не поддерживает загрузку с раздела FAT.)


С другой стороны, установка двух версий одного и того же операционной системы на тот же раздел часто возможно, хотя почти всегда приводит к конфликтам файлов. Например, несмотря на то, что имя каталога \WINDOWS можно изменить для второй установки (в некоторых выпусках даже \WINNT по умолчанию), обе системы по-прежнему ожидают контроля над каталогами по умолчанию \Users и \Program Files .

Современный Linux делает это довольно легко - в большинстве установок используется initramfs, в котором достаточно инструментов пользователя, чтобы смонтировать основную "корневую" файловую систему по обычному пути, например /mnt или /new_root , а затем ввести его с помощью chroot или pivot_root . Было бы тривиально изменить initramfs так, чтобы он вводил /mnt/system-one или /mnt/system-two вместо этого, поэтому корневой раздел будет иметь /system-one/usr и /system-two/usr , например, но обе системы будут убеждены, что они видят только свои собственные /usr , и вы можете даже привязать фактический корень файловой системы поверх /all-systems если хотите.

(Обратите внимание, что нигде я не говорю, что это на самом деле хорошая идея.)

2

Простой ответ - да.

Различные ОС (например, Windows и Linux) используют 2 разных формата файлов (NTFS и Ext3/Ext4), и эти разные форматы файлов не смогут жить в 1 разделе.

Но тогда вы можете спросить: а что, если у меня 2 ОС Linux, они обе работают под Ext4, поэтому они могут жить в 1 разделе, верно?

Технически да, вы можете, но тогда возникнет путаница, где будет располагаться каждый файл ОС, если они все просто объединены. Ядро Linux выживет, так как у ядра Linux будет другое имя файла. Но большая часть структуры папок Linux будет похожа на вашу /usr /bin, и обе ОС Linux будут просто перезаписывать файлы друг друга, и вы можете повредить вашу систему.

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

Надеюсь это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .