Как да инсталирате 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 флаш устройство
Освен системния дял и дяловете за данни, Surface Pro 3 има дял за възстановяване от 5 GB.
Възможно е (и препоръчително) да копирате този дял на флаш устройство с капацитет 8 GB или по-голям. Въведете „възстановяване“ без кавички точно в началния екран и щракнете върху „Създаване на устройство за възстановяване“.
След като вашето устройство за възстановяване бъде създадено, Windows ще предложи да изтрие дяла за възстановяване от SSD устройството.
Безопасно е да приемете това, тъй като сега имате флаш устройството за възстановяване със същите данни, така че нямате нужда от SSD дял. Ако стартирате от флаш устройството за възстановяване, то ще възстанови цялото оформление на SSD, включително Windows и дяла за възстановяване, който изтривате.
Свийте C: устройството
Щракнете с десния бутон върху устройството C: в Disk Management и изберете командата Shrink от контекстното меню. В следващия диалогов прозорец въведете желаното свободно дисково пространство, което искате да резервирате.
Деактивирайте хибернацията
Linux няма да монтира NTFS дялове, ако Windows е бил в хибернация, така че е необходимо напълно да деактивирате хибернация/дълбок сън. Отворете командния ред като администратор и въведете следната команда:
powercfg -изключване на хибернация
Инсталация
Изключете вашия Surface Pro 3. Сега натиснете и задръжте бутона "+" за сила на звука и го включете. Той ще се стартира в настройките на UEFI, където трябва да деактивирате функцията за сигурно зареждане. При деактивирано Secure Boot е възможно да стартирате и инсталирате друга ОС. Изключете Surface Pro 3 отново.
Инсталирайте Debian Linux
Свържете USB устройството с настройка на Debian към USB хъба. Натиснете и задръжте бутона "-" за сила на звука и включете Surface Pro 3. Стартирайте желания режим на настройка (GUI/текстов режим) и не забравяйте да създадете ръчно дялове на Linux. Можете да създадете един главен ( / ) дял и да поставите всички точки за монтиране и дори суап файла върху него, ако не ви харесва да имате много дялове на вашето устройство.
Зареждането на GRUB2 няма да бъде записано в MBR поради UEFI. Вместо това той ще бъде добавен към EFI в
efi/debian/grubx64.efi
Продължете да инсталирате Debian. След като настройката приключи, той ще рестартира Surface Pro 3 и Windows 8.1 ще бъде зареден.
На началния екран въведете възстановяване отново и щракнете Опции за възстановяване в резултатите от търсенето. Щракнете върху „Рестартиране сега“ в Разширените опции за стартиране.
Разширените опции за стартиране ще бъдат отворени. Продължете да използвате устройство - > Debian.
Стартирайте в Debian и редактирайте следния файл:
/etc/default/grub
Декоментирайте следния ред:
GRUB_GFXMODE=640x480
След това актуализирайте конфигурацията на grub със следната команда:
update-grub
Ако се дразните, че за да стартирате в Debian, трябва да показвате Разширено стартиране всеки път от Windows, възможно е да зададете GRUB2 като опция за зареждане на EFI по подразбиране. В Debian въведете следната команда:
#efibootmgr... Ред на зареждане: 0000,0002,0001. Boot0000* USB устройство. Boot0001* Debian. Boot0002* Windows Boot Manager
Променете последователността на зареждане със следната команда:
# efibootmgr --bootorder 0000,0001,0002
Конфигуриране на устройства
В Debian следните устройства не работят извън кутията:
- WiFi
- Bluetooth
- Тип Капак 3 с тъчпад
- Стилус
- Тъч скрийн
Това е жалко и не е наред. Нека го оправим.
WiFi и Bluetooth
За да накараме тези две да работят, трябва да получим драйвери от сайта на доставчика. Чипът е от Marvell. Използвайте следните команди:
$ git клонинг git://git.marvell.com/mwifiex-firmware.git. # mkdir -p /lib/firmware/mrvl/ # cp mwifiex-firmware/mrvl/* /lib/firmware/mrvl/
След рестартирането трябва да накарате WiFi и Bluetooth да работят.
Тип Капак 3
Това е по-сериозен проблем от безжичните устройства. За да работи, трябва да прекомпилираме ядрото и да използваме най-новото ядро, v3.16. Можем да го вземем от експерименталното хранилище на Debian.
Добавете следния ред към /etc/apt/sources.list:
деб http://ftp.de.debian.org/debian експериментална основна
Сега трябва да получим неговите източници:
# apt-получи актуализация. # 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. +#define 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_PRESENTER_8K_BT 0x0701 #define USB_DEVICE_ID_MS_PRESENTER_8K_USB 0x0713 #DEVICE_IDK USB_DIMEMS_0x07 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->group == HID_GROUP_MULTITOUCH) + hid->group = HID_GROUP_GENERIC; } static 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 },
Сега приложете пластира:
patch -p1 --ignore-whitespace -i typecover3.patch
Сега копирайте текущата конфигурация на ядрото за използване с новото ядро:
# cp /boot/config-`uname -r` .config. # направете конфигурация на менюто
Запазете конфигурацията и излезте от менюто menuconfig. Не са необходими повече промени. Сега компилирайте ядрото:
# make-kpkg clean. # fakeroot make-kpkg --initrd --append-to-version=-typecover3 kernel_image kernel_headers
Ще отнеме около час. Трябва да получите два пакета *.deb, които трябва да инсталирате:
# cd.. # dpkg -i linux-image*.deb linux-headers*.deb
Това е. Рестартирайте с новото ядро и Type Cover 3 трябва да работи.
Тъчпад
Това е доста просто, просто добавете следния текст във файла /etc/X11/xorg.conf:
Секция "InputClass" Идентификатор "Surface Pro 3 cover" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Драйвер "evdev" Опция "вендор" "045e" Опция "продукт" Опция "07dc" „IgnoreAbsoluteAxes“ „Вярно“ EndSection
Рестартирайте отново. Всичко ще работи.
Сега инсталирайте пакета лаптоп-режим-инструменти, за да подобрите икономията на енергия в Linux.
Това е.
Заключителни думи
Въпреки че е възможно повечето функции на Surface Pro 3 да работят под Linux, той все още има няколко проблема. Бутоните за сила на звука не работят извън кутията, както и бутоните на стилуса. И едно нещо, сензорът на акселерометъра също не работи. Ако сте в състояние да понасяте тези проблеми, тогава можете да сте доволни от инсталирания Linux на вашето Surface Pro 3 устройство. (чрез хабр).