①.)在使用dpkg时,若出现错误,可以使用sudo命令使其以root权限执行.
①.)配置源代码的源
在CentOS中,源的配置文件为:/etc/yum.repos.d/CentOS-Base.repo,修改该文件需要root权限.
sudo apt-get -d source coreutils cd /usr/src tar zxvf coreutils-XXX.tar.gz gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件 patch -p0 coreutils-XXX.diff cd coreutils-XXX tar zxvf coreutils-XXX.tar.gzOK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了
在linux命令行中使用 git clone 命令,对该项目源码clone到本地,等待clone完成.如下图所示(该项目较大,网络不快,还未clone完成,只做参考)
以find命令为例:
第一步,确定命令属于哪个rpm包:
#rpm -qf /usr/bin/find
也可以到rpmfind.net上查找,输入rpm包的名字就可以找到相关的源码包,有的也可以得到软件对应的网站.
第三步,安装源码包:
安装好之后可以到/usr/src/RedHat/SOURCE下找到相关的源码包
或者直接编译源码包:
Linux是开源的,它自带的功能强大的命令也是开源的,也就是说,我们可以获得这些命令的源代码并研究它.那究竟如何获得系统的命令的源代码呢?
① 以搜索ls命令源码为例,先搜索命令所在包,命令如下:
/bin/ls
coreutils: /bin/ls
sudo apt-get source coreutils
cd /usr/src/coreutils-XXX #XXX表示版本号
sudo tar zxvf coreutils-XXX.tar.gz
sudo apt-get -d source coreutils
cd /usr/src
tar zxvf coreutils-XXX.tar.gz
gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件
patch -p0 coreutils-XXX.diff
cd coreutils-XXX
OK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了
以上就是土嘎嘎小编为大家整理的linux系统命令源码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!