【linux】centos7学习日记-软件包管理

目录

软件包管理

yum 

安装  

查询  

卸载  

扩展:  

rpm 软件包管理的命令

安装(--force 强制安装)  

查询

卸载    (--nodeps  强制卸载)

rpm 安装httpd案例过程:

自制yum仓库

利用ftp制作yum仓库服务器

源码包管理


软件包管理

yum 

1.源码包
2.二进制包

yum源/yum仓库
    切换yum源  (BASE EPEL 软件包官方源) 
yum软件包管理

安装
  

 install    1.yum仓库中指定的下载地址
        包名
        本地安装 localinstall  .rpm软件包
        url (下载 安装)
    reinstall
    groupinstall
    groupreinstall

查询
  

 yum list    部分软件包名称
    yum repolist
    yum search    描述
    yum provides  文件/命令
    yum groupinfo
    yum info
    yum grouplist

卸载
  

yum remove

扩展:
  

 yum makecache (fast)
    yum clean all
    yum 可以自动解决软件包的依赖关系
    cachedir=/var/cache/yum/$basearch/$releasever  //缓存路径
    keepcache=0 //是否开启缓存 0==关闭  1==开启 开启缓存后会把    安装的软件包缓存到本地

    实验:  在安装软件的时候把软件包缓存到本地
    1.修改yum的配置文件,开启缓存功能
    2.直接去安装我们需要安装的软件,包会自动缓存到对应的目录下(包的仓库)

rpm 软件包管理的命令

安装(--force 强制安装)
  

 -ivh
    -Uvh

查询
 

-qa    可以查询已经安装的所有软件包,判断该软件是否被安装
    查询软件的名称
    [root@lcr ~]# rpm -qa  (只查询已安装的软件包)
        如果我要判断这个软件是否安装    
    [root@lcr ~]# rpm -qa | grep lftp
    lftp-4.0.9-1.el6.x86_64
    -a all
    
  -qf     ==yum provides  查询文件是由那个软件产生
    查询某一个文件是哪个软件产生的
    [root@lcr ~]# rpm -qf /etc/passwd
    setup-2.8.14-20.el6.noarch
    [root@lcr ~]# rpm -qf /bin/rpm
    rpm-4.8.0-32.el6.x86_64
  -f file
  -qc     查询配置文件
  -qi      查询软件的详细   ==   yum info +软件包

卸载    (--nodeps  强制卸载)
 

-e
    软件卸载
    [root@lcr ~]# rpm -e 软件名称
    -e erase

last 查看登陆过的IP地址
cat /var/log/secure 该文件显示 的是登陆成功的记录,但是该文件经常自动做切割,所以只能看到某个时间段的。

rpm 安装httpd案例过程:

1.查看对应httpdb包名
    [root@localhost ~]# yum provides httpd
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    httpd-2.4.6-95.el7.centos.x86_64 : Apache HTTP Server
2.进入rpmfind.net搜索httpd-2.4.6-95.el7.centos.x86_64,找到centos7对应版本,复制链接
3.使用wget 粘贴链接 下载安装包 
4.使用rpm -ivh 安装httpd包
5.可能会出现
    error: Failed dependencies:
    /etc/mime.types is needed by httpd-2.4.6-93.el7.centos.x86_64
    httpd-tools = 2.4.6-93.el7.centos is needed by httpd-2.4.6-93.el7.centos.x86_64
    libapr-1.so.0()(64bit) is needed by httpd-2.4.6-93.el7.centos.x86_64
    libaprutil-1.so.0()(64bit) is needed by httpd-2.4.6-93.el7.centos.x86_64
    //这是要你要处理的依赖,须逐个解决;与1,2,3,4步步骤一致,先查对应包名->再搜索对应版本复制链接->下载安装包->安装依赖包
6.解决后即可安装Apache httpd服务

自制yum仓库

==========使用镜像做yum仓库==============
1.准备一个镜像(DVD)
2.挂载镜像(提前准备一个挂载点)
3.写yum仓库的配置文件
4.清空缓存,重新加载缓存
====================================
过程:
1.创建一个目录(用来存放rpm包)
 mkdir /opt/myyum
2.将rpm包拷贝到这个目录里(采用上传ISO镜像的方式获取rpm包,使用挂载)
mount CentOS-7-x86_64-minimal-1708.iso /mnt 
mount 镜像  挂载点 (/mnt)
cp /mnt/Packages
3.使用命令createrepo把目录创建成软件包目录
[root@lcr ~]# createrepo /opt/myyum/

4.自己创建yum仓库文件
/etc/yum.repos.d/   存放yum仓库文件的目录
/etc/yum.conf  yum的配置文件
cachedir=/var/cache/yum/$basearch/$releasever   缓存目录
keepcache=1    (0:关闭缓存  1:开启缓存)
logfile=/var/log/yum.log  yum的日志文件

