centos 檢視命令原始碼
# 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原始碼
- centos 檢視硬碟命令CentOS硬碟
- 如何才能檢視原始碼原始碼
- 如何檢視python原始碼Python原始碼
- Maven2檢視原始碼Maven原始碼
- CentOS7檢視開放埠命令、檢視埠占用情況和開啟埠命令、殺掉程式等命令教程。CentOS
- centos檢視版本資訊CentOS
- django rest framework 檢視原始碼解析DjangoRESTFramework原始碼
- drf 檢視使用及原始碼分析原始碼
- struts2 如何檢視原始碼原始碼
- Eclipse 如何檢視jdk原始碼EclipseJDK原始碼
- 完美獲得SAS檢視原始碼原始碼
- AIX檢視序列號和微碼命令AI
- oracleasm命令檢視OracleASM
- GDB為什麼檢視不了原始碼?原始碼
- vue原始碼之資料控制檢視Vue原始碼
- 帝國cms原始碼怎麼檢視原始碼
- CentOS7檢視開放埠命令及開放埠號CentOS
- centOS伺服器 netstat命令 檢視TCP連線數資訊CentOS伺服器TCP
- Vue原始碼簡析之檢視生成(上)Vue原始碼
- 如何檢視大型工程原始碼(非常不錯)原始碼
- SpringMVC原始碼關於檢視解析渲染SpringMVC原始碼
- DRF檢視的使用及原始碼流程分析原始碼
- 如何在Eclipse下檢視JDK原始碼EclipseJDK原始碼
- 如何檢視JDK以及JAVA框架的原始碼JDKJava框架原始碼
- centos 檢視USB介面的版本CentOS
- CentOS8中開機啟動檢視管理的命令chkconfigCentOS
- Django 原始碼閱讀筆記(基礎檢視)Django原始碼筆記
- 【轉】改變檢視頁面原始碼的程式原始碼
- git檢視歷史命令Git
- centos linux檢視硬碟型號CentOSLinux硬碟
- CentOS8檢視系統版本CentOS
- 短視訊app原始碼,點選檢視圖片,雙指放大APP原始碼
- 檢視nginxapachemysqlphp原始編譯NginxApacheMySqlPHP編譯
- app直播原始碼,下拉檢視圖文詳情效果APP原始碼
- Oracle中檢視sql命令歷史,檢視rman命令歷史OracleSQL
- Centos原始碼安裝NginxCentOS原始碼Nginx
- 雲伺服器檢視CentOS版本方法伺服器CentOS