軟體管理:
rpm軟體包管理:
Redhat package manager
#rpm
作用:管理rpm包
文法: rpm 【選項】 包名
挂載CD光牒
[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mount /dev/sr0 /mnt/
檢視包個數
[root@localhost ~]# cd /mnt/Packages/
[root@localhost Packages]# ls | wc -l
4621
zsh-5.0.2-14.el7.x86_64.rpm
zsh -5 .0 .2 -7 x86 64
軟體名 主版本号 次版本号 修訂号 RHEL7 CPU架構平台 支援系統位數
el7 :Enterprise Linux 7 RHEL7 或 CentOS7
el6
el5
安裝rpm軟體
[root@localhost ~]# rpm -ivh /mnt/Packages/lrzsz-0.12.20-36.el7.x86_64.rpm
[root@localhost ~]# rpm --help
-i, --install install package(s)
-v, --verbose 詳細 provide more detailed output
-h, --hash print hash marks as package installs (good with -v) #安裝時列印散列标記#号
安裝時,解決依賴關系:
[root@localhost ~]# rpm -ivh /mnt/Packages/mariadb-server-5.5.44-2.el7.x86_64.rpm --nodeps
方法1:直接找以perl-DBD-MySQL開頭的包
[root@localhost Packages]# rpm -ivh perl-DBD-MySQL
方法2:到rpm包相關的網站上去下載下傳軟體包
<a href="http://rpmfind.net/">http://rpmfind.net/</a>
<a href="http://rpm.pbone.net/">http://rpm.pbone.net/</a>
<a href="http://www.rpmseek.com/index.html">http://www.rpmseek.com/index.html</a>
zsh 的安裝
[root@localhost ~]# rpm -ivh /mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm
warning: /mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:zsh-5.0.2-14.el7 ################################# [100%]
[root@localhost ~]# cat /etc/shells #多了一個zsh
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
/bin/zsh
rpm查詢功能
[root@localhost ~]# rpm -q zsh #查詢單個zsh包是否安裝
zsh-5.0.2-14.el7.x86_64
[root@localhost ~]# rpm -qa | grep httpd #查詢是否安裝了httpd相關的軟體包
[root@localhost ~]# rpm -ql zsh |more
(查詢zsh這個軟體安裝後,産生了那些檔案和目錄)
zsh 這個指令是由哪個軟體包安裝的?
[root@localhost ~]# rpm -qf <code>which zsh</code>
在軟體沒有安裝之前進行檢視
[root@localhost ~]# rpm -qpl /mnt/Packages/lrzsz-0.12.20-36.el7.x86_64.rpm
warning: /mnt/Packages/lrzsz-0.12.20-36.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
/usr/bin/rb
/usr/bin/rx
/usr/bin/rz
/usr/bin/sb
/usr/bin/sx
/usr/bin/sz
/usr/share/locale/de/LC_MESSAGES/lrzsz.mo
/usr/share/man/man1/rz.1.gz
/usr/share/man/man1/sz.1.gz
更新:
[root@localhost ~]# rpm -Uvh /mnt/Packages/lrzsz-0.12.20-36.el7.x86_64.rpm
解除安裝:
[root@localhost ~]# rpm -e zsh 隻寫軟體包的名稱,不用寫軟體包
強制解除安裝
[root@localhost ~]# yum -y install httpd
[root@localhost ~]# rpm -e mailcap --nodeps
導入RPM-GPG-KEY 安裝rpm包時,對rpm的簽名進行驗證。
[root@localhost ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
package zsh-5.0.2-14.el7.x86_64 is already installed
驗證的原理是:非對稱加密。 導入公鑰。驗證rpm中的簽名是否是對的。
使用yum安裝軟體:
自動裝軟體包(軟體包管理):
YUM
解決依賴關系問題、自動下載下傳軟體包。基于C/S架構。
S:
直接使用CD光牒所在的根目錄(/media 或 /mnt)
ftp http file(本地yum源)
C:配置yum源的配置檔案
[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# vim /etc/yum.repos.d/rhel7.repo
[rhel7-yum] #yum源名稱,唯一的,用來區分不同的yum源
name=rhel7-source #對yum源描述資訊
baseurl=file:///mnt #yum源的路徑(repodata目錄所在的目錄)
enabled=1 #為1,表示啟用yum源
gpgcheck=0 #為1,使用公鑰檢驗rpm的正确性
YUM使用:
[root@localhost ~]# yum clean all #清空yum緩存
[root@localhost ~]# yum list #生成清單
[root@localhost ~]# yum install zsh #安裝軟體包
安裝一組軟體包:
[root@localhost ~]# yum grouplist
[root@localhost ~]# yum groupinstall "Security Tools"
yum查詢:
[root@localhost ~]# yum list z*
[root@localhost ~]# yum search zsh
[root@localhost ~]# rpm -qpi /mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm
檢視一個包的作用
凡是加上p則表示查詢的包未安裝。若查詢已安裝的包則去掉p
删除
[root@localhost ~]# yum remove zsh
選項 : -y #回答yes 取消互動
[root@localhost ~]# yum -y install mariadb-server
源碼編譯安裝軟體包:
前提:系統必須安裝:開發工具、開發庫
步驟:
獲得源碼包
解壓
tar
配置,檢測安裝環境
#./configure #檢查安裝環境是否符合需求 ,如果沒有問題,生成:Makefile檔案
編譯
#make (編譯時會讀取Makefile檔案)
安裝
#make install
例:安裝軟體包extundelete-0.2.4.tar.bz2
[root@localhost ~]# tar jxvf extundelete-0.2.4.tar.bz2
[root@localhost ~]# cd extundelete-0.2.4/
[root@localhost extundelete-0.2.4]# yum -y install e2fsprogs-devel
[root@localhost extundelete-0.2.4]# ./configure
Configuring extundelete 0.2.4
Writing generated files to disk
[root@localhost extundelete-0.2.4]# make
[root@localhost extundelete-0.2.4]# make install
删除:
[root@localhost extundelete-0.2.4]# make uninstall
Making uninstall in src
( cd '/usr/local/bin' && rm -f extundelete )
不過多有時删除不幹淨,是以建議大家安裝時,在configure步驟添加一個: --prefix 參數。這樣删
除或備份時,直接對删除這個目錄操作就可以了。
再次編譯時
[root@localhost extundelete-0.2.4]# make clean
Making clean in src
Making clean in .
[root@localhost extundelete-0.2.4]# ./configure --prefix=/usr/local/extundele-rm
[root@localhost extundelete-0.2.4]# make && make install
删除時隻需删除路徑即可:
[root@localhost ~]# rm -rf /usr/local/extundele-rm/
rpm+yum:友善,軟體版本低。穩定性好、管理友善。性能稍差。
源碼手動:麻煩,軟體版本新。穩定性稍差、管理稍差。性能好。 LAMP,LNMP
安裝.src.rpm源碼包的方法
[root@localhost ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.2 (Maipo)
rpmbuild --rebuild lrzsz-0.12.20-27.1.el6.src.rpm #将src.rpm中源碼檔案編譯成可執行
的二進制檔案。
若順利執行成功則會在root使用者家目錄下生成一個: rpmbuild目錄。
在/root/rpmbuild/RPMS/x86_64/目錄下生成lrzsz-0.12.20-27.1.el6.x86_64.rpm這個rpm檔案。
接下來就是rpm的安裝過程。
[root@localhost x86_64]# rpm -e lrzsz
[root@localhost x86_64]# rpm -vih lrzsz-0.12.20-27.1.el7.x86_64.rpm
本文轉自信自己belive51CTO部落格,原文連結: http://blog.51cto.com/11638205/2048709,如需轉載請自行聯系原作者