顯示具有 command 標籤的文章。 顯示所有文章
顯示具有 command 標籤的文章。 顯示所有文章

2015年10月12日 星期一

Ubuntu 指令

  • lsb_release -a 查詢系統版本資訊:
lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.5 LTS
Release: 12.04
Codename: precise
  • sudo do-release-upgrade 透過終端機進行系統升級(12.04 to 14.04...etc),詳細資訊請參考 Upgrading
sudo do-release-upgrade
  • 更新系統套件,如果有相依性問題則保留套件不更新。
sudo apt-get update
sudo apt-get upgrade
  • 如果只需更新一個套件,則可以使用下列指令:
sudo apt-get update
sudo apt-get upgrade <套件名稱>

TIPS:執行「apt-get update」與「apt-get upgrade」通常會一起執行,因為 update 指令只是更新套件資料庫的軟體版本資訊,不會升級軟體套件。只有在執行過 upgrade 命令後,系統上已安裝的套件才會進行更新。

TIPS:執行「apt-get」指令時若加上「-y」參數,即表示執行時若遇到需要使用者決定是否繼續進行的場合,都會自動以「Yes」方式進行處理,此時便不需要使用者再輸入「Y」鍵。

TIPS:執行「upgrade」 參數時, 可能會看到有些套件維持在原有的版本而不會進行升級,這些套件包括系統核心(Kernel) 與重要的系統套件(如 libc)等等。如果要升級這些套件,另外執行 「sudo apt-get install <套件名稱列表>」指令即可,例如「sudo apt-get install libc-bin libc-dev-bin」。或是直接輸入「sudo apt-get dist-upgrade」亦可以解決問題。
  • 更新系統套件,如果套件有相依性問題則會試著解決此問題(通常被視為有風險的更新,伺服器不建議一開始就使該指令)。
sudo apt-get update
sudo apt-get dist-upgrade
  • APT 升級套件的同時將相依套件一併升級,則可以使用下列指令,如果未指定套件名稱,則會升級所有的相依套件:
sudo apt-get dist-upgrade <套件名稱>
例如:
sudo apt-get dist-upgrade filezilla

  • APT 移除套件但不移除設定檔與關聯檔,則可以使用下列指令:
sudo apt-get remove <套件名稱>
例如:
sudo apt-get remove filezilla

  • APT 徹底移除套件可以使用下列指令,下面兩個指令效果是相同的:
sudo apt-get remove --purge <套件名稱>
或
sudo apt-get purge  <套件名稱>
例如:
sudo apt-get remove --purge filezilla
sudo apt-get purge filezilla

  • APT 移除套件時一併將相依套件刪除可執行下列指令,如果再 autoremove 後面沒有加上套件名稱,則會將系統上所有未使用的相依套件全數刪除:
sudo apt-get autoremove <套件名稱>
例如:
sudo apt-get autoremove filezilla

  • APT 在安裝時會將套件下載到 「/var/cache/apt/archives/partial」目錄中,才進行安裝。我們可以透過 clean 參數來清除這些下載的套件檔案以釋放硬碟空間,而 autoclean 參數只會移除無法再被下載的套件檔案:
sudo apt-get clean
sudo apt-get autoclean

  • check 參數來檢查是否有套件相依性問題的存在:
sudo apt-get check

  • apt-cache search <關鍵字>」查詢套件的完整名稱,執行後 apt-cache 會在套件列表中的套件名稱或套件說明欄位進行搜尋,並將所有符合條件的套件顯示在畫面上:
sudo apt-cache search <關鍵字>
例如:
josh:~$ sudo apt-cache search xftp
gnome-user-share - User level public file sharing via WebDAV or ObexFTP
gvfs-backends - userspace virtual filesystem - backends
libobexftp-perl - perl binding to the object exchange file transfer library
libobexftp-ruby - ruby binding to the object exchange file transfer library
libobexftp0 - object exchange file transfer library
libobexftp0-dev - object exchange file transfer library - development files
obexfs - mount filesystem of ObexFTP capable devices
obexftp - file transfer utility for devices that use the OBEX protocol
obextool - graphical frontend for obexftp written in TCL/TK
python-obexftp - Python binding to the object exchange file transfer library
ussp-push - Client for OBEX PUSH

  • apt-cache show <套件名稱>」指令來顯示單一套件的相關資訊,並以較為容易閱讀的方式產生報表,提供此用者參考之用。show 參數會提供的套件資訊包括套件所屬性質、分類、檔案大小、相一套件以及是否會與其它套件產生衝突等訊息:
