日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

Linux系统软件包的管理   3月30日课程

發(fā)布時(shí)間:2023/11/29 linux 93 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux系统软件包的管理   3月30日课程 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Linux系統(tǒng)軟件包的管理


一、 rpm工具

rpm Redhat Package Manager, 設(shè)計(jì)理念是開(kāi)放的,不僅僅是在RedHat平臺(tái)上,在SUSE上也是可以使用的。


rpm包名字構(gòu)成由-和.分成了若干部分,如abrt-cli-2.0.8-15.el6.centos.i686.rpm,

abrt-cli:是包名

2.0.8-15:是版本號(hào)

el6:指的是redhat企業(yè)版6

centos:指的是這是在centos上用的

i686:指的是平臺(tái)類(lèi)型

有些rpm包并沒(méi)有寫(xiě)具體的平臺(tái)而是noarch,這代表這個(gè)rpm包沒(méi)有硬件平臺(tái)限制。?


掛載光驅(qū)

[root@web?~]#?mount?/dev/cdrom?/mnt/ mount:?block?device?/dev/sr0?is?write-protected,?mounting?read-only

write-protected:寫(xiě)保護(hù)


1、安裝一個(gè)包

[root@web?mnt]#?rpm?-ivh?/mnt/Packages/libjpeg-turbo-devel-1.2.1-1.el6.i686.rpm

-i: 表示安裝

-v :可視化

-h:顯示安裝進(jìn)度?

--force : 強(qiáng)制安裝,即使覆蓋屬于其他包的文件也要安裝?


--nodeps : 當(dāng)要安裝的rpm包依賴(lài)其他包時(shí),即使其他包沒(méi)有安裝,也要安裝這個(gè)包?

[root@web?mnt]#?rpm?-ivh?--nodeps??/mnt/Packages/libjpeg-turbo-devel-1.2.1-1.el6.i686.rpm Preparing...????????????????###########################################?[100%]1:libjpeg-turbo-devel????###########################################?[100%]

升級(jí):rpm -Uvh filename.rpm

-U 就是升級(jí)的意思?

[root@web?mnt]#?echo?$? 0

檢查上一步安裝是否正確,如果正確顯示數(shù)字0,如果不正確顯示其他的數(shù)字


2、rpm的卸載:

rpm -e filename ?#這里的filename是通過(guò)rpm的查詢(xún)功能所查詢(xún)到的?


查詢(xún)包名

[root@web?mnt]#?rpm?-qa?|grep?libj libjpeg-turbo-1.2.1-3.el6_5.x86_64 libjpeg-turbo-devel-1.2.1-1.el6.i686

這里libj并不是包名的全稱(chēng),只是大概記得,類(lèi)似于模糊搜索的功能,這樣已查詢(xún)就可以把所有

以libj開(kāi)頭的包全部顯示出來(lái),然后找到自己需要的那一個(gè)來(lái)卸載


卸載包

[root@web?mnt]#?rpm?-e?libjpeg-turbo-devel


查詢(xún)一個(gè)包是否安裝?

rpm -q ?包名 ? (不帶有平臺(tái)信息以及后綴名 )

[root@web?mnt]#?rpm?-q?libjpeg-turbo-devel package?libjpeg-turbo-devel?is?not?installed


查詢(xún)當(dāng)前系統(tǒng)所有安裝過(guò)的rpm包

rpm -qa ?

[root@web?mnt]#?rpm?-qa wdaemon-0.17-5.el6.x86_64 gnome-python2-bonobo-2.28.0-3.el6.x86_64 .........省略掉,太多了


查詢(xún)r(jià)pm包的相關(guān)信息 :?

rpm -qi 包名

[root@web?mnt]#?rpm?-qi?libjpeg-turbo-devel Name????????:?libjpeg-turbo-devel??????????Relocations:?(not?relocatable) Version?????:?1.2.1?????????????????????????????Vendor:?CentOS Release?????:?1.el6?????????????????????????Build?Date:?2013年02月22日?星期五?06時(shí)49分08秒 Install?Date:?2015年03月29日?星期日?21時(shí)23分29秒??????Build?Host:?c6b9.bsys.dev.centos.org Group???????:?Development/Libraries?????????Source?RPM:?libjpeg-turbo-1.2.1-1.el6.src.rpm Size????????:?321085???????????????????????????License:?wxWidgets Signature???:?RSA/SHA1,?2013年02月24日?星期日?01時(shí)53分55秒,?Key?ID?0946fca2c105b9de Packager????:?CentOS?BuildSystem?<http://bugs.centos.org> URL?????????:?http://sourceforge.net/projects/libjpeg-turbo Summary?????:?Headers?for?the?libjpeg-turbo?library Description?: This?package?contains?header?files?necessary?for?developing?programs?which will?manipulate?JPEG?files?using?the?libjpeg-turbo?library.


