Cum se instalează Linux pe Surface Pro 3
Surface Pro 3 este un dispozitiv foarte atractiv pentru cumpărare ca laptop și înlocuitor de tabletă. În comparație cu generațiile anterioare de Surface Pro, a treia iterație a premium Microsoft tableta vine cu o durată de viață mai bună a bateriei, o rezoluție excelentă a ecranului și un Intel Core cu adevărat puternic procesor. Pentru acei utilizatori cărora le place hardware-ul Surface Pro 3, dar preferă Linux în loc de Windows, aș dori să vă împărtășesc o modalitate de a instala Linux.
Înainte de a continua, este necesar să obțineți următoarele dispozitive:
- mufa USB
- mouse USB
- Tastatura USB
- Din păcate, Debian nu reușește să detecteze adaptorul WiFi integrat al Surface Pro 3, așa că trebuie să folosim un adaptor USB Ethernet sau tethering USB de la un smartphone.
Surface Pro 3 acceptă doar instalarea UEFI, așa că avem nevoie de o distribuție Linux care să accepte un astfel de mod de instalare. Debian este una dintre distribuțiile Linux pregătite pentru UEFI. Rețineți că x86 UEFI nu este disponibil în Surface Pro 3, așa că trebuie utilizată imaginea de configurare AMD64.
Se pregătește instalarea Debian
Salvați partiția de recuperare pe o unitate flash USB
Pe lângă partițiile de sistem și de date, Surface Pro 3 are o partiție de recuperare de 5 GB.
Este posibil (și recomandat) să copiați acea partiție pe o unitate flash de 8 GB sau mai mare. Tastați „recuperare” fără ghilimele chiar pe ecranul Start și faceți clic pe „Creați o unitate de recuperare”.
După ce este creată unitatea de recuperare, Windows vă va oferi să ștergeți partiția de recuperare de pe unitatea SSD.
Este sigur să acceptați acest lucru, deoarece acum aveți unitatea flash de recuperare cu aceleași date, deci nu aveți nevoie de partiția SSD. Dacă porniți de pe unitatea flash de recuperare, aceasta va restabili întregul aspect SSD, inclusiv Windows și partiția de recuperare pe care o ștergeți.
Micsorați unitatea C:
Faceți clic dreapta pe unitatea C: din Disk Management și alegeți comanda Shrink din meniul său contextual. În dialogul următor, introduceți spațiul liber pe disc dorit pe care doriți să îl rezervați.
Dezactivați hibernarea
Linux nu va monta partiții NTFS dacă Windows a fost hibernat, așa că este necesar să dezactivați complet hibernarea/somniul profund. Deschideți promptul de comandă ca administrator și tastați următoarea comandă:
powercfg -hibernare oprită
Instalare
Opriți Surface Pro 3. Acum apăsați și mențineți apăsat butonul de volum „+” și porniți-l. Se va porni la setările UEFI, unde ar trebui să dezactivați funcția Secure Boot. Cu Secure Boot dezactivat, este posibil să porniți și să instalați un alt sistem de operare. Închideți din nou Surface Pro 3.
Instalați Debian Linux
Conectați unitatea USB cu configurarea Debian la hub-ul USB. Apăsați lung butonul de volum „-” și porniți Surface Pro 3. Rulați modul de configurare dorit (mod GUI/text) și nu uitați să creați manual partiții Linux. Puteți crea o partiție rădăcină ( / ) și puneți toate punctele de montare și chiar fișierul swap pe ea dacă nu vă place să aveți multe partiții pe unitatea dvs.
Încărcătorul GRUB2 nu va fi scris în MBR din cauza UEFI. Va fi adăugat la EFI în schimb la
efi/debian/grubx64.efi
Continuați să instalați Debian. După finalizarea instalării, va reporni Surface Pro 3 și va fi încărcat Windows 8.1.
Pe ecranul Start, tastați recuperare din nou și faceți clic Opțiuni de recuperare în rezultatele căutării. Faceți clic pe „Reporniți acum” în Opțiuni avansate de pornire.
Se vor deschide opțiunile de pornire avansată. Continuați să utilizați un dispozitiv -> Debian.
Porniți în Debian și editați următorul fișier:
/etc/default/grub
Anulați comentariul următorului rând:
GRUB_GFXMODE=640x480
După aceea, actualizați configurația grub cu următoarea comandă:
update-grub
Dacă sunteți enervat că pentru a porni în Debian, trebuie să afișați pornirea avansată de fiecare dată din Windows, este posibil să setați GRUB2 ca opțiune implicită de pornire EFI. În Debian, tastați următoarea comandă:
# efibootmgr... Comanda de pornire: 0000,0002,0001. Boot0000* Unitate USB. Boot0001* Debian. Boot0002* Windows Boot Manager
Schimbați secvența de pornire cu următoarea comandă:
# efibootmgr --bootorder 0000,0001,0002
Configurarea dispozitivelor
În Debian, următoarele dispozitive nu funcționează din fabricație:
- Wifi
- Bluetooth
- Type Cover 3 cu touchpad
- Stylus
- Touch screen
Acest lucru este regretabil și nu este OK. Să o reparăm.
WiFi și Bluetooth
Pentru ca aceste două să funcționeze, trebuie să obținem drivere de pe site-ul furnizorului. Cipul este de la Marvell. Utilizați următoarele comenzi:
$ git clone git://git.marvell.com/mwifiex-firmware.git. # mkdir -p /lib/firmware/mrvl/ # cp mwifiex-firmware/mrvl/* /lib/firmware/mrvl/
După repornire, ar trebui să funcționeze WiFi și Bluetooth.
Tip Coperta 3
Aceasta este o problemă mai serioasă decât dispozitivele wireless. Pentru ca acesta să funcționeze, trebuie să recompilăm nucleul și să folosim cel mai recent kernel, v3.16. Îl putem obține din depozitul experimental al Debian.
Adăugați următoarea linie la /etc/apt/sources.list:
deb http://ftp.de.debian.org/debian principal experimental
Acum trebuie să obținem sursele sale:
# apt-get update. # apt-get -t instalare experimentală linux-headers-3.16-trunk-amd64 linux-image-3.16-trunk-amd64 linux-source-3.16.
Despachetează sursele:
# tar -xf /usr/src/linux-source-3.16.tar.xz. # cd linux-source-3.16
Creați un nou fișier typocover3.patch cu următorul conținut:
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_DI_3KTAL_0. 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 (ascuns->furnizor == USB_VENDOR_ID_MICROSOFT && + ascuns->produs == USB_DEVICE_ID_MS_TYPE_COVER_3 && + ascuns->grup == 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 },
Acum aplicați plasturele:
patch -p1 --ignore-whitspace -i typecover3.patch
Acum copiați configurația curentă a nucleului pentru a fi utilizată cu noul nucleu:
# cp /boot/config-`uname -r` .config. # face menuconfig
Salvați configurația și ieșiți din meniul menuconfig. Nu mai sunt necesare modificări. Acum compilați nucleul:
# face-kpkg curat. # fakeroot make-kpkg --initrd --append-to-version=-typecover3 kernel_image kernel_headers
Va dura aproximativ o oră. Ar trebui să obțineți două pachete *.deb, pe care trebuie să le instalați:
# cd.. # dpkg -i linux-image*.deb linux-headers*.deb
Asta e. Reporniți cu noul nucleu și Type Cover 3 ar trebui să funcționeze.
Touchpad
Acest lucru este destul de simplu, trebuie doar să adăugați următorul text în fișierul /etc/X11/xorg.conf:
Secțiunea „InputClass” Identificator „Copertă Surface Pro 3” MatchIsPointer „on” MatchDevicePath „/dev/input/event*” Driver „evdev” Opțiunea „furnizor” „045e” Opțiunea „produs” Opțiunea „07dc” „IgnoreAbsoluteAxes” „Adevărat” EndSection
Reporniți din nou. Totul va funcționa.
Acum instalați pachetul laptop-mode-tools pentru a îmbunătăți economisirea energiei în Linux.
Asta e.
Cuvinte de încheiere
Deși este posibil ca majoritatea funcțiilor Surface Pro 3 să funcționeze sub Linux, are încă câteva probleme. Butoanele de volum al sunetului nu funcționează din cutie, precum și butoanele stylusului. Și am înțeles, nici senzorul de accelerometru nu funcționează. Dacă puteți tolera aceste probleme, atunci puteți fi mulțumit de Linux instalat pe dispozitivul dvs. Surface Pro 3. (prin intermediul habr).