配置離線源
在個別開發環境中,我們可能有限制不能連外網。
這個情況可以通過用一台同內網的機器配置離線源,然后通過vsftp公用。
安裝ftp
rpm命令詳解
$ rpm -ivh apache-1.3.6.i386.rpm #安裝軟件:執行rpm -ivh rpm包名
$ rpm -Uvh rpm包名 #升級軟件
$ rpm -e rpm #卸載
$ rpm -qpi rpm包名 #查詢軟件包的詳細信息
$ rpm -qf rpm包名 #查詢某個文件是屬於那個rpm包的
$ rpm -qpl rpm包名 #查該軟件包會向系統里面寫入哪些文件
判斷是否安裝了 vsftp
[root@vs-yth12 ~]$ rpm -qa | grep vsftpd
vsftpd-3.0.2-21.el7.x86_64 #出現這個證明是安裝了
[root@vs-yth12 ~]$ yum install vsftpd #也可以用這個判斷
....
Package vsftpd-3.0.2-21.el7.x86_64 already installed and latest version
Nothing to do #說已經安裝了
安裝 vsftp
一般來說,centos都默認安裝好了的,如果沒安裝,
下載 FTP:- http://rpmfind.net/linux/rpm2html/search.php?query=vsftpd(x86-64)
[root@vs-yth12 ~]rpm -ivh vsftpd-3.0.2-21.el7.x86_64.rpm #直接安裝
[root@localhost ~]$ service vsftpd start #測試是否安裝成功
[root@vs-yth12 ~]$ whereis vsftpd # 默認配置文件: /etc/vsftpd/vsftpd.conf
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
上傳配置離線源
下載
下載 centos鏡像,這個官網下:- http://vault.centos.org/
阿里雲:- https://mirrors.aliyun.com/centos/
鏈接進去后選擇對應的版本,如7.3.1611點進去后再點擊isos,就可以找到。
下載epel,這個比較大。目前網上沒找到可以下載的,可以自己做:- http://mirrors.sohu.com/fedora-epel/7/x86_64/
這3個文件夾內容全下下來后,用UltraISO做成iso即可。注冊碼在網上找到了一個可以用的:
名:王濤
碼:7C81-1689-4046-626F
CentOS-7-x86_64-DVD-1611.iso
epel-7.x86_64.iso
上傳配置
把CentOS-7-x86_64-DVD-1611.iso,epel-7.x86_64.iso這2個鏡像上傳到/data上
$ cd /var/ftp/pub
$ mkdir epel
$ mkdir centos
$ mount /data/epel-7.x86_64.iso /var/ftp/pub/epel
$ mount /data/CentOS-7-x86_64-DVD-1611.iso /var/ftp/pub/centos
$ cd /etc/yum.repos.d/
$ mkdir backup
$ mv * backup #把所有文件移走備份,如果要用時移回來報錯就yum clean all&yum makecache
$ vi ftp.repo
[centos73]
name=centos73
baseurl=ftp://10.92.190.46/pub/centos73
enabled=1
gpgcheck=0
[epel]
name=epel #自定義
baseurl=ftp://10.92.190.46/pub/epel #可以用http,也可以本地文件:file:///var/ftp/pub/centos
enabled=1 #必須是1,這個配置文件才會生效
gpgcheck=0 #必須是0,這樣就不檢查
如果上傳慢的話,其他內網機器有這2個ISO,可以用sftp傳過來
sftp
sftp登陸遠程服務器
sftp username@ip
例如:sftp root@10.10.1.150
然后輸入password即可
put:上傳文件
例如:put *iso /data
將iso文件上傳到對端服務器,即10.10.1.150上面
get:下載文件
例如:get *iso
將遠端文件下載到本地
help:幫助命令
pwd/lpwd:pwd查看遠端服務器目錄;lpwd查看本端目錄。
ls/lls:ls列出遠端目錄文件;lls列出本端文件
!command:!+命令表示在本段運行命令
例如:!ls列出本端文件;!pwd顯示本端路徑
exit/quit:退出
其他機器
1.安裝 vsftp,啟動
2.移除所有/etc/yum.repos.d/下的所有文件
3.重新寫上ftp.repo文件
中間件離線安裝
在部分工作場景中有時候會遇到一些私有化部署的問題,就是在一些無法上網的機器上面安裝使用一些中間件,這就引出了離線安裝的問題,這里以docker的離線安裝為例。
離線安裝包下載
准備一台可以聯網,系統版本跟局域網那台的一樣,同樣沒有安裝過docker的機器。
一般使用yum install下載安裝包會進行安裝,安裝完成后刪除下載的安裝包,這里只下載不安裝
$ yum install --downloadonly --downloaddir=/home/docker/dockerRpm docker #將所有rpm包下載到/home/docker/dockerRpm上

制作yum源
先將所有rpm復制到局域網的機器上,我的放 /var/ftp/pub/docker
$ cd /var/ftp/pub/docker
$ createrepo . #構建源,生成repodata目錄
上傳配置
添加配置
$ cd /etc/yum.repos.d/
$ vi ftp.repo
[bk]
name=bk
baseurl=ftp://10.92.190.55/pub/bk #也可以用file:///var/ftp/pub/docker,這里用ftp需要systemctl enable vsftpd&&systemctl start vsftpd
enabled=1
gpgcheck=0
[centos73]
name=centos73
baseurl=ftp://10.92.190.46/pub/centos73
enabled=1
gpgcheck=0
[epel]
name=epel #自定義
baseurl=ftp://10.92.190.46/pub/epel #可以用http,也可以本地文件:file:///var/ftp/pub/centos
enabled=1 #必須是1,這個配置文件才會生效
gpgcheck=0 #必須是0,這樣就不檢查
$ yum repolist #查看是否能看到自己構建的源
repo id repo name status
!centos73 centos73 3,831
!docker docker 20
!epel epel 12,266
repolist: 16,117
$ yum clean all #清除緩存
$ yum makercache #創建緩存
安裝
$ yum install docker #安裝,這里要跟下包時的名稱一樣
