yumサーバの架設
3903 ワード
一、原理
サーバ側:
すべてのrpmパッケージを格納し、コマンドでrpmパッケージ間の依存関係を分析し、これらの依存関係をファイルとしてサーバに格納します.
クライアント:
yumプロファイルを構成し、あるパッケージをインストールし、yumサーバに記録された依存関係によりrpmパッケージの依存関係を自動的に解決します.
目的:
rpmパッケージの依存関係を自動的に解決し、自動的にダウンロードしてインストールします.
###分析インストールソフトウェア依存管理
man rpm
-R, --requires
List capabilities on which this package depends.
rpm -q --requires vsftpd-2.2.2-11.el6_3.1.x86_64.rpm
###分析パッケージ
# rpm -qf `which yum`
yum-3.2.29-40.el6.centos.noarch
プロファイル
# rpm -ql yum-3.2.29-40.el6.centos.noarch
logfile=/var/log/yum.log #ログファイル
CentOS-Base.repo#公式提供yumソース
CentOS-Media.repo#ローカルyumソース
他の3つのファイルを削除
*********************************************************************************
###yumソース
[root@nan2 yum.repos.d]# pwd
/etc/yum.repos.d
[root@nan2 yum.repos.d]# cat CentOS.repo
[Packages]
name=Packages
baseurl=ftp://10.201.1.221/Packages
gpgcheck=0
enabled=1
~~~~~~~~~~~~~~~~~~
エラー:
ソフトウェアをインストールすると、終了し、バックグラウンドで実行されます.
解決方法:
ps-ef|grep yum#バックグラウンドのすべてのプロセス
kill -9 1091 #プロセスを殺す
~~~~~~~~~~~~~~~~~~
###yumコマンド
yumインストールパッケージリストを表示するのはyumに存在するソフトウェアを検出します
[root@nan2 yum.repos.d]# yum list|grep vsftpd
vsftpd.x86_64 2.2.2-11.el6_3.1 Packages
#Packagesはインストールされていません
インストールされているソフトウェアの削除
]# yum remove vsftpd-2.2.2-11.el6_3.1.x86_64
ソフトウェアのインストール
#-yは手動でyを入力する必要はありませんが、一般的には推奨されません.
キャッシュのクリーンアップ
# yum clean all
**********************************************************************************
1.ローカルソフトウェアウェアハウスの構築
2.FTPソフトウェア倉庫
ftpソフトウェアウェアハウスの正式な作成
サーバ側:
すべてのrpmパッケージを格納し、コマンドでrpmパッケージ間の依存関係を分析し、これらの依存関係をファイルとしてサーバに格納します.
クライアント:
yumプロファイルを構成し、あるパッケージをインストールし、yumサーバに記録された依存関係によりrpmパッケージの依存関係を自動的に解決します.
目的:
rpmパッケージの依存関係を自動的に解決し、自動的にダウンロードしてインストールします.
###分析インストールソフトウェア依存管理
man rpm
-R, --requires
List capabilities on which this package depends.
rpm -q --requires vsftpd-2.2.2-11.el6_3.1.x86_64.rpm
###分析パッケージ
# rpm -qf `which yum`
yum-3.2.29-40.el6.centos.noarch
プロファイル
# rpm -ql yum-3.2.29-40.el6.centos.noarch
logfile=/var/log/yum.log #ログファイル
CentOS-Base.repo#公式提供yumソース
CentOS-Media.repo#ローカルyumソース
他の3つのファイルを削除
*********************************************************************************
###yumソース
[root@nan2 yum.repos.d]# pwd
/etc/yum.repos.d
[root@nan2 yum.repos.d]# cat CentOS.repo
[Packages]
name=Packages
baseurl=ftp://10.201.1.221/Packages
gpgcheck=0
enabled=1
~~~~~~~~~~~~~~~~~~
エラー:
ソフトウェアをインストールすると、終了し、バックグラウンドで実行されます.
解決方法:
ps-ef|grep yum#バックグラウンドのすべてのプロセス
kill -9 1091 #プロセスを殺す
~~~~~~~~~~~~~~~~~~
###yumコマンド
yumインストールパッケージリストを表示するのはyumに存在するソフトウェアを検出します
[root@nan2 yum.repos.d]# yum list|grep vsftpd
vsftpd.x86_64 2.2.2-11.el6_3.1 Packages
#Packagesはインストールされていません
インストールされているソフトウェアの削除
]# yum remove vsftpd-2.2.2-11.el6_3.1.x86_64
ソフトウェアのインストール
#-yは手動でyを入力する必要はありませんが、一般的には推奨されません.
キャッシュのクリーンアップ
# yum clean all
**********************************************************************************
1.ローカルソフトウェアウェアハウスの構築
1)
mount /dev/cdrom /mnt/dvd
2)
[CentOS6-Media] # ,
name=CentOS-$releasever - Media #
baseurl=file:///share/ #
gpgcheck=1 #gpg
enabled=1 #
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #
[root@nan2 yum.repos.d]# mkdir /share/ # /share/
[root@nan2 share]# cp -rf /mnt/dvd/* .
2.FTPソフトウェア倉庫
, , !!!!
, :
fdisk /dev/sdb # (a,b,c....)
n
partprobe
mkfs -t ext4 /dev/sdb1 #
mount /dev/sdb1 /share/ #
fdisk -l
dumpe2fs /dev/sdb1 |grep UUID # UUID
*** ****
vim /etc/fstab #
UUID= /share ext4 defaults #
init 6
df -lh
ftpソフトウェアウェアハウスの正式な作成
(1) share
shell>mkdir /share
shell>mount /dev/cdrom /mnt/dvd
shell>cp -rf /mnt/dvd/* .
(2) vsftp, CentOS-ftp.repo
shell>cd /share/Centos
shell>rpm -ivh vsftpd-2.0.5-28.el5.x86_64.rpm
shell> pwd
/etc/yum.repos.d
shell>rm -fr *
shell>cat CentOS-ftp.repo
[Packages]
name=Packages
baseurl=ftp://10.90.2.48/Packages
gpgcheck=0
enable=1
shell>yum clean all
(3) , /share
shell> vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_upload_enable=YES
anon_root=/share
shell> /etc/init.d/vsftpd restart
(4)
shell>pwd
/share/CentOS
shell>rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
shell>cd /share
shell>createrepo -v -g repodata/repomd.xml .
shell>createrepo -v -g /share/repodata/repomd.xml /share/CentOS
repodate rpm , , , 。
repomd.xml 。 。 。
,
(5)
shell>yum clean all
shell>yum list
### :
Loaded plugins: fastestmirror, security
Determining fastest mirrors
ftp://10.90.2.48/Packages/repodata/repomd.xml: [Errno 4] IOError: [Errno ftp error] 550 Failed to change directory.
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: Packages. Please verify its path and try again
### :
shell>ps -ef|grep yum
yum list