Как установить Linux на Surface Pro 3

Surface Pro 3 — очень привлекательное устройство для покупки в качестве ноутбука или замены планшета. По сравнению с предыдущими поколениями Surface Pro, третья версия премиального планшета Microsoft отличается более длительным временем автономной работы, отличным разрешением экрана и действительно мощным процессором Intel Core. Для тех пользователей, которым нравится аппаратное обеспечение Surface Pro 3, но которые предпочитают Linux вместо Windows, я хотел бы поделиться с вами способом установки Linux.

Прежде чем продолжить, необходимо приобрести следующие устройства:

  • USB-концентратор
  • USB-мышь
  • USB-клавиатура
  • К сожалению, Debian не может обнаружить встроенный WiFi-адаптер Surface Pro 3, поэтому нам нужно использовать какой-нибудь USB-адаптер Ethernet или USB-модем со смартфона.

Surface Pro 3 поддерживает только установку UEFI, поэтому нам нужен дистрибутив Linux, который поддерживает такой способ установки. Debian — один из дистрибутивов Linux с поддержкой UEFI. Обратите внимание, что x86 UEFI недоступен в Surface Pro 3, поэтому необходимо использовать установочный образ AMD64.

СОДЕРЖАНИЕ Подготовка к установке Debian Сохраните раздел восстановления на USB-накопитель. Сжать диск C: Отключить гибернацию Установка Установите Debian Linux Настройка устройств Wi-Fi и Bluetooth Тип Крышка 3 Сенсорная панель Заключительные слова

Подготовка к установке Debian

Сохраните раздел восстановления на USB-накопитель.

Помимо системного раздела и разделов данных, Surface Pro 3 имеет раздел восстановления размером 5 ГБ.
Разделы жесткого диска
Можно (и рекомендуется) скопировать этот раздел на флэш-накопитель емкостью 8 ГБ или более. Введите «восстановление» без кавычек прямо на начальном экране и нажмите «Создать диск восстановления».
Восстановление поиска
После создания диска восстановления Windows предложит удалить раздел восстановления с SSD-диска.
Удалить раздел восстановления
Это безопасно, так как теперь у вас есть флэш-накопитель восстановления с теми же данными, поэтому вам не нужен раздел SSD. Если вы загрузитесь с флэш-накопителя восстановления, он восстановит всю структуру SSD, включая Windows и раздел восстановления, который вы удалили.

Сжать диск C:

Щелкните правой кнопкой мыши диск C: в «Управлении дисками» и выберите команду «Сжать» в его контекстном меню. В следующем диалоговом окне введите желаемое свободное дисковое пространство, которое вы хотите зарезервировать.
Сокращаться

Отключить гибернацию

Linux не будет монтировать разделы NTFS, если Windows была переведена в спящий режим, поэтому необходимо полностью отключить спящий режим / глубокий сон. Откройте командную строку от имени администратора и введите следующую команду:

powercfg -hibernate выключен

Установка

Выключите Surface Pro 3. Теперь нажмите и удерживайте кнопку громкости «+» и включите его. Он загрузится с настройками UEFI, где вы должны отключить функцию безопасной загрузки. Если безопасная загрузка отключена, можно загрузить и установить другую ОС. Снова выключите Surface Pro 3.

Установите Debian Linux

Подключите USB-накопитель с программой установки Debian к USB-концентратору. Нажмите и удерживайте кнопку громкости «-» и включите Surface Pro 3. Запустите нужный режим настройки (графический / текстовый режим) и не забудьте создать разделы Linux вручную. Вы можете создать один корневой (/) раздел и поместить на него все точки монтирования и даже файл подкачки, если вам не нравится иметь много разделов на вашем диске.
fdisk

Загрузчик GRUB2 не будет записан в MBR из-за UEFI. Вместо этого он будет добавлен в EFI по адресу

efi / debian / grubx64.efi

Продолжайте установку Debian. После завершения установки будет перезапущен Surface Pro 3, и будет загружена Windows 8.1.

На начальном экране снова введите восстановление и щелкните Параметры восстановления в результатах поиска. Нажмите «Перезагрузить сейчас» в расширенных параметрах запуска.
Расширенный запуск
Откроются параметры расширенного запуска. Продолжайте использовать устройство -> Debian.
Использовать устройство
Загрузитесь в Debian и отредактируйте следующий файл:

/ и т. д. / по умолчанию / grub

Раскомментируйте следующую строку:

GRUB_GFXMODE = 640x480

После этого обновите конфигурацию grub с помощью следующей команды:

update-grub

Если вас раздражает то, что для загрузки в Debian вы должны каждый раз показывать расширенный запуск из Windows, можно установить GRUB2 в качестве параметра загрузки EFI по умолчанию. В Debian введите следующую команду:

# efibootmgr ... Порядок загрузки: 0000,0002,0001 Boot0000 * USB-накопитель Boot0001 * Debian Boot0002 * Диспетчер загрузки Windows

Измените последовательность загрузки с помощью следующей команды:

# efibootmgr --bootorder 0000,0001,0002

Настройка устройств

В Debian из коробки не работают следующие устройства:

  • Вай фай
  • блютуз
  • Тип крышки 3 с тачпадом
  • Стилус
  • Сенсорный экран

Это прискорбно и не нормально. Давай исправим.

Wi-Fi и Bluetooth

