為什么需要?jiǎng)?chuàng)建ubuntu本地鏡像ubuntu發(fā)行版光盤(pán)中都只有少數(shù)常用軟件包。ubuntu上要安裝的軟件,常常需要到ubuntu源服務(wù)器上下載。 使用如下命令可以搜索和安裝可用的軟件包。 apt-cache search packageName sudo apt-get install packageName apt-get實(shí)際使用wget命令,從/etc/apt/sources.list配置文件指定的源上下載對(duì)應(yīng)的.deb軟件包,然后使用dpkg -i packageName.deb安裝軟件。 如果ubuntu電腦所在的環(huán)境網(wǎng)絡(luò)性能較差,或者不能連接互聯(lián)網(wǎng),那么就很難安裝ubuntu source服務(wù)器上的海量軟件包。 此時(shí),你可以在局域網(wǎng)內(nèi)創(chuàng)建自己的ubuntu source服務(wù)器,從而節(jié)省大量網(wǎng)絡(luò)流量,并且可以大大提高安裝軟件的速度! 本文將介紹如何創(chuàng)建ubuntu source的本地鏡像。 創(chuàng)建ubuntu本地鏡像需求為了創(chuàng)建ubuntu mirror服務(wù)器,你需要至少60G硬盤(pán)剩余空間。Ubuntu每一個(gè)版本分為32bit和64bit兩個(gè)版本,有兩組deb包。最新的ubuntu版本兩組deb包需要大約90GB的空間。 你可以創(chuàng)建ubuntu一個(gè)版本的32或者64bit服務(wù)器,也可以創(chuàng)建同時(shí)服務(wù)于32和64bit的服務(wù)器。也可以創(chuàng)建服務(wù)于所有ubuntu版本的source服務(wù)器。根據(jù)你的硬盤(pán)剩余空間和你的需要而定。 使用sohu的ubuntu source服務(wù)器作為源服務(wù)器Sohu公司提供了多種Linux和BSD操作系統(tǒng)發(fā)行版的source服務(wù)器。點(diǎn)擊下面鏈接 可以看到sohu公司提供的所有種類的source服務(wù)器。 點(diǎn)擊http://mirrors.sohu.com/help/ubuntu.html 頁(yè)面可以看到ubuntu source服務(wù)器的使用幫助。 你可以直接修改/etc/apt/sources.list文件,添加上sohu的source服務(wù)器,從而使用sohu的source服務(wù)器,這比使用國(guó)外的ubuntu官方source服務(wù)器速度要快很多。 我接下來(lái),要根據(jù)sohu的ubuntu source服務(wù)器,構(gòu)建本地的ubuntu source服務(wù)器。 我選擇sohu的ubuntu source服務(wù)器作為復(fù)制的source的原因: 1,sohu的ubuntu source服務(wù)器速度相當(dāng)快。如果我使用ubuntu官方的source服務(wù)器作為復(fù)制的源,顯然會(huì)花費(fèi)更多的時(shí)間。 2,sohu的ubuntu source服務(wù)器每天都會(huì)和ubuntu官方source服務(wù)器同步一次。因此可以保證我能夠使用最新版本的deb包。 我構(gòu)建的ubuntu source服務(wù)器也會(huì)每天和sohu的ubuntu source服務(wù)器同步一次。 使用apt-mirror創(chuàng)建ubuntu source服務(wù)器的本地鏡像服務(wù)器Sudo apt-get install apt-mirror sudo apt-get install apache2 我們需要上面這兩個(gè)軟件來(lái)構(gòu)建我們的本地ubuntu source服務(wù)器。 我現(xiàn)在以構(gòu)建ubuntu10.10和ubuntu10.04的32和64位版本的本地ubunt source服務(wù)器為例進(jìn)行介紹。 如果你需要服務(wù)于其他版本,請(qǐng)修改對(duì)應(yīng)的配置。 /etc/apt/mirror.list配置文件修改為如下: ############# config ################## # # set base_path /var/spool/apt-mirror # # set mirror_path $base_path/mirror # set skel_path $base_path/skel # set var_path $base_path/var # set cleanscript $var_path/clean.sh # set defaultarch <running host architecture> # set postmirror_script $var_path/postmirror.sh # set run_postmirror 0 set nthreads 20 set _tilde 0 # ############# end config ############## deb http://mirrors.sohu.com/ubuntu lucid main main/debian-installer restricted restricted/debian-installer universe multiverse deb http://mirrors.sohu.com/ubuntu maverick main main/debian-installer restricted restricted/debian-installer universe multiverse deb http://mirrors.sohu.com/ubuntu lucid-security main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu maverick-security main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu lucid-updates main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu maverick-updates main restricted universe multiverse #deb http://archive./ubuntu maverick-proposed main restricted universe multiverse #deb http://archive./ubuntu maverick-backports main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu lucid main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu maverick main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu lucid-security main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu maverick-security main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu lucid-updates main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu maverick-updates main restricted universe multiverse #deb-src http://archive./ubuntu maverick-proposed main restricted universe multiverse #deb-src http://archive./ubuntu maverick-backports main restricted universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu lucid main main/debian-installer restricted restricted/debian-installer universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu maverick main main/debian-installer restricted restricted/debian-installer universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu lucid-security main restricted universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu maverick-security main restricted universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu lucid-updates main restricted universe multiverse deb-i386 http://mirrors.sohu.com/ubuntu maverick-updates main restricted universe multiverse #deb http://archive./ubuntu maverick-proposed main restricted universe multiverse #deb http://archive./ubuntu maverick-backports main restricted universe multiverse #deb-src http://mirrors.sohu.com/ubuntu lucid main restricted universe multiverse #deb-src http://mirrors.sohu.com/ubuntu maverick main restricted universe multiverse 說(shuō)明: maverick和lucid分別是ubuntu10.10和10.04的代號(hào)。 deb http://* 表示下載64位版本的deb軟件。 deb-i386 http://* 表示下載32位版本的deb軟件。 然后執(zhí)行: sudo apt-mirror 這會(huì)啟動(dòng)20個(gè)線程【上面文件中配置】運(yùn)行wget到 http://mirrors.sohu.com/ubuntu 下面下載相應(yīng)的deb包。 sudo apt-mirror執(zhí)行完成后,/var/spool/apt-mirror目錄下就有了所有需要的deb包和相應(yīng)的配置文件。 因?yàn)槲椰F(xiàn)在是從sohu下載的,所以實(shí)際的文件在:/var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu目錄下。 如果你選擇其他ubuntu source服務(wù)區(qū),那么會(huì)下載到其他對(duì)應(yīng)的目錄下。 啟動(dòng)本地Web服務(wù)器以啟動(dòng)本地ubuntu source服務(wù)器現(xiàn)在我們本地已經(jīng)有了所有ubuntu source服務(wù)器需要的文件,但是現(xiàn)在我們還不能使用本地的ubuntu source服務(wù)器。因?yàn)樗€沒(méi)有啟動(dòng)。 Ubuntu source服務(wù)器實(shí)際上是一個(gè)http服務(wù)器。我們?cè)L問(wèn)sohu的ubuntu source服務(wù)器就是用瀏覽器訪問(wèn)的。 所以,我們也需要啟動(dòng)一個(gè)web服務(wù)器來(lái)啟動(dòng)本地的ubuntu source服務(wù)器。 我選擇使用apache2這個(gè)web服務(wù)器來(lái)為ubuntu source服務(wù)器服務(wù)。Ubuntu source服務(wù)器實(shí)際上就是一系列靜態(tài)文件。 Apt-cache ,apt-get 程序就是通過(guò)wget下載對(duì)應(yīng)的靜態(tài)文件實(shí)現(xiàn)軟件下載和安裝的。 眾所周知,Apache2 Web服務(wù)器服務(wù)于靜態(tài)文件時(shí)非常高效、穩(wěn)定。因此我選擇apache2服務(wù)器。 apache2服務(wù)器安裝后,默認(rèn)使用/var/www/目錄作為Web的根目錄。 我這里取個(gè)巧,直接 cd /var/www/ 然后 ln /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu -s 在/var/www目錄下創(chuàng)建一個(gè)ubuntu超鏈接,鏈接到/var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu目錄下。 sudo apache2ctl start/restart/stop/status 命令可以管理apache2服務(wù)器。使用sudo apache2ctl start啟動(dòng)。 打開(kāi)瀏覽器,輸入http://localhost/ubuntu 就可以看到和http://mirrors.sohu.com/ubuntu/ 相同的頁(yè)面。 至此,我們的本地ubuntu source服務(wù)器已經(jīng)創(chuàng)建成功了。 每天定時(shí)同步本地ubunt source服務(wù)器和遠(yuǎn)程ubunt source服務(wù)器我們現(xiàn)在創(chuàng)建的ubunt source服務(wù)器的內(nèi)容和sohu版本的服務(wù)器相同。但是,每天ubuntu團(tuán)隊(duì)都在向ubuntu source服務(wù)器中添加新的deb包。 Sohu每天也都會(huì)和ubuntu官方source服務(wù)器同步。 我們必須經(jīng)常使用sudo apt-mirror命令才能同步最新的deb包。 我們可以使用一個(gè)定時(shí)執(zhí)行的腳本,實(shí)現(xiàn)每天和sohu的ubuntu source服務(wù)器同步來(lái)解決這個(gè)問(wèn)題。 Sudovim /etc/cron.d/apt-mirror 把命令簽名的#去掉。命令如下: 0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log 這樣,計(jì)算機(jī)每天就會(huì)自動(dòng)啟動(dòng)apt-mirror和ubuntu source服務(wù)器同步。 使用本地ubuntu source鏡像服務(wù)器現(xiàn)在,我們可以修改/etc/atp/source.list文件以使用本地ubuntu source服務(wù)器作為apt源。 如,我的ubunt服務(wù)器的地址是172.16.1.1,那么加入: deb http://172.16.1.1/ubuntu maverick main deb-src http://172.16.1.1/ubuntu maverick main deb http://172.16.1.1/ubuntu maverick main restricted universe multiverse deb-src http://172.16.1.1/ubuntu maverick main restricted universe multiverse deb http://172.16.1.1/ubuntu maverick-security main restricted universe multiverse deb-src http://172.16.1.1/ubuntu maverick-security main restricted universe multiverse deb http://172.16.1.1/ubuntu maverick-updates main restricted universe multiverse deb-src http://172.16.1.1/ubuntu maverick-updates main restricted universe multiverse 即可。如果你還想同時(shí)使用其他的ubunt source服務(wù)器,那么把上述配置放在配置文件的上面,以先匹配。 然后執(zhí)行sudo apt-get update更新,以重建本地索引。以后就會(huì)使用本地的ubunt source服務(wù)器了。速度嗖嗖的:) |
|
來(lái)自: yetao_study > 《Linux》