啟用Surface Book上Ubuntu的觸屏
我以前曾經嘗試著啟用Surface Book上Ubuntu的觸屏但是失敗了。幸運的是,有人發現了啟用觸屏的方法。。。針對於Surface
Pro 4的。 但基於他的方法,我進行了一些修改,成功的啟用了Surface Book上Ubuntu的觸屏。現在除了休眠時會睡死,一切正常。
在此,我會使用/u/cantenna1的kernel。
從Reddit /r/SurfaceLinux上的文章進行整理,修改和翻譯。
1.壓縮硬碟空間
右鍵開始菜單->磁碟管理,接著右鍵C盤分區,選擇壓縮卷,壓縮至你想要用的大小(我的最多可壓縮至120GB)。
2.創建Ubuntu引導盤
參見How to create a bootable USB stick on Windows
3.插入外接鍵鼠(可選)
鍵盤和觸控板在安裝和後續步驟是會不可用, 所以你需要插入外接鍵鼠。如果你閑的蛋疼,你可以使用Ubuntu安裝盤內置的OnBoard鍵盤(設置-> 通用輔助功能-> 打字 -> 屏幕鍵盤)
4.從USB啟動並安裝Ubuntu
關閉Surface, 按住電源和音量上鍵進入BIOS。修改啟動順序,使U盤先啟動。
然後可以從U盤啟動了。雖然原作者在安裝時全部選擇了默認選項,我還是建議進行自己分區(將/boot進行獨立分區)以防止破壞EFI分區(不要問我為什麼知道的,血的教訓啊)。
5.安裝Kernel
現在,你可以正常進入Ubuntu了。但是,現在還是有很多問題,比如鍵鼠不能用。你現在需要使用新的Kernel。我個人使用的是/u/cantenna1的kernel:
這個kernel可以觸屏,但是物理鍵會無法使用。同時,外接顯示器會有嚴重的顯示問題。
更加詳細的資料片可查看https://www.reddit.com/r/SurfaceLinux/comments/4vbzki/androidx86_with_the_new_ipts_driver/d5xs969 和其中/u/cantenna1與/u/arda_coskunses的評論。詳細的觸屏支持請查看ipts-linux-org/ipts-linux。WiFi驅動來自https://github.com/matthewwardrop/linux-surfacepro3/blob/master/wifi.patch 。
安裝的話,請下載https://mega.nz/#!nJJ2DSJZ!4BYSRvzp3hb6NxU5X6_38xFkpuUEmSNvRo2px2TCDqc並解壓文件。 打開終端,cd到文件夾並輸入以下指令:
sudo dpkg -i ./linux-headers-4.4.0-rc8touchkernel+_1_amd64.deb
sudo dpkg -i ./linux-image-4.4.0-rc8touchkernel+_1_amd64.deb
要讓觸屏工作,我們需要Windows分區的觸屏驅動。我們需要將這些文件從Windows分區拷貝到Ubuntu分區,以保證可以找到驅動。
註:如果你找不到或者刪掉了Windows分區的話你可以從此下載Surface Pro 4 Drivers and Firmware。選擇zip格式,然後你可以在Drivers/System/SurfaceTouchServicingML下找到觸屏驅動。
首先確保你的Windows分區已經掛載(最簡單的方法是在資源管理器里直接掛載)。現在在根目錄創建名為itouch的文件夾,並將驅動拷貝進去。
sudo mkdir /itouch
sudo cp /media/用戶名/磁碟名/Windows/INF/PreciseTouch/Intel/* /itouch
你現在需要創建鏈接使驅動可以被搜索到。
sudo ln -sf /itouch/SurfaceTouchServicingKernelSKLMSHW0076.bin /itouch/vendor_kernel_skl.bin
sudo ln -sf /itouch/SurfaceTouchServicingSFTConfigMSHW0076.bin /itouch/integ_sft_cfg_skl.bin
sudo ln -sf /itouch/SurfaceTouchServicingDescriptorMSHW0076.bin /itouch/vendor_descriptor.bin
sudo ln -sf /itouch/iaPreciseTouchDescriptor.bin /itouch/integ_descriptor.bin
7.修改默認Kernel
所有驅動已經安裝完,但是系統不一定會啟動到正確的Kernel。你可以在啟動時在grub手動選擇Advanced
options for Ubuntu -> Ubuntu, with Linux
4.4.0-rc8touchkernel+。要改變默認的Kernel你需要修改grub(我用的是-customizerHow to Configure the Linux Grub2 Boot Menu the Easy Way)。
8.防止自動休眠
一旦休眠,你的電腦會睡的死死的。要防止蓋上後自動休眠,輸入以下指令:
sudo gedit /etc/UPower/UPower.conf
然後把IgnoreLid=false改成IgnoreLid=true。
對於Gnome,你需要在gnome-tweak-tool關閉休眠。
原創文章,來源為我的博客:Enable touch on Ubuntu on Surface Book
推薦閱讀:
TAG:Windows10 | Linux | SurfaceBook |