[ 還沒有寫完,等加了圖會(huì)更好一點(diǎn)安吁,一路填坑一路記錄 ]
終于,擺脫了windows燃辖,去了linux鬼店。
前言
已經(jīng)學(xué)了5年的計(jì)算機(jī)了,都沒有正兒八經(jīng)的用一用linux黔龟。在開始讀研的時(shí)候妇智,跟大我?guī)讓玫呐笥殉鋈コ燥埲贩校馔獾谋粏柕絣inux操作熟不熟,然后收到了一頓鄙視俘陷。
所以大概不懂得linux操作的人罗捎,應(yīng)用技術(shù)的場(chǎng)景非常非常少,更別談分布式之類的技術(shù)了拉盾。畢竟桨菜,整個(gè)后端都要在linux上奔跑才行。
事實(shí)上捉偏,我已經(jīng)用了接近兩年的mac倒得,只不過在強(qiáng)有力的GUI支持下,一直都只是以一種“更好看”的系統(tǒng)的體驗(yàn)在使用夭禽。
在一段時(shí)間的積累下霞掺,今天開始把實(shí)驗(yàn)室的主力機(jī)更換成linux了。
另外一種雙系統(tǒng)
第一個(gè)遇到的問題讹躯,毫無疑問就是安裝菩彬。
在華為項(xiàng)目的強(qiáng)力驅(qū)動(dòng)下,在我的可憐的電腦里潮梯,始終要存放一個(gè)Windows的環(huán)境骗灶,進(jìn)而,問題就出現(xiàn)了秉馏。怎么去安裝一個(gè)雙系統(tǒng)耙旦。
一般來說,雙系統(tǒng)有兩種形式:
- 虛擬機(jī)
- 單硬盤雙系統(tǒng)
- 雙硬盤雙系統(tǒng)
虛擬機(jī)就不用多少了萝究,基本上快速安裝一下就好免都。而單硬盤雙系統(tǒng)也是如此,網(wǎng)上有一大堆教程帆竹,當(dāng)你安裝的時(shí)候绕娘,只需要考慮如何分區(qū),然后把引導(dǎo)建在/boot下即可馆揉。
現(xiàn)在問題是业舍,我的電腦是兩塊硬盤,一塊windows升酣,而另外一塊希望做成Linux舷暮,這非常的尷尬。因?yàn)槲抑皣L試過很多次噩茄,將引導(dǎo)放在/boot下是沒有辦法引導(dǎo)起來的(就是網(wǎng)上那些easy bcd引導(dǎo)的教程)下面。最終,這次直接將引導(dǎo)掛在了整塊磁盤上绩聘,終于成功了沥割。
事實(shí)上邏輯是這樣耗啦,
首先,我選擇了一個(gè)叫做openSUSE的系統(tǒng)机杜,他的logo是一個(gè)綠色的蜥蜴??帜讲,號(hào)稱自動(dòng)配置雙系統(tǒng),這是我這次嘗試的主要?jiǎng)恿Α?/p>
其次椒拗,我的電腦是不支持UEFI啟動(dòng)了老電腦 - - 似将,在安裝的過程中,不要通過UEFI啟動(dòng)U盤蚀苛,然后進(jìn)去安裝系統(tǒng)在验,沒有要求配置/boot,想必是自動(dòng)配置堵未,然后配置一下用戶信息腋舌,就可以安裝完成。
后來渗蟹,我嘗試了一下這樣配置Linux块饺,發(fā)現(xiàn)如果是UEFI的ubuntu,在安裝的時(shí)候掛載好/boot/efi之后拙徽,將引導(dǎo)直接掛載整個(gè)第二塊磁盤上刨沦,就可以在啟動(dòng)菜單里選擇硬盤啟動(dòng)進(jìn)行引導(dǎo),不過很明顯沒有能夠找到win的引導(dǎo)膘怕。不過問題不大,因?yàn)橹匦逻M(jìn)入引導(dǎo)菜單選擇win的硬盤啟動(dòng)就可以了召庞。
配置
事實(shí)上岛心,在整個(gè)安裝的過程中,我裝了四五種linux發(fā)行版篮灼,但都不太好使忘古,特別是ubuntu,3分鐘一個(gè)錯(cuò)誤彈窗诅诱。髓堪。。不知道是不是電腦的問題娘荡,還是本身就是這樣 - -
在openSUSE的使用過程中干旁,幾乎沒有異常彈窗,只有一次提示了硬盤空間不足炮沐,所以建議新手想要嘗試linux的時(shí)候争群,可以從openSUSE開始入門。
分區(qū)
分區(qū)是最害怕的一件事情大年,因?yàn)殡S時(shí)可能會(huì)導(dǎo)致數(shù)據(jù)丟失换薄,好在在linux安裝的過程中玉雾,會(huì)先進(jìn)行預(yù)覽分區(qū),一直到正式安裝之前都不會(huì)格式化硬盤轻要,還會(huì)一直詢問你是不是真的確認(rèn)要這么干复旬。在openSUSE中更直白一點(diǎn):如果你不知道你在做什么的話,請(qǐng)不要繼續(xù)
冲泥。驹碍。。
在分區(qū)的過程中柏蘑,遇到過兩個(gè)問題:
- gpt標(biāo)簽問題
這個(gè)問題在我從非UEFI引導(dǎo)的啟動(dòng)菜單中進(jìn)入的時(shí)候幸冻,就沒有這個(gè)提示了。
我的意思是:在我的電腦上咳焚,插上優(yōu)盤啟動(dòng)后洽损,會(huì)看見兩個(gè)U盤啟動(dòng),一個(gè)是UEFI開頭的革半,一個(gè)是普通的storage碑定。從storage進(jìn)入之后,不會(huì)要求修改硬盤標(biāo)簽又官。
- 分區(qū)大小
這次感受了一下Linux的分區(qū)延刘,主要的分區(qū)大概分這么幾個(gè)
- /boot
- swap
- /home
- /
- /usr
- /var
這是幾個(gè)占得比較大的部分。在使用的過程中六敬,我的電腦出現(xiàn)過一次錯(cuò)誤提示說硬盤空間不足碘赖,發(fā)現(xiàn)/目錄下,也就是系統(tǒng)目錄空間不足外构。
我在安裝系統(tǒng)的時(shí)候普泡,給 /
分配了16G,給/home
分配了60G审编,給swap
分配了16G撼班,其他都是默認(rèn)配置,在這種情況下安裝完成后垒酬,/
僅有8G的大小砰嘁,想來是系統(tǒng)接管了一部分。 網(wǎng)上有一些lvm下調(diào)整空間的方案勘究,但是我一個(gè)小白還不太能理解前言后語矮湘,因此我直接重裝了系統(tǒng),給了/
32G乱顾。
其實(shí)問題在于板祝,網(wǎng)上很多教程告訴用戶,
/
分配10G就可以了走净。券时。孤里。難道這些人不開發(fā)的么,maven橘洞、docker捌袜、jdk、git炸枣、nginx還有很多日志都是默認(rèn)在/
下面虏等,特別是直接用包管理工具安裝的應(yīng)用。這么點(diǎn)空間讓用戶怎么玩适肠。霍衫。。
以后還是搞一個(gè)50G的系統(tǒng)盤侯养,配上一個(gè)200G的/home
來使用吧敦跌。
Gnome
Gnome是一個(gè)桌面環(huán)境,在Linux中桌面環(huán)境與內(nèi)核是分開的逛揩,可以一套內(nèi)核使用多種桌面柠傍。貌似一般Linux環(huán)境下都提供了兩個(gè)基礎(chǔ)的桌面分別是KDE和Gnome,ubuntu之前用的是unity辩稽,不過最近宣稱也要換成Gnome了惧笛。
Gnome在一定程度上感覺像極了mac,雖然軟件質(zhì)量講真不是一個(gè)量級(jí)逞泄,但是起碼從windows的傳統(tǒng)樣式中脫離了出來患整。采用了類似launchpad的啟動(dòng)器,和比windows搜索快得多的搜索方式喷众。
不過這里要說的是兩個(gè)方面并级,一個(gè)是gnome的主題,一個(gè)是gnome的插件侮腹。
主題
其實(shí)我還沒有開始使用主題,這塊后臺(tái)再補(bǔ)稻励。
插件
下面是一些主要的插件:
- Drop Down Terminal 一個(gè)下拉觸發(fā)的終端非常好用父阻,快捷鍵是tab上面那個(gè)鍵,這個(gè)快捷鍵的說明看了好多遍才理解 - -
- Clipboard Indicator 一個(gè)簡(jiǎn)單的剪切板管理望抽,快捷鍵是Ctrl + F9
- NetSpeed 一個(gè)在狀態(tài)欄顯示網(wǎng)速的插件
- Dash to dock 固定dock
- Places Status Indicator 一個(gè)快捷的訪問home/圖片等等路徑的下拉菜單
- Wikipedia Search Provider 在本地搜索時(shí)生成wiki
- TopIcons 將托盤圖標(biāo)放到狀態(tài)欄上
- Recent Items 在狀態(tài)欄顯示最近訪問的文件
安裝應(yīng)用
對(duì)于安裝應(yīng)用來說加矛,openSUSE有一個(gè)非常酷的網(wǎng)站叫做 PackageSearch煤篙,上面登記了非常多的應(yīng)用和擴(kuò)展斟览,可以直接搜索獲得結(jié)果,并通過提供的一鍵安裝直接裝到系統(tǒng)中辑奈。
日常
從日常開始苛茂,日骋芽荆基本上在做的事情大約是文檔、markdown妓羊、視頻胯究、pdf、詞典躁绸、截圖裕循、聊天、音樂净刮。
基本上作為一個(gè)開發(fā)機(jī)剥哑,擁有這些內(nèi)容就足夠了,下面簡(jiǎn)單介紹一下各個(gè)部分的內(nèi)容淹父。
視頻
flash
雖然在mac上flash唄唾棄的不成樣子渗勘,但是離開了flash在國內(nèi)的視頻網(wǎng)站上也是活不下去的。之前的媽媽再也不用擔(dān)心發(fā)燙
計(jì)劃好像現(xiàn)在也失效了很多很多川陆。
但是flash的安裝非常的容易辜限,只需要在嵌入flash的視頻播放頁面點(diǎn)擊安裝flash就可以跳轉(zhuǎn)到flash的安裝頁面,下載并安裝即可穷吮。然后去播放頁一刷新逻翁,?︿( ̄︶ ̄)︿。
聊天
微信
在windows的世界里捡鱼,裝一個(gè)聊天軟件簡(jiǎn)直容易八回。在linux下面便得非常的難,ubuntu之類的應(yīng)用商店里有的提供了一些qq或者微信驾诈,但在大部分系統(tǒng)里還是要自己折騰缠诅。
在openSUSE中,有一個(gè)開源項(xiàng)目electronic wechat乍迄,提供了在linux上封裝的web版本wechat管引。
同樣的,解壓完成就可以運(yùn)行闯两。在確定能夠運(yùn)行后褥伴,可以在/usr/share/applications
文件夾內(nèi)添加一個(gè)wechat.desktop。這是Gnome生成桌面應(yīng)用的方式漾狼,符合標(biāo)準(zhǔn)即可重慢。
[Desktop Entry]
Name=Wechat
Exec=替換成wechat運(yùn)行的路徑
Comment=Wechat
Icon=替換成wechat的logo的路徑->自己下載一個(gè)微信的png放在運(yùn)行同文件夾內(nèi)比較好
Type=Application
Terminal=false
Encoding=UTF-8
編輯和創(chuàng)建都需要sudo權(quán)限的支持,創(chuàng)建完成后即可在搜索內(nèi)搜到并打開逊躁∷契猓可能存在部分打開出現(xiàn)異常的情況,重啟就好。
郵件
to be continue...
音樂
宇宙第一播放器 網(wǎng)易云音樂
網(wǎng)易云音樂官網(wǎng)有deb格式的包核芽,用來給ubuntu安裝囚戚,但是顯然openSUSE這類使用rpm安裝的沒有被照顧,不過好在也有辦法來處理狞洋。不過稍微麻煩一點(diǎn)弯淘。
- 在openSUSE的軟件搜索頁面搜索
netease-cloud-music
,可以得到網(wǎng)易云音樂的包吉懊,點(diǎn)進(jìn)去進(jìn)行一鍵安裝庐橙,可以獲得一個(gè)網(wǎng)易云音樂的腳本和源地址。但事實(shí)上這個(gè)腳本在后臺(tái)的執(zhí)行是失敗了的借嗽。 - 在終端中刪除剛才安裝的庫态鳖,
sudo zypper rm netease-cloud-music
,這個(gè)時(shí)候源還保留著恶导。 - 進(jìn)去網(wǎng)易云官網(wǎng)浆竭,下載ubuntu16.04(64bit)的deb包,重命名為
netease-cloud-music_1.0.0_amd64_ubuntu16.04.deb
惨寿,放在/tmp
文件夾下邦泄。 - 更新個(gè)庫
sudo zypper in binutils
- 再次安裝網(wǎng)易云
sudo zypper in netease-cloud-music
- 這個(gè)時(shí)候就可以正常的安裝完成了,可以在launchpad中查看網(wǎng)易云音樂
原理是這樣的裂垦,在源中下載的應(yīng)該是一個(gè)腳本顺囊,對(duì)deb進(jìn)行拆包。腳本里面自動(dòng)會(huì)下載一個(gè)deb版本的包蕉拢,但是不知道處于什么原因特碳,可能下載現(xiàn)在已經(jīng)不能成功了。因此需要自己放一個(gè)deb的包在/tmp
下晕换,再次運(yùn)行腳本午乓,就成功了。
如果你在第3步重新安裝網(wǎng)易云闸准,就會(huì)看到找不到deb文件的錯(cuò)誤益愈,解決方案就是后續(xù)步驟。
開發(fā)
開發(fā)我們一點(diǎn)點(diǎn)來.
首先從git
git官方的文檔里顯示夷家,不太需要直接下載源碼編譯腕唧,直接從zypper下載即可
sudo zypper in git
一頓通過之后,就可以下載完成直接使用瘾英。
然后是jdk
卸載openJDK
我是一個(gè)java程序員。颂暇。缺谴。jdk毫無疑問必不可少,對(duì)于系統(tǒng)自帶的openJDK來說,還是選擇oracle的jdk更放心一些湿蛔。
所以首先膀曾,需要卸載原有的openJDK,根據(jù)教程的說法阳啥,只需要通過rpm查找到所有的包添谊,然后刪除他們即可。
我發(fā)現(xiàn)在openSUSE中察迟,可以直接通過zypper刪除所有openjdk的組件也可以完成該需求斩狱,步驟如下:
首先,輸入
java -version
查看當(dāng)前安裝的java的版本扎瓶,在我的電腦上所踊,默認(rèn)是這樣的:
然后輸入刪除命令
sudo zypper rm java-1_8_0-*
這樣就一次性刪除了所有的openJDK相關(guān)的包,之后通過官方的jdk安裝回來即可概荷。
安裝oracle jdk
對(duì)于openSUSE的系統(tǒng)來說秕岛,需要下載Linux64 - rpm
版本,雙擊安裝就可以實(shí)時(shí)生效误证。
安裝完成后继薛,在終端輸入java -version
,發(fā)現(xiàn)已經(jīng)變成剛才安裝的版本愈捅。
這個(gè)時(shí)候需要簡(jiǎn)單的配置一下JAVA_HOME
環(huán)境變量遏考,來保證maven等程序可以正常的運(yùn)行,步驟如下:
- 輸入
vim ~/.bashrc
改鲫,這是bash在當(dāng)前用戶下的配置文件 - 使用vim編輯器诈皿,在文檔中輸入
export JAVA_HOME=/usr/java/jdk1.8.0_144
- 在下一行輸入
export PATH=$JAVA_HOME/bin:$PATH
- 保存退出
- 在終端輸入
source ~/.bashrc
生效
這個(gè)時(shí)候可以測(cè)試echo $JAVA_HOME
是否輸出為剛才設(shè)置的路徑。(該路徑是rpm模式的jdk安裝的位置)
maven
maven對(duì)于java程序員來說無比重要像棘,無論從jar包管理還是構(gòu)建上來說都是非常高效而統(tǒng)一的稽亏。對(duì)于使用IDEA的開發(fā)人員來說,雖然idea自帶了一個(gè)maven缕题,但貌似時(shí)常出問題截歉,因此自己安裝一個(gè)maven還是非常有必要的。
maven的安裝一般有兩種烟零,一種是通過下載二進(jìn)制版本瘪松,放在文件夾里,然后配置一下環(huán)境變量锨阿。還有一種是下載Source源碼來編譯并安裝宵睦。
不過既然用了openSUSE,直接從官方庫下載也是極好的墅诡。運(yùn)行的前提是安裝了jdk
并配置了JAVA_HOME
壳嚎。
tomcat
Tomcat是JavaEE的一個(gè)實(shí)現(xiàn),作為一種java web應(yīng)用奔跑的容器。在Linux里面的安裝其實(shí)和Windows差不多烟馅,下載完说庭,解壓,放在一個(gè)文件夾里郑趁,然后講bin目錄配置到環(huán)境變量path中刊驴。
在Linux中具體的操作如下:
- 下載,并解壓到文件夾中寡润,我為了避免系統(tǒng)空間不足捆憎,我將tomcat放置在了
~/lib/tomcat
下。 - 在
~/.bashrc
文件中添加export PATH=tomcat目錄/bin:$PATH
悦穿,注意后面的$PATH一定不能少攻礼,不然系統(tǒng)會(huì)出錯(cuò),所有的命令都將找不到栗柒。
配置完成后礁扮,一般都是通過idea啟動(dòng)的,所以其實(shí)沒有太大的差別瞬沦,在idea中再指定一次tomcat位置即可太伊。
idea
Idea的安裝其實(shí)沒有太多的懸念,從JetBrains官網(wǎng)下載下來逛钻,解壓雙擊即可運(yùn)行僚焦。
因此,需要在意的是曙痘,如何生成一個(gè)快捷方式能夠在launchpad里面直接點(diǎn)擊運(yùn)行芳悲,或者放在dock中。
這里給出一個(gè)簡(jiǎn)單的配置快捷方式的模板:
首先边坤,在/usr/share/applications
里面創(chuàng)建idea.desktop
名扛。通過 sudo vim
來打開并填入如下信息:
[Desktop Entry]
Name=IntelliJ IDEA
Exec=替換成idea.sh的路徑->在idea解壓后bin文件夾內(nèi)
Comment=IntelliJ IDEA
Icon=替換成idea.png的路徑->在idea解壓后的bin文件夾內(nèi)
Type=Application
Terminal=false
Encoding=UTF-8
其中的路徑都是可以從文件夾中直接拖拽到終端中自動(dòng)生成的。
至于idea的使用茧痒,事實(shí)上有很多技巧肮韧,但是注意事項(xiàng)倒很少。啟動(dòng)以后進(jìn)行簡(jiǎn)單的配置旺订,然后指定一下jdk的位置即可弄企。
docker
to be continue...
zsh - 終極shell
zsh是一個(gè)非常酷的shell版本区拳,遠(yuǎn)比已有的bash好得多拘领。
sudo zypper in zsh
即可安裝,不過樱调,zsh的配置比較麻煩院究,好在有一個(gè)叫做oh-my-zsh的項(xiàng)目能夠一鍵配置洽瞬,在終端輸入如下命令即可:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
然后通過如下命令切換
chsh -s 用戶名 /bin/zsh
重啟或注銷后就可以使用。之前配置的JAVA_HOME等參數(shù)业汰,需要轉(zhuǎn)移到~/.zshrc
文件中,但是這個(gè)是值得的菩颖,畢竟zsh要好用太多样漆。
另外,需要配置的是主題晦闰,這里有一個(gè)推薦的主題模式:
vi ~/.oh-my-zsh/themes/robbyrussell.zsh-theme
把里面的內(nèi)容替換為如下內(nèi)容:
local ret_status="%(?:%{$fg_bold[green]%}? :%{$fg_bold[red]%}? %s)"
#配置
PROMPT='%{$fg_bold[red]%}? %{$fg_no_bold[green]%}%p%{$fg[green]%}%d %{$fg_no_bold[cyan]%}$(git_prompt_info)%{$fg_bold[cyan]%}% %{$fg_bold[green]%}> %{$reset_color%}'
#PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg_bold[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_no_bold[cyan]%}) %{$fg_no_bold[yellow]%}? %{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_no_bold[cyan]%}) "
同樣放祟,注銷重啟即生效。
zsh好處太多呻右。跪妥。。起碼忽略大小寫簡(jiǎn)直高效声滥。