<摘录>CentOS怎么查看某个命令的源代码
安装yumdownloader工具:
# yum install yum-utils
设置源:
[base-src]
name=CentOS-5.4 - Base src -
baseurl=http://vault.centos.org/5.4/os/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=os
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
[updates-src]
name=CentOS-5.4 - Updates src-centos
baseurl=http://vault.centos.org/5.4/updates/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=updates
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
#packages used/produced in the build but not released
[addons-src]
name=CentOS-5.4 - Addons src -
baseurl=http://vault.centos.org/5.4/addons/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=addons
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
#additional packages that may be useful
[extras-src]
name=CentOS-5.4 - Extras src-centos
baseurl=http://vault.centos.org/5.4/extras/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=extras
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
#additional packages that extend functionality of existing packages
[centosplus-src]
name=CentOS-5.4 - Plus src-centos
baseurl=http://vault.centos.org/5.4/centosplus/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
#contrib - packages by Centos Users
[contrib-src]
name=CentOS-5.4 - Contrib src-centos
baseurl=http://vault.centos.org/5.4/contrib/SRPMS/
#mirrorlist=http://mirrorlist.centos.org/?release=5.4&arch=SRPMS&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
怎么查看某个命令的源代码
比如想查看uname这个命令的源代码
[root@localhost usr]# whereis uname
uname: /bin/uname /usr/share/man/man1/uname.1.gz /usr/share/man/man2/uname.2.gz /usr/share/man/man1p/uname.1p.gz /usr/share/man/man3p/uname.3p.gz
[root@localhost usr]# rpm -qf /bin/uname
coreutils-8.5-7.fc14.i686
##没有yumdownloader 的话可以这样子安装#yum install yum-utils
[workhard@localhost tmp]$ yumdownloader --source coreutils-8.5-7.fc14.i686 ##source下载源码包
到这一步后有两种方法可以查看到源码包,第一种方法
[workhard@localhost tmp]$ rpm -qpl coreutils-8.5-7.fc14.src.rpm | grep tar ##查询rpm中的 tar文件,源码一般放在这里
coreutils-8.5.tar.xz
##从rpm包中提取指定的文件
[workhard@localhost tmp]$ rpm2cpio coreutils-8.5-7.fc14.src.rpm | cpio -idv coreutils-8.5.tar.xz
coreutils-8.5.tar.xz
9446 blocks
[workhard@localhost coreutils-8.5]$ tar xjvf coreutils-8.5.tar.xz
##到解压出来的coreutils-8.5/src/中就能找到相关的源码了
第二种方法:安装源码包
[workhard@localhost tmp]$ rpm -i coreutils-8.5-7.fc14.src.rpm ##安装源码包
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
##centos和rhel一般安装后的源码在/usr/src/redhat下的各个目录下,但fedora是在~/rpmbuild/SOURCES/
##可以通过locate命令查询代码包被安装到哪里了
[workhard@localhost tmp]$ locate *coreutils*tar*
/home/workhard/tmp/coreutils-8.5.tar.xz
/home/workhard/rpmbuild/SOURCES/coreutils-8.5.tar.xz
[workhard@localhost tmp]$ cd /home/workhard/rpmbuild/SOURCES/c
[workhard@localhost SOURCES]$ tar Jxvf coreutils-8.5.tar.xz
[workhard@localhost src]$ cd coreutils-8.5/src/
[workhard@localhost src]$ ll uname*
-rw-r--r--. 1 workhard workhard 48 Jan 1 2010 uname-arch.c
-rw-r--r--. 1 workhard workhard 10024 Jan 1 2010 uname.c
-rw-r--r--. 1 workhard workhard 146 Jan 1 2010 uname.h
-rw-r--r--. 1 workhard workhard 49 Jan 1 2010 uname-uname.c
安装*.src.rpm后怎么卸载
[workhard@localhost SOURCES]$ cd /home/workhard/rpmbuild/SOURCES
[workhard@localhost SPECS]$ rpmbuild --rmsource --rmspec coreutils.spec
**相关说明
一、yumdownloader comes from the yum-utils package, if you don't have that installed already.
#yum install yum-utils
二、RPM用法
rpm {-i|--install} [install-options] PACKAGE_FILE ...
-f, --file FILE
Query package owning FILE.
-p, --package PACKAGE_FILE
Query an (uninstalled) package PACKAGE_FILE.
-l, --list
List files in package.
-qf:查找指定文件属于哪个RPM软件包
-qpl:列出RPM软件包内的文件信息;
三、rpm2cpio - Extract cpio archive from RPM Package Manager (RPM) package.
顾名思义,rpm2cpio是将rpm包文件转换成cpio归档文件
四、CPIO用法
cpio - copy files to and from archives
-i 抽取的意思,和"--extract"等同
-d 建立目录,和"--make-directories"等同
-v 冗余信息输出,和"--verbose"等同
五、rpmbuild用法
--rmsource
Remove the sources after the build
--rmspec
Remove the spec file after the build
<摘录>CentOS怎么查看某个命令的源代码的更多相关文章
- Centos时间查看修改命令date详解
1.查看.修改Linux时区与时间 一.linux时区的查看与修改 1,查看当前时区date -R 2,修改设置时区方法1:tzselect 方法2:仅限于RedHat Linux 和 CentOSt ...
- 如何查看Linux命令的源代码
首先要在系统设置-->软件和更新-->Ubuntu软件中勾选源代码选项,否则在下载source时会报如下错: E:您必须在sources.list中指定源代码(deb-src)URI 然后 ...
- (转)CentOS下开机启动查看管理命令:chkconfig用法
CentOS下开机启动查看管理命令:chkconfig用法 CentOS下开机启动查看管理的命令是:chkconfig 1. 开机启动列表查看: chkconfig --list 说明 ...
- linux/Centos下查看和修改网卡Mac地址(ifconfig命令)
本文转载自http://www.169it.com/article/14360294838474691537.html linux/Centos下查看网卡Mac地址,输入命令: #ifconfig - ...
- 如何查看linux命令源代码
如何查看linux命令源代码 用linux一段时间了,有时候想看看ls.cat.more等命令的源代码,在下载的内核源码中用cscope没能找到,在网上搜索了一下,将方 法总结如下: 以搜索ls命令源 ...
- centos 7 查看系统/硬件信息及运维常用命令+联想Y430P无线网卡驱动安装
centos 7 查看系统/硬件信息及运维常用命令 当前环境:联想Y430P CentOS 7.3 [root@yan-001 ~] # uname -a # 查看内核/操作系统/CPU信息的Li ...
- 【转载】CentOS下查看电脑硬件设备属性命令
CentOS下查看电脑硬件设备属性命令2018年09月13日 17:48:31 乔烨 阅读数 510如何在linux下查看电脑硬件设备属性 # uname -a # 查看内核/操作系统/CPU信息 # ...
- centos下如何获取某个命令的源代码?
以ls命令为例,其它命令类似: 1.利用which命令获取命令可执行文件的位置: [root@228 /]# which ls alias ls='ls --color=auto' /usr/bin/ ...
- Centos文件查看命令字符
文件(夹)查看类命令 ls--显示指定目录下内容 说明:ls 显示结果以不同的颜色来区分文件类别.蓝色代表目录,灰色代表普通文件,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件. -a--- ...
随机推荐
- keepalived主备切换后的arp问题【转】
使用keepalived的时候主机挂了,备机显示绑定了VIP.但是此时实际还是不能访问.其实就是网关的arp缓存没有刷新. 在服务器上执行一下就行了 arping -I eth0 -c 5 -s ...
- Linux shell中运行命令后加上字符“&”的作用(转)
原文链接为:http://blog.sina.com.cn/s/blog_963453200102uya7.html & 放在启动参数后面表示设置此进程为后台进程 默认情况下,进程是前台进程, ...
- word2vec参数
架构:skip-gram(慢.对罕见字有利)vs CBOW(快) · 训练算法:分层softmax(对罕见字有利)vs 负采样(对常见词和低纬向量有利) 负例采样准确率提高,速度会慢, ...
- java.lang.IllegalArgumentException: Page directive: invalid value for import
我的项目原来用的tomcat版本是apache-tomcat-7.0.53,后来为了安全原因将版本升至\apache-tomcat-7.0.57,发现有的jsp页面出现下面的异常: java.lang ...
- Django之Cookie、Session和自定义分页
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- Construct Binary Tree from Inorder and Postorder Traversal (&&Preorder and Inorder Traversal )——数据结构和算法的基本问题
Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...
- 洛谷P1094纪念品分组 题解
题目传送门 首先的思路就是贪心.先将所有的纪念品按照价格从低到高进行排序.在分别从左到右.从右到左合并纪念品.如果两端纪念品价格超过了上上限,那么就将较大的那一个纪念品独自放入.否则将两个纪念品一起放 ...
- appium+python自动化39-adb shell输入中文(ADBKeyBoard)
前言 上一篇提到"adb shell input textyoyo" 可以通过adb 输入英文的文本,由于不支持unicode编码,所以无法输入中文,github上有个国外的大神写 ...
- python collections模块详解
参考老顽童博客,他写的很详细,例子也很容易操作和理解. 1.模块简介 collections包含了一些特殊的容器,针对Python内置的容器,例如list.dict.set和tuple,提供了另一种选 ...
- mysql 事务回滚
begindeclare t_error integer default 0; //添加变量t_error并赋初始值为0declare continue handler for sqlexcepti ...