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

    rpm命令

        命名方式  name-VERSION-release.arch.rpm

        常见的arch:

           x86:   i386  i486    i586   i686

           x86_64:   x64   x86_64   amd64

           跟平台无关:   noarch

      命令列表:

          安装                                       rpm -ivh vsftpd-2.2.2-24.el7.x86_64.rpm
          卸载                                       rpm -e vsftpd(必须是准确的包名)
          查询                                       rpm -q vsftpd(必须是准确的包名)
          模糊查询                                rpm -qa | grep "vsft"
          查看安装包里包含的文件       rpm -ql   vsftpd
          查看文件来自哪个包              rpm -qf    /usr/bin/tree
          查看未安装包的文件列表       rpm -ql -p /root/vsftpd-2.2.2-24.el7.x86_64.rpm
          查看配置文件                         rpm  -qc   vsftpd
          查看包依赖的包                      rpm  -qR  vsftpd

          数据库                                    /var/lib/rpm

       查看rpm包内的详细信息

         rpm2cpio    /misc/treex86-64.rpm  | cpio  -tv(预览详细信息)    或者 cpio -idv(解压rpm包到当前目录)  或者  cpio -idv  /usr/bin/tree(解压指定文件)

    yum命令

          解决rpm包安装依赖问题管理工具            最新的工具叫  dnf  

          基于c/s结构,分为服务端和客户端.  yum命令是对rpm命令的二次封装,yum的底层还是需要依赖于rpm命令的.两者不是替代和被替代的关系.

          工作原理  客户端发请求后,服务端首先会到meta data中查找是否存在需要安装的rpm包和依赖包.客户端会缓存服务端的meta data

          yum install 首先会下载对应包的元数据缓存到本地,然后再下载对应的rpm包,下载后的rpm包安装完成后默认会被删除.

          yum默认会安装最新版本的软件包.

          客户端只需要配置一个文件

            repodata的父目录就是需要配置的仓库目录(baseurl)
            baseurl    可以同时指定多个路径
            baseurl=file:///mnt/cdrom      http://      https://        ftp://
            mirrorlist=file:///root/repolist

          yum命令不允许在同一机器上同时并行运行多个yum的安装命令,只能串行运行.

          yum list

          带@符号的包表示已经被安装,@anaconda表示此包被安装操作系统的程序所安装

          @base 表示已经通过yum命令从base仓库中下载安装          base 表示此rpm包存储在base仓库中,但是还没有被安装.

          

        服务端

         1.各种rpm包   2.rpm包的元数据

         3.创建自己的yum源仓库
           createrepo /data           /data目录下存放自己的rpm包

         4.搭建yum服务器

            1.安装httpd服务器 httpd根目录默认是/var/www/html
            2.cd /var/www/html && mkdir centos/7/os/x86_64
           3.把光盘中的内容拷贝到仓库目录
              mount /dev/sr0 centos/7/os/x86_64

      yum repolist
      yum list *ftp*
      yum install httpd 或者 yum install /mnt/cdrom/httpd.rpm

      yum history  |        yum history list 12   |     yum   history info 12

      yum history undo 12   |    yum history redo  12

    yum包组功能

      yum   grouplinstall      group1

      yum   grouplist            group1

      yum   groupremove    group1

       

     源码编译

    rpm 和 yum 包的安装路径在打包之前就已经固定好了,无法改变.

       1.软件安装路径

       2.启用哪些功能

    开发工具
       1.  autoconf:生成configure脚本
       2.  automake:生成Makefile.in

       3. ./configure --prefix=PREFIX  指定安装软件的总文件夹,方便软件的卸载         卸载的时候直接删除此总文件夹即可.  生成Makefile文件.

       4.make                 根据Makefile文件来构建二进制程序   

       5.make install       拷贝相关文件到安装目录

       6.  ./configure --prefix=/app  --sysconfdir=/etc/app   --disable-env  --enable-charset-lite

    rescue救援模式

        进入救援模式会加载一个小的Linux操作系统,和硬盘的故障没有关系.系统启动后会把原来硬盘上的系统挂载到/mnt/sysimage目录上

    [root@centos7 ~]# ldd /bin/ls                                   查看命令需要调用(依赖)的库
       linux-vdso.so.1 => (0x00007ffdb09f7000)
       libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f0f1807e000)
       libcap.so.2 => /lib64/libcap.so.2 (0x00007f0f17e79000)
       libacl.so.1 => /lib64/libacl.so.1 (0x00007f0f17c6f000)
       libc.so.6 => /lib64/libc.so.6 (0x00007f0f178ac000)
       libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f0f1764a000)
       libdl.so.2 => /lib64/libdl.so.2 (0x00007f0f17445000)
       lib64/ld-linux-x86-64.so.2 (0x0000555b426e9000)
       libattr.so.1 => /lib64/libattr.so.1 (0x00007f0f17240000)
       libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0f17024000)

    创建软链接需要注意点:

     libc.so.6   -> libc-2.17.so

     在救援模式下不能使用绝对路径的方式  ln -s /mnt/sysimage/libc-2.17.so    /mnt/sysimage/libc.so.6  这样系统重启后无法找到/mnt/sysimage目录而失败

     必须使用相对路径 cd /mnt/sysimage/      ln -s libc-2.17.so    libc.so.6

     2.ldconfig -p

      3.mount   /dev/sr0     /mnt/cdrom
        安装rpm包指定以什么目录为根
            rpm -ivh /mnt/packages/rpm_4.8.rpm      --root=/mnt/sysimage/
        切换根目录
           chroot /mnt/sysimage/

  • 相关阅读:
    Flink RichSourceFunction应用,读关系型数据(mysql)数据写入关系型数据库(mysql)
    基于Filebeat+Kafka+Flink仿天猫双11实时交易额
    Flink消费Kafka数据并把实时计算的结果导入到Redis
    Flink+kafka实现Wordcount实时计算
    Filebeat+Kafka+Logstash+ElasticSearch+Kibana搭建完整版
    spring boot+mybatis+quartz项目的搭建完整版
    Hadoop生态组件Hive,Sqoop安装及Sqoop从HDFS/hive抽取数据到关系型数据库Mysql
    Swagger+AutoRest 生成web api客户端(.Net)
    NodeJS学习
    Go学习
  • 原文地址:https://www.cnblogs.com/yxh168/p/8886405.html
Copyright © 2011-2022 走看看