rpm工具:預先在Linux機器上編譯並打包安裝的文件,安裝迅速。(缺點:安裝程序包時,有可能由於依賴另一個程序包而沒法安裝)
yum工具:可使用工具安裝時,同時將依賴的另外的程序包同時安裝好;(CentOS中免費,Red Hat裏須要付費)
源碼包:通常源碼包都是經過C語言開發出來的,Linux機器必須安裝gcc才能編譯;linux
檢測命令apache
echo $?
檢查上一條命令是否錯誤
0爲正確 非0爲錯誤vim
rpm包格式:包名、版本號、發佈版本號、平臺
舉例:libjpeg-turbo-devel-1.2.90-5.el7.x86_64.rpm
包名爲:libjpeg-turbo-devel
版本號:1.2.90
發佈版本號:5.el7
平臺:x86_64
準備工做:
光驅設置好系統安裝盤鏡像,將光驅掛載到/mnt目錄下:緩存
[root@jinkai01 yum.repos.d]# mount /dev/cdrom /mnt/
mount: /dev/sr0 is write-protected, mounting read-only
[root@jinkai01 yum.repos.d]# df -h | grep mnt
/dev/sr0 4.3G 4.3G 0 100% /mnt
[root@jinkai01 yum.repos.d]# cd /mnt/
[root@jinkai01 mnt]# ls
CentOS_BuildTag EULA LiveOS RPM-GPG-KEY-CentOS-7 TRANS.TBL isolinux
EFI GPL Packages RPM-GPG-KEY-CentOS-Testing-7 images repodata網絡
安裝RPM包
格式:curl
rpm -ivh [rpm包文件]ide
升級RPM包
格式:工具
rpm -Uvh [rpm包文件]ui
卸載RPM包
格式:阿里雲
rpm -e [rpm包名]
查詢
查詢已安裝的包
格式:
rpm -qa
查詢指定包是否安裝
格式:
rpm -q [包名]
查詢指定包信息
格式:
rpm -qi [包名]
列出包安裝的文件
格式:
rpm -ql [包名]
列出某個文件屬於哪一個RPM包
格式:
rpm -qf [文件絕對路徑]
[root@jinkai01 mnt]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.629-6.el7.x86_64
yum工具最大的優點就是能夠在聯網去下載所須要的RPM包,而後自動安裝。若是要安裝的RPM包郵依賴關係,yum工具會幫咱們依次安裝全部相關的RPM包;
列出全部RPM包
格式:
yum list
[root@jinkai01 mnt]# yum list
搜索RPM包
格式:
yum search [關鍵詞]
這種方法不許確,只是搜索出包含vim字符的文件
[root@jinkai01 mnt]# yum search vim
輸出結果太長已省略
使用管道符搜索
yum list | grep 'vim'
在全部rpm 包裏面查找包含vim字符的包,但若是包名和所查詢的命令字符不同,但就查詢不到了,例如:pstree 包名是psmisc
[root@jinkai01 mnt]# yum list | grep vim
輸出結果太長已省略
根據命令來查詢安裝包
格式:
yum provides 「[命令]」
[root@jinkai01 mnt]# yum provides pstree
安裝RPM包
格式:
yum install [-y] [包名]
卸載RPM包
格式:
yum remove [-y] [RPM包]
升級RPM包
格式:
yum update [-y] [RPM包]
當系統沒法聯網時,就沒法便捷實用yum工具了,此時咱們能夠實用光盤系統製做yum源;
掛載鏡像到/mnt目錄
mount /dev/cdrom /mnt
備份文件
cp -r /etc/yum.repos.d /etc/yum.repos.d.bak
刪除文件
[root@jinkai01 yum.repos.d]# rm -rf ./*
建立新文件
/etc/yum.repos.d/dvd.repo
以及文件內容
[root@jinkai01 yum.repos.d]# cat dvd.repo
[dev]
name=install dvd
baseurl=file:///mnt
enabled=1
gpgcheck=0
清除緩存
yum clean all
[root@jinkai01 yum.repos.d]# yum clean all
已加載插件:fastestmirror
正在清理軟件源: dvd
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
[root@jinkai01 yum.repos.d]#
刷新生成緩存
yum makecache
[root@jinkai01 yum.repos.d]# yum makecache
安裝軟件包
yum install -y 軟件包名
[root@jinkai01 yum.repos.d]# yum install -y vim-enhanced
yum聯網下載源通常都是國外網絡資源,咱們爲了更快安裝能夠更換爲國內的資源下載;
進入目錄**
cd /etc/yum.repos.d
備份文件
mv CentOS-Base.repo CentOS-Base.repo.bak
下載阿里雲源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
有時候咱們須要下載RPM包但不安裝,僅僅是複製給其餘機器使用;
下載RPM包而不安裝
默認RPM包保存路徑爲/var/cache/yum/x86_64/7/base/packages/
格式:
[root@jinkai01 yum.repos.d]# yum install zsh --downloadonly
此處已省略過程
[root@jinkai01 yum.repos.d]# rpm -q zsh
package zsh is not installed
新版本使用的是yumdownloader 包名,須要提早安裝 yum-utils軟件包 --resolve 把下載包所依賴的包一塊兒下載 --destdir 下載到指定目錄
[root@jinkai01 yum.repos.d]# yum install -y yum-utils
[root@jinkai01 yum.repos.d]# yumdownloader zsh
[root@jinkai01 yum.repos.d]#yumdownloader zsh --resolve --destdir=/tmp/
指定下載RPM包的保存路徑
格式:
yum install [包名] --downloadonly --downloaddir=[路徑]
[root@jinkai01 yum.repos.d]# yum install zsh --downloadonly --downloaddir=/tmp/
此處已省略過程
[root@jinkai01 yum.repos.d]# ls /tmp/
1.txt vmware-root_6331-1723602126 yum_save_tx.2020-08-12.17-46.i2lWPP.yumtx
1.zip yum_savetx.2020-08-12.17-43.lKz1Z.yumtx zsh-5.0.2-34.el7_8.2.x86_64.rpm
下載已安裝的RPM包
格式:
yum reinstall -y [包名] --downloadonly --downloaddir=[路徑]
刪除目錄便可刪除源碼包;
源碼包的編譯必須經過GCC編譯器,因此必須安裝好gcc才能正常安裝源碼包;
yum install -y gcc
進入下載目錄
cd /usr/local/src
下載源碼包
解壓源碼包
tar -zxvf httpd-2.2.29.tar.gz
查看如何安裝
more INSTALL
安裝方法
$ ./configure --prefix=PREFIX
$ make
$ make install
$ PREFIX/bin/apachectl start
指定安裝路徑
./configure --prefix=/usr/local/apache2
編譯
make
安裝源碼包
make install
運行進程
/usr/local/apache2/bin/apachectl start
yum源服務端搭建
友情連接:https://cloud.tencent.com/developer/article/1473120