下面介紹幾種內網方式下快速安裝一些依賴包的方法
1 如果筆記本可以連外網,可以使用代理的方式,實現服務器使用yum,npm等一些安裝工具
筆記本安裝 CCPROXY
開啟代理
cmd開啟 set http_proxy=http://IP:端口
ssh連接到服務器后
在/etc/yum.conf后面添加以下內容:
如果代理不需要用戶名密碼認證:
proxy=http://代理服務器IP地址:端口號
這樣服務器就可以是用yum命令了
同樣可以代理使用 gem git npm 等方式
npm
設置全局使用指定的鏡像:
$ npm config set registry < registry url >
或者在安裝時才指定:
$ npm install --registry < registry url >
當然, 每次都要輸入那么長串的 registry url 的話, 實在太麻煩, 可以使用 nrm 這個模塊來切換鏡像:
// 全局安裝 $ npm install -g nrm // 查看有哪些鏡像 $ nrm ls // 對比各個鏡像的訪問速度 $ nrm test // 使用淘寶的鏡像 $ nrm use taobao
gem
$ gem source -r <registry url>
gem 除了使用鏡像以外, 還可以直接到官網下載需要的包, 然后在本地安裝,
比如我們要安裝 sass, 先到這里 把 sass 下載到本地, 然后在本地安裝:
// 注意這里的 sass.gem 是下載到本地的包名
$ gem install --local sass.gem
使用代理
鏡像不能用, 那就使用代理吧.
假定公司提供的代理為 http://proxy.mysite.com:8080
給命令行統一設置代理
-
windows
$ set http_proxy=http://proxy.mysite.com:8080
// 如果有要求用戶名密碼則輸入:
$ set http_proxy_user=< username >
$ set http_proxy_pass=< password >
若不想每次都手動設置, 則可以設置到系統的環境變量中
右擊計算機–>屬性–>高級–>環境變量–>系統變量,設置系統變量
-
mac
$ sudo networksetup -setwebproxy "Ethernet" http://proxy.mysite.com 8000
git
設置:
$ git config --global http.proxy http://proxy.mysite.com:8080
取消:
$ git config --global --unset http.proxy
npm
設置:
$ npm config set proxy=http://proxy.mysite.com:8080
取消:
$ npm config delete proxy
bower
設置:
修改 .bowerrc 文件(如無則新增):
{
"proxy": "http://proxy.mysite.com:8080", "https-proxy": "http://proxy.mysite.com:8080" }
取消:
刪除 .bowerrc 里對應的配置即可
gem
比如我們要安裝 sass
設置:
安裝時加上 --http-proxy 參數
$ gem install --http-proxy http://proxy.mysite.com:8080 sass
取消:
安裝時不加上 --http-proxy 參數
$ gem install sass
2 通過可以使用互聯網的服務器,下載rpm安裝包
編輯配置文件 /etc/yum.conf
vi /etc/yum.conf
keepcache=0改為keepcache=1
cachedir=/var/cache/yum/ rpm緩存目錄
例如:yum install tk tcl enca zip unzip vsftpd lftp ntp wget dos2unix vim-enhanced net-tools -y
安裝完畢后,把/var/cache/yum目錄下所有rpm包拷貝到某個目錄下,比如拷貝到/home/test目錄下
find /var/cache/yum/ -name *.rpm -type f -exec cp {} /home/test/ \;

安裝createrepo(創建yum源索引)
#yum install createrepo -y
#cd /home
#createrepo -v test
配置本地yum文件
#cd /etc/yum.repos.d
#vi test.repo

#yum clean all
#yum makecache

包被安裝過的話,文件將不會被下載。除非用這條命令:
#yum reinstall -y 包名 --downloadonly --downloaddir=路徑
參考
https://segmentfault.com/a/1190000002435496
https://blog.51cto.com/13578154/2083538