Dual boot with Windows (Русский)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

Эта статья описывает способы установки и особенности совместного использования Arch Linux и Windows на одном компьютере.

Важная информация

Особенности загрузки Windows на системах с UEFI и BIOS

В зависимости от версии используемой операционной системы Windows на режим загрузки и разбивку дисков на разделы налагаются определённые ограничения:

  • Windows XP (x86 и x86_64 (также называемая x64) — RTM и все сервис-паки) не поддерживает загрузку в UEFI-режиме ни с MBR, ни с GPT. Кроме того, не поддерживается загрузка в режиме BIOS с диска GPT. Единственный поддерживаемый режим — BIOS с диска MBR.
  • Windows Vista и 7 (x86 — RTM и все сервис-паки) поддерживают загрузку только в режиме BIOS и только с дисков MBR.
  • Windows Vista RTM x86_64 (только RTM, без сервис-паков) поддерживает загрузку в режиме BIOS только с дисков MBR.
  • Windows Vista (SP1 и старше, кроме RTM), а также Windows 7 x86_64 поддерживают загрузку в режиме UEFI x86_64 только с дисков GPT, или в режиме BIOS только с дисков MBR. Режимы UEFI IA32 + GPT/MBR, UEFI x86_64 + MBR, BIOS + GPT не поддерживаются.
  • Windows 8/8.1 x86 поддерживают загрузку в режиме UEFI IA32 только с дисков GPT, либо в режиме BIOS только с дисков MBR. С (U)EFI IA32 поставляется незначительное количество систем, например, старые Mac с процессорами Intel (модели, выпущенные ранее 2010 года), и планшеты с Windows 8/8.1 на процессорах Intel Atom (архитектура Clover Trail и Bay Trail, загружаются только в режиме UEFI IA32 и только с дисков GPT).
  • Windows 8/8.1 x86_64 поддерживает загрузку в режиме UEFI x86_64 только с дисков, использующих GPT, или в режиме BIOS с дисков MBR. Поддержка режима UEFI IA32, загрузки в режиме UEFI x86_64 с диска MBR, а также загрузки в режиме BIOS с диска GPT отсутствует.

В случае, если на компьютер была предустановлена Windows:

  • Все компьютеры с предустановленной Windows XP, Vista или 7 (32 бит), независимо от версии сервис-пака, архитектуры (кроме Windows 7), редакции (SKU) и поддержки UEFI оборудованием, по умоланию загружаются в режиме BIOS-MBR.
  • Большинство компьютеров с предустановленной 64-битной Windows 7, независимо от версии сервис-пака и редакции, по умолчанию загружаются в режиме BIOS-MBR. Некоторое количество, как правило, наиболее современных компьютеров, загружаются в режиме UEFI-GPT.
  • Все компьютеры с предустановленной Windows 8/8.1 загружаются в режиме UEFI-GPT. Разрядность UEFI соответствует разрядности операционной системы, т. е. 64-битная Windows 8/8.1 загружается 64-битным UEFI, а 32-битная Windows — 32-битным UEFI в режиме IA32.

Чтобы проверить, в каком режиме была загружена система, воспользуйтесь следующей инструкцией:

  • Загрузите Windows;
  • Нажмите комбинацию клавиш Win+R, чтобы открыть диалог запуска программы;
  • В появившемся окне введите "msinfo32" и нажмите Enter;
  • В левой части окна System Information нажмите System Summary и обратите внимание на поле BIOS mode в правой части окна;
  • Если значение этого поля равно UEFI, система была загружена в режиме UEFI-GPT. Если значение поля равно Legacy, система загружена в режиме BIOS-MBR.

Как правило, тип используемой таблицы разделов зависит от того, в каком режиме загружается Windows. Например, если её загрузка происходит в режиме UEFI, то она может быть установлена только на диск с GPT. Если Windows загружается в режиме BIOS, её можно установить только на диск с MBR (также называемой "таблицей разделов в стиле msdos"). Это ограничение — особенность работы установщика Windows, и на данный момент (декабрь 2014 года) не существует официально поддерживаемого Microsoft способа обойти его. Таким образом, в зависимости от способа загрузки для системного диска Windows поддерживает только либо MBR, либо GPT.

Ядро Linux не имеет таких ограничений, тем не менее, возможность загрузки с того или иного раздела зависит также от используемого загрузчика и параметров его конфигурации. Если вы планируете устанавливать и загружать Arch Linux и Windows с одного диска, необходимо учесть ограничения, налагаемые Windows, поскольку от способа загрузки и типа используемой таблицы разделов зависит процедура установки и настройки загрузчика. Для получения дополнительной информации пройдите по ссылке http://support.microsoft.com/kb/2581408

