System Required Package

目錄

說明

由於 Tux2live 之目的是從您硬碟中已有的 Linux 環境中,打包成一樣環境的 Live system,以方便配置到可攜帶的裝置上(如:光碟、USB 碟,... 等)。所以在執行的過程中需要一些程式或核心模組來協助打包。由於一些常見的工具程式如: grep , awk, sed, ... 幾乎是所以 Linux 都會預設安裝的套件,所以下表僅列出可能不再預設安裝之套件和核心模組,說明如下:

  • Packages
    • rsync : 用來同步來源(如:硬碟)中 root filesystem 至預打包目錄
    • squashfs-tools : 用來打包 live system 的 root filesystem 成 squashfs 檔案
    • mkiso : 打包成 iso 檔所需要
  • Kernel modules
    • squashfs module : 在 initrd 階段支援讀取 squashfs 檔案格式
    • unionfs or dm_snapshot module : 讓從 squashfs 掛載的 root filesystem 以 unionfs 或 dm_snapshot 方式變可讀寫。此兩者擇一即可,但有些 Linux 版本不預設提供 unionfs,如: Fedora, Centos (或許還有其他),就只能選用 dm_snapshot。

如何檢查

  • 直接跑 ./tux2live -c 來檢查看看就行了,如下:
 $ ./tux2live -c
load tux2live-custom.conf
load tux2live.conf
check command: mksquashfs ...** MISS !!**
check command: rsync ... [Ready]
check command: mkisofs ... [Ready]
check module: squashfs ... [Ready]
check module: unionfs ... [Ready]
check module: dm_snapshot ... [Ready]
check free space: /host/some.path/tux2live/trunk/output [1G]...** POOR !!**
Package required :'squashfs-tools'
Please prepare all necessary components first !!! 

說明

  • 程式找不到 mksquashfs 命令,建議安裝 squashfs-tools 套件
  • 程式檢查所在的分割區空間剩下 1GB,可能會在後續打包過程中出先錯誤。這點可以在之後真正開始把包時使用 "--outputdir" 或 "--tmpdir" 來指定輸出目錄和暫存目錄。

如何補齊

您可以自行下載對應您 Linux 版本所需要的套件進行安裝,或在不同 Linux 版本上有不同套件管理程式,如:apt-get, urpmi, yum, .... 等。以上面為例,在不同的版本上安裝 squashfs-tools 如下:

  • Debian / Ubuntu 上
 $ sudo apt-get install squashfs-tools
  • Fedora/Centos 上
 $ sudo yum install squashfs-tools
  • Mandriva/Mandrake 上
 $ sudo urpmi squashfs-tools

補充:在不同 Linux 套件上或許名稱有些許差異,不過一般情況來說差異不大


Reference