亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中軟件包管理的示例分析

發布時間:2021-11-15 15:20:49 來源:億速云 閱讀:194 作者:小新 欄目:系統運維

這篇文章主要介紹Linux中軟件包管理的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1、rpm RPM包管理器

選項-q表示查詢系統安裝的軟件包

[root@centos7 ~]# rpm -q sudo sudo-1.8.6p7-16.el7.x86_64 [root@centos7 ~]# rpm -q nginx 未安裝軟件包 nginx  [root@centos7 ~]#

選項-a表示查詢所有安裝的rpm包

[root@centos7 ~]# rpm -qa|grep vim vim-filesystem-7.4.160-1.el7.x86_64 vim-common-7.4.160-1.el7.x86_64 vim-enhanced-7.4.160-1.el7.x86_64 vim-minimal-7.4.160-1.el7.x86_64 [root@centos7 ~]#

選項-f file表示查詢文件所屬軟件包

[root@centos7 ~]# rpm -qf /usr/bin/ls coreutils-8.22-15.el7.x86_64 [root@centos7 ~]#

選項-c表示查詢軟件包的配置文件

[root@centos7 ~]# rpm -qc sudo /etc/pam.d/sudo /etc/pam.d/sudo-i /etc/sudo-ldap.conf /etc/sudo.conf /etc/sudoers [root@centos7 ~]#

選項-e表示卸載軟件包

[root@centos7 ~]# rpm -e sudo 警告:/etc/sudoers 已另存為 /etc/sudoers.rpmsave [root@centos7 ~]# rpm -q sudo 未安裝軟件包 sudo  [root@centos7 ~]#

選項-i表示安裝 -v表示顯示詳細信息 -h表示顯示安裝進度

#下載rpm包 [root@centos7 tmp]# wget ftp.scientificlinux.org/linux/scientific/7rolling/x86_64/os/Packages/sudo-1.8.6p7-16.el7.x86_64.rpm #安裝 [root@centos7 tmp]# rpm -ivh sudo-1.8.6p7-16.el7.x86_64.rpm  警告:sudo-1.8.6p7-16.el7.x86_64.rpm: 頭V4 DSA/SHA1 Signature, 密鑰 ID 192a7d7d: NOKEY 準備中...                          ################################# [100%] 正在升級/安裝...    1:sudo-1.8.6p7-16.el7              ################################# [100%]

有很多軟件并不是只有一個rpm包,它們之間有各種各樣的依賴關系,當安裝(或卸載)時,需要將所有依賴的包都安裝(或卸載)之后才能安裝(或卸載)成功

[root@centos7 tmp]# rpm -e vim-common 錯誤:依賴檢測失敗:     vim-common = 2:7.4.160-1.el7 被 (已安裝) vim-enhanced-2:7.4.160-1.el7.x86_64 需要

選項--nodeps表示忽略依賴關系

[root@centos7 tmp]# rpm -q vim-common vim-common-7.4.160-1.el7.x86_64 [root@centos7 tmp]# rpm -e --nodeps vim-common 警告:/etc/vimrc 已另存為 /etc/vimrc.rpmsave [root@centos7 tmp]# rpm -q vim-common 未安裝軟件包 vim-common

選項-U表示對軟件包升級

[root@centos7 tmp]# rpm -q wget wget-1.14-10.el7_0.1.x86_64 [root@centos7 tmp]# rpm -Uvh wget-1.14-13.el7.x86_64.rpm  準備中...                          ################################# [100%] 正在升級/安裝...    1:wget-1.14-13.el7                 ################################# [ 50%] 正在清理/刪除...    2:wget-1.14-10.el7_0.1             ################################# [100%] [root@centos7 tmp]# rpm -q wget wget-1.14-13.el7.x86_64

2、yum 下載更新器

yum [options] [command] [package ...]

yum是一個基于rpm的交互式軟件包管理器。yum在安裝軟件時并不需要像rpm那樣手動查找安裝,它在工作時會搜索源中的rpm包,并自動解決依賴關系,自動下載并安裝。yum默認源配置文件位于目錄/etc/yum.repos.d內。

命令install表示安裝

[root@centos7 ~]# yum install vim-common 已加載插件:fastestmirror Loading mirror speeds from cached hostfile  * base: mirrors.yun-idc.com  * extras: mirrors.yun-idc.com  * updates: mirrors.yun-idc.com 正在解決依賴關系 --> 正在檢查事務 ---> 軟件包 vim-common.x86_64.2.7.4.160-1.el7 將被 安裝 --> 解決依賴關系完成  依賴關系解決 .... #省略部分輸出 安裝  1 軟件包  總下載量:5.9 M 安裝大小:21 M Is this ok [y/d/N]:y  #需要在這里輸入確認是否安裝 Downloading packages: vim-common-7.4.160-1.el7.x86_64.rpm                         | 5.9 MB  00:00:00      Running transaction check Running transaction test Transaction test succeeded Running transaction 警告:RPM 數據庫已被非 yum 程序修改。 ** 發現 1 個已存在的 RPM 數據庫問題, 'yum check' 輸出如下: 2:vim-enhanced-7.4.160-1.el7.x86_64 有缺少的需求 vim-common = ('2', '7.4.160', '1.el7')   正在安裝    : 2:vim-common-7.4.160-1.el7.x86_64                         1/1    驗證中      : 2:vim-common-7.4.160-1.el7.x86_64                         1/1   已安裝:   vim-common.x86_64 2:7.4.160-1.el7                                                                                                     完畢!

命令check-update表示檢查更新

命令update表示升級

命令search表示搜索軟件包