Установка на планшеты с процессорами Intel Atom

Планшеты с процессором Intel Atom (архитектура Clover Trail и Bay Trail) имеют поддержку только режима IA32 UEFI, поддержка Legacy BIOS (CSM) в них отсутствует (в отличие от большей части систем с UEFI x86_64). Это связано с тем, что производители аппаратного обеспечения для планшетов следуют рекомендациям Microsoft для оптимизации их работы в режиме Connected Standby, появившемся в Windows 8. Из-за отсутствия поддержки режима Legacy BIOS и отсутствия 32-битного UEFI-загрузчика в официальном установочном образе Arch Linux, этот образ нельзя использовать для установки Arch Linux на вышеупомянутые планшеты.

Поддержка режимов UEFI и BIOS загрузчиками

Большинство загрузчиков Linux, установленные для одного типа , не могут передавать управление загрузчикам других типов. Например, если Arch Linux установлен на первый диск в режиме UEFI-GPT или UEFI-MBR, и на втором диске имеется Windows, установленная в режиме BIOS-MBR, загрузчик Arch не сможет передать управление загрузчику Windows. Аналогично, если Arch установлен в режиме BIOS-MBR или BIOS-GPT на первый диск, и Windows установлена в режиме UEFI-GPT на второй, загрузчик Arch не сможет передать управление загрузчику Windows.

У этого правила есть два исключения: 1) Grub (2) на компьютерах Apple Mac, установленный в режиме EFI, может передавать управление BIOS-загрузчику другой операционной системы с помощью команды appleloader. 2) rEFInd, который поддерживает передачу управления BIOS-загрузчикам на системах с UEFI, но, как утверждает его автор, этот метод не всегда работает на системах, отличных от Apple Mac.

Тем не менее, если Arch установлен в режиме BIOS-GPT на один диск, а Windows установлена в режиме BIOS-MBR на другой диск, то BIOS-загрузчик Arch Linux может загружать Windows со второго диска, если поддержка такого функционала присутствует в используемом вами загрузчике.

Примечание: Если Arch и Windows должны загружаться с одного диска, при установке Arch вы обязаны использовать тот же режим загрузки (BIOS или UEFI) и тот же тип таблицы разделов (GPT или MBR), которые используются установленной Windows.

UEFI Secure Boot

Все компьютеры с предустановленной Windows 8/8.1 по умолчанию загружаются в режиме UEFI-GPT с включённой технологией UEFI Secure Boot (которая может отключаться по желанию пользователя) и выключенным Legacy BIOS Support (CSM) (который при необходимости можно включить, если он поддерживается вашим UEFI). Это — следствие выполнения требований Microsoft к аппаратному обеспечению для систем, поставляемых с предустановленной Windows.

Установочный образ Arch Linux поддерживает Secure Boot, однако, если он включен, при установке системы потребуется выполнить несколько дополнительных шагов, описанных в setup the HashTool while booting. Рекомендуется отключить Secure Boot через настройки UEFI перед установкой Arch Linux. Отключение этой опции не должно вызвать никаких проблем с загрузкой Windows 8/8.1.

Единственная проблема с отключением Secure Boot — для выполнения этого действия требуется физический доступ к компьютеру, поскольку Microsoft выступила категорически против добавления возможности удалённого (и даже локального программного) управления этой функцией.

Быстрый запуск

Быстрый запуск — новая функция, появившаяся в Windows 8, позволяющая ускорить запуск системы. Ускорение достигается за счёт частичной гибернации системы, т. е. часть оперативной памяти сжимается и складывается на жёсткий диск. Это вызывает следующую проблему — при использовании другой операционной системы изменение файлов на диске может привести к потере данных в Windows. Даже если не использовать системный раздел с Windows из другой ОС, проблемы могут возникнуть из-за изменения файлов на системном разделе EFI. Следовательно, для обеспечения большей стабильности работы Windows рекомендуется отключить функцию быстрого запуска ещё до начала установки Linux, воспользовавшись этой инструкцией.

Драйвер ntfs-3g автоматически обнаруживает случаи использования функции быстрого запуска и отказывается монтировать разделы в режиме чтения-записи, пока Windows не будет корректно перезагружена.

Важно: Драйвер NTFS, входящий в состав ядра Linux, не имеет такой защиты.

Ограничения имён файлов в Windows

В Windows полное имя файла (включая путь) не может содержать больше 260 символов.

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

  • < (знак «меньше»)
  • > (знак «больше»)
  •  : (двоеточие)
  • " (двойные кавычки)
  • / (прямой слэш)
  • \ (обратный слэш)
  • | (вертикальная черта)
  •  ? (вопросительный знак)
  • * (звёздочка)

