Archive for October 2014

apt-get commands

$ apt-get -h

# 更新來源
$ sudo apt-get update
$ sudo apt-get -y update

# 安裝 / 更新
# 如果已經安裝過了就會更新
$ sudo apt-get install nginx

# -y 是略過手動確定
$ sudo apt-get install git-core -y 

# -qq 是指 No output except for errors
$ sudo apt-get install libxml2-dev -qq

# 重新安裝
$ sudo aptitude reinstall libxml2-dev

# 移除
$ sudo apt-get remove nginx
$ sudo apt-get remove rabbitmq-server
$ sudo apt-get remove --purge mariadb-galera-server-5.5
$ sudo apt-get autoremove
$ sudo apt-get autoclean

# 查詢版本
$ sudo apt-cache show nginx
$ aptitude show nginx
$ aptitude versions rabbitmq
$ aptitude versions libxml2-dev

# 搜尋
$ aptitude search nginx
$ apt-cache search nginx

# list installed packages
$ dpkg --get-selections
$ dpkg --get-selections | grep -v deinstall

# show support status
$ ubuntu-support-status

Issues

sudo: add-apt-repository: command not found

$ sudo apt-get install python-software-properties

Ubuntu sources.list repository 分類

main 即「基本」組件,其中只包含符合 Ubuntu 的許可證要求並可以從 Ubuntu 團隊中獲得支持的軟體,致力於滿足日常使用,位於這個組件中的軟體可以確保得到技術支援和及時的安全更新。此組件內的軟體是必須符合 Ubuntu 版權要求(Ubuntu license requirements)的自由軟體,而 Ubuntu 版權要求大致上與 Debian 自由軟體指導綱要(Debian Free Software Guidelines)相同。

restricted 即「受限」組件,其中包含了非常重要的,但並不具有合適的自由許可證的軟體,例如只能以二進位形式獲得的顯卡驅動程式。由於 Ubuntu 開發者無法獲得相應的原始碼,restricted 組件能夠獲得的支持與 main 組件相比是非常有限的。

universe 即「社群維護」組件,其中包含的軟體種類繁多,均为自由软件,但都不為 Ubuntu 團隊所支援。

multiverse 即「非自由」組件,其中包括了不符合自由軟體要求而且不被 Ubuntu 團隊支援的软件包,通常為商業公司編寫的軟體。