自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

FreeBSD 8下如何最有效率的安裝軟件

原創(chuàng)
系統(tǒng) Linux
本文總結(jié)介紹了在FreeBSD下安裝軟件的一些很有效率的方式。FreeBSD下最有特色的軟件安裝和升級機制就是ports,只要配置得當(dāng)并能夠熟練運用,能夠節(jié)省很多的時間。另外,pkg_add和源碼安裝的方式也十分常用。

【51CTO獨家特稿】FreeBSD的默認下載工具是fetch,既慢又不好用。在FreeBSD下安裝軟件有一些很有效率的方式,下面就給大家介紹一下。

51CTO編輯推薦:FreeBSD入門專題

Ports機制

首先,F(xiàn)reeBSD下最有特色的軟件安裝和升級機制就是ports,既方便又高效。下面我們從ports套件的安裝開始講起,讓你細致的了解有關(guān)ports的每一個細節(jié)。

推薦專題:企業(yè)內(nèi)網(wǎng)開發(fā)環(huán)境部署與管理全攻略(FreeBSD+PHP)

一、ports套件的安裝

①我的FreeBSD 8.0-release是最小化安裝,所以既沒有ports,也沒有/usr/ports目錄。選擇啟用ports的話,需要在root下輸入"sysinstall"來安裝它:

輸入sysinstall --> 選擇Configure --> Distributions --> ports,然后安裝即可。

②ports的默認路徑是/usr/ports。這個ports的根目錄下面有很多的文件夾及子文件夾,組成一個樹狀目錄,包含大量ports下的軟件。比如mail是郵件服務(wù)軟件,games是游戲,www代表web服務(wù)軟件,databases則是數(shù)據(jù)庫軟件。

[root@bsd01 /usr/ports]# cd www
[root@bsd01 /usr/ports/www]# ls -d apache*
apache-contrib apache13 apache13-modssl+ipv6
apache-forrest apache13+ipv6 apache13-ssl
apache-jserv apache13-modperl apache20
apache-mode.el apache13-modssl apache22

如果你需要安裝什么軟件,只要進入當(dāng)前目錄,然后“make install clean”即可。

[root@bsd01 ~]# cd /usr/ports/www/apache22
[root@bsd01 /usr/ports/www/apache22] make install clean

/usr/ports/distfiles是存放軟件包的文件夾。ports會先檢查/usr/ports/distfiles目錄內(nèi)有沒有這個軟件包,如果沒有它就會自動從網(wǎng)上下載安裝。

二、加速ports的升級速度

ports從網(wǎng)上下載軟件包自動安裝,那么從那里下載呢?首先,我們需要安裝axel來取代默認的下載工具fetch,這樣可以提高ports的安裝速度:

cd /usr/ports/ftp/axel
make install

然后,我們需要一個源地址管理。跟ubuntu上的/etc/source.list文件一樣,freebsd用的文件是/etc/make.conf,我們可以修改其文件,達到加速下載的目的。

#修改 /et/make.conf
vi /etc/make.conf
#加入以下內(nèi)容
FETCH_CMD=axel
FETCH_BEFORE_ARGS= -n 10 -a
FETCH_AFTER_ARGS=
DISABLE_SIZE=yes
MASTER_SITE_OVERRIDE?=\
http://ports.hshh.org/${DIST_SUBDIR}/\
http://ports.cn.freebsd.org/${DIST_SUBDIR}/\
ftp://ftp.freeBSDchina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?=${MASTER_SITE_BACKUP}       

這樣處理后,在公司的網(wǎng)絡(luò)環(huán)境下,F(xiàn)reeBSD的下載速度明顯提高了,有時居然能達到1M/s,這樣升級及安裝軟件方便極了;呵呵,終于可以擺脫fetch的龜速了。

三、更新ports目錄樹

既然ports的樹目錄全部下載到本地,那么即使FreeBSD有新的軟件包或者添置了新的軟件,本地目錄樹也不會更新。所以,我們每隔一段時間需要更新本地目錄樹。我來介紹一種在FreeBSD中方便、快捷的更新ports的方法:使用portsnap來更新ports目錄樹。