Чтобы эти два работали, нам нужно получить драйверы с сайта производителя. Чип от Marvell. Используйте следующие команды:

$ git clone git: //git.marvell.com/mwifiex-firmware.git # mkdir -p / lib / прошивка / mrvl / # cp mwifiex-прошивка / mrvl / * / lib / firmware / mrvl / 

После перезагрузки у вас должны заработать WiFi и Bluetooth.

Тип Крышка 3

Это более серьезная проблема, чем беспроводные устройства. Чтобы он заработал, нам нужно перекомпилировать ядро ​​и использовать последнее ядро ​​v3.16. Мы можем получить его из экспериментального репозитория Debian.
Добавьте следующую строку в /etc/apt/sources.list:

deb http://ftp.de.debian.org/debian экспериментальная главная

Теперь нам нужно получить его источники:

# apt-get update # apt-get -t экспериментальная установка linux-headers-3.16-trunk-amd64 linux-image-3.16-trunk-amd64 linux-source-3.16 

Распаковать исходники:

# tar -xf /usr/src/linux-source-3.16.tar.xz # cd linux-source-3.16

Создайте новый файл typocover3.patch со следующим содержимым:

--- a / drivers / hid / hid-ids.h 2014-01-19 21: 40: 07.000000000 -0500 +++ b / drivers / hid / hid-ids.h 2014-04-20 23: 29: 35.000000000 -0400 @@ -631,6 +631,7 @@ #define USB_DEVICE_ID_MS_NE4K 0x00db #define USB_DEVICE_ID_MS_NE4K_JP 0x00dc #define USB_DEVICE_ID_MS_LK6K 0x00f9 + # определить USB_DEVICE_ID_MS_TYPE_COVER_3 0x07dc #define USB_DEVICE_ID_MS_PRESENTER_8K_BT 0x0701 #define USB_DEVICE_ID_MS_PRESENTER_8K_USB 0x0713 #define USB_DEVICE_ID_MS_DIGITAL_MEDIA_3K 0x0730 --- a / drivers / hid / hid-core.c 2014-01-19 21: 40: 07.000000000 -0500 +++ b / drivers / hid / hid-core.c 2014-04-21 03: 13: 54.000000000 -0400 @@ -702,6 +702,11 @@ static void hid_scan_collection (struct h if (((parser-> global.usage_page group = HID_GROUP_SENSOR_HUB; + + if (hid-> vendor == USB_VENDOR_ID_MICROSOFT && + hid-> product == USB_DEVICE_ID_MS_TYPE_COVER_3 && + hid-> группа == HID_GROUP_MULTITOUCH) + hid-> group = HID_GROUP_GENERIC; }
статический int hid_scan_main (struct hid_parser * parser, struct hid_item * item) --- a / drivers / hid / usbhid / hid-quirks.c 2014-01-19 21: 40: 07.000000000 -0500 +++ b / drivers / hid / usbhid / hid-quirks.c 2014-04-20 23: 29: 35.000000000 -0400 @@ -73,6 +73,7 @@ static const struct hid_blacklist { {USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS}, {USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET}, {USB_VENDOR_ID_MGE, USB_DEVICE_ID_MGE_UPS, HID_QUIRK_NOGET}, + {USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS}, {USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GX680R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS}, {USB_VENDOR_ID_NOVATEK, USB_DEVICE_ID_NOVATEK_MOUSE, HID_QUIRK_NO_INIT_REPORTS}, {USB_VENDOR_ID_PIXART, USB_DEVICE_ID_PIXART_OPTICAL_TOUCH_SCREEN, HID_QUIRK_NO_INIT_REPORTS}, 

Теперь примените патч:

патч -p1 --ignore-whitespace -i typecover3.patch

Теперь скопируйте текущую конфигурацию ядра для использования с новым ядром:

# cp / boot / config-`uname -r` .config # сделать menuconfig

Загрузить конфигурацию
Сохраните конфигурацию и выйдите из меню menuconfig. Больше никаких изменений не требуется. Теперь скомпилируйте ядро:

# make-kpkg clean # fakeroot make-kpkg --initrd --append-to-version = -typecover3 image_ kernel_headers

Это займет около часа. У вас должно получиться два пакета * .deb, которые необходимо установить:

# CD .. # dpkg -i linux-изображение * .deb заголовки linux * .deb

Вот и все. Перезагрузитесь с новым ядром, и Type Cover 3 должен работать.

Сенсорная панель

Это довольно просто, просто добавьте следующий текст в файл /etc/X11/xorg.conf:

Раздел «InputClass» Идентификатор «Покрытие Surface Pro 3» MatchIsPointer "включен" MatchDevicePath "/ dev / input / event *" Драйвер "евдев" Вариант "продавец" "045e" Вариант "изделие" "07дк" Вариант «IgnoreAbsoluteAxes» «True» EndSection

Перезагрузитесь снова. Все будет работать.

Теперь установите пакет laptop-mode-tools, чтобы улучшить энергосбережение в Linux.
Вот и все.

Заключительные слова

Хотя большинство функций Surface Pro 3 можно использовать под Linux, у него все еще есть несколько проблем. Кнопки громкости звука из коробки не работают, как и кнопки стилуса. И один попался, датчик акселерометра тоже не работает. Если вы можете терпеть эти проблемы, то можете быть довольны тем, что Linux установлен на вашем устройстве Surface Pro 3. (с помощью хабр).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *