第11 章 軟件管理

一、概述

1.軟件的類型

A. 二進制包 已編譯 mysql-community-common-5.7.12-1.el7.x86_64.rpm

B. 源碼包 需要編譯 nginx-1.8.1.tar.gz

   解釋: RPM Package Manager(原Red Hat Package Manager,現在是一個遞歸縮寫)


注意: 不管是源碼包,還是二進制包,安裝時都可能會有依賴關係!

常見的二進制包:系統平臺;包類型;工具;在線安裝(自動解決依賴關係)
RedHat/Centos;RPM;rpm,rpmbuild;yum
Ubuntu/Debian;DPKG;dpkg;apt

二、RPM包管理

     YUM管理RPM包

1.YUM源(YUM倉庫)

(1)本地源:安裝光盤 [瞭解]

 目的:通過系統光盤安裝軟件(90%都有)
   1 刪除YUM庫
[root@bjz ~]# rm    -rf    /etc/yum.repos.d/*
   2掛載安裝光盤(臨時):/dev/cdrom=/dev/sr0
[root@bjz ~]# mount /dev/cdrom   /mnt

    3編寫配置文件。

[root@bjz ~]# vim /etc/yum.repos.d/dvd.repo
[dvd]
name=dvd
baseurl=file:///mnt/
gpgcheck=0
    4 使用YUM 安裝和卸載程序即可。

[root@bjz ~]#yum install -y httpd


(2)使用官方源

目的:使用廠商提供的軟件包作爲YUM的倉庫。

阿里雲

Base/Extras/Updates: 默認(國外源)

1 刪除原先YUM庫
#rm    -rf   /etc/yum.repos.d/*
3 下載阿里源https://opsx.alibaba.com/mirror
#wget  http://mirrors.aliyun.com/repo/Centos-7.repo  -O /etc/yum.repos.d/CentOS-Base.repo
4 更新YUM源---- 將服務器上的軟件包信息下載本地緩存,以提高搜索安裝軟件的速度
#yum makecache


EPEL(aliyun):

源: wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo


Nginx:(配置文件):

系統的更新和升級,可以使用基礎源(aliyun,163)。

軟件的使用建議使用官方源(nginx.com/mysql.com)


MySQL:

https://www.mysql.com/


Zabbix:

基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案

https://www.zabbix.com


OpenStack:

是一個開源的雲計算管理平臺項目

https://docs.openstack.org/queens/


2.使用YUM管理RPM包

(1)==查看可用倉庫
[root@bjz ~]# yum clean all //清空緩存及其它文件(可以通過清理nginx.rpm觀察)
[root@bjz ~]# yum makecache //重建緩存
[root@bjz ~]# yum repolist //查詢可用的倉庫

(2)安裝

第一種:全新安裝

#yum  -y  install  httpd  vsftpd  *vnc

#yum  -y install  https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm       //從互聯網安裝


第二種:重新安裝

#yum  -y reinstall  httpd    (有損壞時才重新安裝,重新部署修復)

第三種:升級安裝

#yum  -y update  httpd

#yum  -y  update           //系統更新,請在安裝系統後立即執行。

#yum  -y  update   kernal    //升級內核,重啓後就能看到


第四種:組安裝MariaDB(Mysql)

#yum  -y  groupinstall   mariadb

(3)查詢

查詢HTTP程序

# yum list httpd        -----------帶@ 是已經安裝的。

查詢類似VNC程序

#yum  list  *vnc*

查詢安裝過程

#yum  list  installed

查詢HTTP程序的詳細信息

#yum  info  httpd


查詢程序組

#yum  group  list

查詢程序組的詳細信息

#yum  groupinfo   mariadb     (mysql數據庫組)

(4)卸載

卸載程序

#yum  -y  remove   mysql-server

卸載程序組

#yum  -y  groupremove  mysql-server

(5)yum  history  ----#查看yum操作的歷史記錄操作

#yum  history

#yum  history  info  4      //顯示history中編號4的詳細信息

#yum  history  undo  4     //將執行命令回滾根據Id可以用undo撤銷指定的yum操作

#yum history redo  4        //將編號4命令重新執行


(6)擴展查詢

例1:從描述中搜索軟件包(search)

#yum  list  |  grep  chinese   //只能查詢軟件包的名字中包含chinese的軟件包

#yum  search  chinese     //可以查詢到軟件包的名字或者描述中含有chinese的軟件包

例2:查找文件輸入哪個包(provides)

[root@server0 ~]# yum provides /etc/vsftpd/vsftpd.conf

[root@server0 ~]# yum provides */vsftpd.conf

