linux系統服務學習(二)linux下yum源配置實戰

文章目錄

  • Linux下yum源配置實戰
  • 一、Linux下軟件包的管理
    • 1、軟件安裝方式
    • 2、源碼安裝的配置過程
    • 3、詳解源碼安裝的配置過程(定制)
    • 4、詳解編譯過程
    • 5、安裝過程
    • 6、axel多線程下載軟件源碼安裝
    • 7、使用軟鏈接解決command not found
    • 8、使用環境變量解決command not found
    • 9、解決源碼安裝軟件手冊找不到問題
  • 二、YUM源概述
    • 1、yum源作用
    • 2、yum源優點
    • 3、yum源分類
      • ☆ 本地yum源
      • ☆ 網絡yum源
  • 三、本地YUM源配置
    • 1、本地YUM配置
    • 2、使用光盤鏡像作為YUM源倉庫
    • 3、擴展man 5
  • 四、網絡YUM源配置
    • 1、網絡YUM源的分類
    • 2、使用知名平臺的YUM源
    • 3、擴展:EPEL源配置
    • 4、特定軟件的YUM源配置
  • 五、自建YUM源倉庫
    • 1、緩存安裝軟件包
    • 2、如何緩存軟件安裝包
    • 3、把軟件及依賴軟件全部下載到某個路徑
    • 4、自定義YUM倉庫
  • 任務背景
  • 任務要求
  • 任務拆解
  • 課程目標
  • 知識儲備
    • 一、yum源概述
      • ㈠ yum源的作用
      • ㈡ yum源的優點
      • ㈢ yum源的分類
        • 1、本地yum源
        • 2、網絡yum源
    • 二、==yum源配置(重點)==
      • ㈠ 本地yum源配置
        • 1、本地需要有倉庫
          • ① 虛擬光驅裝載鏡像文件
          • ② 將光盤掛載到本地目錄
          • ③ 開機自動掛載
        • 2、修改配置文件指向本地倉庫
          • ① 知道配置文件存放路徑
          • ② 修改配置文件
      • ㈡ 網絡yum源配置
        • 1、主機需要訪問互聯網
        • 2、修改配置文件指向網絡倉庫
          • ① 特定軟件網絡源
          • ② 基礎軟件網絡源
        • 3、通過安裝相應軟件包直接配置
        • 4、總結
      • ㈢ 緩存安裝的軟件包
        • 1、什么時候需要緩存軟包?
        • 2、如何緩存軟包?
      • ㈣ 自建yum倉庫
  • 任務實施
    • 一、配置本地yum源
      • ㈠ 掛載鏡像到本地
      • ㈡ 修改配置文件指向本地倉庫
    • 二、配置MySQL官方yum源
      • ㈠ 下載官方提供的yum倉庫軟件包
      • ㈡ 安裝軟件包來自動配置yum源
      • ㈢ 清空yum緩存重新創建緩存
    • 三、安裝MySQL-5.6.43版本軟件包
  • 任務總結
  • 擴展補充
    • 1、yum倉庫優先級
    • 2、yum緩存軟件包
  • 課后強化
  • 課后實戰
    • 1. 需求1
    • 2. 需求2
    • 3. 需求3

Linux下yum源配置實戰

一、Linux下軟件包的管理

1、軟件安裝方式

① RPM包管理(需要單獨解決依賴問題)

② YUM包管理(需要有網絡及YUM倉庫的支持,會自動從互聯網下載軟件,自動解決依賴)

③ 源碼安裝(安裝過程比較復雜,源碼安裝三步走。優點:定制性很強)

軟件:主線版(mainline),穩定版(stable)

2、源碼安裝的配置過程

在Linux系統中,源碼安裝一共分為三步(三步走):

第一步:配置過程(配置軟件的安裝路徑)

第二步:編譯過程(把軟件由源代碼編譯成可以安裝的程序)

第三步:安裝過程(把編譯后的程序進行安裝)

# ./configure && make && make install

3、詳解源碼安裝的配置過程(定制)

# cd 軟件源碼包
# ./configure [選項]
# ./configure --help--prefix=... Directories to put files in /usr/local 軟件家目錄
--bindir=... $prefix/bin 	命令的目錄
--etcdir=... $prefix/etc 	配置文件的目錄 httpd => /etc/httpd/httpd.conf
--mandir=... $prefix/share/man man	文檔路徑
--locale=... $prefix/share/locale 	語言編碼
...

4、詳解編譯過程

# make

