• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 程序设计
  • 信息安全
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >RedHat/Centos > CentOS系统如何获取命令的源代码

CentOS系统如何获取命令的源代码

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-12

佚名 通过本文向大家介绍了centos系统命令,centos系统重启命令,centos 系统更新命令,centos怎么进入命令行,centos网络配置命令等相关知识,希望对您有所帮助,也希望大家多多支持微课江湖

以32位CentOS6.6下,获取ls命令的源代码为例,可以使用如下的方法下载源代码:

1)配置源代码的源

在CentOS中,源的配置文件为:/etc/yum.repos.d/CentOS-Base.repo,修改该文件需要root权限。

打开该文件,查看该文件的内容,在本人的机子上,该文件的内容如下:

# CentOS-Base.repo  
#  
# The mirror system uses the connecting IP address of the client and the  
# update status of each mirror to pick mirrors that are updated to and  
# geographically close to the client.  You should use this for CentOS updates  
# unless you are manually picking other mirrors.  
#  
# If the mirrorlist= does not work for you, as a fall back you can try the   
# remarked out baseurl= line instead.  
#  
#  
  
[base]  
name=CentOS-$releasever - Base  
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os  
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
#released updates   
[updates]  
name=CentOS-$releasever - Updates  
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates  
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
#additional packages that may be useful  
[extras]  
name=CentOS-$releasever - Extras  
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras  
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
#additional packages that extend functionality of existing packages  
[centosplus]  
name=CentOS-$releasever - Plus  
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus  
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/  
gpgcheck=1  
enabled=0  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
#contrib - packages by Centos Users  
[contrib]  
name=CentOS-$releasever - Contrib  
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib  
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/  
gpgcheck=1  
enabled=0  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
</div>

该文件中有两个变量:releasever和basearch,分别表示release版本和分支,如本人的机子上,这两个值分别为6和i386。注意,releasever并不会细分为次级版本,即不会是6.6之类的。

从该文件的内容可以知道,该文件共有5个节,也就是说本人的机子的软件来源有5处,分别为base、updates、extras、centosplus和contrib。所以只需要为如下的5处软件源指定其源代码的源即可。在文件的末尾加上如下的内容:

[base-src]  
name=CentOS-$releasever - Base src  
baseurl=http://vault.centos.org/6.6/os/Source/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
[updates-src]  
name=CentOS-$releasever - Updates src-centos  
baseurl=http://vault.centos.org/6.6/updates/Source/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
[extras-src]  
name=CentOS-$releasever -  Extras src-centos  
baseurl=http://vault.centos.org/6.6/extras/Source/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
[centosplus-src]  
name=CentOS-$releasever - Plus src-centos  
baseurl=http://vault.centos.org/6.6/centosplus/Source/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6  
  
[contrib-src]  
name=CentOS-$releasever - Contrib src-centos  
baseurl=http://vault.centos.org/6.6/contrib/Soruce/  
gpgcheck=1  
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
</div>

由于不同的版本设置会有所不同,所以其设置会有所不同,方法可总结为如下:

(1)gpgkey与该文件中已有的节的gpgkey相同

(2)为了确认文件的存在和情况,可以打开网站http://vault.centos.org/查看具体的情况,再根据具体的情况来填写

(3)设置baseurl时需要根据自己的系统的版本来设置,如本人的机子为CentOS-6.6,则在设置时,相关的参数就设置为6.6,即http://vault.centos.org/后接的子路径为6.6。

该文件的作用是为yum其及相关工作的下载提供一个源,如在使用yumdownloader(下面会讲到)下载源代码时,会发生如下动作:

(1)下载$baseurl/repodata/repomd.xml文件,若该repomd.xml文件比系统中的新,更新系统中的相应的repomd.xml

(2)下载$baseurl/SPackages/中的相应的源代码rpm包。

2)使用which命令查看ls命令的位置,如下:

which ls

# 输出:/bin/ls

3)使用rpm命令查询ls命令所属的包,如下:

rpm -qf /bin/ls

# 输出:coreutils-8.4-37.el6.i686

4)yumdownloader是一个从RPM源下载RPM的程序,可以使用yumdownloader命令安装源代码,如下:

yumdownloader --source coreutils-8.4-37.el6.i686

注:

(1)若yumdownloader命令没有安装,则可以使用此命令安装:yum install yum-utils。

(2)下载的文件在当前目录下,可以使用参数--destdir指定下载到哪一个目录。

5)使用yumdownloader下载到的是一个安装包文件rpm,可以使用如下的命令查询rpm中的tar文件:

rpm -qpl coreutils-8.4-37.el6.src.rpm | grep tar

# 输出:coreutils-8.4.tar.xz

6)使用rpm2cpio命令将rpm包文件转换成cpio归档文件,再使用cpio命令,从cpio归档文件复制提取出一个归档文件,出如下:

rpm2cpio coreutils-8.4-37.el6.src.rpm | cpio -idv coreutils-8.4.tar.xz

# 输出:

# coreutils-8.4.tar.xz

# 9561 blocks

cpio的man解释为:cpio copies files into an archive

-i:与--extract等同,提取之意

-d:与--make-directories等同,当有需要时创建一个加载目录

-v:列出文件的处理过程

7)使用tar命令对coreutils-8.4.tar.xz压缩包进行解压缩,如下:

tar -xvf ./coreutils-8.4.tar.xz

至此,命令的源代码获取完成。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • centos系统使用source命令提示notavalia identitier该怎么办?
  • CentOS系统如何获取命令的源代码
  • CentOS系统中与时间的相关命令详解
  • Centos系统里screen命令如何使用?Centos系统里screen命令的使用方法
  • CentOS 常用系统命令

相关文章

  • 2017-05-12centos中lvs安装配置方法详解
  • 2017-05-12RedHat系统怎么设置或更改屏幕分辨率?
  • 2017-05-12Centos7安装完毕后无法联网显示Server not found如何解决?
  • 2017-05-12CentOS如何更换网卡设置?CentOS更换网卡设置的方法
  • 2017-05-12CentOS关于quota的总结与实践详解
  • 2017-05-12Linux系统怎么更新补丁?Centos6更新系统的教程
  • 2017-05-12CentOS 5.4 防火墙配置80端口的方法(适用于centos5.3以上版本)
  • 2017-05-12CentOS命令大全 包括:系统命令,各种服务器搭建等
  • 2017-05-12如何解决centos7中python-pip模块不存在?
  • 2017-05-12在CentOS下使用Munin来监控服务器运行的方法

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • Centos中如何临时禁用用户?Centos中临时禁用用户的方法
    • CentOS Linux下的3款分区工具详解
    • CentOS7设置日期和时间方法以及基本概念介绍
    • CentOS系统里如何提高文本搜索效率?
    • CentOS中自定义yum仓库和配置文件的方法
    • centos7使用docker部署gitlab-ce-zh应用详解
    • CentOS 5.4 防火墙配置80端口的方法(适用于centos5.3以上版本)
    • CentOS下chattr(设定档案隐藏属性)命令讲解
    • CentOS 一键配置rsync服务器脚本
    • 给VMware虚拟机中的CentOS分区扩容的操作笔记

关于我们 - 联系我们 - 免责声明 - 网站地图 - 投诉建议

©CopyRight 2015-2017 www.weikejianghu.com Inc All Rights Reserved. 微课江湖 版权所有