①配置portsnap:

我們使用portsnap,首先要設(shè)置一下它的配置文件,位于/etc/portsnap.conf:

[root@bsd01 /usr/ports]# vi /etc/portsnap.conf

SERVERNAME=portsnap.freebsd.org

修改成:

SERVERNAME=portsnap.hshh.org

這個是他的更新服務(wù)器。另外還有幾個國內(nèi)比較快的portsnap服務(wù)器:

portsnap.hshh.org

portsnap2.hshh.org

portsnap3.hshh.org (網(wǎng)通)

portsnap4.hshh.org

②首次使用portsnap:

在你的FreeBSD首次使用portsnap必須執(zhí)行下面2步:

[root@bsd01 ~]# portsnap fetch
[root@bsd01 ~]# portsnap extract

portsnap fecth是從網(wǎng)上獲取portsnap快照的最新壓縮包,聽聞這個壓縮包官方?jīng)]小時更新一次。

portsnap extract 則是把這個壓縮包創(chuàng)立到/usr/ports。哪怕你以前已經(jīng)手工安裝了ports,他也會重新創(chuàng)立一次。

(注:這2步可以合成使用,指令為 [root@bsd01 ~]# portsnap fetch extract)

③以后使用portsnap更新,只需要執(zhí)行下面2步:

[root@bsd01 ~]# portsnap fetch
[root@bsd01 ~]# portsnap update

同樣,這2步可以合成使用:[root@bsd01 ~]# portsnap fetch update

portsnap第一次運行extract命令時,可能需要一段時間,以后更新使用update的時候,速度就快很多了。

#p#

四、ports管理軟件常用命令

①安裝軟件

下面以安裝rpm為例:

[root@bsd01 ~]# cd /usr/ports/archivers/rpm
[root@bsd01 /usr/ports/archivers/rpm]# make install clean

軟件安裝的過程中會生成大量的暫存文件。這些暫存文件建議保留,但是有時候,比如使用測試服務(wù)器的時候,可以通過清除暫存文件來節(jié)約磁盤空間。如果想清除www內(nèi)所有的暫存文件,就cd到/usr/ports/www內(nèi)。如果想清除所有的暫存文件,就cd到/usr/ports根目錄:

[root@bsd01 ~]# cd /usr/ports
[root@bsd01 /usr/ports]# make clean

make clean只是清除暫存文件,并不是清除該文件夾里面的軟件包。什么是暫存文件?其實主要是編譯過程產(chǎn)生的一些臨時文件,其實也是軟件目錄內(nèi)的work文件夾,而執(zhí)行make clean會把當(dāng)前軟件目錄內(nèi)的work文件夾刪除。

如果想刪除文件夾內(nèi)中的軟件包該怎么做呢?

[root@bsd01 ~]# cd /usr/ports/www/apache22
[root@bsd01 /usr/ports/www/apache22]# make distclean

make distclean不但會清除軟件包,而且也包含了make clean命令的效果。這樣就會清除apache22的軟件包,以及apache22目錄內(nèi)的work文件夾。

同理,如果想清除所有www內(nèi)的軟件包及暫存文件,就cd到/usr/ports/www;如果像清除所有的包及暫存文件,就cd到ports根目錄。

②卸載軟件

卸載軟件用make deinstall:

[root@bsd01 ~]# cd /usr/ports/www/apache22
[root@bsd01 /usr/ports/www/apache22]# make deinstall

③查詢可用ports安裝的軟件

我一直想,F(xiàn)reeBSD的ports直接在系統(tǒng)內(nèi)占用資源空間組成樹目錄是好還是不好呢?如果要是從能查詢這一點講就比apt-get好一些了,以前用apt-get安裝軟件的時候,要是遇到一些稍微不規(guī)范一點的軟件,就很難知道名字了,經(jīng)常要用正則表達式來測試軟件名是什么。

而現(xiàn)在在FreeBSD里面可以直接在ports樹目錄內(nèi)查詢可用的軟件了。

[root@bsd01 ~]# cd /usr/ports
[root@bsd01 /usr/ports]# make search key=apache

不過這種會找出很多,看的眼花,但是我們注意到有一個細節(jié),就是Port和Path這兩個關(guān)鍵字,一個代表名字,一個代表路徑,我們就可以改善+過濾:

[root@bsd01 /usr/ports]# make search key=^apache-2 | grep -E "Port:|Path:|Info:"
Port: apache-2.0.61_2
Path: /usr/ports/www/apache20
Info: Version 2 of Apache web server with prefork MPM.
Port: apache-2.1.9_7
Path: /usr/ports/www/apache21
Info: Version 2.1 of Apache web server with prefork MPM.
Port: apache-2.2.6_2
Path: /usr/ports/www/apache22
Info: Version 2.2 of Apache web server with prefork MPM.

④查詢已安裝的軟件

怎么像Linux中用“rpm -qa | grep samba”來查詢某個軟件是否安裝了呢(這里以samba為例),ports用“pkg_info”:

[root@bsd01 ~]# pkg_info | grep samba
samba-3.0.32_1,1 A free SMB and CIFS client and server for UNIX
samba-libsmbclient-3.0.28 Shared libs from the samba package
[root@bsd01 ~]# pkg_info | grep nfs

#p#

五、安裝示例

在FreeBSD 8下采用ports安裝現(xiàn)在最流行的FAMP及FNMP架構(gòu)都是很容易和方便的事情,網(wǎng)上的文章也很多,我這里就不一詳細說明了。我這里以安裝Nginx和Git-Server來說明下,安裝步驟如下:

①安裝 Nginx

首先安裝 pcre8.00(pcre 是Nginx所需的Perl兼容正則表達式庫)

cd /usr/ports/devel/pcre
make install

安裝 Nginx0.7.65

cd /usr/ports/www/nginx
make install

配置編譯參數(shù)

[ ] DEBUG                     Enable nginx debugging
[ ] IPV6                      Enable IPv6
[ ] GOOGLE_PERFTOOLS          Enable google perftools module
[X] HTTP_MODULE               Enable HTTP module
[ ] HTTP_ADDITION_MODULE      Enable http_addition module
[X] HTTP_CACHE_MODULE         Enable http_cache module
[ ] HTTP_DAV_MODULE           Enable http_webdav module
[ ] HTTP_FLV_MODULE           Enable http_flv module
[X] HTTP_GZIP_STATIC_MODULE   Enable http_gzip_static module
[ ] HTTP_IMAGE_FILTER_MODULE Enable http_image_filter module
[ ] HTTP_PERL_MODULE          Enable http_perl module
[ ] HTTP_RANDOM_INDEX_MODULE Enable http_random_index module
[ ] HTTP_REALIP_MODULE        Enable http_realip module
[X] HTTP_REWRITE_MODULE       Enable http_rewrite module
[ ] HTTP_SECURE_LINK_MODULE   Enable http_secure_link module
[ ] HTTP_SSL_MODULE           Enable http_ssl module
[X] HTTP_STATUS_MODULE        Enable http_stub_status module
[ ] HTTP_SUB_MODULE           Enable http_sub module
[ ] HTTP_XSLT_MODULE          Enable http_xslt module
[ ] MAIL_MODULE               Enable IMAP4/POP3/SMTP proxy module
[ ] MAIL_IMAP_MODULE          Enable IMAP4 proxy module
[ ] MAIL_POP3_MODULE          Enable POP3 proxy module
[ ] MAIL_SMTP_MODULE          Enable SMTP proxy module
[ ] MAIL_SSL_MODULE           Enable mail_ssl module
[ ] WWW                       Enable html sample files
[ ] HTTP_ACCESSKEY_MODULE     3rd party http_accesskey module
[ ] HTTP_EVAL_MODULE          3rd party eval module
[ ] HTTP_FANCYINDEX_MODULE    3rd party http_fancyindex module
[ ] HTTP_MOGILEFS_MODULE      3rd party mogilefs module
[ ] HTTP_MP4_H264_MODULE      3rd party mp4/h264 module
[ ] HTTP_NOTICE_MODULE        3rd party notice module
[ ] HTTP_REDIS_MODULE         3rd party http_redis module
[ ] HTTP_RESPONSE_MODULE      3rd party http_response module
[ ] HTTP_UPLOAD_MODULE        3rd party upload module
[ ] HTTP_UPLOAD_PROGRESS      3rd party upload_progress module
[ ] HTTP_UPSTREAM_FAIR        3rd party upstream fair module
[ ] HTTP_UPSTREAM_KEEPALIVE   3rd party upstream keepalive module
[ ] HTTP_ZIP_MODULE           3rd party http_zip module
[ ] PASSENGER_MODULE          3rd party passenger modulepkg_add -r -v vim-litepkg_add -r -v vim-lite

啟動nginx

/usr/local/sbin/nginx

查看端口號及使用進程等

lsof -i:80
mail# lsof -i:80
COMMAND PID USER   FD   TYPE     DEVICE SIZE/OFF NODE NAME
nginx   2799 root    6u IPv4 0xc2f34278      0t0 TCP *:http (LISTEN)
nginx   2800 www    6u IPv4 0xc2f34278      0t0 TCP *:http (LISTEN)

②安裝Git-Server

源碼安裝Git-Server還是很麻煩的,不過好在FreeBSD下的ports里直接有g(shù)it,呵呵。

1、用ports安裝:

cd /usr/ports/devel/git ; make install clean                              

2、修改/etc/r c.conf

git_daemon_enable=”YES”

3、新增使用者

git  pw useradd git  

4、啟用git daemon

/usr/local/etc/rc.d/git_daemon start

5、安裝lsof命令來驗證其端口9418

pkg_add –r –v lsof ; lsof –i:9418

驗證端口 

其他升級機制

除了ports之外,還要推薦下Freebsd中用得多的pkg_add,其特色是簡單和方便,用ports安裝vim老愛出問題,所以我一般直接

pkg_add -r -v vim-lite

發(fā)現(xiàn)Freebsd8默認居然沒有安裝nmap,呵呵,搞定它

pkg_add –r –v  nmap

最后,源碼安裝在FreeBSD下也是可以的,特別適合編譯安裝一些有特殊參數(shù)要求的軟件,基本跟在centos上沒什么變化,這個就不多說了。希望大家能從此篇文章熟練掌握到ports的安裝技巧,達到簡化工作的目的。

【編輯推薦】

  1. FreeBSD入門指南——安裝配置與系統(tǒng)優(yōu)化
  2. FreeBSD 8.0安裝詳解(圖文)
  3. 分享FreeBSD 8.0的十四條優(yōu)化策略 

 

 

責(zé)任編輯:yangsai 來源: 51CTO.com
相關(guān)推薦

2017-10-16 13:23:18

手機信息iphone

2020-12-09 22:00:38

GitLinux版本控制系統(tǒng)

2016-04-28 16:17:44

又拍云/CDN

2023-10-13 18:28:30

AI工具用戶

2018-01-24 10:22:56

2018-01-18 05:20:59

2021-07-12 14:50:25

Linux命令文件

2009-08-25 17:31:57

C#讀取文件

2011-09-16 10:08:01

佳能傳真機

2017-07-12 12:43:42

數(shù)據(jù)庫SQL

2011-04-06 10:03:08

2010-11-24 13:31:20

MYSQL表聯(lián)結(jié)

2021-01-27 13:28:55

編程語言Python

2020-12-22 10:46:42

Windows10操作系統(tǒng)應(yīng)用

2011-03-31 10:26:51

安裝MRTG

2011-04-01 09:18:03

FreeBSD安裝MRTG

2013-10-16 09:51:21

時間管理效率管理

2011-05-04 16:56:45

激光一體機使用技巧

2023-03-16 08:20:30

數(shù)據(jù)中心

2017-05-10 09:53:55

奧菲 傳媒
點贊
收藏

51CTO技術(shù)棧公眾號