内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

Linux系統(tǒng)下軟件安裝與管理-創(chuàng)新互聯(lián)

Linux系統(tǒng)下軟件安裝與管理

目前成都創(chuàng)新互聯(lián)公司已為1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、臨城網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

一、二進(jìn)制(RPM)程序包概述

1、二進(jìn)制程序包的組成部分:

二進(jìn)制文件、庫(kù)文件、配置文件、幫助文件

[root@dayi123 ~]# rpm -qpl/mnt/cdrom/Packages/httpd-2.4.6-40.el7.centos.x86_64.rpm

/etc/httpd

/etc/httpd/conf          #二進(jìn)制程序包組成部分配置文件

/etc/httpd/conf.d

……

/usr/sbin/httpd          #二進(jìn)制程序包組成部分二進(jìn)制文件

……

/usr/lib64/httpd/modules/mod_access_compat.so

/usr/lib64/httpd/modules/mod_actions.so #二進(jìn)制程序包組成部分庫(kù)文件

……

/usr/share/man/man8/rotatelogs.8.gz     #二進(jìn)制程序包組成部分幫助文件

/usr/share/man/man8/suexec.8.gz

……

2、二進(jìn)制程序包管理器

(1)debian:deb文件, dpkg包管理器

(2)redhat: rpm文件, rpm包管理器

3、二進(jìn)制程序包的命名:

如:httpd-2.4.6-40.el7.centos.x86_64.rpm

說(shuō)明:

   http:軟件包名

   2.4.6:軟件版本

   40:軟件編譯版本

   el7.centos:適合的硬件平臺(tái)

   x86_64:適合的硬件平臺(tái)

   .rpm:包擴(kuò)展名

4、rpm包的分類(lèi):

1)主包:Application-VERSION-ARCH.rpm

2)開(kāi)發(fā)子包:Application-devel-VERSION-ARCH.rpm

3)其他子包:Application-utils-VERSION-ARHC.rpm

4)其他子包:Application-libs-VERSION-ARHC.rpm

如httpd包:

[root@dayi123 ~]# ls /mnt/cdrom/Packages/httpd*

/mnt/cdrom/Packages/httpd-2.4.6-40.el7.centos.x86_64.rpm

/mnt/cdrom/Packages/httpd-devel-2.4.6-40.el7.centos.x86_64.rpm

/mnt/cdrom/Packages/httpd-manual-2.4.6-40.el7.centos.noarch.rpm

/mnt/cdrom/Packages/httpd-tools-2.4.6-40.el7.centos.x86_64.rpm

5、程序包之間的依賴(lài)關(guān)系

(1)依賴(lài)關(guān)系:二進(jìn)制程序包之間一般存在的依賴(lài)關(guān)系有:樹(shù)形依賴(lài),環(huán)形依賴(lài)及模塊依賴(lài)。

(2)查看庫(kù)文件及依賴(lài)關(guān)系:

