分享
 
 
 

FreeBSDPortsCollection

王朝system·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

为了充分发挥系统的性能,便需要对系统进行各种维护和配置工作。前面进行的管理和维护还是基于最初安装的FreeBSD系统,以及FreeBSD安装介质中提供的二进制软件包。这样的系统适用于大多数情况,但不是最适合特定要求的系统设置。根据系统的具体情况来定制FreeBSD的各种设置,就需要进一步的工作。主要是由于 FreeBSD是一个自由软件系统,它提供了软件的源代码可以供用户定制,可以来适应系统的具体环境。如果不能充分利用这些FreeBSD提供的源代码,就不能真正发挥 FreeBSD的最大能力。

FreeBSD系统提供的源代码包括三个部分,内核源代码、应用程序源代码和软件Ports的源代码。其中内核源代码用于定制内核、提高系统性能、维护硬件配置以及更新系统软件,根据需要升级硬件和保持系统不断升级以避免系统安全等方面的漏洞等任务,因此最为重要,一个系统在初始安装之后都需要重新编译内核;应用程序源代码包括安装到/bin、/sbin、/usr/bin、/usr/sbin目录中的各个应用程序的源代码;软件Ports的源代码并不是各个软件的源代码,而是各个软件的编译、安装方法的代码,这可以用来安装和管理各种应用程序。

这些源代码均包括在FreeBSD的安装介质中,并能通过安装程序进行安装。除了在初始安装时安装这些组件之外,系统正常运行时也能通过sysinstall或手工运行相关目录下的安装脚本install.sh来添加他们。编译应用软件

在Internet上有很多软件包,它们遵循GPL、BSD或相似的版权许可,允许用户编译运行这些软件。正常情况下,安装一个应用软件的过程是:获得源代码文件,这通常是一个使用tar打包,并使用compress或gzip压缩后的文件。一般通过ftp等网络下载工具从Internet上得到。 将文件解开,得到源代码文件,一般需要使用tar和gzip进行解包处理。 根据系统情况进行配置,通常这些软件提供了自动配置程序,能根据系统环境自动进行配置,或者可以手工更改设置文件。 然后就进行编译,创建可执行的程序。 接下来就需要将应用程序安装到系统的指定位置。 最后一步是配置应用程序的参数,使其能很好的执行。

虽然软件的作者通常已经将源代码编写相当完善,适合在多个平台上编译,但是将源代码编译成最终可执行的文件,仍然是一个花费时间且需要繁琐操作的过程。尤其是当用户对系统不是很了解的情况下,往往就可能在某一步遇到了问题,结果就会导致整个安装过程不能正常完成。

因此FreeBSD提供了Ports Collection机制来管理、安装软件。每种要被移植到FreeBSD上软件被称为一个Port,由某个FreeBSD的开发者维护。这个Port的维护者首先将软件移植到FreeBSD上,并将他所完成的这些移植工作按照Ports Collection 的要求进行设置,编写相关的脚本,使下载软件、配置、编译、安装的全过程能够自动完成,不需人工干预。每个Port中并没有保存软件包的源代码或者二进制代码,而只是提供了搜索它的源代码或者二进制软件包的方法。有了Ports Collection,编译、安装应用程序的过程就相当容易了。

Ports Collection和Packages Collection是紧密相关的,大部分Port都会有对应的二进制软件包,除非这个软件的许可权对以二进制格式分发有所限制。通常每个源代码形式的Port使用tar.gz结尾,而相应的软件包使用.tgz结尾。因此可以使用后缀来区分Port和软件包。可以从Port中直接生成对应的二进制软件包。Ports Collection

对于一般的使用者,有了FreeBSD提供的众多预编译好的软件包,就可以直接安装这些应用软件的二进制版本,而不需要使用Ports Collection重新编译软件。然而安装介质上附带的软件包是按照缺省配置生成的,适合大多数用户的需要,但并不一定最适合特定用户的特定需求。如果需要对某个软件进行定制安装,就需要使用 Ports Collection,进行修改后重新编译安装。

在启动这个软件的安装与管理机制之前,必须安装 ── Ports Collection的源代码ports.tgz,它在安装介质中提供,系统的初始安装过程中,安装程序将提示使用者安装Ports Collection,系统安装之后也能直接从安装介质上重新安装或更新。

Ports Collection的源代码被安装到/usr/ports目录中,这个目录称为Ports 树,以树状结构保存了各个应用程序的Ports。与Packages Collection的目录结构相同,Ports中也按类别进行相关分类,/usr/ports下的每个子目录都包含某一类软件,在下一级的每个子目录下就放置各个Port。$ cd /usr/ports$ lsCVS

archivers

devel

math

textprocINDEX

astro

distfiles

mbone

vietnameseLEGAL

audio

editors

misc

wwwMakefile

benchmarks

emulators

net

x11Mk

biology

games

news

x11-clocksREADME

cad

german

palm

x11-fmREADME.html

chinese

graphics

print

x11-fontsTemplates

comms

japanese

russian

x11-toolkitsTools

converters

korean

security

x11-wmWWW_SITE

databases

lang

shellsYEAR2000

deskutils

mail

sysutils

因为每个Port的代码位于自己的目录中,如果仅仅只想安装某个软件包的port,在解压缩中只解某个具体的软件就可以了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有