1. 程式人生 > >18.04 作死升級踩坑記

18.04 作死升級踩坑記

最近正好專案空閒期,看到系統推送之後突然腦抽,明明深知知“升級系統搞幾天”這條真理我還是毅然決然地作死點了升級。。

果不其然,自動升級彈出失敗彈窗。。。

升級失敗

1. 升級失敗

    沒辦法,根據經驗,這個時候要不就再試一次,要不就回復之前系統,或者重啟試試運氣。。於是我繼續作死選擇了第三個選項=_=,過程很愉快,當然是進入不了系統啦。嘗試在advanced mode裡面選擇修復系統也沒有幫助。而過程中我嘗試了重灌了lightdm,得到的結論只是能開啟登入頁面,但是完全無法完成登入,說無法連結session。可以斷定圖形使用者介面壞掉了。

悲劇

2. 補庫

    原來Ubuntu18.04 的圖形使用者介面不再使用之前16.04 的Unity,取而代之的是又迴歸gnome,估計是在安裝gnome的時候出錯了,而升級程式又幹掉了Unity。。。怎麼banner(辦呢)?嘗試重灌Ubuntu-desktop,報錯,說缺依賴庫,嘗試修復broken package,依然報錯,於是我到嘗試修復broken package選項中不選continue,先看detail,發現有好多庫都出問題,然後貌似沒法自動修復。於是我使用最笨的辦法,一個一個地使用apt-get來重新安裝。。然而用apt-get install -f 來fix是失敗的,所以為什麼我只能一個一個安裝。

broken packages

3. 重灌Ubuntu-desktop

    然而當我安裝完這些broken package的時候發現Ubuntu-desktop依然安裝不了,還是報缺依賴庫,用aptitude來裝告訴我有好幾個庫都有版本問題(Depends: AAA(=xxx.xxx)),這個時候我只好先拿第一個出現問題的依賴庫來嘗試指定版本重灌,命令如下:

apt-get install --reinstall AAA=xxx.xxx

因為安裝過程中沒有截圖,我不記得具體是那個庫了,然而,重灌該版本庫成功之後再嘗試重灌Ubuntu-desktop,居然就可以順利地安裝了,安裝完成之後reboot,成功進入圖形使用者介面!

4. chrome

    重灌之後發現好幾個應用都沒了不得不重新安裝,首先是chrome

新增源:

wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list

安裝:

sudo apt-get update

sudo apt-get -y install google-chrome-stable

安裝完成,值得一提的是雖然google網站被牆,但是源在我重灌的時候還是可以訪問的。

5. SS你懂的梯子

在github上的官網給的Debian CN連結中的源下載的ss-qt安裝不了,提示缺依賴庫,然後我找了半天也找不到提示要的依賴庫,於是只能求助其他方面,找到了一個解決方案:

使用Ubnutu18.04安裝Shadowsocks-Qt5時

同樣使用

sudo add-apt-repository ppa:hzwhuang/ss-qt5

新增源,但是ppa:hzwhuang/ss-qt5 並沒有18.04版本的源,所以再執行update時會出現

E: 倉庫 “http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu bionic Release” 沒有 Release 檔案 的錯誤。

這時,只要編輯/etc/apt/sources.list.d/hzwhuang-ubuntu-ss-qt5-bionic.list 檔案,將bionic (18.04版本代號)改成xenial(16.04版本代號)。

然後再執行

sudo apt-get update

成功之後就是

sudo apt-get install shadowsocks-qt5

完成。

6. rabbitVCS

雖然系統有svn可以用,但是不是圖形使用者介面,在檢視程式碼更改情況還是比較麻煩,於是rabbitVCS還是必須的,更新系統之後被幹掉了,只好重灌,到官網安裝過程不表述。

但是在這裡會有個坑,就是使用的過程中會突然出現Files are identical 問題,就是說無法檢視程式碼更改情況,這搞什麼。。

原因是 0.16-1.1版本的bug

解決方案:

sudo apt-add-repository "deb http://us.archive.ubuntu.com/ubuntu xenial universe"

sudo apt install rabbitvcs-core=0.16-1

sudo apt-mark hold rabbitvcs-core

7. 中文輸入法

好了,作為中文人,肯定需要用到中文輸入法,而貌似Ubuntu似乎對中文輸入不大友好,於是這個神坑大頭我放在比較後的地方解決,因為即使沒有中文輸入法也對平常的工作影響不大。

本身在16.04我是安裝了基於fcitx的搜狗輸入法的,用起來也算正常,升級系統直接不能用,只好嘗試重灌,先重灌fcitx,這個直接apt-get就可以,不再表述,搜狗輸入法本身的安裝可在官網下載,然後dpkg -i 即可。

安裝完成之後記得要在語言地區那裡將鍵盤輸入法選擇fcitx然後退出登入重新登入一下。

輸入法

然而問題來了,裝完以後依然沒反應。。不過主要是在右上角小鍵盤圖示裡點選configure沒反應。這個時候我Show Application然後選擇fcitx config 然後新增sogou pinyin, 於是貌似成功了,在系統大部分應用上都能使用中文輸入法了。

show application

fcitx configure

新增sogou拼音

然而,問題繼續,在wineTIM和各種開發工具中依然無法使用中文輸入法。。開發工具還好說,頂多使用英文註釋,但是在TIM-QQ不能使用中文輸入法這就影響工作交流了,還是需要解決。查了好多資料,都說要在環境變數以及執行指令碼上新增fcitx支援

export [email protected]=fcitxexport

QT_IM_MODULE=fcitxexport

GTK_IM_MODULE="fcitx

在16.04加上這三句的確就可以了,但是在18.04還是沒有反應,又看到有說與IBus衝突,提議解除安裝IBus的,我都照做,依然沒反應。這個時候被我搜到了一個說法,就是要重啟fcitx服務就會好了。https://blog.csdn.net/manjianchao/article/details/53642100 使用終端嘗試一下,居然還真的可以了。寫個指令碼讓它在啟動的時候自己重啟一遍。

fcitx 指令碼

記得chmod +x , 然後在startup裡面新增這個指令碼,reboot,成功。

8. 雙擊執行.sh指令碼

    為了打包釋出和各種開發方便,我寫了不少自動化指令碼,都是雙擊執行才方便,但是升級到18.04以後不能雙擊運行了,解決方案如下:

需要安裝 dconf-editor

sudo apt-get install dconf-editor

輸入dconf-editor開啟dconf-editor

dconf-editor

org->gnome->natuilus->preferences->executable-text-activation

自定義值改為ask 

未解決:

鎖屏快捷鍵。。。 試了好多種方案依然不生效。。。也就只有這個組合快捷鍵不生效。。。