Sådan installeres Linux på Surface Pro 3
Surface Pro 3 er en meget attraktiv enhed til køb som en bærbar computer plus tablet-erstatning. Sammenlignet med tidligere generationer af Surface Pro, den tredje iteration af Microsofts premium tablet kommer med bedre batterilevetid, fantastisk skærmopløsning og en virkelig kraftfuld Intel Core processor. For de brugere, der kan lide Surface Pro 3-hardwaren, men foretrækker Linux i stedet for Windows, vil jeg gerne dele en måde at installere Linux på.
Før du fortsætter, er det nødvendigt at anskaffe følgende enheder:
- USB-hub
- USB mus
- USB tastatur
- Desværre opdager Debian ikke den integrerede WiFi-adapter i Surface Pro 3, så vi er nødt til at bruge en eller anden USB Ethernet-adapter eller USB-tethering fra en smartphone.
Surface Pro 3 understøtter kun UEFI-installation, så vi har brug for en Linux-distro, som understøtter sådan en installationsmåde. Debian er en af de UEFI-klare Linux-distros. Bemærk venligst, at x86 UEFI ikke er tilgængelig i Surface Pro 3, så AMD64 opsætningsbillede skal bruges.
Forbereder installation af Debian
Gem din gendannelsespartition på et USB-flashdrev
Udover system- og datapartitionerne har Surface Pro 3 en 5 GB gendannelsespartition.
Det er muligt (og anbefales) at kopiere den partition til et 8 GB eller højere flashdrev. Skriv "gendannelse" uden anførselstegn lige på startskærmen, og klik på "Opret et gendannelsesdrev".
Når dit gendannelsesdrev er oprettet, vil Windows tilbyde at slette gendannelsespartitionen fra SSD-drevet.
Det er sikkert at acceptere dette, da du nu har gendannelsesflashdrevet med de samme data, så du ikke behøver SSD-partitionen. Hvis du starter fra gendannelsesflashdrevet, vil det gendanne hele SSD-layoutet, inklusive Windows og den gendannelsespartition, du sletter.
Formindsk C:-drevet
Højreklik på C:-drevet i Diskhåndtering, og vælg kommandoen Shrink fra dens kontekstmenu. I den næste dialog skal du indtaste den ønskede ledige diskplads, du gerne vil reservere.
Deaktiver dvaletilstand
Linux vil ikke montere NTFS-partitioner, hvis Windows har været i dvale, så det er nødvendigt at deaktivere dvale/dyb dvale fuldstændigt. Åbn kommandoprompten som administrator og skriv følgende kommando:
powercfg -dvale fra
Installation
Sluk for din Surface Pro 3. Tryk nu på og hold "+" lydstyrkeknappen nede, og tænd den. Den starter til UEFI-indstillinger, hvor du skal deaktivere funktionen Secure Boot. Med Secure Boot deaktiveret er det muligt at starte og installere et andet OS. Luk Surface Pro 3 ned igen.
Installer Debian Linux
Tilslut USB-drevet med Debian-opsætningen til USB-hubben. Tryk og hold volumenknappen "-" nede, og tænd for Surface Pro 3. Kør den ønskede opsætningstilstand (GUI/teksttilstand), og glem ikke at oprette linux-partitioner manuelt. Du kan oprette en rodpartition (/ ) og lægge alle monteringspunkter og endda swap-filen på den, hvis du ikke kan lide at have mange partitioner på dit drev.
GRUB2-indlæseren vil ikke blive skrevet til MBR på grund af UEFI. Det vil i stedet blive tilføjet til EFI kl
efi/debian/grubx64.efi
Fortsæt med at installere Debian. Når opsætningen er færdig, genstarter den Surface Pro 3, og Windows 8.1 vil blive indlæst.
Skriv på startskærmen genopretning igen, og klik Gendannelsesmuligheder i søgeresultaterne. Klik på "Genstart nu" i de avancerede opstartsindstillinger.
De avancerede opstartsindstillinger vil blive åbnet. Fortsæt med at bruge en enhed - > Debian.
Boot til Debian og rediger følgende fil:
/etc/default/grub
Fjern kommentaren til følgende linje:
GRUB_GFXMODE=640x480
Derefter skal du opdatere grub-konfigurationen med følgende kommando:
update-grub
Hvis du er irriteret over, at for at starte op i Debian, skal du vise Avanceret opstart hver gang fra Windows, det er muligt at indstille GRUB2 som standard EFI-opstartsmulighed. I Debian skal du skrive følgende kommando:
# efibootmgr... Startordre: 0000,0002,0001. Boot0000* USB-drev. Boot0001* Debian. Boot0002* Windows Boot Manager
Skift opstartssekvensen med følgende kommando:
# efibootmgr --bootorder 0000,0001,0002
Konfiguration af enheder
I Debian fungerer følgende enheder ikke ud af boksen:
- Trådløst internet
- Bluetooth
- Type Cover 3 med touchpad
- Stylus
- Touchskærm
Dette er uheldigt og ikke i orden. Lad os ordne det.
WiFi og Bluetooth
For at få disse to til at fungere, skal vi hente drivere fra leverandørens websted. Chippen er fra Marvell. Brug følgende kommandoer:
$ git klon git://git.marvell.com/mwifiex-firmware.git. # mkdir -p /lib/firmware/mrvl/ # cp mwifiex-firmware/mrvl/* /lib/firmware/mrvl/
Efter genstart bør du få WiFi og Bluetooth til at fungere.
Type Cover 3
Dette er mere alvorligt problem end trådløse enheder. For at få det til at fungere, skal vi omkompilere kernen og bruge den seneste kerne, v3.16. Vi kan hente det fra Debians eksperimentelle lager.
Tilføj følgende linje til /etc/apt/sources.list:
deb http://ftp.de.debian.org/debian eksperimentel hoved
Nu skal vi skaffe dens kilder:
# apt-get update. # apt-get -t eksperimentel installation linux-headers-3.16-trunk-amd64 linux-image-3.16-trunk-amd64 linux-source-3.16.
Pak kilder ud:
# tar -xf /usr/src/linux-source-3.16.tar.xz. # cd linux-source-3.16
Opret en ny typocover3.patch-fil med følgende indhold:
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_DI_3KMED_0x0713 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 @@ statisk void hid_scan_collection (struct h if (((parser->global.usage_page group = HID_GROUP_SENSOR_HUB; + + if (hid->leverandør == USB_VENDOR_ID_MICROSOFT && + hid->product == USB_DEVICE_ID_MS_TYPE_COVER_3 && + hid->group == HID_GROUP_MULTITOUCH) + hid->group = HID_GROUP_GENERIC; } statisk 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 },
Påfør nu plasteret:
patch -p1 --ignore-whitespace -i typecover3.patch
Kopier nu den aktuelle kernekonfiguration til brug med den nye kerne:
# cp /boot/config-`uname -r` .config. # lav menuconfig
Gem konfigurationen og forlad menukonfig-menuen. Der kræves ikke flere ændringer. Kompiler nu kernen:
# make-kpkg ren. # fakeroot make-kpkg --initrd --append-to-version=-typecover3 kernel_image kernel_headers
Det vil tage omkring en time. Du bør få to *.deb-pakker, som du skal installere:
# cd.. # dpkg -i linux-image*.deb linux-headers*.deb
Det er det. Genstart med den nye kerne, og Type Cover 3 burde virke.
Touchpad
Dette er ret simpelt, bare tilføj følgende tekst i filen /etc/X11/xorg.conf:
Sektion "InputClass" Identifier "Surface Pro 3 cover" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Mulighed "leverandør" "045e" Mulighed "produkt" "07dc" Mulighed "IgnoreAbsoluteAxes" "True" EndSection
Genstart igen. Alt vil fungere.
Installer nu laptop-mode-tools-pakken for at forbedre strømbesparelsen i Linux.
Det er det.
Afsluttende ord
Selvom det er muligt at få de fleste funktioner i Surface Pro 3 til at fungere under Linux, har den stadig et par problemer. Lydstyrkeknapperne virker ikke ud af æsken, ligeså vel som stylusknapperne. Og man forstår, accelerometersensoren virker heller ikke. Hvis du er i stand til at tolerere disse problemer, så kan du være tilfreds med Linux installeret på din Surface Pro 3-enhed. (via habr).