https://www.linuxidc.com/Linux/2018-06/152993.htm
初次聽說過Linux的時候,是大一計算機課時候老師介紹說除了Windows還有Linux、Unix操作系統。但真正接觸Linux是為管理虛擬專用服務器(VPS),都說Ubuntu適合新手於是接觸了是Ubuntu 10.10(Maverick Meerkat)。從此愛上了Linux。雖然之后我使用CentOS的時間長於別的Linux Distribution,但Ubuntu從沒有離開過我的電腦。如今都發行到了Ubuntu 18.04(Bionic Beaver)。
0x00 Ubuntu 18.04的安裝
1.Ubuntu每年都會在4月與10月份發布一個版本的更新,而每兩年發布一個LTS長期支援版本,其支援期限長達5年,而非LTS版本的支援通常只有半年。而18.04是2016年之后發行的第一個LTS版本,作為一個喜歡嘗鮮的Linuxer來說,肯定第一時間也安裝了Ubuntu 18.04 LTS。
2.Ubuntu18.04的安裝與之前的發行版並沒有什么區別。由於我的生產環境Ubuntu16.10中程序較多,被DIY的較多,因而並沒有在實體機中安裝Ubuntu 18.04,而是在VirtualBox中安裝的。
3.在安裝類型中,我選擇了其他選項,因為這樣可以自己創建、調整分區,或者為Ubuntu選擇多個分區。
4.對於分區來說,特別是在虛擬機中,建議/掛載點划分15G左右,/boot大概128MB左右,/swap分區大概2G左右,剩余空間划分為/home。
由於我在虛擬機里分區的划分大小與設備都是很隨意的配置了一下,不過還是應該按照個人的實際情況來安裝配置。對於初次安裝Linux的人來說,機子配置還可以的話,直接划分/與/home即可。
5.之后耐心等待就可以完成Ubuntu 18.04的安裝了,總體安裝還是非常的快的,當然如果你勾選了網絡下載更新的話,那么會根據你的網速來決定你的安裝過程。安裝完畢后,提示重啟,之后就可以進入Ubuntu 18.04的桌面了。
6.進入系統后會發現又是那個熟悉的Gnome圖形界面,這里不得不吐槽下從Ubuntu11.04到Ubuntu17.10的過程中圖形界面為Unity,我覺得是一個非常不友好的圖形界面,反正在Unity統治Ubuntu的6年半時間里,我基本都會在第一時間將其更換為Gnome。
0x01 Ubuntu 18.04新特性與體驗
新版Gnome
剛才我還吐槽了Unity的同時贊美了Gnome。而隨Ubuntu 18.04一起到來的還有Gnome3.28。
由於在上一個LTS版本的Ubuntu中,Unity依舊為主流的桌面環境,Gnome3.28的到來標志着新統一風格定制的Gnome3.0桌面在長期支援版上的到了支持。
Suru圖片的納入
喜歡Linux的人一定還記得Ubuntu Touch吧!這個由Ubuntu衍生而來的移動操作系統,當初Suru作為一個開源圖標項目,就是專門為Ubuntu Touch設計的,如今已經完全的融入到了Ubuntu 18.04LTS,那些當初設計的圖標已經被重新用於Gnome主題圖標相對應。當然出了之前設計的圖標外,此次還在Sura項目中加入了很多文件夾與文件類型的圖標。
具體樣式可以參考Suru官網。
# Project Suru
全新Emoji支援
Firefox最近在about:config中終於可以啟開了內置Emoji,而查閱一下關於FirefoxEmoji支援,你會發現其最早是在Mozilla Firefox 50就引入了內置Emoji,不過最先只是給Gnu/Linux與Win8這類原生不帶Emoji的系統啟用的,你就可以知道Linux對Emoji的支援應該不是那么滿意(Fedora除外哈!)該版本的Ubuntu中為了保持平台間的一致性,其默認使用了Noto Color Emoji(AOSP中也使用了該字體)字體,其支援最新的Unicode版本中定義的所有Emoji符號,且在該版本的Ubuntu中GTK程序中添加Emoji非常的簡單。
Gnome To Do
作為一個重度健忘症患者,在使用Windows和Android的時候,我一直都是用Microsoft To-Do來最為待辦事項管理,不過沒有想到在這個版本的Gnome中竟然自帶了這個功能。
Minimize on Click
該功能類似於Windows的任務欄,點擊軟件圖標可以最小化窗口或者還原窗口。只不過點擊的位置換成了Ubuntu Dock上了。不過略有遺憾的就是該功能默認情況下為關閉的,不過可以通過以下命令啟用該功能。
#啟用Minimize on Click
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
Gstreamer Multimedia Codecs解碼器的加入
在安裝Ubuntu 18.04的時候就默認加入了第三方解碼器Gstreamer Multimedia Codecs,這個讓人挺意外的,其可以讓我們實現在線視頻觀看和改進圖形顯卡的支援。當然不包括那些受限於Adobe Flash和專有驅動程序。
夜間模式
和Windows10 April更新一樣,加入了夜間模式,對於在學校半夜斷電后,還在玩電腦的同學來說,是一個非常貼心的功能。
除此之外,Ubuntu 18.04還使用Linux Kernel 4.15,並且恢復了Xorg為默認顯示服務等。這些新的特性都在預示着新的Ubuntu系統是一個很優秀的桌面Linux Distribution。
0x02 Ubuntu 18.04軟件安裝與體驗
更換更新源
為了讓軟件下載與系統更新更快點,推薦將更新源改為國內的更新源。這里推薦使用阿里雲的更新源。
#阿里雲更新源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
更換方法:
sudo vim /etc/apt/sources.list
將文件的內容替換為阿里雲的更新源,:wq保存
sudo apt update
sudo apt upgrade
安裝搜狗輸入法
其實我感覺Ubuntu現在默認的輸入法還是不錯的,當然沒有搜狗輸入法好用,好在搜狗輸入法也提供了Linux版本。
#Sogou for Linux
https://pinyin.sogou.com/linux/?r=pinyin
下載后進入下載目錄,嘗試安裝軟件,之后安裝依賴后重新安裝即可。
#搜狗輸入法安裝
sudo dpkg -i sogoupinyin2.2.0.0108amd64.deb
sudoapt-get install -f
sudo dpkg-i sogoupinyin2.2.0.0108amd64.deb
安裝好后,在系統設置中語言部分將鍵盤輸入法系統改為fcitx。之后重啟系統。在fcitx的配置中設置搜狗輸入法為默認即可。
網易雲安裝
網易雲的安裝和搜狗輸入法的一樣,不過不用配置非常的簡單。
#網易雲下載
http://music.163.com/#/download
官網下載好后,進入下載目錄。
sudo dpkg-i netease-cloud-music1.1.0amd64_ubuntu.deb
sudoapt-get install -f
sudo dpkg-i netease-cloud-music1.1.0amd64_ubuntu.deb
不出意外的話,安裝完畢后你是無法打開的,貌似是這個版本的Bug。
不過可以通過修改權限來完成,不過修改后需要重啟。
cd ~/.cache
chmod 777netease-cloud-music
reboot
之后就可以在Ubuntu 18.04中欣賞音樂了。
QQ安裝
由於QQ沒有提供Linux版本的程序,所以一般情況下都用wine來安裝,不過wine的配置略麻煩,所以推薦使用appimage的方式來安裝。
#QQ Appimage 下載
https://yun.tzmm.com.cn/index.php/s/XRbfi6aOIjv5gwj/download
下載好程序后,右鍵屬性——允許作為程序執行文件勾選即可。或者chmod +x download。
剩下的程序就可以用過APP Store或者Snap Store安裝即可。
0x03 關於Snap
Snap是Ubuntu母公司Canonical於2016年4月發布Ubuntu16.04時候引入的一種安全的、易於管理的、沙盒化的軟件包格式,與傳統的dpkg/apt有着很大的區別。
Snap可以讓開發者將他們的軟件更新包隨時發布給用戶,而不必等待發行版的更新周期;其次Snap應用可以同時安裝多個版本的軟件,比如安裝Python2.7和Python3.3。
我初次接觸Snap的時候是安裝NextCloud,通過Snap的方式來安裝NextCloud,很快就可以完成安裝與部署。
0x04 使用Snap安裝主題與美化
每天都要面對的操作系統,有一個漂亮的主題那么心情會愉悅很多,而我個人使用的是flatabulous-theme。非常的漂亮,不過其沒有snap包,所以今天安裝另一款也很好看的主題communitheme。
主題安裝
方案一:SnapStore
在App Store中搜搜communitheme即可,之后點擊安裝即可。
方案二:Snap命令安裝
這里我通過edge通道進行安裝,也可以通過GTK+3、Qt frameworks、stable等通道進行安裝。
sudo snapinstall communitheme –edge
sudo snaprefresh
安裝好后,重啟后在登陸界面選擇小齒輪設置為新的主題即可。
是不是發現Theme的風格已經發生了改變,特別是左下角的的Ubuntu Logo特別的帥。
圖標安裝與設置
圖標包我非常喜歡的是Numix這個系列的圖標,特別是其中的numix-icon-theme-circle。那么就安裝numix-icon-theme-circle這套圖標包了。
#Numix-icon-theme-circle
sudoadd-apt-repository ppa:numix/ppa
sudoapt-get update
sudoapt-get install numix-icon-theme-circle
圖標包安裝好了設置使用上該套圖標包還需要使用Gnome Tweak,安裝方法也是通過到AppStore中搜索Gnome Tweak即可,也可以通過sudo apt-get install gnome-tweak-tool來完成安裝。由於系統是中文系統,該軟件中文名叫做“優化”。
在圖標部分選擇Numix-Circle即可。
總體來說這套圖標還是顏值很高的。
0x05 使用Snap安裝軟件及基礎教程
Snap安裝軟件也是非常的方便僅僅需要一個命令即可完成安裝,當然如果這樣做你就不能完全理解Snap的設計的完美。
Snap安裝軟件
VLC安裝
一般怎么用Snap安裝軟件呢?這里以VLC為例。
1.首先查看你是否通過Ubuntu One登陸Snap。
snap whoami
2.如果顯示空郵箱的話,那么說明你沒有登陸,你可以通過一下命令通過Ubuntu One登陸Snap。
snap login
3.此處分割線,其實以上過程可以省略,只是為了更加標准一點啦!
4.首先在SnapStore中尋找VLC。
snap find vlc
可以通過結果看出,VLC的Snap包的確就叫vlc,這個就很尷尬了,感覺多弄了一步,不顧沒關系這里主要是告訴你如何使用Snap搜索軟件。
5.為了在次確認VLC的軟件包,我可以查詢更多的信息。
snap info vlc
在確定了vlc的信息后,還可以看到各個通道中的Snap包的情況。
6.安裝VLC,如果你已經通過Ubuntu One登陸了Snap,一下命令可以省略了sudo。其默認是通過stable通道進行下載安裝的。
snap install vlc
安裝好后也可以通過vlc –version來查看VLC的版本。
7.默認情況下,是通過stable的通道進行安裝的(還記得之前安裝communitheme時候我用的edge通道嗎?)。當然即使你安裝好了stable通道的VLC,當然也還可以切換到別的通道。
snap switch–channel=candidate vlc
snap refresh
之后就切換到了candidate(候選發行版)的vlc了,你可以通過剛才的vlc –-version來查看你你的vlc版本。
8.看似很簡單的Snap是不是就完了呢?基本可以這么說吧!不過還有一個snap run -shell的命令呢。通過snap run -shel vlc可以給你一個shell讓你擁有更多的snap權利。
你可以在/snap中找到snap的文件。再其二級目錄中有一個和snap軟件包一樣的目錄,如/snap/vlc/。由於之前我也說了,Snap的一個優點就是可以安裝不同版本的同一個軟件,至於你現在使用的版本的文件其在/snap/vlc/current/中。在meta/snap.yaml中,我可以可以獲取到snapcraft的配置文件。
Telegram
Telegram是近年來比較流行的即使聊天軟件,也是非常完美的融入了我的生活,至於這個軟件怎么使用呢?自己Google吧!!!安裝的方法和VLC一樣,不過我覺得你都會來安裝Telegram,那么Snap你估計也很熟悉了吧!這里直接安裝Telegram。
#Telegram Snap App
sudo snap install telegram-sergiusens
Snap安裝軟件時候,終端會有白色進度條顯示下載百分比,非常的人性。
Snap基礎教程
其實基礎教程應該在實戰之前,不過我覺得實戰才是最好的學習方法,所以先寫了Snap安裝軟件的方法。相比你現在都已經學會了幾個Snap的基本用法了。
#查詢已經安裝了的軟件
sudo snap list
#搜索要安裝的Snap軟件包
sudo snap find xxxx
#查看Snap軟件的更多信息
sudo snap info xxxx
#安裝Snap軟件包
sudo snap install xxxx
#更換軟件安裝通道
sudo snap switch –channel=xxxx xxxx
#更新Snap軟件包
sudo snap refresh xxxx
#還原到之前版本
sudo snap revert xxxx
#卸載Snap軟件
sudo snap remove xxxx
當然光靠命令你想搜索什么snap軟件包也是一頭霧水吧!可以去uappexplorer里查詢下,有什么snap軟件包呢!喜歡的就都安裝上。
#Uappexplorer
https://uappexplorer.com/snaps
0x06 將軟件打包為Snap軟件
Snapcraft是用來構建snaps的軟件,他使用也非常的簡單,我們僅僅需要寫一個snapcraft.yaml的配置文件即可。接下來就用Snapcraft打包一下GNU項目里的hello和bash。先從hello開始。
由於Ubuntu 18.04LTS中已經安裝有Snapcraft了,我們就不需要在去apt安裝了。可以直接開始打包我們的snap軟件。
初始打包
1.創建一個打包snap的目錄hello。
mkdir hello
cd hello
2.初始化snapcraft。
snapcraft init
3.使用vim編輯配置文件snapcraft.yaml。
vim snap/snapcraft.yaml
將其修改為以下內容。
name:描述這個snap軟件的名稱
version:描述這個軟件的版本,可以用ascii碼。
summary:對軟件的一個總結。
Description:對軟件進行一個描述。
grade:軟件的發行通道。
confinement:對軟件做一個限制,如devmode或者strict。
之后按照格式定義以下parts。
其中source表示打包軟件的來源,plugin表示此軟件安裝時候需要的一些依賴關系,使用autotools即可。
4.編譯snap打包軟件。
snapcraft
由於我們的source需要從GNU的ftp服務器上下載程序,待下載好后,其會自動打包編譯。
5.之后進行測試安裝。
sudo snap install --devmode hello2.10amd64.snap
可以通過snap list查看是否安裝成功,注意看Notes部分,其為devmode。
6.進行測試,輸入hello命令。
神馬??竟然抱錯了。當然你肯定會想用which hello進行檢查。不過我可以告訴你答案,hello的二進制文件在/snap/bin里,是不是明白哪里出問題了?
Snap全局命令
我們已經知道了為什么hello不能成為全局命令了,當然也還是只能通過修改snapcraft.yaml配置文件來使之成為全局命令。
1.修改snapcraft.yaml,添加一個apps部分,使命令hello指向bin/hello即可。
2.迭代你的snap打包軟件。
snapcraft prime
3.之后再次嘗試hello命令,終於生效了。
Snap打包進階
1.為了讓我們的snap更有意思一點,我們添加一個新的parts和apps。
2.之后我們重新執行。
Snapcraft prime
毫無疑問你肯定會報錯失敗。為什么呢??因為gnu-hello和gnu-bash兩個不同的parts都將定向到了一個share/info/dir里,這里就發生了沖突。
3.其實在執行snapcraft的時候,類似於執行./configure,這里只用給./configure一個參數即可。那么snapcraft.yaml配置文件可以這么修改。
這相當於將—infodir=/var/bash/info作為一個參數傳遞給了./configure。
3.之后重新編譯。
snapcraft clean gnu-bash -s build
這里的clean只是相當於重新構架了一下gnu-bash,並不需要重新下載gnu-bash,當然可以snapcraft成功了。
4.之后重新測試。
sudo snap try --devmode prime
5.之后再次測試hello和hello.bash命令,看看是否能進入這個子shell。
之后通過env查詢當前的環境,確認進入子shell,要退出的話,按q哦!
刪除devmode
之前通過snap list可以看出Notes部分標記hello為devmode,既然我們都測試完畢了,那么是時候改為strict了。
1.修改配置文件snapcraft.yaml。
將devmode修改為strict;其實也可以將grade后面的devel修改為stable了。
2.再次snapscraft一下。
3.你可以嘗試安裝它。
sudo snap install hello2.10amd64.snap
不出意外會報錯:error: cannot find signatures with metadata for snap "hello2.10amd64.snap"。
4.為什么會報錯呢?是由於我們的軟件沒有經過Snap Store簽名,而之前的安裝是因為是devmode所以可以被安裝,因而要在本地安裝非devmode的snap時候,需要加入—dangerous選項。
之后snap打包后的hello即可被安裝,在通過snap list看一下,Notes部分已經沒有devmode的字樣了。而程序也可以正常的運行。
0x07 總結
Ubuntu 18.04 LTS經過開源社區及個人開發者的努力已經越來越完善了,軟件數量豐富,美化資源也不少。雖然具有革命意義的Snap軟件格式包的出現,讓我們對Linux的上手更加的容易。