在Linux操作系統中,make主要功能就是將其他語言的源代碼打包成Linux可以識別安裝的程序。編譯過程需要一個gcc軟件(開發工具)的支持!如果沒有請用 yum -y install gcc* 去安裝一下

5、安裝過程

# make install

6、axel多線程下載軟件源碼安裝

第一步:獲取axel多線程下載軟件

第二步:上傳axel軟件包到Linux系統中

第三步:安裝axel軟件(源碼安裝三步走=>配置+編譯+安裝)

① 對軟件進行解壓縮操作

# tar -zxf axel-2.4.tar.gz# tar -xf axel-2.4.tar.gz

② 使用cd命令切換到axel目錄中

# cd axel-2.4

③ 對axel軟件進行配置(不采用默認配置)

# ./configure --help
Usage: ./configure [OPTIONS]
Option          Description                             Default
--prefix=...    Directories to put files in             /usr/local
--bindir=...                                            $prefix/bin
--etcdir=...                                            $prefix/etc
--mandir=...                                            $sharedir/man
--locale=...                                            $sharedir/locale

設置axel軟件的安裝路徑為/opt/axel

# ./configure --prefix=/opt/axel

④ 對axel軟件進行編譯與安裝

# make
# make install# make && make install
&& :邏輯與,如果make編譯成功會立即執行右邊的make install安裝程序,如果make編譯失敗,則以上程序會停止執行,然后拋出錯誤。

第四步:測試與使用

[root@yunwei ~]# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7
bash: axel: command not found...

出現以上問題的主要原因在于:我們沒有采用默認的安裝方式,所以導致當我們執行axel命令時,其找不到對應的軟件。

第五步:解決命令無法訪問問題

第一種方式:采用軟鏈接形式(類似Windows中的快捷方式)
第二種方式:使用環境變量(重要,Linux中的環境變量)

7、使用軟鏈接解決command not found

# which axel
/usr/bin/which: no axel in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)# ll /opt/axel/bin
axel解決方案:給/opt/axel/bin/axel創建一個快捷方式到/usr/local/bin
# ln -s /opt/axel/bin/axel /bin/axel 基本語法:
# ln -s  源文件路徑 軟鏈接路徑# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

8、使用環境變量解決command not found

環境變量

終端 => 命令 => 系統的環境變量(PATH => /etc/profile) => 一些命令的存放路徑

axel多線程下載軟件,通過源碼的方式安裝成功后,由于沒有使用默認的安裝路徑,導致axel這個命令沒有出現在系統的環境變量中,所以其會出現command not found。

第一步:查詢當前系統的環境變量

# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

第二步:把axel所在目錄添加到環境變量

① 使用vim編輯/etc/profile文件,追加到最后一行
# vim /etc/profile
...
export PATH=$PATH:/opt/axel/bin
# source /etc/profile			=>   		代表讓以上配置立即生效② 使用echo命令向/etc/profile文件中追加一行
# echo 'export PATH=$PATH:/opt/axel/bin' >> /etc/profile
# source /etc/profile

第三步:測試axel命令是否可以使用

# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

9、解決源碼安裝軟件手冊找不到問題

問題重現:

[root@localhost axel]# man axel
No manual entry for axel
原因:找不到指定的man文檔

解決方案:

[root@localhost axel]# vim /etc/man.config
...
增加如下內容:
MANPATH /opt/axel/share/man

二、YUM源概述

1、yum源作用

軟件包管理器,類似360的軟件管家

2、yum源優點

RPM安裝(下載軟件、單獨安裝、需要解決依賴關系)

源碼安裝(下載軟件的源碼包,解壓,進入目錄=>配置+編譯+安裝)

yum源:相當于rpm軟件包管理的升級版

能夠解決軟件包之間的依賴關系,提高運維人員的工作效率。

yum源底層還是基于RPM進行軟件安裝操作的,所以yum安裝軟件后,我們也可以通過rpm -qa |grep 軟件名稱

3、yum源分類

☆ 本地yum源

yum倉庫在本地(系統光盤/鏡像文件) => 不需要網絡的支持

☆ 網絡yum源

yum倉庫不在本地,在遠程

  • 國內較知名的網絡源(aliyun源,163源,sohu源,知名大學開源鏡像等)

    ? 阿里源:https://opsx.alibaba.com/mirror

    ? 清華源:https://mirrors.tuna.tsinghua.edu.cn/

  • 國外較知名的網絡源(centos源、redhat源、擴展[^epel]源等)

  • 特定軟件相關的網絡源(Nginx、MySQL、Zabbix等)

三、本地YUM源配置

