linux源代码获取

Ubuntu获取

# which ls
/bin/ls
# dpkg -S /bin/ls
coreutils: /bin/ls
# apt-get source coreutils

CentOS获取

# rpm -qf /bin/ls
coreutils-8.4-9.el6.x86_64
# yumdownloader --source coreutils-8.4-9.el6.x86_64     //验证未通过

Red Hat获取
法一:yumdownloader下载

# yumdownloader gcc-c++.x86_64

法二:使用yum插件yum-downloadonly

# yum -y install yum-downloadonly
# yum -y install --downloadonly --downloaddir=/tmp/ ls

RPM提取文件

# ls
amanda-backup_server-3.3.7-1.rhel7.x86_64.rpm
# rpm -qpl amanda-backup_server-3.3.7-1.rhel7.x86_64.rpm 
...
# rpm2cpio amanda-backup_server-3.3.7-1.rhel7.x86_64.rpm | cpio -t  
./var/amanda
# rpm2cpio amanda-backup_server-3.3.7-1.rhel7.x86_64.rpm | cpio -idv
18783 blocks
rpm 参数:

-qf     查找指定文件属于哪个RPM软件包
-q      查询已安装的软件信息
-p      查询/校验一个软件包文件
-l      列出软件包中的文件
rpm2cpio 参数:

-t或--list               将输入的内容呈现出来
-i或--extract            执行copy-in模式,还原备份档
-d或--make-directories   如有需要cpio会自行建立目录
-v或--verbose            详细显示指令的执行过程
posted @ 2015-06-12 14:52  thomas_blog  阅读(207)  评论(0编辑  收藏  举报