列出一個(gè)rpm所安裝的文件:?

rpm -ql 包名(好像不寫(xiě)版本號(hào)也是可以的)

[root@web?mnt]#?rpm?-ql?libjpeg-turbo-devel /usr/include/jconfig.h /usr/include/jerror.h /usr/include/jmorecfg.h /usr/include/jpeglib.h /usr/lib/libjpeg.so /usr/share/doc/libjpeg-turbo-devel-1.2.1 /usr/share/doc/libjpeg-turbo-devel-1.2.1/coderules.txt /usr/share/doc/libjpeg-turbo-devel-1.2.1/example.c /usr/share/doc/libjpeg-turbo-devel-1.2.1/jconfig.txt /usr/share/doc/libjpeg-turbo-devel-1.2.1/libjpeg.txt /usr/share/doc/libjpeg-turbo-devel-1.2.1/structure.txt

查詢(xún)某個(gè)文件屬于哪個(gè)rpm包安裝的?

rpm -qf filename ?#這里可以結(jié)合反引號(hào)一起使用,比如 rpm -qf `which yum`

filename這里有兩種寫(xiě)法: ??

第一種:

使用which yum得出yum的絕對(duì)路徑

[root@web?mnt]#?which?yum /usr/bin/yum [root@web?mnt]#?rpm?-qf?/usr/bin/yum yum-3.2.29-60.el6.centos.noarch

第二種:

直接使用反引號(hào)一步得出接過(guò)來(lái)

[root@web?mnt]#?rpm?-qf?`which?yum` yum-3.2.29-60.el6.centos.noarch

反引號(hào)的作用表示就是把引號(hào)中命令的結(jié)果放在那個(gè)位置

? ? ? ?


二、 yum工具

列出所有可用rpm包資源

yum list?

[root@web?~]#?yum?list


搜索某個(gè)包

yum search [關(guān)鍵詞]

[root@web?~]#?yum?search?vim

使用grep來(lái)過(guò)濾某個(gè)包

yum list |grep '關(guān)鍵詞'

[root@web?~]#?yum?list?|grep?'vim' vim-common.x86_64????????????????????????2:7.2.411-1.8.el6??????????????@base??? vim-enhanced.x86_64??????????????????????2:7.2.411-1.8.el6??????????????@base??? vim-minimal.x86_64???????????????????????2:7.2.411-1.8.el6??????????????@anaconda-CentOS-201311272149.x86_64/6.5 vim-X11.x86_64???????????????????????????2:7.2.411-1.8.el6??????????????base

?

@:表示的是已經(jīng)安裝過(guò)的包


yum 安裝包

yum install -y ?filename(包名)

[root@web?~]#?yum?-y?install?vim

-y:省略掉和用戶(hù)的交換,也就是問(wèn)你是否要安裝或者卸載


yum 卸載包:

yum remove ?-y filename (包名)

[root@web?~]#?yum?remove?-y?vim

卸載包的時(shí)候一定要注意,最好不要使用-y,以防把其他有用的包卸載了,還不知道


yum升級(jí)包:

yum update -y filename(包名)

[root@web?~]#?yum?update?-y?vim


yum查找某個(gè)命令是由那個(gè)包安裝的

yum provides ?"*/vim" ?

[root@web?~]#?yum?provides?'*/vim'


列出所有的套件

yum grouplist ?

[root@web?~]#?yum?grouplist

安裝套件

yum groupinstall ?


卸載套件 ?

yum groupremove ??


三、創(chuàng)建本地的yum源

yum配置文件目錄:/etc/yum.reos.d

1、掛載光盤(pán)

[root@web?~]#?mount?/dev/cdrom?/mnt


2、修在yum配置文件,但是在修在之前先備份一下/etc/yum.repos.d這個(gè)目錄

[root@web?~]#?cp?-r?/etc/yum.repos.d/?/etc/yum.repos.d_back

-r:備份目錄的參數(shù) ??


3、刪除/etc/yum.repos.d目錄下的所有文件

[root@web?yum.repos.d]#?rm?-rf?*

4、使用vim編輯一個(gè)dvd.reo文件

需要注意的是.repo是固定的格式不能更改。

[root@web?yum.repos.d]#?vim?dvd.repo??#加入如下內(nèi)容: [dvd]??????????????#yum源的名字,可以隨意起 name=install?dvd???#yum源的描述信息 baseurl=file:///mnt#光盤(pán)所在的掛載目錄,也就是光盤(pán)的路徑 enabled=1???#這里指的是yum源的開(kāi)始或者關(guān)閉,1表示開(kāi)始,0表示關(guān)閉 gpgcheck=0??#不進(jìn)行g(shù)pg檢測(cè)

退出保存