命令list表示列出可用軟件包

命令remove表示卸載

命令clean表示清除yum緩存目錄內容

選項-y表示在所有需要交互式確認的地方默認輸入yes

當yum源中沒有所需要安裝的包時,會報沒有可用軟件包的錯誤。此時可以通過添加新的yum源來解決

如centos7中安裝nginx:

#安裝repo [root@centos7 tmp]# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 獲取http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 警告:/var/tmp/rpm-tmp.cUANoe: 頭V4 RSA/SHA1 Signature, 密鑰 ID 7bd9bf62: NOKEY 準備中...                          ################################# [100%] 正在升級/安裝...    1:nginx-release-centos-7-0.el7.ngx ################################# [100%]

此時/etc/yum.repos.d中增加了一個新文件nginx.repo

[root@centos7 tmp]# cat /etc/yum.repos.d/nginx.repo  # nginx.repo  [nginx] name=nginx repos                                      #名稱 baseurl=http://nginx.org/packages/centos/7/$basearch/ #源地址 gpgcheck=0  #是否檢查key,0表示不檢查 enabled=1   #這里等于0表示不啟用baseurl,為1表示啟用baseurl

現在就可以通過命令yum install -y nginx安裝nginx了

服務器沒有網絡可用時,還能夠設置本地yum源。此時需要手動配置repo文件

首先將安裝光盤或ios文件掛載至系統(關于掛載的更多內容請看這一篇)

[root@centos7 tmp]# mount CentOS-7-x86_64-DVD-1611.iso /media mount: /dev/loop2 寫保護,將以只讀方式掛載 [root@centos7 tmp]#  #如果是光盤則如此掛載: [root@centos7 tmp]# mount /dev/cdrom /media mount: /dev/sr0 寫保護,將以只讀方式掛載 [root@centos7 tmp]# #卸載用umount或eject [root@centos7 tmp]# umount /media [root@centos7 tmp]# eject

編輯yum源配置文件

vim /etc/yum.repos.d/local.repo     [local]     name=test     baseurl=file:///media #這里baseurl寫 前綴(file://)+掛載點     enabled=1     gpgcheck=0

然后將原有網絡源配置文件備份到另一個目錄,/etc/yum.repo.d中只保留local.repo文件。安裝軟件:

yum install bc -y

3、源碼包

前面所說的rpm和deb都是二進制軟件包,由于這些軟件包都是已經經過編譯的,用戶不能設置編譯選項,也不能對軟件做任何更改。相對來說,使用源碼包編譯安裝軟件提供了更多的靈活性,在編譯時可指定各種選項,對于有能力的用戶,還可以修改源代碼。下面介紹一下linux中是如何安裝源碼包的

1)、獲取源碼包

wget http://mirrors.sohu.com/nginx/nginx-1.9.6.tar.gz

2)、解壓

tar zxf nginx-1.9.6.tar.gz

3)、配置

[root@idc-v-71252 src]# cd nginx-1.9.6 [root@idc-v-71252 nginx-1.9.6]# ./configure --prefix=/usr/local/nginx

這里配置選項--prefix=/usr/local/nginx表示指定nginx的安裝路徑為/usr/local/nginx。

可以執行./configure  --help查看有哪些配置參數,此步驟的執行會檢查系統是否符合編譯要求。如果報錯,很多情況下是因為少了一些編譯工具,可以使用yum安裝這些工具(當然也可以裝源碼)。

在本例中報錯:./configure: error: the HTTP rewrite module requires the PCRE  library.。

說明少了pcre庫,查看一下系統:

[root@idc-v-71252 nginx-1.9.6]# rpm -qa pcre pcre-8.32-15.el7.x86_64 [root@idc-v-71252 nginx-1.9.6]#

系統有pcre安裝,但沒有devel包,使用yum安裝

[root@idc-v-71252 nginx-1.9.6]# yum install pcre-devel -y

再次執行configure發現報錯變了:./configure: error: the HTTP gzip module requires the  zlib library.

重復上述操作直到所需軟件都安裝完畢,之后再次執行./configure --prefix=/usr/local/nginx

4、編譯

[root@idc-v-71252 nginx-1.9.6]# make -j8

使用make進行編譯,選項-j表示指定并發執行的數量,這里指定了和系統邏輯CPU數(可以使用命令grep -c "^processor"  /proc/cpuinfo查看邏輯CPU數)相同的并發數。

此步驟也可能會出現報錯,一般也是因為缺少包,仔細閱讀報錯信息,一般都不難解決。

5、安裝

[root@idc-v-71252 nginx-1.9.6]# make install

如果沒有錯誤,這個軟件包就安裝完畢了,可以在/usr/local/nginx中找到安裝后的文件。

這里說了源碼包的一般安裝過程,有些源碼包的安裝可能會有所不同,一般源碼包中都有相應的安裝說明文件(README或INSTALL),仔細閱讀這些文件或者通過查詢軟件官網,就能找到它們的安裝方法。

以上是“Linux中軟件包管理的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台湾省| 米泉市| 牙克石市| 自治县| 峡江县| 台安县| 汝州市| 仁化县| 莱西市| 金昌市| 临泽县| 阜南县| 卓尼县| 阜宁县| 奇台县| 新绛县| 内乡县| 中江县| 天祝| 渑池县| 罗甸县| 新河县| 商都县| 湖北省| 章丘市| 宜昌市| 沙洋县| 陆河县| 信宜市| 青岛市| 大城县| 申扎县| 舞钢市| 当涂县| 佛坪县| 十堰市| 井陉县| 聂荣县| 普陀区| 九龙坡区| 孙吴县|