zoukankan      html  css  js  c++  java
  • 安装软件包

     安装软件包命令:

    一、rpm -i 命令

    [root@localhost Packages]# rpm -i vsftpd-3.0.2-22.el7.x86_64.rpm

    警告:vsftpd-3.0.2-22.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY

    查看软件包的详细信息:

    [root@localhost Packages]# rpm -qi vsftpd

    Name        : vsftpd

    Version     : 3.0.2

    Release     : 22.el7

    Architecture: x86_64

    Install Date: 2017年11月02日 星期四 06时08分55秒

    Group       : System Environment/Daemons

    Size        : 356236

    License     : GPLv2 with exceptions

    Signature   : RSA/SHA256, 2017年08月11日 星期五 04时17分26秒, Key ID 24c6a8a7f4a80eb5

    Source RPM  : vsftpd-3.0.2-22.el7.src.rpm

    Build Date  : 2017年08月03日 星期四 14时10分20秒

    Build Host  : c1bm.rdu2.centos.org

    Relocations : (not relocatable)

    Packager    : CentOS BuildSystem <http://bugs.centos.org>

    Vendor      : CentOS

    URL         : https://security.appspot.com/vsftpd.html

    Summary     : Very Secure Ftp Daemon

    Description :

    vsftpd is a Very Secure FTP daemon. It was written completely from

    scratch.

    [root@localhost Packages]#

    软件包安装在哪里

    [root@localhost Packages]# rpm -ql vsftpd

    系统中安装了多少个rpm包,可以验证到底是否成功安装

    [root@localhost Packages]# rpm -qa

    [root@localhost Packages]# rpm -qa | grep vsf

    vsftpd-3.0.2-22.el7.x86_64

    [root@localhost Packages]#

    知道了某个文件,要查哪个软件包产生:

    [root@localhost Packages]# rpm -qf slapi-nis-0.56.0-4.el7.x86_64.rpm

    文件 /run/media/root/CentOS 7 x86_64/Packages/slapi-nis-0.56.0-4.el7.x86_64.rpm 不属于任何软件包

    [root@localhost Packages]#

    删除软件

    [root@localhost Packages]# rpm -e vsftpd

    查看是否删除成功

    [root@localhost Packages]# rpm -q vsftpd

    未安装软件包 vsftpd

    [root@localhost Packages]#

    rpm –i的问题:httpd-2.4.6-67.el7.centos.x86_64.rpm依赖别的软件包,需要先按照别的软件包

    [root@localhost Packages]# rpm -i httpd-2.4.6-67.el7.centos.x86_64.rpm

    警告:httpd-2.4.6-67.el7.centos.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY

    错误:依赖检测失败:

            /etc/mime.types 被 httpd-2.4.6-67.el7.centos.x86_64 需要

            httpd-tools = 2.4.6-67.el7.centos 被 httpd-2.4.6-67.el7.centos.x86_64 需要

            libapr-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要

            libaprutil-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要

    [root@localhost Packages]#

    二、yum命令

    解决这个问题的方法:
    yum 需要有目录,帮你解决依赖性,不过依赖性需要提前在目录上写好

    依赖性文件repodata

    由于目录如果有空格就会影响结果,

    [root@localhost CentOS 7 x86_64]# pwd

    /run/media/root/CentOS 7 x86_64

    [root@localhost CentOS 7 x86_64]# df

    文件系统          1K-块    已用     可用 已用% 挂载点

    /dev/sda3      18351104 6310516 12040588   35% /

    devtmpfs         485108       0   485108    0% /dev

    tmpfs            499848       0   499848    0% /dev/shm

    tmpfs            499848    7308   492540    2% /run

    tmpfs            499848       0   499848    0% /sys/fs/cgroup

    /dev/sda1        508580  154480   354100   31% /boot

    tmpfs             99972       8    99964    1% /run/user/42

    tmpfs             99972      20    99952    1% /run/user/0

    /dev/sr0        4414592 4414592        0  100% /run/media/root/CentOS 7 x86_64

    所以挂载到没有空格的目录中

    [root@localhost CentOS 7 x86_64]# mount /dev/sr0 /opt

    进入下面这个目录,这个目录存放yum的配置文件

    [root@localhost CentOS 7 x86_64]# cd /etc/yum.repos.d/

    [root@localhost yum.repos.d]# ls

    我们看到很多网络配置的文件

    CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo

    CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo

    我们为了学习写配置文件,现在把他们都移到一个文件夹中,让这个文件夹为空

    [root@localhost yum.repos.d]# mkdir /tmp/bak

    [root@localhost yum.repos.d]# mv * /tmp/bak

    [root@localhost yum.repos.d]# ls

    要以repo结尾

    vim local.repo

    [local]    -- 随便写

    name=local repo -- 随便写

    baseurl=file:///opt

    enable=1    -- 开启

    gpgchek=0   -- 不检测

    上面配完本地yum

    清除yum的本地缓存

    yum clean all

    安装httpd

    yum install httpd

    如果不是按yes的话,就yum install httpd -y

    卸载

    yum -y erase httpd或者rpm -e httpd

    [root@localhost yum.repos.d]# mv /tmp/bak/*

    mv: 目标"/tmp/bak/CentOS-Vault.repo" 不是目录

    [root@localhost yum.repos.d]# ls

    local.repo

    记住要加点

    [root@localhost yum.repos.d]# mv /tmp/bak/* .

    [root@localhost yum.repos.d]# ls

    CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo

    CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  local.repo

    yum能解决依赖性,是因为yum仓库cd /opt 中有repodata

    [root@bogon yum.repos.d]# yum -y install httpd

    已加载插件:fastestmirror, langpacks

    local                                                           | 3.6 kB  00:00:00    

    (1/2): local/primary_db                                         | 5.7 MB  00:00:00    

    (2/2): local/group_gz                                           | 156 kB  00:00:00    

    Loading mirror speeds from cached hostfile

    正在解决依赖关系

    --> 正在检查事务

    ---> 软件包 httpd.x86_64.0.2.4.6-67.el7.centos 将被 安装

    --> 正在处理依赖关系 httpd-tools = 2.4.6-67.el7.centos,它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要

    --> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要

    --> 正在处理依赖关系 libaprutil-1.so.0()(64bit),它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要

    --> 正在处理依赖关系 libapr-1.so.0()(64bit),它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要

    --> 正在检查事务

    ---> 软件包 apr.x86_64.0.1.4.8-3.el7 将被 安装

    ---> 软件包 apr-util.x86_64.0.1.5.2-6.el7 将被 安装

    ---> 软件包 httpd-tools.x86_64.0.2.4.6-67.el7.centos 将被 安装

    ---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装

    --> 解决依赖关系完成

    依赖关系解决

    =======================================================================================

     Package             架构           版本                           源             大小

    =======================================================================================

    正在安装:

     httpd               x86_64         2.4.6-67.el7.centos            local         2.7 M

    为依赖而安装:

     apr                 x86_64         1.4.8-3.el7                    local         103 k

     apr-util            x86_64         1.5.2-6.el7                    local          92 k

     httpd-tools         x86_64         2.4.6-67.el7.centos            local          87 k

     mailcap             noarch         2.1.41-2.el7                   local          31 k

    事务概要

    =======================================================================================

    安装  1 软件包 (+4 依赖软件包)

    总下载量:3.0 M

    安装大小:10 M

    Downloading packages:

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

    总计                                                      6.3 MB/s | 3.0 MB  00:00    

    Running transaction check

    Running transaction test

    Transaction test succeeded

    Running transaction

      正在安装    : apr-1.4.8-3.el7.x86_64                                             1/5

      正在安装    : apr-util-1.5.2-6.el7.x86_64                                        2/5

      正在安装    : httpd-tools-2.4.6-67.el7.centos.x86_64                             3/5

      正在安装    : mailcap-2.1.41-2.el7.noarch                                        4/5

      正在安装    : httpd-2.4.6-67.el7.centos.x86_64                                   5/5

      验证中      : httpd-2.4.6-67.el7.centos.x86_64                                   1/5

      验证中      : mailcap-2.1.41-2.el7.noarch                                        2/5

      验证中      : apr-1.4.8-3.el7.x86_64                                             3/5

      验证中      : httpd-tools-2.4.6-67.el7.centos.x86_64                             4/5

      验证中      : apr-util-1.5.2-6.el7.x86_64                                        5/5

    已安装:

      httpd.x86_64 0:2.4.6-67.el7.centos                                                  

    作为依赖被安装:

      apr.x86_64 0:1.4.8-3.el7                        apr-util.x86_64 0:1.5.2-6.el7      

      httpd-tools.x86_64 0:2.4.6-67.el7.centos        mailcap.noarch 0:2.1.41-2.el7      

    完毕!

    [root@bogon yum.repos.d]#

    现在把之前剪切到/tmp/bak/,移到mv /tmp/bak/* .

    [root@bogon opt]# cd /etc/yum.repos.d/

    [root@bogon yum.repos.d]# ls

    local.repo

    [root@bogon yum.repos.d]# mv /root/aa/* .

    [root@bogon yum.repos.d]# ls

    CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo

    CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  local.repo

    [root@bogon yum.repos.d]#

    查看是否安装成功

     [root@bogon yum.repos.d]# rpm -qa |grep httpd

    httpd-tools-2.4.6-67.el7.centos.x86_64

    httpd-2.4.6-67.el7.centos.x86_64

    [root@bogon yum.repos.d]#

    卸载软件

    [root@bogon /]# yum -y erase httpd

    从下面看到,包已经卸载完,依赖性包没卸载

    root@bogon /]# rpm -qa |grep httpd

    httpd-tools-2.4.6-67.el7.centos.x86_64

    [root@bogon /]#

    local.repo的格式都差不多

    [root@bogon /]# cd /etc/yum.repos.d/

    [root@bogon yum.repos.d]# vim CentOS-Base.repo

    清理一下

    [root@bogon yum.repos.d]# yum clean all

    重启网络服务

    [root@bogon yum.repos.d]# service  network restart

    安装ceph

    [root@bogon yum.repos.d]# yum -y install ceph

    [root@bogon ceph]# yum -y install epel安装不成功,因为名字错了

    但是如果不知道后面是什么,就加-*

    [root@bogon ceph]# yum -y install epel-*

    得到了扩展源

     

    建缓存,让安装速度提高

    [root@bogon yum.repos.d]# yum makecache -y

    三、一般yum安装完的话,就会把软件包删掉,如果我们要保留这些软件包的话,可以这样:这样我们不受官网老更新的影响。

    vim /etc/yum.conf

    把红框和上面一行修改为

    cachedir=/rpm_bak

    keepcache=1

    意思是把软件包保存到/rpm_bak文件夹中

    查看是否修改成功

    [root@bogon yum.repos.d]# vim /etc/yum.conf

    [root@bogon yum.repos.d]# head -10 /etc/yum.conf

    建保存目录,那以后安装什么包都会保存到这里,不会被删

    [root@bogon yum.repos.d]# mkdir /rpm_bak

    查看是否下载成功

    [root@localhost yum.repos.d]# cd /rpm_bak

    [root@localhost rpm_bak]# ls

    base  epel  extras  local  timedhosts  timedhosts.txt  updates

    [root@localhost rpm_bak]# cd epel

    [root@localhost epel]# ls

    [root@localhost epel]# cd packages

    [root@localhost packages]# ls

    epel-release-7-11.noarch.rpm

    清理yum的程序

    yum clean all

    重新安装

    yum reinstall

    如果epel安装不成功,就用下面的程序

    yum reinstall epel-release -y

    更新操作系统

    yum update

    四、yum连接网上的URL来安装

    看看epel.repo文件,红色字的URL跟直接上网打网址的效果是一样的。

    [root@localhost ~]# cd /etc/yum.repos.d/

    [root@localhost yum.repos.d]# ls

    CentOS6-Base-163.repo  CentOS-CR.repo         CentOS-Media.repo    epel.repo

    CentOS7-Base-163.repo  CentOS-Debuginfo.repo  CentOS-Sources.repo  epel-testing.repo

    CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo    local.repo

    [root@localhost yum.repos.d]# cat epel.repo

    [epel]

    name=Extra Packages for Enterprise Linux 7 - $basearch

    #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

    metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

    failovermethod=priority

    enabled=1

    gpgcheck=1

    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

    可以建httpd的yum仓库和yum源

    mkdir /cangku_httpd(看截图)

    createrepo /cangku_httpd

    cd /cangku_httpd

    ls

    cd /etc/yum.repos.d/

    ls

    mv * /tmp/bak/

    ls

    vim httpd.repo

    [httpd]

    name=httpd server

    baseurl=file:///cangke_httpd

    enabled=1

    gpgcheck=0

    yum install httpd -y

    添加完后记得要刷新下,命令是createrepo /cangku_httpd

     

    如果仓库url是来自网络的话,可以这样做:

    [root@localhost media]# cd /etc/yum.repos.d/

    [root@localhost yum.repos.d]# ls

    CentOS6-Base-163.repo  CentOS-CR.repo         CentOS-Media.repo    epel.repo

    CentOS7-Base-163.repo  CentOS-Debuginfo.repo  CentOS-Sources.repo  epel-testing.repo

    CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo    local.repo

     [root@localhost yum.repos.d]# cat CentOS-Base.repo

     

    复制红框的网址http://mirror.centos.org/centos/

    如何知道Cento是哪个版本

    [root@localhost yum.repos.d]# cat /etc/redhat-release

    CentOS Linux release 7.4.1708 (Core)

     

    点击进入下面网址

    http://mirror.centos.org/centos/7.4.1708/os/x86_64/repodata/

    我们可以用这个网址来配置网络yum名

    http://mirror.centos.org/centos/7.4.1708/os/x86_64

    建repo

    [root@localhost yum.repos.d]# vim centos-7.repo

    [centos]

    name=centos

    baseurl=http://mirror.centos.org/centos/7.4.1708/os/x86_64/

    enable=1

    gpgcheck=0

    [root@localhost yum.repos.d]# cat centos-7.repo

    [root@localhost yum.repos.d]# yum install lrzsz –y

    本地与虚拟机建远程,安装Xshell 5

    192.164.220.120就是IP地址

    [root@bogon ~]# ifconfig

    ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

            inet 192.164.220.120  netmask 255.255.255.0  broadcast 192.168.220.255

            inet6 fe80::fc58:9f42:ca29:1b05  prefixlen 64  scopeid 0x20<link>

            ether 00:0c:29:65:77:b2  txqueuelen 1000  (Ethernet)

    点击确定后,点击链接并保存,然后输入虚拟机用户名root,和root的密码,得到:

     

    这样我就可以在上面输入命令,而不需要在虚拟机界面了。在百度搜python-3.5.1-tgz,在官网或 http://www.linuxidc.com/Linux/2016-04/129784.htm看到并下载(因为公司都不用3.6,都用2.7和3.5的)

    为了把PYTHON 3.5放进去,还要安装一个软件lrzsz-0.12.20-36.el7.x86_64.rpm:

    [root@bogon opt]# mount /dev/sr0 /opt

    mount: /dev/sr0 写保护,将以只读方式挂载

    [root@bogon opt]# cd /opt/Packages/

    [root@bogon Packages]# rpm -i lrzsz-0.12.20-36.el7.x86_64.rpm

    由于我们在光盘目录里,是只读,所以要到别的目录中,把PYTHON 3.5放进去

    [root@bogon Packages]# cd /root

    [root@bogon ~]# rz –E

    查看大小

    [root@bogon ~]# cd /root

    [root@bogon ~]# ll -h Python-3.5.0.tgz

    -rw-r--r--. 1 root root 20M 11月 11 11:29 Python-3.5.0.tgz

    源码安装python到硬盘中

    源码(C语言代码)要翻译为二进制,要安装个软件包

    由于opt目录挂载到光盘,所以local.repo就够用了

    [root@bogon ~]# cd /etc/yum.repos.d/

    [root@bogon yum.repos.d]# ls

    CentOS6-Base-163.repo  CentOS-Debuginfo.repo  epel.repo

    CentOS7-Base-163.repo  CentOS-fasttrack.repo  epel-testing.repo

    centos-7.repo          CentOS-Media.repo      local.repo

    CentOS-Base.repo       CentOS-Sources.repo

    CentOS-CR.repo         CentOS-Vault.repo

    [root@bogon yum.repos.d]#

    [root@bogon yum.repos.d]# cat local.repo

    [local]

    name=local repos

    baseurl=file:///opt

    enable=1

    gpgcheck=0

    所以只要local.repo就足够了,其他先移到别的文件夹中

    [root@bogon yum.repos.d]# mv * /root/aa

    [root@bogon yum.repos.d]# ls

    [root@bogon yum.repos.d]# mv /root/aa/local.repo .

    [root@bogon yum.repos.d]# ls

    local.repo

    [root@bogon yum.repos.d]#

    [root@bogon yum.repos.d]# yum clean all

    看看软件包组有什么

    [root@bogon yum.repos.d]# yum grouplist

    已加载插件:fastestmirror, langpacks

    没有安装组信息文件

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

    local                                      | 3.6 kB     00:00    

    (1/2): local/group_gz                        | 156 kB   00:00    

    (2/2): local/primary_db                      | 5.7 MB   00:00    

    Determining fastest mirrors

    可用的环境分组:

       最小安装

       基础设施服务器

       计算节点

       文件及打印服务器

       基本网页服务器

       虚拟化主机

       带 GUI 的服务器

       GNOME 桌面

       KDE Plasma Workspaces

       开发及生成工作站

    可用组:

       传统 UNIX 兼容性

       兼容性程序库

       图形管理工具

       安全性工具

       开发工具

       控制台互联网工具

       智能卡支持

       科学记数法支持

       系统管理

       系统管理工具

    完成

    下面命令为了安装把python的源代码变为二进制的包

    [root@bogon yum.repos.d]# yum groupinstall '开发工具' -y

    解压

    [root@bogon ~]# ls

    aa               initial-setup-ks.cfg  公共  视频  文档  音乐

    anaconda-ks.cfg  Python-3.5.0.tgz      模板  图片  下载  桌面

    [root@bogon ~]# tar xf Python-3.5.0.tgz

    [root@bogon ~]# cd Python-3.5.0/

    configure是脚本文件

    [root@bogon Python-3.5.0]# ls

    aclocal.m4    Include          Modules        Python

    config.guess  install-sh       Objects        README

    config.sub    Lib              Parser         setup.py

    configure     LICENSE          PC             Tools

    configure.ac  Mac              PCbuild

    Doc           Makefile.pre.in  Programs

    Grammar       Misc             pyconfig.h.in

    [root@bogon Python-3.5.0]#

    源码包安装到/usr/local/python3.5目录下

    ./configure --prefix=/usr/local/python3.5

    编译、编译后自动安装,如果编译不成功,就不会安装

    make && make install

    报错:说没有zlib,所以安装zlib

    我安装时遇到:

    Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS

    [root@bogon Python-3.5.0]#

    说明要安装

    由于yum install SSL-* -y没结果,于是改为

    yum install *SSL-* -y有结果

    然后重新进去[root@bogon Python-3.5.0]目录下,运行make install

    结果还是Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS

    百度写yum install openssl-devel;可以了,pip是Python2里面的一个安装命令

    [root@bogon Python-3.5.0]# cd /usr/local/python3.5/

    下面表示安装成功,bin目录是可执行文件

    [root@bogon python3.5.1]# ls

    bin  include  lib  share

    [root@bogon python3.5.1]# cd bin

    [root@bogon bin]# ls

    2to3              pip3      python3.5          pyvenv

    2to3-3.5          pip3.5    python3.5-config   pyvenv-3.5

    easy_install-3.5  pydoc3    python3.5m

    idle3             pydoc3.5  python3.5m-config

    idle3.5           python3   python3-config

    执行python3.5,得到python的界面

    [root@bogon bin]# ./python3.5

    >>> print('hello word')

    hello word

    >>> 

    退出用exit()或ctrl+D

    如果我不在bin目录下打开python 3.5,则可以这样做,先定义路径,下面的方法只在当前终端有效

    [root@bogon /]# PATH=/usr/local/python3.5.1/bin:$PATH

    [root@bogon /]# echo $PATH

    /usr/local/python3.5.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

    [root@bogon /]# python3.5

    Python 3.5.1 (default, Nov 11 2017, 22:40:35)

    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux

    Type "help", "copyright", "credits" or "license" for more information.

    >>> 

    下面的方法是永久有效

    在文件vim /etc/profile的最后加上,然后把path变为环境变量,即export PATH

    PATH=/usr/local/python3.5.1/bin:$PATH

    export PATH

    这样关闭后打开都可以

    [root@bogon ~]# python3.5

    Python 3.5.1 (default, Nov 11 2017, 22:40:35)

    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux

    Type "help", "copyright", "credits" or "license" for more information.

    >>> 

    大概步骤

    Centos7自带

    python2.7,所以python要加型号

  • 相关阅读:
    HDOJ 1207 汉诺塔II
    [转]写代码的小女孩
    POJ Subway tree systems
    HDOJ 3555 Bomb (数位DP)
    POJ 1636 Prison rearrangement (DP)
    POJ 1015 Jury Compromise (DP)
    UVA 10003
    UVA 103 Stacking Boxes
    HDOJ 3530 Subsequence
    第三百六十二、三天 how can I 坚持
  • 原文地址:https://www.cnblogs.com/jensenxie/p/7815422.html
Copyright © 2011-2022 走看看