1)查看二進(jìn)制程序所依賴(lài)的庫(kù)文件:ldd /PATH/TO/BINARY_FILE

   2)顯示本機(jī)已經(jīng)緩存的所有可用庫(kù)文件名及文件路徑映射關(guān)系:/sbin/ldconfig -p

   3)庫(kù)文件的配置文件(如果想添加新的庫(kù)文件,可在/etc/ld.so.conf.d下新建以.conf結(jié)尾的文件,在文件中添加庫(kù)文件路勁即可):/etc/ld.so.conf, /etc/ld.so.conf.d/*.conf

   4)庫(kù)文件的緩存文件:/etc/ld.so.cache

[root@dayi123 ld.so.conf.d]# ldd /bin/ls   #查看二進(jìn)制程序依賴(lài)的庫(kù)文件

 linux-vdso.so.1=> (0x00007ffc17f8c000)

 libselinux.so.1=> /lib64/libselinux.so.1 (0x00007f91c6e60000)

 libcap.so.2 =>/lib64/libcap.so.2 (0x00007f91c6c5b000)

……

[root@dayi123 ld.so.conf.d]# /sbin/ldconfig –p #查看本機(jī)緩存的可用庫(kù)文件

302 libs found in cache `/etc/ld.so.cache'

 p11-kit-trust.so(libc6,x86-64) => /lib64/p11-kit-trust.so

 libzzipwrap-0.so.13 (libc6,x86-64) =>/lib64/libzzipwrap-0.so.13

 libzzipmmapped-0.so.13 (libc6,x86-64) =>/lib64/libzzipmmapped-0.so.13

(3)解決依賴(lài)包的管理工具:

   1)yum:rpm包管理器的前端工具

2)apt-get:deb包管理器前端工具

3)zypper: suse上的rpm前端管理工具

4)dnf: Fedora 18+ rpm包管理器前端管理工具

6、程序包管理器:

(1)功能:將編譯好的應(yīng)用程序的各組成文件打包一個(gè)或幾個(gè)程序包文件,從而方便快捷地實(shí)現(xiàn)程序包的安裝、卸載、查詢(xún)、升級(jí)和校驗(yàn)等管理操作

(2)包文件組成(每個(gè)包獨(dú)有)

RPM包內(nèi)的文件、RPM的元數(shù)據(jù)(如名稱(chēng),版本,依賴(lài)性,描述等)、安裝或卸載時(shí)運(yùn)行的腳本

(3)數(shù)據(jù)庫(kù)(公共):/var/lib/rpm

包含內(nèi)容:程序包名稱(chēng)及版本、程序包之間依賴(lài)關(guān)系、程序包功能說(shuō)明、包安裝后生成的各文件路徑及校驗(yàn)碼信息

二、RPM包管理

1、包名與包全名:

(1)包全名:操作的包時(shí)沒(méi)有安裝的rpm包時(shí),要使用包全名,而且要注意路徑

(2)包名:操作已經(jīng)安裝的軟件包時(shí),使用包名,是搜索/var/lib/rpm中的數(shù)據(jù)庫(kù)

2、通過(guò)rpm進(jìn)行軟件包的安裝:

(1)安裝:rpm {-i|--install} [install-options] PACKAGE_FILE…

    選項(xiàng)說(shuō)明:-i(install):安裝

              -v(verbose):顯示詳細(xì)信息

              -h(hash):顯示進(jìn)度

(2)常用安裝選項(xiàng)

   --test:測(cè)試安裝,但不真正執(zhí)行安裝,即dry run模式

   --nodeps:忽略依賴(lài)關(guān)系

--replacepkgs實(shí)現(xiàn)軟件覆蓋安裝

--replacefiles對(duì)一個(gè)已經(jīng)存在的文件進(jìn)行覆蓋安裝

--nosignature:安裝時(shí)不檢查來(lái)源合法性

--nodigest:安裝時(shí)不檢查包完整性

--noscripts:安裝時(shí)不執(zhí)行程序包腳本

#用rpm安裝軟件

[root@dayi123 ld.so.conf.d]# rpm -ivh /mnt/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm

Preparing...                         ################################# [100%]

Updating / installing...

  1:tree-1.6.0-10.el7               ################################# [100%]

#安裝完成后在此安裝時(shí)提示已安裝

[root@dayi123 ld.so.conf.d]# rpm -ivh/mnt/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm

Preparing...                         ################################# [100%]

       packagetree-1.6.0-10.el7.x86_64 is already installed

#實(shí)現(xiàn)覆蓋安裝

[root@dayi123 ld.so.conf.d]# rpm -ivh /mnt/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm

--replacepkgs

Preparing...                         ################################# [100%]

Updating / installing...

  1:tree-1.6.0-10.el7               ################################# [100%]

[root@dayi123 ld.so.conf.d]# rpm -ivh/mnt/cdrom/Packages/php-5.4.16

-36.el7_1.x86_64.rpm

error: Failed dependencies:   #部分軟件安裝時(shí)需要安裝依賴(lài)軟件

       php-common(x86-64) = 5.4.16-36.el7_1 is needed byphp-5.4.16-36.el7_1.x86_64

       php-cli(x86-64) = 5.4.16-36.el7_1 is needed byphp-5.4.16-36.el7_1.x86_64

3、通過(guò)rpm進(jìn)行軟件包的升級(jí)

(1)升級(jí):如果原程序包的配置文件安裝后曾被修改,升級(jí)時(shí),新版本的提供的同一個(gè)配置文件并不會(huì)直接覆蓋老版本的配置文件,而把新版本的文件重命名(FILENAME.rpmnew)后保留

1)升級(jí)方法

rpm{-U|--upgrade} [install-options] PACKAGE_FILE...(即:rpm –Uvh PACKAGE_FILE)

rpm{-F|--freshen} [install-options] PACKAGE_FILE...(即:rpm–Fvh PACKAGE_FILE)

2)兩種方法的區(qū)別:

upgrade:安裝有舊版程序包,則“升級(jí)”如果不存在舊版程序包,則“安裝”

freshen:安裝有舊版程序包,則“升級(jí)”如果不存在舊版程序包,則不執(zhí)行升級(jí)操作

(2)降級(jí):--oldpackage

(3)強(qiáng)制安裝(功能等同于覆蓋安裝):--force

rpm –ivh –force PACKAGE_FILE

#更新軟件

[root@dayi123 ~]# rpm -Uvh/mnt/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm

Preparing...                         ################################# [100%]

Updating / installing...

  1:tree-1.6.0-10.el7                #################################[100%]

#強(qiáng)制安裝軟件包

[root@dayi123 ~]# rpm -ivh --force/mnt/cdrom/Packages/tree-1.6.0-10.el7.x86_64.rpm

Preparing...                         ################################# [100%]

Updating / installing...

  1:tree-1.6.0-10.el7               ################################# [100%]

(4)升級(jí)內(nèi)核(Linux支持多內(nèi)核,不建議升級(jí)內(nèi)核,直接安裝新內(nèi)核即可):

[root@dayi123 Packages]# uname –r   #查看當(dāng)前的系統(tǒng)版本

2.6.32-642.el6.x86_64

[root@dayi123 Packages]# rpm -ivhkernel-2.6.32-696.el6.x86_64.rpm

error: Failed dependencies:  #安裝內(nèi)核時(shí)提示需要安裝依賴(lài)包

       kernel-firmware >= 2.6.32-696.el6 is needed bykernel-2.6.32-696.el6.x86_64

[root@dayi123 Packages]# rpm -ivhkernel-2.6.32-696.el6.x86_64.rpm kernel-firmware

-2.6.32-696.el6.noarch.rpm   #同時(shí)安裝內(nèi)核和依賴(lài)包

Preparing...               ########################################### [100%]

  1:kernel-firmware       ########################################### [ 50%]

  2:kernel               ###########################################[100%]

安裝完成后重啟系統(tǒng)生效,安裝完成后配置文件/etc/grub.conf中會(huì)多一個(gè)開(kāi)機(jī)啟動(dòng)選項(xiàng),重啟系統(tǒng)時(shí),也會(huì)多一個(gè)選項(xiàng)。主要配置文件如下:

default=0      #默認(rèn)啟動(dòng)那一項(xiàng)

timeout=5     #開(kāi)機(jī)時(shí)grub等待時(shí)間

splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

title CentOS (2.6.32-696.el6.x86_64)   #第0個(gè)啟動(dòng)項(xiàng)

       root(hd0,0)

       kernel/vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=68b0f8ab-7ccc-4fc4-8bbc-a9

92f91e9847 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MDSYSFONT=latarcyrheb

-sun16 c

rashkernel=auto KEYBOARDTYPE=pcKEYTABLE=us rd_NO_DM rhgb quiet

       initrd/initramfs-2.6.32-696.el6.x86_64.img

title CentOS 6 (2.6.32-642.el6.x86_64)  #第一個(gè)啟動(dòng)項(xiàng)

       root(hd0,0)

       kernel/vmlinuz-2.6.32-642.el6.x86_64 ro root=UUID=68b0f8ab-7ccc-4fc4-8bbc-a9

92f91e9847 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MDSYSFONT=latarcyrheb

-sun16 c

4、通過(guò)rpm軟件包的查詢(xún)

(1)查詢(xún)命令:rpm {-q|--query} [select-options] [query-options]

(2)[select-options]

-a:所有包

-f:查看指定的文件由哪個(gè)程序包安裝生成

-p rpmfile:針對(duì)尚未安裝的程序包文件做查詢(xún)操作

--whatprovides:查詢(xún)指定的CAPABILITY(能力)由哪個(gè)包所提供

--whatrequires:查詢(xún)指定的CAPABILITY(能力)被哪個(gè)包所依賴(lài)

[root@dayi123 ~]# rpm -qf /bin/ls   #查詢(xún)ls命令有哪個(gè)軟件包生成

coreutils-8.4-43.el6.x86_64

#查詢(xún)未安裝的軟件包的信息

[root@dayi123 ~]# rpm -qp/mnt/cdrom/Packages/php-5.3.3-49.el6.x86_64.rpm

php-5.3.3-49.el6.x86_64

#查詢(xún)bash所提供的能力被那些包所依賴(lài)

[root@dayi123 ~]# rpm -q --whatrequires /bin/bash

glibc-common-2.12-1.192.el6.x86_64

nss-softokn-freebl-3.14.3-23.el6_7.x86_64

groff-1.18.1.4-21.el6.x86_64

……

(3)[query-options]

--changelog:查詢(xún)r(jià)pm包的changelog

-c:查詢(xún)程序的配置文件

-d:查詢(xún)程序的文檔

-i:查詢(xún)軟件包信息

-l:查看指定的程序包安裝后生成的所有文件

--scripts:程序包自帶的腳本

--provides:列出指定程序包所提供的CAPABILITY

-R:查詢(xún)指定的程序包所依賴(lài)的CAPABILITY

#查看php安裝完成后生成的所有配置文件

[root@dayi123 ~]# rpm -qpl/mnt/cdrom/Packages/php-5.3.3-49.el6.x86_64.rpm

/etc/httpd/conf.d/php.conf

/usr/lib64/httpd/modules/libphp5.so

/var/lib/php/session

/var/www/icons/php.gif

#查詢(xún)已安裝的軟件包信息(只能查詢(xún)到通過(guò)rpm安裝的軟件包信息)

[root@dayi123 Packages]# rpm -qi tree

Name       :tree                        Relocations:(not relocatable)

Version    :1.5.3                            Vendor: CentOS

Release    :3.el6                        Build Date:Wed 14 Jan 2015 08:21:02 PM

……

#查詢(xún)未安裝的軟件包的信息

[root@dayi123 ~]# rpm -qpi/mnt/cdrom/Packages/net-tools-1.60-114.el6.x86_64.rpm

Name       :net-tools                   Relocations: (not relocatable)

Version    :1.60                             Vendor:CentOS

Release    :114.el6                      Build Date:Wed 22 Mar 2017 07:52:14

 ……

#查看vim的配置文件的信息

[root@dayi123 ~]# rpm -qc vim-common--5.el6_8.1.x86_64.rpm

/etc/vimrc

#查詢(xún)?yōu)榘惭b的軟件的配置信息

[root@dayi123 cdrom]# rpm -qpc/mnt/cdrom/Packages/php-5.3.3-49.el6.x86_64.rpm

/etc/httpd/conf.d/php.conf

[root@dayi123 cdrom]# rpm -qR tree  #查詢(xún)已安裝的軟件包的依賴(lài)性

libc.so.6()(64bit)

libc.so.6(GLIBC_2.2.5)(64bit)

libc.so.6(GLIBC_2.3)(64bit)

#查詢(xún)?yōu)榘惭b的軟件包的依賴(lài)性

[root@dayi123 cdrom]# rpm -qpR/mnt/cdrom/Packages/java-1.5.0-gcj-1.5.0.0

-29.1.el6.x86_64.rpm

……

/usr/bin/gij

/usr/bin/rebuild-gcj-db

/usr/bin/rebuild-gcj-db

/usr/lib64/security/classpath.security

……

5、rpm包校驗(yàn)

(1)校驗(yàn)方法:rpm –V 已安裝的包名

             rpm –V指定RPM包中的文件

(2)校驗(yàn)的信息說(shuō)明:

   1)S:文件大小是否改變

   2)M:文件的類(lèi)型或文件的權(quán)限是否改變

   3)5:md5校驗(yàn)和是否發(fā)生改變(即判斷文件內(nèi)容是否發(fā)生改變)

   4)D:設(shè)備中的從代碼是否發(fā)生改變

   5)L:文件路徑是否改變

   6)U:文件的屬主是否發(fā)生改變

   7)G:文件的屬組是否發(fā)生改變

   8)T:文件的修改時(shí)間是否發(fā)生改變

[root@dayi123 cdrom]# rpm -V vim-common #校驗(yàn)vim包的信息

S.5...... c/etc/vimrc                    #大小和md5值發(fā)生改變

S.5...... c/etc/vimrc

6、rpm包中文件提取

(1)用法:rpm2cpio 包全名 | cpio -idv .文件絕對(duì)路徑

    說(shuō)明:rpm2cpio:將rpm轉(zhuǎn)化為cpio格式的命令

        cpio:穿件軟件檔案文件和從檔案文件中提取文件

(2)cpio選項(xiàng)說(shuō)明:

    -i:還原

    -d:還原時(shí)自動(dòng)新建目錄

    -v:顯示還原過(guò)程

(3)刪除/bin/ls命令并進(jìn)行還原

[root@dayi123 Packages]# rpm -qf /bin/ls  #查看/bin/ls屬于哪個(gè)軟件包

coreutils-8.4-43.el6.x86_64

[root@dayi123 Packages]# mv /bin/ls /tmp/ #將/bin/ls移走

[root@dayi123 Packages]# ls             #ls命令不能正常使用

-bash: ls: command not found [root@dayi123 ~]# rpm2cpio/mnt/cdrom/Packages/coreutils

-8.4-46.el6.x86_64.rpm | cpio -idv ./bin/ls #提取ls命令到當(dāng)前的/bin/ls目錄下

./bin/ls

25240 blocks

[root@dayi123 ~]# cp ./bin/ls /bin/  #將當(dāng)前目錄ls命令復(fù)制到/bin/ls下

[root@dayi123 ~]# ll              #ls命令可以正常使用

total 116

-rw-r--r--. 1 root root 3944 Apr 2 22:12 1.txt.Z

-rw-------. 1 root root 1057 Mar 30 16:07 anaconda-ks.cfg

drwxr-xr-x. 2 root root 4096 Apr 17 22:16 bin

7、rpm包中文件提取

(1)數(shù)據(jù)庫(kù)目錄:/var/lib/rpm

(2)數(shù)據(jù)庫(kù)初始化:

rpm{--initdb|--rebuilddb}:如果事先不存在數(shù)據(jù)庫(kù),則新建之,否則,不執(zhí)行任何操作。

rebuilddb:重建已安裝的包頭的數(shù)據(jù)庫(kù)索引目錄

三、YUM

1、yum概述

(1)作用:

1)可解決軟件包相關(guān)依賴(lài)性,可在多個(gè)庫(kù)之間定位軟件包

2)存儲(chǔ)了眾多rpm包,以及包的相關(guān)的元數(shù)據(jù)文件(放置于特定目錄repodata下)

(2)yum支持的文件服務(wù)器:ftp://,http://,file://

2、yum配置文件

(1)yum配置文件:

/etc/yum.conf:為所有倉(cāng)庫(kù)提供公共配置

/etc/yum.repos.d/*.repo:為倉(cāng)庫(kù)的指向提供配置

(2)yum配置文件中可用的變量:

$releasever:當(dāng)前OS的發(fā)行版的主版本號(hào)

$arch:平臺(tái),i386,i486,i586,x86_64等

$basearch:基礎(chǔ)平臺(tái);i386, x86_64

$YUM0-$YUM9:自定義變量

(3)自建yum配置文件:

需要將/etc/yum.repos.d/下所有文件注釋或刪除,自己新建”*.repo”yum配置文件,配置及說(shuō)明如下

[centos7]        #進(jìn)行rpm包數(shù)字驗(yàn)證

name=CentOS-$releasever – Plus   #容器的名稱(chēng)說(shuō)明

baseurl=http://172.18.0.1/cobbler/ks_mirror/$releasever/ #配置yum源地址

          http://mirrors.aliyun.com/repo/    #可以指定多個(gè)yum源地址

gpgcheck=0      #是否對(duì)軟件包進(jìn)行數(shù)字簽名驗(yàn)證,是0則不驗(yàn)證,1則需要驗(yàn)證

#gpgcheck=1時(shí),需要制定公鑰地址

#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

enabled=1       #啟用yum倉(cāng)庫(kù)

[epel]           #配置擴(kuò)展的yum倉(cāng)庫(kù)

baseurl=http://172.18.0.1/fedora-epel/$releasever/$arch/

gpgcheck=0

enabled=1

(4)配置本地光盤(pán)yum源

1)掛載光盤(pán)到指定目錄(或不掛載,自動(dòng)讓光盤(pán)掛載到/misc/cd目錄下,centos7下需要安裝”autofs”軟件,在使用光盤(pán)文件時(shí)自動(dòng)會(huì)將光盤(pán)掛載到/misc/cd目錄下)

[root@dayi123 cd]$yum install autofs –y   #centos7安裝autofs軟件

[root@dayi123 cd]$systemctl start autofs  #啟動(dòng)autofs軟件

[root@dayi123 cd]$systemctl enable autofs #設(shè)置autofs自啟動(dòng)

Created symlink from /etc/systemd/system/multi-user.target.wants/autofs.service

to /usr/lib/systemd/system/autofs.service.

[root@dayi123 cd]$cd /misc/cd     #進(jìn)入/misc/cd目錄

[root@dayi123 cd]$df -h

Filesystem     Size Used Avail Use% Mounted on

/dev/sda3       18G 3.8G  14G 22% /

/dev/sda1      497M 118M 379M 24% /boot

tmpfs           98M  36K  98M  1% /run/user/1020

/dev/sr0       7.3G 7.3G    0 100% /misc/cd #當(dāng)使用光盤(pán)是自動(dòng)掛載到此目錄下

……

2)配置光盤(pán)yum源,

[root@dayi123 yum.repos.d]$cat test.repo       #光盤(pán)yum源配置文件

[centosCD]

name=centos7

baseurl=file:///misc/cd

gpgcheck=1

gpgkey=file:////misc/cd/RPM-GPG-KEY-CentOS-7

[root@dayi123 yum.repos.d]$yum repolist      #查看可用yum源

Loaded plugins: fastestmirror, langpacks

Loading mirror speeds from cached hostfile

repo id                      repo name                         status

centosCD                     centos7_cdrom                     9,007

repolist: 9,007

(5)國(guó)內(nèi)常用的yum地址:

阿里云:https://mirrors.aliyun.com/centos/$releasever/os/x86_64/S

阿里云(epel):https://mirrors.aliyun.com/epel/$releasever/x86_64

也可以將自己yum注釋掉,使用wget下載國(guó)內(nèi)yum源repo文件:

常用yum源repo文件地址:

網(wǎng)易yum源:

修改“vi /etc/yum/pluginconf.d/fastestmirror.conf” and set “enable=0″

cd /etc/yum.repos.d/

wget -O /etc/yum.repos.d/CentOS-Base.repo wget http://mirrors.163.com/.help/CentOS

-Base-163.repo

yum makecache //生成緩存

搜狐yum地址:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.sohu.com/help/CentOS-Base-sohu.repo

阿里yum源:

CentOS 6

wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-6.repo

CentOS 7

wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo

3、用命令生成.repo文件

(1)生成:yum-config-manager --add-repo=http://172.16.0.1/cobbler/ks_mirror/7/

(2)啟用與關(guān)閉yum倉(cāng)庫(kù):

   禁用倉(cāng)庫(kù):yum-config-manager --disable “倉(cāng)庫(kù)名"

   啟用倉(cāng)庫(kù):yum-config-manager --enable “倉(cāng)庫(kù)名”

   備注:如果yum-config-manager命令不能使用,則需要安裝yum-utils包,即:yum –y install yum-utils

[root@dayi123 ~]# yum-config-manager--add-repo=http://172.16.0.1/cobbler/ks_mirror/7/

Loaded plugins: fastestmirror    #生成yum源

adding repo from: http://172.16.0.1/cobbler/ks_mirror/7/

[172.16.0.1_cobbler_ks_mirror_7_]

name=added from: http://172.16.0.1/cobbler/ks_mirror/7/

baseurl=http://172.16.0.1/cobbler/ks_mirror/7/

enabled=1

[root@dayi123 ~]# yum-config-manager --disable centos7 #關(guān)閉名名稱(chēng)為centos的源

Loaded plugins: fastestmirror

repo:centos7 ============================================

[centos7]

……

[root@dayi123 ~]# yum repolist all      #查看所有的yum源列表

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

repo id        repo name                                            status

172.16.0.1_cobbler_ks_mirror_7_  added from: http://172.16.0.1/cobbler/ks_mirror/7

/   enabled: 9,007    #剛生成的yum源

centos7/7      centos7                                       disabled

!epel/7       centosepel                                     enabled: 11,349

repolist: 20,356

4、yum命令:

(1)yum命令用法:

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

(2)常用的yum命令:

1)顯示倉(cāng)庫(kù)列表:yum repolist [all|enabled|disabled]

[root@dayi123 ~]# yum repolist  #只顯示可用的yum倉(cāng)庫(kù)列表

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

repo id               repo name                                    status

172.16.0.1_cobbler_ks_mirror_7_ added from:http://172.16.0.1/cobbler/ks_mirr 9,007

!epel/7                centosepel                                   11,349

repolist: 20,356

2)顯示程序包:

yumlist

yumlist [all | glob_exp1] [glob_exp2] [...]

yumlist {available|installed|updates} [glob_exp1] [...]

3)安裝程序包:

yuminstall package1 [package2] [...]

yumreinstall package1 [package2] [...] (重新安裝)

[root@dayi123 ~]# yum install remove telnet  #同時(shí)安裝多個(gè)程序包

Loaded plugins: fastestmirror

Resolving Dependencies

--> Running transaction check

……

[root@dayi123 ~]# yum install telnet vim     #重新安裝程序包

Loaded plugins: fastestmirror

……

4)升級(jí)程序包:

yumupdate [package1] [package2] [...]

yumdowngrade package1 [package2] [...] (降級(jí))

5)檢查那些程序包可以升級(jí):

yumcheck-update

6)卸載程序包:

yumremove | erase package1 [package2] [...]

(3)yum命令的查看功能:

1)yum info [包名]  查看程序信息

2)查看指定的特性(可以是某文件)是由哪個(gè)程序包所提供:

yumprovides | whatprovides [feature1]……

3)清理本地緩存(清除的是/var/cache/yum/$basearch/$releasever緩存):

yumclean all

構(gòu)建緩存:yum makecache

[root@dayi123 ~]# yum clean all   #清理所有的緩存

Loaded plugins: fastestmirror

Cleaning repos: centos7 epel

Cleaning up everything

Cleaning up list of fastest mirrors

[root@dayi123 ~]# ll -dh /var/cache/yum/x86_64/7/ #查看清理后緩存大小

drwxr-xr-x. 9 root root 4.0K Apr 15 13:07/var/cache/yum/x86_64/7/

4)以指定的關(guān)鍵字搜索程序包名及命令所在的包

[root@dayi123 yum.repos.d]# yum search ifconfig  #查看ifconfg屬于哪個(gè)包

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

……

moreutils.x86_64 : Additional unix utilities

net-tools.x86_64 : Basic networking tools

python-psutil.x86_64 : A process and system utilitiesmodule for Python

5)查看指定包所依賴(lài)的capabilities:

[root@dayi123 yum.repos.d]# yum deplist net-tools  #查看net-tools包所依賴(lài)的功能

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

package: net-tools.x86_64 2.0-0.17.20131004git.el7

 dependency:/bin/sh

  provider:bash.x86_64 4.2.46-19.el7

 dependency:libc.so.6(GLIBC_2.14)(64bit)

  provider:glibc.x86_64 2.17-105.el7

6)查看yum事務(wù)歷史:

yumhistory [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]

yumhistory

yumhistory info 6

yumhistory undo 6

[root@dayi123 yum.repos.d]# yum history  #查看yum安裝歷史記錄

Loaded plugins: fastestmirror

ID    | Commandline            | Date and time   | Action(s)     | Altered

-------------------------------------------------------------------------------

   23 | reinstallvim           | 2017-04-15 12:49 |Reinstall     |   1

   22 | removetelnet           | 2017-04-15 12:48 |Erase         |   1

21 | -y install yum-utils    | 2017-04-15 12:31 | Install       |   3

……

[root@dayi123 yum.repos.d]# yum history info 23 #查看yum23歷史記錄中安裝信息

Loaded plugins: fastestmirror

Transaction ID : 23

Begin time    :Sat Apr 15 12:49:42 2017

Begin rpmdb   :478:4a514a26dbb81641679e760948d0b5dfb41560ec

End time      :           12:49:43 2017 (1seconds)

#撤銷(xiāo)歷史記錄中第六條操作(即卸載第六條記錄中安裝的軟件)

[root@dayi123 yum.repos.d]# yum history undo 6

Loaded plugins: fastestmirror

Undoing transaction 6, from Wed Mar 29 11:46:39 2017

   Install nano-2.3.1-10.el7.x86_64@c7-media

[root@dayi123 yum.repos.d]# yum history undo 24  #撤銷(xiāo)剛才操作,即安裝該軟件

Loaded plugins: fastestmirror

Undoing transaction 24, from Sat Apr 15 13:34:03 2017

   Erasenano-2.3.1-10.el7.x86_64 @c7-media

7)yum日志文件:/var/log/yum.log

5、yum包組管理命令

(1)查看組:yum grouplist [hidden] [groupwildcard] [...]

[root@dayi123 yum.repos.d]# yum grouplist   #查看yum組列表

Loaded plugins: fastestmirror

There is no installed groups file.

Maybe run: yum groups mark convert (see man yum)

Loading mirror speeds from cached hostfile

Available Environment Groups:

  Minimal Install

  Compute Node

(2)安裝組包:yum groupinstall group1 [group2] [...]

(3)更新組包:yum groupupdate group1 [group2] [...]

(4)刪除組包:yum groupremove group1 [group2] [...]

(5)查看組信息yum groupinfo group1 [...]

Centos7.2最小化安裝后安裝桌面:

[root@dayi123 yum.repos.d]# history

1047 yummakecache                #新建緩存

1048 yumgrouplist                  #查看可用的包組

1049 yumgroupinstall "GNOME Desktop" #安裝桌面

#建立鏈接文件,開(kāi)機(jī)自動(dòng)啟動(dòng)桌面

1050 ln -sf/lib/systemd/system/graphical.target /etc/systemd/system/default.target

[root@dayi123 yum.repos.d]# reboot   #重啟系統(tǒng),即可進(jìn)入桌面

6、yum的命令行選項(xiàng):

(1)--nogpgcheck:禁止進(jìn)行g(shù)pgcheck,即安裝不進(jìn)行軟件包的校驗(yàn)

(2)-y: 自動(dòng)回答為“yes”,不用輸入“y”確認(rèn)

(3)-q:靜默模式,安裝時(shí)沒(méi)有輸出

(4)--disablerepo=repoidglob:臨時(shí)禁用此處指定的repo

(5)--enablerepo=repoidglob:臨時(shí)啟用此處指定的repo

(7)--noplugins:禁用所有插件

7、搭建yum倉(cāng)庫(kù)

   有些時(shí)候,使用網(wǎng)絡(luò)yum源或者光盤(pán)yum不方便,或者要使用yum安裝自己制作的rpm包,此時(shí),可以自己搭建yum源,將需要的軟件放入yum倉(cāng)庫(kù)中。

(1)安裝前準(zhǔn)備工作:

        1)安裝vsftpd軟件(fpt服務(wù)端軟件)

CentOS7中:

[root@dayi123 ~]$yum install vsftpd –y    #安裝vsftpd軟件

Loaded plugins: fastestmirror, langpacks

……

[root@dayi123 ~]$systemctl start vsftpd  #啟動(dòng)vsftpd

[root@dayi123 ~]$systemctl enable vsftpd  #設(shè)置vsftpd開(kāi)機(jī)自啟動(dòng)

CentOS6中:

[root@dayi123 ~]$yum install vsftpd –y

[root@dayi123 ~]$/etc/init.d/vsftpd start

Starting vsftpd for vsftpd:                               [ OK ]

[root@dayi123 ~]$chkconfig vsftpd on

   2)關(guān)閉防火墻(為了能夠訪(fǎng)問(wèn)防火墻服務(wù),需要在iptables中添加規(guī)則或關(guān)閉iptables)

CentOS7中:

[root@dayi123 ~]$systemctl stop firewalld

[root@dayi123 ~]$systemctl disable firewalld

CentOS6中:

[root@dayi123 ~]$/etc/init.d/iptables stop

[root@dayi123 ~]$chkconfig iptables off

   3)安裝完成并關(guān)閉防火墻后可通過(guò)網(wǎng)頁(yè)測(cè)試ftp,能正常打開(kāi),則表示ftp服務(wù)搭建成功(如下圖所示)

Linux 系統(tǒng)下軟件安裝與管理

(2)配置yum源

   1)配置yum倉(cāng)庫(kù)

   Vsftpd安裝成功之后,會(huì)自動(dòng)在創(chuàng)建目錄/var/ftp/pub目錄用于存放fpt共享文件,我們還需要在此目錄下創(chuàng)建存放rpm包的目錄及repodate文件,然后將需要的包拷貝到y(tǒng)um倉(cāng)庫(kù)中即可

[root@dayi123 ~]$mkdir /var/ftp/pub/CentOS7 –p  #創(chuàng)建存yum倉(cāng)庫(kù)目錄

[root@dayi123 ~]$mkdir /var/ftp/pub/CentOS7/Packages #常見(jiàn)用于存放rpm包的目錄

#拷貝rpm文件到y(tǒng)um倉(cāng)庫(kù)中

[root@dayi123 ~]$cp /mnt/cdrom/java.*   /var/ftp/pub/CentOS7/Packages/

[root@dayi123 ~]$createrepo /var/ftp/pub/CentOS7/ #生成repodate文件

Spawning worker 0 with 43 pkgs

Workers Finished

Saving Primary metadata

Saving file lists metadata

Saving other metadata

Generating sqlite DBs

Sqlite DBs complete

[root@dayi123 ~]$ll /var/ftp/pub/CentOS7/

total 4

drwxr-xr-x. 2 root root 4096 Apr 19 07:48 repodata

   2)在客戶(hù)端配置yum源:

[root@dayi123 ~]$cat /etc/yum.repos.d/test.repo   #客戶(hù)端配置文件

[centos7.2]

name=centos7.2

baseurl=ftp://172.16.250.102/pub/CentOS7/

gpgcheck=1

gpgkey=file:////misc/cd/RPM-GPG-KEY-CentOS-7

[root@dayi123 ~]$yum repolist  #查看生成yum源信息

Loaded plugins: fastestmirror, langpacks

Repository 'app' is missing name in configuration, usingid

Loading mirror speeds from cached hostfile

repo id                        repo name                       status

centos7.2                      centos7.2                       43

repolist: 43

四、編譯安裝軟件(以安裝httpd服務(wù)為例)

1、編譯安裝前準(zhǔn)備工作:

(1)安裝gcc、及Development and Creative Workstation(cnetos6為Development tools)等編譯環(huán)境

(2)去相應(yīng)官方網(wǎng)站下載源碼包到指定目錄并解壓。

[root@dayi123 Package]$cd /data/Package

[root@dayi123 Package]$ wget http://apache.fayea.com//httpd/httpd-2.2.32.tar.bz2

[root@dayi123 Package]$tar -xvf httpd-2.2.32.tar.bz2

[root@dayi123 Package]$cd httpd-2.2.32

[root@dayi123 httpd-2.2.32]$ls

ABOUT_APACHE    CMakeLists.txt INSTALL        NWGNUmakefile

acinclude.m4    config.layout  InstallBin.dsp os

Apache-apr2.dsw configure      LAYOUT         README

Apache.dsw      configure.in   libhttpd.dep   READMENaNake

apache_probes.d docs           libhttpd.dsp   README.platforms

ap.d            emacs-style    libhttpd.mak   ROADMAP

build           httpd.dep      LICENSE        server

BuildAll.dsp    httpd.dsp      Makefile.in    srclib

BuildBin.dsp    httpd.mak      Makefile.win   support

buildconf       httpd.spec     modules        test

CHANGES         include        NOTICE         VERSIONING

:在編譯安裝前需要查看INSTALL和README文件,里面有安裝信息

2、編譯安裝

(1)在軟件解壓目錄下執(zhí)行:./configure

   執(zhí)行./configure時(shí)有很多選項(xiàng),可通過(guò)./configure –help查看,常用的選項(xiàng)有:

   --prefix=/PATH:指定默認(rèn)安裝位置,默認(rèn)為/usr/local/

   --sysconfdir=/PATH:配置文件安裝位置

   System types:支持交叉編譯

執(zhí)行./configure的作用:

   1)通過(guò)選項(xiàng)傳遞參數(shù),指定啟用特性、安裝路徑等;執(zhí)行時(shí)會(huì)參考用戶(hù)的指定以及makefile.in文件生成makefile

   2)檢查依賴(lài)到的外部環(huán)境,如依賴(lài)的軟件包

[root@dayi123 httpd-2.2.32]$./configure –help   #查看選項(xiàng)及幫助信息

`configure' configures this package to adapt to manykinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...),specify them as

VAR=VALUE. Seebelow for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:

 -h, --help             display this help and exit

     --help=short       display options specific to thispackage

     --help=recursive   display theshort help of all the included packages

 -V,--version          display versioninformation and exit

 -q, --quiet,--silent  do not print `checking ...'messages

#執(zhí)行./configure

[root@dayi123 httpd-2.2.32]$./configure --prefix=/data/httpd --sysconfdir=/etc/httpd

checking for chosen layout... Apache

checking for working mkdir -p... yes

……

注:在執(zhí)行的過(guò)程中,某些依賴(lài)包沒(méi)有安裝會(huì)報(bào)錯(cuò),需要通過(guò)yum安裝后再執(zhí)行./configure

checking for APR... no

configure: error: APR not found. Please read the documentation.

#提示沒(méi)有ARP

[root@dayi123 httpd-2.2.32]$yum search apr

#可通過(guò)yum查看apr屬于哪個(gè)包,一般為提示的信息-devel包

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

apr-devel.i686 : APR library development kit

apr-devel.x86_64 : APR library development kit

……

[root@dayi123 httpd-2.2.32]$yum install apr-util-devel –y  #安裝apr-util-devel包

#安裝完成后繼續(xù)

[root@dayi123 httpd-2.2.32]$./configure --prefix=/data/httpd --sysconfdir=/etc/httpd

(2)執(zhí)行make

   作用:根據(jù)makefile文件,構(gòu)建應(yīng)用程序

(3)執(zhí)行make install

   作用:復(fù)制文件到相應(yīng)的路勁

[root@dayi123 httpd-2.2.32]$make install     #執(zhí)行make install

Making install in srclib

make[1]: Entering directory`/data/Package/httpd-2.2.32/srclib'

Making install in pcre

make[2]: Entering directory`/data/Package/httpd-2.2.32/srclib/pcre'

#執(zhí)行make install完成后會(huì)在指定的目錄生成相應(yīng)的文件

[root@dayi123 httpd-2.2.32]$ls /data/httpd/ /etc/httpd/

/data/httpd/:

bin build cgi-bin error htdocs icons include logs man manual modules

/etc/httpd/:

extra httpd.conf magic mime.types original

3、安裝編譯完成后的操作

(1)二進(jìn)制程序目錄導(dǎo)入至PATH環(huán)境變量中:

   編輯文件/etc/profile.d/NAME.sh加入exportPATH=/PATH/TO/BIN:$PATH

[root@dayi123 ~]$cat /etc/profile.d/httpd.sh   #在PATH變量中增加httpd啟動(dòng)路徑

export PATH=$PATH:/data/httpd/bin/

[root@dayi123 ~]$. /etc/profile.d/httpd.sh    #使配置生效

[root@dayi123 ~]$apachectl start           #啟動(dòng)httpd服務(wù)

(2)導(dǎo)入庫(kù)文件路徑

   編輯/etc/ld.so.conf.d/NAME.conf,添加新的庫(kù)文件所在目錄至此文件中

   讓系統(tǒng)重新生成緩存:ldconfig[-v]

(3)導(dǎo)入幫助手冊(cè)

   編輯/etc/man.config|man_db.conf文件,添加一個(gè)MANPATH

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站欄目:Linux系統(tǒng)下軟件安裝與管理-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://m.rwnh.cn/article10/ddsddo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、建站公司搜索引擎優(yōu)化、移動(dòng)網(wǎng)站建設(shè)、定制網(wǎng)站、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
湘潭县| 桦川县| 新闻| 东海县| 衡山县| 平顶山市| 霍州市| 保山市| 闻喜县| 咸丰县| 东明县| 浏阳市| 南充市| 卢龙县| 铜梁县| 曲阳县| 永修县| 三江| 门源| 璧山县| 榕江县| 宜昌市| 封开县| 龙海市| 潜山县| 兴文县| 张家口市| 巢湖市| 泸溪县| 承德县| 长葛市| 和林格尔县| 福建省| 丰都县| 拜泉县| 乌鲁木齐县| 莒南县| 镇远县| 霍州市| 凌源市| 吴江市|