apt-cache show <套件名稱>
例如:
josh:~$ sudo apt-cache search filezilla
Package: filezilla
Priority: optional
Section: universe/net
Installed-Size: 3175
Maintainer: Ubuntu Developers 
Original-Maintainer: Adam Cécile (Le_Vert) 
Architecture: amd64
Version: 3.5.3-1ubuntu2
Depends: libc6 (>= 2.15), libdbus-1-3 (>= 1.1.1), libgcc1 (>= 1:4.1.1), libglib2.0-0 (>= 2.12.0), libgnutls26 (>= 2.12.6.1-0), libidn11 (>= 1.13), libsqlite3-0 (>= 3.5.9), libstdc++6 (>= 4.6), libtinyxml2.6.2, libwxbase2.8-0 (>= 2.8.12.1), libwxgtk2.8-0 (>= 2.8.12.1), filezilla-common (= 3.5.3-1ubuntu2)
Recommends: xdg-utils
Filename: pool/universe/f/filezilla/filezilla_3.5.3-1ubuntu2_amd64.deb
Size: 1318190
MD5sum: 923fef480256dc8c5f9470cce954a665
SHA1: 9297f7df88381a780cd8dd87b245d6f0efc77f8a
SHA256: 2f8c7c4e02329aad4fe7abec13bf97b6e33197f0fbc1cb764f6766b9487cfdd1
Description-en: Full-featured graphical FTP/FTPS/SFTP client
 FileZilla is a full-featured FTP client with an easy-to-use GUI.
...
...
  • apt-cache depends <套件名稱>」將套件的所有相依套件列出,並顯示是否與其它套件有所衝突。
  • apt-cache showpkg <套件名稱>」顯示指定套件的所有資訊,例如該套件目前的版本、此套件的相依套件關係等各種訊息。
  • 利用 dpkg 指令手動安裝軟體,Ubuntu 支援的套件檔案格式為 deb 檔,所以網路下載的 deb 檔案,應該都可以在 Ubuntu 之中順利安裝。但手動安裝套件最大的缺點是無法解決套件相依性問題。如果在使用 dpkg 安裝 deb 檔案時系統告知有相依套件需要先行安裝,只能自行找到相關的套件檔案,先行安裝後才能再安裝此套件,此用指令如下,參數 「-i 」表示安裝此套件
sudo dpkg -i <套件名稱>
例如:
sudo dpkg -i google-chrome-stable_current_i386.deb
  • 「dpkg -l <套件名稱>」 查詢已安裝套件的狀態,套件名稱可以使用萬用字元,或是利用 「dpkg -l | grep <套件名稱>」的方式進行查詢。
  • 「sudo dpkg -r <套件名稱>」 指令來移除套件,在移除時便需要輸入完整的套件名稱,如果不確定套件完整名稱,可利用 「dpkg -l 」指令進行查詢,之後在利用 「-r 」 參數移除套件 。
  • APT 相關目錄,APT 在執行時主要使用四個目錄,以作為檔案存放的空間。這四個目錄分別為:
1. /var/cache/apt/archives/ :已下載套件的存放處。
2. /var/cache/apt/archives/partial :下載中套件的存放處
3. /var/lib/apt/lists/ : sources.list 檔案中指定的套件來源其相關狀態與資訊之存放處。
4. /var/lib/apt/lists/partial/ :正在傳輸中的狀態資訊存放處。 
  • Ubuntu 預設不允許 root 帳號登入,甚至連 root 的密碼都是隨機產生且不告知使用者,所以只能使用一般使用者帳號登入系統。下面指令為如何切換成 root 帳號:
sudo su root
或
sudo su -
或 用 passwd 來修改 root 帳號密碼,然後再用 root 帳號登入
sudo passwd root 

[參考連結]

2014年5月29日 星期四

Ubuntu 如何列出已安裝的 Pacakge

    Ubuntu 下要查詢已經安裝的套件可以透過下列指令

dpkg --get-selections | grep -v deinstal

    grep -v 主要過濾掉利用 dpkg 查詢時含有含有 deinstall ,你可以透過 grep --help 查詢參數用法

-v, --invert-match        select non-matching lines

[參考連結]

2013年12月29日 星期日

如何檢查你目前Ubuntu 桌面是使用 Unity-2d 或 Unity-3d 與確定目前系統是否有支援 Unity-3d

       檢查 Ubuntu 桌面是使用 Unity-2d 或 Unity-3d 你可以透過 "echo $DESKTOP_SESSION" 命令來檢查,執行畫面如下:

      如果目前使用 Unity-2d 會顯示 Ubuntu-2d,Unity-3d 則只會顯示 Ubuntu。

      另外如果你要確定系統是否有支援 Unity-3d,你可以透過 "/usr/lib/nux/unity_support_test -p" 來檢查,執行畫面如下:


[參考連結]

2013年9月6日 星期五

Ubuntu 修改hostname

     你可以透過修改 /etc/hostname 與 /etc/hosts 檔案來修改 Ubuntu 主機名稱,步驟如下:

1. 開啟 terminal 視窗

2. sudo gedit /etc/hostname &
    然後修改你要的名稱, ex: abc

3. sudo gedit /etc/hosts &
   修改第二行,你應該會看到 [127.0.1.1 你原本的Hostname],將原本的Hostname 改為新的 abc。
 更改此檔的目的在於避免一些網路的 service 會不正常 ex: Apache、Tomcat...etc.

 4. 重新開機即可。

       另外你也可以透過 hostname 來查看你目前的主機名稱與暫時修改主機名稱(重新開機後名稱又會變回去原本的)。

       如果不想重新開機,你可以下達下面的指令來暫時更改主機名稱:
       hostname <新名稱>
       ex: hostname abc

參考資料:
Ubuntu: How to Change the Computer Name
How do I change the hostname without a restart?