ipkg — Itsy Package Management System

說在前頭,在Synology NAS上安裝ipkg將使DSM的保固失效,安裝前請三思,可參考之前與Synology往來的郵件.

在上一封回信當中已經向您說明目前我們的原則,依照我們的保固條款第2.7節第(3)項,自行修改系統設定可能會破壞產品保固,如果您要改機安裝ipkg第三方軟體的話需自行備份設定和承擔相關的風險。
由於ipkg第三方軟體數量眾多,而且這些軟體也並非由Synology所開發,所以很抱歉我們無法針對安裝這些軟體之後所產生的問題提供技術支援,希望您能夠了解。

在wiki上的說明,ipkg 是一個輕量的套件管理系統,常用在嵌入式系統上,像是Synology,QNAP NAS.

ipkg的安裝,首先必需知道使用環境的cpu為何?若您是用Synology產品,可以到這裡查所使用的cpu型號,然後再下載對應的Bootstrap1來安裝ipkg,以DS710+來說,是使用Intel Atom D410 x86 的cpu,其對應的Bootstrap由這裡下載,登入command mode可以用如下指令下載:

wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh

以如下指令安裝:

sh syno-i686-bootstrap_1.2-7_i686.xsh

以如下指令更新ipkg 可用套件列表:

ipkg update

以如下指令,將己經安裝的套件更新到最新版2:

ipkg upgrade

Synology wiki提供的安裝步驟如下:

The steps to install the bootstrap (provided as .xsh files) are below, you should replace the text in bold with the relevant text for your CPU’s bootstrap file (listed above).
  1. Reboot your NAS.
  2. Enable and then Login to the Command Line Interface as user “root", password is the same as for admin.
  3. Change to a directory such as “/volume1/@tmp", i.e. enter the command “cd /volume1/@tmp"
  4. Get the NAS to download the bootstrap, e.g. if you have an mv5281 ARM model enter the command “wget http://ipkg.nslu2-linux.org/feeds/optware/syno-x07/cross/unstable/syno-x07-bootstrap_1.2-7_arm.xsh“, alternatively download the bootstrap to your PC and then copy it to a shared folder on the NAS
  5. Now run the .xsh script, e.g. if you have an mv5281 ARM model and used the bootstrap above enter the command “sh syno-x07-bootstrap_1.2-7_arm.xsh"
  6. After the script has finished you can delete the script file, e.g. for mv5281 ARM users using the bootstrap above enter the command “rm syno-x07-bootstrap_1.2-7_arm.xsh"
  7. Reboot the NAS and login again to the Command Line Interface as user “root"
  8. Update the ipkg list of available packages using the command “ipkg update"
  9. Upgrade any ipkg installed packages to the latest versions using the command “ipkg upgrade"
  10. Finished, you can now install ipkg packages using the command “ipkg install xxxx" where xxxx is the name of the package. You can list all the available packages using the command “ipkg list". As this is a long list you can filter it using the command “ipkg list | grep xxxx" where xxxx is the text you want to search for. Alternatively, you view one page at a time using the “more" pipe, e.g. “ipkg list | more"

可以執行ipkg或是ipkg –help看一下使用說明,部份使用方法介紹如下:

例如您想看一下目前有安裝那些套件,可用如下指令

ipkg list_installed

想知道有那些套件可以安裝,可用如下指令3

ipkg list

例如您熟悉的shell是bash,您可以如下指令安裝bash4)

ipkg install bash

若您想知道bash套件包含那些檔案,可用如下指令5

ipkg files bash

若您想查/opt/bin/bash包含在那個套件中可以用如下指令

ipkg search /opt/bin/bash

若您想下載textutils套件可以用如下指令6

ipkg download textutils

若您想移除textutils套件,可以用如下指令

ipkg remove textutils

可以用如下指令看套件資訊

ipkg info textutils

例如想看當前系統上,有那些套件相依於libstdc++套件,可以用如下指令7

ipkg whatdepends libstdc++

針對Synology上使用ipkg可以參考Synology wiki的說明 — Overview on modifying the Synology Server, bootstrap, ipkg etc

若是有經驗的Linux管理者,對這類套件管理系統應該不陌生,若想有更多瞭解,可以參考Study-area鳥哥的文章.

http://linux.vbird.org/linux_basic/0520rpm_and_srpm.php

http://www.study-area.org/linux/system/linux_com.htm

2012/05/08 補充:

如果在做 ipkg update時發生類似如下的error.

image

可能是執行到不符合預期的wget指令,可以調整root的profile中的PATH,將/opt/bin置於最前面,讓ipkg update 執行時可以找到符合需求的wget指令,如下:

PATH=/opt/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin

參考資料

  1. A bootstrap is a script that installs ipkg. []
  2. 若您信任它,甚至可以將該指令加到crond job中,做定期更新 []
  3. 可搭配grep找您要的套件,例如ipkg list | grep bash []
  4. 若套件己下載,您也可以指定檔名安裝(不過可能不會處理相依套件 []
  5. 要己安裝才查得到 []
  6. 下載下來的ipk檔案,其實是一個tar file []
  7. 若想看,未安裝但也相依於libstdc++的套件可以用

    ipkg whatdepends -A libstdc++

    []

本篇發表於 Synology 並標籤為 。將永久鏈結加入書籤。

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

你可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

(若看不到驗證碼,請重新整理網頁。)