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 @   thomas_blog  阅读(211)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示