ch9 package & port(2013 ncu-nos_nm)

25
Package & Ports CSIE 基爾 @ NCU網路開源社 Updated: 12232013

Upload: -chou

Post on 07-Jul-2015

119 views

Category:

Education


9 download

TRANSCRIPT

Page 1: Ch9 package & port(2013 ncu-nos_nm)

Package & Ports

CSIE 基爾 @ NCU網路開源社

Updated: 12232013

Page 2: Ch9 package & port(2013 ncu-nos_nm)

課程

•相關學分:OS

•等級:中

•背景知識:FreeBSD基本操作

•課程目標:• 學會用各種方法裝套件

Page 3: Ch9 package & port(2013 ncu-nos_nm)

Basic

Page 4: Ch9 package & port(2013 ncu-nos_nm)

Package installation

• Port

• Package

• Traditional method

Page 5: Ch9 package & port(2013 ncu-nos_nm)

Port

• Source file

Page 6: Ch9 package & port(2013 ncu-nos_nm)

Package

• Binary file

跟用windows抓軟體很像。

Page 7: Ch9 package & port(2013 ncu-nos_nm)

Compare

Port Package

1. 客制化2. 可更新相依套件版本3. 可修改原始碼

1. 跟OS同時發行2. 缺少某些軟體3. 電腦慢者建議使用4. 初學者使用(傻瓜安裝)

Page 8: Ch9 package & port(2013 ncu-nos_nm)

Port

Page 9: Ch9 package & port(2013 ncu-nos_nm)

Two config file

• Portsnap指令用到的設定檔:/etc/portsnap.conf

• Make指令用到的設定檔:/etc/make.conf

SERVERNAME=portsnap.FreeBSD.org SERVERNAME=portsnap.tw.FreeBSD.org SERVERNAME=portsnap.webamp.cc

MASTER_SITE_BACKUP?= \ftp://freebsd.csie.ncu.edu.tw/distfiles/${DIST_SUBDIR}/ \ftp://freebsd.csie.nctu.edu.tw/pub/distfiles/${DIST_SUBDIR}/ MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP}

不加入亦可。

Page 10: Ch9 package & port(2013 ncu-nos_nm)

Update Port Tree

• Before you use port…

•指令:portsnap fetch extract

•指令:portsnap fetch update

•更新日誌:/usr/ports/UPDATING

測機更新過,不需要做了。

Page 11: Ch9 package & port(2013 ncu-nos_nm)

port放的位置

• /etc/ports/[類別]/[套件名稱]/

Page 12: Ch9 package & port(2013 ncu-nos_nm)

make

•指令:(與Makefile同個目錄底下)

• make configure (正常情況可以省略這個步驟)

• make install

• make clean

• Make deinstall

定義@Makefile

Page 13: Ch9 package & port(2013 ncu-nos_nm)

Package Conflict 沒遇過他,別說你碰過freebsd!

Page 14: Ch9 package & port(2013 ncu-nos_nm)

whereis

•指令:whereis [套件名]

Page 15: Ch9 package & port(2013 ncu-nos_nm)

/var/db/ports

•存放安裝過的port紀錄

Page 16: Ch9 package & port(2013 ncu-nos_nm)

Package

Page 17: Ch9 package & port(2013 ncu-nos_nm)

pkg_add

•指令:pkg_add –r [目標套件名稱]

• -r = remote fetch

Page 18: Ch9 package & port(2013 ncu-nos_nm)

pkg_delete

•指令:pkg_delete [目標套件名稱]

Page 19: Ch9 package & port(2013 ncu-nos_nm)

pkg_info

•直接輸入:顯示安裝的所有套件

Page 20: Ch9 package & port(2013 ncu-nos_nm)

/var/db/pkg

•存放安裝過的pkg紀錄

Page 21: Ch9 package & port(2013 ncu-nos_nm)

Traditional method

Page 22: Ch9 package & port(2013 ncu-nos_nm)

fetch

• fetch [下載網址]

Page 23: Ch9 package & port(2013 ncu-nos_nm)

tar 壓縮

•壓縮指令:tar –zcf [壓縮檔名].tar.gz [欲壓縮檔案OR目錄]

Page 24: Ch9 package & port(2013 ncu-nos_nm)

tar 解壓縮

•解壓縮指令:tar –zxvf [壓縮檔案] [目標位置]

Page 25: Ch9 package & port(2013 ncu-nos_nm)

~Merry Christmas~