1、本地YUM配置

?

2、使用光盤鏡像作為YUM源倉庫

第一步:在VMware系統中裝在CentOS7.6系統的光盤鏡像

第二步:把光盤掛載到某個目錄下

# mount -o ro /dev/sr0 /mnt
選項說明:
-o :掛載方式,ro代表以readonly=>只讀的方式進行掛載rw代表以read/write=>讀寫的方式進行掛載
# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part├─centos-root 253:0    0   17G  0 lvm  /└─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.3G  0 rom  /mnt

卸載或解掛可以使用umount /mnt

第三步:把光盤掛載添加到開機啟動文件中

# chmod +x /etc/rc.local
# echo 'mount -o ro /dev/sr0 /mnt' >> /etc/rc.local

/etc/rc.local,屬于系統的開機啟動文件。系統啟動后,會自動加載并執行這個文件

第四步:編寫本地YUM倉庫文件

# cd /etc/yum.repos.d/
創建一個以*.repo結尾的文件,名稱任意
# vim CentOS-Media.repo
[c7-media]
name=local yum
baseurl=file:///mnt
gpgcheck=0
enabled=1#基本源改名字#mv CentOS-Base.repo CentOS-Base.repo.1# yum clean all
# yum makecache
# yum repolist all注:file://本地協議路徑,后面跟倉庫的具體路徑

yum倉庫的標準格式

[倉庫標識名稱],名稱任意,在一個文件中可以擁有多個標識

name=倉庫名稱

baseurl=倉庫的路徑,支持多種格式,file://本地路徑,ftp://,http://或https://

gpgcheck=gpg密鑰,值可以是0(代表不檢測),1(代表檢測,如果是1,下方還要定義一個gpgkey=密鑰連接)

enabled=是否啟動當前倉庫,值可以0,也可以是1,默認為1,代表啟動倉庫

第五步:測試本地YUM倉庫是否可用

# yum install httpd -y

3、擴展man 5

在Linux系統中,給定我們一個配置文件,怎么查詢這個文件中每一個選項的作用呢?

# man 命令

擴展:man 5 配置文件名稱

# man 5 yum.conf

四、網絡YUM源配置

1、網絡YUM源的分類

① 使用比較知名平臺的YUM源(阿里云、騰訊、清華)

② 有些特定軟件(如Nginx、MySQL、Zabbix等等)需要根據官網文檔自定義網絡YUM源

2、使用知名平臺的YUM源

? 阿里源:https://opsx.alibaba.com/mirror

? 清華源:https://mirrors.tuna.tsinghua.edu.cn/

騰訊源、華為源…

百度搜索 => 華為 mirror鏡像源

案例:配置阿里云的yum源

第一步:百度,搜索你想要的YUM源,進入官網,找到CentOS

在這里插入圖片描述

第二步:根據官網提示,配置阿里云的YUM源

# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# yum clean all
# yum makecache

3、擴展:EPEL源配置

什么是EPEL源?

答:EPEL是對官網源的一個擴展。

CentOS-Base.repo文件 => 基礎源(官方在帶的YUM源)

epel.repo文件 => 擴展源,是對官方YUM源的一個補充

# yum install epel-release -y

比如:會跑的小火車就是在epel源中

# yum install sl -y
# sl

4、特定軟件的YUM源配置

比如特殊的幾個軟件,如Nginx、MySQL、Zabbix

Nginx:http://www.nginx.org

MySQL:https://www.mysql.com/

Zabbix:https://www.zabbix.com/

找到官方文檔,把YUM源配置,寫入到一下文件中(repo文件)

# cd /etc/yum.repos.d
# vim nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

清理緩存:

# yum clean all
# yum makecache

安裝Nginx:

# yum install nginx -y

五、自建YUM源倉庫

1、緩存安裝軟件包

什么時候需要緩存軟件?

  • 下次還需要安裝相同版本的軟件包
  • 由于網絡原因導致網絡安裝非常慢,將軟件包緩存下來,配置本地倉庫

2、如何緩存軟件安裝包

# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever	定義軟件包的緩存路徑
keepcache=1			1開啟緩存;0關閉
debuglevel=2
logfile=/var/log/yum.log
...

3、把軟件及依賴軟件全部下載到某個路徑

只下載不安裝軟件:

# yum install --downloadonly --downloaddir=保存路徑 軟件名稱

案例:下載samba軟件及依賴軟件

# mkdir /soft
# yum install --downloadonly --downloaddir=/soft samba

4、自定義YUM倉庫

