初始化Ubuntu工作環境

博文:初始化Ubuntu工作環境
主頁:http://www.howardliu.cn/

去年6月份開始使用Ubuntu 14.04 LTS,當時是在公司電腦上裝的,因爲是第一次搭建工作環境,很多東西不是很隨心意。終於等到16.04 LTS版發佈,就重裝系統,公司的那個老爺本也不用了。
ubuntu desktop是一個很簡單的桌面系統,比較適合菜鳥級的使用,學習曲線比較平緩。本文主要是記錄一下這次搭建工作環境的經過,留作備份,下一次再需要重裝的時候可以有個依據。
ubuntu-cloud

1 系統語言

作爲英語的半吊子,沒辦法直接使用英文環境,所以系統安裝的是簡體中文環境,但是系統創建的home路徑中的文件夾都是中文的:桌面、文檔、下載。。。作爲一個懶人,不想在終端輸命令的時候還要切換輸入法,所以把這幾個路徑全部改爲英文。

$ export LANG=en_US
$ xdg-user-dirs-gtk-update

會彈出一個對話框,問是否修改home下的文件夾名字,直接點擊”Update Names”,問題解決,然後把系統語言改回簡體中文。

$ export LANG=zh_CN.UTF-8
$ xdg-user-dirs-gtk-update

這次又彈出的對話框是詢問是否把文件夾名字改爲簡體中文的,直接點否就行。爲了以後不再詢問,選中不要再次詢問,以後就不會彈出了。

2 軟件源

大家都知道,國內的網絡環境不是很好,ubuntu的鏡像服務器在地球另一端,所以裝完系統通常需要修改軟件源,國內比較可靠的是阿里雲的鏡像,爲阿里贊一個。需要使用root權限修改/etc/apt/sources.list文件:sudo vi /etc/apt/sources.list,我這裏是需要把”cn.archive.ubuntu.com”和”security.ubuntu.com”改爲”mirrors.aliyun.com”,根據自己的情況修改。這樣ubuntu的系統更新、安全更新、軟件更新都是走阿里雲的鏡像了,速度還是很快的。
下面是我的軟件源文件(精簡過的,原文件很多註釋):

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse

3 快捷初始化

ubuntu使用可能會用到一些解碼器之類的組件、插件、字體,一個個找實在麻煩,好在有一個ubuntu-restricted-extras,可以直接幫忙安裝這一堆繁瑣的東西。命令行輸入:sudo apt install ubuntu-restricted-extras,然後等待安裝完成即可。

4 常用軟件

基礎環境簡單配置完成,接下來就開始安裝常用的軟件。

4.1 vim

因爲開發使用的是IDE,vi工具只是用來編輯一些簡單的文件,所以沒裝太多插件。作爲一個vi的菜鳥,只會一些簡單的快捷鍵,所以還是裝上vim吧:

$ sudo apt install vim

4.2 Chromium & Chrome

ubuntu自帶的瀏覽器是Firefox,一款非常優秀的瀏覽器,Chrome中也有部分是firefox的代碼,奈何已經熟悉Chrome,還是裝上Chrome瀏覽器。這裏的Chromium相當於Chrome的先行軍,開源項目,全球優秀的開發人員進行維護,增加功能,然後Google再把這些新功能加到Chrome中,ubuntu的軟件庫中自帶Chromium,想裝Chrome還得翻牆出去下,爲了快(tou)捷(lan),直接裝Chromium:

$ sudo apt-get install chromium-browser unity-chromium-extension chromium-codecs-ffmpeg-extra

Chromium和Firefox一樣,有很多擴展擴展程序(依賴瀏覽器)和應用(可以不啓動瀏覽器獨立運行):

  • The QR Code Extension: 把地址欄地址轉爲二維碼
  • 有道雲筆記網頁剪報: 用過有道雲筆記的比較熟悉,抓取網頁內容,保存到有道雲筆記中
  • cVim: 一個擺脫鼠標的擴展程序,鍵盤流的福音,好像還有很多類似的擴展,大同小異
  • JSON Formatter: 可以把json響應內容格式化
  • JSON Editor: 應用,用於編輯json數據
  • Postman: 應用,http的客戶端

4.3 JDK

作爲Java開發,最需要安裝的就是jdk了,ubuntu庫中只有Open JDK,但是工作環境中還是使用Oracle JDK,其實可以在Oracle官網下載tar.gz包,解壓,然後配置環境變量,但是安裝ant、maven的時候還是會再次引入open jdk,煩不勝煩,直接使用webupd8的源,省去亂七八糟的煩惱。

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java6-installer oracle-java7-installer oracle-java8-installer

這裏把jdk 6\7\8幾個版本都裝上了,雖然自己的項目中使用JDK 8,但是有時候需要把一個公共組件提供給其他組,就需要jdk 6來開發編譯打包,這個時候需要切換下默認jdk的版本:

$ sudo apt-get install oracle-java6-set-default # 切換爲jdk6
$ sudo apt-get install oracle-java7-set-default # 切換爲jdk7
$ sudo apt-get install oracle-java8-set-default # 切換爲jdk8

修改jdk的環境變量,爲了各用戶統一,直接在系統環境變量中增加配置:

cd /etc/profile.d
sudo touch set_classpath.sh
sudo chmod +x set_classpath.sh

set_classpath.sh文件的內容如下:

#!/bin/bash
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

可以通過source set_classpath.sh使環境變量立即生效,也可以等下次重啓之後生效。

4.4 Ant

工作中基本不用Ant了,一般maven就夠用了。先裝上,用不用再說:sudo apt-get install ant,安裝完之後配置環境變量:

$ cd /etc/profile.d
$ sudo touch ant_env.sh
$ sudo chmod +x ant_env.sh

ant_env.sh內容如下:

#!/bin/bash
export ANT_HOME=/usr/share/ant
export PATH=$PATH:$ANT_HOME/bin

4.5 Maven

構建工具最常用maven了,基本不需要關心jar包之間的依賴,而且在IDE中,maven的插件也比較完善了。

$ sudo apt-get install maven

# 安裝完成後通過mvn -n查看maven版本
$ mvn -v
Apache Maven 3.3.3
Maven home: /usr/share/maven
Java version: 1.8.0_66, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "4.2.0-22-generic", arch: "amd64", family: "unix"

4.6 SVN

公司喜歡用svn,不過也馬上要換成Git了,還是把svn安裝記錄下,萬一以後需要呢。

$ sudo apt-get install subversion
$ sudo apt-get install libsvn-java # 如果要用Eclipse SVN插件還得裝下libsvn-java

# 使用ln建立鏈接,不然插件還是會報錯:
$ sudo mkdir -P /usr/java/packages/lib/amd64/
$ sudo ln -s /usr/lib/x86_64-linux-gnu/jni/libsvnjavahl-1.so.0.0.0 /usr/java/packages/lib/amd64/libsvnjavahl-1
$ sudo ln -s /usr/lib/x86_64-linux-gnu/jni/libsvnjavahl-1.so.0.0.0 /usr/java/packages/lib/amd64/libsvnjavahl-1.so

在Linux中可用的svn的GUI工具只有一個rapidsvn,已經很久沒有更新過了,不過也還湊合用,複雜操作可以使用命令,

$ sudo apt-get install rapidsvn

4.7 Git

直接安裝

sudo apt-get install liberror-perl git-man git git-doc

git的GUI工具就不裝了,畢竟git的命令很簡單,而且IDE中的插件效果也挺不錯的。

4.8 其他工具

  • unison: 一個同步工具,可以比較文件夾之間是否有修改,可以很直觀的操作同步數據,相當於有GUI的sync,sudo apt-get install unison unison-gtk
  • ssh: 這個不多說,sudo apt-get install openssh-client openssh-server openssh-sftp-server
  • openvpn: 在家辦公的時候,需要通過VPN連接公司內網,sudo apt-get install network-manager-openvpn
  • FileZilla: 連接服務器的文件管理器,sudo apt-get install filezilla
  • Meld: 文件\文件夾對比工具,相當於帶GUI的diff,sudo apt-get install meld
  • mysql: 不多說,sudo apt-get install mysql-client mysql-workbench
  • nethogs: 各應用實時網速檢查,需要sudo權限,sudo apt-get install nethogs
  • indicator-multiload: 綜合負載指示器,可實時顯示CPU使用率、內存佔用、網速、負載、磁盤IO、交換空間等,sudo apt-get install indicator-multiload
  • GIMP: 圖像編輯,sudo apt-get install gimp gimp-data-extras
  • GParted: 分區管理器,需要root權限,sudo apt-get install gparted

5 基本配置

5.1 ubuntu終端

ubuntu終端會顯示當前位置的全路徑,當目錄比較深的時候,佔用空間太大,所以直接進行優化:

export PS1='\[\e]0;\u@\h: \w\a\]\[\033[01;32m\]\u\[\033[01;33m\]@\h\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]$ '

5.2 本地打開文件數限制解除

echo "fs.file-max = 819200" | sudo tee /etc/sysctl.d/60-fs-file-max.conf
echo "fs.inotify.max_user_watches = 524288" | sudo tee /etc/sysctl.d/60-fs-max-user-watches.conf

6 結束

到這裏,這個ubuntu環境就基本配置完成了。
話說自從把系統換成ubuntu了,好像很久沒有玩遊戲了。舍友的系統是windows,前一段時間,想玩了,就玩他的,後來媳婦抱怨說我總是跟他們混在一起,也就不怎麼玩了,最近好像就想不起來玩。算是把遊戲戒了。
然後使用linux,爲了圖省事,經常會用到終端,幾條簡單命令就成,慢慢向鍵盤黨靠攏,雖然不說能夠提高效率,至少不會因爲找鼠標打斷思路。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章