• 软件包管理


    1.rpm

    linux中有两种软件包,一是二进制软件包,二是源码软件包

    在光盘下有大量rpm(redhat package manage)安装包:

    [root@localhost /]# mount /dev/sr0 /mnt
    mount: /dev/sr0 写保护,将以只读方式挂载
    [root@localhost /]# cd /mnt
    [root@localhost mnt]# ls
    CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
    EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
    EULA             isolinux  repodata  TRANS.TBL
    [root@localhost mnt]# cd Packages/
    [root@localhost Packages]# ls

    rpm -ivh ... --nodeps忽略依赖性安装 --force覆盖安装

    选项中以q开头的都带有询问的功能:

    rpm -ql:查看软件包安装后产生的文件

    rpm -qf:查看一个文件来源于哪个安装包

    rpm -qi:查看安装包的详细信息

    rpm -qa:查看所有已安装的软件包

    rpm -e:卸载软件包

    2.yum

    yum安装需要:一个rpm软件包库(package)、一个描述软件依赖性的文件(repodata)

    可以用createrepo指令制作repodata:

    cp /mnt/Packages/* /tmp

    createrepo /tmp

    ls /tmp | grep repo

    repodata

    以光盘为例:

    [root@localhost yum.repos.d]# cd /mnt
    [root@localhost mnt]# ls
    CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
    EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
    EULA             isolinux  repodata  TRANS.TBL

    修改配置文件,以光盘作为安装源:

    [root@localhost mnt]# cd /etc/yum.repos.d/
    [root@localhost yum.repos.d]# vim local.repo

     [local]
    name=local repo
    baseurl=file:///mnt 这里指向的文件夹下一级要包含package文件夹和repodata文件夹
    enabled=1
    gpgcheck=0

    删除了基本的源看这:http://www.cnblogs.com/muyunren/p/7221505.html

    关于yum源配置与使用看这:http://www.cnblogs.com/mchina/archive/2013/01/04/2842275.html

    取消yum自动更新,避免软件之间出现版本差异:

    需要手动更改/etc/yum/yum-cron.conf文件,该文件是针对yum的计划任务文件

    该文件需要安装yum-cron-3.4.3-154.el7.centos.noarch软件包才会生成

    修改其中:download_updates = yes→download_updates = no

    yum安装如果从网上下载rpm安装包的话,默认情况下安装之后会删除下载的rpm安装包,如果想把下载的安装包保存下来,需要修改“/etc/yum.conf”文件:

    vim /etc/yum.conf

    修改其中前两行:

    cachedir=/rpm_bak rpm软件包保存的位置
    keepcache=1 开启

    yum clean all清理yum缓存

    yum  makecache命令将服务器上的软件包信息 现在本地缓存,以提高 搜索 安装软件的速度

    配合yum -C search xxx使用

    执行完 试下,看看二者速度差别有多大。我试的结果,二者差别挺明显的,前者明显比后者慢。

    yum grouplist查看yum软件包组

    yum groupinstall '软件包组'

    yum erase

    yum remove

    yum reinstall

    yum update更新软件包、配置系统内核,最好只在刚装系统的时候执行

    yum upgrade只更新软件包

    vim /ect/yum

    3.安装源码软件包

    源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)

    Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。

    其中--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。

    如果配置--prefix,如:

    1. ./configure --prefix=/usr/local/test

    可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。

    用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

    当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。

    首先安装编译器:

    yum grouplist

    yum groupinstall '开发工具'

    从网上下载相关source code tarball如Python-3.6.3.tgz

    tar -xvf Python-3.6.3.tgz

    cd Python-3.6.3/

    ./configure --prefix /usr/local/python3.6

    make 将源码编译成二进制码

    make install

    cd /usr/local/python3.6/bin/

    ./python3.6

    Python 3.6.3 (default, Oct 11 2017, 23:15:07)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

    ctrl+D可退出python

    在其他文件夹下也可以运行python3.6的方法:

    [root@localhost tmp]# PATH=/usr/local/python3.6/bin:$PATH
    [root@localhost tmp]# echo $PATH
    /usr/local/python3.6/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin
    [root@localhost tmp]# python3.6
    Python 3.6.3 (default, Oct 11 2017, 23:15:07)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

    以上修改只在当前终端生效,要想使该修改在所有终端生效,需要修改/etc/profile

    /etc/profile
    全局(公有)配置,不管是哪个用户,登录时都会读取该文件

    [root@localhost tmp]# vim /etc/profile
    [root@localhost tmp]# tail -1 /etc/profile
    PATH=/usr/local/python3.6/bin:$PATH
    [root@localhost tmp]# python3.6
    Python 3.6.3 (default, Oct 11 2017, 23:15:07)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> ^C
    KeyboardInterrupt
    >>>

    在该文件中加上一行:

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

    查看系统状态的方式:

    1.free

    2.df

    3.cat /proc/meminfo

    4.cat /proc/cpuinfo

    5.top

    6.ps -aux

    7.vmstat

    8.netstat -tunalp:t-tcp协议 u-udp协议 a-全部 l-长列表模式 p-显示pid n-显示数字

    显示当前访问主机的进程,用kill可以结束相应进程以终止客户机对主机的访问

  • 相关阅读:
    重读APUE(7)-link/unlink与mkdir/rmdir
    重读APUE(6)-umask
    社交系统中用户好友关系数据库设计
    修改Web项目的名称后,在TomCat中部署项目,项目的名称还是与原来相同的解决方案
    域名解析TTL是什么意思 TTL值设置为多少合适?
    mysql权限控制—新建用户允许其远程连接
    毕业设计技术方向(转载)
    统一资源定位符URL的组成
    开发中model,entity和pojo的区别
    要不要签三方协议
  • 原文地址:https://www.cnblogs.com/Icarus1900/p/7647287.html
Copyright © 2020-2023  润新知