第一步:在系統中安裝createrepo制作倉庫的軟件

# yum install createrepo -y

第二步:把/soft文件夾做成一個本地的自建倉庫

# createrepo /soft

第三步:在/etc/yum.repos.d目錄中創建一個soft.repo的倉庫

# cd /etc/yum.repos.d/
# vim soft.repo
[soft]
name=soft yum
baseurl=file:///soft
gpgcheck=0
enabled=1

清理緩存+重建緩存:

# yum clean all
# yum makecache

任務背景

公司之前計劃將現有的MySQL數據庫從云平臺遷移到云下物理真機上,并且已經在相應的物理機上安裝好相應的操作系統。現在需要運維人員協助在測試機Centos7.6上安裝好MySQL-5.6.43版本用于前期遷移準備工作,同時配置好本地yum源和外網源方便后續軟件包安裝。

任務要求

  1. 配置本地yum源和網絡yum源
  2. 安裝MySQL軟件,版本為5.6.43

任務拆解

  1. yum源配置
  2. MySQL數據庫軟件安裝

課程目標

  • 了解yum源安裝軟件包的優點
  • 了解常見的外網yum源
  • 掌握本地和網絡yum源的配置
  • 能夠使用yum工具安裝軟件包

知識儲備

一、yum源概述

㈠ yum源的作用

軟件包管理器,類似360的軟件管家

㈡ yum源的優點

能夠解決軟件包之間的依賴關系,提高運維人員的工作效率。

㈢ yum源的分類

1、本地yum源

yum倉庫在本地(系統光盤/鏡像文件)

2、網絡yum源

yum倉庫不在本地,在遠程

  • 國內較知名的網絡源(aliyun源,163源,sohu源,知名大學開源鏡像等)

    ? 阿里源:https://opsx.alibaba.com/mirror

    ? 網易源:http://mirrors.163.com/

    ? 搜狐源:http://mirrors.sohu.com/

    ? 清華源:https://mirrors.tuna.tsinghua.edu.cn/

  • 國外較知名的網絡源(centos源、redhat源、擴展[^epel]源等)

  • 特定軟件相關的網絡源(Nginx、MySQL、Zabbix等)

二、yum源配置(重點)

㈠ 本地yum源配置

1、本地需要有倉庫

① 虛擬光驅裝載鏡像文件
② 將光盤掛載到本地目錄
/mnt	操作系統默認的掛載點mount [掛載選項] 需要掛載的設備  掛載點手動掛載光盤到/mnt
lsblk		查看當前系統所有的設備文件
mount -o ro /dev/sr0 /mnt
注意:手動掛載后,系統重啟需要再次手動掛載
③ 開機自動掛載
修改/etc/rc.local文件/etc/rc.local	操作系統開機最后讀取的一個文件
echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local

2、修改配置文件指向本地倉庫

① 知道配置文件存放路徑
[root@yunwei yum.repos.d]# pwd
/etc/yum.repos.d
② 修改配置文件
注意:文件名必須以.repo結尾
[root@yunwei yum.repos.d]# vi local.repo
[local]					倉庫的名字,不要有特殊符號(自定義)
name=local yum			倉庫描述
baseurl=file:///mnt	指定yum倉庫的路徑(重要);file://表示本地倉庫;ftp://或者http://
enabled=1			   啟用倉庫,1表示啟用;0表示不啟用
gpgcheck=0			   不用校驗軟件包的簽名,0表示不校驗;1表示校驗===================================================================
# man 5 yum.conf
[repositoryid]
name=Some name for this repository
baseurl=url://server1/path/to/repository/url://server2/path/to/repository/url://server3/path/to/repository/
enabled=1
gpgcheck=0測試驗證:
yum clean all		清空yum緩存
yum makecache 		創建yum緩存
yum list				查看倉庫里的軟件包

㈡ 網絡yum源配置

1、主機需要訪問互聯網

說明:如果配置的是外網源,當前主機需要訪問互聯網。

2、修改配置文件指向網絡倉庫

① 特定軟件網絡源
[root@yunwei yum.repos.d]# vi nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/x86_64/
gpgcheck=0
enabled=1
說明:
baseurl=http://nginx.org/packages/centos/6/$basearch/
$basearch表示當前系統cpu架構,如果系統是32位會找32位軟件包;如果64位會找64位軟件包
② 基礎軟件網絡源
[root@yunwei yum.repos.d]# vi 163.repo 
[163]
name=163 network yum
baseurl=http://mirrors.163.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6[root@yunwei yum.repos.d]# vi aliyun.repo 
[aliyun]
name=aliyun
baseurl=http://mirrors.aliyun.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