看是否有dvd的標(biāo)志出現(xiàn)

yum list

[root@web?yum.repos.d]#?yum?list?|tail yum-presto.noarch????????????????????????0.6.2-1.el6????????????????????dvd????? yum-updateonboot.noarch??????????????????1.1.30-14.el6??????????????????dvd????? yum-utils.noarch?????????????????????????1.1.30-14.el6??????????????????dvd????? zip.x86_64???????????????????????????????3.0-1.el6??????????????????????dvd????? zlib.i686????????????????????????????????1.2.3-29.el6???????????????????dvd????? zlib-devel.i686??????????????????????????1.2.3-29.el6???????????????????dvd????? zlib-devel.x86_64????????????????????????1.2.3-29.el6???????????????????dvd????? zlib-static.x86_64???????????????????????1.2.3-29.el6???????????????????dvd????? zsh.x86_64???????????????????????????????4.3.10-7.el6???????????????????dvd????? zsh-html.x86_64??????????????????????????4.3.10-7.el6???????????????????dvd

安裝yum擴(kuò)展源

[root@web?yum.repos.d]#?rpm?-ivf?http://www.lishiming.net/data/p_w_upload/forum/epel-release-6-8_32.noarch.rpm

其他地址http://www.aminglinux.com/bbs/thread-6721-1-1.html)


四、利用yum下載一個(gè)rpm包

1、安裝一個(gè)插件來(lái)支持只下載不安裝

搜索插件

[root@web?~]#?yum?list?|grep?downloadonly

安裝插件

[root@web?~]#?yum?install?-y?yum-plugin-downloadonly.noarch???????????1.1.30-14.el6

下載一個(gè)rpm包而不安裝

yum install 包名 -y --downloadonly ? #這樣就已經(jīng)下載,默認(rèn)在 /var/cache/yum/base/packages/

指定一個(gè)下載目錄

yum install 包名 -y --downloadonly --downloaddir=/usr/local/src ?#指定一個(gè)下載目錄

只下載而不安裝不能用echo $?命令去檢查,因?yàn)槲覀冎幌螺d下來(lái),不安裝就退出了,所以用

echo $?檢查是會(huì)報(bào)錯(cuò)的


如果是已經(jīng)安裝過(guò)的rpm包這樣不成功,需要使用reinstall:?

yum reinstall ?包名 ?-y --downloadonly --downloaddir=/usr/local/src



五、 源碼包安裝

源碼包是開(kāi)源的可自行更改的程序包,大多用C語(yǔ)音開(kāi)發(fā),不能直接使用,需要編譯成二進(jìn)制的可執(zhí)行文件

編譯源碼包的必須有g(shù)cc支持,如果沒(méi)有需要安裝 yum install -y gcc

通常情況編譯三步曲: ./configure 配置各種編譯參數(shù); make 根據(jù)指定的編譯參數(shù)進(jìn)行編譯;make install 安裝到指定目錄


實(shí)例:

1、下載源碼包到指定的目錄

?cd /usr/local/src/?

2、安裝wget,如果已經(jīng)安裝了,可以略過(guò)這一步

[root@web?src]#?yum?instrall?-y?wget

3、下載apache這個(gè)包

[root@web?src]#?wget?http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.27.tar.bz2

4、解壓

[root@web?src]#?tar?-jxvf?httpd-2.2.27.tar.bz2

5、安裝gcc編譯器

[root@web?httpd-2.2.27]#?yum?install?-y?gcc


指定編譯參數(shù) ./configure --help ?


6、配置相關(guān)選項(xiàng),并生成Makefile

[root@web?httpd-2.2.27]#?./configure?--prefix=/usr/local/apache2

--prefix=:后面是指定軟件包的安裝位置

驗(yàn)證是否成功

[root@web?httpd-2.2.27]#?echo?$? 0

7、編譯

[root@web?httpd-2.2.27]#?make

驗(yàn)證是否成功

[root@web?httpd-2.2.27]#?echo?$? 0

8、安裝

[root@web?httpd-2.2.27]#?make?install

9、檢查是否安裝成功

[root@web?httpd-2.2.27]#?ls?/usr/local/apache2/ bin????cgi-bin??error???icons????lib???man?????modules build??conf?????htdocs??include??logs??manual


? ? ? ? ? ? ? ? ? ? ? ? 小白學(xué)習(xí)筆記,不足之處還請(qǐng)大神指正

? ? ? ? ? ? ? ? ? ? ? ? ?博客地址:http://www.aminglinux.com/bbs/thread-7688-1-1.html

? ? ? ? ? ? ? ? ? ?

轉(zhuǎn)載于:https://blog.51cto.com/sxct168/1626618

總結(jié)

以上是生活随笔為你收集整理的Linux系统软件包的管理   3月30日课程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。