yum的仓库文件,repo结尾的文件
[myyum]
name=myyum  //你想要的名字
baseurl=本地路径 file:///opt/myyum/                 
    http
    ftp://10.11.59.110:/nginx
gpgcheck=0      //开启签名机制 (0:关闭  1:开启) 为了保证软件包是一个安全软件包
enabled=0/1    1:开启这个仓库  0:关闭这个仓库(disabled)


利用ftp制作yum仓库服务器

1.准备两台服务器 关闭服务器 关闭selinux
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 关闭防火墙的开机启动
setenforce 0 临时关闭seliunx
2.服务器规划
ip1:客户端,使用ftp-server提供的rpm包
ip2:ftp服务器 提供rpm包——保证yum仓库可以(base epel)

部署服务器:
    1.安装ftp服务器
    [root@localhost ~]# yum -y install vsftpd
    2.启动ftp服务
    systemctl start vsftpd
    3.在ftpd的共享目录下创建一个目录叫myyum
    cd /var/ftp/
    mkdir myyum
    4.上传rpm包
    5.把/var/ftp/myyum做成软件包目录
    createrepo /var/ftp/myyum/
部署客户端:谁用ftp服务器里的rpm包谁就需要写repo文件
        cat myyum.repo
        [ftp-yum]
        name=ftp-yum-mysql
        baseurl=ftp://服务器IP/myyum
        enabled=1
        gpgcheck=0
    yum clean all
    rm -rf /var/cache/yum
    yum makecache fast
    yum repolist
    
当ftp不成功:
    1.防火墙是否关闭,是否关闭seliunx
    2.netstat -aunt 是否出现端口20 或21
    3.服务器端配置文件是否写对    

源码包管理

准备一台干净的服务器,保证yum仓库可用.保证能够ping通百度 
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 关闭防火墙的开机启动
setenforce 0 临时关闭seliunx

一:下载nginx的安装包(www.nginx.org)
[root@lcr /]# wget http://nginx.org/download/nginx-1.18.0.tar.gz
[root@lcr /]# tar xf nginx-1.18.0.tar.gz 

二:准备编译安装的环境
[root@lcr /]# yum -y install apr apr-util ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make

三:配置
[root@lcr /]# cd nginx-1.18.0
[root@lcr /]# ./configure --prefix=/usr/local/nginx
--prefix=/usr/local/nginx 指定安装路径

四.五:编译+安装
 &&  可以链接多个命令,前面的命令执行成功后在执行后面的命令
[root@lcr nginx-1.18.0]# make && make install 

扩展:nginx配置参数

        --prefix=path     
    定义将保留服务器文件的目录。该相同目录还将用于设置的所有相对路径 configure(库源路径除外)和nginx.conf配置文件中。/usr/local/nginx默认情况下设置为目录。
        --sbin-path=path
     设置nginx可执行文件的名称。此名称仅在安装期间使用。默认情况下,文件名为 prefix/sbin/nginx。
        --modules-path=path
     定义将在其中安装nginx动态模块的目录。默认情况下使用prefix/modules目录。
        --conf-path=path
    设置nginx.conf配置文件的名称。如果需要,可以通过在命令行参数中指定nginx来始终使用其他配置文件来启动它 。默认情况下,文件名为 。 -c fileprefix/conf/nginx.conf
        --error-log-path=path
    设置主要错误,警告和诊断文件的名称。安装后,可以始终nginx.conf使用error_log伪指令在配置文件中 更改文件名 。默认情况下,文件名为 prefix/logs/error.log。
        --pid-path=path
    设置nginx.pid将存储主进程的进程ID 的文件名。安装后,可以始终nginx.conf使用pid伪指令在配置文件中更改文件名 。默认情况下,文件名为 prefix/logs/nginx.pid。
        --lock-path=path
    为锁定文件的名称设置前缀。安装后,可以始终nginx.conf使用lock_file伪指令在配置文件中 更改该值 。默认情况下,值为 prefix/logs/nginx.lock。

        --user=name
    设置一个非特权用户的名称,其凭据将由工作进程使用。安装后,可以始终nginx.conf使用用户指令在配置文件中 更改名称 。默认用户名是nobody。--group=name设置工作进程将使用其凭据的组的名称。安装后,可以始终nginx.conf使用用户指令在配置文件中 更改名称。默认情况下,组名设置为非特权用户的名称。

    --http-log-path=path
    设置HTTP服务器的主请求日志文件的名称。安装后,可以始终nginx.conf使用access_log伪指令在配置文件中 更改文件名 。默认情况下,文件名为 prefix/logs/access.log。


如果IP a看不到IP地址怎么办
ifup ens33

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

9527灯塔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值