中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS系統怎么獲取命令的源代碼

發布時間:2021-07-19 14:07:01 來源:億速云 閱讀:187 作者:小新 欄目:系統運維

小編給大家分享一下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

該文件中有兩個變量: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

由于不同的版本設置會有所不同,所以其設置會有所不同,方法可總結為如下:

(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

至此,命令的源代碼獲取完成。

以上是“CentOS系統怎么獲取命令的源代碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

应城市| 宜良县| 柘荣县| 炎陵县| 本溪市| 怀柔区| 大竹县| 资讯| 高雄县| 瑞昌市| 青阳县| 杭州市| 合作市| 丘北县| 古田县| 青海省| 石城县| 铁岭县| 南阳市| 西青区| 石泉县| 大安市| 盈江县| 宁南县| 龙江县| 奉节县| 馆陶县| 行唐县| 深州市| 和林格尔县| 光山县| 贵溪市| 乐东| 尼勒克县| 蓬安县| 象山县| 朝阳市| 古浪县| 灌阳县| 阜宁县| 财经|