例3:通過命令找包

如果遇到命令不支持的情況,就說明該命令的程序沒有安裝。

可以通過provides 來查詢到程序的名稱。

(1)沒有發現命令
    [root@server0 ~]# gnuplot       //gnuplot是一種繪圖工具

bash: gnuplot: command not found...

(2).查詢命令屬於哪個程序
    [root@server0 ~]# yum provides gnuplot
Loaded plugins: langpacks
gnuplot-4.6.2-3.el7.x86_64 : A program for plotting mathematical expressions and data

Repo : classroom_content_rhel7.0_x86_64_dvd

(3).安裝並使用命令
    #yum  -y  install  gnuplot

   

      RPM默認管理RPM包

1.認識RPM包


軟件包名 版本號(Version) 發佈版本(Release5/6/7) 系統平臺(32/64)

ntfs-3g-2011.4.12-5.el5.x86_64.rpm 套件名

ntfs-3g-2011.4.12-5.el6.i686.rpm 套件名

yum-utils-1.1.30-14.el6.noarch.rpm 套件名

php-5.6.20-1.fc23.ppc64p7.rpm // IBM 小型機CPU Power


2.RPM管理包的命令

(1)安裝i     

概述:安裝 -i -v  -h  --force  --nodeps  --nosignature


統一資源定位路徑安裝#rpm  -ivh  https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

本地地址安裝 (通過掛載的U盤或光盤)#rpm  -ivh  /mnt/Packages

-i  ---安裝    -v ---顯示安裝信息     -h  ---顯示進度條 

額外選項: (注意命令前面是兩個小橫槓)

--nodeps  ----發現這個程序安裝時有依賴關係,放棄某些功能時用--nodeps忽略依賴關係


                   -- nosignature----不檢驗軟件包的簽名

(例子:[root@localhost Packages]# rpm -ivh wireshark-1.10.14-14.el7.x86_64.rpm  --nodeps)


                   --force  ------強制安裝軟件包 (rpm 無法將已經安裝的軟件包,重複安裝。

比如你裝過這個rpm的版本1,如果你想裝這個rpm的版本2,就需要用--force強制安裝)  


(2).查詢q   

概述:查詢 -q  -a所有  -l文件  -f所屬包  -i包的信息  -c配置文件  -d幫助文件

[root@tianyun ~]# rpm -q  wireshark        //查詢指定包是否安裝
[root@tianyun ~]# rpm -qa |grep wireshark    //在所有已經安裝的包中查詢wireshark軟件包
[root@tianyun ~]# rpm -ql wireshark        //查詢已安裝軟件包安裝到何處     
[root@localhost ~]# rpm -qf /usr/share/wireshark/ws.css  //查詢該文件屬於哪個rpm包(which)
[root@tianyun ~]#  rpm -qi wireshark         //查詢一個已安裝軟件包的信息information
[root@tianyun ~]# rpm -qc httpd   //查看一下已安裝軟件的配置文件(-c configure)
[root@tianyun ~]# rpm -qd httpd     //查看一下已經安裝軟件的文檔安裝位置

(3).卸載e

[root@localhost ~]# rpm -q httpd
httpd-2.4.6-67.el7.centos.6.x86_64
[root@localhost ~]# rpm -e httpd
[root@localhost ~]# rpm -q httpd
未安裝軟件包 httpd


三、源碼包管理

1.獲取源碼包的途徑

官方網站,可以獲得最新的軟件包download
Apache: www.apache.org
Nginx: www.nginx.org
Tengine: tengine.taobao.org

2.安裝源碼包(編譯安裝)的步驟

(1)下載源碼包,準備好下載的源碼包   

------- tengine-2.2.0.tar.gz

(2)準備編譯環境如編譯器gcc、make 

  -------#yum  -y  install gcc  make  zlib-devel  pcre  pcre-devel openssl-devel

(3)解壓 tar  xf   

#useradd  www

#tar  xvf  tengine-2.2.0.tar.gz

#cd tengine-2.2.0

(4)配置  (進入tengine-2.2.0目錄後依次打下列命令)

./configure \
--user=www \
--group=www \
--prefix=/usr/local/nginx \    ------指定安裝路徑
--with-http_stub_status_module \   ------with配置和其它軟件的關聯
--with-http_sub_module \
--with-http_ssl_module \
--with-pcre 

(5)編譯   make

# make

(6)安裝   make  install

# make install

(7)啓動測試
# /usr/local/nginx/sbin/nginx //啓動nginx服務器
# systemctl stop firewalld
看到網頁,說明部署成功。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章