当前位置:首页 » 文件传输 » ftp创建本地yum源
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

ftp创建本地yum源

发布时间: 2022-07-14 10:30:10

① linux怎么配置yum

我就告诉你,如果在虚拟机上配置yum源

1、首先确定,你虚拟机上的镜像文件有没有连接上

(ps,下图,CD/DVD这个选项中,使用本地的镜像文件,并连接)

2、挂载镜像mount -o loop /dev/cdrom /mnt //将/dev/cdrom 挂载到/mnt文件下

3、修改文件vim /etc/yum.repos.d/yum.repo //yum.repo这个文件可以自己随便命令,只要后缀名是.repo就行(ps在yum.repos.d目录下只能存在一个.repo文件)

[Source] //这里的名字你可以随便命名,和下一行的名字一样

name=Source

baseurl=file:///mnt/Server //这个就是你挂载镜像文件的目录

enabled=1

gpgcheck=0

4、yum list //监测一下,是否配置成功

② linux真实机怎样配yum源

vi /etc/yum.repos.d/rhel-source.repo
[iso]
name=iso
baseurl=file:///mnt/iso
gpgcheck=0
enable=1
随便建立个xxxxx.repo文件在/etc/yum.repos.d下面,或者用原来的也可以。
上面写得是本地yum源的写法,把你的iso文件,mount在/mnt/iso下面,这样本地源yum就可以使用了。name后面和【】里面的东西是可以随便改的。

如果局域网里存在ftp源,把baseurl一项改了
baseurl=ftp://
后面接你的ftp的ip和源路径信息。网络里多的是。

网络源比较麻烦,原因是很多源不稳定,我测试过163的源,一直404 forbidden。后面就没弄过了。

多网络网络教程吧,3种方法分别搜,这样搜来的教程详细些。

③ 如何创建yum源,如何使用yum命令

大家都知道使用rpm命令安装软件的时候,有时候为了安装一个软件往往需要安装好几个软件来解决依赖关系,所以此时你就需要使用yum命令来解决软件安装的依赖关系。
要想使用yum安装软件,就需要配置好yum源。(我们以光盘yum源为例,以红帽5.4光盘为例)
# mount /dev/dvd /media

1.建立yum配置文件
在/etc/yum.repos.d/目录下,建立以.repo结尾的任意文件名的文件,例test.repo

#vim /etc/yum.repos.d/test.repo [base] name=Server baseurl=file:///media/Server gpgcheck=0 enabled=1 [VT] name=VT baseurl=file:///media/VT gpgcheck=0 enabled=1 [Cluster] name=Cluster baseurl=file:///media/Cluster gpgcheck=0 enabled=1 [ClusterStorage] name=ClusterStorage baseurl=file:///media/ClusterStorage gpgcheck=0 enabled=1

备注:如果使用ftp或http指向为yum源的话,就直接把每一段”baseurl=file:///media/*“改成ft p:/ /172.16.100.168/yum/*或htt p:/ /172.16.100.168/yum/*就OK了。
2.此时yum源就已经配置好了,就可以使用yum命令来安装软件或软件包组了。
那yum命令是如何使用的呢?
3.对安装软件包以及包组而言
#yum 常用选项
list {all,installed,available,updates} 列出所有的,已安装的,可安装的,更新的软件包
install 安装软件包
remove/erase 卸载软件包
update 升级软件包
check-update 检测可更新的软件包
provides 检测软件由哪个软件包安装的
downgrade 降级软件包
reinstall 重装软件包
clean 清除缓存
grouplist 显示所有软件包组的信息
groupinstall 安装软件包组
groupremove 卸载软件包组
groupinfo 包组信息
例:#yum install bind 安装bind软件包
例:#yum groupremove ”Development Tools“ 移除Development Tools软件包组

④ 如何建立自己的离线yum源

在创建之前,我们先了解些相关的内容:
yum仓库可以支持三种途径提供给yum在安装的时候下载rpm包
第一种: ftp服务 ftp://
第二种: http服务 http://
第三种: 本地文件 file://
我们暂且可以将yum的安装分为客户端和服务器端,当然你的客户端和服务器端可以是一台主机 ,我们今天介绍的就是在一台主机上完成的。
客户端就是我们用yum来安装rpm包的主机,其中也需要提供一些配置文件 定义yum的一些属性 以及告诉yum仓库在哪个地方等等
服务器端必须有配置好的yum仓库 yum仓库能正常的提供下载功能
yum客户端的配置文件有两部分组成
1:/etc/yum.conf 主配置文件 定义了全局属性,调试级别,日志文件保存位置等等信息
2:/etc/yum.repos.d/目录下每一个以repo结尾的文件 其中定义了yum仓库的名字,指向等信息, 此文件是我们今天要在客户端配置的文件
切入正题,简单的创建步骤如下:
1:#mount /dev/cdrom /media/cdrom 将镜像光盘挂载到cdrom目录下
#cd /media/cdrom/Server 切换到/media/cdrom/Server目录中,
#rpm –ivh createrepo-0.4.11-3.e15.noarch.rpm 安装createrepo软件包
(如果你已经有安装过createrepo这个软件包 此步可以跳过)
2 : # createrepo /var/yum 在/var/yum目录下创建yum源 当然此目录得事先存在,你也可以指定其他路径,完成之后你会发现目录/var/yum中有个repodata的目录 说明已安装成功 但是里面是没有rpm包的 你可以将镜像文件中Server目录下 的rpm包拷贝过来使用
#cp /media/cdrom/Server/*.rpm /var/yum 将server目录下的所有rpm包拷贝到/var/yum中
3:#vim /etc/yum.repos.d/yum.repo 编辑yumm.repo文件 此文件是我新建的一个repo结尾的文件,可按自己需求命名
编辑的内容如下 :
[yum] 指定yum源的识别名
name=yum 指定yum源的完整名称
baseurl=file:///var/yum 指定yum源的路径
gpgcheck=0 是否检查签名0为不检查
enable=1 是否启用yum源 1为启用
你也可以在这个文件中写入多个这样的yum源 ,如果你的ftp或者http服务器上有创建好的的yum源 ,也可以指定ftp服务器上或者http服务器的路径,来使用服务器上的yum源 例如baseurl=http://192.168.0.1/Server 其他几项可按照自己的要求来写入即可。
此时我们的yum源已经创建成功 用 #yum repolist 查询当前可用的yum源。yum源若成功创建,你再安装rpm包的时候,yum命令会自动在你所指定的路径下去下载所依赖的软件包了。

⑤ 怎么搭建基于ftp服务器的yum源

启动Red Hat Enterprise Linux ,并放入安装光盘
挂载光驱 mount /dev/cdrom /mnt
安装FTP服务
cd /mnt/Server
rpm -ivh vsftpd*
chkconfig vsftpd on
service vsftpd start
安装createrepo软件包
rpm –ivh createrepo*
拷贝系统盘中的文件到本系统中
cp -R /mnt/Server /var/ftp/pub
二. 搭建 Yum

生成依赖性关系createrepo -g /var/ftp/pub/Server/repodata/comps-rhel5-server-core. xml /var/ftp/pub/Server/这个地方要注意. comps-rhel5-server-core. xml一定不能手动生成. 默认安装光盘上已经有了
做完上面的步骤后会有一个错误提示. “Could not remove old metadata dir: . olddata“说目录有问题。不用管他. 把那个目录删除掉rm –rf /var/ftp/pub/Server/. olddata
把步骤1再做一遍createrepo -g /var/ftp/pub/Server/repodata/comps-rhel5-server-core. xml /var/ftp/pub/Server/
创建仓库文件 新建一个仓库文件. 名字可以随便起.cd /etc/yum.repos.d vim yum. repo在文件中写如下内容

[base]
name=base
# 192. 168. 0. 6是你的Yum源地址
baseurl=ftp://192. 168. 0. 6/pub/Server
# 是否开启源
enabled=1
#是否验证. 可不要
gpgcheck=1
#验证的密钥. 可不要
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

⑥ yum仓库如何放在有密码的ftp上不知道说明白没有,如果有大神明白了,求指教。

外网访问内网的FTP较麻烦因为涉及 NAT安全检查。与用的FTP服务端、客户端软件很有关系。
你似乎物理连接上,从外网能连接到内网,已成功了一步。
不知你FTP服务端与客户端用的是什么软件?
如果客户端用Cuteftp9.0,可以访问内网任意FTP服务端的,

⑦ 什么是Linux的YUM本地源,怎么配输入的rpm -qa|grep yum是什么上海交大的源是拷在txt里用么

YUM是“Yellow dog Updater, Modified”的缩写,可执行程序名为yum。YUM是一个在Fedora中的Shell前端软件包管理器。在红帽企业版Linux 5中引入YUM的重要原因之一,便是YUM能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装,便于管理大量系统的更新问题。
我们在安装好Linux后要进行YUM源的设置,是为了方便日后对软件包的管理,解决单独安装RPM软件包时可能产生的软件包依赖关系(使用yum人仓库中安装软件包,如果还有依赖的软件包,yum工具会一并安装。
在企业中,我们会设置企业自己的YUM源(库)方便企业Linux系统(主要是红帽和红帽的Fedora)对软件包的管理,更重要的原因是保证YUM源的安全性,因为一个软件包从源头就被开了口子那我们安装了这样的软件就等于给自己身上开刀!
所以,我们要对YUM库进行必要的配置工作。

⑧ 如何将 make install 的包 制作为 yum 源

yum 源的配置
不管怎么说修改的是yum的配置文件:/etc/yum.repo.d/下面的*.repo结尾的文件
还要注意的是,在这个目录下只能有一个这样的文件
接下来我们来看看这个文件的简单配置
vim /etc/yum.repo.d/rhel.repo
[bendiyum] 你可以根据你自己的需要要弄
name=bendi 你可以根据你自己的需要要弄
#baseurl=ftp://update:[email protected]/Server/ 基于ftp的
#baseurl=http://mirrors.163.com/centos/6.3/os/i386/ 这是通过网络上的源来填写的
baseurl=file:///var/ftp/rhel6/Server 这是你本地的 (关于这三个你只能有一个)
enabled=1 是否启动这个yum源 1 是yes
gpgcheck=0 是否启动gpg检测 0是 no
#gpgkey=http://mirrors.163.com/centos/6.3/os/i386/RPM-GPG-KEY-CentOS-6
这是你gpg用来验证的东东,必须要你所在的yum源目录,中存在

我们在建立自己的yum源库的时候,不要忘记了,依赖关系包 *.xml文件,是叫索引文件,你可可以去看自己的光盘就可以看到
没有这个文件表示你的yum源还没有成功
A,要去下载软件,createrepo 在光盘中已经存在,若是你用yum做了光盘的yum源,那么你可以用yum安装
若是你没有,进去光盘的rpm包中去rpm -ivh createrepo 这里要解决包的依赖关系
B,更新 createrepo --update /yum (rpm包,就在你的/yum目录下)
重新 先要删除 *.xml文件,在createrepo /yum
当你建立好之后,yum clean all
yum list
:http://www.centos.org,选择 downloads 下 Mirrors (你可以在这里看到国内外的包)

rpm包的制作
A,安装软件:检查编译环境,rpm -qa | grep gcc 安装 yum install gcc*
安装 yum install rpm-build

B,当你拿到一个tar包之后, cd /root
rpmbuild xiaolue.tar.gz 第一次使用时,创建/root/rpmbuild/*下边的文件
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS
C, cp xiaolue-1.0.tar.gz /root/rpmbuild/SOURCES
cd /root/rpmbuild/SPECS
vim xiaolue-1.0.spec (具体详情见文章后)

我们在制作rpm包的时候会用到编译安装来添加vim xiaolue-1.0.spec文件中的内容
tar xvf xiaolue-1.0.tar.gz
cd xiaolue-1.0
./configure 这里会提示你缺少那些包,我们在写文件的时候,要写入其中
make
make install 这里会出现我们%install后面要添加的内容,里面中间的部分test -z 开头到结尾
lsyncd-2.0.5.spec 文件中“%install”后面需要填写的内容,

示安装哪些文件到哪些路径下,但要修改格式。
1.将这一段内容中所有的/usr/local 修改为变量$RPM_BUILD_ROOT,
因为制作 rpm 包时并不需要将文件安装到实际的路径,所以暂时安装在$RPM_BUILD_ROOT 中,其实就是
/root/rpmbuild/BUILDROOT/lsyncd-2.0.5-1.el6.i386 这个临时目录。
2.将这一段内容中所有的单引号去掉或者换成双引号,因为要允许变量。

我们来填写里边的内容(我写出关键部分)
A,Source0 后边填写的是你tar包的全名,xiaolue-1.0.tar.gz
B,BuildRequires: //软件依赖关系描述(可以省略)
Requires: //该 rpm 包所依赖的软件包名称
C,%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
在这之后我们要添加的便是上文提到的,make install 要填写的内容
D,%files下要添加的内容
rpmbuild -bb xiaolue-1.0.spec
会出现报错的现象RPM build errors: Installed (but unpackaged) file(s) found:
把这后面的内容添加到%files下便可
E,rpmbuild -ba xiaolue-1.0.spec 这样在制作成功了
F,我们来查看下我们所生成的rpm包,ls /root/rpmbuild/RPMS下

接下来自己可以测试下 rpm -ivh rpm -e

*****************************************************************************************88888888
你创建的时候要和包名一样,他会自动添加模板文件
接下来我们来分析这个文件的东西
Name: //软件名称,如 lsyncd,后面可使用%{name}的方式引用
Version: //软件版本号,
仅当软件较以前有较大改变时才增加版本号。 2.0.5

Release: 1%{?dist} //软件发布序列号,标明第几次打包。若软件较以前改变较小,则
仅增加发布序列号,而不改变版本号
Summary:
//概要,对软件简单的描述
//软件包所属类别,具体类别参看 rpm 的帮助文件
Group:
/usr/share/doc/rpm-4.8.0/GROUPS,所有软件必须属于其中一种类型。
//许可类型,如:GPL(自由软件)
,commercial(商业)
,Share(共享)
,
License:
GNU 等
URL:
//软件下载地址(可以省略)
Source0:
//源码名称及下载地址,可以和上行一样。
BuildRoot:
%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
//该参数非常重要,因为在生成 rpm 的过程中,执行 make install 时就会把软件安装到上述
的路径中,在打包的时候,同样依赖“虚拟目录”为“根目录”进行操作。
后面可使用$RPM_BUILD_ROOT 方式引用。
BuildRequires: //软件依赖关系描述(可以省略)
Requires: //该 rpm 包所依赖的软件包名称
�scription //对软件的详细描述,可以写多行
%prep //这个段是预处理段,通常用来执行一些解开源程序包的命令,为下一
步的编译安装作准备。
%setup -q
%build
//提取源码到 BUILD 目录; -q 指不显示输出(quietly)
//本段是建立段,所执行的命令为生成软件包服务,相当于./configure 和 make
%configure
make %{?_smp_mflags}
%install
//这一节主要用于完成实际安装软件必须执行的命令,这一节一般是由
make install 指令构成,但是有时也会包含 cp、mv、install 等指令
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
%clean
//这一节所描述的内容表示在完成包建立的工作之后,自动执行此节
下的脚本进行附加的清除工作,这一节的内容通常简单地使用 rm -rf $RPM_BUILD_ROOT 命
令,不需要指定此节的其它内容
rm -rf $RPM_BUILD_ROOT
%files
//这一节指定构成包的文件的列表,它是使用节前缀%files 表示的。
此外,它还包含一系列宏控制安装后的文件属性和配置信息。
,分为三类--说明文档(doc)
,
配置文件
(config)
及执行程序,
也根据提示编写。
%files 下列出应该捆绑到 RPM 中的文件,
电话:0731-83888219/20/21
网址:www.sxkeji.com.cn
技术论坛:www.jiagulun.com
公司地址:长沙经济技术开发区开元路湘商世纪鑫城 31 层
第 14 页
并能够可选地设置许可权和其它信息
�fattr(-,root,root,-)
//指定包装文件的属性,分别是(mode,owner,group),-表示默认值,
对文本文件是 0644,可执行文件是 0755
%doc
%changelog
//本段是修改日志段。你可以将软件的每次修改记录到这里,保存到发
布的软件包中

看一个实例的文件配置方法
Name: lsyncd
Version: 2.0.5
Release: 1%{?dist}
Summary: lsyncd is a soft of data sync.
Group: System Environmen/Base
License: GNU
URL: ftp://192.168.0.254
Source0: lsyncd-2.0.5.tar.gz
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires: lua-devel
Requires: lua
�scription
lsyncd 是一款数据同步软件
use with rsyncd
%prep
%setup -q
%build
%configure
make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
test -z "$RPM_BUILD_ROOT/bin" || /bin/mkdir -p "$RPM_BUILD_ROOT/bin"
/usr/bin/install -c "lsyncd" "$RPM_BUILD_ROOT/bin/lsyncd"
test -z "$RPM_BUILD_ROOT/share/doc/lsyncd/" || /bin/mkdir -p
"$RPM_BUILD_ROOT/share/doc/lsyncd/"
/usr/bin/install -c -m 644 "examples/lbash.lua" "$RPM_BUILD_ROOT/share/doc/lsyncd//lbash.lua"
/usr/bin/install -c -m 644 "examples/lecho.lua" "$RPM_BUILD_ROOT/share/doc/lsyncd//lecho.lua"
/usr/bin/install -c -m 644 "examples/lgforce.lua"
"$RPM_BUILD_ROOT/share/doc/lsyncd//lgforce.lua"
/usr/bin/install -c -m 644 "examples/limagemagic.lua"
"$RPM_BUILD_ROOT/share/doc/lsyncd//limagemagic.lua"
/usr/bin/install -c -m 644 "examples/lpostcmd.lua"
"$RPM_BUILD_ROOT/share/doc/lsyncd//lpostcmd.lua"
/usr/bin/install -c -m 644 "examples/lrsync.lua"
"$RPM_BUILD_ROOT/share/doc/lsyncd//lrsync.lua"
/usr/bin/install -c -m 644 "examples/lrsyncssh.lua"
"$RPM_BUILD_ROOT/share/doc/lsyncd//lrsyncssh.lua"
test -z "$RPM_BUILD_ROOT/share/man/man1" || /bin/mkdir -p
"$RPM_BUILD_ROOT/share/man/man1"
/usr/bin/install -c -m 644 "./doc/lsyncd.1" "$RPM_BUILD_ROOT/share/man/man1/lsyncd.1"
test -z "" || /bin/mkdir -p ""
%clean
rm -rf $RPM_BUILD_ROOT
%files
/bin/lsyncd
/share/doc/lsyncd/lbash.lua
/share/doc/lsyncd/lecho.lua
/share/doc/lsyncd/lgforce.lua
/share/doc/lsyncd/limagemagic.lua
/share/doc/lsyncd/lpostcmd.lua
/share/doc/lsyncd/lrsync.lua
/share/doc/lsyncd/lrsyncssh.lua
/share/man/man1/lsyncd.1
/usr/bin/lsyncd
/usr/share/doc/lsyncd/lbash.lua
/usr/share/doc/lsyncd/lecho.lua
/usr/share/doc/lsyncd/lgforce.lua
/usr/share/doc/lsyncd/limagemagic.lua
/usr/share/doc/lsyncd/lpostcmd.lua
/usr/share/doc/lsyncd/lrsync.lua
/usr/share/doc/lsyncd/lrsyncssh.lua
/usr/share/man/man1/lsyncd.1.gz
�fattr(-,root,root,-)
%doc
%changelog