3、通過安裝相應軟件包直接配置

說明:該方法是通過安裝軟件包,自動在相應目錄里創建.repo文件(自動配置)

epel源:
https://mirrors.aliyun.com/epel/6/x86_64/epel-release-6-8.noarch.rpm
mysql源:
https://repo.mysql.com/mysql-community-release-el6.rpm
https://repo.mysql.com/mysql-community-release-el7.rpm

4、總結

yum配置(重點):

  1. 本地yum源配置核心
    • 本地需要有軟件倉庫——>光盤掛載到系統某個目錄上(mount -o ro /dev/sr0 /mnt)
    • 告訴yum工具去哪個倉庫找軟件包——>修改配置(/etc/yum.repos.d/xxx.repo
  2. 網絡yum源配置核心
    • 當前主機必須能夠訪問互聯網(外網源)
    • 告訴yum工具去哪個倉庫找軟件包——>修改配置(/etc/yum.repos.d/xxx.repo
    • 配置方法2種:直接修改配置文件;下載rpm包,安裝軟件包自動幫我配置
  3. 如果多個倉庫里有相同的軟件包,高版本優先
  4. 多個yum源,可以指定優先級,但是需要安裝插件,修改配置文件完成【參考擴展補充】

㈢ 緩存安裝的軟件包

1、什么時候需要緩存軟包?

  • 下次還需要安裝相同版本的軟件包
  • 由于網絡原因導致網絡安裝非常慢,將軟件包緩存下來,配置本地倉庫

2、如何緩存軟包?

修改配置文件/etc/yum.conf

# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever	定義軟件包的緩存路徑
keepcache=1			1開啟緩存;0關閉
debuglevel=2
logfile=/var/log/yum.log
...

㈣ 自建yum倉庫

**思考1:**什么情況下需要自建yum倉庫?

思路:

  1. 創建一個目錄來保存相應的軟件
  2. 需要在該目錄下生成repodata目錄
  3. 修改配置文件指向本地自建倉庫

步驟:

  1. 創建一個目錄來保存相應軟件
[root@yunwei soft]# mkdir /soft
  1. 將你準備的所有軟件包拷貝到/soft目錄里
說明:以下只是演示舉例,以后根據自己的實際情況,將你準備的軟件包考到本地目錄就行
[root@yunwei soft]# pwd
/soft
[root@yunwei soft]# cp /mnt/Packages/samba* /soft/
[root@yunwei soft]# cp /mnt/Packages/libtevent-0.9.26-2.el6_7.x86_64.rpm /soft
[root@yunwei soft]# cp /mnt/Packages/libtalloc-2.1.5-1.el6_7.x86_64.rpm /soft/
  1. 掃描軟件包所在目錄生成repodata目錄
[root@yunwei soft]# yum -y install createrepo
[root@yunwei soft]# createrepo /soft
驗證是否多了repodata目錄
[root@yunwei soft]# ls /soft
  1. 關閉本地倉庫和所有網絡倉庫,配置自己創建的yum倉庫
1) 根據自己配置情況,打開本地和網絡源的配置文件
將enabled=1修改為enabled=0
2) 創建自建源配置文件
[root@yunwei soft]# vim /etc/yum.repos.d/myself.repo
[myself]
name=myself yum
enabled=1
baseurl=file:///soft			路徑就是自己之前創建的目錄,里面有軟件包也有repodata目錄
gpgcheck=0
3) 清空yum緩存重新創建
[root@yunwei soft]# yum clean all
[root@yunwei soft]# yum makecache
  1. 測試驗證安裝samba軟件
[root@yunwei soft]# yum install samba
注意:安裝samba軟件包來自myself倉庫,同時會自動安裝其他依賴關系軟件包

任務實施

一、配置本地yum源

㈠ 掛載鏡像到本地

手動掛載
[root@yunwei ~]# mount -o ro /dev/sr0 /mnt/
開機自動掛載
[root@yunwei ~]# echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local

㈡ 修改配置文件指向本地倉庫

[root@yunwei ~]# cd /etc/yum.repos.d/
[root@yunwei yum.repos.d]# cat local.repo
[local]
name=local yum
baseurl=file:///mnt
enabled=1
gpgcheck=0

二、配置MySQL官方yum源

㈠ 下載官方提供的yum倉庫軟件包

通過瀏覽器找到適合自己系統的軟包下載
https://dev.mysql.com/downloads/repo/yum/

