环境: Linux
-
下载解压pkgsrc
-
更新pkgsrc为最新
-
在系统安装编译器和工具
-
bootstrap 安装 pkgtools 和 bmake
-
使用
-
在pkgsrc安装的服务找不到管理脚本
-
管理服务
下载解压pkgsrc
如果已经下载解压 可跳过这一步
# ftp ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz
# tar zxf pkgsrc.tar.gz -C /usr
更新pkgsrc为最新
# cd /usr/pkgsrc && env CVS_RSH=ssh cvs up -dP
在系统安装编译器和工具
pkgsrc的bootstrap需要一个C编译器和一些工具
- gcc
- gmake
- automake (可能非必须)
请确保拥有这些编译器和工具
CentOS安装:
# yum install make automake gcc gcc-c++
bootstrap 安装 pkgtools 和 bmake
# cd /usr/pkgsrc/bootstrap/
# ./bootstrap
添加目标bin和sbin到PATH环境变量
将下面文件加入你的全局环境变量文件
export PATH=${PATH}:/usr/pkg/bin:/usr/pkg/sbin
比如加入/etc/profile
echo 'export PATH=${PATH}:/usr/pkg/bin:/usr/pkg/sbin' >> /etc/profile
然后重新登陆用户
执行bmake
如果命令找到则添加成功
使用
NetBSD 上的pkgsrc的决大多数用法在其他平台同样通用
Linux没有pkgsrc源的二进制支持的,所以要自己编译.
在pkgsrc安装的服务找不到启动脚本
# ls /usr/pkg/share/examples/rc.d/
找到需要的服务并复置到 /etc/rc.d/
# cp /usr/pkg/shar/examples/rc.d/服务脚本名 /etc/pkgsrc-rc.d/
我通过pkgsrc安装了apache24
# ls /usr/pkg/share/examples/rc.d/
apache mysqld
复制
# cp /usr/pkg/share/examples/rc.d/apache /etc/pkgsrc-rc.d/
管理服务
# /路径/服务脚本 操作
一般服务操作有
| 操作 | 描述 |
|---|---|
| start | 开启服务(当服务在rc.conf中启用) |
| stop | 关闭服务(当服务在rc.conf中启用) |
| restart | 重启服务(当服务在rc.conf中启用) |
| onestart | 开启服务(当服务在rc.conf中未启用) |
| onestop | 关闭服务(当服务在rc.conf中未启用) |
| onerestart | 重启服务(当服务在rc.conf中未启用) |
| status | 查看服务运形状态 |
开启apache
# /etc/pkgsrc-rc.d/apache start
关闭apache
# /etc/pkgsrc-rc.d/apache stop
重启apache
# /etc/pkgsrc-rc.d/apache restart
http://www.netbsd.org/docs/pkgsrc/getting.html#getting-via-tar
http://www.netbsd.org/docs/pkgsrc/getting.html#uptodate-cvs
https://www.netbsd.org/docs/guide/en/chap-rc.html