Эти ограничения налагаются Windows, но не NTFS: любая другая операционная система может использовать символы из этого списка на разделе NTFS без каких-либо проблем. Однако, при попытке получить доступ к таким файлам из Windows она не сможет их обнаружить, запустит проверку диска программой chkdsk, которая может решить проблему, просто удалив файлы, что приведёт к потере данных.

Для новых файлов драйвер NTFS-3G позволяет применять ограничения Windows, если использовать опцию windows_filenames (см. fstab (Русский)).

Установка

Рекомендуемый способ установки двух систем — сначала установить Windows, используя для её разделов только часть диска и оставив немного свободного места. После заврешения установки Windows, загрузитесь в установочную среду Linux, создайте необходимые разделы и выполните установку в них, оставив разделы Windows нетронутыми. Если вы используете режим UEFI, установщик Windows создаст системный раздел EFI, который можно использовать для установки загрузчика Linux.

Системы с BIOS

Используя загрузчик Linux

Вы можете использовать один из следующих загрузчиков: GRUB либо Syslinux.

Используя загрузчик Windows

При использовании этого метода загрузчик Windows запускает GRUB, который, в свою очередь, загружает Arch Linux.

Загрузчик Windows Vista/7/8/8.1

Чтобы загрузчик Windows смог "увидеть" раздел Linux, один из разделов необходимо отформатировать в FAT32 (в примере далее будет использоваться раздел /dev/sda3). Некоторые источники утверждают, что раздел, с которым работает загрузчик Windows, обязательно должен быть первичным (primary), но есть сообщения об удачном использовании расширенного (extended) раздела.

  • Когда дойдёте до этапа установки GRUB, выполните установку не в MBR, а в раздел, соответствующий директории //boot.
Примечание: Например, пусть директории /boot соответствует раздел /dev/sda5. При установке GRUB в качестве пути для установки вместо имени устройства /dev/sda необходимо передать ему имя раздела /dev/sda5.
  • Из операционной системы Linux сделайте копию загрузочного сектора, вводя следующие команды от имени суперпользователя в командный интерпретатор:
my_windows_part=/dev/sda3
my_boot_part=/dev/sda5
mkdir /media/win
mount $my_windows_part /media/win
dd if=$my_boot_part of=/media/win/linux.bin bs=512 count=1
  • Загрузите Windows и откройте содержимое созданного ранее раздела с FAT32. Скопируйте файл linux.bin, созданный на предыдущем этапе, на раздел C:\. Запустите командный интерпретатор (cmd) от имени администратора и выполните команду:
bcdedit /create /d “Linux” /application BOOTSECTOR
  • BCDEdit выведет на экран буквенно-цифровой идентификатор, который далее будет обозначаться как {ID}. Пример такого идентификатора — {d7294d4e-9837-11de-99ac-f3f3a79e3e93} (у вас он будет отличаться). Введите в окно терминала следующие команды, заменяя {ID} на ваше значение идентификатора:
bcdedit /set {ID} device partition=c:
bcdedit /set {ID} path \linux.bin
bcdedit /displayorder {ID} /addlast
bcdedit /timeout 30

Осталось перезапустить систему и проверить результат.

Загрузчик Windows 2000/XP

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

Системы с UEFI

Загрузчики gummiboot (Русский) и rEFInd (Русский) автоматически обнаруживают загрузчик Windows (\EFI\Microsoft\Boot\bootmgfw.efi) и добавляют его в свои меню, поэтому для них не требуется какой-либо дополнительной настройки.

Если вы используете GRUB (2), следуйте этому руководству.

Syslinux (как минимум, версии по 6.03-pre9 включительно) и ELILO не поддерживают передачу процесса загрузки другим приложениям EFI, поэтому они не могут использоваться для загрузки Windows в этом режиме.

Формат хранения системного времени

  • Предпочтительный метод: установите использование времени по UTC как в Arch Linux, так и в Windows, следуя инструкции из Time#UTC in Windows. Кроме того, не забудьте отключить синхронизацию времени по сети в Windows, в противном случае при каждом обновлении аппаратное время будет сбрасываться с UTC на локальное.
  • Альтернативный метод (не рекомендуется): настройте Arch Linux на использование и хранение местного времени и отключите все службы, относящиеся к управлению системным временем, например, NTPd. При таком подходе коррекцией системного времени будет заниматься Windows. При использовании этого метода ответственность за точный ход часов лежит только на вас, пожалуйста, не надо спрашивать на форумах, почему время ушло на час вперёд или назад, если долго не загружаться в Windows.

Смотрите также