㈡ 安裝軟件包來自動配置yum源

安裝軟件包
[root@yunwei ~]# rpm -ivh mysql80-community-release-el6-2.noarch.rpm
warning: mysql80-community-release-el6-2.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]1:mysql80-community-relea########################################### [100%]查看自動配置的mysql源倉庫配置文件
[root@yunwei ~]# ls /etc/yum.repos.d/mysql-community*
/etc/yum.repos.d/mysql-community.repo  /etc/yum.repos.d/mysql-community-source.repo注意:
1.默認情況下,官方提供最新版本的軟件,我們需要根據自己的情況進行修改配置文件
2.我們需要安裝mysql-5.6版本,所以關閉其他版本的倉庫,只打開5.6的倉庫[root@yunwei ~]# cd /etc/yum.repos.d/
[root@yunwei yum.repos.d]# vim mysql-community.repo
# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1				將0改為1,開啟5.6版本倉庫
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
....
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=0			將1改改為0,關閉默認的8.0版本倉庫
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql以下兩個倉庫也關閉,暫時用不到
[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql[mysql-tools-community]
name=MySQL Tools Community
baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

㈢ 清空yum緩存重新創建緩存

[root@yunwei yum.repos.d]# yum clean all
[root@yunwei yum.repos.d]# yum makecache

在這里插入圖片描述

三、安裝MySQL-5.6.43版本軟件包

[root@yunwei ~]# yum install mysql-community-server

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

說明:

  1. 通過網絡安裝,可能會由于網絡原因安裝不成功,多試幾次即可
  2. 一臺機器安裝好后,如果另外一臺也需要安裝,可以通過開啟緩存下載下來,做成本地倉庫安裝

在這里插入圖片描述

任務總結

  1. 明白需求
  2. 拆解任務
  3. 知識儲備
  4. 落地實現
  5. 總結驗證

擴展補充

1、yum倉庫優先級

如果有多個倉庫,是否可以設置yum源的優先級設定?

  • 可以設置,但是需要安裝插件yum-plugin-priorities
  • 安裝完插件后,只需要在yum源配置文件*.repo里指定優先級即可,如:
添加priority=n的配置項,n值越小優先級越高,默認99.
[local]
name=local yum
baseurl=file:///mnt
enabled=1
gpgcheck=0
priority=1

2、yum緩存軟件包

**問:**如果想把從網絡源安裝的軟件包下載到本地方便后續使用,怎么做呢?

  • 只需要開啟yum緩存功能即可
  • 通過修改配置文件開啟yum緩存功能,如下:
[root@yunwei ~]# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever		軟件包的緩存路徑
keepcache=1			將0變成1,表示緩存安裝軟件包到本地
debuglevel=2
logfile=/var/log/yum.log
....

課后強化

  • rpm工具使用
rpm -ivh	package
安裝  
rpm -e package
卸載
rpm -Uvh
升級,如果已安裝老版本,則升級;如果沒安裝,則直接安裝
rpm -Fvh
升級,如果已安裝老版本,則升級;如果沒安裝,則不安裝
rpm -ivh --force
強制安裝
rpm --nodeps
忽略依賴關系
rpm -ql
查看已經安裝的軟件的文件列表
rpm -qlp  package.rpm 
查看未安裝的rpm包里的文件列表
rpm -qa  查看已經安裝的所有rpm包
rpm -qd  查看軟件的文檔列表
rpm -qc  查看軟件的配置文件
rpm -qi  查看軟件的詳細信息
rpm -qf  filename
查看文件來自哪個rpm包
rpm --import    key_file
導入公鑰用于檢查rpm文件的簽名
rpm -checksig   package.rpm
檢查rpm包的簽名
  • yum工具使用
# yum install package -y
默認是安裝來自倉庫里的軟件,指定的是軟件名字。多個包空格隔開;-y (取消交互)
# yum install ./xlockmore-5.31-2.el6.x86_64.rpm
或者
# yum localinstall ./xlockmore-5.31-2.el6.x86_64.rpm
安裝來自本地指定路徑下的rpm包,而不是來自倉庫
# yum remove 或者 erase package
卸載軟件包
# yum update
更新倉庫里所有比本機已經安裝過的軟件要的軟件	
# yum update package
指定升級的軟件
# yum search mysql
搜索出所有軟件名字或者軟件描述包含“mysql”關鍵字的軟件
# yum provides  "*libmysqlclient.so*"
找出模塊由哪些軟件包提供
# yum provides "*xeye*"
搜索一個包含xeye關鍵字的軟件包
# yum clean all
清空之前的yum列表緩存
# yum makecache
創建新的緩存
# yum list
列出倉庫里的所有軟件包
# yum repolist
列出已配置的軟件倉庫
# yum list|tail
查看未安裝的軟件包
# yum list |grep 關鍵字
@代表已經安裝成功
# yum list installed
查看已安裝的包
# yum grouplist
查看包組
# yum groupinstall  "包組"
安裝包組
# yum groupremove "包組"
# md5sum +包名
直接校驗第三方提供的軟件包 

課后實戰

1. 需求1

Centos默認使用自帶的國外源,由于網絡問題請將其替換為國內的清華源、阿里云源,163源,sohu源其中之一

2. 需求2

開發人員需要安裝某個軟件包(epel源中有),發現現有yum源中沒有,需要運維協助配置EPEL源(兩種方式搭建EPEL源)

3. 需求3

給開發人員搭建能夠提供指定軟件包的安裝源,如zabbix的yum源

puppet:
http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm
http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
http://yum.puppetlabs.com/puppetlabs-release-fedora-20.noarch.rpmZabbix:
http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
http://repo.zabbix.com/zabbix/4.1/rhel/7/x86_64/zabbix-release-4.1-1.el7.noarch.rpm 

“紅帽系”的操作系統提供額外的軟件包,適用于RHEL、CentOS等系統


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/43162.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/43162.shtml
英文地址,請注明出處:http://en.pswp.cn/news/43162.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

軟考A計劃-系統集成項目管理工程師-收尾管理

點擊跳轉專欄>Unity3D特效百例點擊跳轉專欄>案例項目實戰源碼點擊跳轉專欄>游戲腳本-輔助自動化點擊跳轉專欄>Android控件全解手冊點擊跳轉專欄>Scratch編程案例點擊跳轉>軟考全系列點擊跳轉>藍橋系列 👉關于作者 專注于Android/Unity和各種游…

字符串的無重復排列組合

題目描述: 無重復字符串的排列組合。編寫一種方法,計算某字符串的所有排列組合,字符串每個字符均不相同。 示例1: 輸入:S "qwe" 輸出:["qwe", "qew", "wqe", "weq&q…

中間件(二)dubbo負載均衡介紹

一、負載均衡概述 支持輪詢、隨機、一致性hash和最小活躍數等。 1、輪詢 ① sequences:內部的序列計數器 ② 服務器接口方法權重一樣:(sequences1)%服務器的數量(決定調用)哪個服務器的服務。 ③ 服務器…

opencv直方圖與模板匹配

import cv2 #opencv讀取的格式是BGR import numpy as np import matplotlib.pyplot as plt#Matplotlib是RGB %matplotlib inline def cv_show(img,name):cv2.imshow(name,img)cv2.waitKey()cv2.destroyAllWindows() 直方圖 cv2.calcHist(images,channels,mask,histSize,ran…

Spring中Bean的生命周期以及Bean的單例與多例模式

一. Bean的生命周期 bean的生命周期可以表達為:bean的定義?bean的初始化?bean的使用?bean的銷毀 Bean的初始化過程 1)通過XML、Java annotation(注解)以及Java Configuration(配置類) 等方式加載Bea…

2023+HuggingGPT: Solving AI Tasks with ChatGPT and itsFriends in Hugging Face

摘要: 語言是llm(例如ChatGPT)連接眾多AI模型(例如hugs Face)的接口,用于解決復雜的AI任務。在這個概念中,llms作為一個控制器,管理和組織專家模型的合作。LLM首先根據用戶請求規劃任務列表,然后為每個任務分配專家模…

Unity 鼠標實現對物體的移動、縮放、旋轉

文章目錄 1. 代碼2. 測試場景 1. 代碼 using UnityEngine;public class ObjectManipulation : MonoBehaviour {// 縮放比例限制public float MinScale 0.2f;public float MaxScale 3.0f;// 縮放速率private float scaleRate 1f;// 新尺寸private float newScale;// 射線pri…

【Windows系統編程】03.遠線程注入ShellCode

shellcode&#xff1a;本質上也是一段普通的代碼&#xff0c;只不過特殊的編程手法&#xff0c;可以在任意環境下&#xff0c;不依賴于原有的依賴庫執行。 遠程線程 #include <iostream> #include <windows.h> #include <TlHelp32.h>int main(){HANDLE hPr…

Educational Codeforces Round 153 (Rated for Div. 2)ABC

Educational Codeforces Round 153 (Rated for Div. 2) 目錄 A. Not a Substring題目大意思路核心代碼 B. Fancy Coins題目大意思想核心代碼 C. Game on Permutation題目大意思想核心代碼 A. Not a Substring 題目大意 給定一個只包含“&#xff08;”和“&#xff09;”這兩…

react-native-webview RN和html雙向通信

rn登錄后得到的token需要傳遞給網頁&#xff0c;js獲取到的瀏覽器信息需要傳遞給rn RN Index.js: import React from react import { WebView } from react-native-webview import useList from ./useListexport default function Index(props) {const { uri, jsCode, webVie…

iPhone刪除的照片能恢復嗎?不小心誤刪了照片怎么找回?

iPhone最近刪除清空了照片還能恢復嗎&#xff1f;大家都知道&#xff0c;照片對于我們來說是承載著美好回憶的一種形式。它記錄著我們的平淡生活&#xff0c;也留住了我們的美好瞬間&#xff0c;具有極其重要的紀念價值。 照片不小心誤刪是一件非常難受的事&#xff0c;那么iP…

android TextView 超出長度使用省略號

在Android中最常見的需求&#xff0c;就是在在外部展示信息時&#xff0c;需要簡要展示內容。TextView僅需在靜態布局文件中設置以下幾個屬性&#xff1a; android:maxWidth“100dp” // 寬度是多少才算超出 android:maxLines"2" // 高度多少才算超出 android:elli…

React下載文件的兩種方式

React下載文件的兩種方式 - 代碼先鋒網 不知道有用沒用看著挺整齊 沒試過 1、GET類型下載 download url > {const eleLink document.createElement(a);eleLink.style.display none;// eleLink.target "_blank"eleLink.href url;// eleLink.href record;d…

Centos7 配置Docker鏡像加速器

docker實戰(一):centos7 yum安裝docker docker實戰(二):基礎命令篇 docker實戰(三):docker網絡模式(超詳細) docker實戰(四):docker架構原理 docker實戰(五):docker鏡像及倉庫配置 docker實戰(六):docker 網絡及數據卷設置 docker實戰(七):docker 性質及版本選擇 認知升…

CentOS系統環境搭建(五)——Centos7安裝maven

centos系統環境搭建專欄&#x1f517;點擊跳轉 Centos7安裝maven 下載壓縮包 maven下載官網 解壓 壓縮包放置到/usr/local tar -xvf apache-maven-3.9.2-bin.tar.gz配置環境變量 vim /etc/profile在最下面追加 MAVEN_HOME/usr/local/apache-maven-3.9.2 export PATH${MAV…

Jenkins 監控dist.zip文件內容發生變化 觸發自動部署

為Jenkins添加plugin http://xx:xx/manage 創建一個任務 構建觸發器 每3分鐘掃描一次&#xff0c;發現指定文件build.zip文件的MD5發生變化后 觸發任務

【C++學習手札】一文帶你認識C++虛繼承??

食用指南&#xff1a;本文在有C基礎的情況下食用更佳 &#x1f340;本文前置知識&#xff1a;C虛函數&#xff08;很重要&#xff0c;內部剖析&#xff09; ??今日夜電波&#xff1a;僕らのつづき—柊優花 1:06 ━━━━━━?&#x1f49f;──────── 3:51 …

創建密碼庫/創建用戶帳戶/更新 Ansible 庫的密鑰/ 配置cron作業

目錄 創建密碼庫 創建用戶帳戶 更新 Ansible 庫的密鑰 配置cron作業 創建密碼庫 按照下方所述&#xff0c;創建一個 Ansible 庫來存儲用戶密碼&#xff1a; 庫名稱為 /home/curtis/ansible/locker.yml 庫中含有兩個變量&#xff0c;名稱如下&#xff1a; pw_developer&#…

神經網絡基礎-神經網絡補充概念-39-梯度消失與梯度爆炸

簡介 梯度消失和梯度爆炸是在深度神經網絡中訓練過程中可能出現的問題&#xff0c;導致模型難以訓練或無法收斂。這些問題與反向傳播算法中的梯度計算有關。 概念 梯度消失&#xff08;Gradient Vanishing&#xff09;&#xff1a;在深層神經網絡中&#xff0c;特別是具有很…

File inclusion

文章目錄 File inclusion(local)File inclusion(remote) File inclusion(local) 隨便選擇一個點擊提交&#xff0c;提交后觀察 url ?filename 我們可以使用相對路徑../../../../../訪問我們想要看到的文件內容 查看windows系統的主機映射文件../../../../Windows/System32/…